:root{--red:#d01012;--red-deep:#ba2026;--ink:#000;--paper:#fff;--near:#141414;--char:#44403f;--mist:#696965;--dim:#9a9996;--fog:#e6e5e3;--edge:#cbcac7;--display:"Arial Black", "Arial Bold", Arial, "Helvetica Neue", sans-serif;--body:"Avenir Next", Avenir, "Segoe UI", system-ui, -apple-system, sans-serif;--tab-h:62px;--pad:20px;--radius:0px;--bg:var(--ink);--fg:var(--paper);--card-bg:var(--near);--hair:var(--char);--muted:var(--dim)}:root[data-theme=light]{--bg:var(--paper);--fg:var(--ink);--card-bg:var(--fog);--hair:var(--edge);--muted:var(--mist)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);color:var(--fg);font-family:var(--body);overscroll-behavior-y:none;margin:0;padding:0;font-size:16px;line-height:1.45}body{padding-bottom:calc(var(--tab-h) + env(safe-area-inset-bottom))}a{color:inherit;text-decoration:none}button{font-family:var(--body);cursor:pointer;border:0}.display{font-family:var(--display);text-transform:uppercase;letter-spacing:-.01em;line-height:.95}h1.display{margin:0;font-size:30px}h2.display{margin:0;font-size:22px}.kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--red);font-size:11px;font-weight:700}.meta{color:var(--muted);font-size:12px}.meta-dark{color:var(--mist);font-size:12px}.rule{background:var(--red);width:34px;height:4px;margin:10px 0 12px}.screen{padding:calc(env(safe-area-inset-top) + 18px) var(--pad) 24px;background:var(--bg);max-width:620px;color:var(--fg);min-height:100vh;margin:0 auto}.screen.light{background:var(--bg);color:var(--fg)}.appbar{justify-content:space-between;align-items:flex-start;display:flex}.wordmark{font-family:var(--display);letter-spacing:.02em;font-size:17px}.chip{background:var(--red);color:var(--paper);letter-spacing:.03em;padding:5px 10px;font-size:11px;font-weight:700}.card{background:var(--card-bg);color:var(--fg);margin-bottom:12px;padding:16px;position:relative}.card.invert{background:var(--fg);color:var(--bg)}.card.invert .meta{color:var(--muted)}.card.accent:before{content:"";background:var(--red);width:4px;position:absolute;top:0;bottom:0;left:0}.card-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.pp{color:var(--red);white-space:nowrap;font-size:14px;font-weight:700}.big{font-family:var(--display);font-size:44px;line-height:1}.meter{background:var(--hair);width:100%;height:6px;margin:10px 0 6px}.meter>span{background:var(--red);height:100%;display:block}.btn{background:var(--red);width:100%;color:var(--paper);letter-spacing:.06em;text-transform:uppercase;text-align:center;padding:15px 16px;font-size:13px;font-weight:700;display:block}.btn:disabled{background:var(--char);color:var(--dim)}.btn.ghost{border:1px solid var(--hair);color:var(--fg);background:0 0}.btn.ink{background:var(--fg);color:var(--bg)}.field{width:100%;color:inherit;border:1px solid var(--hair);font-size:15px;font-family:var(--body);background:0 0;padding:14px}.field::placeholder{color:var(--mist)}.tabbar{height:calc(var(--tab-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--bg);border-top:1px solid var(--hair);z-index:50;grid-auto-columns:1fr;grid-auto-flow:column;align-items:center;display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);flex-direction:column;align-items:center;gap:4px;padding-top:6px;font-size:10px;display:flex}.tabbar a.active{color:var(--red);font-weight:700}.tabbar .dot{background:0 0;width:18px;height:3px}.tabbar a.active .dot{background:var(--red)}.bubble{margin-bottom:10px;padding:12px 14px;font-size:14px}.bubble.me{background:var(--card-bg);margin-left:42px}.bubble.tutor{border-left:4px solid var(--red);padding-left:12px}.cited{letter-spacing:.06em;text-transform:uppercase;color:var(--red);font-size:10px;font-weight:700}.row{justify-content:space-between;align-items:center;gap:12px;display:flex}.grid2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.stack{gap:10px;display:grid}.notice{border:1px solid var(--hair);color:var(--muted);padding:14px;font-size:13px}.spinner{color:var(--muted);padding:20px 0;font-size:13px}.controls{align-items:center;gap:8px;display:flex}.iconbtn{border:1px solid var(--hair);width:34px;height:34px;color:var(--fg);background:0 0;place-items:center;font-size:15px;line-height:1;display:grid}.langbtn{border:1px solid var(--hair);height:34px;color:var(--fg);letter-spacing:.06em;text-transform:uppercase;background:0 0;padding:0 10px;font-size:11px;font-weight:700}.sheet{z-index:100;background:var(--bg);border-top:2px solid var(--red);padding:18px var(--pad) calc(24px + env(safe-area-inset-bottom));max-width:620px;margin:0 auto;position:fixed;bottom:0;left:0;right:0}.sheet button{text-align:left;width:100%;color:var(--fg);border-bottom:1px solid var(--hair);background:0 0;padding:14px 4px;font-size:15px;display:block}.sheet button[aria-selected=true]{color:var(--red);font-weight:700}.scrim{z-index:99;background:#0000008c;position:fixed;inset:0}.fab{z-index:60;right:18px;bottom:calc(var(--tab-h) + env(safe-area-inset-bottom) + 18px);background:var(--red);width:58px;height:58px;color:var(--paper);border-radius:50%;place-items:center;font-size:30px;font-weight:300;line-height:1;transition:transform .14s;display:grid;position:fixed;box-shadow:0 6px 20px #00000059}.fab.open{transform:rotate(45deg)}.fab:active{transform:scale(.94)}.sheet .action{align-items:center;gap:14px;padding:15px 4px;font-size:15px;display:flex}.sheet .action:disabled{opacity:.45}.action-icon{background:var(--red);width:34px;height:34px;color:var(--paper);border-radius:50%;flex:0 0 34px;place-items:center;font-size:14px;display:grid}.hidden{display:none}.fab-scrim{z-index:59;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;pointer-events:none;background:#00000052;transition:opacity .15s;position:fixed;inset:0}.fab-scrim.open{opacity:1;pointer-events:auto}.fab-menu{z-index:61;right:18px;bottom:calc(var(--tab-h) + env(safe-area-inset-bottom) + 5.1rem);opacity:0;pointer-events:none;flex-direction:column-reverse;align-items:stretch;gap:8px;transition:opacity .15s,transform .15s;display:flex;position:fixed;transform:translateY(8px)}.fab-menu.open{opacity:1;pointer-events:auto;transform:translateY(0)}.fab-item{background:var(--card-bg);width:13.5rem;color:var(--fg);border:1px solid var(--hair);font-family:var(--body);letter-spacing:0;text-align:left;white-space:nowrap;border-radius:999px;align-items:center;gap:12px;padding:6px 18px 6px 6px;font-size:14px;font-weight:600;transition:transform .1s;display:flex;box-shadow:0 6px 18px #00000042}.fab-item:active{transform:scale(.97)}.fab-item:disabled{opacity:.5}.fab-item-icon{background:var(--red);width:32px;height:32px;color:var(--paper);border-radius:999px;flex:0 0 32px;place-items:center;font-size:14px;line-height:1;display:grid}.fab-result{background:var(--card-bg);width:13.5rem;color:var(--muted);border:1px solid var(--hair);white-space:normal;border-radius:14px;margin:0 0 2px;padding:10px 14px;font-size:12px;line-height:1.45}.fab-result.err{border-color:var(--red);color:var(--fg)}.demo-panel{z-index:60;background:var(--card-bg);width:min(380px,92vw);color:var(--fg);border-left:1px solid var(--hair);flex-direction:column;font-size:14px;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-18px 0 40px #00000047}.demo-head{justify-content:space-between;align-items:flex-start;gap:10px;padding:16px 16px 10px;display:flex}.demo-act{letter-spacing:.08em;text-transform:uppercase;color:var(--red);margin:0;font-size:11px;font-weight:700}.demo-count{color:var(--muted);margin:3px 0 0;font-size:12px}.demo-x{color:var(--muted);background:0 0;padding:0 4px;font-size:22px;line-height:1}.demo-progress{background:var(--hair);height:2px;margin:0 16px}.demo-progress span{background:var(--red);height:2px;transition:width .18s;display:block}.demo-body{flex:1;padding:14px 16px 18px;overflow-y:auto}.demo-title{font-family:var(--display);text-transform:uppercase;margin:0 0 10px;font-size:17px;line-height:1.1}.demo-where{letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--hair);color:var(--muted);padding:3px 8px;font-size:11px;display:inline-block}.demo-where-admin{border-color:var(--red);color:var(--red)}.demo-where-clairsolo{border-style:dashed}.demo-go{background:var(--red);color:#fff;letter-spacing:.03em;text-transform:uppercase;width:100%;margin:10px 0 0;padding:9px 12px;font-size:13px;font-weight:700;display:block}.demo-sec{margin-top:16px}.demo-sec p{margin:0}.demo-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:700;margin-bottom:4px!important}.demo-why{border-left:2px solid var(--red);padding-left:11px}.demo-claims{margin:0;padding-left:16px}.demo-claims li{color:var(--muted);margin-bottom:3px}.demo-caveat{border:1px dashed var(--hair);margin-top:16px;padding:10px 12px}.demo-caveat p:last-child{color:var(--muted)}.demo-foot{padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--hair);align-items:center;gap:8px;display:flex}.demo-foot button{color:var(--fg);border:1px solid var(--hair);background:0 0;padding:9px 14px;font-size:13px;font-weight:700}.demo-foot button:disabled{opacity:.35;cursor:default}.demo-foot .demo-next{background:var(--red);color:#fff;border-color:var(--red)}.demo-foot select{background:var(--bg);min-width:0;color:var(--fg);border:1px solid var(--hair);font-size:12px;font-family:var(--body);flex:1;padding:8px}.demo-tab{writing-mode:vertical-rl;z-index:60;background:var(--red);color:#fff;letter-spacing:.12em;padding:14px 7px;font-size:11px;font-weight:700;position:fixed;top:50%;right:0;transform:translateY(-50%)rotate(180deg)}@media (min-width:1100px){body:has(.demo-panel){padding-right:380px}}
