.asc{--ground:#F2F4F7;--surface:#FFFFFF;--sunken:#E9EDF2;--raised:#FFFFFF;--overlay:rgba(16,24,36,.42);--ink-1:#16202C;--ink-2:#435060;--ink-3:#5B6777;--ink-inverse:#FFFFFF;--accent:#1F4C7A;--accent-hover:#173B60;--accent-soft:#E4ECF5;--accent-ink:#1A4470;--on-accent:#FFFFFF;--line:#D9DFE7;--line-strong:#7F8A98;--focus:#1F4C7A;--st-mastered:#1C4F8F;--st-mastered-bg:#E2EAF6;--st-proficient:#17695C;--st-proficient-bg:#DDF0EC;--st-developing:#8A5200;--st-developing-bg:#FBEED6;--st-emerging:#A3264A;--st-emerging-bg:#F8E2E8;--st-none:#5B6777;--st-none-bg:#EDF0F4;--good:#23704A;--good-bg:#E0F1E7;--warning:#8F5300;--warning-bg:#FCF0D9;--critical:#B0261C;--critical-bg:#FBE4E1;--info:#1F4C7A;--info-bg:#E4ECF5;--seq-0:#EEF2F7;--seq-1:#CFDCEC;--seq-2:#9FBAD9;--seq-3:#6A93C0;--seq-4:#3B6C9F;--seq-5:#1C4573;--cat-1:#1F4C7A;--cat-2:#C46A1B;--cat-3:#3C8FA8;--cat-4:#7D4E9C;--cat-5:#5C7F2E;--cat-6:#A8405A;--band-1:#E3E7ED;--band-2:#D7DCE4;--band-3:#CAD1DB;--band-4:#BDC5D1;--whisker:#16202C;--wrong:#B0261C;--you:var(--accent);--font-sans:"IBM Plex Sans","Segoe UI",system-ui,-apple-system,sans-serif;--font-ar:"IBM Plex Sans Arabic","Geeza Pro","Segoe UI",Tahoma,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;--font-read:var(--font-sans);--z:1;--fs-cap:calc(11.5px * var(--z));--lh-cap:1.4;--fs-lab:calc(12.5px * var(--z));--lh-lab:1.4;--fs-sm:calc(13.5px * var(--z));--lh-sm:1.45;--fs-body:calc(14.5px * var(--z));--lh-body:1.55;--fs-lead:calc(16px * var(--z));--lh-lead:1.5;--fs-h3:calc(19px * var(--z));--lh-h3:1.3;--fs-h2:calc(24px * var(--z));--lh-h2:1.25;--fs-h1:calc(32px * var(--z));--lh-h1:1.15;--fs-display:calc(44px * var(--z));--para:0.75em;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:40px;--s8:48px;--s9:64px;--r-sm:4px;--r-md:6px;--r-lg:10px;--r-pill:999px;--row-h:40px;--cell-px:12px;--tbl-fs:calc(13.5px * var(--z));--ctl-h:36px;--pad:20px;--t-fast:120ms;--t-mid:180ms;--t-panel:240ms;--ease:cubic-bezier(.2,.6,.2,1);--shadow-panel:-1px 0 0 var(--line),-12px 0 32px rgba(16,24,36,.08);--shadow-pop:0 1px 2px rgba(16,24,36,.08),0 8px 24px rgba(16,24,36,.12);background:var(--ground);color:var(--ink-1);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}.asc,.asc *,.asc :after,.asc :before{box-sizing:border-box}sc-for,sc-if{display:contents}.asc.theme-dark .icon-btn .dot{color:#1A0D0B}.asc.theme-dark{--ground:#131A23;--surface:#1A222D;--sunken:#10161E;--raised:#212B38;--overlay:rgba(0,0,0,.55);--ink-1:#E7EBF0;--ink-2:#B5BFCB;--ink-3:#94A0AE;--ink-inverse:#131A23;--accent:#8DB6E6;--accent-hover:#A9C9EE;--accent-soft:#1E3049;--accent-ink:#B9D3F2;--on-accent:#0F1A28;--line:#2C3744;--line-strong:#67768A;--focus:#8DB6E6;--st-mastered:#93B8EE;--st-mastered-bg:#1C2C44;--st-proficient:#6FCBB7;--st-proficient-bg:#15322D;--st-developing:#F0B55E;--st-developing-bg:#382A12;--st-emerging:#F08FA8;--st-emerging-bg:#3B1E27;--st-none:#94A0AE;--st-none-bg:#222C38;--good:#73C796;--good-bg:#173226;--warning:#F0B55E;--warning-bg:#382A12;--critical:#F59186;--critical-bg:#3D1E1B;--info:#8DB6E6;--info-bg:#1E3049;--seq-0:#1C2532;--seq-1:#213A57;--seq-2:#2B5482;--seq-3:#5A89BE;--seq-4:#7AA3D3;--seq-5:#B3CDEB;--cat-1:#8DB6E6;--cat-2:#E79A55;--cat-3:#6CC1D6;--cat-4:#B993D4;--cat-5:#9BC46A;--cat-6:#E58AA0;--band-1:#222C38;--band-2:#283342;--band-3:#2F3B4C;--band-4:#364457;--whisker:#E7EBF0;--wrong:#F59186;--shadow-panel:-1px 0 0 var(--line),-12px 0 32px rgba(0,0,0,.35);--shadow-pop:0 1px 2px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.45)}.asc.ts-115{--z:1.15}.asc.ts-130{--z:1.3}.asc.ts-150{--z:1.5}.asc .pill,.asc .tag,.asc .tbl th,.asc .tier{font-size:calc(12px * var(--z))}.asc .btn,.asc .nav-item{font-size:calc(14px * var(--z))}.asc .btn-sm,.asc .chip{font-size:calc(13px * var(--z))}.asc .btn-lg{font-size:calc(17px * var(--z))}.asc .pill .ev,.asc .tag.mono{font-size:calc(11.5px * var(--z))}.asc.a11y-spacing{--lh-body:1.85;--lh-lead:1.8;--para:1.4em;letter-spacing:.012em;word-spacing:.06em}.asc.a11y-dys{--font-read:"Atkinson Hyperlegible","Verdana",sans-serif}.asc.a11y-hc{--ground:#FFFFFF;--surface:#FFFFFF;--sunken:#FFFFFF;--ink-1:#000000;--ink-2:#1A1A1A;--ink-3:#2B2B2B;--line:#000000;--line-strong:#000000;--accent:#0B3A6B;--accent-soft:#FFFFFF;--accent-ink:#0B3A6B;--st-mastered-bg:#FFFFFF;--st-proficient-bg:#FFFFFF;--st-developing-bg:#FFFFFF;--st-emerging-bg:#FFFFFF;--st-none-bg:#FFFFFF;--good-bg:#FFFFFF;--warning-bg:#FFFFFF;--critical-bg:#FFFFFF;--info-bg:#FFFFFF;--band-1:#FFFFFF;--band-2:#E6E6E6;--band-3:#FFFFFF;--band-4:#E6E6E6}.asc.a11y-hc .btn,.asc.a11y-hc .card,.asc.a11y-hc .pill{border-width:1.5px;border-color:currentColor}.asc.theme-dark.a11y-hc{--ground:#000;--surface:#000;--sunken:#000;--ink-1:#fff;--ink-2:#f2f2f2;--ink-3:#e0e0e0;--line:#fff;--line-strong:#fff;--accent:#A9CDF5;--accent-soft:#000;--accent-ink:#A9CDF5}.asc.theme-dark.a11y-cvd{--st-mastered:#7DBBF2;--st-proficient:#3FC7A0;--st-developing:#F2A541;--st-emerging:#E699C9;--cat-1:#7DBBF2;--cat-2:#F2A541;--cat-3:#3FC7A0;--cat-4:#E699C9;--cat-5:#B7D36B;--cat-6:#F0E442}.asc.a11y-cvd{--st-mastered:#004F8C;--st-proficient:#007860;--st-developing:#8C4A00;--st-emerging:#6B1F5A;--cat-1:#0072B2;--cat-2:#D55E00;--cat-3:#56B4E9;--cat-4:#CC79A7;--cat-5:#009E73;--cat-6:#8F6D00}.asc.a11y-cvd .hm-cell.st-mastered{background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.45) 0 2px,transparent 2px 6px)}.asc.a11y-cvd .hm-cell.st-proficient{background-image:radial-gradient(rgba(255,255,255,.55) 1.2px,transparent 1.4px);background-size:6px 6px}.asc.a11y-cvd .hm-cell.st-developing{background-image:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 1.5px,transparent 1.5px 5px)}.asc.a11y-cvd .hm-cell.st-emerging{background-image:repeating-linear-gradient(-45deg,rgba(0,0,0,.22) 0 2px,transparent 2px 5px),repeating-linear-gradient(45deg,rgba(0,0,0,.22) 0 2px,transparent 2px 5px)}.asc.a11y-rm *,.asc.a11y-rm :after,.asc.a11y-rm :before{transition:none!important;animation:none!important}@media (prefers-reduced-motion:reduce){.asc *,.asc :after,.asc :before{transition:none!important;animation:none!important}}.asc.a11y-focus .is-focus,.asc.a11y-focus :focus-visible{outline:3px solid var(--focus)!important;outline-offset:3px;box-shadow:0 0 0 6px var(--accent-soft)}.asc.a11y-focus .tbl tr.is-current td{background:var(--accent-soft);box-shadow:inset 0 2px 0 var(--accent),inset 0 -2px 0 var(--accent)}.asc.density-comfortable{--row-h:52px;--cell-px:16px;--tbl-fs:calc(14.5px * var(--z));--ctl-h:40px;--pad:28px}.asc.density-compact{--row-h:32px;--cell-px:10px;--tbl-fs:calc(12.5px * var(--z));--ctl-h:30px;--pad:16px}.asc :lang(ar),.asc[lang=ar]{font-family:var(--font-ar)}.asc[lang=ar]{--fs-body:calc(15.5px * var(--z));--lh-body:1.75;--fs-sm:calc(14px * var(--z));--lh-sm:1.65;--fs-lead:calc(17px * var(--z));--fs-lab:calc(13px * var(--z));--fs-cap:calc(12px * var(--z));letter-spacing:0;--font-read:var(--font-ar)}.asc[lang=ar] .label-caps,.asc[lang=ar] .th{letter-spacing:0;text-transform:none}.code,.ltr,.num{unicode-bidi:-webkit-isolate;unicode-bidi:isolate;direction:ltr}.asc :focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--r-sm)}.asc .is-focus{outline:2px solid var(--focus);outline-offset:2px}.asc a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}.asc a:hover{color:var(--accent-hover)}.asc button{font:inherit;color:inherit}.asc h1,.asc h2,.asc h3,.asc h4,.asc p{margin:0}.asc p+p{margin-top:var(--para)}.reading{max-width:65ch;font-family:var(--font-read)}.t-display{font-size:var(--fs-display);line-height:1;letter-spacing:-.02em}.h1,.t-display{font-weight:600}.h1{font-size:var(--fs-h1);line-height:var(--lh-h1);letter-spacing:-.015em}.h2{font-size:var(--fs-h2);line-height:var(--lh-h2);letter-spacing:-.01em}.h2,.h3{font-weight:600}.h3{font-size:var(--fs-h3);line-height:var(--lh-h3);letter-spacing:-.005em}.lead{font-size:var(--fs-lead);line-height:var(--lh-lead)}.body{font-size:var(--fs-body);line-height:var(--lh-body)}.sm{font-size:var(--fs-sm);line-height:var(--lh-sm)}.lab{font-size:var(--fs-lab);line-height:var(--lh-lab);font-weight:500}.cap{line-height:var(--lh-cap)}.cap,.label-caps{font-size:var(--fs-cap)}.label-caps{line-height:1.3;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3)}.ink-2{color:var(--ink-2)}.ink-3{color:var(--ink-3)}.ink-accent{color:var(--accent)}.w5{font-weight:500}.w6{font-weight:600}.code,.mono{font-family:var(--font-mono);font-size:.92em;letter-spacing:0}.code{color:var(--ink-2)}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tar{text-align:end}.tac{text-align:center}.row{align-items:center}.col,.row{display:flex;gap:var(--s2)}.col{flex-direction:column}.grow{flex:1 1 auto;min-width:0}.wrap{flex-wrap:wrap}.between{justify-content:space-between}.gap-1{gap:var(--s1)}.gap-2{gap:var(--s2)}.gap-3{gap:var(--s3)}.gap-4{gap:var(--s4)}.gap-5{gap:var(--s5)}.gap-6{gap:var(--s6)}.gap-8{gap:var(--s8)}.hr{background:var(--line)}.hr,.hr-strong{height:1px;border:0;margin:0}.hr-strong{background:var(--line-strong)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.app{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100%;background:var(--ground)}.app.has-panel{grid-template-columns:240px minmax(0,1fr) 420px}.app.rail-collapsed{grid-template-columns:64px minmax(0,1fr)}.app.rail-collapsed.has-panel{grid-template-columns:64px minmax(0,1fr) 420px}.rail{background:var(--surface);-webkit-border-end:1px solid var(--line);border-inline-end:1px solid var(--line);display:flex;flex-direction:column;padding:var(--s3) var(--s2);gap:2px;min-height:100%}.rail-brand{display:flex;align-items:center;gap:10px;padding:6px 10px 14px;font-weight:600;font-size:15px;letter-spacing:-.01em}.logo{width:22px;height:22px;color:var(--accent);flex:none}.scope{display:flex;flex-direction:column;align-items:stretch;text-align:start;gap:1px;width:100%;border:1px solid var(--line);background:var(--surface);border-radius:var(--r-md);padding:8px 10px;margin-bottom:10px;cursor:pointer}.scope:hover{border-color:var(--line-strong)}.scope .label-caps{font-size:10.5px}.nav-group{padding:14px 10px 4px}.nav-item{display:flex;align-items:center;gap:10px;height:36px;padding:0 10px;border-radius:var(--r-md);color:var(--ink-2)!important;text-decoration:none!important;font-size:14px;font-weight:500;position:relative}.nav-item:hover{background:var(--sunken);color:var(--ink-1)!important}.nav-item.is-current{background:var(--accent-soft);color:var(--accent-ink)!important;font-weight:600}.nav-item .ic{width:20px;height:20px}.nav-item .count{-webkit-margin-start:auto;margin-inline-start:auto;font-size:12px;font-weight:600;color:var(--ink-3);font-family:var(--font-mono)}.nav-item.is-current .count{color:var(--accent-ink)}.rail-foot{margin-top:auto;padding:10px;border-top:1px solid var(--line)}.app.rail-collapsed .nav-group,.app.rail-collapsed .nav-item .count,.app.rail-collapsed .nav-item span,.app.rail-collapsed .rail-brand span,.app.rail-collapsed .scope{display:none}.main{display:flex;flex-direction:column;min-width:0}.topbar{height:56px;gap:var(--s3);padding:0 var(--s5);background:var(--surface);border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:5}.search,.topbar{display:flex;align-items:center}.search{flex:0 1 460px;gap:8px;height:36px;padding:0 10px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--ground);color:var(--ink-3);font-size:13.5px}.search .kbd{-webkit-margin-start:auto;margin-inline-start:auto}.term-chip{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 10px;border-radius:var(--r-md);border:1px solid var(--line);font-size:13px;color:var(--ink-2);background:var(--surface)}.term-chip b{color:var(--ink-1);font-weight:600}.icon-btn{width:36px;height:36px;display:inline-grid;place-items:center;border-radius:var(--r-md);border:1px solid transparent;background:transparent;color:var(--ink-2);cursor:pointer;position:relative}.icon-btn:hover{background:var(--sunken);color:var(--ink-1)}.icon-btn .dot{position:absolute;top:7px;inset-inline-end:7px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--critical);color:#fff;font-size:10.5px;font-weight:600;line-height:16px;text-align:center}.lang-switch{display:inline-flex;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;height:32px}.lang-switch button{border:0;background:transparent;padding:0 10px;font-size:13px;cursor:pointer;color:var(--ink-2)}.lang-switch button.is-on{background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.avatar{width:32px;height:32px;border-radius:50%;background:var(--sunken);color:var(--ink-2);display:inline-grid;place-items:center;font-size:12px;font-weight:600;border:1px solid var(--line);flex:none}.content{padding:var(--s5) var(--s6) var(--s8);display:flex;flex-direction:column;gap:var(--s5);min-width:0}.content.reading-width{max-width:1040px}.page-head{display:flex;align-items:flex-end;gap:var(--s4);justify-content:space-between}.crumbs{display:flex;align-items:center;gap:6px;font-size:12.5px;margin-bottom:6px}.crumbs,.crumbs a{color:var(--ink-3)}.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--accent);text-decoration:underline}.crumbs .sep{opacity:.6}.page-actions{display:flex;align-items:center;gap:var(--s2)}.impersonate-banner{background:var(--warning-bg);color:var(--warning);border-bottom:1px solid var(--warning);padding:6px var(--s5);font-size:13px;font-weight:500;display:flex;gap:8px;align-items:center}.panel{background:var(--surface);box-shadow:var(--shadow-panel);display:flex;flex-direction:column;min-height:100%;min-width:0;position:relative}.panel-resize{position:absolute;inset-inline-start:-3px;top:0;bottom:0;width:6px;cursor:col-resize}.panel-head{padding:var(--s4) var(--s5) 0;gap:var(--s2);border-bottom:1px solid var(--line)}.panel-body,.panel-head{display:flex;flex-direction:column}.panel-body{padding:var(--s4) var(--s5);gap:var(--s4);overflow:auto}.panel-foot{margin-top:auto;padding:var(--s3) var(--s5);border-top:1px solid var(--line);display:flex;gap:var(--s2);justify-content:flex-end}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:var(--ctl-h);padding:0 14px;border-radius:var(--r-md);border:1px solid var(--line-strong);background:var(--surface);font-size:14px;font-weight:500;cursor:pointer;text-decoration:none!important;white-space:nowrap;transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.btn,.btn:hover{color:var(--ink-1)}.btn:hover{background:var(--sunken)}.btn .ic{width:16px;height:16px}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)!important}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--on-accent)}.btn-quiet{border-color:transparent;background:transparent;color:var(--ink-2)}.btn-quiet:hover{background:var(--sunken)}.btn-danger{background:var(--critical);border-color:var(--critical);color:#fff!important}.asc.theme-dark .btn-danger{color:#1A0D0B!important}.btn-link{border:0;background:none;padding:0;height:auto;color:var(--accent);text-decoration:underline!important;text-underline-offset:2px}.btn-sm{height:30px;padding:0 10px;font-size:13px}.btn-lg{height:52px;padding:0 24px;font-size:17px;border-radius:var(--r-lg)}.btn.is-disabled,.btn[disabled]{opacity:.45;cursor:not-allowed}.btn.is-loading{color:transparent!important;position:relative}.btn.is-loading:after{content:"";position:absolute;width:14px;height:14px;border:2px solid;border-color:var(--on-accent) transparent var(--on-accent) var(--on-accent);border-radius:50%;animation:asc-spin .8s linear infinite}@keyframes asc-spin{to{transform:rotate(1turn)}}.btn-group{display:inline-flex}.btn-group .btn{border-radius:0;-webkit-margin-start:-1px;margin-inline-start:-1px}.btn-group .btn:first-child{border-start-start-radius:var(--r-md);border-end-start-radius:var(--r-md);-webkit-margin-start:0;margin-inline-start:0}.btn-group .btn:last-child{border-start-end-radius:var(--r-md);border-end-end-radius:var(--r-md)}.btn-group .btn.is-on{background:var(--accent-soft);color:var(--accent-ink);border-color:var(--accent);z-index:1;font-weight:600}.kbd{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border:solid var(--line);border-width:1px 1px 2px;border-radius:4px;font-family:var(--font-mono);font-size:11px;color:var(--ink-2);background:var(--surface)}.field{display:flex;flex-direction:column;gap:6px}.field-label,.field>label{font-size:13px;font-weight:500;color:var(--ink-1)}.field .hint{font-size:12.5px;color:var(--ink-3)}.field .err{font-size:12.5px;color:var(--critical);display:flex;gap:6px;align-items:flex-start}.input{height:var(--ctl-h);border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--ink-1);padding:0 10px;font:inherit;font-size:14px;width:100%}.input:hover{border-color:var(--ink-3)}.input.is-focus,.input:focus{outline:2px solid var(--focus);outline-offset:0;border-color:var(--focus)}.input.is-error{border-color:var(--critical);box-shadow:inset 0 0 0 1px var(--critical)}.input[disabled]{background:var(--sunken);color:var(--ink-3)}.input-lg{height:52px;font-size:17px;padding:0 14px;border-radius:var(--r-lg)}textarea.input{height:auto;padding:10px;line-height:1.55;resize:vertical}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-2) 50%),linear-gradient(135deg,var(--ink-2) 50%,transparent 50%);background-position:calc(100% - 15px) 50%,calc(100% - 10px) 50%;background-size:5px 5px;background-repeat:no-repeat;-webkit-padding-end:28px;padding-inline-end:28px}[dir=rtl] .select{background-position:15px 50%,10px 50%}.check{display:inline-flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}.check input{width:16px;height:16px;accent-color:var(--accent);margin:0}.switch{position:relative;display:inline-flex;width:36px;height:20px;border-radius:10px;background:var(--line-strong);border:0;cursor:pointer;flex:none;transition:background var(--t-fast) var(--ease);padding:0}.switch:after{content:"";position:absolute;top:2px;inset-inline-start:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:inset-inline-start var(--t-fast) var(--ease)}.switch.is-on{background:var(--accent)}.switch.is-on:after{inset-inline-start:18px;background:var(--on-accent)}.seg{display:inline-flex;padding:2px;border-radius:var(--r-md);background:var(--sunken);gap:2px}.seg button{border:0;background:transparent;border-radius:4px;height:28px;padding:0 10px;font-size:13px;color:var(--ink-2);cursor:pointer}.seg button.is-on{color:var(--ink-1);font-weight:600;box-shadow:0 0 0 1px var(--line)}.chip,.seg button.is-on{background:var(--surface)}.chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:var(--r-pill);border:1px solid var(--line-strong);font-size:13px;color:var(--ink-2);cursor:pointer;white-space:nowrap}.chip:hover{border-color:var(--ink-3);color:var(--ink-1)}.chip.is-on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.chip .x{opacity:.7}.tabs{display:flex;gap:var(--s4);border-bottom:1px solid var(--line)}.tab{border:0;background:none;padding:10px 2px;font-size:14px;color:var(--ink-2);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;font-weight:500;text-decoration:none!important}.tab.is-on,.tab:hover{color:var(--ink-1)}.tab.is-on{border-bottom-color:var(--accent);font-weight:600}.tab .count{font-family:var(--font-mono);font-size:12px;color:var(--ink-3);-webkit-margin-start:4px;margin-inline-start:4px}.tag{display:inline-flex;align-items:center;height:22px;padding:0 7px;border-radius:var(--r-sm);background:var(--sunken);color:var(--ink-2);font-size:12px;font-weight:500;white-space:nowrap}.tag.mono{font-family:var(--font-mono);font-size:11.5px}.node{display:inline-flex;align-items:baseline;gap:6px}.node .code{font-size:12px;color:var(--ink-3)}.pill{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px 0 6px;border-radius:var(--r-pill);font-size:12px;font-weight:600;white-space:nowrap;border:1px solid transparent;line-height:1}.pill.compact{height:20px;padding:0 5px;gap:0}.pill.compact .pill-text{display:none}.pill .ev{font-family:var(--font-mono);font-weight:500;font-size:11px;opacity:.85;-webkit-margin-start:2px;margin-inline-start:2px}.hb{width:11px;height:11px;border-radius:50%;border:1.5px solid;flex:none;display:inline-block}.hb-4{background:currentColor}.hb-3{background:conic-gradient(currentColor 0 75%,transparent 75% 100%)}.hb-2{background:conic-gradient(currentColor 0 50%,transparent 50% 100%)}.hb-1{background:conic-gradient(currentColor 0 25%,transparent 25% 100%)}.hb-0{border-style:dashed}.hb-na{border:0;border-radius:0;height:1.5px;background:currentColor;width:10px}.st-mastered{color:var(--st-mastered);background-color:var(--st-mastered-bg)}.st-proficient{color:var(--st-proficient);background-color:var(--st-proficient-bg)}.st-developing{color:var(--st-developing);background-color:var(--st-developing-bg)}.st-emerging{color:var(--st-emerging);background-color:var(--st-emerging-bg)}.st-none{color:var(--st-none);background-color:var(--st-none-bg)}.pill.st-none{border:1px dashed var(--line-strong)}.sq{background:currentColor}.sq,.sq-o{width:8px;height:8px;border-radius:2px;flex:none}.sq-o{border:1.5px solid}.sq-tri{width:0;height:0;-webkit-border-start:5px solid transparent;border-inline-start:5px solid transparent;-webkit-border-end:5px solid transparent;border-inline-end:5px solid transparent;border-bottom:8px solid;flex:none}.ok{color:var(--good);background-color:var(--good-bg)}.warn{color:var(--warning);background-color:var(--warning-bg)}.crit{color:var(--critical);background-color:var(--critical-bg)}.info{color:var(--info);background-color:var(--info-bg)}.neutral{color:var(--ink-2);background-color:var(--sunken)}.pill.outline{background:transparent;border-color:currentColor}.tier{align-items:center;gap:4px;height:22px;padding:0 7px;border-radius:var(--r-sm);font-size:12px;font-weight:600;border:1px solid var(--line-strong);color:var(--ink-1);background:var(--surface)}.tier,.tier .bars{display:inline-flex}.tier .bars{gap:1.5px;align-items:flex-end}.tier .bars i{width:3px;background:var(--line-strong);display:block}.tier .bars i:first-child{height:5px}.tier .bars i:nth-child(2){height:8px}.tier .bars i:nth-child(3){height:11px}.tier.t1 .bars i:first-child,.tier.t2 .bars i:nth-child(-n+2),.tier.t3 .bars i{background:currentColor}.tier.t3{color:var(--st-emerging)}.tier.t2,.tier.t3{border-color:currentColor}.tier.t2{color:var(--st-developing)}.prov{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--warning);border:1px dashed var(--warning);border-radius:3px;padding:1px 4px;white-space:nowrap}.practice-label{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--ink-2);border:1px dashed var(--line-strong);padding:2px 8px;border-radius:var(--r-pill)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg)}.card-pad{padding:var(--pad)}.section{flex-direction:column}.section,.section-head{display:flex;gap:var(--s3)}.section-head{align-items:baseline;justify-content:space-between}.sheet{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.sheet>.sheet-row{padding:var(--s3) var(--s4);border-top:1px solid var(--line)}.sheet>.sheet-row:first-child{border-top:0}.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.tile{padding:var(--s4) var(--s5);display:flex;flex-direction:column;gap:6px;-webkit-border-start:1px solid var(--line);border-inline-start:1px solid var(--line);min-width:0}.tile:first-child{-webkit-border-start:0;border-inline-start:0}.tile .big{font-size:28px}.stat-num,.tile .big{font-weight:600;line-height:1.1;letter-spacing:-.01em}.stat-num{font-size:26px}.queue-link{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px var(--s4);border-top:1px solid var(--line);color:var(--ink-1)!important;text-decoration:none!important;font-size:14px}.queue-link:hover{background:var(--sunken)}.queue-link .n{font-family:var(--font-mono);font-weight:600}.callout{display:flex;gap:10px;align-items:flex-start;padding:10px 14px;border-radius:var(--r-md);font-size:13.5px;border:1px solid}.callout>div{color:var(--ink-1)}.empty{border:1px dashed var(--line-strong);border-radius:var(--r-lg);padding:var(--s6);display:flex;flex-direction:column;gap:var(--s3);align-items:flex-start;color:var(--ink-2)}.tbl-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.tbl{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--tbl-fs)}.tbl th{position:-webkit-sticky;position:sticky;top:0;z-index:1;background:var(--surface);text-align:start;font-size:11.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);height:36px;padding:0 var(--cell-px);border-bottom:1px solid var(--line-strong);white-space:nowrap}.tbl th.sorted{color:var(--ink-1)}.tbl td{height:var(--row-h);padding:0 var(--cell-px);border-bottom:1px solid var(--line);vertical-align:middle}.tbl tr:last-child td{border-bottom:0}.tbl tbody tr:hover td{background:var(--ground)}.tbl tr.is-open td,.tbl tr.is-selected td{background:var(--accent-soft)}.tbl tr.is-open td{box-shadow:inset 0 -1px 0 var(--accent)}.tbl .n,.tbl th.n{text-align:end;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-family:var(--font-mono);font-size:.95em}.tbl .chk{width:36px}.tbl td.muted{color:var(--ink-3)}.tbl .clip{max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);padding:var(--s3) var(--s4);border-bottom:1px solid var(--line);background:var(--surface)}.bulk-bar{gap:var(--s3);background:var(--accent-soft);color:var(--accent-ink);border-bottom:1px solid var(--accent);font-size:13.5px;font-weight:500}.bulk-bar,.tbl-foot{display:flex;align-items:center;padding:8px var(--s4)}.tbl-foot{justify-content:space-between;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-3)}.sk{background:linear-gradient(90deg,var(--sunken) 0,var(--ground) 50%,var(--sunken) 100%);background-size:200% 100%;border-radius:4px;animation:asc-sk 1.4s ease-in-out infinite;display:block}@keyframes asc-sk{0%{background-position:100% 0}to{background-position:-100% 0}}.swr{display:flex;flex-direction:column;gap:6px}.swr-track{position:relative;height:28px}.swr-bands{position:absolute;inset-inline:0;top:9px;height:10px;display:flex;border-radius:2px;overflow:hidden}.swr-bands>span{display:block;height:100%}.swr-bands .b1{background:var(--band-1)}.swr-bands .b2{background:var(--band-2)}.swr-bands .b3{background:var(--band-3)}.swr-bands .b4{background:var(--band-4)}.swr-cut{position:absolute;top:0;bottom:0;width:0;-webkit-border-start:1.5px dashed var(--ink-2);border-inline-start:1.5px dashed var(--ink-2)}.swr-cut.agreed{border-inline-start-style:solid}.swr-range{position:absolute;top:13px;height:2px;background:var(--whisker)}.swr-range:after,.swr-range:before{content:"";position:absolute;top:-5px;width:2px;height:12px;background:var(--whisker)}.swr-range:before{inset-inline-start:-1px}.swr-range:after{inset-inline-end:-1px}.swr-est{top:7px;width:14px;height:14px;-webkit-margin-start:-7px;margin-inline-start:-7px;background:var(--you);box-shadow:0 0 0 2px var(--surface)}.swr-est,.swr-prev{position:absolute;border-radius:50%}.swr-prev{top:8px;width:12px;height:12px;-webkit-margin-start:-6px;margin-inline-start:-6px;border:2px solid var(--ink-2);background:var(--surface)}.swr-axis{position:relative;height:16px;font-size:11px;color:var(--ink-3);font-family:var(--font-mono)}.swr-axis>span{position:absolute;transform:translateX(-50%)}[dir=rtl] .swr-axis>span{transform:translateX(50%)}.swr-levels{position:relative;height:16px;font-size:11px;color:var(--ink-3)}.swr-cutlabel,.swr-levels>span{position:absolute;white-space:nowrap}.swr-cutlabel{top:-18px;font-size:11px;color:var(--ink-2);transform:translateX(-50%)}[dir=rtl] .swr-cutlabel{transform:translateX(50%)}.score-num{font-size:var(--fs-display);font-weight:600;letter-spacing:-.02em;line-height:1;font-family:var(--font-sans)}.score-range-text{font-size:var(--fs-sm);color:var(--ink-2)}.swr-inline{display:flex;align-items:center;gap:10px;min-width:0}.swr-inline .v{font-family:var(--font-mono);font-weight:600;width:3ch;text-align:end}.swr-inline .swr-track{flex:1 1;height:16px;min-width:120px}.swr-inline .swr-bands{top:5px;height:6px}.swr-inline .swr-range{top:7px;height:1.5px}.swr-inline .swr-range:after,.swr-inline .swr-range:before{top:-3px;height:7px;width:1.5px}.swr-inline .swr-est{top:3px;width:10px;height:10px;-webkit-margin-start:-5px;margin-inline-start:-5px}.swr-inline .swr-prev{top:3px;width:9px;height:9px;-webkit-margin-start:-4.5px;margin-inline-start:-4.5px;border-width:1.5px}.qmap{display:grid;grid-template-columns:260px minmax(0,1fr);grid-column-gap:var(--s4);column-gap:var(--s4)}.qmap-row{display:contents}.qmap-name{padding:8px 0;font-size:13.5px;display:flex;flex-direction:column;gap:1px;justify-content:center}.qmap-lane,.qmap-name{border-top:1px solid var(--line)}.qmap-lane{position:relative;min-height:40px}.qmap-shade{position:absolute;top:0;bottom:0;background:var(--accent-soft)}.qmap-q{position:absolute;top:50%;width:14px;height:14px;margin-top:-7px;-webkit-margin-start:-7px;margin-inline-start:-7px;border-radius:50%;border:2px solid var(--ink-1);background:var(--ink-1);cursor:pointer;padding:0}.qmap-q.wrong{background:var(--surface);border-color:var(--wrong);border-width:2px}.qmap-q.wrong:after{content:"";position:absolute;inset:3px;border-radius:50%}.qmap-q.is-focus,.qmap-q:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.qmap-tip{position:absolute;z-index:3;bottom:calc(100% + 6px);transform:translateX(-50%);width:260px;background:var(--raised);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--shadow-pop);padding:10px 12px;font-size:12.5px}[dir=rtl] .qmap-tip{transform:translateX(50%)}.skr{display:grid;grid-template-columns:280px minmax(0,1fr) 150px;grid-column-gap:var(--s4);column-gap:var(--s4)}.skr,.skr>div{align-items:center}.skr>div{border-top:1px solid var(--line);padding:10px 0;min-height:44px;display:flex}.skr .lane{position:relative;display:block}.skr .lane .rule{position:absolute;top:0;bottom:0;-webkit-border-start:1px dashed var(--line-strong);border-inline-start:1px dashed var(--line-strong)}.skr .lane .rng{position:absolute;top:50%;height:2px;margin-top:-1px;background:var(--whisker)}.skr .lane .rng:after,.skr .lane .rng:before{content:"";position:absolute;top:-4px;width:2px;height:10px;background:var(--whisker)}.skr .lane .rng:before{inset-inline-start:0}.skr .lane .rng:after{inset-inline-end:0}.skr .lane .pt{position:absolute;top:50%;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--ink-1)}[dir=rtl] .skr .lane .pt{margin:-5px -5px 0 0}.hm{display:grid;grid-gap:2px;gap:2px}.hm-cell{min-height:36px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:12px;font-weight:600;border-radius:3px;position:relative}.hm-cell.seq-0{background:var(--seq-0);color:var(--ink-2)}.hm-cell.seq-1{background:var(--seq-1);color:#16202C}.hm-cell.seq-2{background:var(--seq-2);color:#16202C}.hm-cell.seq-3{background:var(--seq-3);color:#0F1A28}.hm-cell.seq-4{background:var(--seq-4);color:#fff}.hm-cell.seq-5{background:var(--seq-5);color:#fff}.asc.theme-dark .hm-cell.seq-1,.asc.theme-dark .hm-cell.seq-2{color:#E7EBF0}.asc.theme-dark .hm-cell.seq-3,.asc.theme-dark .hm-cell.seq-4,.asc.theme-dark .hm-cell.seq-5{color:#0F1A28}.hm-cell.suppressed{background:repeating-linear-gradient(135deg,var(--sunken) 0 4px,var(--ground) 4px 8px);color:var(--ink-3);font-weight:500;font-family:var(--font-sans);font-size:11px}.stackbar{display:flex;height:10px;border-radius:2px;overflow:hidden;gap:1px;background:var(--surface)}.stackbar>span{display:block;height:100%}.sb-m{background:var(--st-mastered)}.sb-p{background:var(--st-proficient)}.sb-d{background:var(--st-developing)}.sb-e{background:var(--st-emerging)}.sb-n{background:var(--line-strong)}.chart{overflow:visible;display:block}.chart .axis{stroke:var(--line-strong);stroke-width:1;fill:none}.chart .grid{stroke:var(--line);stroke-width:1;fill:none}.chart .dotted{stroke:var(--ink-2);stroke-width:1.25;stroke-dasharray:2 3;fill:none}.chart .dashed{stroke:var(--ink-2);stroke-width:1.25;stroke-dasharray:5 4;fill:none}.chart .series{stroke:var(--accent);stroke-width:2;fill:none;stroke-linejoin:round;stroke-linecap:round}.chart .series-2{stroke:var(--cat-2);stroke-width:2;fill:none}.chart .whisk{stroke:var(--whisker);stroke-width:1.5;fill:none}.chart .pt{fill:var(--accent);stroke:var(--surface);stroke-width:2}.chart .pt-hollow{fill:var(--surface);stroke:var(--ink-2);stroke-width:2}.chart .shade{fill:var(--accent-soft)}.chart .shade-int{fill:var(--sunken)}.chart .band{fill:var(--band-1)}.chart .band2{fill:var(--band-2)}.chart .tx,.chart text{fill:var(--ink-3);font-size:11px;font-family:var(--font-sans)}.chart .tx-mono{fill:var(--ink-3);font-size:11px;font-family:var(--font-mono)}.chart .tx-ink{fill:var(--ink-1);font-size:12px;font-weight:600}.chart .tx-end{text-anchor:end}.chart .tx-mid{text-anchor:middle}.chart .c1{fill:var(--cat-1)}.chart .c2{fill:var(--cat-2)}.chart .c3{fill:var(--cat-3)}.chart .s1{stroke:var(--cat-1)}.chart .s2{stroke:var(--cat-2)}.chart .bar{fill:var(--accent)}.chart .bar-muted{fill:var(--line-strong)}.mirror-x{transform:scaleX(-1)}.sparkline{stroke:var(--accent);stroke-width:1.5;fill:none}.ic{width:16px;height:16px;stroke:currentColor;stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:none;display:inline-block;vertical-align:middle}.ic-20{width:20px;height:20px}.ic-24{width:24px;height:24px}.ic-32{width:32px;height:32px}.ic .fill{fill:currentColor;stroke:none}[dir=rtl] .ic.flip{transform:scaleX(-1)}.scrim{position:absolute;inset:0;background:var(--overlay);display:grid;place-items:center;z-index:20}.modal{width:480px;max-width:calc(100% - 32px);background:var(--raised);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);border:1px solid var(--line)}.modal,.modal-body{display:flex;flex-direction:column}.modal-body{padding:var(--s5);gap:var(--s3)}.modal-foot{padding:var(--s3) var(--s5);display:flex;justify-content:flex-end;gap:var(--s2);border-top:1px solid var(--line)}.popover{background:var(--raised);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-pop)}.stepper{display:flex;flex-direction:column;gap:2px}.step{display:grid;grid-template-columns:24px 1fr;grid-gap:10px;gap:10px;align-items:start;padding:8px 10px;border-radius:var(--r-md);text-align:start;border:0;background:none;cursor:pointer;color:var(--ink-2);width:100%}.step:hover{background:var(--sunken)}.step .no{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--line-strong);display:grid;place-items:center;font-size:12px;font-weight:600;font-family:var(--font-mono)}.step.is-on{background:var(--accent-soft);color:var(--accent-ink)}.step.is-on .no{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.step.is-done .no{border-color:var(--accent);color:var(--accent)}.step .t{font-size:14px;font-weight:600;color:inherit}.step .d{font-size:12.5px;color:var(--ink-3)}.capsum{display:flex;flex-direction:column}.capsum>div{display:grid;grid-template-columns:20px 1fr;grid-gap:10px;gap:10px;padding:8px 0;border-top:1px solid var(--line);font-size:13.5px}.capsum>div:first-child{border-top:0}.capsum .yes{color:var(--good)}.capsum .warn-i{color:var(--warning)}.stu{background:var(--ground);color:var(--ink-1);min-height:100%;display:flex;flex-direction:column;font-family:var(--font-sans)}.stu-top{height:64px;display:flex;align-items:center;gap:var(--s3);padding:0 var(--s5);background:var(--surface);border-bottom:1px solid var(--line)}.stu-body{padding:var(--s5);display:flex;flex-direction:column;gap:var(--s5)}.stu .btn{height:48px;padding:0 20px;font-size:16px;border-radius:var(--r-lg)}.stu .icon-btn{width:48px;height:48px}.player{display:grid;grid-template-rows:auto auto 1fr auto;height:100%;background:var(--ground);font-family:var(--font-sans)}.player-top{display:flex;align-items:center;gap:var(--s3);padding:10px var(--s5);background:var(--surface);border-bottom:1px solid var(--line);min-height:64px}.player-title{display:flex;flex-direction:column;gap:0;min-width:0}.player-title .t{font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-title .s{font-size:13px;color:var(--ink-3)}.counter{font-size:15px;padding:0 10px}.clock,.counter{font-family:var(--font-mono);font-weight:600}.clock{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 12px;border-radius:var(--r-md);border:1px solid var(--line);font-size:16px;background:var(--surface)}.clock .x{font-family:var(--font-sans);font-size:11.5px;font-weight:600;color:var(--accent-ink);background:var(--accent-soft);padding:2px 6px;border-radius:3px}.clock.warn5{border-color:var(--warning);color:var(--warning)}.acc-strip{display:flex;align-items:center;gap:var(--s4);padding:6px var(--s5);background:var(--surface);border-bottom:1px solid var(--line);font-size:13px;color:var(--ink-2);flex-wrap:wrap}.acc-strip .it,.acc-strip .lock{display:inline-flex;align-items:center;gap:6px}.acc-strip .lock{color:var(--ink-3);-webkit-margin-start:auto;margin-inline-start:auto;font-size:12px}.q-area{padding:var(--s6) var(--s7);display:grid;grid-gap:var(--s6);gap:var(--s6);align-content:start;overflow:auto}.q-area.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.q-stem{font-family:var(--font-read);font-size:calc(20px * var(--z));line-height:1.55;max-width:60ch}.asc.a11y-spacing .q-stem{line-height:2;letter-spacing:.02em;word-spacing:.1em}.q-instr{font-size:var(--fs-sm);color:var(--ink-2)}.opts{display:flex;flex-direction:column;max-width:640px}.opt,.opts{gap:var(--s3)}.opt{display:grid;grid-template-columns:40px 1fr auto;align-items:center;grid-gap:var(--s3);min-height:64px;padding:10px var(--s4);border:1.5px solid var(--line-strong);border-radius:var(--r-lg);background:var(--surface);text-align:start;cursor:pointer;font-family:var(--font-read);font-size:calc(18px * var(--z));width:100%;transition:border-color var(--t-fast) var(--ease),background var(--t-fast) var(--ease)}.opt:hover{border-color:var(--ink-2)}.opt .key{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--line-strong);display:grid;place-items:center;font-family:var(--font-mono);font-size:14px;font-weight:600;color:var(--ink-2)}.opt.is-selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.opt.is-selected .key{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.opt.is-correct{border-color:var(--good);background:var(--good-bg)}.opt.is-wrong{border-color:var(--critical);background:var(--critical-bg)}.opt .sq-key{border-radius:6px}.frac{display:inline-flex;flex-direction:column;align-items:center;vertical-align:middle;font-family:var(--font-mono);line-height:1.05;font-size:.9em;margin:0 2px}.frac>span:first-child{border-bottom:1.5px solid;padding:0 3px}.player-foot{display:flex;align-items:center;gap:var(--s3);padding:12px var(--s5);background:var(--surface);border-top:1px solid var(--line)}.palette{display:flex;gap:6px;flex-wrap:wrap}.pq{width:44px;height:44px;border-radius:var(--r-md);border:1.5px solid var(--line-strong);background:var(--surface);font-family:var(--font-mono);font-size:14px;font-weight:600;display:grid;place-items:center;cursor:pointer;position:relative;color:var(--ink-2);padding:0}.pq.answered{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink)}.pq.current{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--ink-1);color:var(--ink-1)}.pq.flagged:after{content:"";position:absolute;top:-1px;inset-inline-end:-1px;border-top:12px solid var(--warning);-webkit-border-start:12px solid transparent;border-inline-start:12px solid transparent;border-start-end-radius:var(--r-md)}.pq.skipped{border-style:dashed}.dock{display:flex;gap:6px}.dock .tool{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:64px;height:52px;border-radius:var(--r-md);border:1px solid transparent;background:transparent;font-size:11.5px;color:var(--ink-2);cursor:pointer}.dock .tool:hover{background:var(--sunken)}.dock .tool.is-on{background:var(--accent-soft);color:var(--accent-ink);border-color:var(--accent)}.float-panel{position:absolute;z-index:10;background:var(--raised);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-pop)}.float-head{display:flex;align-items:center;justify-content:space-between;padding:8px 8px 8px 14px;border-bottom:1px solid var(--line);font-size:13px;font-weight:600;cursor:move}.keypad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:6px;gap:6px;padding:10px}.keypad button{height:52px;border-radius:var(--r-md);border:1px solid var(--line-strong);background:var(--surface);font-family:var(--font-mono);font-size:18px;cursor:pointer}.keypad button.op{background:var(--sunken)}.keypad button.eq{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.saved{color:var(--ink-3)}.offline,.saved{display:inline-flex;align-items:center;gap:6px;font-size:12.5px}.offline{color:var(--warning);font-weight:500}.hl{background:#FFE58A;color:#16202C;border-radius:2px;padding:0 1px}.asc.theme-dark .hl{background:#6B5A12;color:#FFF6D0}.read-on{background:var(--accent-soft);box-shadow:0 2px 0 var(--accent);border-radius:2px}.play-el{width:32px;height:32px;border-radius:50%;border:1px solid var(--line-strong);background:var(--surface);display:inline-grid;place-items:center;cursor:pointer;color:var(--accent);flex:none;padding:0}.device{border-radius:0;overflow:hidden;position:relative}.board{padding:48px 56px;gap:32px}.board,.board-title{display:flex;flex-direction:column}.board-title{gap:6px;border-bottom:1px solid var(--line-strong);padding-bottom:16px}.spec-grid{display:grid;grid-gap:16px;gap:16px}.swatch{border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;background:var(--surface);font-size:12px}.swatch .chip-c{height:56px;display:flex;align-items:flex-end;padding:6px 8px;font-family:var(--font-mono);font-size:11px}.swatch .meta{padding:8px;display:flex;flex-direction:column;gap:2px}.ratio,.state-label{font-family:var(--font-mono);font-size:11px}.state-label{color:var(--ink-3)}body,html{height:100%;margin:0}#__next,.root,body.asc{min-height:100%}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--s5)}.grid-2,.grid-3{display:grid;gap:var(--s5)}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--s5)}.grid-aside{grid-template-columns:minmax(0,1fr) 320px;grid-gap:var(--s5);gap:var(--s5)}.grid-aside,.wizard{display:grid;align-items:start}.wizard{grid-template-columns:260px minmax(0,1fr);grid-gap:var(--s6);gap:var(--s6)}.stack{display:flex;flex-direction:column;gap:var(--s4)}.mt-0{margin-top:0}.mt-2{margin-top:var(--s2)}.mt-4{margin-top:var(--s4)}.w-full{width:100%}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--s4);gap:var(--s4)}.form-grid .span-2{grid-column:1/-1}.tbl-scroll{overflow-x:auto}.tbl tbody tr.clickable{cursor:pointer}.link-quiet{color:inherit!important;text-decoration:none!important}.link-quiet:hover{color:var(--accent)!important}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pre-wrap{white-space:pre-wrap}.scrim.fixed{position:fixed;align-items:start;padding-top:12vh;z-index:35}.drawer-scrim{position:fixed;inset:0;background:var(--overlay);z-index:30}.side-panel-fixed{position:fixed;top:0;bottom:0;inset-inline-end:0;width:420px;max-width:100vw;z-index:25;overflow:auto}.menu{position:absolute;z-index:15;min-width:220px;padding:4px}.menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 14px;font-size:13.5px;border:0;background:none;text-align:start;border-radius:var(--r-md);cursor:pointer;color:var(--ink-1);text-decoration:none!important}.menu-item:hover{background:var(--sunken)}.toast-wrap{position:fixed;inset-block-end:var(--s5);inset-inline-end:var(--s5);z-index:50;display:flex;flex-direction:column;gap:var(--s2)}.toast{min-width:280px;max-width:420px;padding:10px 14px;border-radius:var(--r-md);background:var(--raised);border:1px solid var(--line-strong);box-shadow:var(--shadow-pop);font-size:13.5px;display:flex;gap:10px;align-items:flex-start}.toast.crit{border-color:var(--critical)}.toast.ok{border-color:var(--good)}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:var(--s5);background:var(--ground)}.auth-card{width:420px;max-width:100%}.rail-close,.rail-toggle{display:none}.thread{display:grid;grid-template-columns:320px minmax(0,1fr);min-height:560px}.thread-list{-webkit-border-end:1px solid var(--line);border-inline-end:1px solid var(--line);overflow:auto}.thread-item{display:flex;flex-direction:column;gap:2px;padding:10px var(--s4);border-bottom:1px solid var(--line);cursor:pointer;text-align:start;background:none;border-inline:0;border-top:0;width:100%}.thread-item:hover{background:var(--sunken)}.thread-item.is-on{background:var(--accent-soft)}.bubble{max-width:70%;padding:8px 12px;border-radius:var(--r-lg);background:var(--sunken);font-size:14px}.bubble.mine{-webkit-margin-start:auto;margin-inline-start:auto;background:var(--accent-soft);color:var(--accent-ink)}.paper{background:#fff;color:#000;width:210mm;min-height:297mm;padding:16mm;margin:0 auto;font-family:var(--font-sans)}.omr-bubble{display:inline-grid;place-items:center;width:18px;height:18px;border:1.2px solid #000;border-radius:50%;font-size:9px;font-family:var(--font-mono);-webkit-margin-end:6px;margin-inline-end:6px}@media print{.no-print,.page-head .page-actions,.rail,.topbar{display:none!important}.app{display:block}.content,.paper{padding:0}.paper{width:auto;min-height:0;page-break-after:always}body.asc{background:#fff}}@media (max-width:1100px){.app.has-panel{grid-template-columns:240px minmax(0,1fr)}.app.has-panel>.panel{position:fixed;top:0;bottom:0;inset-inline-end:0;width:420px;max-width:100vw;z-index:25}.grid-aside{grid-template-columns:minmax(0,1fr)}.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.tiles .tile:nth-child(3){-webkit-border-start:0;border-inline-start:0}.tiles .tile:nth-child(n+3){border-top:1px solid var(--line)}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.app,.app.has-panel,.app.rail-collapsed{grid-template-columns:minmax(0,1fr)}.app>.rail{position:fixed;top:0;bottom:0;inset-inline-start:0;width:280px;z-index:40;transform:translateX(-100%);transition:transform var(--t-panel) var(--ease);overflow:auto}[dir=rtl] .app>.rail{transform:translateX(100%)}.app.rail-open>.rail{transform:none}.rail-close,.rail-toggle{display:inline-grid}.topbar{padding:0 var(--s3);gap:var(--s2)}.topbar .search,.topbar .term-chip{display:none}.content{padding:var(--s4) var(--s4) var(--s8)}.page-head{flex-direction:column;align-items:flex-start}.wizard{grid-template-columns:minmax(0,1fr)}.wizard .stepper{flex-direction:row;overflow-x:auto}.wizard .step{min-width:180px}.thread{grid-template-columns:minmax(0,1fr)}.qmap{grid-template-columns:140px minmax(0,1fr)}.skr{grid-template-columns:140px minmax(0,1fr) 110px}.q-area{padding:var(--s5) var(--s4)}.q-area.split{grid-template-columns:minmax(0,1fr)}.player-foot{flex-wrap:wrap}}@media (max-width:640px){.form-grid,.grid-2,.grid-3,.tiles{grid-template-columns:minmax(0,1fr)}.tiles .tile{-webkit-border-start:0!important;border-inline-start:0!important;border-top:1px solid var(--line)}.tiles .tile:first-child{border-top:0}.h1{font-size:calc(26px * var(--z))}.tbl-wrap{overflow-x:auto}.tbl{min-width:560px}.stu-body{padding:var(--s4)}.opt{min-height:56px;font-size:calc(16px * var(--z))}.q-stem{font-size:calc(18px * var(--z))}.palette .pq{width:40px;height:40px}.dock .tool{width:52px}.modal{max-width:calc(100% - 16px)}.app.has-panel>.panel,.side-panel-fixed{width:100vw}}