:root{color-scheme:light;--page:#faf6ee;--surface:#ffffff;--ink:#20282c;--ink-2:#4b5955;--muted:#8b9190;--grid:#ede7d9;--baseline:#d3cbb8;--border:#eae3d3;--series-mean:#2a78d6;--series-apparent:#eb6834;--series-star:#1baf7a;--force-buoyancy:#0b6f4c;--force-weight:#c8102e;--status-good:#0ca30c;--status-good-text:#006300;--status-critical:#d03b3b;--status-warning:#fab219;--accent:#2f7d8e;--accent-deep:#266878;--accent-ink:#1d5361;--accent-wash:#e9f2f2;--accent-line:#a9cfd6;--night-0:#050a16;--night-1:#0a1428;--night-2:#10203f;--font-display:"Space Grotesk Variable","Avenir Next",system-ui,sans-serif;--font-body:"Inter Variable",system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono Variable",ui-monospace,"SF Mono",Menlo,Consolas,monospace;--radius-s:8px;--radius:12px;--radius-l:16px;--e1:0 1px 2px rgba(48,40,24,0.05);--e2:0 1px 2px rgba(48,40,24,0.05),0 8px 24px rgba(48,40,24,0.07);--e3:0 2px 4px rgba(48,40,24,0.06),0 16px 40px rgba(48,40,24,0.12);--ring:0 0 0 3px rgba(47,125,142,0.3)}*{box-sizing:border-box}html{scroll-behavior:smooth}:root{--ui-scale:1}html[data-ui-scale=large]{--ui-scale:1.2}html[data-ui-scale=wall]{--ui-scale:1.45}html[data-ui-scale=compact]{--ui-scale:0.9}body,html{margin:0;padding:0;background:var(--page);color:var(--ink)}body{font:400 1rem/1.65 var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}html{font-size:calc(clamp(1rem, .35rem + .72vw, 1.875rem) * var(--ui-scale))}::selection{background:var(--accent-wash);color:var(--accent-ink)}*{scrollbar-width:thin;scrollbar-color:#cfc7b4 transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#cfc7b4;border-radius:8px}::-webkit-scrollbar-track{background:transparent}a{color:var(--accent-ink);text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--accent-deep)}button,input,select{transition:box-shadow .15s ease,background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}:focus-visible{outline:none;box-shadow:var(--ring);border-radius:6px}.container{max-width:75rem;margin:0 auto;padding:0 1.5rem}h1,h2,h3{font-family:var(--font-display)}h1{font-size:clamp(1.9rem,3vw,2.5rem);font-weight:600;letter-spacing:-.02em;line-height:1.18;color:var(--ink)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:rgba(6,11,22,.86);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);border-bottom:1px solid rgba(148,163,184,.14);color:#eef3f7;padding:.72rem 0}.site-header .container{display:flex;gap:1.1rem}.wordmark{font-family:var(--font-display);font-weight:700;letter-spacing:.06em;color:#fff;text-decoration:none;font-size:1.08rem;display:inline-flex;align-items:center;gap:.55rem}.wordmark .dot{color:#52b9c9}.brand-seal{width:30px;height:30px;flex:0 0 auto;display:block}.wordmark .tag{margin-left:.7rem;padding-left:.7rem;border-left:1px solid rgba(148,163,184,.3);font-family:var(--font-body);font-weight:500;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:#8fa3b8}.site-header nav{display:flex;gap:.15rem;min-width:0;overflow-x:auto;scrollbar-width:none}.site-header nav::-webkit-scrollbar{display:none}.site-header nav a{white-space:nowrap;color:#b9c7d6;text-decoration:none;font-size:.88rem;font-weight:500;padding:.34rem .8rem;border-radius:8px}.site-header nav a:hover{color:#fff;background:rgba(148,163,184,.12)}.site-footer{margin-top:3.5rem;padding:1.5rem 0 2.4rem;border-top:1px solid var(--grid);color:var(--muted);font-size:.8rem}.footer-credit{display:flex;align-items:flex-start;gap:.6rem}.footer-seal{width:22px;height:22px;flex:0 0 auto;display:block;border-radius:50%;background:#fff;padding:1px;box-sizing:border-box;margin-top:.1rem}.status-banner{display:inline-block;font-size:.66rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#92600c;background:#fdf8ec;border:1px solid #ecd9a8;border-radius:6px;padding:.18rem .55rem}.module-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));grid-gap:1.2rem;gap:1.2rem;margin-top:1.4rem}.module-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.35rem 1.45rem 1.25rem;display:flex;flex-direction:column;gap:.6rem;box-shadow:var(--e1);transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease}.module-card:before{content:"";position:absolute;inset:0 0 auto 0;height:2px;border-radius:12px 12px 0 0;background:linear-gradient(90deg,var(--accent),#52b9c9);opacity:0;transition:opacity .2s ease}.module-card:hover{transform:translateY(-2px);box-shadow:var(--e2);border-color:var(--accent-line)}.module-card:hover:before{opacity:1}.module-card h3{margin:0;font-size:1.16rem;font-weight:600;letter-spacing:-.01em}.module-card p{margin:0;color:var(--ink-2);font-size:.94rem}.module-card .meta{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap}.chip{font-family:var(--font-mono);font-size:.73rem;font-weight:500;padding:.18rem .55rem;border-radius:6px;background:#f3eee1;color:var(--ink-2);border:1px solid var(--border)}.chip.soon{color:var(--muted)}.card-link{margin-top:.25rem;font-weight:600;font-size:.93rem;text-decoration:none;color:var(--accent-ink)}.card-link:hover{color:var(--accent-deep)}.lab-header{margin:1.6rem 0 .6rem}.lab-header h1{margin:.35rem 0 .45rem;font-size:1.65rem}.lab-header .outcomes{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.7rem 1rem;margin:.8rem 0;font-size:.88rem;color:var(--ink-2)}.lab-header .outcomes summary{cursor:pointer;color:var(--ink);font-weight:600}.lab-header .outcomes ul{margin:.5rem 0 0;padding-left:1.2rem}.mode-tabs{display:inline-flex;gap:.2rem;margin:1.05rem 0;flex-wrap:wrap;background:#eee8da;border-radius:10px;padding:.22rem}.mode-tabs button{font:inherit;font-weight:550;font-size:.93rem;padding:.5rem 1.15rem;border-radius:8px;cursor:pointer;border:none;background:transparent;color:var(--ink-2)}.mode-tabs button:hover{color:var(--ink)}.mode-tabs button[aria-selected=true]{background:#fff;color:var(--ink);font-weight:650;box-shadow:var(--e1)}.lab-grid{display:grid;grid-template-columns:1.4fr 1fr;grid-gap:1rem;gap:1rem;align-items:start}.lab-grid>*{min-width:0}@media (max-width:900px){.lab-grid{grid-template-columns:1fr}}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);padding:1.35rem 1.5rem;box-shadow:var(--e1)}.panel h2{margin:0 0 .75rem;font-family:var(--font-body);font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;color:var(--accent-ink);font-weight:700}.controls{display:flex;flex-wrap:wrap;gap:.85rem 1.3rem;align-items:center;margin-top:.9rem}.controls label{font-size:.76rem;font-weight:550;letter-spacing:.02em;color:var(--ink-2);display:flex;flex-direction:column;gap:.3rem;min-width:150px;flex:1 1}.controls .value{font-family:var(--font-mono);font-weight:500;color:var(--ink);font-size:.84rem}input[type=range]{width:100%;height:1.25rem;margin:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:#e3dcc9}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;margin-top:-6px;border-radius:50%;background:#fff;border:2px solid var(--accent);box-shadow:0 1px 3px rgba(15,23,32,.25);-webkit-transition:transform .12s ease,box-shadow .12s ease;transition:transform .12s ease,box-shadow .12s ease}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.12)}input[type=range]:focus-visible{box-shadow:none}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:var(--ring)}input[type=range]::-moz-range-track{height:4px;border-radius:4px;background:#e3dcc9}input[type=range]::-moz-range-progress{height:4px;border-radius:4px;background:var(--accent)}input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid var(--accent);box-shadow:0 1px 3px rgba(15,23,32,.25)}.btn,input[type=date],input[type=number],input[type=text],input[type=time],select{font:inherit}.btn{font-size:.9rem;font-weight:550;cursor:pointer;padding:.5rem 1.05rem;border-radius:9px;border:1px solid #d6cfbe;background:var(--surface);color:var(--ink);box-shadow:var(--e1)}.btn:hover{border-color:var(--accent-line);color:var(--accent-ink)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn.primary:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:#fff}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.readout table{border-collapse:collapse;width:100%;font-size:.9rem}.readout th{text-align:left;font-weight:500;color:var(--ink-2);padding:.3rem .5rem .3rem 0}.readout td{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;padding:.3rem 0;border-bottom:1px solid var(--grid)}.readout tr:last-child td{border-bottom:none}.readout tr:hover td,.readout tr:hover th{background:#f6f1e6}.readout .swatch{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:.45rem;vertical-align:baseline}.legend{display:flex;gap:1rem;flex-wrap:wrap;font-size:.8rem;color:var(--ink-2);margin-top:.5rem}.legend .item{display:flex;align-items:center;gap:.4rem}.legend .sw{width:12px;height:12px;border-radius:3px}.gate{border-left:3px solid var(--accent);padding:.2rem 0 .2rem 1rem;margin:1rem 0}.gate .q{font-weight:600;margin-bottom:.5rem}.gate .choices{display:flex;gap:.5rem;flex-wrap:wrap}.gate .choices button.chosen{background:var(--ink);color:#fff;border-color:var(--ink)}.reveal{margin-top:.7rem;padding:.7rem .9rem;border-radius:8px;font-size:.9rem}.reveal.good{background:#eefaf2;border:1px solid #9fd4b4}.reveal.bad{background:#fdf2f2;border:1px solid #ecacac}.reveal .verdict{font-weight:700}.reveal .verdict.ok{color:var(--status-good-text)}.reveal .verdict.no{color:var(--status-critical)}.errtag{display:inline-block;font-family:var(--font-mono);font-size:.72rem;background:#f0efec;border:1px solid var(--grid);border-radius:5px;padding:.05rem .4rem;margin-left:.5rem;color:var(--ink-2)}.practice-input{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin:.6rem 0}.practice-input input[type=text]{font:inherit;font-family:var(--font-mono);padding:.4rem .6rem;border:1px solid var(--baseline);border-radius:8px;width:7.5rem}.score-line{font-size:.85rem;color:var(--ink-2);margin-top:.6rem}.evidence-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;font-size:.8rem;color:var(--muted);flex-wrap:wrap}figure.viz{margin:0}figure.viz figcaption{font-size:.78rem;color:var(--muted);margin-top:.4rem}.skip-link{position:absolute;left:-9999px;top:0;z-index:100;background:var(--night-1);color:#fff;padding:.5rem 1rem;border-radius:0 0 8px 0}.skip-link:focus{left:0}.site-header .container{align-items:center}.site-header nav{flex:1 1}.profile-menu{position:relative;margin-left:auto}.profile-btn{font:inherit;font-size:.85rem;color:#eaf2f4;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:.2rem .7rem .2rem .25rem;cursor:pointer;display:flex;align-items:center;gap:.45rem}.profile-btn:hover{background:rgba(255,255,255,.16)}.profile-btn .avatar{width:1.5rem;height:1.5rem;border-radius:50%;background:#7fd1c8;color:#0e2230;font-weight:700;display:inline-flex;align-items:center;justify-content:center;font-size:.8rem}.profile-pop{position:absolute;right:0;top:calc(100% + .45rem);min-width:15rem;z-index:60;background:#fff;color:var(--ink);border:1px solid var(--baseline);border-radius:10px;box-shadow:0 8px 24px rgba(14,34,48,.18);padding:.6rem}.profile-pop .hint{font-size:.72rem;color:var(--muted);margin:0 0 .45rem}.profile-row{display:block;width:100%;text-align:left;font:inherit;font-size:.88rem;background:none;border:none;border-radius:6px;padding:.3rem .4rem;cursor:pointer;color:var(--ink)}.profile-row:hover{background:#f3eee1}.profile-row.on{font-weight:700;color:var(--accent)}.profile-pop form{display:flex;gap:.4rem;margin-top:.5rem}.profile-pop input{font:inherit;font-size:.85rem;flex:1 1;min-width:0;padding:.3rem .5rem;border:1px solid var(--baseline);border-radius:7px}.chip.mastery-yes{background:#eefaf2;color:var(--status-good-text);border-color:#9fd4b4}.chip.mastery-prog{background:#eef4f8;color:var(--accent);border-color:#b9d2dd}.record-line{font-size:.82rem;color:var(--ink-2);margin:.45rem 0 0}details.notebook{margin-top:1.1rem;border:1px dashed var(--baseline);border-radius:10px;padding:.6rem .9rem;background:#fdfaf1}details.notebook summary{cursor:pointer;font-size:.88rem;font-weight:600;color:var(--ink-2)}.note-list{list-style:none;margin:.5rem 0 0;padding:0}.note-item{border-top:1px solid var(--grid);padding:.5rem 0}.note-item p{margin:.25rem 0 0;font-size:.9rem;white-space:pre-wrap}.note-meta{display:flex;align-items:center;gap:.6rem;font-size:.75rem;color:var(--muted);flex-wrap:wrap}.note-meta .btn{font-size:.72rem;padding:.1rem .5rem;margin-left:auto}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table td,.data-table th{text-align:left;padding:.45rem .6rem;border-bottom:1px solid var(--grid);vertical-align:middle}.data-table th{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.data-table td{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.data-table tbody tr:hover td{background:#f6f1e6}.data-table td .chip{margin:0}@media (max-width:640px){.site-header .container{flex-wrap:wrap}.profile-menu{margin-left:0}.data-table{font-size:.8rem}}.dial-panel{position:relative;border:1px solid rgba(148,163,184,.16);background:radial-gradient(1.6px 1.6px at 12% 22%,rgba(255,255,255,.34) 45%,transparent 55%),radial-gradient(1.3px 1.3px at 31% 74%,rgba(255,255,255,.22) 45%,transparent 55%),radial-gradient(1.5px 1.5px at 52% 16%,rgba(255,255,255,.28) 45%,transparent 55%),radial-gradient(1.2px 1.2px at 71% 68%,rgba(255,255,255,.2) 45%,transparent 55%),radial-gradient(1.7px 1.7px at 90% 30%,rgba(255,255,255,.3) 45%,transparent 55%),linear-gradient(160deg,var(--night-1) 0,var(--night-0) 70%);color:#dce7ee;box-shadow:var(--e3)}.dial-panel h2{color:#67c5d8}.dial-grid{display:flex;gap:1.3rem 2rem;flex-wrap:wrap;align-items:flex-end}.dial-block{display:flex;flex-direction:column;gap:.45rem}.dial-label{font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#7fb5c4}.dial-toggle{display:flex;gap:.4rem}.dial-toggle button{font:inherit;font-size:1rem;font-weight:600;padding:.5rem 1rem;border:1px solid rgba(148,163,184,.28);border-radius:10px;background:rgba(255,255,255,.04);cursor:pointer;color:#a7b8c6}.dial-toggle button:hover{border-color:rgba(148,163,184,.55);color:#eef3f7}.dial-toggle button.on{background:var(--accent);border-color:var(--accent);color:#fff}.dial-toggle.small button{font-size:.88rem;padding:.4rem .75rem}.dial-num{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.dial-num input[type=number]{font-family:var(--font-mono);font-size:1.45rem;font-weight:500;width:4.4rem;text-align:right;padding:.35rem .5rem;border:1px solid rgba(148,163,184,.28);border-radius:10px;background:rgba(2,6,16,.55);color:#eef6f9;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dial-num input[type=number]:focus{border-color:var(--accent);box-shadow:var(--ring);outline:none}.dial-num>span{font-size:1.1rem;font-weight:600;color:#8397a8}.dial-date,.dial-time{font-family:var(--font-mono);font-size:1.15rem;font-weight:500;padding:.45rem .65rem;border:1px solid rgba(148,163,184,.28);border-radius:10px;background:rgba(2,6,16,.55);color:#eef6f9;color-scheme:dark}.dial-date:focus,.dial-time:focus{border-color:var(--accent);box-shadow:var(--ring);outline:none}.dial-open{font-family:var(--font-display);font-size:1.05rem;font-weight:700;letter-spacing:.05em;padding:.72rem 1.9rem;border:none;border-radius:11px;cursor:pointer;background:var(--accent);color:#fff;box-shadow:0 8px 24px rgba(8,145,178,.35)}.dial-open:hover{background:#3a94a6;transform:translateY(-1px)}.dial-open:active{transform:none}.open-block{justify-content:flex-end}.dial-readback{font-size:.92rem;font-family:var(--font-mono);color:#7fb5c4;margin:.9rem 0 0}.dial-place{margin-bottom:1.15rem}.dial-place-row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin-top:.45rem}.dial-place-input{font:inherit;font-size:1.02rem;font-weight:500;flex:1 1;min-width:260px;padding:.58rem .85rem;border:1px solid rgba(148,163,184,.28);border-radius:10px;background:rgba(2,6,16,.55);color:#eef6f9}.dial-place-input::placeholder{color:#6d8194;font-weight:400}.dial-place-input:focus{border-color:var(--accent);box-shadow:var(--ring);outline:none}.dial-chip{font:inherit;font-size:.8rem;font-weight:550;cursor:pointer;padding:.34rem .8rem;border-radius:999px;border:1px solid rgba(148,163,184,.3);background:transparent;color:#a7b8c6}.dial-chip:hover{border-color:var(--accent);color:#eef6f9;background:rgba(8,145,178,.12)}.dial-teach{margin:.6rem 0 0;font-size:.9rem;color:#b7c8d3;border-left:2px solid var(--accent);padding-left:.7rem}.dial-teach strong{color:#67c5d8;font-family:var(--font-mono);font-weight:600}.sky-hero{position:relative;display:block;overflow:hidden;border:1px solid rgba(148,163,184,.16);border-radius:var(--radius-l);padding:2.3rem 2.4rem 1.8rem;background:radial-gradient(1.6px 1.6px at 14% 28%,rgba(255,255,255,.4) 45%,transparent 55%),radial-gradient(1.3px 1.3px at 29% 72%,rgba(255,255,255,.26) 45%,transparent 55%),radial-gradient(1.5px 1.5px at 46% 18%,rgba(255,255,255,.32) 45%,transparent 55%),radial-gradient(1.2px 1.2px at 62% 76%,rgba(255,255,255,.22) 45%,transparent 55%),radial-gradient(1.8px 1.8px at 76% 32%,rgba(255,255,255,.36) 45%,transparent 55%),radial-gradient(1.3px 1.3px at 91% 62%,rgba(255,255,255,.26) 45%,transparent 55%),linear-gradient(135deg,var(--night-0) 0,var(--night-1) 55%,#142a52 100%);color:#eef3f7;text-decoration:none;margin:1.5rem 0 1.7rem;box-shadow:var(--e3);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.sky-hero:hover{transform:translateY(-2px);border-color:rgba(148,163,184,.3)}.sky-hero .kicker{font-size:.66rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#67c5d8;margin-bottom:.55rem}.sky-hero .big{font-family:var(--font-display);font-size:clamp(1.5rem,3.2vw,2.15rem);font-weight:600;letter-spacing:-.015em;color:#fff;line-height:1.2}.sky-hero .sub{font-size:1.03rem;color:#a8bccb;margin-top:.55rem;max-width:47rem}.sky-hero .go{display:inline-block;margin-top:1.15rem;font-weight:600;font-size:.97rem;background:var(--accent);color:#fff;padding:.6rem 1.35rem;border-radius:10px}.sky-hero:hover .go{background:#3a94a6}.sky-hero .hero-stats{display:flex;gap:1.8rem;flex-wrap:wrap;margin-top:1.35rem;padding-top:1rem;border-top:1px solid rgba(148,163,184,.16)}.sky-hero .stat{display:flex;flex-direction:column;gap:.1rem}.sky-hero .stat .n{font-family:var(--font-mono);font-size:1.06rem;font-weight:600;color:#fff;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sky-hero .stat .l{font-size:.68rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:#7d93a6}.console-stack+.hero-stats,.container>.hero-stats{display:flex;gap:1.8rem;flex-wrap:wrap;margin:.4rem 0 1.2rem;padding-top:.9rem;border-top:1px solid var(--border)}.console-stack+.hero-stats .stat,.container>.hero-stats .stat{display:flex;flex-direction:column;gap:.1rem}.container>.hero-stats .stat .n{font-family:var(--font-mono);font-size:1.35rem;font-weight:600;color:var(--accent-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.1}.container>.hero-stats .stat .l{font-size:.68rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}@media (max-width:720px){.dial-num input[type=number]{font-size:1.2rem;width:3.7rem}.dial-open{width:100%}.sky-hero .big{font-size:1.3rem}.sky-hero .hero-stats{gap:1.1rem}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.dial-open:hover,.module-card:hover,.sky-hero:hover{transform:none}}.login-note{font-size:.88rem;color:var(--ink-2);margin:.35rem 0}.login-err{font-size:.85rem;color:var(--status-critical);margin:.35rem 0}.login-create{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin-top:.7rem}.login-create input,.login-create select{font:inherit;font-size:.92rem;padding:.44rem .7rem;border:1px solid var(--baseline);border-radius:9px;background:#fff;color:var(--ink);min-width:0}.login-create input:focus,.login-create select:focus{border-color:var(--accent);box-shadow:var(--ring);outline:none}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.95rem 1.1rem;gap:.95rem 1.1rem}@media (max-width:640px){.form-grid{grid-template-columns:1fr}}.field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.field.wide{grid-column:1/-1}.field>label{font-size:.8rem;font-weight:600;letter-spacing:.04em;color:var(--ink)}.field>label .req{color:var(--accent-deep)}.field input,.field select{font:inherit;font-size:.95rem;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:.6rem .7rem;width:100%;transition:border-color .15s ease,box-shadow .15s ease}.field input:focus,.field select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(47,125,142,.18)}.field .hint{font-size:.76rem;color:var(--ink-2)}.field .err{font-size:.78rem;color:#a4442a;font-weight:600}.field.invalid input,.field.invalid select{border-color:#c05b3d}.subject-picks{display:flex;flex-wrap:wrap;gap:.5rem}.subject-pick{position:relative;display:inline-flex;align-items:center;gap:.45rem;font-size:.88rem;font-weight:600;color:var(--ink);border:1px solid var(--border);border-radius:999px;padding:.42rem .85rem;cursor:pointer;background:var(--surface);transition:border-color .15s ease,background .15s ease,color .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.subject-pick input{position:absolute;inset:0 auto auto 0;width:1px!important;height:1px;opacity:0;pointer-events:none}.subject-pick[data-on=true]{background:var(--accent);border-color:var(--accent);color:#fff}.subject-pick:hover{border-color:var(--accent)}.apply-banner{display:flex;gap:.7rem;align-items:flex-start;background:rgba(47,125,142,.08);border:1px solid var(--accent-line);border-radius:var(--radius);padding:.85rem 1rem;margin:.4rem 0 1.1rem;font-size:.9rem;color:var(--ink)}.approval-row{display:grid;grid-template-columns:1fr auto;grid-gap:.8rem 1rem;gap:.8rem 1rem;align-items:start;padding:.9rem 0;border-top:1px solid var(--border)}.approval-row:first-of-type{border-top:none}.approval-who{font-weight:650;color:var(--ink)}.approval-facts{font-size:.84rem;color:var(--ink-2);margin-top:.15rem;line-height:1.55}.approval-facts .chip{margin-right:.3rem}.approval-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}.status-chip-pending{background:#f6e7c6!important;color:#7a5310!important;border-color:#e8cf94!important}.status-chip-rejected{background:#f3d8cd!important;color:#8c3a20!important;border-color:#e5b8a6!important}@media (max-width:640px){.approval-row{grid-template-columns:1fr}.approval-actions{justify-content:flex-start}}.login-brand{display:flex;align-items:center;gap:.85rem;margin-bottom:1.1rem}.login-brand img{display:block}.login-brand-name{display:block;font-family:var(--font-display);font-weight:700;font-size:1.35rem;letter-spacing:.14em;color:var(--ink)}.login-brand-sub{display:block;font-size:.82rem;color:var(--ink-2);margin-top:.1rem}.login-pin{font-family:var(--font-mono)!important;width:7.4rem;letter-spacing:.12em}.login-user-row{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap;padding:.5rem 0;border-top:1px solid var(--grid)}.login-user-row:first-of-type{border-top:none}.login-user-row .login-pin{width:5.4rem;padding:.34rem .55rem;font-size:.9rem;border:1px solid var(--baseline);border-radius:8px}.login-user-name{font-weight:550;display:inline-flex;gap:.45rem;align-items:center}.login-college-block{margin-top:.9rem;border-top:1px solid var(--grid);padding-top:.6rem}.mono-strong{font-family:var(--font-mono);font-weight:600;color:var(--accent-ink)}.console-stack{display:flex;flex-direction:column;gap:1rem;margin-top:.4rem}.kit-sub{margin:1.4rem 0 .5rem;font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}.sandbox-banner{font-size:.84rem;color:#92600c;background:#fdf8ec;border:1px solid #ecd9a8;border-radius:var(--radius-s);padding:.55rem .8rem;margin:.2rem 0 .6rem}.role-tag{font-size:.74rem;color:var(--muted)}.profile-row.console-link{color:var(--accent-ink);font-weight:600;text-decoration:none}details.chalisa-q{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.65rem 1rem;margin:.55rem 0;box-shadow:var(--e1)}details.chalisa-q>summary{cursor:pointer;display:flex;align-items:center;gap:.6rem;font-weight:600;list-style:none}details.chalisa-q>summary::-webkit-details-marker{display:none}details.chalisa-q[open]{box-shadow:var(--e2);border-color:var(--accent-line)}.chalisa-fam{font-size:.92rem}.chalisa-marks{margin-left:auto;font-family:var(--font-mono);font-size:.74rem;color:var(--muted)}.chalisa-text{font-size:.92rem;color:var(--ink-2);margin:.7rem 0;max-width:56rem}.exam-card{display:block;text-decoration:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);padding:1.2rem 1.4rem;margin-top:1rem;box-shadow:var(--e1);transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease;position:relative;overflow:hidden}.exam-card:before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:linear-gradient(90deg,var(--status-warning),var(--accent));opacity:.85}.exam-card:hover{transform:translateY(-2px);box-shadow:var(--e2);border-color:var(--accent-line)}.exam-card h3{margin:0 0 .3rem;font-size:1.08rem}.exam-card p{margin:.2rem 0;color:var(--ink-2);font-size:.9rem;max-width:60rem}.section-head{margin:2.6rem 0 .15rem;font-size:.73rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink)}.exam-card{padding:1.5rem 1.7rem}.exam-card h3{font-size:1.25rem}.exam-card p{font-size:.96rem}.chalisa-q svg,.panel svg,figure.viz svg{max-width:100%;height:auto}img{max-width:100%}@media (max-width:860px){.site-header{padding:.6rem 0}.site-header .container{display:grid;grid-template-columns:1fr auto;align-items:center;grid-row-gap:.45rem;row-gap:.45rem;grid-column-gap:.8rem;column-gap:.8rem}.wordmark{grid-row:1;grid-column:1}.profile-menu{grid-row:1;grid-column:2;margin-left:0}.site-header nav{grid-row:2;grid-column:1/-1;margin:0 -.2rem;padding:.1rem .2rem .25rem}.site-header nav a{font-size:.92rem;padding:.4rem .85rem;background:rgba(148,163,184,.09);border-radius:999px;margin-right:.35rem}}@media (max-width:760px){.container{padding:0 1.05rem}h1{font-size:clamp(1.6rem,6.4vw,1.95rem)}.lab-header h1{font-size:1.42rem}.panel{padding:1.05rem 1.1rem;border-radius:var(--radius)}.panel h2{font-size:.68rem}.sky-hero{padding:1.5rem 1.25rem 1.2rem;margin:1.1rem 0 1.3rem}.sky-hero .sub{font-size:.96rem}.sky-hero .hero-stats{display:grid;grid-template-columns:1fr 1fr;grid-gap:.9rem 1.2rem;gap:.9rem 1.2rem;margin-top:1.1rem;padding-top:.9rem}.mode-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;max-width:100%;scrollbar-width:none;-webkit-overflow-scrolling:touch}.mode-tabs::-webkit-scrollbar{display:none}.mode-tabs button{white-space:nowrap;flex:0 0 auto}.login-create{flex-direction:column;align-items:stretch}.login-create .btn,.login-create button,.login-create input,.login-create select{width:100%}.login-pin{width:100%!important}.login-user-row{gap:.45rem}.practice-input input[type=text]{flex:1 1;min-width:8rem}.data-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table td,.data-table th{white-space:nowrap}.readout table{font-size:.84rem}.readout td{word-break:break-word}.dial-grid{gap:1rem 1.2rem}.dial-readback{font-size:.84rem}details.chalisa-q{padding:.6rem .85rem}details.chalisa-q>summary{flex-wrap:wrap;row-gap:.2rem}.chalisa-text{font-size:.94rem}.exam-card{padding:1.2rem 1.15rem}.evidence-bar{flex-direction:column;align-items:flex-start;gap:.5rem}.site-footer{margin-top:2.4rem}}@media (max-width:480px){.wordmark .tag{display:none}.status-banner{font-size:.6rem;letter-spacing:.07em}.controls label{min-width:100%}}.subject-grid{display:grid;grid-template-columns:1fr;grid-gap:1.3rem;gap:1.3rem;margin:1.8rem 0 2.5rem}@media (min-width:860px){.subject-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (min-width:1240px){.subject-grid{grid-template-columns:repeat(3,1fr)}}.subject-card{font:inherit;text-align:left;cursor:pointer;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);padding:0;box-shadow:var(--e1);transition:box-shadow .22s ease,border-color .22s ease,transform .22s ease;position:relative;overflow:hidden}.subject-art{display:block;height:150px}.subject-art svg{display:block;width:100%;height:100%}.subject-body{display:flex;flex-direction:column;gap:.55rem;flex:1 1;padding:1.25rem 1.5rem 1.35rem;border-top:1px solid rgba(15,34,48,.35)}.subject-body .card-link{margin-top:auto;padding-top:.5rem}.subject-card:hover{transform:translateY(-3px);box-shadow:var(--e3);border-color:var(--accent-line)}.subject-card:hover .subject-title{color:var(--accent-deep)}.subject-card:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.subject-kicker{font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink)}.subject-title{font-family:var(--font-display);font-size:1.45rem;font-weight:600;letter-spacing:-.015em;color:var(--ink)}.subject-sub{font-size:.93rem;color:var(--ink-2)}.subject-meta{gap:.4rem;margin-top:.2rem}.subject-bar,.subject-meta{display:flex;flex-wrap:wrap}.subject-bar{align-items:center;gap:.9rem;margin:1.2rem 0 .2rem}.subject-bar-label{font-size:.68rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.subject-bar .mode-tabs{margin:0}.bench{display:grid;grid-template-columns:minmax(0,10fr) minmax(0,11fr);grid-gap:1.15rem;gap:1.15rem;align-items:start}.bench-story{min-width:0;display:flex;flex-direction:column;gap:1rem}.bench-scene{min-width:0;position:-webkit-sticky;position:sticky;top:4.35rem;max-height:calc(100vh - 5.1rem);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;border-radius:var(--radius-l)}.bench-scene>.panel{margin:0}.bench-scene .readout{margin-top:.7rem}.bench-modes{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.bench-modes button{font:inherit;font-size:.72rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:.26rem .75rem;cursor:pointer}.bench-modes button.on{background:var(--accent-ink,#2f7d8e);border-color:transparent;color:#fff}.bench-modes .bench-hint{font-size:.72rem;color:var(--muted);margin-left:.3rem}.bench.bench-read{grid-template-columns:minmax(0,11fr) minmax(0,10fr)}.bench-dock{position:fixed;left:50%;transform:translateX(-50%) translateY(120%);bottom:.9rem;z-index:60;display:none;align-items:center;gap:.5rem;max-width:min(92vw,28rem);padding:.55rem .95rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);box-shadow:0 10px 28px rgba(20,28,32,.22);font:inherit;font-size:.82rem;color:var(--ink);cursor:pointer;transition:transform .18s ease,opacity .18s ease;opacity:0}.bench-dock.show{transform:translateX(-50%) translateY(0);opacity:1}.bench-dock-up{font-size:.7rem;color:var(--accent-ink,#2f7d8e)}.bench-dock-label{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bench-dock-value{font-family:var(--font-mono);color:var(--accent-ink,#2f7d8e);font-weight:600}@media (max-width:1023px){.bench,.bench.bench-read{grid-template-columns:1fr}.bench-scene{position:static;max-height:none;overflow:visible;order:-1}.bench-story{order:1}.bench .bench-modes{display:none}.bench-dock{display:flex}}.find-chip{display:inline-flex;align-items:center;gap:.4rem;font:inherit;font-size:.8rem;color:rgba(240,246,252,.86);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:.3rem .7rem;cursor:pointer;margin-right:.5rem}.find-chip:hover{background:rgba(255,255,255,.14)}.find-chip kbd{font-family:var(--font-mono);font-size:.66rem;opacity:.7;border:1px solid rgba(255,255,255,.22);border-radius:5px;padding:.02rem .28rem}@media (max-width:720px){.find-chip .find-chip-text,.find-chip kbd{display:none}}.find-veil{position:fixed;inset:0;z-index:200;background:rgba(10,16,22,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:flex-start;justify-content:center;padding:clamp(3rem,12vh,8rem) 1rem 1rem}.find-box{width:min(44rem,100%);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);box-shadow:0 24px 60px rgba(8,14,20,.35);overflow:hidden}.find-input{width:100%;font:inherit;font-size:1.02rem;padding:1rem 1.15rem;border:0;border-bottom:1px solid var(--border);background:transparent;color:var(--ink)}.find-input:focus{outline:none}.find-list{list-style:none;margin:0;padding:.35rem;max-height:56vh;overflow:auto}.find-hit{display:grid;grid-template-columns:4.6rem 1fr auto;grid-gap:.7rem;gap:.7rem;align-items:baseline;width:100%;text-align:left;font:inherit;background:transparent;border:0;padding:.55rem .7rem;border-radius:var(--radius);cursor:pointer;color:var(--ink)}.find-hit.on{background:#f2ead9}.find-kind{font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:#fff;background:var(--accent-ink,#2f7d8e);border-radius:999px;padding:.12rem .4rem;text-align:center}.find-kind-term{background:#8a5a2f}.find-kind-subject{background:#43503f}.find-title{font-weight:600}.find-sub{font-size:.74rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:16rem}.find-empty{padding:1rem;color:var(--muted);font-size:.9rem}.find-foot{margin:0;padding:.5rem .9rem;border-top:1px solid var(--border);font-size:.72rem;color:var(--muted)}.bench-grid>:first-child{position:-webkit-sticky;position:sticky;top:4.35rem;max-height:calc(100vh - 5.1rem);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}@media (max-width:1023px){.bench-grid>:first-child{position:static;max-height:none;overflow:visible}}.gate-wait{min-height:50vh;display:grid;place-content:center;justify-items:center;grid-gap:.9rem;gap:.9rem;color:var(--ink-2)}.gate-spinner{width:26px;height:26px;border-radius:50%;border:2.5px solid var(--accent-line);border-top-color:var(--accent);animation:gate-spin .8s linear infinite}@keyframes gate-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.gate-spinner{animation:none;border-top-color:var(--accent-line)}}.full-bleed{display:block;width:100%}.door{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(22rem,.85fr);min-height:100vh;width:100%}@supports (min-height:100dvh){.door{min-height:100dvh}}.door-sky{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:2.2rem 2.6rem 1.8rem;background:radial-gradient(120% 90% at 62% 38%,#12294a 0,#0a1428 52%,#050a16 100%);color:#e8f1f8}.door-sky-art{position:absolute;top:50%;right:-14%;transform:translateY(-50%);width:min(46rem,78%);aspect-ratio:1;opacity:.97;pointer-events:none;-webkit-mask-image:radial-gradient(circle at 50% 50%,#000 58%,transparent 88%);mask-image:radial-gradient(circle at 50% 50%,#000 58%,transparent 88%)}.door-scene{display:block;width:100%;height:100%}.door-sky:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(100deg,rgba(5,10,22,.97),rgba(5,10,22,.95) 36%,rgba(5,10,22,.58) 58%,rgba(5,10,22,.08) 76%,rgba(5,10,22,0) 90%)}.polar-sky{width:100%;height:100%;display:block}.polar-turn{transform-origin:0 0;animation:sky-turn 240s linear infinite}@keyframes sky-turn{to{transform:rotate(-1turn)}}@media (prefers-reduced-motion:reduce){.polar-turn{animation:none}}.door-brand{position:relative;z-index:1;display:flex;align-items:center;gap:.75rem}.door-brand img{border-radius:10px}.door-brand strong{display:block;font-family:var(--font-display);font-size:1.2rem;letter-spacing:.07em;color:#f4efe3}.door-brand small{display:block;font-size:.66rem;letter-spacing:.17em;text-transform:uppercase;color:#8fa9bd;margin-top:1px}.door-pitch{position:relative;z-index:1;max-width:30rem;padding:2rem 0}.door-pitch h1{font-family:var(--font-display);font-weight:600;font-size:clamp(1.65rem,3.1vw,2.5rem);line-height:1.14;margin:0 0 .85rem;color:#f7f3ea;text-wrap:balance}.door-pitch p{margin:0 0 1rem;line-height:1.62;color:#c2d3e0;font-size:.98rem}.door-honest{font-size:.88rem!important;color:#8fa9bd!important;max-width:27rem}.door-proof{display:flex;gap:1.9rem;list-style:none;margin:1.3rem 0;padding:0}.door-proof li{display:flex;flex-direction:column}.door-proof b{font-family:var(--font-mono);font-size:1.42rem;color:#7fd8e6;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.1}.door-proof span{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;color:#8fa9bd;margin-top:3px}.door-motto{position:relative;z-index:1;margin:0;font-style:italic;color:#7e97ab;font-size:.87rem}.door-panel{background:var(--page);display:flex;align-items:center;justify-content:center;padding:2.2rem 2rem;border-left:1px solid var(--border)}.door-panel-inner{width:100%;max-width:25rem;display:grid;grid-gap:1rem;gap:1rem}.door-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);padding:1.5rem;box-shadow:var(--e2);display:block;text-decoration:none;color:inherit}.door-card.is-quiet{background:transparent;box-shadow:none;border-style:dashed;padding:1.2rem 1.35rem;transition:border-color .15s ease,background .15s ease}.door-card.is-quiet:hover{background:var(--accent-wash);border-color:var(--accent-line);border-style:solid}.door-card h2{font-family:var(--font-display);font-size:1.28rem;margin:.15rem 0 .75rem}.door-card.is-quiet h2{font-size:1.06rem;margin-bottom:.4rem}.door-card p{margin:0 0 .85rem;line-height:1.58;font-size:.93rem;color:var(--ink-2)}.door-kicker{display:block;font-size:.66rem;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-ink);font-weight:700}.door-linkline{font-weight:650;color:var(--accent-ink);font-size:.92rem}.door-alt{font-size:.87rem;color:var(--ink-2);margin:.95rem 0 0!important;line-height:1.55}.door-or{display:flex;align-items:center;gap:.7rem;color:var(--muted);font-size:.78rem;margin:.85rem 0!important}.door-or:after,.door-or:before{content:"";flex:1 1;height:1px;background:var(--border)}.stack-form{display:grid;grid-gap:.7rem;gap:.7rem}.stack-form label{display:grid;grid-gap:.28rem;gap:.28rem;font-size:.85rem;font-weight:600;color:var(--ink-2)}.stack-form label small{font-weight:400;color:var(--muted)}.stack-form input,.stack-form select,.stack-form textarea{font:inherit;padding:.62rem .72rem;border:1px solid var(--border);border-radius:var(--radius-s);background:#fff;color:var(--ink);width:100%}.stack-form textarea{resize:vertical;min-height:3.4rem}.stack-form input:focus-visible,.stack-form select:focus-visible,.stack-form textarea:focus-visible{outline:none;box-shadow:var(--ring);border-color:var(--accent)}.stack-form input[type=checkbox],.stack-form input[type=radio]{width:auto;padding:0;margin:0;flex:none;accent-color:var(--accent);min-width:1rem;min-height:1rem}.field-hint{font-weight:400;color:var(--muted);font-size:.78rem}.field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(10rem,100%),1fr));grid-gap:.75rem;gap:.75rem}.partners-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(19rem,100%),1fr));grid-gap:.85rem;gap:.85rem;margin-top:1rem}.partner-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);box-shadow:var(--e1);padding:1.05rem 1.15rem;cursor:pointer;text-align:left;display:grid;grid-gap:.6rem;gap:.6rem;min-width:0}.partner-card:hover{border-color:var(--accent-line);box-shadow:var(--e2)}.partner-card:focus-visible{outline:none;box-shadow:var(--ring),var(--e2)}.partner-card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.partner-card-code{font-family:var(--font-mono);font-size:.82rem;font-weight:600;color:var(--accent-ink);letter-spacing:.02em}.partner-card-name{margin:0;font-family:var(--font-display);font-size:1.02rem;font-weight:600;line-height:1.3}.partner-card-name small{display:block;font-family:var(--font-body);font-weight:400;font-size:.78rem;color:var(--muted);margin-top:.1rem}.partner-card-rate{margin:0;font-size:.82rem;color:var(--ink-2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.partner-money-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:.6rem;gap:.6rem}.partner-money-tile{border-radius:var(--radius-s);padding:.5rem .65rem;display:grid;grid-gap:.1rem;gap:.1rem;background:#f6f1e6;border:1px solid var(--grid)}.partner-money-tile .l{font-size:.66rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.partner-money-tile .v{font-family:var(--font-display);font-size:1.08rem;font-weight:600;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.partner-money-tile.is-owed.has-balance{background:#fff6e2;border-color:#f0d7a0}.partner-money-tile.is-owed.has-balance .v{color:#6d4c10}.partner-money-tile.is-paid.has-balance{background:#eefaf2;border-color:#9fd4b4}.partner-money-tile.is-paid.has-balance .v{color:var(--status-good-text)}.partner-card-counts{display:flex;gap:.9rem;font-size:.78rem;color:var(--muted)}.partner-card-counts strong{color:var(--ink-2);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.partner-veil{position:fixed;inset:0;z-index:210;background:rgba(10,16,22,.5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;justify-content:flex-end}.partner-drawer{width:min(30rem,100%);height:100%;background:var(--surface);border-left:1px solid var(--border);box-shadow:-12px 0 40px rgba(8,14,20,.28);overflow-y:auto;padding:1.5rem 1.6rem 2.2rem}.partner-drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.2rem}.partner-drawer-head h3{margin:0}.partner-drawer-close{font:inherit;font-size:1.2rem;line-height:1;cursor:pointer;color:var(--muted);background:transparent;border:1px solid transparent;border-radius:var(--radius-s);width:2.2rem;height:2.2rem;display:grid;place-items:center;flex:none}.partner-drawer-close:hover{color:var(--ink);border-color:var(--border);background:#f6f1e6}@media (max-width:640px){.partner-drawer{width:100%}}.partner-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));grid-gap:.7rem;gap:.7rem;margin:1rem 0 1.1rem}.partner-stat{border:1px solid var(--border);border-left-width:3px;border-radius:var(--radius);background:var(--surface);padding:.7rem .9rem;display:grid;grid-gap:.15rem;gap:.15rem}.partner-stat .l{font-size:.68rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.partner-stat .v{font-family:var(--font-display);font-size:1.5rem;font-weight:600;line-height:1.15;color:var(--ink)}.partner-stat.is-owed.has-balance{border-left-color:var(--status-warning)}.partner-stat.is-owed.has-balance .v{color:#6d4c10}.partner-stat.is-paid.has-balance{border-left-color:var(--status-good)}.partner-stat.is-paid.has-balance .v{color:var(--status-good-text)}.rate-flag{display:inline-block;background:#fff6e2;border:1px solid #f0d7a0;color:#6d4c10;border-radius:var(--radius-s);padding:.55rem .75rem;font-weight:600;line-height:1.5}.chip.is-holding{color:var(--ink-2)}.chip.is-payable{background:#fff6e2;color:#6d4c10;border-color:#f0d7a0;font-weight:600}.chip.is-paid{background:#eefaf2;color:var(--status-good-text);border-color:#9fd4b4;font-weight:600}.earnings-ledger td:nth-last-child(2) strong{font-size:.95rem}.instructor-console-header{display:flex;align-items:center;gap:.9rem;flex-wrap:wrap;margin-bottom:1rem;padding-bottom:.9rem;border-bottom:1px solid var(--border)}.instructor-console-header a{font-weight:600;color:var(--accent-ink);text-decoration:none}.instructor-console-header a:hover{text-decoration:underline}.application[role=button]{cursor:pointer}.application[role=button]:focus-visible{outline:none;box-shadow:var(--ring)}.plan-item-list{list-style:none;margin:0 0 1.1rem;padding:0;display:grid;grid-gap:.5rem;gap:.5rem}.plan-item{display:flex;align-items:center;gap:.7rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:.55rem .7rem;cursor:-webkit-grab;cursor:grab}.plan-item:active{cursor:-webkit-grabbing;cursor:grabbing}.plan-item-handle{color:var(--muted);font-size:.9rem;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.plan-item-n{font-family:var(--font-mono);font-size:.78rem;font-weight:600;color:var(--muted);min-width:1.4rem;text-align:right}.plan-item-body{display:flex;flex-direction:column;gap:.05rem;flex:1 1;min-width:0}.plan-item-body .t{font-weight:600}.plan-item-body .d{font-size:.76rem;color:var(--muted)}.plan-item-move{display:flex;gap:.3rem}.plan-item-move .btn{padding:.3rem .55rem}.plan-add-row{align-items:end;margin-top:.6rem}.door-foot{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;font-size:.78rem;color:var(--muted);padding-top:.4rem}.door-foot a{color:var(--accent-ink)}@media (max-width:900px){.door{grid-template-columns:minmax(0,1fr);min-height:0}.door-sky{padding:1.4rem 1.3rem 1.2rem}.door-sky-art{right:-38%;top:auto;bottom:-18%;transform:none;width:26rem;opacity:.6}.door-sky:after{background:linear-gradient(180deg,rgba(5,10,22,.95),rgba(5,10,22,.9) 55%,rgba(5,10,22,.72))}.door-pitch{padding:1.4rem 0 1rem}.door-pitch h1{font-size:clamp(1.45rem,6.4vw,2rem)}.door-proof{gap:1.3rem}.door-panel{border-left:none;border-top:1px solid var(--border);padding:1.4rem 1.1rem 2rem}.door-panel-inner{max-width:30rem}}.btn-wide{width:100%}.btn-wide,.btn.google{justify-content:center;display:inline-flex;align-items:center}.btn.google{gap:.6rem;background:#fff;color:#3c4043;border-color:#dadce0;font-weight:600}.btn.google:hover{background:#f8f9fa;color:#3c4043}.btn.danger{background:var(--status-critical);color:#fff;border-color:var(--status-critical)}.btn.danger:hover{background:#b32f2f;border-color:#b32f2f;color:#fff}a.btn{text-decoration:none;display:inline-block}a.btn.btn-wide{display:inline-flex}.auth-page{display:grid;place-items:start center;padding:2rem 0 3rem}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);padding:1.8rem;box-shadow:var(--e2);width:100%;max-width:30rem}.auth-card.is-wide,.auth-page.is-wide .auth-card{max-width:44rem}.auth-card h1{font-family:var(--font-display);font-size:1.55rem;margin:.2rem 0 .6rem}.auth-kicker{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-ink);font-weight:700;margin:0}.auth-sub{color:var(--ink-2);line-height:1.6;margin:0 0 1.2rem}.form-error{background:#fdecec;border:1px solid #f3c0c0;color:#8a2222;padding:.6rem .75rem;border-radius:var(--radius-s);font-size:.9rem;margin:.2rem 0}.form-warn{background:#fff6e2;border:1px solid #f0d7a0;color:#6d4c10;padding:.7rem .8rem;border-radius:var(--radius-s);font-size:.9rem;line-height:1.55}.form-warn ul{margin:.5rem 0 0;padding-left:1.1rem}.form-good{background:#e8f6ec;border:1px solid #b6dfc2;color:#17612f;padding:.6rem .75rem;border-radius:var(--radius-s);font-size:.9rem}.devlink{font-family:var(--font-mono);font-size:.76rem;word-break:break-all}.choice-set{border:1px solid var(--border);border-radius:var(--radius-s);padding:.7rem .8rem}.choice-set legend{font-size:.85rem;font-weight:600;color:var(--ink-2);padding:0 .3rem}.choice-set legend small{font-weight:400;color:var(--muted)}.choice{display:inline-flex!important;align-items:center;gap:.45rem;margin:.3rem .55rem .3rem 0;padding:.3rem .6rem .3rem .45rem;border:1px solid var(--border);border-radius:999px;background:#fff;font-weight:500!important;font-size:.88rem;cursor:pointer}.choice:hover{border-color:var(--accent-line)}.choice:has(input:checked){background:var(--accent-wash);border-color:var(--accent);color:var(--accent-ink)}.choice:has(input:focus-visible){box-shadow:var(--ring)}.consent-check{display:flex!important;align-items:flex-start;gap:.55rem;font-weight:500!important}.trial-banner{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;justify-content:space-between;background:var(--accent-wash);border-bottom:1px solid var(--accent-line);padding:.6rem 1.1rem;font-size:.9rem;color:var(--accent-ink)}.trial-banner.is-soon{background:#fff6e2;border-bottom-color:#f0d7a0;color:#6d4c10}.trial-banner.is-over{background:#fdecec;border-bottom-color:#f3c0c0;color:#8a2222}.trial-text{line-height:1.5;max-width:58rem}.trial-actions{display:flex;gap:.5rem;flex-shrink:0}.trial-actions .btn{padding:.35rem .85rem;font-size:.85rem}.console{max-width:66rem;margin:0 auto}.console-head{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;justify-content:space-between;margin:1.2rem 0 1rem}.console-head h1{font-family:var(--font-display);font-size:1.7rem;margin:.2rem 0}.console-sub{color:var(--ink-2);margin:0;font-size:.92rem}.console-sub code{font-family:var(--font-mono);background:var(--grid);padding:.05rem .35rem;border-radius:5px}.roster-controls{display:flex;flex-wrap:wrap;gap:.9rem;margin-bottom:.9rem}.roster-controls label{display:grid;grid-gap:.25rem;gap:.25rem;font-size:.85rem;font-weight:600;color:var(--ink-2)}.roster-controls input,.roster-controls select{font:inherit;padding:.45rem .6rem;border:1px solid var(--border);border-radius:var(--radius-s);background:#fff}.enrol-result{display:grid;grid-gap:.7rem;gap:.7rem;margin-top:1rem}.pill{display:inline-block;padding:.1rem .5rem;border-radius:999px;font-size:.75rem;background:var(--grid);color:var(--ink-2);font-weight:600}.pill.is-good{background:#e8f6ec;color:#17612f}.pill.is-alert{background:#fdecec;color:#8a2222;margin-left:.5rem}.application-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:1rem;gap:1rem}.application{border:1px solid var(--border);border-radius:var(--radius);padding:1rem;background:var(--surface)}.application-head{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:space-between;align-items:flex-start}.application-head h3{font-family:var(--font-display);margin:0;font-size:1.15rem}.application-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.8rem}.reject-box{margin-top:.8rem;display:grid;grid-gap:.5rem;gap:.5rem}.reject-box label{display:grid;grid-gap:.3rem;gap:.3rem;font-size:.85rem;font-weight:600;color:var(--ink-2)}.reject-box textarea{font:inherit;padding:.5rem .6rem;border:1px solid var(--border);border-radius:var(--radius-s)}.decided{margin-top:1.2rem}.decided summary{cursor:pointer;font-weight:600;color:var(--ink-2)}.note-log{list-style:none;margin:.7rem 0 0;padding:0;display:grid;grid-gap:.6rem;gap:.6rem}.note-log li{border-left:3px solid var(--border);padding-left:.7rem;line-height:1.5}.note-log li.is-unread{border-left-color:var(--accent)}.note-log .muted{color:var(--muted)}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(17rem,100%),1fr));grid-gap:1rem;gap:1rem;margin:1.2rem 0}.plan-card{padding:1.2rem}.plan-card.is-feature{border-color:var(--accent-line);background:var(--accent-wash)}.plan-card h2{font-family:var(--font-display);font-size:1.25rem;margin:0 0 .15rem}.plan-who{color:var(--muted);font-size:.85rem;margin:0 0 .7rem}.plan-card ul{margin:0 0 .9rem;padding-left:1.1rem;line-height:1.7;color:var(--ink-2)}.plan-price{font-family:var(--font-mono);font-size:1.05rem;font-weight:700;margin:0 0 .7rem}.plan-tbd{color:var(--muted);font-weight:400;font-size:.92rem;font-family:var(--font-body)}.plan-honest{margin-top:1.4rem}@media (max-width:640px){.welcome-hero{padding:1.2rem 1.1rem 1.4rem}.trial-banner{flex-direction:column}.console-head,.trial-banner{align-items:flex-start}}.mail-test{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;margin-bottom:1rem}.mail-test .form-good,.mail-test .form-warn{margin:0}.btn-row{display:flex;flex-wrap:wrap;gap:.55rem}.panel .stack-form{max-width:34rem}.panel .stack-form+.form-error,.panel .stack-form+.form-good{margin-top:.8rem}.door-forgot{margin:.15rem 0 0!important;font-size:.85rem;text-align:center}.door-forgot a{color:var(--ink-2)}.door-forgot a:hover{color:var(--accent-ink)}.linklike{background:none;border:none;padding:0;margin:0;cursor:pointer;font:inherit;color:var(--ink-2);text-decoration:underline;text-underline-offset:2px}.linklike:hover{color:var(--accent-ink)}.linklike:disabled{cursor:default;opacity:.6}.plan-per{font-family:var(--font-body);font-weight:400;font-size:.86rem;color:var(--ink-2)}.plan-alt{font-size:.88rem;color:var(--ink-2);margin:-.4rem 0 .9rem}.field-blocked{font-size:.78rem;color:#8a2222;line-height:1.45}.stack-form input:disabled{background:#f6f2ea;color:var(--muted);cursor:not-allowed}.fix-cmd{display:block;margin-top:.5rem;padding:.55rem .7rem;background:#fffdf7;border:1px solid #e6d9b8;border-radius:var(--radius-s);font-family:var(--font-mono);font-size:.72rem;line-height:1.5;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.linkish{background:none;border:none;padding:0;font:inherit;color:var(--accent-ink);text-decoration:underline;cursor:pointer}.panel h2 .pill{margin-left:.6rem;vertical-align:middle}.avatar-img{object-fit:cover;border-radius:50%;display:inline-block}.lab-console{display:flex;flex-direction:column;flex:1 1 auto;min-height:22rem;margin:.4rem 0 0}.lab-console-bar{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap;padding:0 .2rem .45rem;flex:0 0 auto}.lab-console-body{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(15rem,20rem) minmax(0,1fr) minmax(15rem,22rem);grid-gap:.8rem;gap:.8rem}.lab-console-body.no-left{grid-template-columns:minmax(0,1fr) minmax(15rem,22rem)}.lab-console-body.no-right{grid-template-columns:minmax(15rem,20rem) minmax(0,1fr)}.lab-console-body.no-left.no-right{grid-template-columns:minmax(0,1fr)}.lab-console-rail{min-width:0;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);padding:.85rem .95rem 1.4rem;box-shadow:var(--e1)}.lab-console-rail-head{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);position:-webkit-sticky;position:sticky;top:-.85rem;z-index:2;background:var(--surface);padding:.85rem 0 .4rem;margin:-.85rem 0 .6rem;border-bottom:1px solid var(--border)}.lab-console-stage{display:grid;grid-gap:.6rem;gap:.6rem;grid-template-columns:minmax(0,1fr);grid-auto-rows:minmax(0,1fr);align-content:stretch;overflow:auto;overscroll-behavior:contain;border-radius:var(--radius-l)}.lab-console-stage,.lab-console-stage>*{min-width:0;min-height:0}.lab-console-stage.is-multi{grid-template-columns:repeat(auto-fit,minmax(22rem,1fr));grid-auto-rows:max-content;align-content:start}.lab-console-stage.is-multi>*{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);padding:.65rem;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-width:0;min-height:19rem;overflow:auto}.lab-console-stage.is-multi svg,.lab-console-stage.is-multi>*>*>svg,.lab-console-stage.is-multi>*>svg{width:100%;height:auto;max-height:26rem}.lab-console-stage.is-multi canvas,.lab-console-stage.is-multi canvas.scene{width:100%;max-width:100%;height:21rem;max-height:21rem;display:block}.lab-console-stage.is-multi>.panel{margin:0}.lab-console-stage.is-multi>*>h2,.lab-console-stage.is-multi>*>h3{font-size:.92rem;line-height:1.3;margin:0 0 .45rem;font-weight:650}.lab-console-stage.is-multi>* p{font-size:.84rem;margin:.3rem 0}.lab-console-stage.is-multi>* table{font-size:.8rem;width:100%}.lab-console-stage.is-multi>*>div:has(>table),.lab-console-stage.is-multi>*>table{overflow-x:auto}.lab-console-stage svg,.lab-console-stage>*>svg{max-width:none!important}.lab-console-stage canvas.scene,.lab-console-stage svg,.lab-console-stage>*>svg{width:100%;height:100%;max-height:100%;display:block}.lab-console-block{margin:0 0 1.15rem}.lab-console-block:last-child{margin-bottom:0}.lab-console-block>h2,.lab-console-block>h3{font-size:.92rem;line-height:1.3;margin:0 0 .55rem;color:var(--ink);font-weight:650}.lab-console-block .controls{margin:0}.lab-console-block .controls label{font-size:.84rem}.lab-console-block .readout{margin:0 0 .5rem}.lab-console-block .readout table{font-size:.82rem}.lab-console-block .choice-set{margin:0 0 .6rem;gap:.5rem}.lab-console-block fieldset{margin:0 0 .6rem}.lab-console-block legend{font-size:.78rem}.lab-console-block p{font-size:.86rem}.lab-console-notes{margin-top:1rem;border-top:1px solid var(--border);padding-top:.8rem}.lab-console-notes>summary{cursor:pointer;font-size:.82rem;font-weight:650;color:var(--accent-ink,#2f7d8e)}.lab-console-notes-hint{font-size:.8rem;color:var(--ink-2);margin:.5rem 0 .8rem}.lab-console-notes-hint button{font:inherit;font-weight:650;color:var(--accent-ink,#2f7d8e);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline}.lab-console-notes .lab-console-block{font-size:.88rem}.lab-console-rail-toggles{display:none;gap:.3rem}.lab-console-rail-toggles button{font:inherit;font-size:.72rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:.26rem .8rem;cursor:pointer}.lab-console-rail-toggles button.on{background:var(--accent-ink,#2f7d8e);border-color:transparent;color:#fff}@media (max-width:1500px){.lab-console-body{grid-template-columns:minmax(13rem,17rem) minmax(0,1fr) minmax(13rem,18rem)}}@media (max-width:1240px){.lab-console-body{grid-template-columns:minmax(12rem,15rem) minmax(0,1fr) minmax(12rem,15rem);gap:.6rem}.lab-console-block>h2,.lab-console-block>h3{font-size:.86rem}}@media (max-width:1023px){.lab-console-body{grid-template-columns:1fr}.lab-console-rail-toggles{display:flex}.lab-console-rail{position:fixed;z-index:70;top:auto;bottom:0;left:0;right:0;max-height:62vh;border-radius:var(--radius-l) var(--radius-l) 0 0;transform:translateY(102%);transition:transform .22s ease;box-shadow:0 -12px 30px rgba(20,28,32,.24)}.lab-console-rail.open{transform:translateY(0)}.lab-console-stage{padding:0}}@media (prefers-reduced-motion:reduce){.lab-console-rail{transition:none}}.lab-bleed{width:100%;max-width:none;padding:0 clamp(.6rem,1.6vw,1.6rem) 1.2rem;margin:0 auto}.lab-bleed .gate-card,.lab-bleed .lab-evidence,.lab-bleed .lab-header,.lab-bleed .practice-card,.lab-bleed>.panel{max-width:74rem;margin-left:auto;margin-right:auto}.lab-foot{display:grid;grid-gap:.5rem;gap:.5rem;margin-top:.6rem;flex:0 0 auto}.lab-foot .evidence-bar,.lab-foot .notebook{margin:0}.lab-foot .notebook>summary{font-size:.85rem}.lab-foot .evidence-bar{font-size:.82rem;padding:.5rem .8rem}@media (min-width:1024px){.lab-foot{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start}.lab-foot .notebook[open],.lab-foot .notebook[open]+.evidence-bar{grid-column:1/-1}}.lab-bleed .lab-chrome{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;grid-gap:.3rem 1.4rem;gap:.3rem 1.4rem;padding-top:.6rem}.lab-bleed .lab-chrome>.lab-header{grid-column:1;margin:0}.lab-bleed .lab-chrome>.mode-tabs{grid-column:2;grid-row:1;margin:0;align-self:center}.lab-bleed .lab-header h1{font-size:clamp(1.25rem,1.6vw,1.6rem);margin:.15rem 0 .35rem;line-height:1.15}.lab-bleed .lab-header>.chip,.lab-bleed .lab-header>.status-banner{font-size:.66rem}.lab-bleed .lab-header .outcomes{display:inline-block;width:auto;max-width:100%;margin:0 .6rem 0 0;padding:.25rem .7rem;vertical-align:middle}.lab-bleed .lab-header .outcomes>summary{font-size:.8rem}.lab-bleed .lab-header .outcomes[open]{display:block;margin-bottom:.5rem}.lab-bleed .lab-header .record-line{margin:.3rem 0 0;font-size:.78rem}@media (max-width:860px){.lab-bleed .lab-chrome{grid-template-columns:minmax(0,1fr)}.lab-bleed .lab-chrome>.mode-tabs{grid-column:1;grid-row:auto}}.lab-console-rail .readout{overflow-x:auto}.lab-console-rail .readout table{min-width:100%}.lab-console-rail .readout td,.lab-console-rail .readout th{padding:.28rem .4rem}.lab-console-rail .bench-hint{display:none}.lab-bleed{display:flex;flex-direction:column;min-height:calc(100vh - var(--app-header-h, 3.6rem))}.lab-bleed:has(>.lab-console){height:calc(100vh - var(--app-header-h, 3.6rem))}.lab-bleed>*{flex:0 0 auto}.lab-bleed>.lab-console{flex:1 1 auto}.lab-bleed>.bench{width:100%;max-width:78rem;margin-left:auto;margin-right:auto}.lab-console{overflow:hidden}@media (max-width:900px){.readout{overflow-x:auto;-webkit-overflow-scrolling:touch}.readout table{min-width:max-content}}fieldset{min-width:0;max-width:100%}@media (max-width:900px){.lab-console-block,.panel{overflow-x:auto}code,dd,dt,li,p,strong,summary,td,th{overflow-wrap:break-word}}.drill-option{display:block;width:100%;text-align:left;font:inherit;font-size:.9rem;line-height:1.35;padding:.7rem .85rem;margin-bottom:.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--ink);cursor:pointer;transition:border-color .12s,background .12s}.drill-option:hover:not(:disabled){border-color:var(--accent-line);background:var(--accent-wash)}.drill-option:disabled{cursor:default}.drill-option.is-right{border-color:#1baf7a;background:#e8f6ec;color:#125c37;font-weight:650}.drill-option.is-wrong{border-color:#c0392b;background:#fdecec;color:#8a2222}.drill-verdict{margin-top:.9rem;border-top:1px solid var(--border);padding-top:.8rem}.drill-right{color:#17612f}.drill-right,.drill-wrong{font-weight:650;margin:0 0 .4rem}.drill-wrong{color:#8a2222}.drill-clock{font-family:var(--font-mono);font-size:1.6rem;font-weight:700;color:var(--accent-ink,#2f7d8e);margin:.4rem 0 0;text-align:center}@media (prefers-reduced-motion:reduce){.drill-option{transition:none}}.controls.drill-card{flex-direction:column;align-items:stretch;gap:0}.controls.drill-card .choice-set{display:block;margin:0}.desk-shell{--d-ground:#f2f4f5;--d-surface:#ffffff;--d-line:#e3e7e9;--d-line-soft:#eef1f2;--d-ink:#17222a;--d-ink-2:#4d5f68;--d-muted:#8496a0;--d-accent:#1d5361;--d-accent-2:#2f7d8e;--d-wash:#eaf3f5;--d-warn:#8a6100;--d-warn-bg:#fdf3dd;--d-bad:#9a2b2b;--d-bad-bg:#fdecec;--d-good:#17612f;--d-good-bg:#e8f6ec;--d-nav:#0c1a2a;--d-nav-2:#14283d;display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh;background:var(--d-ground);color:var(--d-ink);font-size:.94rem}.desk-nav{background:var(--d-nav);color:#cfdae2;display:flex;flex-direction:column;gap:.4rem;padding:1rem .75rem .9rem;position:-webkit-sticky;position:sticky;top:0;align-self:start;height:100vh}.desk-brand{display:flex;gap:.6rem;align-items:center;padding:.15rem .4rem .9rem}.desk-brand-mark{width:30px;height:30px;flex:0 0 30px;border-radius:8px;display:grid;place-items:center;background:linear-gradient(150deg,var(--d-accent-2),var(--d-accent));color:#fff;font-family:var(--font-display);font-weight:700;font-size:1rem}.desk-brand-text{display:grid;grid-gap:.05rem;gap:.05rem;min-width:0}.desk-brand-text strong{font-family:var(--font-display);font-size:.95rem;color:#fff}.desk-brand-text small{font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:#7c93a4}.desk-nav nav{display:grid;grid-gap:.12rem;gap:.12rem}.desk-nav nav button{display:flex;align-items:center;gap:.65rem;width:100%;font:inherit;font-size:.88rem;font-weight:500;text-align:left;cursor:pointer;padding:.5rem .6rem;border-radius:8px;border:0;background:transparent;color:#b9c8d3}.desk-nav nav button svg{flex:0 0 18px;opacity:.8}.desk-nav nav button:hover{background:var(--d-nav-2);color:#fff}.desk-nav nav button.is-on{background:var(--d-accent);color:#fff;font-weight:600}.desk-nav nav button.is-on svg{opacity:1}.desk-nav nav button:focus-visible{outline:2px solid var(--d-accent-2);outline-offset:1px}.desk-whoami{margin-top:auto;display:flex;gap:.6rem;align-items:center;padding:.6rem .4rem 0;border-top:1px solid rgba(255,255,255,.08)}.desk-whoami>span{display:grid;grid-gap:.05rem;gap:.05rem;min-width:0}.desk-whoami strong{font-size:.83rem;color:#eaf1f5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.desk-whoami small{font-size:.7rem;color:#7c93a4}.desk-avatar{width:28px;height:28px;flex:0 0 28px;border-radius:50%;display:grid;place-items:center;background:var(--d-accent-2);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.02em}.desk-main{display:flex;flex-direction:column;min-width:0}.desk-topbar{position:-webkit-sticky;position:sticky;top:0;z-index:5;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--d-line);padding:.9rem 1.6rem}.desk-topbar h1{font-family:var(--font-display);font-size:1.22rem;margin:0;letter-spacing:-.01em}.desk-topbar p{margin:.1rem 0 0;font-size:.82rem;color:var(--d-muted)}.desk-body{padding:1.4rem 1.6rem 4rem;display:grid;grid-gap:1.1rem;gap:1.1rem;align-content:start}.desk-boot{display:grid;place-items:center;min-height:60vh;color:var(--d-muted);grid-column:1/-1}.desk-loading{color:var(--d-muted);font-size:.9rem}.desk-pane,.desk-today{display:grid;grid-gap:1.1rem;gap:1.1rem}.desk-shell .card{background:var(--d-surface);border:1px solid var(--d-line);border-radius:12px;padding:1.1rem 1.25rem;box-shadow:0 1px 2px rgba(16,34,45,.04)}.desk-shell .card>h2{font-family:var(--font-display);font-size:1rem;margin:0 0 .15rem;letter-spacing:-.005em}.desk-shell .card>h3{font-family:var(--font-display);font-size:.92rem;margin:0 0 .5rem}.desk-shell .card>h4{font-size:.76rem;text-transform:uppercase;letter-spacing:.07em;color:var(--d-muted);margin:1rem 0 .4rem}.desk-shell .card>p{margin:.35rem 0 .75rem;color:var(--d-ink-2);line-height:1.55;max-width:62ch}.card-note{font-size:.85rem;color:var(--d-muted);line-height:1.5;margin:.4rem 0;max-width:68ch}.desk-shell .form-bad{color:var(--d-bad);background:var(--d-bad-bg);border:1px solid #f3d5d5;border-radius:8px;line-height:1.5}.desk-shell .form-bad,.desk-shell .form-good{padding:.55rem .75rem;font-size:.86rem;margin:.5rem 0}.desk-shell .form-good{color:var(--d-good);background:var(--d-good-bg);border:1px solid #cfe8d6;border-radius:8px}.stat-row{display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr))}.stat{background:var(--d-surface);border:1px solid var(--d-line);border-left-width:3px;border-radius:10px;padding:.75rem .9rem;display:grid;grid-gap:.1rem;gap:.1rem;box-shadow:0 1px 2px rgba(16,34,45,.04)}.stat strong{font-family:var(--font-display);font-size:1.55rem;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em}.stat span{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:var(--d-muted)}.stat small{font-size:.75rem;color:var(--d-ink-2)}.stat.is-calm{border-left-color:var(--d-line)}.stat.is-warn{border-left-color:#d8a12a}.stat.is-warn strong{color:var(--d-warn)}.stat.is-bad{border-left-color:#c25151}.stat.is-bad strong{color:var(--d-bad)}.card.is-empty{text-align:center;padding:2.4rem 1.5rem;display:grid;grid-gap:.45rem;gap:.45rem;justify-items:center}.empty-mark{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--d-good-bg);color:var(--d-good);margin-bottom:.3rem}.card.is-empty h2{margin:0}.card.is-empty p{max-width:44ch;margin:0;color:var(--d-ink-2)}.empty-next{font-size:.85rem;color:var(--d-muted)!important;margin-top:.4rem!important}.desk-list{list-style:none;margin:.5rem 0 0;padding:0;display:grid;grid-gap:.3rem;gap:.3rem}.desk-rowbtn{width:100%;display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;justify-content:space-between;text-align:left;font:inherit;cursor:pointer;padding:.6rem .75rem;border:1px solid var(--d-line);border-radius:9px;background:var(--d-surface);transition:border-color .12s,background .12s}.desk-rowbtn:hover{border-color:var(--d-accent-2);background:var(--d-wash)}.desk-rowbtn:focus-visible{outline:2px solid var(--d-accent-2);outline-offset:1px}.desk-row-main{display:grid;grid-gap:.1rem;gap:.1rem;min-width:0}.desk-row-main strong{font-size:.92rem}.desk-row-main span{color:var(--d-ink-2);font-size:.83rem}.desk-row-side{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.desk-row-side small{color:var(--d-muted);font-size:.78rem}.desk-table{overflow-x:auto;margin-top:.6rem}.desk-table table{border-collapse:collapse;width:100%;font-size:.87rem}.desk-table th{text-align:left;font-weight:600;font-size:.7rem;white-space:nowrap;padding:0 .8rem .45rem 0;border-bottom:1px solid var(--d-line)}.desk-table td{text-align:left;vertical-align:top;line-height:1.45;padding:.6rem .8rem .6rem 0;border-bottom:1px solid var(--d-line-soft)}.desk-table td:last-child,.desk-table th:last-child{padding-right:0}.desk-table tbody tr:last-child td{border-bottom:none}.desk-table tbody tr.is-clickable{cursor:pointer}.desk-table tbody tr.is-clickable:hover td{background:var(--d-wash)}.desk-table small{color:var(--d-muted);font-size:.79rem}.desk-table code{font-family:var(--font-mono);font-size:.8em;color:var(--d-accent)}.desk-table .is-num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.desk-shell .pill{display:inline-block;padding:.12rem .5rem;border-radius:5px;font-size:.72rem;font-weight:600;letter-spacing:.02em;background:var(--d-line-soft);color:var(--d-ink-2);white-space:nowrap}.desk-shell .pill.is-good,.desk-shell .pill.stage-won{background:var(--d-good-bg);color:var(--d-good)}.desk-shell .pill.is-bad,.desk-shell .pill.prio-urgent{background:var(--d-bad-bg);color:var(--d-bad)}.desk-shell .pill.is-warn,.desk-shell .pill.prio-high{background:var(--d-warn-bg);color:var(--d-warn)}.desk-shell .pill.stage-new{background:var(--d-line-soft);color:var(--d-ink-2)}.desk-shell .pill.stage-contacted{background:var(--d-wash);color:var(--d-accent)}.desk-shell .pill.stage-demo{background:#e7f0fb;color:#1d4f8a}.desk-shell .pill.stage-trial{background:var(--d-warn-bg);color:var(--d-warn)}.desk-shell .pill.stage-proposal{background:#efe7fb;color:#4a2c86}.desk-shell .pill.stage-lost{background:#f1eeec;color:#6b5c52}.desk-shell .pill.stage-parked{background:#eef0f0;color:#5d6362}.desk-shell .pill.prio-normal{background:var(--d-line-soft)}.desk-shell .pill.prio-low{background:#eef0f0;color:#6b7377}.desk-shell .pill.cat-maritime{background:var(--d-wash);color:var(--d-accent)}.desk-shell .pill.cat-education{background:#e7f0fb;color:#1d4f8a}.desk-shell .pill.cat-national{background:var(--d-warn-bg);color:var(--d-warn)}.desk-shell .pill.cat-festival{background:#fbe9e7;color:#8a3a22}.desk-shell .pill.cat-world{background:var(--d-good-bg);color:var(--d-good)}.desk-shell .pill.cat-company{background:#efe7fb;color:#4a2c86}.desk-shell .btn{font:inherit;font-size:.86rem;font-weight:600;cursor:pointer;padding:.42rem .85rem;border-radius:8px;border:1px solid var(--d-line);background:var(--d-surface);color:var(--d-ink-2);transition:border-color .12s,background .12s,color .12s}.desk-shell .btn:hover:not(:disabled){border-color:var(--d-accent-2);color:var(--d-accent);background:var(--d-wash)}.desk-shell .btn:disabled{opacity:.45;cursor:not-allowed}.desk-shell .btn:focus-visible{outline:2px solid var(--d-accent-2);outline-offset:1px}.desk-shell .btn.btn-primary{background:var(--d-accent);border-color:var(--d-accent);color:#fff}.desk-shell .btn.btn-primary:hover:not(:disabled){background:var(--d-accent-2);border-color:var(--d-accent-2);color:#fff}.desk-shell .btn-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.7rem}.desk-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;padding-bottom:.9rem;margin-bottom:.2rem;border-bottom:1px solid var(--d-line-soft)}.desk-toolbar label{display:grid;grid-gap:.25rem;gap:.25rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--d-muted);flex:0 1 auto;min-width:11rem;max-width:20rem}.desk-toolbar>.btn{margin-left:auto}.desk-form{display:grid;grid-gap:.9rem;gap:.9rem;margin:.9rem 0 .4rem;padding:1rem 1.1rem;border:1px solid var(--d-line);border-radius:10px;background:#fafbfb}.desk-form-row{display:flex;flex-wrap:wrap;gap:.8rem}.desk-shell label{display:grid;grid-gap:.25rem;gap:.25rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--d-muted);flex:1 1 11rem}.desk-shell input,.desk-shell select,.desk-shell textarea{font:inherit;font-size:.9rem;font-weight:400;text-transform:none;letter-spacing:normal;color:var(--d-ink);padding:.45rem .6rem;border:1px solid var(--d-line);border-radius:8px;background:var(--d-surface);min-width:0;max-width:100%;transition:border-color .12s,box-shadow .12s}.desk-shell input:focus,.desk-shell select:focus,.desk-shell textarea:focus{outline:none;border-color:var(--d-accent-2);box-shadow:0 0 0 3px rgba(47,125,142,.14)}.desk-shell textarea{line-height:1.55;resize:vertical}.desk-shell textarea.is-mono{font-family:var(--font-mono);font-size:.82rem}.desk-shell input.is-narrow{max-width:5.5rem}.desk-shell input[type=checkbox]{width:auto;min-width:0}.desk-switch{display:flex!important;gap:.5rem;align-items:center;font-size:.83rem;text-transform:none;letter-spacing:normal;color:var(--d-ink-2);font-weight:500;margin:.6rem 0}.desk-stages{margin-top:.8rem}.is-clickable{cursor:pointer}.is-breakable{overflow-wrap:anywhere}.desk-lines input{width:100%}.desk-crumb{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.2rem}.desk-crumb strong{font-size:.9rem}.desk-crumb code{font-family:var(--font-mono);font-size:.82rem;color:var(--d-accent)}.desk-sub{margin:.1rem 0 .7rem!important;color:var(--d-muted)!important;font-size:.85rem}.desk-facts{display:grid;grid-gap:.9rem 1.6rem;gap:.9rem 1.6rem;margin:.9rem 0 0;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));padding:.9rem 0 0;border-top:1px solid var(--d-line-soft)}.desk-facts>div{display:grid;grid-gap:.2rem;gap:.2rem}.desk-facts dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:var(--d-muted)}.desk-facts dd{margin:0;font-size:.9rem;line-height:1.4}.desk-facts dd small{color:var(--d-muted)}.desk-letter{border:1px solid var(--d-line);border-radius:10px;background:#fdfdfc;padding:1.1rem 1.3rem;margin:.8rem 0;max-height:28rem;overflow:auto}.desk-letter pre{margin:0;font-family:var(--font-body);font-size:.89rem;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--d-ink)}.desk-letter-subject{margin:0 0 .8rem!important;padding-bottom:.6rem;border-bottom:1px solid var(--d-line-soft);color:var(--d-ink)!important}.desk-letter-sig{margin-top:1.1rem!important;padding-top:.8rem;border-top:1px solid var(--d-line-soft);color:var(--d-ink-2)!important;font-size:.83rem!important}.desk-timeline{list-style:none;margin:.7rem 0 0;padding:0 0 0 1rem;display:grid;grid-gap:.85rem;gap:.85rem;border-left:2px solid var(--d-line)}.desk-timeline li{display:grid;grid-gap:.15rem;gap:.15rem;position:relative;font-size:.87rem;line-height:1.5}.desk-timeline li:before{content:"";position:absolute;left:-1.42rem;top:.45rem;width:9px;height:9px;border-radius:50%;background:var(--d-surface);border:2px solid var(--d-line)}.desk-timeline li.is-email:before,.desk-timeline li.is-reply:before{border-color:var(--d-accent-2)}.desk-timeline li.is-proposal:before,.desk-timeline li.is-stage:before{border-color:#7aa87f}.desk-timeline li.is-note:before{border-color:#cbb98f}.desk-when{font-size:.72rem;color:var(--d-muted)}.desk-what strong{text-transform:uppercase;font-size:.66rem;letter-spacing:.07em;color:var(--d-muted);margin-right:.45rem}.desk-who{font-size:.72rem;color:var(--d-muted)}.studio-days{list-style:none;margin:.6rem 0 0;padding:0;display:grid;grid-gap:.25rem;gap:.25rem}.studio-days button{width:100%;display:flex;gap:1rem;align-items:center;text-align:left;font:inherit;cursor:pointer;padding:.55rem .75rem;border:1px solid var(--d-line);border-radius:9px;background:var(--d-surface);transition:border-color .12s,background .12s}.studio-days button:hover{border-color:var(--d-accent-2);background:var(--d-wash)}.studio-when{display:grid;grid-gap:.05rem;gap:.05rem;min-width:5.5rem}.studio-when strong{font-family:var(--font-display);font-size:.92rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.studio-what small,.studio-when small{color:var(--d-muted);font-size:.78rem}.studio-what{display:grid;grid-gap:.05rem;gap:.05rem;flex:1 1 auto;min-width:0}.studio-what strong{font-size:.9rem}.studio-days.is-movable .studio-when strong{color:var(--d-muted);font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;font-family:var(--font-body)}.studio-split{display:grid;grid-gap:1.2rem;gap:1.2rem;grid-template-columns:minmax(15rem,20rem) minmax(0,1fr)}.studio-controls{display:grid;grid-gap:.7rem;gap:.7rem;align-content:start}.studio-preview{display:grid;place-items:center;padding:1.2rem;border:1px solid var(--d-line);background:repeating-conic-gradient(#f0f2f3 0 25%,#e7eaec 0 50%) 50% /16px 16px;border-radius:10px;overflow:auto}.studio-preview svg{max-width:100%;max-height:62vh;box-shadow:0 6px 22px rgba(16,34,45,.18);border-radius:3px}.studio-preview[data-size=story] svg{max-width:18rem}.studio-preview[data-size=print] svg{max-width:22rem}.proposal-sheet{background:#fff;color:#1c1c1c;border:1px solid var(--d-line);border-radius:12px;padding:2.6rem 2.8rem;max-width:52rem;margin:0 auto;font-size:.92rem;line-height:1.55;box-shadow:0 4px 18px rgba(16,34,45,.07)}.proposal-head{display:flex;justify-content:space-between;gap:1.4rem;align-items:flex-start;border-bottom:2px solid var(--d-accent);padding-bottom:.9rem}.proposal-mark{font-family:var(--font-display);font-weight:700;letter-spacing:.1em;font-size:1.2rem;color:var(--d-accent)}.proposal-by{font-size:.78rem;color:var(--d-ink-2);letter-spacing:.04em}.proposal-ref{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.proposal-to{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;margin:1.5rem 0}.proposal-to>div>small:first-child{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.09em;color:var(--d-muted);margin-bottom:.3rem}.proposal-to small{font-size:.82rem;color:var(--d-ink-2)}.proposal-title{font-family:var(--font-display);font-size:1.35rem;margin:1.2rem 0 .5rem}.proposal-intro{margin:0 0 1.2rem;color:var(--d-ink-2)}.proposal-table{width:100%;border-collapse:collapse;margin:1.1rem 0}.proposal-table th{text-align:left;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--d-muted);border-bottom:1px solid #ddd;padding:0 .6rem .45rem 0}.proposal-table td{padding:.6rem .6rem .6rem 0;border-bottom:1px solid #f0f0f0;vertical-align:top}.proposal-table .is-num{text-align:right;padding-right:0;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.proposal-table tfoot td{border-bottom:none;padding:.22rem .6rem .22rem 0;color:var(--d-ink-2)}.proposal-table tfoot tr.is-total td{border-top:2px solid var(--d-accent);padding-top:.55rem;color:var(--d-ink);font-size:1.05rem}.proposal-terms{margin-top:1.8rem}.proposal-terms h2{font-family:var(--font-display);font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;color:var(--d-muted);margin:0 0 .5rem}.proposal-terms pre{margin:0;font-family:var(--font-body);font-size:.82rem;line-height:1.6;white-space:pre-wrap;color:var(--d-ink-2)}.proposal-foot{margin-top:2.2rem;padding-top:.9rem;border-top:1px solid #f0f0f0;font-size:.72rem;color:var(--d-muted);text-align:center;line-height:1.6}@media (max-width:1000px){.desk-shell{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.desk-nav{position:-webkit-sticky;position:sticky;top:0;z-index:6;align-self:stretch;height:auto;flex-direction:row;align-items:center;gap:.75rem;padding:.6rem .9rem;overflow-x:auto}.desk-brand{padding:0}.desk-brand-text{display:none}.desk-nav nav{display:flex;gap:.2rem}.desk-nav nav button span{display:none}.desk-nav nav button{padding:.5rem .65rem}.desk-whoami{margin:0 0 0 auto;border:0;padding:0}.desk-whoami>span{display:none}.desk-body,.desk-topbar{padding-left:1rem;padding-right:1rem}.studio-split{grid-template-columns:minmax(0,1fr)}.proposal-sheet{padding:1.5rem 1.3rem}}@media (max-width:560px){.desk-body{padding:1rem .8rem 3rem}.stat-row{grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr))}.stat strong{font-size:1.3rem}}@media print{.app-header,.btn,.btn-row,.desk-crumb,.desk-nav,.desk-topbar,.no-print,.site-footer,.status-banner{display:none!important}.desk-body,.desk-main,.desk-pane,.desk-shell{display:block;background:#fff!important}.desk-body,.desk-main,.desk-pane{margin:0;padding:0;max-width:none}.proposal-sheet{border:none;border-radius:0;padding:0;max-width:none;font-size:10.5pt;box-shadow:none}.proposal-table tr,.proposal-terms{break-inside:avoid;page-break-inside:avoid}@page{size:A4;margin:16mm 14mm 18mm}}.sim-clock{display:grid;grid-gap:.5rem;gap:.5rem}.sim-clock-row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.sim-clock-time{margin-left:auto;font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:700;color:var(--accent-ink);background:var(--accent-wash);border-radius:var(--radius-s);padding:.15rem .5rem}.sim-clock-rates{display:flex;flex-wrap:wrap;gap:.25rem}.sim-clock .field-hint{font-size:.78rem;color:var(--ink-2);margin:0;line-height:1.4}.readout.is-tight table{font-size:.82rem;table-layout:auto}.readout.is-tight td,.readout.is-tight th{padding:.28rem .3rem .28rem 0;white-space:nowrap}.readout.is-tight th small{display:block;font-weight:400;font-size:.68rem;color:var(--muted)}.readout.is-tight{overflow-x:auto}.readout.is-prose td:last-child,.readout.is-prose th{font-family:var(--font-body);text-align:left;line-height:1.5}.readout.is-prose td:last-child{padding-left:.8rem;color:var(--ink-2)}.readout.is-prose td:last-child small{font-size:.85rem}.readout.is-prose th{width:1%;white-space:nowrap;padding-right:.8rem;font-weight:600;color:var(--ink)}.readout.is-prose td:nth-child(2){white-space:nowrap}.parcel-entry{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.55rem;margin-top:.6rem}.parcel-entry label{display:flex;flex-direction:column;gap:.2rem;font-size:.75rem;color:var(--ink-2);min-width:0;flex:1 1 5.5rem}.parcel-entry input{font:inherit;font-size:.86rem;width:100%;min-width:0;padding:.35rem .5rem;border:1px solid var(--border);border-radius:var(--radius-s,8px);background:var(--surface);color:var(--ink)}.parcel-entry .btn{flex:0 0 auto}.desk-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:.8rem;flex-wrap:wrap;margin-bottom:.5rem}.desk-card-head h3{margin:0}.desk-empty{color:var(--d-muted)}.desk-wide{display:block;margin-top:.6rem}.desk-wide textarea{width:100%;font:inherit;font-size:.88rem;padding:.45rem .6rem;border:1px solid var(--d-line);border-radius:8px;background:var(--d-field,var(--d-surface));color:inherit;resize:vertical}.btn.btn-small{font-size:.76rem;padding:.22rem .6rem}.desk-suggest{margin:.8rem 0;padding:.7rem .8rem;border:1px dashed var(--d-line);border-radius:10px;background:color-mix(in srgb,var(--d-surface) 88%,transparent)}.desk-suggest-row{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;margin:.35rem 0}.desk-suggest-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:var(--d-muted);min-width:4.5rem}.desk-table{width:100%;border-collapse:collapse;font-size:.86rem;margin:.4rem 0}.desk-table td,.desk-table th{text-align:left;padding:.4rem .5rem;border-bottom:1px solid var(--d-line);vertical-align:top}.desk-table th{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--d-muted);font-weight:650}@media (max-width:700px){.desk-suggest-label{min-width:100%}.desk-card-head{flex-direction:column;align-items:stretch}.desk-table,.desk-table tbody,.desk-table td,.desk-table th,.desk-table thead,.desk-table tr{display:block}.desk-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.desk-table tr{border:1px solid var(--d-line);border-radius:10px;padding:.5rem .6rem;margin-bottom:.55rem}.desk-table td{border:0;padding:.16rem 0;display:flex;gap:.6rem}.desk-table td:before{content:attr(data-label);flex:0 0 5.5rem;font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--d-muted);padding-top:.15rem}.desk-table td[data-label=""]:before{content:none}.desk-form-row>label{flex:1 1 100%;min-width:0}.desk-form-row input,.desk-form-row select{width:100%;min-width:0}}.desk-facts dd,.desk-table td{overflow-wrap:anywhere}.studio-ai{border-left:3px solid var(--d-accent,#2f7d8e)}.studio-ai .desk-wide{flex:1 1 100%}.studio-claims{margin-top:.7rem;padding:.7rem .85rem;border:1px solid #c0392b;border-radius:10px;background:color-mix(in srgb,#c0392b 8%,transparent)}.studio-claims ul{margin:.4rem 0 .5rem;padding-left:1.1rem}.studio-claims li{font-size:.86rem;margin:.2rem 0}.studio-alternates{margin-top:.7rem;padding-top:.7rem;border-top:1px solid var(--grid)}.studio-alternates .btn-row{gap:.4rem;margin-top:.4rem}.studio-alternates .btn-small{white-space:normal;text-align:left;max-width:22rem;line-height:1.35}.settings-index{position:-webkit-sticky;position:sticky;top:0;z-index:5;display:flex;gap:.3rem;flex-wrap:wrap;padding:.55rem 0 .6rem;margin:0 0 .3rem;background:linear-gradient(var(--page) 72%,rgba(250,246,238,0))}.settings-index a{font-size:.82rem;font-weight:650;text-decoration:none;color:var(--accent-ink);background:var(--accent-wash);border:1px solid var(--accent-line);border-radius:999px;padding:.3rem .8rem;line-height:1.35}.settings-index a:hover{background:#dceaec}.settings-groups{display:flex;flex-direction:column;gap:1.1rem}.settings-group{scroll-margin-top:4rem;margin:1.4rem 0 -.2rem}.settings-group:first-child{margin-top:.2rem}.settings-group-title{font-family:var(--font-body);font-size:.72rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-ink);margin:0 0 .3rem;padding-bottom:.45rem;border-bottom:2px solid var(--accent-line)}.settings-group-note{margin:.55rem 0 0;font-size:.9rem;color:var(--ink-2);max-width:62ch}.settings-stack>*{margin-bottom:1.1rem}.settings-stack>:last-child{margin-bottom:0}@media (min-width:1180px){.settings-stack{column-count:2;column-gap:1.1rem}.settings-stack>*{break-inside:avoid;page-break-inside:avoid}.settings-stack>[data-span=full]{column-span:all;margin-bottom:1.1rem}}@media (min-width:2200px){.settings-stack{column-count:3}}.st-strip{display:grid;grid-gap:.5rem;gap:.5rem;margin:0 0 1.1rem;grid-template-columns:repeat(auto-fit,minmax(11.5rem,1fr))}.st-chip{display:flex;flex-direction:column;gap:.12rem;padding:.6rem .8rem;border-radius:var(--radius-m);background:var(--surface);text-decoration:none;color:inherit;box-shadow:var(--e1);transition:box-shadow .15s,transform .15s;position:relative;border:1px solid var(--border);border-left:3px solid var(--muted)}.st-chip:hover{box-shadow:var(--e2);transform:translateY(-1px)}.st-chip.is-ok{border-left-color:var(--status-good)}.st-chip.is-off{border-left-color:var(--status-warning)}.st-chip .st-dot{display:none}.st-chip-label{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:var(--muted)}.st-chip-detail{font-family:var(--font-mono);font-size:.82rem;font-weight:600;color:var(--ink);line-height:1.3;overflow-wrap:anywhere}.st-chip.is-off .st-chip-detail{color:#8a6100}.st-card{padding-top:.95rem}.st-head{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap;padding-bottom:.6rem;margin-bottom:.75rem;border-bottom:1px solid var(--border)}.st-head h2{margin:0;flex:1 1 auto}.st-pill{font-family:var(--font-mono);font-size:.74rem;font-weight:600;padding:.16rem .55rem;border-radius:999px;white-space:nowrap;border:1px solid transparent;line-height:1.5}.st-ok{background:#e7f6e7;color:#056105;border-color:#b9e3b9}.st-warn{background:#fff4dd;color:#7a5300;border-color:#f0d9a4}.st-off{background:#f2efe8;color:#55605c;border-color:var(--border)}.st-busy{background:var(--accent-wash);color:var(--accent-ink);border-color:var(--accent-line)}.st-lede{color:var(--ink-2);margin:0 0 .9rem;font-size:.95rem;max-width:58ch}.why{margin:1rem 0 0;border-top:1px dashed var(--border);padding-top:.6rem}.why>summary{cursor:pointer;font-size:.8rem;font-weight:650;color:var(--accent-ink);list-style:none;display:inline-flex;align-items:center;gap:.35rem;padding:.15rem .1rem;border-radius:4px}.why>summary::-webkit-details-marker{display:none}.why>summary:before{content:"▸";font-size:.7em;transition:transform .15s}.why[open]>summary:before{transform:rotate(90deg)}.why>summary:hover{color:var(--accent-deep)}.why-body{font-size:.9rem;color:var(--ink-2);margin-top:.5rem;max-width:64ch}.why-body p{margin:0 0 .6rem}.why-body p:last-child{margin-bottom:0}.st-steps{list-style:none;margin:1rem 0 0;padding:0;display:grid;grid-gap:.1rem;gap:.1rem}.st-steps>li{display:grid;grid-template-columns:1.7rem 1fr;grid-gap:.65rem;gap:.65rem;padding:.6rem 0;border-top:1px solid var(--grid);align-items:start}.st-steps>li:first-child{border-top:0}.st-step-n{width:1.55rem;height:1.55rem;border-radius:50%;display:grid;place-items:center;font-family:var(--font-mono);font-size:.78rem;font-weight:700;background:var(--page);color:var(--muted);border:1px solid var(--border)}.st-steps>li.is-done .st-step-n{background:var(--status-good);color:#fff;border-color:var(--status-good)}.st-steps>li.is-done .st-step-n:after{content:"✓"}.st-steps>li.is-done .st-step-n{font-size:.9rem}.st-steps>li.is-done .st-step-n>*{display:none}.st-steps strong{display:block;font-size:.94rem;font-weight:650}.st-step-state{display:block;font-size:.82rem;color:var(--ink-2);margin-top:.05rem}.st-steps .btn-row{margin-top:.45rem}.st-row{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap}.st-narrow{max-width:7rem}.st-narrow input{width:100%}@media (max-width:700px){.st-head{gap:.35rem}.st-row{align-items:stretch}}.pay-row{display:grid;grid-gap:.5rem;gap:.5rem;margin-top:1rem}.pay-row .btn{width:100%}.plan-fineprint{font-size:.8rem;color:var(--ink-2);margin:.15rem 0 0;text-align:center}@media (pointer:coarse){:root{--tap:44px}[role=button],[role=tab],a,button,input,label,select,summary,textarea{touch-action:manipulation;-webkit-tap-highlight-color:rgba(47,125,142,.18)}input[type=range]{height:var(--tap)}input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:6px}input[type=range]::-webkit-slider-thumb{width:30px;height:30px;margin-top:-12px;border-width:3px;box-shadow:0 2px 6px rgba(15,23,32,.3)}input[type=range]::-moz-range-progress,input[type=range]::-moz-range-track{height:6px}input[type=range]::-moz-range-thumb{width:26px;height:26px;border-width:3px}input[type=range]::-webkit-slider-thumb:hover{transform:none}input[type=range]:active::-webkit-slider-thumb{transform:scale(1.15)}.btn,.find-chip,.lab-console-rail-toggles button,.mode-tabs button,.profile-btn,.site-header nav a,a.btn,a.chip-link,button:not(.linkish):not(.find-hit),input[type=date],input[type=email],input[type=number],input[type=password],input[type=search],input[type=text],input[type=time],select{min-height:var(--tap)}.btn,.lab-console-rail-toggles button,.mode-tabs button,a.btn{display:inline-flex;align-items:center;justify-content:center}.lab-console-rail-toggles button{padding-inline:1rem}summary{min-height:var(--tap);display:flex;align-items:center}details.chalisa-q>summary{flex-wrap:wrap}input[type=checkbox],input[type=radio]{width:1.5rem;height:1.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem;flex:0 0 auto}.choice-set label,.drill-option,label:has(>input[type=checkbox]),label:has(>input[type=radio]){min-height:var(--tap);display:flex;align-items:center}.module-card:before{opacity:1}.skip-link,.support-area,.support-fab,.wordmark{min-height:var(--tap)}.skip-link,.wordmark{display:inline-flex;align-items:center}}@media (pointer:coarse) and (min-width:1400px){:root{--tap:3.5rem}input[type=range]::-webkit-slider-runnable-track{height:.5rem;border-radius:.5rem}input[type=range]::-webkit-slider-thumb{width:2.4rem;height:2.4rem;margin-top:calc(-1.2rem + .25rem)}input[type=range]::-moz-range-track{height:.5rem}input[type=range]::-moz-range-thumb{width:2.2rem;height:2.2rem}}@media (max-width:860px){.site-header nav{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;display:flex;flex-wrap:nowrap;gap:.35rem;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 2rem),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 2rem),transparent)}.site-header nav::-webkit-scrollbar{display:none}.site-header nav a{white-space:nowrap;flex:0 0 auto;margin-right:0}}@media (min-width:2600px){.container{max-width:82rem}}.ui-scale{border-top:1px solid var(--border);margin-top:.45rem;padding-top:.6rem}.ui-scale-label{margin:0 0 .4rem;font-size:.7rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.ui-scale-row{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.3rem;gap:.3rem}.ui-scale-btn{font:inherit;font-size:.78rem;font-weight:550;cursor:pointer;padding:.4rem .5rem;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface);color:var(--ink-2);text-align:center}.ui-scale-btn:hover{border-color:var(--accent-line);color:var(--ink)}.ui-scale-btn.on{background:var(--accent-wash);border-color:var(--accent-line);color:var(--accent-ink);font-weight:650}.st-why{margin:.3rem 0 0;font-size:.78rem;color:var(--ink-2);font-family:var(--font-mono)}.lab-console-stage.is-multi{align-items:start}.lab-console-block .controls{flex-direction:column;align-items:stretch;gap:.9rem}.lab-console-block .controls label{min-width:0;width:100%;flex:none}@media (max-width:1023px){.lab-bleed{min-height:0}.lab-bleed>.lab-console{overflow:visible;height:auto}.lab-bleed>.lab-console,.lab-console-body{min-height:auto;flex:0 0 auto}.lab-console-stage{overflow:visible;min-height:62vh;grid-auto-rows:max-content}}.log-card{padding:0;overflow:hidden}.log-card>summary{display:flex;align-items:flex-start;gap:.9rem;padding:1.05rem 1.2rem;cursor:pointer;list-style:none;border-radius:inherit;transition:background .15s ease}.log-card>summary::-webkit-details-marker{display:none}.log-card>summary:hover{background:#fbf8f1}.log-card>summary:focus-visible{box-shadow:var(--ring)}.log-card-icon{flex:0 0 auto;width:2.1rem;height:2.1rem;border-radius:50%;display:grid;place-items:center;font-size:1rem;background:var(--accent-wash);color:var(--accent-ink)}.log-card-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:.22rem}.log-card-title{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;font-family:var(--font-display);font-size:1.02rem;font-weight:650;color:var(--ink)}.log-card-sub{font-size:.86rem;color:var(--ink-2)}.log-card-err{font-size:.82rem;color:var(--status-critical);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-card-chev{flex:0 0 auto;align-self:center;color:var(--muted);font-size:.9rem;transition:transform .18s ease}.log-card[open]>summary .log-card-chev{transform:rotate(90deg)}.log-card[open]>summary{border-bottom:1px solid var(--border)}.log-card-body{padding:.2rem 1.2rem 1.2rem}.log-card-body>p:first-child{margin-top:.9rem}.log-card.is-alert{border-color:#e8c4c4}.log-card.is-alert .log-card-icon{background:#fbeaea;color:var(--status-critical)}@media (prefers-reduced-motion:reduce){.log-card-chev,.log-card>summary{transition:none}}.console-split{display:grid;grid-template-columns:minmax(14rem,17rem) minmax(0,1fr);grid-gap:1.2rem;gap:1.2rem;align-items:start;margin-top:1.1rem}.console-rail{display:flex;flex-direction:column;gap:.45rem;position:-webkit-sticky;position:sticky;top:4.6rem}.console-rail-item{display:flex;align-items:flex-start;gap:.6rem;text-align:left;font:inherit;cursor:pointer;width:100%;padding:.7rem .85rem;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--ink);box-shadow:var(--e1);transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.console-rail-item:hover{border-color:var(--accent-line)}.console-rail-item.on{border-color:var(--accent);background:var(--accent-wash);box-shadow:inset 3px 0 0 var(--accent),var(--e1)}.console-rail-main{display:flex;flex-direction:column;gap:.1rem;min-width:0}.console-rail-label{font-weight:650;font-size:.94rem;line-height:1.25}.console-rail-sub{font-size:.76rem;color:var(--ink-2);line-height:1.3;overflow-wrap:anywhere}.console-rail-item.on .console-rail-sub{color:var(--accent-ink)}.console-rail-item .st-dot{flex:0 0 auto;width:.5rem;height:.5rem;border-radius:50%;margin-top:.42rem;background:var(--muted)}.console-rail-item.is-ok .st-dot{background:var(--status-good)}.console-rail-item.is-off .st-dot{background:var(--status-warning)}.console-pane{min-width:0}.console-pane .settings-stack{column-count:1}@media (min-width:1500px){.console-pane .settings-stack{column-count:2}}@media (min-width:2400px){.console-pane .settings-stack{column-count:3}}@media (max-width:1023px){.console-split{grid-template-columns:1fr;gap:.8rem}.console-rail{position:static;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:.2rem;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 2rem),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 2rem),transparent)}.console-rail::-webkit-scrollbar{display:none}.console-rail-item{flex:0 0 auto;min-width:11rem}}@media (prefers-reduced-motion:reduce){.console-rail-item{transition:none}}.stack-form.field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr));grid-gap:.75rem;gap:.75rem}.users-row{cursor:pointer}.users-row:hover>td{background:#fbf8f1}.users-row.on>td{background:var(--accent-wash)}.users-row:focus-visible{outline:none;box-shadow:var(--ring)}.user-detail{margin-top:1rem;padding:1rem 1.1rem;border:1px solid var(--accent-line);border-radius:var(--radius-l);background:#fdfbf6}.user-detail>.st-head{margin-bottom:.7rem}.user-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(19rem,100%),1fr));grid-gap:.3rem 1.6rem;gap:.3rem 1.6rem}.user-detail dl{margin:0;display:grid;grid-template-columns:9rem 1fr;grid-gap:.35rem .8rem;gap:.35rem .8rem;align-items:baseline}.user-detail dt{font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.user-detail dd{margin:0;font-size:.9rem}.user-detail-h{margin:1.1rem 0 .5rem;font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--accent-ink)}@media (max-width:700px){.user-detail dl{grid-template-columns:1fr;gap:0 0}.user-detail dd{margin-bottom:.55rem}}.support-fab{position:fixed;right:1.1rem;bottom:1.1rem;z-index:120;display:inline-flex;align-items:center;gap:.5rem;font:inherit;font-size:.88rem;font-weight:600;cursor:pointer;padding:.7rem 1.05rem;border-radius:999px;border:1px solid var(--accent-deep);background:var(--accent);color:#fff;box-shadow:0 6px 20px rgba(20,28,32,.28);transition:transform .15s ease,box-shadow .15s ease}.support-fab:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(20,28,32,.32)}.support-fab:focus-visible{box-shadow:var(--ring),0 6px 20px rgba(20,28,32,.28)}.support-panel{position:fixed;right:1.1rem;bottom:4.4rem;z-index:121;width:min(24rem,calc(100vw - 2.2rem));max-height:min(34rem,calc(100vh - 6.5rem));overflow:auto;overscroll-behavior:contain;padding:1.05rem 1.15rem;border-radius:var(--radius-l);border:1px solid var(--border);background:var(--surface);box-shadow:0 18px 48px rgba(15,23,32,.28)}.support-lede{margin:0 0 .8rem;font-size:.86rem;color:var(--ink-2)}.support-areas{display:grid;grid-template-columns:1fr 1fr;grid-gap:.35rem;gap:.35rem;margin-bottom:.3rem}.support-area{font:inherit;font-size:.8rem;font-weight:550;cursor:pointer;text-align:left;padding:.5rem .6rem;border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface);color:var(--ink-2)}.support-area:hover{border-color:var(--accent-line);color:var(--ink)}.support-area.on{background:var(--accent-wash);border-color:var(--accent-line);color:var(--accent-ink);font-weight:650}.support-done p{margin:0 0 .6rem}.support-ref{font-family:var(--font-mono);font-size:1.02rem;color:var(--accent-ink)}@media (max-width:560px){.support-fab-text{display:none}.support-fab{padding:0;width:3.25rem;height:3.25rem;justify-content:center;font-size:1.15rem}.support-panel{right:.6rem;left:.6rem;width:auto;bottom:4.6rem}.support-areas{grid-template-columns:1fr}}.lab-console-rail.open~.support-fab{display:none}@media (prefers-reduced-motion:reduce){.support-fab{transition:none}}.consent-box{display:flex;align-items:flex-start;gap:.65rem;padding:.8rem .9rem;border-radius:var(--radius);border:1px dashed var(--baseline);background:#fdfbf6;font-size:.86rem;line-height:1.5;color:var(--ink-2);cursor:pointer}.consent-box input{margin-top:.18rem;flex:0 0 auto}.consent-box:hover{border-color:var(--accent-line)}.bridge{display:grid;grid-gap:.9rem;gap:.9rem}.bridge-window{width:100%;height:auto;aspect-ratio:2.5/1;display:block;border-radius:12px;background:#03060f;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 2px 4px rgba(48,40,24,.06),0 16px 40px rgba(48,40,24,.12)}@keyframes bridge-swell{0%{transform:translateY(0)}50%{transform:translateY(4px)}to{transform:translateY(0)}}.bridge-swell{animation:bridge-swell 7s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.bridge-swell{animation:none}}.bridge-instruments{display:grid;grid-gap:.5rem;gap:.5rem}.bridge-readout{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;font-family:var(--font-mono);font-size:.82rem;color:var(--ink-2);padding:.6rem .9rem;background:#0a1220;color:#c9d6e6;border-radius:10px}.bridge-readout b{color:#7fe3c0;font-weight:600;margin-right:.3rem}.bridge-sentence{margin:0;font-size:1.05rem;font-weight:500}.bridge-controls{display:grid;grid-gap:.7rem;gap:.7rem}.bridge-group{flex-wrap:wrap}.bridge-group,.bridge-group label{display:flex;align-items:center;gap:.45rem}.bridge-group label{font-size:.85rem}.bridge-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);min-width:3.2rem}.bridge-seg{display:inline-flex;gap:.25rem}.bridge-why summary{cursor:pointer;color:var(--teal-ink);font-weight:500}.bridge-dot{display:inline-block;width:12px;height:12px;border-radius:50%;border:2px solid}.bridge-why tr[data-shown=false] td{color:var(--muted)}@media (pointer:coarse){.bridge-group .btn,.bridge-group select{min-height:var(--tap,44px)}}.bridge-group select{font:inherit;font-size:.9rem;font-weight:550;padding:.5rem 2rem .5rem .9rem;border-radius:9px;border:1px solid #d6cfbe;background:var(--surface);color:var(--ink);box-shadow:var(--e1);-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%234b5955' stroke-width='1.6'/></svg>");background-repeat:no-repeat;background-position:right .7rem center}.bridge-group select:focus{outline:none;box-shadow:var(--focus,0 0 0 3px rgba(47,125,142,.3))}.site-header .where-bar{display:flex;align-items:center;gap:.9rem;min-width:0;flex:1 1 auto}.site-header .where{display:flex;align-items:center;gap:.45rem;min-width:0;overflow:hidden;white-space:nowrap;color:rgba(232,241,248,.72);font-size:.95rem}.site-header .where .here{color:#e8f1f8;font-weight:600}.site-header .where .sep{opacity:.5;margin-right:.45rem}.site-header .where-back{margin-left:auto;flex:0 0 auto;text-decoration:none;color:#e8f1f8;border:1px solid rgba(232,241,248,.35);border-radius:8px;padding:.4rem .8rem;font-size:.88rem;font-weight:500;white-space:nowrap}.site-header .where-back:hover{border-color:#e8f1f8;color:#fff}@media (max-width:640px){.site-header .where{display:none}}.face{max-width:74rem;margin:0 auto;padding:1.6rem 0 2.5rem}.face-eyebrow{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink);margin:0 0 .45rem}.face-title{font-family:var(--font-display);font-weight:700;font-size:clamp(1.7rem,3.2vw,2.6rem);line-height:1.1;letter-spacing:-.01em;margin:0 0 .5rem;text-wrap:balance}.face-lede{font-size:1.12rem;color:var(--ink-2);margin:0 0 1.5rem;max-width:62ch}.face-foot{margin-top:1.4rem;font-size:.86rem;color:var(--muted);max-width:70ch}.face-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(16rem,100%),1fr));grid-gap:.9rem;gap:.9rem}.face-tile{display:flex;flex-direction:column;gap:.3rem;text-align:left;text-decoration:none;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:1.25rem 1.3rem 1rem;box-shadow:var(--e1);min-height:8.5rem;transition:transform .12s ease,border-color .12s ease}.face-tile:hover{transform:translateY(-2px);border-color:var(--accent-line);color:var(--ink)}.face-tile .t{font-family:var(--font-display);font-weight:700;font-size:1.35rem;line-height:1.15}.face-tile .d{color:var(--ink-2);font-size:.95rem}.face-tile .m{margin-top:auto;padding-top:.7rem;font-family:var(--font-mono);font-size:.74rem;color:var(--muted)}.face-tile.is-current{border-color:var(--accent);background:linear-gradient(180deg,var(--accent-wash),var(--surface) 60%)}.face-tile.is-current .m{color:var(--accent-ink)}.face-tile.is-quiet{box-shadow:none;background:transparent}.face-exam{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr));grid-gap:.9rem;gap:.9rem;margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--border)}.face-lessons{list-style:none;margin:0;padding:0;display:grid;grid-gap:.5rem;gap:.5rem}.face-lessons a{display:grid;grid-template-columns:3.2rem minmax(0,1fr) auto;align-items:center;grid-gap:1rem;gap:1rem;text-decoration:none;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.85rem 1.1rem}.face-lessons a:hover{border-color:var(--accent-line);color:var(--ink)}.face-lessons .n{font-family:var(--font-mono);font-size:1.3rem;font-weight:600;color:var(--accent-ink)}.face-lessons .body{display:flex;flex-direction:column;gap:.1rem;min-width:0}.face-lessons .t{font-family:var(--font-display);font-weight:700;font-size:1.15rem;line-height:1.2}.face-lessons .d{color:var(--ink-2);font-size:.92rem}.face-lessons .s{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.face-lessons li.now a{border-color:var(--accent);box-shadow:inset 4px 0 0 var(--accent)}.face-lessons li.now .s{color:var(--accent-ink)}.face-lessons li.done .s{color:var(--status-good-text)}@media (max-width:560px){.face-lessons a{grid-template-columns:2.4rem minmax(0,1fr)}.face-lessons .s{display:none}}.lesson-page{max-width:none;width:100%;margin:0;padding:.9rem 0 2rem}.lesson-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.1rem}.lesson-title{font-family:var(--font-display);font-weight:700;font-size:clamp(1.35rem,2.1vw,1.9rem);line-height:1.12;letter-spacing:-.01em;margin:.1rem 0 0;text-wrap:balance}.lesson-code{font-family:var(--font-mono);font-size:.72rem;color:var(--muted);letter-spacing:.06em}.lesson-guide{font-size:1.05rem;line-height:1.4;margin:.15rem 0 0;max-width:80ch;color:var(--ink-2)}.lesson{display:flex;flex-direction:column;gap:.9rem}.lesson-stage{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:.8rem;box-shadow:var(--e1);min-width:0;overflow:hidden}.lesson-stage svg{width:100%;height:auto;display:block}.lesson-stage canvas,.lesson-stage svg{max-height:max(22rem,min(76vh,calc(100vh - 21rem)))}.lesson-stage canvas{max-width:100%}@media (min-width:1100px){.lesson:has(>.lesson-console){display:grid;grid-template-columns:minmax(0,1fr) minmax(20rem,27rem);grid-template-areas:"stage console" "working working";align-items:start}.lesson:has(>.lesson-console)>.lesson-stage{grid-area:stage}.lesson:has(>.lesson-console)>.lesson-console{grid-area:console;max-height:max(30rem,min(76vh + 8rem,calc(100vh - 12rem)))}.lesson-console>.lesson-answer{font-size:1.12rem;padding:.7rem .9rem}.lesson-console .sim-clock{padding:.5rem .7rem .6rem}.lesson-console .sim-clock .btn{font-size:.86rem;padding:.4rem .7rem}.lesson-console .sim-clock-rates{display:flex;flex-wrap:wrap;gap:3px;padding:3px;margin-top:.45rem}.lesson-console .sim-clock-rates button{flex:1 1 auto;font-size:.78rem;padding:.3rem .4rem;white-space:nowrap}.lesson-console .sim-clock .field-hint{font-size:.78rem;margin:.45rem 0 0}.lesson:has(>.lesson-console)>.lesson-working{grid-area:working}.lesson-console .lesson-controls{grid-template-columns:1fr;align-content:start}.lesson-console .lesson-controls .controls{grid-template-columns:1fr;gap:.55rem}.lesson-console .lesson-controls .controls label:has(>input[type=range]){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;grid-column-gap:.6rem;column-gap:.6rem;grid-row-gap:.15rem;row-gap:.15rem}.lesson-console .lesson-controls .controls label:has(>input[type=range])>.value{justify-self:end}.lesson-console .lesson-controls .controls label:has(>input[type=range])>input[type=range]{grid-column:1/-1;margin-top:.05rem}.lesson-console .lesson-controls label:has(>input[type=checkbox]){display:flex;flex-direction:row;align-items:flex-start;gap:.5rem}.lesson-console .lesson-controls label:has(>input[type=checkbox])>input{order:-1;margin-top:.25rem;flex:none}.lesson-stage.is-multi{grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr))}}.lesson-console{display:flex;flex-direction:column;gap:.7rem;min-width:0;min-height:0}.lesson-controls-wrap{position:relative;flex:1 1 auto;min-height:9rem;display:flex;flex-direction:column}.lesson-controls-wrap>.lesson-controls{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain}.lesson-controls-wrap[data-more="1"]>.lesson-controls{mask-image:linear-gradient(#000 calc(100% - 2.6rem),transparent);-webkit-mask-image:linear-gradient(#000 calc(100% - 2.6rem),transparent)}.lesson-more{position:absolute;left:50%;bottom:.35rem;transform:translateX(-50%);pointer-events:none;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink);background:var(--surface);border:1px solid var(--accent-line);border-radius:999px;padding:.2rem .6rem}.lesson-console>.lesson-answer{flex:none}.lesson-console button,.lesson-console fieldset,.lesson-console input,.lesson-console label,.lesson-console select{scroll-margin-top:5rem;scroll-margin-bottom:1rem}.do-this{flex:none;background:var(--surface);border:1px solid var(--accent-line);border-left:4px solid var(--accent);border-radius:14px;padding:.65rem .9rem .7rem}.do-this-k{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink);margin:0 0 .35rem}.do-this ol{list-style:none;margin:0;padding:0;display:grid;grid-gap:.35rem;gap:.35rem;counter-reset:step}.do-this li{display:grid;grid-template-columns:1.45rem minmax(0,1fr);grid-gap:.55rem;gap:.55rem;align-items:start;font-size:.95rem;line-height:1.35;color:var(--ink)}.do-this li .tick{width:1.45rem;height:1.45rem;border-radius:50%;border:1.5px solid var(--accent-line);background:var(--surface);color:var(--status-good-text);font-size:.85rem;font-weight:700;padding:0;display:grid;place-items:center;cursor:pointer;margin-top:.05rem}.do-this li .tick.is-auto{cursor:default}.do-this li .tick:hover{border-color:var(--accent)}.do-this li.is-ticked .tick{background:#e4f3e4;border-color:var(--status-good-text)}.do-this li.is-ticked>span:last-child{color:var(--muted)}.lesson-head-main{min-width:0}.lesson-done-chip{display:inline-block;vertical-align:middle;margin-left:.6rem;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--status-good-text);background:#e4f3e4;border-radius:999px;padding:.15rem .55rem}.lesson-next-top{flex:none;display:grid;grid-gap:.1rem;gap:.1rem;text-decoration:none;color:var(--ink);border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:.55rem .9rem;text-align:right;max-width:18rem}.lesson-next-top .k{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.lesson-next-top .t{font-family:var(--font-display);font-weight:700;font-size:.95rem;line-height:1.2}.lesson-next-top:hover{border-color:var(--accent-line)}.lesson-next-top.is-ready{background:var(--accent);border-color:var(--accent);color:#fff}.lesson-next-top.is-ready .k{color:rgba(255,255,255,.8)}@media (max-width:720px){.lesson-next-top{display:none}}.fold-n{display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--accent);color:#fff;font-family:var(--font-mono);font-size:.8rem;font-weight:700;margin-right:.6rem;vertical-align:middle}.fold-hint{display:inline-block;margin-left:.8rem;font-family:var(--font-body);font-weight:400;font-size:.85rem;color:var(--muted)}@media (max-width:720px){.fold-hint{display:none}}.gate-progress{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink);margin:.6rem 0 .4rem}.lesson-nav.is-done .lesson-nav-next{box-shadow:0 0 0 4px var(--accent-wash)}.face-progress{display:flex;align-items:center;gap:.8rem;margin:-.3rem 0 1rem}.face-progress-bar,.face-tile-bar{display:block;height:6px;border-radius:999px;background:var(--grid);overflow:hidden}.face-progress-bar{flex:0 1 18rem}.face-progress-bar>i,.face-tile-bar>i{display:block;height:100%;background:var(--status-good-text);border-radius:999px}.face-progress-n{font-family:var(--font-mono);font-size:.78rem;color:var(--ink-2)}.face-tile-bar{margin-top:.5rem}.face-tile.is-done .t:after{content:" ✓";color:var(--status-good-text)}.lesson-stage.is-multi{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(24rem,100%),1fr));grid-gap:.8rem;gap:.8rem;background:transparent;border:0;padding:0;box-shadow:none;overflow:visible}.lesson-stage.is-multi>*{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:.8rem;min-width:0;overflow:auto;box-shadow:var(--e1)}.lesson-stage.is-multi svg{width:100%;height:auto;max-height:30rem}.lesson-stage.is-multi canvas{width:100%;max-width:100%;height:21rem;display:block}.lesson-stage.is-multi>.panel,.lesson-stage>.panel{margin:0}.lesson-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr));grid-gap:.8rem;gap:.8rem}.lesson-controls>*{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:.9rem 1.1rem 1rem;min-width:0}.lesson-controls .lab-console-block>h2,.lesson-controls .lab-console-block>h3,.lesson-controls>.panel>h2,.lesson-controls>.panel>h3{font-size:1rem;margin:0 0 .5rem;line-height:1.25}.lesson-controls .controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr));margin-top:.4rem;grid-gap:.7rem 1.4rem;gap:.7rem 1.4rem;align-items:end}.lesson-controls .controls label{font-size:.92rem;min-width:0}.lesson-controls .controls>.btn,.lesson-controls .controls>.btn-row,.lesson-controls .controls>button{grid-column:1/-1;justify-self:start}.lesson-controls .lab-console-block .controls label{font-size:.92rem}.lesson-controls .controls .value{font-size:1rem}.lesson-controls .btn{font-size:.95rem;padding:.55rem .9rem}.lesson-controls .choice-set label,.lesson-controls fieldset label{font-size:.95rem}.lesson-controls .btn-row{margin-top:.4rem}.lesson-controls input[type=number],.lesson-controls input[type=text],.lesson-controls select{font-size:.95rem}.lesson-answer{margin:0;border-radius:14px;padding:.9rem 1.2rem;font-family:var(--font-display);font-weight:700;font-size:clamp(1.15rem,2vw,1.6rem);line-height:1.25;background:var(--accent-wash);color:var(--accent-ink);border:1px solid var(--accent-line)}.lesson-fold,.lesson-working{border:1px solid var(--border);border-radius:14px;background:var(--surface)}.lesson-fold>summary,.lesson-working>summary{cursor:pointer;list-style:none;padding:.9rem 1.1rem;font-family:var(--font-display);font-weight:700;font-size:1.05rem;display:flex;align-items:center;gap:.7rem}.lesson-fold>summary::-webkit-details-marker,.lesson-working>summary::-webkit-details-marker{display:none}.lesson-fold>summary:before,.lesson-working>summary:before{content:"+";font-family:var(--font-mono);font-weight:600;width:1.6rem;height:1.6rem;border-radius:50%;display:inline-grid;place-items:center;background:var(--accent-wash);color:var(--accent-ink);flex:0 0 auto}.lesson-fold[open]>summary:before,.lesson-working[open]>summary:before{content:"–"}.lesson-fold-body,.lesson-working-body{padding:0 1.1rem 1.1rem}.lesson-working-body{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(22rem,100%),1fr));grid-gap:1rem 1.6rem;gap:1rem 1.6rem;align-items:start}.lesson-working-body>.lab-console-block,.lesson-working-body>.readout{min-width:0}.lesson-notes{grid-column:1/-1;max-width:72ch}.lesson-notes .panel{margin:0 0 1rem}.lesson-fold{margin-top:.9rem}.lesson-fold+.lesson-fold{margin-top:.5rem}.lesson-fold-body .gate-card,.lesson-fold-body .practice-card{max-width:none}.lesson-about h3{font-size:1rem;margin:.9rem 0 .4rem}.lesson-about ul{margin:0;padding-left:1.2rem}.lesson-about p{margin:.5rem 0}.lesson-about .evidence-line{font-size:.85rem;color:var(--ink-2)}.lesson-nav{display:grid;grid-template-columns:1fr 1fr;grid-gap:.9rem;gap:.9rem;margin-top:1.2rem}.lesson-nav a{display:grid;grid-gap:.15rem;gap:.15rem;text-decoration:none;border-radius:14px;padding:.9rem 1.2rem;border:1px solid var(--border);background:var(--surface);color:var(--ink)}.lesson-nav a:hover{border-color:var(--accent-line)}.lesson-nav .k{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;opacity:.75}.lesson-nav .t{font-family:var(--font-display);font-weight:700;font-size:1.1rem;line-height:1.2}.lesson-nav-next{text-align:right;background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important}@media (max-width:640px){.lesson-nav{grid-template-columns:1fr}.lesson-nav-next{text-align:left}}.lesson-unsplit .lesson-prose{max-width:74rem}.lesson-answer-label{font-weight:500;color:var(--ink-2)}.stage-with-bar{display:flex;flex-direction:column;gap:.5rem;min-width:0}.stage-with-bar>.stage-bar{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.stage-bar .mode-tabs{margin:0;background:var(--grid);border-radius:12px;padding:3px 4px;display:flex;flex-wrap:wrap;align-items:center;gap:3px;flex:1 1 auto;min-width:0}.stage-bar .mode-tabs button{border:0;border-radius:9px;padding:.38rem .6rem;font-size:.82rem;font-weight:600;background:transparent;color:var(--ink-2);flex:1 1 auto;text-align:center}.stage-bar .mode-tabs button.on,.stage-bar .mode-tabs button[aria-pressed=true],.stage-bar .mode-tabs button[aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:var(--e1)}.stage-bar .mode-tabs:before{content:attr(aria-label);font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-self:center;padding:0 .5rem 0 .3rem;white-space:nowrap}.practice-worked{margin:0 0 .7rem;border:1px dashed var(--border);border-radius:10px;background:var(--surface-2,#f7f5ef);padding:.1rem .8rem}.practice-worked>summary{cursor:pointer;font-size:.82rem;font-weight:600;color:var(--ink-2);padding:.45rem 0;list-style:none}.practice-worked>summary::-webkit-details-marker{display:none}.practice-worked>summary:before{content:"▸ "}.practice-worked[open]>summary:before{content:"▾ "}.practice-worked-body{padding:0 0 .6rem}.practice-worked-body .q-worked{margin:0 0 .3rem;font-weight:600;color:var(--ink-2)}.practice-worked-body .a-worked{margin:0;color:var(--ink-2);font-size:.92rem}.lesson-where-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 1.2rem;margin:0 0 .15rem}.lesson-where-row>.face-eyebrow{margin:0}.lesson-fold.is-about{border:0;background:transparent;border-radius:0;margin:0 0 .05rem}.lesson-fold.is-about>summary{padding:0;font-size:1.02rem;font-weight:700;line-height:1.2;color:var(--accent-ink)}.lesson-fold.is-about>summary:before{width:1.2rem;height:1.2rem;font-size:.74rem}.lesson-fold.is-about[open]{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding-top:.1rem}.lesson-fold.is-about[open]>summary{padding:.7rem 1.1rem 0}.subj-chip,.subj-tag{--subj:var(--accent-deep)}.subj-celestial{--subj:#2a5fb0}.subj-terrestrial{--subj:#1f7a5a}.subj-ror{--subj:#b23a3a}.subj-radar{--subj:#6a4bb0}.subj-shiphandling{--subj:#1d6f86}.subj-meteorology{--subj:#3f6f9e}.subj-stability{--subj:#a4531c}.subj-cargo{--subj:#7a5a1e}.subj-ecdis{--subj:#0f7a78}.subj-bridge{--subj:#4d5b6b}.subj-gmdss{--subj:#9a3a78}.subj-astronomy{--subj:#2a5fb0}.subj-tag{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:.66rem;font-weight:700;letter-spacing:.06em;color:#fff;background:var(--subj);border-radius:5px;padding:.12rem .4rem;line-height:1.3;white-space:nowrap}.plan-list{list-style:none;margin:1.2rem 0 0;padding:0;display:grid;grid-gap:.9rem;gap:.9rem;grid-template-columns:repeat(auto-fill,minmax(min(17rem,100%),1fr))}.plan-list-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);padding:1rem 1.1rem 1.05rem;box-shadow:var(--e1);cursor:pointer;display:grid;grid-gap:.5rem;gap:.5rem;transition:border-color .15s,box-shadow .15s,transform .15s}.plan-list-card:focus-visible,.plan-list-card:hover{border-color:var(--accent-line);box-shadow:var(--e2);transform:translateY(-1px);outline:none}.plan-list-card h3{margin:0;font-family:var(--font-display);font-size:1.12rem}.plan-list-meta{margin:0;display:flex;gap:1rem;font-size:.85rem;color:var(--muted)}.plan-list-meta strong{color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.plan-list-tags{margin:0;display:flex;flex-wrap:wrap;gap:.3rem;min-height:1.2rem}.plan-list-card .btn{justify-self:start}.plan-board-wrap{margin-top:.9rem}.plan-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);padding:1.2rem 1.4rem;box-shadow:var(--e1);margin-bottom:1rem}.plan-head-main{flex:1 1 26rem;min-width:0}.plan-head .login-note{margin:.35rem 0 0;max-width:70ch}.plan-title{margin:.1rem 0 0;font-family:var(--font-display);font-size:clamp(1.35rem,2.2vw,1.8rem);display:flex;align-items:baseline;gap:.7rem;flex-wrap:wrap}.plan-title-edit{font:600 .78rem var(--font-body);color:var(--accent-ink);background:transparent;border:0;padding:.2rem .3rem;border-radius:var(--radius-s);cursor:pointer}.plan-title-edit:hover{background:var(--accent-wash)}.plan-rename{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.2rem}.plan-rename input{font:700 1.15rem var(--font-display);padding:.4rem .6rem;border:1px solid var(--accent-line);border-radius:var(--radius-s);min-width:min(22rem,100%)}.plan-stats{display:flex;gap:.6rem}.plan-stat{display:grid;justify-items:center;min-width:5.2rem;padding:.55rem .8rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--accent-wash)}.plan-stat .n{font:700 1.5rem/1.1 var(--font-display);color:var(--accent-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.plan-stat .l{font-size:.72rem;color:var(--ink-2);text-transform:uppercase;letter-spacing:.07em}.plan-board{display:grid;grid-gap:.9rem;gap:.9rem;align-items:start;grid-template-columns:repeat(auto-fill,minmax(min(17.5rem,100%),1fr))}.plan-week{background:#fbf8f1;border:1px solid var(--border);border-radius:var(--radius-l);padding:.8rem .8rem .85rem;display:grid;grid-gap:.55rem;gap:.55rem;min-height:11rem;transition:border-color .12s,background .12s}.plan-week.is-drop{border-color:var(--accent);background:var(--accent-wash);border-style:dashed}.plan-week-head{display:flex;align-items:center;gap:.5rem}.plan-week-n{font:700 .95rem var(--font-display);color:var(--ink)}.plan-week-count{font:600 .72rem var(--font-mono);color:var(--accent-ink);background:var(--accent-wash);border:1px solid var(--accent-line);border-radius:999px;padding:.05rem .45rem}.plan-week-remove{margin-left:auto;width:1.7rem;height:1.7rem;border-radius:var(--radius-s);border:1px solid transparent;background:transparent;color:var(--muted);font-size:1.05rem;cursor:pointer;line-height:1}.plan-week-remove:hover{border-color:var(--border);color:var(--status-critical);background:#fff}.plan-week-title{font:500 .88rem var(--font-body);color:var(--ink-2);background:transparent;border:1px dashed transparent;border-radius:var(--radius-s);padding:.3rem .4rem;width:100%}.plan-week-title:hover{border-color:var(--baseline)}.plan-week-title:focus{outline:none;border:1px solid var(--accent-line);background:#fff}.plan-week-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.45rem;gap:.45rem}.plan-week-empty{margin:0;padding:1.1rem .5rem;text-align:center;font-size:.82rem;color:var(--muted);border:1px dashed var(--baseline);border-radius:var(--radius)}.plan-week-add{font:600 .86rem var(--font-body);color:var(--accent-ink);background:transparent;cursor:pointer;border:1px dashed var(--accent-line);border-radius:var(--radius);padding:.5rem;min-height:2.5rem}.plan-week-add:hover{background:var(--accent-wash);border-style:solid}.plan-week-new{place-content:center;justify-items:center;gap:.3rem;cursor:pointer;font:600 .95rem var(--font-body);color:var(--accent-ink);border-style:dashed;border-color:var(--accent-line)}.plan-week-new .plus{font:300 2rem/1 var(--font-display)}.plan-week-new:hover{background:var(--accent-wash)}.plan-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.55rem .65rem .5rem;box-shadow:var(--e1);display:grid;grid-gap:.3rem;gap:.3rem;cursor:-webkit-grab;cursor:grab}.plan-card:hover{border-color:var(--accent-line)}.plan-card:active{cursor:-webkit-grabbing;cursor:grabbing}.plan-card-top{display:flex;align-items:center;gap:.4rem}.plan-item-handle{color:var(--baseline);font-size:.85rem;letter-spacing:-2px}.plan-card-id{font-family:var(--font-mono);font-size:.72rem;color:var(--muted)}.plan-card-x{margin-left:auto;width:1.6rem;height:1.6rem;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;font-size:1rem;line-height:1}.plan-card-x:hover{color:var(--status-critical);border-color:var(--border)}.plan-card-title{margin:0;font-weight:600;font-size:.93rem;line-height:1.3;color:var(--ink)}.plan-card-actions{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.plan-card-open{font-size:.8rem;font-weight:600;text-decoration:none}.plan-card-move{display:inline-flex;gap:.25rem;align-items:center}.plan-card-move button,.plan-card-move select{font:600 .78rem var(--font-body);min-width:1.9rem;height:1.9rem;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--ink-2);cursor:pointer}.plan-card-move select{padding:0 .2rem}.plan-card-move button:hover:not(:disabled){border-color:var(--accent-line);color:var(--accent-ink)}.plan-card-move button:disabled{opacity:.35;cursor:default}.plan-foot{margin-top:1.4rem}.plan-picker{display:flex;flex-direction:column;gap:.8rem;width:min(34rem,100%)}.plan-picker h3{font-family:var(--font-display);display:flex;align-items:center;gap:.4rem}.plan-picker h3 select{font:inherit;border:1px solid var(--accent-line);border-radius:var(--radius-s);padding:0 .3rem}.plan-picker-search{font:inherit;padding:.6rem .8rem;border:1px solid var(--border);border-radius:var(--radius);width:100%}.plan-picker-search:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash)}.plan-picker-chips{display:flex;flex-wrap:wrap;gap:.35rem}.subj-chip{font:600 .78rem var(--font-body);padding:.3rem .65rem;border-radius:999px;cursor:pointer;border:1px solid var(--border);background:#fff;color:var(--ink-2)}.subj-chip:hover{border-color:var(--subj);color:var(--subj)}.subj-chip.is-on{background:var(--subj);border-color:var(--subj);color:#fff}.plan-picker-list{flex:1 1;overflow-y:auto;display:grid;grid-gap:.8rem;gap:.8rem;align-content:start;min-height:10rem}.plan-picker-group{border:0;margin:0;padding:0;display:grid;grid-gap:.3rem;gap:.3rem}.plan-picker-group legend{font:700 .85rem var(--font-display);display:flex;align-items:center;gap:.45rem;margin-bottom:.3rem;padding:0}.plan-pick{display:flex;gap:.6rem;align-items:flex-start;padding:.5rem .6rem;cursor:pointer;border:1px solid var(--border);border-radius:var(--radius-s);background:#fff}.plan-pick:hover{border-color:var(--accent-line)}.plan-pick.is-on{border-color:var(--accent);background:var(--accent-wash)}.plan-pick input{margin-top:.2rem;accent-color:var(--accent)}.plan-pick-body{display:grid;grid-gap:.1rem;gap:.1rem}.plan-pick-body .t{font-weight:600;font-size:.9rem}.plan-pick-body .d{font-size:.75rem;color:var(--muted)}.plan-picker-foot{position:-webkit-sticky;position:sticky;bottom:-2.2rem;background:var(--surface);border-top:1px solid var(--border);padding:.8rem 0 .2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.profile-veil{position:fixed;inset:0;z-index:210;background:rgba(10,16,22,.5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding:4vh 1rem;overflow-y:auto}.user-detail.profile-modal{margin:0;width:min(58rem,100%);background:var(--surface);border-color:var(--border);box-shadow:0 24px 60px rgba(8,14,20,.3);padding:1.3rem 1.5rem 1.5rem}.profile-modal>.st-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.profile-edit{border:1px solid var(--accent-line);background:var(--accent-wash);border-radius:var(--radius);padding:1rem 1.1rem;margin-bottom:1rem}.profile-edit .req{color:var(--status-critical)}.pe-subjects{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem .9rem}.pe-subjects legend{font-weight:600;font-size:.9rem;margin-bottom:.35rem;padding:0}.pe-subject{display:inline-flex!important;align-items:center;gap:.35rem;font-weight:500!important;font-size:.88rem}.profile-note{margin:0 0 .9rem;padding:.6rem .8rem;border-left:3px solid var(--status-warning);background:#fdf6e3;border-radius:var(--radius-s);font-size:.9rem}.gl-panel,.lesson-stage .gl-panel{padding:.2rem .2rem .3rem;border:0;background:transparent;box-shadow:none}.gl-wall-head h2{margin:0;font-family:var(--font-display);font-size:1.15rem}.gl-wall-sub{margin:.25rem 0 .8rem;font-size:.85rem;color:var(--muted);display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.gl-wall{display:grid;grid-gap:.45rem;gap:.45rem;grid-template-columns:repeat(auto-fill,minmax(min(12.5rem,100%),1fr));max-height:max(22rem,calc(100vh - 20rem));overflow-y:auto;padding:.1rem .25rem .25rem .1rem;align-content:start}.gl-word{display:flex;align-items:center;justify-content:space-between;gap:.5rem;text-align:left;font:500 .9rem var(--font-body);color:var(--ink);background:#fff;cursor:pointer;border:1px solid var(--border);border-radius:var(--radius-s);padding:.55rem .7rem;min-height:2.6rem;transition:border-color .12s,background .12s,transform .12s}.gl-word:hover{border-color:var(--accent-line);background:var(--accent-wash);transform:translateY(-1px)}.gl-word:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-wash);border-color:var(--accent)}.gl-word.is-on{background:var(--accent-ink);border-color:var(--accent-ink);color:#fff;font-weight:700}.gl-word-t{min-width:0}.gl-sim-dot{flex:none;width:.55rem;height:.55rem;border-radius:50%;background:var(--series-star);box-shadow:0 0 0 2px rgba(27,175,122,.18);display:inline-block}.gl-word.is-on .gl-sim-dot{background:#7ee2bd}.gl-controls{display:grid;grid-gap:.7rem;gap:.7rem}.gl-search{font:inherit;width:100%;padding:.6rem .8rem;border:1px solid var(--border);border-radius:var(--radius);background:#fff}.gl-search:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash)}.gl-current{display:grid;grid-gap:.1rem;gap:.1rem;padding:.6rem .8rem;background:var(--accent-wash);border:1px solid var(--accent-line);border-radius:var(--radius)}.gl-current-k{font:600 .7rem var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink)}.gl-current-t{font:700 1.15rem var(--font-display)}.gl-veil{position:fixed;inset:0;z-index:220;background:rgba(10,16,22,.55);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding:4vh 1rem;overflow-y:auto}.gl-popup{width:min(72rem,100%);background:var(--surface);border-radius:var(--radius-l);box-shadow:0 24px 60px rgba(8,14,20,.35);padding:1.2rem 1.5rem 1.5rem}.gl-popup-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--border);padding-bottom:.8rem;margin-bottom:1rem}.gl-popup-head h2{margin:.15rem 0 0;font-family:var(--font-display);font-size:clamp(1.4rem,2.4vw,2rem)}.gl-popup-head .btn-row{align-items:center;flex-wrap:nowrap}.gl-popup-body{display:grid;grid-gap:1.4rem;gap:1.4rem;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);align-items:start}@media (max-width:900px){.gl-popup-body{grid-template-columns:1fr}}.gl-popup-def{font-size:1.08rem;line-height:1.55;margin:0 0 1rem}.gl-popup-text h3{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 .4rem}.gl-popup-lessons{list-style:none;margin:0;padding:0;display:grid;grid-gap:.35rem;gap:.35rem}.gl-popup-lessons a{display:block;padding:.5rem .7rem;border:1px solid var(--border);border-radius:var(--radius-s);text-decoration:none;font-weight:600;font-size:.9rem;background:#fff}.gl-popup-lessons a:hover{border-color:var(--accent-line);background:var(--accent-wash)}.gl-popup-lessons .num{font-family:var(--font-mono);font-size:.78rem;color:var(--muted);margin-right:.3rem}.gl-popup-sim{background:#f4f7fa;border:1px solid var(--border);border-radius:var(--radius);padding:.8rem;min-height:14rem;min-width:0;overflow:hidden}.gl-popup-sim canvas,.gl-popup-sim svg{max-width:100%;height:auto}.gl-sim-fallback{display:grid;grid-gap:.5rem;gap:.5rem;place-content:center;justify-items:start;min-height:12rem;padding:.5rem 1rem}.gl-sim-fallback p{margin:0}.phone-input{display:flex;align-items:stretch;width:100%;min-width:0;border:1px solid var(--border);border-radius:var(--radius-s);background:#fff;overflow:hidden}.phone-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash)}.phone-input.is-disabled{background:#f6f3ec;opacity:.8}.phone-cc{position:relative;flex:none;display:flex;align-items:center;padding:0 .6rem 0 .7rem;background:var(--accent-wash);border-right:1px solid var(--border);font-weight:600;font-size:.95rem;color:var(--ink)}.phone-cc-face:after{content:" ▾";font-size:.7rem;color:var(--muted)}.phone-cc select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;font-size:1rem}.phone-input input[type=tel],.stack-form .phone-input input[type=tel]{flex:1 1;min-width:0;border:0!important;box-shadow:none!important;outline:none;background:transparent;padding:.55rem .7rem;font:inherit;margin:0;border-radius:0}.site-header .where .where-link{color:inherit;text-decoration:none;border-radius:4px;padding:.1rem .2rem;margin:0 -.2rem}.site-header .where .where-link:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}.site-header .where .where-link:focus-visible{outline:2px solid #9fd3de;outline-offset:2px}