@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@400;500;600;700;800&family=Merriweather:wght@400;500;600;700;800&family=DM+Sans:wght@500;600;700;800&family=IBM+Plex+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&family=Noto+Sans+Tamil:wght@500;600;700&family=Noto+Serif+Tamil:wght@500;600;700&family=Catamaran:wght@500;600;700&family=Hind+Madurai:wght@500;600;700&family=Mukta+Malar:wght@500;600;700&family=Pavanam&family=Meera+Inimai&family=Kavivanar&family=Tiro+Tamil&family=Anek+Tamil:wght@500;600;700&display=swap");@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+Devanagari:wght@500;600;700&family=Noto+Serif+Devanagari:wght@500;600;700&family=Mukta:wght@500;600;700&family=Hind:wght@500;600;700&family=Tiro+Devanagari+Hindi&family=Kalam:wght@400;700&family=Martel:wght@400;600;700&family=Rajdhani:wght@500;600;700&family=Yatra+One&family=Anek+Devanagari:wght@500;600;700&display=swap");:root{--cream:#f6f0dc;--ink:#16362f;--muted:#4d6358;--coral:#e16b4a;--gold:#f0c14b;--teal:#2f9d8a;--paper:#fff9ea;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px)}*{box-sizing:border-box}body,html{margin:0;min-height:100%;overflow-x:clip}body{background:#080d0c;color:#eef4f1;font-family:DM Sans,Arial,sans-serif}html[data-theme-mode=light] body{background:#d8e2de;color:#13231f}html[data-theme=dune] body{background:#12100c}html[data-theme=cobalt] body{background:#070b16}html[data-theme=wine] body{background:#14080e}html[data-theme=lagoon] body{background:#061416}html[data-theme=midnight] body{background:#0b1020}html[data-theme=plum] body{background:#140e18}html[data-theme=ember] body{background:#140e0c}button,input,select{font:inherit}button{cursor:pointer;color:inherit;touch-action:manipulation}button:disabled{cursor:default}a{color:inherit}svg{width:24px;height:24px;flex-shrink:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--coral);outline-offset:4px}.skip{position:absolute;top:-120px;z-index:40;background:#0f2a25;color:#fff;padding:12px 16px;border-radius:10px}.skip:focus{top:8px;left:8px}.student{--bg:#080d0c;--glow-1:rgba(43,181,156,0.2);--glow-2:rgba(242,193,78,0.1);--surface:#182220;--surface-2:#1d2a27;--surface-3:#263632;--line:#2d403b;--line-2:#3d544e;--text:#eef4f1;--text-2:#b3c3bc;--text-3:#7e928b;--accent:#2bb59c;--accent-fg:#6fd6bd;--accent-soft:rgba(43,181,156,0.14);--btn-bg:#1a8f7c;--btn-hover:#1fa28c;--btn-glow:rgba(43,181,156,0.55);--coral:#f07a5a;--coral-soft:rgba(240,122,90,0.14);--gold:#f2c14e;--gold-soft:rgba(242,193,78,0.13);--violet:#a193ff;--violet-soft:rgba(161,147,255,0.15);--ok:#3ccf91;--ok-soft:rgba(60,207,145,0.14);--bad:#f0735a;--bad-soft:rgba(240,115,90,0.14);--shadow:0 1px 2px rgba(0,0,0,0.35),0 16px 36px -14px rgba(0,0,0,0.55);--radius:18px;--gloss:color-mix(in srgb,#fff 11%,transparent);--sheen:color-mix(in srgb,#fff 22%,transparent);--emboss:inset 0 1px 0 color-mix(in srgb,#fff 14%,transparent),inset 0 -1px 0 color-mix(in srgb,#000 22%,transparent);--chip-shine:inset 0 1px 0 color-mix(in srgb,#fff 28%,transparent),inset 0 -1px 0 color-mix(in srgb,#000 16%,transparent);--grain:color-mix(in srgb,#fff 4.5%,transparent);color-scheme:dark;min-height:100dvh;position:relative;isolation:isolate;background:radial-gradient(900px 520px at 8% -8%,var(--glow-1),transparent 62%),radial-gradient(740px 460px at 96% 4%,var(--glow-2),transparent 58%),radial-gradient(520px 320px at 50% 110%,var(--glow-1),transparent 70%),var(--bg);background-size:140% 120%,130% 120%,160% 100%,auto;animation:mesh-drift 22s ease-in-out infinite;color:var(--text);font-family:DM Sans,Arial,sans-serif;--ta-font:"Noto Sans Tamil",sans-serif;--hi-font:"Noto Sans Devanagari",sans-serif}.student:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.55;background-image:radial-gradient(circle at 1px 1px,var(--grain) 1px,transparent 0),repeating-linear-gradient(-18deg,transparent,transparent 11px,color-mix(in srgb,var(--text) 3.5%,transparent) 12px);background-size:7px 7px,28px 28px;mix-blend-mode:overlay}html[data-pattern=waves] .student:before{background-image:radial-gradient(ellipse 14px 7px at 0 0,transparent 5px,color-mix(in srgb,var(--text) 18%,transparent) 6px,transparent 7px);background-size:28px 16px}.s-pattern-dot{height:22px;padding:0;border:2px solid transparent;border-radius:999px;background-color:#142028;background-image:radial-gradient(circle,#fff 1px,transparent 1.4px);background-size:6px 6px}.s-pattern-dot.pattern-waves{background-image:radial-gradient(ellipse 8px 4px at 0 0,transparent 3px,#fff 3.5px,transparent 4px);background-size:12px 8px}.s-pattern-dot.pattern-diamond{background-size:8px 8px}.s-pattern-dot.pattern-diamond,.s-pattern-dot.pattern-weave{background-image:linear-gradient(45deg,#fff 1px,transparent 0),linear-gradient(-45deg,#fff 1px,transparent 0)}.s-pattern-dot.pattern-weave{background-size:4px 4px}.s-pattern-dot.on{border-color:#fff}html[data-theme=lagoon] .student{--bg:#061416;--glow-1:rgba(46,196,192,0.22);--glow-2:rgba(80,180,200,0.12);--surface:#102226;--surface-2:#163033;--surface-3:#1e3e42;--line:#2a5558;--line-2:#3a6e72;--text:#e7f6f6;--text-2:#b7d4d4;--text-3:#7f9e9e;--accent:#2ec4c0;--accent-fg:#7eefe8;--accent-soft:rgba(46,196,192,0.16);--btn-bg:#149a96;--btn-hover:#1aada8;--btn-glow:rgba(46,196,192,0.5);--coral:#f07a8a;--coral-soft:rgba(240,122,138,0.14);--gold:#e8c36a;--gold-soft:rgba(232,195,106,0.14);--violet:#7ec8e0;--violet-soft:rgba(126,200,224,0.16)}html[data-theme=midnight] .student{--bg:#080c18;--glow-1:rgba(80,140,255,0.22);--glow-2:rgba(120,90,255,0.12);--surface:#1a2238;--surface-2:#222c46;--surface-3:#2c3a58;--line:#354468;--line-2:#4a5b82;--text:#eef2ff;--text-2:#b4bed8;--text-3:#7d89a8;--accent:#5b8def;--accent-fg:#8eb6ff;--accent-soft:rgba(91,141,239,0.16);--btn-bg:#3d6fd4;--btn-hover:#4c7ee0;--btn-glow:rgba(91,141,239,0.5);--coral:#f07a8a;--coral-soft:rgba(240,122,138,0.14);--gold:#e8c36a;--gold-soft:rgba(232,195,106,0.14);--violet:#a78bfa;--violet-soft:rgba(167,139,250,0.16)}html[data-theme=plum] .student{--bg:#100a14;--glow-1:rgba(192,132,252,0.22);--glow-2:rgba(244,114,182,0.12);--surface:#23182e;--surface-2:#2c2038;--surface-3:#3a2a48;--line:#4a385c;--line-2:#5e4874;--text:#f6eefe;--text-2:#c9b6d8;--text-3:#8e7a9e;--accent:#c084fc;--accent-fg:#d8b4fe;--accent-soft:rgba(192,132,252,0.16);--btn-bg:#9b5de8;--btn-hover:#ab72f0;--btn-glow:rgba(192,132,252,0.5);--coral:#f472b6;--coral-soft:rgba(244,114,182,0.14);--gold:#f0c14b;--gold-soft:rgba(240,193,75,0.14);--violet:#e879f9;--violet-soft:rgba(232,121,249,0.16)}html[data-theme=ember] .student{--bg:#100a08;--glow-1:rgba(249,115,78,0.22);--glow-2:rgba(242,193,78,0.12);--surface:#241a16;--surface-2:#2e221c;--surface-3:#3c2c24;--line:#4c3c32;--line-2:#645044;--text:#f6efe8;--text-2:#cbb8a8;--text-3:#8f7c6e;--accent:#f9734e;--accent-fg:#ff9b7a;--accent-soft:rgba(249,115,78,0.16);--btn-bg:#d85a36;--btn-hover:#e46844;--btn-glow:rgba(249,115,78,0.5);--coral:#fb7185;--coral-soft:rgba(251,113,133,0.14);--gold:#f2c14e;--gold-soft:rgba(242,193,78,0.14);--violet:#fb923c;--violet-soft:rgba(251,146,60,0.16)}html[data-theme=dune] .student{--bg:#12100c;--glow-1:rgba(212,161,90,0.2);--glow-2:rgba(180,130,60,0.12);--surface:#221e18;--surface-2:#2c261e;--surface-3:#3a3228;--line:#4e4436;--line-2:#665848;--text:#f6f0e6;--text-2:#d2c4ae;--text-3:#9a8b74;--accent:#d4a15a;--accent-fg:#f0cb8a;--accent-soft:rgba(212,161,90,0.16);--btn-hover:#bb8840;--btn-glow:rgba(212,161,90,0.45);--coral:#e08a62;--coral-soft:rgba(224,138,98,0.14);--gold:#e8c36a;--gold-soft:rgba(232,195,106,0.14);--violet:#c4a27a;--violet-soft:rgba(196,162,122,0.16)}html[data-theme=cobalt] .student{--bg:#070b16;--glow-1:rgba(61,126,255,0.24);--glow-2:rgba(80,140,255,0.12);--surface:#121a2e;--surface-2:#18243c;--surface-3:#223052;--line:#314268;--line-2:#455888;--text:#e8eeff;--text-2:#b4c0e0;--text-3:#7d8aab;--accent:#3d7eff;--accent-fg:#8eb4ff;--accent-soft:rgba(61,126,255,0.16);--btn-bg:#2a5fd4;--btn-hover:#3a6fe0;--btn-glow:rgba(61,126,255,0.5);--coral:#f07a8a;--coral-soft:rgba(240,122,138,0.14);--gold:#e8c36a;--gold-soft:rgba(232,195,106,0.14);--violet:#8ea2ff;--violet-soft:rgba(142,162,255,0.16)}html[data-theme=wine] .student{--bg:#14080e;--glow-1:rgba(224,90,134,0.22);--glow-2:rgba(180,60,100,0.12);--surface:#26141c;--surface-2:#321a24;--surface-3:#422430;--line:#5a3242;--line-2:#744456;--text:#fbeff3;--text-2:#e0b8c4;--text-3:#a67b8a;--accent:#e05a86;--accent-fg:#ff9bb8;--accent-soft:rgba(224,90,134,0.16);--btn-bg:#c43d68;--btn-hover:#d44e78;--btn-glow:rgba(224,90,134,0.5);--coral:#f07a8a;--coral-soft:rgba(240,122,138,0.14);--gold:#e8c36a;--gold-soft:rgba(232,195,106,0.14);--violet:#e090b0;--violet-soft:rgba(224,144,176,0.16)}.student .app{position:relative;z-index:1;max-width:1120px;margin:0 auto;padding:calc(10px + var(--safe-top)) calc(18px + var(--safe-right)) calc(28px + var(--safe-bottom)) calc(18px + var(--safe-left))}.student:has(.session){height:100dvh;overflow:hidden}.student:has(.session) .app{display:flex;flex-direction:column;height:100%;padding-bottom:calc(10px + var(--safe-bottom))}.student:has(.session) .s-top{margin-bottom:10px}.student:has(.session) main{flex:1 1;min-height:0;display:flex;flex-direction:column}.student :focus-visible{outline:2px solid var(--accent);outline-offset:2px}.student .sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.student h1,.student h2{font-family:Space Grotesk,sans-serif}.s-top{display:flex;justify-content:space-between;gap:12px;min-height:60px;margin-bottom:18px}.s-brand,.s-top{align-items:center}.s-brand{display:inline-flex;gap:10px;padding:4px 8px 4px 4px;border:0;border-radius:12px;background:none;color:var(--text)}.s-brand-copy{display:grid;justify-items:start;line-height:1.1}.s-brand strong{font-family:Space Grotesk,sans-serif;font-size:28px;font-weight:700;letter-spacing:-.045em;line-height:.95}.s-company{margin-top:2px;font-size:12px;font-weight:700;letter-spacing:.01em;color:var(--text-3)}.s-top-right{display:flex;align-items:center;gap:8px}.s-pill{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border-radius:999px;border:1.5px solid var(--line-2);background:linear-gradient(180deg,var(--gloss),transparent 64%),var(--surface);box-shadow:var(--chip-shine),var(--shadow),inset 0 0 0 1px color-mix(in srgb,#fff 14%,transparent);color:var(--text-2);font-size:13px;white-space:nowrap}.s-pill svg{width:16px;height:16px}.s-pill b{color:var(--text);font-weight:700}.s-pill.streak.lit svg{color:#ff8a3d;fill:rgba(255,138,61,.25);animation:flame 2.6s ease-in-out infinite;transform-origin:50% 90%}.s-pill.xp svg{color:var(--gold)}.s-account{position:relative}.s-avatar-btn{display:inline-flex;align-items:center;gap:4px;height:40px;padding:2px 8px 2px 2px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--text-3)}.s-avatar-btn:hover{border-color:var(--line-2);color:var(--text)}.s-avatar-btn svg{width:16px;height:16px}.s-avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,color-mix(in srgb,#fff 28%,var(--accent)),var(--accent) 42%,color-mix(in srgb,#000 22%,var(--btn-bg)));box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 4px 10px -4px var(--btn-glow);color:#fff;font-size:13px;font-weight:700}.s-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:30;min-width:280px;padding:6px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 18px 44px -12px rgba(0,0,0,.4);animation:rise .14s ease}.s-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;margin-bottom:4px;border-bottom:1px solid var(--line)}.s-menu-head strong{display:block;font-size:14px}.s-menu-admin{flex-shrink:0;padding:6px 10px;border-radius:999px;background:var(--accent);color:#fff;font-size:12px;font-weight:700;text-decoration:none}.s-menu-head span{font-size:12px;color:var(--text-3)}.s-menu-label{margin:8px 10px 4px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.s-menu-themes{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:4px 8px 8px}.s-theme-dot{height:22px;padding:0;border:2px solid transparent;border-radius:999px;background:#334}.s-theme-dot.skin-forest{background:linear-gradient(90deg,#0b1110,#2bb59c)}.s-theme-dot.skin-midnight{background:linear-gradient(90deg,#0b1020,#5b8def)}.s-theme-dot.skin-plum{background:linear-gradient(90deg,#140e18,#c084fc)}.s-theme-dot.skin-ember{background:linear-gradient(90deg,#140e0c,#f9734e)}.s-theme-dot.skin-lagoon{background:linear-gradient(90deg,#061416,#2ec4c0)}.s-theme-dot.skin-dune{background:linear-gradient(90deg,#12100c,#d4a15a)}.s-theme-dot.skin-cobalt{background:linear-gradient(90deg,#070b16,#3d7eff)}.s-theme-dot.skin-wine{background:linear-gradient(90deg,#14080e,#e05a86)}.s-theme-dot.on{border-color:#fff}.s-menu-font{display:grid;padding:0 8px 8px}.s-menu-font select{width:100%;min-height:36px;padding:6px 10px;border:1px solid var(--line-2);border-radius:10px;background:var(--surface-2);color:var(--text)}.s-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:9px;background:none;color:var(--text);font-size:13.5px;font-weight:500;text-align:left}.s-menu-item svg{width:16px;height:16px;color:var(--text-3)}.s-menu-item:hover{background:var(--surface-2)}.s-menu-item.danger,.s-menu-item.danger svg{color:var(--bad)}.s-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 16px;border:1px solid transparent;border-radius:12px;font-size:14px;font-weight:700;line-height:1.2;transition:transform .12s ease,background-color .15s ease,border-color .15s ease}.s-btn svg{width:18px;height:18px}.s-btn.primary{background:linear-gradient(105deg,transparent 36%,rgba(255,255,255,.28) 50%,transparent 64%),linear-gradient(180deg,color-mix(in srgb,#fff 26%,var(--btn-bg)),var(--btn-bg) 46%,color-mix(in srgb,#000 16%,var(--btn-bg)));background-size:240% 100%,100% 100%;background-position:130% 0,0 0;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.32),inset 0 -1px 0 rgba(0,0,0,.18),0 8px 18px -10px var(--btn-glow);animation:gloss-slide 3.8s ease-in-out infinite}.s-btn.primary svg{fill:none}.s-btn.primary:hover:not(:disabled){background:linear-gradient(105deg,transparent 36%,rgba(255,255,255,.3) 50%,transparent 64%),linear-gradient(180deg,color-mix(in srgb,#fff 22%,var(--btn-hover)),var(--btn-hover));background-size:240% 100%,100% 100%;background-position:130% 0,0 0}.s-btn.ghost{background:linear-gradient(180deg,var(--gloss),transparent 64%),var(--surface);border:1.5px solid var(--line-2);color:var(--text);box-shadow:var(--chip-shine),inset 0 0 0 1px color-mix(in srgb,#fff 10%,transparent)}.s-btn.ghost:hover:not(:disabled){background:linear-gradient(180deg,var(--gloss),transparent 64%),var(--surface-2)}.s-btn.lg{min-height:48px;padding:12px 20px;border-radius:14px;font-size:15px}.s-btn.block{width:100%}.s-btn:active:not(:disabled){transform:translateY(1px) scale(.99)}.s-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.s-icon-btn{flex-shrink:0;width:40px;height:40px;display:grid;place-items:center;border:1.5px solid var(--line-2);border-radius:12px;background:linear-gradient(180deg,var(--gloss),transparent 70%),var(--surface-2);box-shadow:var(--chip-shine);color:var(--text-2)}.s-icon-btn:hover{background:var(--surface-3);color:var(--text)}.s-icon-btn svg{width:18px;height:18px}.s-icon-btn.lg{width:54px;height:54px;border-color:transparent;border-radius:50%;background:var(--accent-soft);color:var(--accent-fg)}.s-icon-btn.lg svg{width:24px;height:24px}.student .card{position:relative;isolation:isolate;padding:20px;border:1.5px solid color-mix(in srgb,var(--line-2) 78%,var(--accent));border-radius:var(--radius);background:linear-gradient(165deg,var(--gloss),transparent 42%),radial-gradient(420px 180px at 100% -10%,var(--accent-soft),transparent 62%),var(--surface);box-shadow:var(--emboss),var(--shadow),inset 0 0 0 1px color-mix(in srgb,#fff 12%,transparent);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.student .card:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(105deg,transparent 36%,var(--sheen) 50%,transparent 64%);background-size:240% 100%;background-position:130% 0;opacity:0;pointer-events:none;z-index:0}.student .card:hover:after{opacity:.7;animation:gloss-slide .9s ease}.student .card>*{position:relative;z-index:1}html[data-theme-mode=light] .student .card{border-color:color-mix(in srgb,var(--line-2) 70%,var(--accent) 30%);background:linear-gradient(165deg,#fff,transparent 46%),radial-gradient(420px 180px at 100% -10%,var(--accent-soft),transparent 62%),var(--surface);box-shadow:var(--emboss),var(--shadow),inset 0 0 0 1px rgba(255,255,255,.75)}.eyebrow{display:inline-flex;align-items:center;gap:6px;width:fit-content;margin:0 0 10px;padding:4px 10px;border:1.5px solid var(--line-2);border-radius:999px;background:linear-gradient(180deg,var(--gloss),transparent 70%),var(--surface-2);box-shadow:var(--chip-shine);font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-2)}.eyebrow svg{width:14px;height:14px}.eyebrow.accent{color:var(--accent-fg);border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background:linear-gradient(180deg,var(--gloss),transparent 70%),var(--accent-soft)}.card-title{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;margin-bottom:14px}.card-title h2{margin:0;font-size:17px;letter-spacing:-.01em}.card-title p{margin:0;font-size:13px;color:var(--text-3)}.s-banner,.s-notice{display:flex;align-items:center;gap:10px;margin:0;padding:10px 14px;border-radius:12px;font-size:13.5px;line-height:1.45}.s-banner{background:var(--gold-soft);color:var(--text-2)}.s-banner svg{width:16px;height:16px;color:var(--gold)}.s-notice{justify-content:space-between;margin-bottom:16px;background:var(--coral-soft);color:var(--text)}.s-notice button{border:0;background:none;color:var(--text-2);font-size:20px;line-height:1}.dash{display:grid;gap:18px;align-items:start}.dash-main,.dash-side{display:grid;gap:16px;min-width:0}@media (min-width:980px){.dash{grid-template-columns:minmax(0,1fr) 340px}.dash-side{position:sticky;top:16px}}.section-head h1{margin:0 0 6px;font-size:clamp(24px,3vw,30px);line-height:1.12;letter-spacing:-.02em}.section-head p{margin:0;font-size:14.5px;color:var(--text-3)}.word-search{position:relative;z-index:4;display:grid;gap:4px;margin:2px 0 8px;padding:5px;border-radius:999px;border:1.5px solid var(--line-2);background:color-mix(in srgb,var(--surface-2) 70%,var(--surface));box-shadow:var(--chip-shine),var(--shadow)}.word-search.open{border-radius:28px}.word-search-field{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px 10px;min-width:0;padding:5px 5px 5px 14px;border-radius:999px;border:1.5px solid var(--line-2);background:linear-gradient(180deg,var(--gloss),transparent 64%),var(--surface);box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 16%,transparent)}.word-search-field>svg{width:18px;height:18px;color:var(--text-3);pointer-events:none}.word-search input{min-width:0;padding:8px 0;border:0;border-radius:12px;background:none;color:var(--text);font-size:15px;outline:none}.word-search input:focus,.word-search input:focus-visible{outline:none}.word-search-field:focus-within{border-color:color-mix(in srgb,var(--accent) 55%,var(--line-2));box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 16%,transparent),0 0 0 2px color-mix(in srgb,var(--accent) 40%,transparent)}.word-search input::placeholder{color:var(--text-3)}.word-search .s-btn{min-height:40px;padding:0 18px;border-radius:999px}.word-suggest{list-style:none;margin:2px 4px 4px;padding:4px 0 2px;border-top:1px solid color-mix(in srgb,var(--line-2) 70%,transparent)}.word-suggest button{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:10px;width:100%;padding:9px 14px;border:0;border-radius:16px;background:none;color:var(--text);font:inherit;text-align:left}.word-suggest button svg{width:16px;height:16px;color:var(--text-3)}.word-suggest button b{font-weight:800;color:var(--accent-fg)}.word-suggest button em{font-size:11px;font-style:normal;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.word-suggest button.on,.word-suggest button:hover{background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.word-search-error{margin:0 12px 6px;font-size:13px;color:var(--coral)}.look-backdrop{position:fixed;inset:0;z-index:50;display:grid;justify-items:center;align-items:start;padding:24px 16px 16px;background:rgba(4,10,9,.6);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:rise .12s ease}.look-stage{width:min(1080px,100%)}.look-stage,.look-stage .study-card{display:flex;flex-direction:column;max-height:calc(100dvh - 32px);min-height:0}.look-stage .study-card{overflow:hidden}.look-stage .study-card .reveal{flex:1 1;min-height:0;overflow:auto}.look-stage .card-actions{flex-shrink:0}.look-add{display:grid;gap:8px;margin-bottom:8px}.look-add-top{margin:0 0 12px}.look-add>p{margin:0;font-size:13px;font-weight:600;color:var(--text-2)}.look-add-tracks{display:flex;flex-wrap:wrap;gap:6px}.look-add-tracks button{min-height:34px;padding:4px 12px;border:1.5px solid var(--line-2);border-radius:999px;background:linear-gradient(180deg,var(--gloss),transparent 70%),var(--surface-2);box-shadow:var(--chip-shine);color:var(--text-2);font-size:13px;font-weight:700}.look-add-tracks button.on{color:var(--tone);border-color:color-mix(in srgb,var(--tone) 55%,var(--line-2));background:linear-gradient(180deg,var(--gloss),transparent 70%),var(--tone-soft);box-shadow:0 0 0 2px var(--tone-soft),var(--chip-shine)}.look-add-tracks button.suggested:not(.on){border-style:dashed;border-color:color-mix(in srgb,var(--tone) 40%,var(--line-2))}.look-add-error{margin:0;font-size:13px;color:var(--coral)}.eyebrow.look-out{color:#f3d48a;border-color:color-mix(in srgb,var(--gold) 40%,var(--line));background:linear-gradient(180deg,var(--gloss),transparent 70%),var(--gold-soft)}html[data-theme-mode=light] .eyebrow.look-out{color:#8a6a12}.crumbs{display:flex;align-items:center;gap:12px;min-width:0}.crumbs .s-icon-btn{width:36px;height:36px}.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;margin:0;padding:0;font-size:13.5px}.crumbs li{display:inline-flex;align-items:center}.crumbs li+li:before{content:"/";margin:0 8px;color:var(--line-2)}.crumbs li button{padding:2px 0;border:0;background:none;color:var(--text-3);font:inherit}.crumbs li button:hover{color:var(--accent-fg)}.crumbs [aria-current]{color:var(--text);font-weight:700}.tone-teal{--tone:var(--accent);--tone-soft:var(--accent-soft)}.tone-violet{--tone:var(--violet);--tone-soft:var(--violet-soft)}.tone-coral{--tone:var(--coral);--tone-soft:var(--coral-soft)}.tone-gold{--tone:var(--gold);--tone-soft:var(--gold-soft)}.tone-indigo{--tone:#6d5efc;--tone-soft:color-mix(in srgb,#6d5efc 22%,transparent)}.tone-aqua{--tone:#1493a8;--tone-soft:color-mix(in srgb,#1493a8 22%,transparent)}.tone-forest{--tone:#2f9a48;--tone-soft:color-mix(in srgb,#2f9a48 22%,transparent)}.track-beginner{--tone:var(--accent);--tone-soft:var(--accent-soft)}.track-intermediate{--tone:var(--violet);--tone-soft:var(--violet-soft)}.track-advanced{--tone:var(--coral);--tone-soft:var(--coral-soft)}.home-focus{display:grid;gap:14px}@media (min-width:720px){.home-focus{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:stretch}}.home-focus .wotd-card{min-height:100%}.soon-strip{display:grid;gap:10px}.soon-strip-label{margin:4px 0 0;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.soon-picks{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:8px}.soon-pick{display:flex;align-items:center;gap:10px;min-height:64px;padding:8px 10px;border:1px dashed color-mix(in srgb,var(--tone) 32%,var(--line));border-radius:14px;background:linear-gradient(165deg,color-mix(in srgb,var(--tone) 10%,var(--surface)),var(--surface));color:var(--text-2)}.soon-pick-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--tone-soft);color:var(--tone)}.soon-pick-icon svg{width:16px;height:16px}.soon-pick strong{display:block;font-size:13px;color:var(--text);line-height:1.25}.soon-pick em{display:block;margin-top:2px;font-size:11px;font-style:normal;color:var(--text-3)}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}.student .card.tile{display:grid;grid-template-rows:auto 1fr auto;gap:14px;min-height:200px;color:var(--text);text-align:left;overflow:hidden;border:1.5px solid color-mix(in srgb,var(--tone) 55%,var(--line-2));background:radial-gradient(160px 120px at 112% -8%,color-mix(in srgb,var(--tone) 55%,transparent),transparent 68%),linear-gradient(155deg,color-mix(in srgb,var(--tone) 34%,var(--surface)),color-mix(in srgb,var(--tone) 14%,var(--surface)));box-shadow:var(--emboss),0 14px 28px -16px color-mix(in srgb,var(--tone) 45%,transparent);transition:transform .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease;animation:rise .42s cubic-bezier(.2,.8,.2,1) both}html[data-theme-mode=light] .student .card.tile{background:radial-gradient(180px 140px at 110% -12%,color-mix(in srgb,var(--tone) 42%,#fff),transparent 64%),linear-gradient(155deg,color-mix(in srgb,var(--tone) 26%,#fff),color-mix(in srgb,var(--tone) 12%,#fff))}.student .card.tile:before{content:"";position:absolute;width:150px;height:150px;right:-42px;top:-48px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--tone) 50%,transparent),transparent 72%);z-index:0;pointer-events:none;animation:none}.student .card.tile:after{opacity:.25}.tiles .tile:first-child{animation-delay:.02s}.tiles .tile:nth-child(2){animation-delay:.07s}.tiles .tile:nth-child(3){animation-delay:.12s}.tiles .tile:nth-child(4){animation-delay:.17s}.tiles .tile:nth-child(5){animation-delay:.22s}.tiles .tile:nth-child(6){animation-delay:.27s}.student .card.tile:hover:not(:disabled){color:#fff;transform:translateY(-6px) scale(1.015);border-color:color-mix(in srgb,#fff 35%,var(--tone));background:radial-gradient(180px 140px at 100% 0,color-mix(in srgb,#fff 22%,transparent),transparent 58%),linear-gradient(145deg,color-mix(in srgb,#fff 16%,var(--tone)),color-mix(in srgb,#000 18%,var(--tone)));box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 0 0 1px rgba(255,255,255,.18),0 20px 36px -16px color-mix(in srgb,var(--tone) 70%,transparent)}.student .card.tile:hover:not(:disabled):after{opacity:.7;animation:gloss-slide .9s ease}.student .card.tile:hover:not(:disabled) .tile-meta,.student .card.tile:hover:not(:disabled) .tile-note{color:rgba(255,255,255,.86)}.student .card.tile:hover:not(:disabled) .tile-icon{background:#fff;color:var(--tone);border-color:transparent;transform:scale(1.06)}.student .card.tile:hover:not(:disabled) .tile-go{background:#fff;color:var(--tone);transform:translateX(4px)}.student .card.tile:disabled{cursor:default}.student .card.tile.soon{background:radial-gradient(160px 120px at 112% -8%,color-mix(in srgb,var(--tone) 28%,transparent),transparent 68%),linear-gradient(155deg,color-mix(in srgb,var(--tone) 18%,var(--surface)),color-mix(in srgb,var(--tone) 8%,var(--surface)));box-shadow:var(--emboss)}html[data-theme-mode=light] .student .card.tile.soon{background:radial-gradient(180px 140px at 110% -12%,color-mix(in srgb,var(--tone) 22%,#fff),transparent 64%),linear-gradient(155deg,color-mix(in srgb,var(--tone) 16%,#fff),color-mix(in srgb,var(--tone) 8%,#fff))}.student .card.tile.soon:before{opacity:.55}.tile-icon{width:52px;height:52px;display:grid;place-items:center;border:1.5px solid color-mix(in srgb,#fff 28%,var(--tone));border-radius:16px;background:var(--tone);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 10px 18px -10px color-mix(in srgb,var(--tone) 80%,transparent);transition:transform .2s ease,background .2s ease,color .2s ease}.tile-icon svg{width:24px;height:24px}.tile-body{display:grid;align-content:start;gap:4px}.tile-body strong{font-family:Space Grotesk,sans-serif;font-size:19px;letter-spacing:-.01em}.tile-note{font-size:13.5px;line-height:1.45;color:var(--text-2)}.tile-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.tile-meta{font-size:13px;font-weight:700;color:var(--tone)}.tile-go{width:34px;height:34px;display:grid;place-items:center;border:1.5px solid color-mix(in srgb,var(--tone) 40%,transparent);border-radius:50%;background:color-mix(in srgb,var(--tone) 16%,var(--surface));color:var(--tone);transition:transform .2s ease,background .2s ease,color .2s ease}.tile-go svg{width:16px;height:16px;stroke-width:2}.tile-soon{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border:0;border-radius:999px;background:color-mix(in srgb,var(--tone) 16%,var(--surface));font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--tone)}.tile-soon svg{width:13px;height:13px}.bar{position:relative;display:block;height:6px;overflow:hidden;border-radius:99px;background:var(--surface-3);box-shadow:inset 0 1px 2px color-mix(in srgb,#000 18%,transparent)}.bar>span{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:linear-gradient(180deg,color-mix(in srgb,#fff 38%,var(--tone,var(--accent))),var(--tone,var(--accent)));box-shadow:inset 0 1px 0 rgba(255,255,255,.35);transition:width .6s ease}.bar.lg{height:10px}.tracks{display:grid;gap:12px}.student .card.track,html[data-theme-mode=light] .student .card.track{display:flex;align-items:center;gap:16px;color:var(--text);text-align:left;border:1.5px solid color-mix(in srgb,var(--tone) 48%,var(--line-2));background:radial-gradient(220px 140px at 100% 0,color-mix(in srgb,var(--tone) 38%,transparent),transparent 64%),linear-gradient(155deg,color-mix(in srgb,var(--tone) 26%,var(--surface)),color-mix(in srgb,var(--tone) 10%,var(--surface)));box-shadow:var(--emboss),0 12px 24px -16px color-mix(in srgb,var(--tone) 40%,transparent),inset 0 0 0 1px color-mix(in srgb,#fff 14%,transparent);transition:transform .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease,border-color .2s ease}.student .card.track:hover:not(:disabled){color:#fff;transform:translateY(-3px);border-color:color-mix(in srgb,#fff 30%,var(--tone));background:radial-gradient(220px 140px at 100% 0,color-mix(in srgb,#fff 18%,transparent),transparent 58%),linear-gradient(145deg,color-mix(in srgb,#fff 16%,var(--tone)),color-mix(in srgb,#000 16%,var(--tone)));box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 16px 32px -16px color-mix(in srgb,var(--tone) 60%,transparent)}.student .card.track:hover:not(:disabled) .track-meta,.student .card.track:hover:not(:disabled) .track-note{color:rgba(255,255,255,.84)}.student .card.track:hover:not(:disabled) .track-pct{color:#fff}.student .card.track:hover:not(:disabled) .track-step{background:#fff;color:var(--tone)}.student .card.track:disabled{opacity:.7;cursor:default}.student .card.track.current,html[data-theme-mode=light] .student .card.track.current{color:#fff;border-color:transparent;background:linear-gradient(180deg,rgba(255,255,255,.18),transparent 42%),linear-gradient(135deg,var(--tone),color-mix(in srgb,var(--tone) 68%,#000));box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(0,0,0,.18),var(--shadow)}.student .track.current:hover:not(:disabled){border-color:transparent}.track.current .track-step{background:#fff;color:var(--tone)}.student .card.track.current .track-tag,.student .card.track.current:hover:not(:disabled) .track-tag{background:#fff6e4;color:#8a5310;box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 4px 10px -6px rgba(0,0,0,.35)}.track.current .track-meta,.track.current .track-note{color:rgba(255,255,255,.82)}.track.current .bar{background:rgba(255,255,255,.25)}.track.current .bar>span{background:#fff}.track.current .track-pct{color:#fff}.track-tag.done{display:inline-flex;align-items:center;gap:4px;background:var(--gold-soft);color:var(--gold)}.track-tag.done svg{width:12px;height:12px;fill:currentColor}.student .track.complete .track-step{background:var(--gold-soft);color:var(--gold)}.track.complete .track-step svg{width:20px;height:20px;stroke-width:2.4}.track.complete .track-pct{color:var(--gold)}.student .done-banner{display:flex;align-items:center;gap:16px;border-color:var(--gold);background:linear-gradient(120deg,var(--gold-soft),transparent 70%),var(--surface);animation:rise .3s ease}.done-banner h2{margin:0 0 4px;font-size:18px}.done-banner p{margin:0;font-size:13.5px;line-height:1.45;color:var(--text-2)}.done-banner>div{flex:1 1;min-width:0}.done-medal{flex-shrink:0;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:var(--gold);color:#fff;box-shadow:0 0 0 6px var(--gold-soft);animation:pop .5s cubic-bezier(.2,.8,.2,1.4)}.done-medal svg{width:26px;height:26px;fill:currentColor}@media (max-width:640px){.student .done-banner{flex-wrap:wrap}.done-banner .s-btn{width:100%}}.s-dialog-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:rgba(4,10,9,.6);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:rise .12s ease}.student .s-dialog{width:min(440px,100%);padding:24px;box-shadow:0 24px 60px -16px rgba(0,0,0,.55)}.s-dialog-icon{width:46px;height:46px;display:grid;place-items:center;margin-bottom:14px;border-radius:14px;background:var(--tone-soft);color:var(--tone)}.s-dialog-icon svg{width:22px;height:22px}.s-dialog h2{margin:0 0 10px;font-size:21px;letter-spacing:-.01em}.s-dialog p{margin:0 0 8px;font-size:14px;line-height:1.5;color:var(--text-2)}.s-dialog p.s-dialog-next{color:var(--text);font-weight:600}.s-dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:18px}.track-step{flex-shrink:0;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(180deg,var(--gloss),transparent 70%),var(--tone-soft);box-shadow:var(--chip-shine),0 6px 12px -8px color-mix(in srgb,var(--tone) 50%,transparent);color:var(--tone);font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:700}.track-body{flex:1 1;min-width:0;display:grid;gap:5px}.track-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.track-head strong{font-family:Space Grotesk,sans-serif;font-size:18px}.track-tag{padding:3px 9px;border-radius:999px;background:linear-gradient(180deg,var(--gloss),transparent 70%),var(--tone-soft);box-shadow:var(--chip-shine);color:var(--tone);font-size:11px;font-weight:700}.track-meta,.track-note{font-size:13px;color:var(--text-3)}.track-body .bar{margin:4px 0 2px}.track-pct{flex-shrink:0;min-width:56px;text-align:right;font-family:Space Grotesk,sans-serif;font-size:22px;font-weight:700;color:var(--tone)}.student .card.track-hero,html[data-theme-mode=light] .student .card.track-hero{padding:22px 24px;border:1.5px solid color-mix(in srgb,var(--tone) 48%,var(--line-2));background:radial-gradient(420px 220px at 100% 0,color-mix(in srgb,var(--tone) 36%,transparent),transparent 62%),linear-gradient(155deg,color-mix(in srgb,var(--tone) 24%,var(--surface)),color-mix(in srgb,var(--tone) 8%,var(--surface)));box-shadow:var(--emboss),0 16px 32px -16px color-mix(in srgb,var(--tone) 40%,transparent),inset 0 0 0 1px color-mix(in srgb,#fff 14%,transparent)}.track-hero h1{margin:0 0 8px;font-size:clamp(30px,4vw,40px);line-height:1.05;letter-spacing:-.025em}.track-hero-stat{margin:0 0 14px;font-size:15px;color:var(--text-2)}.track-hero-meta{margin:8px 0 18px;font-size:13px;color:var(--text-3)}.track-actions{display:flex;flex-wrap:wrap;gap:10px}.student .card.levels-card,html[data-theme-mode=light] .student .card.levels-card{border:1.5px solid color-mix(in srgb,var(--tone,var(--accent)) 36%,var(--line-2));background:radial-gradient(320px 180px at 100% 0,color-mix(in srgb,var(--tone,var(--accent)) 18%,transparent),transparent 62%),linear-gradient(155deg,color-mix(in srgb,var(--tone,var(--accent)) 10%,var(--surface)),var(--surface));box-shadow:var(--emboss),var(--shadow),inset 0 0 0 1px color-mix(in srgb,#fff 12%,transparent)}.levels-card .card-title,.size-pick{align-items:center}.size-pick{display:flex;gap:10px;margin:0;padding:0;border:0}.size-pick legend{float:left;margin-right:10px;font-size:12.5px;font-weight:600;color:var(--text-3)}.size-pick .seg-row{gap:4px}.size-pick .seg-row button{min-width:42px;min-height:32px;padding:4px 10px;border-radius:8px;font-size:13px}.levels-note{margin:-4px 0 16px;font-size:12.5px;color:var(--text-3)}.levels{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(74px,1fr));gap:10px}.lvl{position:relative;width:100%;aspect-ratio:1;display:grid;place-content:center;justify-items:center;gap:4px;overflow:hidden;border:1.5px solid color-mix(in srgb,var(--tone,var(--accent)) 32%,var(--line-2));border-radius:14px;background:linear-gradient(165deg,color-mix(in srgb,var(--tone,var(--accent)) 16%,var(--surface)),var(--surface));box-shadow:var(--chip-shine),inset 0 0 0 1px color-mix(in srgb,#fff 12%,transparent);color:var(--text);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease}.lvl:after{content:"";position:absolute;inset:auto 0 0 0;height:4px;background:linear-gradient(90deg,var(--accent) var(--pct,0),transparent var(--pct,0))}.lvl:hover:not(:disabled){color:#fff;transform:translateY(-3px);border-color:color-mix(in srgb,#fff 28%,var(--tone,var(--accent)));background:linear-gradient(145deg,color-mix(in srgb,#fff 16%,var(--tone,var(--accent))),var(--tone,var(--accent)));box-shadow:0 12px 22px -12px color-mix(in srgb,var(--tone,var(--accent)) 55%,transparent)}.lvl:hover:not(:disabled) .lvl-state{color:rgba(255,255,255,.88)}.lvl-num{font-family:Space Grotesk,sans-serif;font-size:20px;font-weight:700;line-height:1}.lvl-state{display:grid;place-items:center;min-height:16px;font-size:11.5px;font-weight:600;color:var(--text-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lvl-state svg{width:15px;height:15px}.lvl.done{border-color:transparent;background:linear-gradient(165deg,color-mix(in srgb,#fff 16%,var(--ok)),var(--ok));color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 8px 16px -10px color-mix(in srgb,var(--ok) 55%,transparent)}.lvl.done .lvl-state{color:rgba(255,255,255,.9)}.lvl.done .lvl-state svg{stroke-width:2.4}.lvl.done:after{display:none}.lvl.done:hover:not(:disabled){background:linear-gradient(165deg,color-mix(in srgb,#fff 8%,var(--ok)),color-mix(in srgb,#000 12%,var(--ok)))}.lvl.current{border-color:transparent;color:#fff;background:linear-gradient(165deg,color-mix(in srgb,#fff 10%,var(--tone,var(--accent))),color-mix(in srgb,#000 22%,var(--tone,var(--accent))));box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 0 0 3px var(--tone-soft,var(--accent-soft)),0 10px 18px -10px var(--btn-glow)}.lvl.current .lvl-state{color:rgba(255,255,255,.88)}.lvl.current:after{background:linear-gradient(90deg,#fff var(--pct,0),transparent var(--pct,0))}.lvl.current:hover:not(:disabled){background:linear-gradient(165deg,color-mix(in srgb,#fff 6%,var(--tone,var(--accent))),color-mix(in srgb,#000 28%,var(--tone,var(--accent))))}.lvl.locked{opacity:.5;cursor:not-allowed}.lvl.locked:after{display:none}.student .card.today-mini,html[data-theme-mode=light] .student .card.today-mini{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 10px;padding:14px 16px;border:1.5px solid color-mix(in srgb,var(--accent) 48%,var(--line-2));background:radial-gradient(180px 140px at 100% 0,color-mix(in srgb,var(--accent) 38%,transparent),transparent 64%),linear-gradient(155deg,color-mix(in srgb,var(--accent) 28%,var(--surface)),color-mix(in srgb,var(--accent) 10%,var(--surface)));box-shadow:var(--emboss),0 14px 28px -16px color-mix(in srgb,var(--accent) 40%,transparent),inset 0 0 0 1px color-mix(in srgb,#fff 16%,transparent)}.today-mini h2{margin:0 0 2px;font-size:22px;letter-spacing:-.02em}.today-mini p:not(.eyebrow){margin:0;font-size:12.5px;line-height:1.35;color:var(--text-2)}.today-mini p.today-goal{margin-top:2px;font-size:12px;color:var(--text-3)}.today-mini .eyebrow{margin-bottom:6px}.today-mini .s-btn{grid-column:1/-1;min-height:38px}.award-row{grid-column:1/-1;display:flex;justify-content:center;gap:22px}.award{position:relative;overflow:hidden;display:flex;flex:0 0 52px;width:52px;flex-direction:column;align-items:center;gap:2px;padding:7px 2px 5px;border-radius:14px;color:#8d7344;background:radial-gradient(circle at 50% 0,#fff 0,transparent 58%),repeating-linear-gradient(135deg,rgba(140,110,60,.14) 0 1px,transparent 1px 4px),linear-gradient(180deg,#f8f3e8,#e6dcc8);border:1px solid #d9c9a4;box-shadow:inset 0 1px 0 #fff,0 2px 0 #cbb892}.award svg{position:relative;z-index:1;width:16px;height:16px}.award-disc,.award-glint,.award.on svg{transform-box:fill-box;transform-origin:center}.award span{position:relative;z-index:1;font-size:8px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#8a7344}.award.on{color:#9a4e08;background:radial-gradient(circle at 50% 0,#fff8 0,transparent 48%),repeating-linear-gradient(115deg,rgba(255,255,255,.45) 0 1px,transparent 1px 3px),linear-gradient(180deg,#ffe7a4,#f5b423 52%,#e18412);border-color:#f0c35a;box-shadow:inset 0 1px 0 #fff6,0 2px 0 #b56d10,0 8px 12px -6px rgba(200,120,20,.7)}.award.on span{color:#6a3808}.award.on:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 32%,rgba(255,255,255,.7) 50%,transparent 68%);transform:translateX(-130%);pointer-events:none}@media (prefers-reduced-motion:no-preference){.award.on:after{animation:award-sweep 3.2s ease-in-out infinite}.award.on .award-star{animation:award-pop 2.4s ease-in-out infinite}.award.on .award-star .award-glint{animation:award-twinkle 2.2s ease-in-out infinite}.award.on .award-cup{animation:award-bob 2.6s ease-in-out infinite}.award.on .award-medal .award-disc{animation:award-sway 3.4s ease-in-out infinite}}@keyframes award-sweep{0%,42%{transform:translateX(-130%)}to{transform:translateX(130%)}}@keyframes award-twinkle{0%,to{opacity:.25}50%{opacity:1}}@keyframes award-pop{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes award-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-1.5px)}}@keyframes award-sway{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}.today-week{grid-column:1/-1;padding-top:8px;border-top:1.5px solid color-mix(in srgb,var(--accent) 28%,var(--line))}.today-week .card-title{margin-bottom:6px}.today-week .card-title h2{font-size:15px}.today-mini .goal-copy strong{font-size:16px}.today-mini .goal-copy strong span{font-size:11px}.today-mini .goal-copy em{font-size:9px}.student .card.progress-card,html[data-theme-mode=light] .student .card.progress-card{border:1.5px solid color-mix(in srgb,var(--violet) 42%,var(--line-2));background:radial-gradient(200px 140px at 100% 0,color-mix(in srgb,var(--violet) 22%,transparent),transparent 64%),linear-gradient(155deg,color-mix(in srgb,var(--violet) 12%,var(--surface)),var(--surface));box-shadow:var(--emboss),var(--shadow),inset 0 0 0 1px color-mix(in srgb,#fff 12%,transparent)}.progress-group{margin:4px 0 8px;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.progress-list{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:8px}.progress-row{width:100%;display:grid;gap:8px;padding:12px 12px 12px 14px;border:1.5px solid color-mix(in srgb,var(--tone) 38%,var(--line));border-left:4px solid var(--tone);border-radius:12px;background:linear-gradient(165deg,color-mix(in srgb,var(--tone) 12%,var(--surface)),var(--surface) 70%);box-shadow:var(--chip-shine);color:var(--text);text-align:left;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.progress-row:hover:not(:disabled){border-color:var(--tone);transform:translateY(-1px)}.progress-row:disabled{opacity:.55;cursor:default}.progress-row.current,.progress-row.current:hover:not(:disabled){border-color:transparent;background:linear-gradient(180deg,rgba(255,255,255,.18),transparent 42%),linear-gradient(135deg,var(--tone),color-mix(in srgb,var(--tone) 68%,#000));box-shadow:inset 0 1px 0 rgba(255,255,255,.28),var(--shadow);color:#fff}.progress-row.current .progress-pct,.progress-row.current .progress-stats b{color:#fff}.progress-row.current .progress-stats{color:rgba(255,255,255,.82)}.progress-row.current .bar{background:rgba(255,255,255,.25)}.progress-row.current .bar>span{background:#fff}.progress-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.progress-top strong{font-size:14.5px}.progress-pct{font-family:Space Grotesk,sans-serif;font-size:17px;font-weight:700;color:var(--tone)}.progress-stats{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;color:var(--text-3)}.progress-stats b{color:var(--text);font-weight:700}.goal-ring{position:relative;flex-shrink:0;display:grid;place-items:center;filter:drop-shadow(0 6px 10px color-mix(in srgb,var(--accent) 28%,transparent))}.goal-ring svg{position:absolute;inset:0}.goal-inner,.goal-rim{fill:none;stroke:color-mix(in srgb,var(--accent) 55%,var(--line-2));stroke-width:1.25}.goal-disc{fill:color-mix(in srgb,var(--surface) 82%,var(--accent))}.goal-track{fill:none;stroke:color-mix(in srgb,var(--accent) 22%,var(--surface-3));stroke-width:8}.goal-fill{fill:none;stroke:var(--accent);stroke-width:8;stroke-linecap:butt;transition:stroke-dashoffset .8s cubic-bezier(.2,.8,.2,1),stroke .3s ease}.goal-ring.done .goal-fill{stroke:var(--gold)}.goal-ring.done{filter:drop-shadow(0 0 16px var(--gold-soft))}.today-mini .goal-copy strong{font-size:20px}.goal-copy{position:relative;text-align:center;line-height:1.1}.goal-copy strong{font-family:Space Grotesk,sans-serif;font-size:30px}.goal-copy strong span{font-size:13px;color:var(--text-2)}.goal-copy em{display:block;margin-top:3px;font-size:11px;font-style:normal;font-weight:700;color:var(--accent-fg)}.student .card.wotd-card,html[data-theme-mode=light] .student .card.wotd-card{display:flex;flex-direction:column;border:1.5px solid color-mix(in srgb,var(--gold) 55%,var(--line-2));background:radial-gradient(200px 160px at 100% 0,color-mix(in srgb,var(--gold) 46%,transparent),transparent 62%),linear-gradient(155deg,color-mix(in srgb,var(--gold) 32%,var(--surface)),color-mix(in srgb,var(--gold) 12%,var(--surface)));box-shadow:var(--emboss),0 16px 32px -16px color-mix(in srgb,var(--gold) 50%,transparent),inset 0 0 0 1px color-mix(in srgb,#fff 18%,transparent)}.dash-side .wotd-card .wotd-word h2{font-size:clamp(28px,4vw,34px)}.wotd-word{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.wotd-word h2{margin:0;font-size:30px;letter-spacing:-.02em;overflow-wrap:anywhere}.wotd-pos{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:22px;margin:4px 0 10px}.wotd-pos .phonetic{font-size:13.5px}.wotd-gist{margin:0 0 6px;font-family:Space Grotesk,sans-serif;font-size:20px;font-weight:700;color:var(--accent-fg)}.wotd-meaning{margin:0 0 10px;font-size:15px;line-height:1.5}.wotd-example{margin:auto 0 0;font-size:13.5px;line-height:1.5;color:var(--text-3)}.student .card.week-card,html[data-theme-mode=light] .student .card.week-card{border:0;background:radial-gradient(180px 120px at 0 0,color-mix(in srgb,var(--coral) 16%,transparent),transparent 58%),radial-gradient(180px 120px at 100% 0,color-mix(in srgb,var(--gold) 16%,transparent),transparent 58%),linear-gradient(155deg,color-mix(in srgb,var(--accent) 10%,var(--surface)),var(--surface))}.week{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.week li{display:grid;justify-items:center;gap:5px}.week-dot{width:30px;height:30px;display:grid;place-items:center;border:2px solid color-mix(in srgb,var(--accent) 32%,var(--line-2));border-radius:50%;background:color-mix(in srgb,var(--surface) 70%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 35%,transparent),0 4px 8px -4px rgba(0,0,0,.18);color:#fff;font-size:11px;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.week-dot svg{width:15px;height:15px;stroke-width:2.4}.week li.on .week-dot{border-color:transparent;background:linear-gradient(180deg,color-mix(in srgb,#fff 30%,var(--accent)),var(--accent));box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 6px 12px -6px var(--btn-glow)}.week li.today .week-dot{box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 0 0 3px var(--accent-soft),0 6px 12px -6px var(--btn-glow);animation:pulse-glow 2.4s ease-in-out infinite}.week-label{font-size:11px;font-weight:800;letter-spacing:.01em;color:var(--text-2)}.week li.today .week-label{color:var(--accent-fg)}.week li.sun .week-label{color:var(--coral)}.week li.sat .week-label{color:var(--gold)}.week li.sun .week-dot{border-color:var(--coral);background:color-mix(in srgb,var(--coral) 18%,var(--surface))}.week li.sat .week-dot{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 20%,var(--surface))}.week li.sun.on .week-dot{border-color:transparent;background:linear-gradient(180deg,color-mix(in srgb,#fff 28%,var(--coral)),var(--coral))}.week li.sat.on .week-dot{border-color:transparent;background:linear-gradient(180deg,color-mix(in srgb,#fff 28%,var(--gold)),var(--gold))}.week li.sun.today .week-dot{box-shadow:0 0 0 3px var(--coral-soft),0 6px 12px -6px var(--coral)}.week li.sat.today .week-dot{box-shadow:0 0 0 3px var(--gold-soft),0 6px 12px -6px var(--gold)}.empty-note{margin:0;font-size:13.5px;color:var(--text-3)}.practice-result,.practice-setup{display:grid;gap:16px;max-width:720px}.practice-mix{display:grid;gap:14px}.practice-total{display:flex;align-items:baseline;gap:8px;margin:0}.practice-total strong{font-size:32px}.practice-total span,.practice-tracks p{color:var(--text-3)}.practice-tracks{list-style:none;margin:0;padding:0;display:grid;gap:10px}.practice-step,.practice-tracks li{display:flex;align-items:center;justify-content:space-between;gap:12px}.practice-tracks p{margin:2px 0 0;font-size:13px}.practice-step button{width:36px;background:var(--surface-2);font-size:20px}.practice-step button,.practice-step input{height:36px;border:1px solid var(--line-2);border-radius:10px;color:var(--text)}.practice-step input{width:52px;background:var(--surface);text-align:center;font-size:18px;font-weight:700}.dash.solo{grid-template-columns:minmax(0,1fr)}.practice-one{display:grid;gap:10px}.practice-one label{display:flex;align-items:baseline;gap:10px;font-size:28px;font-weight:700;text-transform:lowercase}.practice-one label span{font-size:14px;font-weight:700;color:var(--text-3);text-transform:none}.practice-one textarea{font-size:22px;line-height:1.5;padding:14px 16px;border-radius:18px}.practice-play{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,320px);grid-template-areas:"board pool";gap:16px;align-items:start}.practice-pool{grid-area:pool}.practice-finish{display:flex;justify-content:center;gap:12px;margin-top:8px}.practice-board{display:grid;gap:12px;grid-area:board}.practice-modes{display:flex;gap:8px}.practice-modes button{min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line-2);background:var(--surface-2);color:var(--text-2);font-weight:700}.practice-modes button.on{background:var(--accent);color:#fff;border-color:transparent}.practice-praise{margin:0;padding:10px 14px;border-radius:12px;background:color-mix(in srgb,var(--accent) 18%,var(--surface));color:var(--accent-fg);font-weight:700}.practice-lines{list-style:none;margin:0;padding:0;display:grid;gap:10px}.practice-lines li{display:grid;gap:6px}.practice-lines label{display:flex;align-items:center;gap:8px;font-weight:700}.practice-lines label span{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:var(--surface-3);font-size:12px}.practice-lines li.used label{color:var(--text-3)}.practice-lines textarea,.practice-story{width:100%;resize:vertical;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--text);padding:10px 12px;font:inherit}.practice-story{min-height:220px;font-size:22px;line-height:1.5}.practice-actions{display:flex;align-items:center;gap:10px}.practice-actions-right{display:flex;gap:10px;margin-left:auto}.practice-pool{align-self:stretch;margin-left:18px}.practice-pool-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.practice-pool-head .eyebrow{margin:0}.practice-pool ul{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;align-content:start}.practice-pool li{display:grid;place-items:center;min-height:36px;padding:8px 10px;border-radius:999px;border:0;font-size:13px;font-weight:700;text-align:center;color:#fff;text-transform:lowercase;box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 2px 0 rgba(0,0,0,.35)}.practice-pool li.used{background:#24302d;color:#9aa8a2;text-decoration:line-through;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 2px 0 rgba(0,0,0,.45)}.practice-hint{margin:0;color:#ffb4c4;font-size:14px;font-weight:600}.practice-pool li span,.practice-pool-count{color:var(--text-3);font-size:12px}.practice-pool-count{margin:0;font-weight:800;font-size:18px;color:var(--text)}.practice-score{display:flex;align-items:center;gap:18px}.practice-score h1{margin:0 0 6px}.practice-score p{margin:0;color:var(--text-2)}.practice-notes{list-style:none;margin:0;padding:0;display:grid;gap:8px}.practice-notes li{padding:12px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--line)}.practice-notes li.ok{border-color:color-mix(in srgb,var(--ok,#1aa88f) 50%,var(--line))}.practice-notes li.fix{border-color:color-mix(in srgb,var(--coral) 55%,var(--line))}.practice-notes p{margin:4px 0 0;color:var(--text-2)}.practice-error{margin:0;color:var(--coral)}@media (max-width:800px){.practice-play{grid-template-columns:1fr;grid-template-areas:"board" "pool"}.practice-pool{margin-left:0}}.student .skeleton{display:block;height:120px;background:linear-gradient(90deg,var(--surface) 0,var(--surface-2) 50%,var(--surface) 100%);background-size:200% 100%;animation:shimmer 1.2s linear infinite}.student .skeleton.tall{height:200px}@media (max-width:640px){.tiles{grid-template-columns:1fr 1fr;gap:10px}.student .tile{min-height:168px;padding:16px}.tile-note{display:none}.student .tile.featured{min-height:200px;padding:20px}.student .tile.featured .tile-note{display:block}.soon-picks{grid-template-columns:1fr 1fr}.levels-card .card-title{display:grid}.size-pick{flex-wrap:wrap}.track-hero{padding:20px}.track-actions .s-btn{flex:1 1 auto}}@media (max-width:560px){.pill-label,.s-brand strong,.s-company{display:none}}@media (max-width:380px){.tiles{grid-template-columns:1fr}}.session{display:flex;flex-direction:column;flex:1 1;min-height:0;width:100%;max-width:860px;margin:0 auto}.session-bar{display:flex;align-items:center;gap:12px;flex-shrink:0;margin-bottom:10px}.session-stage{display:flex;flex-direction:column;flex:1 1;min-height:0}.session-progress{flex:1 1;height:10px;overflow:hidden;border-radius:99px;background:var(--surface-3)}.session-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#5ee0c3);transition:width .4s cubic-bezier(.2,.8,.2,1)}.session-count{font-size:13px;color:var(--text-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.session-xp{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:700;color:var(--gold)}.session-xp svg{width:15px;height:15px}.student .study-card{display:flex;flex-direction:column;flex:1 1;min-height:0;overflow:hidden;padding:18px 20px;animation:rise .28s cubic-bezier(.2,.8,.2,1)}.study-card>.card-actions,.study-card>.eyebrow,.study-card>.feedback,.study-card>.quiz-q,.study-card>.recall-said,.study-card>.s-btn,.study-card>.word-head{flex-shrink:0}.study-card .options{flex:1 1;min-height:0;overflow:auto}.word-head{display:grid;gap:8px;margin-bottom:14px}.word-line{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 24px;min-width:0}@media (max-width:520px){.word-line{flex-wrap:wrap}}.big-word{display:flex;align-items:baseline;gap:8px;margin:0;font-size:clamp(36px,6.5vw,56px);line-height:1.05;letter-spacing:-.03em}.big-word span,.word-link{overflow-wrap:anywhere}.word-link{color:inherit;text-decoration:none;border-bottom:1px dashed color-mix(in srgb,var(--text) 28%,transparent)}.word-link:hover{color:var(--accent-fg);border-bottom-color:var(--accent-fg)}.word-link.say-word{border-bottom-color:transparent;letter-spacing:-.03em}.say-part{display:inline;margin:0;padding:0;letter-spacing:inherit;color:color-mix(in srgb,var(--text) 42%,transparent);transition:color .16s ease,text-shadow .16s ease}.say-part.now{color:var(--accent-fg);text-shadow:0 0 14px var(--accent-soft)}.say-part.said,.word-link.say-word.whole .say-part{color:var(--text)}.speak-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;border:0;border-radius:50%;background:var(--accent-soft);color:var(--accent-fg);vertical-align:middle;transform:translateY(2px)}.speak-btn svg{width:16px;height:16px}.speak-btn.sm{width:26px;height:26px;transform:translateY(1px)}.speak-btn.sm svg{width:14px;height:14px}.speak-btn:hover{background:color-mix(in srgb,var(--accent) 22%,transparent)}.word-sub{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0}.phonetic{font-size:15px;color:var(--text-3)}.type-chips{display:inline-flex;flex-wrap:wrap;gap:6px}.type-chip{--type:var(--accent);--type-soft:var(--accent-soft);display:inline-block;margin:0;padding:3px 10px;border-radius:999px;background:linear-gradient(180deg,var(--gloss),transparent 70%),var(--type-soft);box-shadow:var(--chip-shine);color:var(--type);font-family:DM Sans,Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:lowercase}.type-verb{--type:var(--coral);--type-soft:var(--coral-soft)}.type-adjective{--type:var(--violet);--type-soft:var(--violet-soft)}.type-adverb{--type:var(--gold);--type-soft:var(--gold-soft)}.type-conjunction,.type-determiner,.type-interjection,.type-preposition,.type-pronoun{--type:var(--text-2);--type-soft:var(--surface-3)}.senses{display:grid;gap:16px}.sense{display:grid;gap:8px;justify-items:start}.sense h3.type-chip{font-size:12px}.sense ol{display:grid;gap:10px;width:100%;margin:0;padding-left:22px}.sense li::marker{color:var(--text-3);font-weight:700}.sense .meaning{font-size:17px}.sense-example{margin:4px 0 0;font-size:14px;font-style:italic;line-height:1.5;color:var(--text-3)}.meaning-loading,.meaning-missing{margin:0;color:var(--text-3);font-size:15px}.meaning-loading{animation:shimmer-text 1.2s ease-in-out infinite}.rel-words{display:flex;flex-wrap:wrap;gap:6px;margin:0}.rel-words em{font-style:normal;font-weight:600}.rel-words em:not(:last-child):after{content:",";color:var(--text-3)}.pair-tile.opposite{border-color:var(--coral-soft)}.session-loading{display:grid;justify-items:center;gap:14px;padding:48px 24px;text-align:center;color:var(--text-2)}.session-loading p{margin:0}.spinner{width:34px;height:34px;border:3px solid var(--surface-3);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@keyframes shimmer-text{50%{opacity:.45}}.word-detail{display:grid;gap:14px;margin-bottom:20px;animation:rise .25s ease}.meaning{margin:0;font-size:19px;font-weight:600;line-height:1.45}.reveal{display:grid;gap:8px;flex:1 1;min-height:0;overflow:auto;margin:0;padding-right:2px;animation:rise .25s ease}.meaning-box{display:grid;gap:6px;padding:16px 18px;border:1px solid color-mix(in srgb,var(--accent) 36%,transparent);border-radius:16px;background:linear-gradient(165deg,var(--gloss),transparent 46%),linear-gradient(135deg,color-mix(in srgb,var(--accent) 16%,transparent),transparent 70%),var(--surface-2);box-shadow:var(--emboss),0 10px 22px -16px var(--btn-glow)}.meaning-box p{margin:0}.gist{font-family:Space Grotesk,sans-serif;font-size:clamp(20px,3.2vw,26px);font-weight:600;line-height:1.25;letter-spacing:-.015em;color:var(--text)}.gist.long{font-family:DM Sans,Arial,sans-serif;font-size:16.5px;letter-spacing:0;color:var(--text-2)}.gist-full,.gist.long{font-weight:500;line-height:1.5}.gist-full{font-size:14px;color:var(--text-3)}[data-ta-font=noto-sans-ta]{--ta-font:"Noto Sans Tamil",sans-serif}[data-ta-font=noto-serif-ta]{--ta-font:"Noto Serif Tamil",serif}[data-ta-font=catamaran]{--ta-font:"Catamaran",sans-serif}[data-ta-font=hind-madurai]{--ta-font:"Hind Madurai",sans-serif}[data-ta-font=mukta-malar]{--ta-font:"Mukta Malar",sans-serif}[data-ta-font=pavanam]{--ta-font:"Pavanam",sans-serif}[data-ta-font=meera-inimai]{--ta-font:"Meera Inimai",sans-serif}[data-ta-font=kavivanar]{--ta-font:"Kavivanar",cursive}[data-ta-font=tiro-ta]{--ta-font:"Tiro Tamil",serif}[data-ta-font=anek-ta]{--ta-font:"Anek Tamil",sans-serif}[data-hi-font=noto-sans-hi]{--hi-font:"Noto Sans Devanagari",sans-serif}[data-hi-font=noto-serif-hi]{--hi-font:"Noto Serif Devanagari",serif}[data-hi-font=mukta]{--hi-font:"Mukta",sans-serif}[data-hi-font=hind]{--hi-font:"Hind",sans-serif}[data-hi-font=tiro-hi]{--hi-font:"Tiro Devanagari Hindi",serif}[data-hi-font=kalam]{--hi-font:"Kalam",cursive}[data-hi-font=martel]{--hi-font:"Martel",serif}[data-hi-font=rajdhani]{--hi-font:"Rajdhani",sans-serif}[data-hi-font=yatra]{--hi-font:"Yatra One",cursive}[data-hi-font=anek-hi]{--hi-font:"Anek Devanagari",sans-serif}.tongue-stack{display:grid;justify-items:end;gap:4px;min-width:0}.tongue-inline{display:flex;align-items:baseline;justify-content:flex-end;gap:8px;min-width:0;margin:0;text-align:right;line-height:1.05}.tongue-word{font-weight:700;font-size:clamp(22px,4vw,32px);letter-spacing:.01em}.font-pick-sample[lang=ta],[lang=ta] .tongue-word{font-family:var(--ta-font)}.font-pick-sample[lang=hi],[lang=hi] .tongue-word{font-family:var(--hi-font)}.tongue-lang{padding:3px 9px;border-radius:999px;background:linear-gradient(180deg,var(--gloss),transparent 70%),var(--gold-soft);box-shadow:var(--chip-shine);color:var(--gold);font-family:DM Sans,Arial,sans-serif;font-size:11px;font-weight:700}.tongue-stack.loading .tongue-word{color:var(--text-3);animation:shimmer-text 1.2s ease-in-out infinite}.reveal-grid{display:grid;gap:8px}.reveal-grid.two{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}@media (max-width:680px){.reveal-grid.two{grid-template-columns:1fr}}.reveal-block{display:grid;align-content:start;gap:6px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(165deg,var(--gloss),transparent 46%),var(--surface-2);box-shadow:var(--chip-shine)}.reveal-block h3{margin:0;font-family:DM Sans,Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.reveal-block h3:not(:first-child){margin-top:2px}.also{list-style:none;margin:0;padding:0;display:grid;gap:4px}.also li{font-size:13px;line-height:1.4;color:var(--text-2)}.also .type-chip{margin-right:6px;padding:0 6px;font-size:10.5px;vertical-align:1px}.rel-bar{align-items:flex-start;justify-content:space-between;gap:10px 24px;padding:10px 12px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(165deg,var(--gloss),transparent 46%),var(--surface-2);box-shadow:var(--chip-shine)}.rel-bar,.rel-row{display:flex;flex-wrap:wrap}.rel-row{align-items:center;gap:6px;margin:0}.rel-row.opposite{margin-left:auto;text-align:right;justify-content:flex-end}.rel-row>b{flex-shrink:0;padding:3px 9px;border-radius:999px;background:linear-gradient(180deg,var(--gloss),transparent 70%),var(--accent-soft);box-shadow:var(--chip-shine);color:var(--accent-fg);font-size:10.5px;letter-spacing:.08em;line-height:1.5;text-transform:uppercase}.rel-row.opposite>b{background:var(--coral-soft);color:var(--coral)}.rel-pills{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}.rel-pills li{padding:4px 11px;border-radius:999px;background:linear-gradient(180deg,var(--gloss),transparent 70%),var(--surface-3);box-shadow:var(--chip-shine);font-size:13px;line-height:1.4}.rel-pills li,.rel-words-plain{color:var(--text);font-weight:600}.rel-words-plain{font-size:13.5px;line-height:1.45}.use-it{list-style:none;margin:0;padding:0;display:grid;gap:4px}.use-it li{padding:1px 0 1px 10px;border-left:2px solid var(--gold);color:var(--text-2);font-size:13.5px;line-height:1.45}.use-word{color:var(--gold);font-style:italic;font-weight:700}.recall-said{margin:0;font-size:14px;color:var(--text-3)}.study-card.open .word-head{margin-bottom:10px}.study-card.open .big-word{font-size:clamp(30px,5vw,42px)}.study-card.open .tongue-word{font-size:clamp(20px,3.4vw,28px)}.got-it{justify-content:center;gap:12px}.got-xp{color:#f2c14e;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.02em;text-shadow:0 0 12px rgba(242,193,78,.45)}html[data-theme-mode=light] .got-xp{color:#f0c14b;text-shadow:0 0 10px rgba(240,193,75,.35)}.xp-fly{position:fixed;z-index:80;display:inline-flex;align-items:center;justify-content:center;margin:0;pointer-events:none;color:#f2c14e;font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:800;text-shadow:0 0 14px rgba(242,193,78,.65);transition:transform .55s cubic-bezier(.2,.75,.2,1),opacity .55s ease}.s-pill.xp.xp-pop{animation:xp-pop .42s cubic-bezier(.2,.8,.2,1)}@keyframes xp-pop{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}.card-actions{flex-shrink:0;margin:10px -20px -18px;padding:10px 20px 14px;border-radius:0 0 var(--radius) var(--radius);background:linear-gradient(to bottom,transparent,var(--surface) 28%)}.session-nav{display:flex;justify-content:space-between;gap:10px;flex-shrink:0;margin-top:10px}.session-nav .s-btn{min-width:120px}.session.done .session-stage{overflow:auto}.session.done .summary-card{flex:none}.summary-back{display:inline-flex;align-items:center;gap:6px;margin-top:4px;border:0;background:none;color:var(--text-3);font-size:13.5px;font-weight:600}.summary-back svg{width:16px;height:16px}.summary-back:hover{color:var(--accent-fg)}.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pair-tile{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);font-weight:600}.pair-tile span{display:block;margin-bottom:4px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.examples{list-style:none;margin:0;padding:0;display:grid;gap:8px}.examples li{padding:10px 14px;border-left:3px solid var(--accent);border-radius:0 10px 10px 0;background:var(--surface-2);color:var(--text-2);line-height:1.5}.quiz-q{margin:0 0 20px;font-size:clamp(24px,4vw,32px);line-height:1.2;letter-spacing:-.02em}.quiz-q em{font-style:normal;color:var(--accent-fg)}.options{display:grid;gap:10px}.option{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:12px 14px;border:1px solid var(--line-2);border-radius:14px;background:linear-gradient(165deg,var(--gloss),transparent 58%),var(--surface-2);box-shadow:var(--chip-shine);color:var(--text);font-size:15px;font-weight:500;line-height:1.4;text-align:left;transition:border-color .15s ease,background-color .15s ease,opacity .2s ease,transform .15s ease}.option:hover:not(:disabled){border-color:var(--accent);background:linear-gradient(165deg,var(--gloss),transparent 58%),var(--surface-3);transform:translateY(-1px)}.option:disabled{cursor:default}.option>span:nth-child(2){flex:1 1}.option-key{flex-shrink:0;width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:var(--surface-3);color:var(--text-2);font-size:13px;font-weight:700}.option svg{width:20px;height:20px;stroke-width:2.2}.option.correct{border-color:var(--ok);background:var(--ok-soft);animation:pop .35s ease}.option.correct .option-key{background:var(--ok);color:#fff}.option.correct svg{color:var(--ok)}.option.incorrect{border-color:var(--bad);background:var(--bad-soft);animation:shake .3s linear}.option.incorrect .option-key{background:var(--bad);color:#fff}.option.incorrect svg{color:var(--bad)}.option.dim{opacity:.5}.feedback{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding:14px 16px;border-radius:14px;animation:rise .2s ease}.feedback.good{background:var(--ok-soft)}.feedback.good strong{color:var(--ok)}.feedback.bad{background:var(--bad-soft)}.feedback.bad strong{color:var(--bad)}.feedback p{margin:4px 0 0;font-size:14px;color:var(--text-2)}.recall-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.student .summary-card{display:grid;justify-items:center;gap:14px;max-width:520px;margin:24px auto 0;padding:32px 24px;text-align:center;animation:rise .35s ease}.summary-burst{width:72px;height:72px;display:grid;place-items:center;border-radius:50%;background:var(--gold-soft);color:var(--gold);animation:pop .5s ease}.summary-burst svg{width:36px;height:36px;fill:currentColor}.summary-card h1{margin:0;font-size:30px;line-height:1.1;letter-spacing:-.02em}.summary-xp{margin:0;font-family:Space Grotesk,sans-serif;font-size:44px;font-weight:700;color:var(--gold)}.summary-xp span{font-size:18px}.summary-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:100%;margin:0}.summary-stats div{padding:12px;border-radius:12px;background:var(--surface-2)}.summary-stats dt{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.summary-stats dd{margin:4px 0 0;font-size:18px;font-weight:700}.summary-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;margin-top:4px}.profile{display:grid;gap:16px;max-width:640px;margin:0 auto}.profile-head{display:flex;align-items:center;gap:14px}.profile-head h1{margin:0;font-size:26px;line-height:1.1;letter-spacing:-.02em}.form-card{display:grid;gap:20px}.field-hint{margin:0;font-size:12.5px;color:var(--text-3)}.font-preview{margin:0;padding:10px 12px;border-radius:12px;background:var(--surface-2);font-size:28px;font-weight:700;line-height:1.3}.theme-groups{display:grid;gap:16px}.theme-group-label{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.theme-pick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.theme-swatch{display:grid;gap:4px;padding:10px 8px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(165deg,var(--gloss),transparent 58%),var(--surface-2);box-shadow:var(--chip-shine);color:var(--text-2);text-align:left;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.theme-swatch:hover{transform:translateY(-2px)}.theme-swatch strong{font-size:13px;color:var(--text)}.theme-swatch small{font-size:11px;color:var(--text-3)}.theme-swatch.on{border-color:var(--accent);background:var(--accent-soft)}.theme-chip{width:100%;height:22px;border-radius:999px;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),inset 0 -1px 0 rgba(0,0,0,.18)}.theme-swatch.skin-forest .theme-chip{background:linear-gradient(90deg,#0b1110,#2bb59c)}.theme-swatch.skin-midnight .theme-chip{background:linear-gradient(90deg,#0b1020,#5b8def)}.theme-swatch.skin-plum .theme-chip{background:linear-gradient(90deg,#140e18,#c084fc)}.theme-swatch.skin-ember .theme-chip{background:linear-gradient(90deg,#140e0c,#f9734e)}.theme-swatch.skin-lagoon .theme-chip{background:linear-gradient(90deg,#061416,#2ec4c0)}.theme-swatch.skin-dune .theme-chip{background:linear-gradient(90deg,#12100c,#d4a15a)}.theme-swatch.skin-cobalt .theme-chip{background:linear-gradient(90deg,#070b16,#3d7eff)}.theme-swatch.skin-wine .theme-chip{background:linear-gradient(90deg,#14080e,#e05a86)}@media (max-width:640px){.theme-pick{grid-template-columns:repeat(2,minmax(0,1fr))}}.field{display:grid;gap:8px;min-width:0;margin:0;padding:0;border:0}.field legend,.field>span{padding:0;margin-bottom:8px;font-size:13px;font-weight:700;color:var(--text-2)}.student .field input,.student .field select{width:100%;min-height:44px;margin:0;padding:10px 12px;border:1px solid var(--line-2);border-radius:12px;background:var(--surface-2);color:var(--text);font-size:15px}.student .field input:focus,.student .field select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.seg-row{display:flex;flex-wrap:wrap;gap:8px}.seg-row button{min-width:56px;min-height:40px;padding:8px 14px;border:1px solid var(--line-2);border-radius:10px;background:linear-gradient(180deg,var(--gloss),transparent 70%),var(--surface-2);box-shadow:var(--chip-shine);color:var(--text-2);font-weight:600}.seg-row button:hover{color:var(--text)}.seg-row button.on{border-color:var(--accent);background:linear-gradient(180deg,var(--gloss),transparent 70%),var(--accent-soft);color:var(--accent-fg)}.font-pick{display:grid;grid-template-columns:1fr 1fr;gap:8px}.font-pick button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:64px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--text-2);text-align:left}.font-pick button:hover{color:var(--text);border-color:var(--line-2)}.font-pick button.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-fg)}.font-pick-copy{display:grid;gap:2px}.font-pick-copy strong{font-size:13.5px}.font-pick-copy small{font-size:11.5px;font-weight:500;color:var(--text-3)}.font-pick button.on .font-pick-copy small{color:var(--accent-fg);opacity:.8}.font-pick-sample{font-size:20px;font-weight:700;line-height:1.2;color:var(--text)}@media (max-width:520px){.font-pick{grid-template-columns:1fr}}.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.form-message{margin:8px 0 0;font-size:13.5px;color:var(--text-3)}.form-actions .form-message{margin:0}.check-row{display:flex;align-items:flex-start;gap:12px;margin:0;padding:12px 14px;border:1.5px solid var(--line-2);border-radius:14px;background:linear-gradient(180deg,var(--gloss),transparent 68%),var(--surface-2);box-shadow:var(--chip-shine)}.check-row input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--accent);flex-shrink:0}.check-row span{display:grid;gap:4px}.check-row strong{font-size:14px;color:var(--text)}.check-row em{font-size:12.5px;font-style:normal;color:var(--text-3)}.cache-sync{display:grid;gap:10px;margin-top:-8px}.cache-sync p{margin:0;font-size:12.5px;color:var(--text-3)}.cache-sync-actions{display:flex;flex-wrap:wrap;gap:8px}.student .device-card,.student .reset-card{display:flex;align-items:flex-start;gap:14px}.device-card>svg,.reset-card>svg{width:28px;height:28px;color:var(--accent-fg)}.device-card h2,.reset-card h2{margin:0 0 4px;font-size:16px}.device-card p,.reset-card p{margin:0 0 12px;font-size:13.5px;color:var(--text-3)}.reset-actions{display:flex;flex-wrap:wrap;gap:10px}.s-btn.danger{border:1.5px solid color-mix(in srgb,var(--bad) 55%,var(--line));background:linear-gradient(180deg,var(--gloss),transparent 64%),var(--bad-soft);color:var(--bad);box-shadow:var(--chip-shine)}.s-btn.danger:hover:not(:disabled){background:linear-gradient(180deg,var(--gloss),transparent 50%),var(--bad-soft)}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes pop{0%{transform:scale(.9)}60%{transform:scale(1.04)}to{transform:scale(1)}}@keyframes shake{25%{transform:translateX(-6px)}50%{transform:translateX(6px)}75%{transform:translateX(-3px)}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes flame{0%,to{transform:scale(1) rotate(0)}40%{transform:scale(1.08) rotate(-3deg)}70%{transform:scale(.97) rotate(2deg)}}@keyframes gloss-slide{0%{background-position:130% 0,0 0}to{background-position:-30% 0,0 0}}@keyframes pulse-glow{0%,to{box-shadow:var(--chip-shine),0 0 0 3px var(--accent-soft),0 8px 16px -10px var(--btn-glow)}50%{box-shadow:var(--chip-shine),0 0 0 6px var(--accent-soft),0 10px 22px -8px var(--btn-glow)}}@keyframes mesh-drift{0%,to{background-position:0 0,100% 0,50% 100%,0 0}50%{background-position:18% 8%,82% 12%,40% 90%,0 0}}@keyframes stripe-glow{0%,to{filter:brightness(1)}50%{filter:brightness(1.18)}}@media (prefers-reduced-motion:reduce){.student,.student *,.student :after,.student :before{animation:none!important;transition:none!important}}.admin-shell,.auth-page{min-height:100dvh;background:#0b1110;color:#e8eeea;font-family:IBM Plex Sans,DM Sans,Arial,sans-serif}.auth-page{display:grid;grid-template-columns:minmax(280px,1fr) minmax(320px,480px)}.auth-hero,.auth-panel{padding:calc(40px + env(safe-area-inset-top, 0px)) 44px calc(40px + env(safe-area-inset-bottom, 0px))}.auth-hero{background:radial-gradient(800px 400px at 10% 0,rgba(47,157,138,.18),transparent 55%),linear-gradient(180deg,#101816,#0b1110);border-right:1px solid #1d2a26;display:flex;flex-direction:column;height:100dvh;overflow:hidden;padding-top:calc(32px + env(safe-area-inset-top, 0px));padding-bottom:0}.auth-brand{display:flex;align-items:center;gap:16px;position:relative;z-index:1}.auth-brand svg{flex-shrink:0;animation:em-logo-glow 4.8s ease-in-out infinite}.em-logo-sheen{animation:em-logo-sheen 4.8s ease-in-out infinite}@keyframes em-logo-sheen{0%{transform:translateX(0)}45%,to{transform:translateX(80px)}}@keyframes em-logo-glow{0%,to{filter:drop-shadow(0 6px 16px rgba(26,143,124,.28))}50%{filter:drop-shadow(0 6px 24px rgba(43,181,156,.55))}}@media (prefers-reduced-motion:reduce){.auth-brand svg,.em-logo-sheen{animation:none}}.auth-hero h1{margin:0;font-size:clamp(26px,2.6vw,34px);letter-spacing:-.025em;line-height:1.1;font-weight:600}.auth-hero p{margin:0;color:#95a79f;max-width:46ch;line-height:1.55}.auth-hero .auth-tagline{margin-top:4px;font-size:clamp(14px,1.2vw,16px);color:#a9bab3}.auth-visual{position:relative;flex-shrink:0;width:min(100% + 88px,980px,calc((100dvh - 130px) * 16 / 9));aspect-ratio:16/9;margin:auto 0 0;align-self:center;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14%,#000 86%,transparent),linear-gradient(180deg,transparent 0,#000 22%,#000);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0,#000 14%,#000 86%,transparent),linear-gradient(180deg,transparent 0,#000 22%,#000);-webkit-mask-composite:source-in,xor;mask-composite:intersect}.auth-visual img{object-fit:cover}.auth-kicker{margin:0;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:#7d938b}.auth-mark{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#1a8f7c;color:#f4fffb;font-weight:700;letter-spacing:.04em}.auth-mark.sm{width:36px;height:36px;border-radius:10px;font-size:12px;flex-shrink:0}.auth-panel{display:flex;flex-direction:column;justify-content:center;background:#0e1413}.auth-panel h2{margin:6px 0 22px;font-size:28px;font-weight:600;letter-spacing:-.03em}.login-card{display:grid;gap:16px}.seg{display:grid;grid-template-columns:1fr 1fr;padding:4px;background:#151c1a;border:1px solid #26332f;border-radius:12px}.seg button{min-height:36px;border:0;background:transparent;color:#9aaea6;border-radius:8px;font-weight:600;font-size:13px;transition:background .15s ease,color .15s ease}.seg button:hover{background:#1a2421;color:#e8eeea}.seg button.on{background:#1e2b27;color:#f2f7f4}.seg button.on:hover{background:#243430;color:#fff}.login-form{display:grid;gap:14px}.login-lead{margin:0;font-weight:600;color:#d5e0db}.login-form label{display:grid;gap:6px;font-weight:600;font-size:13px;color:#b7c6bf}.auth-page input,.login-form input{width:100%;min-height:46px;border-radius:10px;border:1px solid #2a3a35;background:#121917;color:#e8eeea;padding:10px 12px}.auth-page input:focus{border-color:#2f9d8a}.admin-shell .go,.auth-page .go{min-height:0;border-radius:9px;border:0;background:#1a8f7c;color:#f4fffb;font-weight:600;font-size:13px;padding:7px 16px}.auth-page .go:hover{background:#157a6a}.admin-shell .go:hover{background:var(--accent-hover)}.login-error{color:#e8a090;margin:0;font-weight:600;font-size:13px;line-height:1.45;overflow-wrap:anywhere}.login-hint{margin:0;line-height:1.5}.login-hint,.login-switch{color:#8b9d96;font-size:13px}.login-switch{text-decoration:none}button.login-switch{border:0;background:none;padding:0;font:inherit;font-size:13px;text-align:left;cursor:pointer}.login-switch:hover{color:#e7eeea}.admin-shell{--bg:#e8edf3;--surface:#ffffff;--surface-2:#f4f7fb;--surface-hover:#eef2f7;--line:#d5deea;--line-strong:#c3cedd;--text:#1a2744;--text-2:#44556e;--text-3:#6d7c93;--input-bg:#ffffff;--accent:#1e3a5f;--accent-hover:#16304f;--accent-fg:#1e4a8a;--accent-soft:#e7eef6;--accent-ring:rgba(30,58,95,0.18);--btn-bg:#ffffff;--btn-line:#c3cedd;--btn-hover:#f4f7fb;--btn-text:#1a2744;--danger:#b42318;--danger-bg:#fef3f2;--danger-line:#f3c7c3;--danger-hover:#fde8e6;--ok-bg:#e7f6ef;--ok-text:#0d6b45;--off-bg:#fcebe7;--off-text:#a8402c;--warn-bg:#fdf4d9;--warn-text:#8a6410;--focus-row:#eaf1f8;--focus-line:#5b7fa6;--shadow:0 1px 2px rgba(22,36,58,0.05);--side-bg:#070d18;--side-line:rgba(255,255,255,0.1);--side-text:rgba(232,238,246,0.86);--side-strong:#ffffff;--side-muted:rgba(232,238,246,0.52);--side-hover:rgba(255,255,255,0.08);--side-active-bg:rgba(255,255,255,0.14);--side-active-text:#ffffff;--side-indicator:#d6e2f0;--scroll-thumb:#c3cedd;color-scheme:light;background:var(--bg);color:var(--text);font-size:14px}html[data-theme-mode=light] .admin-shell,html[data-theme=light] .admin-shell{--bg:#f3f6fb;--surface:#ffffff;--surface-2:#f7f9fc;--surface-hover:#eef3fa;--line:#e1e8f2;--line-strong:#cdd7e6;--text:#122033;--text-2:#3e516b;--text-3:#6d7f99;--input-bg:#ffffff;--accent:#1d4ed8;--accent-hover:#1e40af;--accent-fg:#1d4ed8;--accent-soft:#e8f0fe;--accent-ring:rgba(29,78,216,0.22);--btn-bg:#ffffff;--btn-line:#cdd7e6;--btn-hover:#f3f6fb;--btn-text:#24364d;--danger:#b93b27;--danger-bg:#fff6f3;--danger-line:#f1cdc3;--danger-hover:#fdebe6;--ok-bg:#e3f5ee;--ok-text:#0d6b58;--off-bg:#fcebe7;--off-text:#a8402c;--warn-bg:#fdf4d9;--warn-text:#8a6410;--focus-row:#eaf3fb;--focus-line:#5b9bd5;--shadow:0 1px 2px rgba(16,32,28,0.06),0 1px 4px rgba(16,32,28,0.04);--side-bg:#0e1b33;--side-line:rgba(255,255,255,0.08);--side-text:rgba(226,234,247,0.82);--side-strong:#ffffff;--side-muted:rgba(226,234,247,0.48);--side-hover:rgba(255,255,255,0.07);--side-active-bg:rgba(96,165,250,0.22);--side-active-text:#ffffff;--side-indicator:#93c5fd;--scroll-thumb:#c5d0e0;color-scheme:light}.admin-app{display:grid;min-height:100dvh;grid-template-columns:236px minmax(0,1fr)}.admin-side{position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;gap:2px;padding:calc(16px + env(safe-area-inset-top, 0px)) 12px calc(14px + env(safe-area-inset-bottom, 0px));background:var(--side-bg);border-right:1px solid var(--side-line);color:var(--side-text);overflow-y:auto}.side-brand{display:flex;align-items:center;gap:10px;padding:4px 8px 14px;color:inherit;text-decoration:none}.side-brand strong,.who strong{display:block;font-size:13px;font-weight:600;color:var(--side-strong)}.side-brand em,.who em{display:block;font-style:normal;font-size:11.5px;color:var(--side-muted)}.admin-shell .auth-mark.sm{width:32px;height:32px;border-radius:9px;font-size:11px;background:var(--accent);color:#fff}.admin-side nav{display:grid;gap:2px}.nav-label{margin:14px 10px 6px;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--side-muted)}.admin-shell .side-link{position:relative;display:flex;align-items:center;gap:10px;width:100%;min-height:0;padding:7px 10px;border:0;background:transparent;color:var(--side-text);font:inherit;font-size:13px;font-weight:500;text-align:left;text-decoration:none;box-shadow:none;cursor:pointer;transition:background-color .15s ease,color .15s ease}.admin-shell .side-link svg{width:16px;height:16px;opacity:.85}.admin-shell .side-link:hover{background:var(--side-hover);color:var(--side-strong)}.admin-shell .side-link.on{background:var(--side-active-bg);color:var(--side-active-text)}.admin-shell .side-link.on:before{content:"";position:absolute;left:-12px;top:6px;bottom:6px;width:3px;border-radius:0 3px 3px 0;background:var(--side-indicator)}.side-foot{margin-top:auto;display:grid;gap:2px;padding-top:12px;border-top:1px solid var(--side-line)}.who{display:flex;align-items:center;gap:10px;padding:6px 10px 10px}.who,.who>div{min-width:0}.who em,.who strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.who-av{width:30px;height:30px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#fff;font-size:11px;font-weight:700}.admin-main{min-width:0;padding:calc(22px + env(safe-area-inset-top, 0px)) 28px calc(32px + env(safe-area-inset-bottom, 0px));background:var(--bg)}.admin-main>*{max-width:1180px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 16px}.page-head h1{margin:0;font-size:20px;font-weight:600;letter-spacing:-.015em;color:var(--text)}.page-sub{margin:4px 0 0;font-size:12.5px;color:var(--text-3)}.admin-kicker{margin:0 0 4px;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}.admin-note{margin:6px 0 0;max-width:720px;font-size:13px;line-height:1.55;color:var(--text-2)}.admin-card{margin-bottom:16px;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.admin-card h2{margin:0;font-size:14px;font-weight:600;color:var(--text)}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 10px}.list-card,.table-card{padding:0;overflow:hidden}.table-card{overflow-x:auto}.admin-shell .meta{font-size:12px;color:var(--text-3)}.admin-shell .sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.admin-shell :where(input:not([type=checkbox],[type=radio],[type=file]),select,textarea){display:block;width:100%;min-width:0;min-height:34px;margin:0;padding:6px 10px;font:inherit;font-size:13px;color:var(--text);background:var(--input-bg);border:1px solid var(--line-strong);border-radius:8px;box-shadow:none;transition:border-color .15s ease,box-shadow .15s ease}.admin-shell :where(textarea){min-height:92px;padding:9px 11px;line-height:1.5;resize:vertical}.admin-shell :where(select){cursor:pointer}.admin-shell ::placeholder{color:var(--text-3);opacity:1}.admin-shell :where(input,select,textarea):focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.admin-shell :where(input[type=checkbox],input[type=radio]){width:15px;height:15px;margin:0;accent-color:var(--accent)}.admin-shell :where(label){font-size:12px;font-weight:600;color:var(--text-2)}.admin-shell :focus-visible{outline:2px solid var(--accent);outline-offset:2px}.user-form{display:grid;grid-template-columns:1fr 1fr minmax(140px,180px) auto;align-items:end;gap:12px;margin-top:12px}.staff-add label,.user-form label{display:grid;gap:6px}.staff-add{display:grid;grid-template-columns:minmax(160px,1.2fr) minmax(200px,1.5fr) 160px auto;align-items:end;gap:12px}.school-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-bottom:8px}.admin-shell .school-board button.school-card{display:grid;justify-items:start;align-content:start;gap:6px;width:100%;height:100%;min-height:118px;padding:16px 18px;text-align:left;white-space:normal;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.admin-shell .school-board button.school-card:hover:not(:disabled){border-color:var(--accent);background:var(--surface);color:var(--text)}.school-card small{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.school-card strong{font-size:16px;letter-spacing:-.02em}.school-card em,.school-card span{font-style:normal;font-size:13px;font-weight:500;color:var(--text-2)}.school-card em{color:var(--accent-fg)}.users-split{margin-top:28px;padding-top:8px;border-top:1px solid var(--line)}.crumb-back{margin:0 0 12px}.licence-form{display:grid;grid-template-columns:minmax(160px,1.4fr) minmax(160px,1.2fr) 88px 148px 148px auto;align-items:end;gap:12px}.licence-form.is-school{grid-template-columns:minmax(180px,1.4fr) 120px minmax(160px,1fr) 148px 148px auto}.school-identity{display:grid;grid-template-columns:minmax(180px,1.6fr) 140px auto;align-items:end;gap:12px}.school-identity label{display:grid;gap:6px}.admin-card>label+label,.admin-card>label+p,.admin-card>p+label{margin-top:12px}.admin-shell .year-input{max-width:160px}.admin-shell input:read-only{color:var(--text);background:transparent;border-color:transparent;box-shadow:none;padding-left:0}.admin-table tr.is-off td{color:var(--text-3)}.staff-table-wrap{overflow:visible}.admin-shell .staff-table{width:100%}.admin-shell .staff-table th{white-space:nowrap}.admin-shell .staff-table .col-sno{width:72px}.admin-shell .staff-table .col-post{width:148px;position:relative}.admin-shell .staff-table .col-level{width:72px}.admin-shell .staff-table .col-classes{width:28%;min-width:180px;white-space:normal}.admin-shell .staff-table .col-actions{width:210px;white-space:nowrap;vertical-align:middle;text-align:right}.admin-shell .staff-table .licence-actions{flex-wrap:nowrap;justify-content:flex-end}.admin-shell .staff-table .licence-actions button{height:36px;min-height:36px}.admin-shell .staff-table .licence-actions .action-slot,.admin-shell .staff-table .licence-actions button.access-dot{width:36px;flex:0 0 36px;padding:0;border:0;border-radius:999px;background:transparent;box-shadow:none}.admin-shell .staff-table .licence-actions .action-slot{height:36px}.admin-shell .staff-table .licence-actions button.access-dot:active:not(:disabled),.admin-shell .staff-table .licence-actions button.access-dot:hover:not(:disabled){background:transparent;border-color:transparent;transform:none}.admin-shell .staff-table .access-dot span{width:11px;height:11px;border-radius:50%;display:block}.admin-shell .staff-table .access-dot.is-on span{background:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.22);animation:access-live 1.6s ease-out infinite}.admin-shell .staff-table .access-dot.is-off span{background:#d97706;box-shadow:0 0 0 4px rgba(217,119,6,.22)}@keyframes access-live{0%{box-shadow:0 0 0 0 rgba(22,163,74,.55)}70%{box-shadow:0 0 0 8px rgba(22,163,74,0)}to{box-shadow:0 0 0 0 rgba(22,163,74,0)}}.admin-shell .staff-table td.col-post:focus-within{z-index:3}.admin-shell .staff-table .cell-input{width:100%;min-width:0;min-height:32px}.admin-shell .staff-table tr.is-editing td{background:var(--surface-2)}.admin-shell .staff-table tbody tr.is-editing:hover td,.admin-shell .staff-table tbody tr:hover td{background:var(--surface-hover)}.manual-add{display:grid;grid-template-columns:minmax(140px,1.1fr) minmax(160px,1.4fr) 90px 90px auto;align-items:end;gap:12px}.admin-card>label,.manual-add label{display:grid;gap:6px}.licence-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.admin-shell .licence-actions a{display:inline-flex;align-items:center;min-height:32px;padding:6px 14px;font-size:13px;font-weight:500;color:var(--btn-text);background:var(--btn-bg);border:1px solid var(--btn-line);border-radius:8px;text-decoration:none}.admin-card.table-card .roster-head{padding:14px 16px 0}.roster-preview{display:grid;gap:8px;margin-top:12px}.roster-preview ul{margin:0;padding-left:18px}.join-page{min-height:100dvh;display:grid;place-items:center;padding:24px 16px;background:#0b1110;color:#e8eeea}.join-card{width:min(440px,100%);display:grid;gap:14px;padding:28px 22px;background:#0e1413;border:1px solid #1d2a26;border-radius:16px}.join-card h1{margin:0;font-size:28px;letter-spacing:-.03em}.join-kicker{margin:0;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8aa199}.join-card p{margin:0;line-height:1.5}.join-card label{display:grid;gap:6px;font-size:13px;font-weight:600;color:#b7c6bf}.join-card input,.join-card select{width:100%;min-height:46px;padding:10px 12px;color:#e8eeea;background:#151c1a;border:1px solid #26332f;border-radius:10px;font:inherit}.join-page .go{min-height:46px;display:grid;place-items:center;background:#1a8f7c;border:0;border-radius:10px;color:#fff;font-weight:600;text-decoration:none}.join-note{color:#8aa199;font-size:13px}.join-card .notice.error{color:#f0b4b4}.licence-editor label,.licence-form label{display:grid;gap:6px}.licence-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.licence-editor .span-2{grid-column:1/-1}.admin-shell .row-link{min-height:0;padding:0;border:0;background:none;color:var(--accent-fg);font-weight:600;text-align:left;text-decoration:none}.admin-shell .row-link:hover{text-decoration:underline}.licence-hint{margin:12px 0 0}.licence-tabs{display:flex;gap:8px;margin:0 0 16px}.admin-shell .licence-tabs button[aria-selected=true]{background:var(--accent);border-color:var(--accent);color:#fff}.admin-shell .licence-tabs button[aria-selected=true] .tab-count{color:var(--accent);background:#fff;border-color:transparent}.licence-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.licence-summary.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.licence-summary article{margin:0;padding:14px 16px}.licence-summary span{display:block;font-size:12px;font-weight:600;color:var(--text-3)}.licence-summary strong{display:block;margin-top:4px;font-size:22px;letter-spacing:-.03em}.admin-shell .name-input{min-width:160px}.admin-shell .code-input{width:110px}.roster-head label{display:grid;gap:6px}.roster-head .menu-select{width:220px}.admin-shell .menu-select{position:relative}.admin-shell .menu-select-value{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;background:var(--input-bg)}.admin-shell .menu-select-list,.admin-shell .menu-select-value{color:var(--text);border:1px solid var(--line-strong);border-radius:8px}.admin-shell .menu-select-list{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;margin:0;padding:4px;list-style:none;background:var(--surface);box-shadow:var(--shadow)}.admin-shell .menu-select-list button{display:block;width:100%;min-height:34px;padding:6px 10px;text-align:left;background:transparent;color:var(--text);border:0;border-radius:6px}.admin-shell .menu-select-list button:hover:not([aria-selected=true]){background:var(--surface-hover);color:var(--text);border-color:transparent}.admin-shell .menu-select-list button[aria-selected=true],.admin-shell .menu-select-list button[aria-selected=true]:hover{background:var(--accent-soft);color:var(--accent-fg);font-weight:700;border-color:transparent}.licence-modal-backdrop{position:fixed;inset:0;z-index:40;display:grid;align-items:start;justify-items:center;overflow:auto;padding:48px 24px;background:rgba(0,0,0,.62)}.licence-modal{position:relative;width:min(680px,100%)}.licence-modal .card-head{padding-right:40px}.licence-modal .modal-x{position:absolute;top:12px;right:12px}.admin-shell .email-input{min-width:180px}.admin-shell .seat-input{width:72px}.admin-shell .date-input{width:142px}.admin-shell :where(button:not(.side-link,.notice-close)){display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:6px 14px;font:inherit;font-size:13px;font-weight:500;line-height:1.2;white-space:nowrap;color:var(--btn-text);background:var(--btn-bg);border:1px solid var(--btn-line);border-radius:8px;box-shadow:0 1px 1px rgba(0,0,0,.05);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.admin-shell :where(button:not(.side-link,.notice-close)):hover:not(:disabled){background:var(--btn-hover);border-color:var(--line-strong);color:var(--text)}.admin-shell :where(button:not(.side-link,.notice-close)):active:not(:disabled){transform:translateY(1px)}.admin-shell .go{background:var(--accent);border:1px solid var(--accent);color:#fff;font-weight:600;padding:6px 16px;border-radius:8px}.admin-shell .go:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.admin-shell a.go{display:inline-flex;align-items:center;min-height:36px;text-decoration:none}.admin-shell .danger{color:var(--danger);background:var(--danger-bg);border-color:var(--danger-line)}.admin-shell .danger:hover:not(:disabled){color:var(--danger);background:var(--danger-hover);border-color:var(--danger-line)}.admin-shell button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.admin-shell .compact-btn{min-height:28px;padding:4px 10px;font-size:12px}.admin-shell .icon-btn{width:28px;min-height:28px;padding:0}.admin-shell .icon-btn svg{width:15px;height:15px}.admin-table,.vocab-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th,.vocab-table th{position:sticky;top:0;z-index:1;padding:9px 16px;text-align:left;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);background:var(--surface-2);border-bottom:1px solid var(--line)}.admin-table td,.vocab-table td{padding:8px 16px;vertical-align:middle;color:var(--text);border-bottom:1px solid var(--line)}.admin-table tbody tr:last-child td,.vocab-table tbody tr:last-child td{border-bottom:0}.admin-table tbody tr:hover td,.vocab-table tbody tr:hover td{background:var(--surface-hover)}.admin-card>.vocab-table{margin:0 -16px -16px;width:calc(100% + 32px);border-top:1px solid var(--line)}.vocab-table .word{font-weight:500}.vocab-table .col-move{width:190px}.vocab-table .col-move select,.vocab-table td select{width:160px;min-height:30px;padding:4px 8px;font-size:12.5px}.vocab-table .col-actions,.vocab-table td.actions{width:1%;white-space:nowrap;text-align:right}.row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.vocab-table tr.is-focus td{background:var(--focus-row)}.vocab-table tr.is-focus td:first-child{box-shadow:inset 3px 0 0 var(--focus-line)}.new-dot{display:inline-block;width:6px;height:6px;margin-right:8px;vertical-align:middle;border-radius:50%;background:var(--accent)}.vocab-table td.empty-row{padding:32px 16px;text-align:center;color:var(--text-3)}.status{display:inline-flex;align-items:center;margin-right:6px;padding:2px 8px;border-radius:999px;font-size:11.5px;font-weight:600}.status.on{background:var(--ok-bg);color:var(--ok-text)}.status.off{background:var(--off-bg);color:var(--off-text)}.status.warn{background:var(--warn-bg);color:var(--warn-text)}.perm-row{gap:8px;margin:0;font-size:13px;cursor:pointer}.perm-row,.sync-badge{display:inline-flex;align-items:center;font-weight:500;color:var(--text-2)}.sync-badge{gap:7px;padding:4px 10px;font-size:12px;white-space:nowrap;background:var(--surface);border:1px solid var(--line);border-radius:999px}.sync-dot{width:7px;height:7px;border-radius:50%;background:var(--text-3)}.sync-badge.synced .sync-dot{background:var(--ok-text)}.sync-badge.connecting .sync-dot,.sync-badge.saving .sync-dot{background:var(--warn-text);animation:admin-pulse 1s ease-in-out infinite}.sync-badge.error .sync-dot,.sync-badge.offline .sync-dot{background:var(--off-text)}.sync-note{margin:-6px 0 16px;padding:8px 12px;font-size:12.5px;line-height:1.5;color:var(--off-text);background:var(--off-bg);border-radius:8px}@keyframes admin-pulse{50%{opacity:.35}}.enrich-bar{height:8px;overflow:hidden;border-radius:99px;background:var(--surface-2);border:1px solid var(--line)}.enrich-bar span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .5s ease}.enrich-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.enrich-foot .spacer{flex:1 1}.enrich-running:before{content:"";display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:var(--warn-text);animation:admin-pulse 1s ease-in-out infinite}.enrich-note{margin:10px 0 0}.admin-shell .enrich-hint{margin:8px 0 0}.drawer-backdrop{position:fixed;inset:0;z-index:50;display:flex;justify-content:flex-end;background:rgba(4,10,9,.45);animation:admin-fade .15s ease}.drawer{display:flex;flex-direction:column;width:min(520px,100%);height:100%;background:var(--surface);border-left:1px solid var(--line);box-shadow:-12px 0 40px rgba(0,0,0,.3);animation:admin-slide .2s ease}.drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line)}.drawer-head h2{margin:0;font-size:18px;font-weight:600}.drawer-head-actions{display:flex;gap:6px}.drawer-body{flex:1 1;overflow-y:auto;padding:4px 18px 18px}.drawer-section{display:grid;gap:8px;padding:14px 0;border-bottom:1px solid var(--line)}.drawer-section:last-child{border-bottom:0}.drawer-section h3{margin:0;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.drawer-section.two{grid-template-columns:1fr 1fr}.drawer-section.two .meta{grid-column:1/-1}.drawer-section.two label{display:grid;gap:6px}.sense-group{display:grid;gap:4px}.pos-tag{justify-self:start;padding:1px 8px;font-size:11px;font-weight:600;color:var(--accent-fg);background:var(--accent-soft);border-radius:999px}.admin-shell .sense-row{display:flex;align-items:flex-start;gap:10px;padding:6px 8px;font-size:13px;font-weight:400;line-height:1.45;color:var(--text);border-radius:6px;cursor:pointer}.admin-shell .sense-row:hover{background:var(--surface-hover)}.admin-shell .sense-row input{margin-top:2px;flex-shrink:0}.added-row em,.sense-row em{display:block;margin-top:2px;color:var(--text-3)}.sense-row.off>span{color:var(--text-3);text-decoration:line-through}.added-row{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.45}.added-row>span:nth-child(2){flex:1 1}.add-form{display:grid;grid-template-columns:130px 1fr;gap:8px}.add-form input:last-of-type{grid-column:1/-1}.add-form button{justify-self:start}.drawer-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--line);background:var(--surface-2)}.drawer-error{flex:1 1 100%;margin:0;font-size:12.5px;color:var(--off-text)}@keyframes admin-fade{0%{opacity:0}}@keyframes admin-slide{0%{transform:translateX(24px);opacity:0}}.paste-label{display:block;margin:0 0 6px}.paste-actions{gap:10px;margin-top:10px}.paste-actions,.tools-row{display:flex;flex-wrap:wrap;align-items:center}.tools-row{gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.tools-row .spacer{flex:1 1}.notice{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-top:12px;padding:8px 8px 8px 12px;font-size:12.5px;line-height:1.5;color:var(--text-2);background:var(--accent-soft);border:1px solid var(--accent-ring);border-radius:8px;animation:admin-notice-in .2s ease}.admin-shell .notice-close{flex-shrink:0;width:22px;height:22px;display:grid;place-items:center;padding:0;border:0;border-radius:6px;background:transparent;color:var(--text-3);font-size:16px;line-height:1;cursor:pointer}.admin-shell .notice-close:hover{background:var(--surface-hover);color:var(--text)}@keyframes admin-notice-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}.vocab-toolbar{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line)}.bucket-tabs{flex:1 1 auto;min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.admin-shell .bucket-tabs button{width:100%;min-width:0;min-height:32px;padding:5px 10px;gap:8px;font-size:12.5px;font-weight:500;color:var(--text-2);background:var(--surface-2);border:1px solid var(--line);box-shadow:none}.admin-shell .bucket-tabs button:hover:not(:disabled){color:var(--text);background:var(--surface-hover);border-color:var(--line-strong)}.admin-shell .bucket-tabs button.on,.admin-shell .bucket-tabs button.on:hover:not(:disabled){color:var(--accent-fg);background:var(--accent-soft);border-color:var(--accent);font-weight:600}.tab-count{min-width:22px;padding:1px 6px;font-size:11px;font-weight:600;text-align:center;color:var(--text-3);background:var(--surface);border:1px solid var(--line);border-radius:999px}.bucket-tabs button.on .tab-count{color:var(--accent-fg);border-color:var(--accent-ring)}.find-wrap{position:relative;flex:0 0 240px;display:flex;align-items:center;margin:0}.find-wrap svg{position:absolute;left:10px;width:14px;height:14px;color:var(--text-3);pointer-events:none}.admin-shell .find-input{min-height:32px;padding-left:30px}.vocab-scroll{max-height:min(64vh,680px);overflow:auto}.list-foot{padding:9px 16px;font-size:12px;color:var(--text-3);background:var(--surface-2);border-top:1px solid var(--line)}.admin-shell *{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}.sign-out-chip{width:auto;cursor:pointer}@media (max-width:900px){.auth-page{grid-template-columns:1fr}.auth-hero{display:none}.admin-app{grid-template-columns:1fr}.admin-side{position:static;height:auto;border-right:0;border-bottom:1px solid var(--side-line)}.admin-side nav{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.admin-main{padding:16px}.licence-editor,.licence-form,.licence-form.is-school,.licence-summary,.licence-summary.cols-3,.manual-add,.school-identity,.staff-add,.user-form{grid-template-columns:1fr}.vocab-toolbar{flex-wrap:wrap}.find-wrap{flex:1 1 100%}}@media (max-width:560px){.bucket-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.vocab-table .col-move{width:auto}.vocab-table td select{width:130px}}.appendix-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}.admin-shell .appendix-tabs button{min-height:34px;padding:6px 12px;border-radius:999px;background:var(--surface);color:var(--text-2)}.admin-shell .appendix-tabs button.on{background:var(--text);border-color:var(--text);color:var(--bg)}html[data-theme-mode=light] .admin-shell .appendix-tabs button.on{color:#fff}.cat-card{padding:0}.cat-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 16px 12px}.cat-head h2{margin:0 0 4px}.cat-tools{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px}.cat-empty,.cat-note{margin:0;padding:8px 16px 16px;font-size:13px;color:var(--text-2)}.cat-empty{color:var(--text-3)}.cat-tree,.cat-tree ul{list-style:none;margin:0;padding:0}.cat-tree{border-top:1px solid var(--line)}.cat-row{display:flex;align-items:center;gap:8px;min-height:48px;padding:6px 12px;border-bottom:1px solid var(--line);background:var(--surface)}.cat-row.off{opacity:.55}.cat-row.off .cat-name{text-decoration:line-through}.cat-grip{color:var(--text-3);cursor:grab}.cat-grip svg{width:14px;height:14px}.cat-twist.empty{width:22px;min-height:22px;display:inline-block}.admin-shell .cat-twist{width:22px;min-height:22px;padding:0;border:0;background:none;color:var(--text-3);box-shadow:none}.cat-twist svg{width:14px;height:14px;transition:transform .15s ease}.cat-twist.open svg{transform:rotate(-180deg)}.cat-folder{color:var(--text-3)}.cat-folder svg{width:16px;height:16px}.cat-name{flex:1 1;min-width:0;font-size:14px;font-weight:600;color:var(--text)}.cat-count{min-width:18px;color:var(--text-3);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cat-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.admin-shell .cat-chip{min-height:28px;padding:0 8px;border-radius:999px;font-size:12px;color:var(--accent);background:var(--accent-soft);border-color:transparent}.admin-shell .cat-icon{width:28px;min-width:28px;min-height:28px;padding:0;border-radius:50%;font-size:10px;font-weight:700}.admin-shell .cat-icon svg{width:14px;height:14px}.cat-name-form{display:flex;align-items:center;gap:8px;flex:1 1;min-width:0}.cat-name-form.nest,.cat-name-form.pad{flex:none;padding:10px 16px 12px;border-bottom:1px solid var(--line)}.cat-name-form input{max-width:320px}@media (prefers-reduced-motion:reduce){.admin-shell *,.admin-shell :before{transition:none!important;animation:none!important}}.student{--radius:16px;--shadow:0 4px 18px -10px rgb(0 0 0/22%);--text-3:#a6b8b1;--gloss:transparent;--sheen:transparent;--emboss:none;--chip-shine:none;background:var(--bg);animation:none}html[data-theme-mode=light] .student{--bg:#f4f7f5;--line:#dce5e0;--line-2:#c4d2ca;--shadow:0 4px 18px -10px rgb(20 40 32/15%)}.student .card.tile:before,.student .card:after,.student:before{display:none}.student .app{max-width:1200px;padding-top:max(20px,var(--safe-top))}.student .s-top{margin-bottom:28px}.student .card,html[data-theme-mode=light] .student .card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);padding:24px}.student .card.tile,html[data-theme-mode=light] .student .card.tile{background:var(--surface);border-color:var(--line);box-shadow:none;min-height:182px;animation:none}.student .card.tile.available{border-color:var(--accent);background:var(--accent-soft)}.student .card.tile.available .tile-icon{background:var(--accent);color:var(--bg);border:0;box-shadow:none}.student .card.tile.soon{background:var(--surface);border-style:dashed;box-shadow:none}.student .tile.soon .tile-icon{background:var(--surface-2);color:var(--text-3);border:0;box-shadow:none}.student .tile.soon .tile-body strong{font-size:17px;color:var(--text-2)}.student .tile-soon{border:0;background:var(--surface-2);color:var(--text-3);font-size:12px}.student .card.tile:hover:not(:disabled){transform:translateY(-2px);background:var(--accent-soft);color:var(--text);border-color:var(--accent);box-shadow:var(--shadow)}.student .card.tile:hover:not(:disabled) .tile-note{color:var(--text-2)}.student .card.tile:hover:not(:disabled) .tile-meta{color:var(--accent-fg)}.student .tile-go,.student .tile-icon{border:0;box-shadow:none;background:var(--accent-soft)}.student .section-head p,.student .tile-note{font-size:15px;line-height:1.55}.student .tile-meta{color:var(--accent-fg)}.student .s-btn{min-height:44px;border-radius:10px;font-size:15px}.student .s-btn.primary{background:var(--btn-bg);animation:none;box-shadow:none}.student .s-btn.primary:hover:not(:disabled){background:var(--btn-hover)}.student .s-btn.ghost,.student .s-icon-btn{background:var(--surface);border:1px solid var(--line-2);box-shadow:none}.student .s-icon-btn{width:44px;height:44px}.student .s-avatar,.student .s-pill{box-shadow:none;background:var(--surface-2)}.student .s-pill.streak.lit svg,.student .week li.today .week-dot{animation:none}.student .dash{gap:24px}.student .dash-main,.student .dash-side{gap:20px}.student .today-mini{border-top:3px solid var(--accent)}.student .today-mini h2{font-size:24px}.student .today-mini p.today-goal,.student .today-mini p:not(.eyebrow){font-size:14px;line-height:1.5}.student .today-mini .goal-copy strong{font-size:22px}.student .today-mini .goal-copy em{font-size:11px}.student .progress-group{font-size:12px;letter-spacing:0;text-transform:none;line-height:1.5}.student .field-hint,.student .progress-stats,.student .track-meta{font-size:13px;line-height:1.5}.student .card.track.current{border-color:var(--accent);background:var(--accent-soft)}.student .card.levels-card,.student .card.progress-card,.student .card.track,.student .card.track-hero,.student .card.wotd-card{box-shadow:var(--shadow)}.student .lvl{box-shadow:none;border:1px solid var(--line);background:var(--surface-2)}.student .lvl.current{border-color:var(--accent);background:var(--accent-soft)}.student .bar,.student .week-dot{box-shadow:none}.student .goal-disc,.student .goal-inner,.student .goal-rim{opacity:.3}.student .meaning-box{background:var(--surface-2);border:0;box-shadow:none;padding:20px;border-radius:12px}.student .gist{font-size:clamp(22px,3vw,28px);line-height:1.4}.student .also li,.student .gist-full,.student .use-it li{font-size:16px;line-height:1.65}.student .reveal-grid.two{grid-template-columns:1fr}.student .reveal{align-content:start;gap:20px}.student .dictionary-link{margin-left:auto;color:var(--accent-fg);font-size:13px;text-underline-offset:3px}.student .word-link{text-decoration:none;color:var(--text)}.student .settings-advanced,.student .word-more{border-top:1px solid var(--line);padding-top:16px}.admin-shell summary,.student summary{cursor:pointer;font-weight:600;line-height:1.5}.admin-shell details[open]>summary,.student details[open]>summary{margin-bottom:16px}.student .word-more .rel-bar,.student .word-more>section{margin-top:16px}.student .form-card{gap:24px}.student .form-card h2{margin:0;font-size:20px}.student .settings-advanced[open]{display:grid;gap:16px}.student .form-actions{position:sticky;bottom:0;background:var(--surface);padding:16px 0;border-top:1px solid var(--line);z-index:2}.student .summary-context{color:var(--text-2);line-height:1.5}.student .summary-stats dt{font-size:13px;text-transform:none;letter-spacing:0}.student .session-progress span{background:var(--accent)}.student .got-xp{text-shadow:none;background:transparent}.student .option{min-height:56px;font-size:16px;line-height:1.5;box-shadow:none}.student .option.incorrect{animation:none}.student .success{color:var(--ok)}.student .error{color:var(--bad)}.student :where(textarea,summary):focus-visible{outline:2px solid var(--accent);outline-offset:3px}.admin-shell{font-family:DM Sans,Arial,sans-serif}html[data-theme-mode=light] .admin-shell{--text-3:#6d7f99}.admin-loading{display:grid;gap:14px;align-content:start;min-height:280px}.admin-loading-grid span,.admin-loading-line,.admin-loading-title{border-radius:8px;background:var(--surface);border:1px solid var(--line)}.admin-loading-title{width:min(280px,60%);height:28px}.admin-loading-line{width:min(460px,80%);height:14px}.admin-loading-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.admin-loading-grid span{height:92px}.side-pending{margin-left:auto;width:7px;height:7px;border-radius:50%;background:var(--side-indicator)}.admin-shell .page-head{margin-bottom:24px}.admin-shell .page-head h1{font-size:28px;letter-spacing:-.03em}.admin-shell .admin-note,.admin-shell .page-sub{font-size:14px;line-height:1.6}.admin-shell .admin-card{border-radius:12px;padding:20px}.admin-shell .admin-card.table-card{padding:0}.speech-log-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.speech-log-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-shell .speech-excel{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 16px 0 10px;border:0;border-radius:999px;background:#217346;color:#fff;font-weight:800;box-shadow:0 3px 0 #145332}.admin-shell .speech-excel svg{width:22px;height:22px;flex:none}.admin-shell .speech-excel:hover:not(:disabled){background:#1b8f4e;transform:translateY(-1px)}.admin-shell .speech-excel:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 0 #145332}.admin-shell .speech-excel:disabled{opacity:.55}.speech-log-note{max-width:72ch;margin:-8px 0 20px;color:var(--text-2);line-height:1.5}.admin-workspace:has(.speech-log-head) .admin-card{margin-top:16px}.admin-workspace:has(.speech-log-head) .admin-card.table-card{padding:16px 0 8px}.admin-workspace:has(.speech-log-head) .admin-card.table-card h2{margin:0 16px 12px;font-size:16px}.admin-workspace:has(.speech-log-head) .admin-card.table-card>p{margin:0 16px 12px}.admin-workspace:has(.speech-log-head) .admin-card small{display:block;color:var(--text-3);font-size:12px}.admin-workspace:has(.speech-log-head) .admin-overview em{font-style:normal;color:var(--text-3);font-size:12px}.admin-shell .admin-table,.admin-shell .vocab-table{font-size:14px}.admin-shell .admin-table th,.admin-shell .vocab-table th{font-size:12px;letter-spacing:0;text-transform:none;padding:12px 16px}.admin-shell .admin-table td,.admin-shell .vocab-table td{padding:12px 16px}.admin-shell :where(input:not([type=checkbox],[type=radio],[type=file]),select,textarea){font-size:14px;min-height:38px}.admin-shell .compact-btn,.admin-shell .icon-btn,.admin-shell :where(button:not(.side-link,.notice-close)){min-height:36px;font-size:13px}.admin-shell .icon-btn{width:36px}.admin-shell .nav-label{font-size:11px}.admin-shell .side-link{min-height:42px;font-size:14px;border-radius:8px}.admin-shell .admin-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}.admin-shell .admin-overview>*{display:grid;gap:5px;text-align:left;text-decoration:none;background:var(--surface);color:var(--text);border:1px solid var(--line);padding:18px;border-radius:12px}.admin-shell .admin-overview strong{font-size:26px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.admin-shell .admin-overview span{font-size:13px;color:var(--text-2)}.admin-shell .admin-filterbar,.admin-shell .bulk-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin-bottom:16px}.admin-shell .admin-filterbar label{display:grid;gap:6px}.admin-shell .admin-filterbar label:first-child{flex:1 1;min-width:200px}.admin-shell .bulk-toolbar{padding:14px;background:var(--accent-soft);border-radius:8px}.admin-shell .bulk-toolbar label{display:flex;align-items:center;gap:8px}.admin-shell .pagination{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;color:var(--text-2);font-size:13px}.admin-shell .pagination>div{display:flex;gap:8px}.admin-shell .search-scope{font-size:14px;color:var(--text-2)}.admin-shell .row-feedback{display:block;font-size:12px;max-width:230px;padding-top:4px;color:var(--text-2)}.admin-shell .undo-bar{display:flex;align-items:center;gap:12px;margin:16px 0;padding:12px 16px;background:var(--accent-soft);border-radius:10px}.admin-shell .maintenance-menu{margin-left:auto;position:relative}.admin-shell .maintenance-menu[open]{padding:12px;border:1px solid var(--danger-line);border-radius:8px}.admin-shell .maintenance-menu button{margin:4px}.admin-shell .upload-card>summary{font-size:16px}.admin-shell .drawer-section>label{display:block;margin-bottom:8px;font-weight:600}.admin-shell .student-preview{background:var(--surface-2);margin:0 20px 16px;padding:16px;border-radius:10px;flex-shrink:0}.admin-shell .student-preview p{line-height:1.5}.admin-shell .notice.error{color:var(--danger);border:1px solid var(--danger-line)}.admin-shell summary:focus-visible{outline:2px solid var(--accent-fg);outline-offset:4px}.admin-mobile-head,.admin-nav-backdrop,.admin-shell .admin-nav-close{display:none}@media (max-width:979px){.student .dash-main,.student .dash-side{display:contents}.student .dash>.dash-side>.today-mini{order:-1}.student .dash{display:flex;flex-direction:column}.student .dash-main>*,.student .dash-side>*,.student .dash>*{width:100%}.student .dash .today-week{display:none}.student .today-mini{grid-template-columns:1fr auto}}@media (max-width:900px){.admin-mobile-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;border-bottom:1px solid var(--line);background:var(--surface)}.admin-mobile-head small{display:block;color:var(--text-3);font-weight:400;margin-top:3px}.admin-shell .admin-side{display:none}.admin-shell .admin-side.is-open{display:flex;position:fixed;inset:0 auto 0 0;width:min(320px,90vw);height:100dvh;z-index:100}.admin-shell .admin-side nav{display:grid;grid-template-columns:1fr}.admin-shell .admin-nav-close{display:block;margin-bottom:16px}.admin-nav-backdrop{display:block;position:fixed;inset:0;background:rgb(0 0 0/55%);z-index:99}.admin-shell .admin-main{padding:20px}.admin-shell .icon-btn,.admin-shell :where(button:not(.side-link,.notice-close)),.admin-shell select{min-height:44px}.admin-shell .icon-btn{width:44px}.admin-shell .vocab-table td.actions{position:sticky;right:0;background:var(--surface)}}@media (max-width:640px){.student .app{padding-left:16px;padding-right:16px}.student .s-top{margin-bottom:20px}.student .card{padding:20px}.student .tiles{grid-template-columns:1fr 1fr;gap:12px}.student .card.tile{min-height:144px;padding:16px}.student .card.tile.available{grid-column:1/-1;min-height:172px}.student .tile.available .tile-note{display:block}.student .tile.soon .tile-body strong{font-size:15px}.student .tile-icon{width:40px;height:40px}.student .study-card{padding:16px}.student .word-sub{flex-wrap:wrap}.student .dictionary-link{margin-left:0}.admin-shell .admin-overview{gap:8px}.admin-shell .admin-overview>*{padding:12px}.admin-shell .admin-overview strong{font-size:22px}.admin-shell .admin-card{padding:16px}.admin-shell .admin-card.table-card{padding:0}.admin-loading-grid{grid-template-columns:1fr}}@media (max-height:650px),(min-resolution:2dppx) and (max-width:360px){.student:has(.session){height:auto;min-height:100dvh;overflow:visible}.student:has(.session) .app{height:auto;min-height:100dvh}.student .session .study-card{overflow:visible;flex:none}.student .session .options,.student .session .reveal{overflow:visible}.student .session .card-actions{position:sticky;bottom:0;background:var(--surface);padding:12px 0}}html[data-theme] .student .card.card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}html[data-theme] .student .card.card.tile{background:var(--surface);border:1px solid var(--line);box-shadow:none}html[data-theme] .student .card.card.tile.soon{background:var(--surface);border-style:dashed}html[data-theme] .student .card.card.tile.available{background:var(--accent-soft);border-color:var(--accent)}html[data-theme] .student .card.card.tile:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--text)}html[data-theme] .student .card.card.today-mini{border-top:3px solid var(--accent)}html[data-theme] .student .card.card.track.current{background:var(--accent-soft);border-color:var(--accent)}html[data-theme] .student .word-search,html[data-theme] .student .word-search-field{background:var(--surface);box-shadow:none;border-radius:12px}html[data-theme] .student .s-avatar-btn,html[data-theme] .student .s-pill{background:var(--surface);border:1px solid var(--line);box-shadow:none}html[data-theme] .student .s-avatar{color:var(--accent-fg)}html[data-theme] .student .eyebrow{background:none;box-shadow:none;border:0;padding-left:0;letter-spacing:.06em}html[data-theme] .student .progress-row{background:var(--surface);box-shadow:none;border-color:var(--line)}html[data-theme] .student .progress-row.current{background:var(--accent-soft);border-color:var(--accent)}html[data-theme] .student .week-dot{background:var(--surface-2);border-color:var(--line-2);box-shadow:none}html[data-theme] .student .week li.on .week-dot{background:var(--accent-soft);color:var(--accent-fg)}html[data-theme] .student .week li.today .week-dot{border-color:var(--accent);box-shadow:none}html[data-theme] .student .bar,html[data-theme] .student .bar>span{box-shadow:none}html[data-theme] .student .bar>span{background:var(--tone,var(--accent))}.admin-shell details.drawer-section{display:block}@media (max-width:979px){.student .dash .today-mini{order:-1}}.admin-shell fieldset.drawer-body{border:0;margin:0;min-width:0}.admin-shell .vocab-table td:has(>input[type=checkbox]),.admin-shell .vocab-table th:has(input[type=checkbox]){width:48px}.admin-shell .readiness-counts{font-size:14px;color:var(--text-2)}.admin-shell .readiness-counts strong{color:var(--text)}.admin-shell .enrich-details{margin-top:16px}.admin-shell .drawer-section textarea{width:100%}.admin-shell .student-preview{margin:16px 0}@media (max-width:640px){.admin-shell .drawer-section.two{grid-template-columns:1fr}.admin-shell .cat-row{flex-wrap:wrap;row-gap:8px}.admin-shell .cat-actions{margin-left:auto}.student .word-line{align-items:flex-start}.student .tongue-stack{text-align:left;align-items:flex-start}}html[data-theme] .student{--btn-bg:#087663;--btn-hover:#065b4d;--text-3:#adbbb5}html[data-theme-mode=light] .student{--text-3:#53675e;--ok:#08794f;--bad:#b33420}html[data-theme=cobalt] .student,html[data-theme=midnight] .student{--btn-bg:#315fc4;--btn-hover:#254a9a}html[data-theme=plum] .student{--btn-bg:#7540b5;--btn-hover:#5e3095}html[data-theme=wine] .student{--btn-bg:#a32762;--btn-hover:#81204e}html[data-theme=ember] .student{--btn-bg:#aa431f;--btn-hover:#893619}html[data-theme=dune] .student{--btn-bg:#a87832;--btn-hover:#8a6224}html[data-theme] .admin-shell{--bg:#eef1f6;--surface:#ffffff;--surface-2:#f6f8fb;--surface-hover:#eef2f7;--line:#d7e0ea;--line-strong:#c5d0de;--text:#1a2744;--text-2:#44556e;--text-3:#6b7c93;--input-bg:#ffffff;--accent:#1e3a5f;--accent-hover:#16304f;--accent-fg:#1e4a8a;--accent-soft:#e7eef6;--accent-ring:rgba(30,58,95,0.16);--btn-bg:#ffffff;--btn-line:#c5d0de;--btn-hover:#f4f7fb;--btn-text:#1a2744;--side-bg:#070d18;--side-line:rgba(255,255,255,0.12);--side-text:rgba(236,242,249,0.88);--side-strong:#ffffff;--side-muted:rgba(236,242,249,0.55);--side-hover:rgba(255,255,255,0.08);--side-active-bg:rgba(255,255,255,0.14);--side-active-text:#ffffff;--side-indicator:#f2c14e;background:#eef1f6;color:#1a2744;color-scheme:light}html[data-theme] .admin-shell .admin-main{background:radial-gradient(820px 240px at 8% -80px,rgba(30,58,95,.1),transparent 62%),linear-gradient(180deg,#f7f9fc,#e4ebf3);color:#1a2744}html[data-theme] .admin-shell .admin-side{background:radial-gradient(420px 180px at 20% -10%,rgba(120,164,214,.28),transparent 60%),linear-gradient(180deg,#1a3358,#0c1830 42%,#070d18);color:rgba(236,242,249,.88);box-shadow:inset -1px 0 0 rgba(255,255,255,.06)}html[data-theme] .admin-shell .admin-destinations .entitlement{position:absolute;top:22px;right:22px;z-index:1;max-width:calc(100% - 150px);margin:0;padding:6px 12px;border:1px solid #16304f;border-radius:999px;background:linear-gradient(180deg,#2c4c74,#1e3a5f);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 6px 14px rgba(16,36,68,.16);color:#ffffff;font-size:13px;font-style:normal;font-weight:700;letter-spacing:.01em;line-height:1.35;text-align:right}html[data-theme] .admin-shell .page-head,html[data-theme] .admin-shell .workspace-heading{margin-bottom:22px;padding:18px 20px 16px 18px;border:1px solid #c5d2e2;border-left:4px solid #1e3a5f;border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.72),transparent 46%),linear-gradient(135deg,#ffffff,#e7eef8);box-shadow:inset 0 1px 0 #ffffff,0 10px 24px rgba(16,36,68,.07)}html[data-theme] .admin-shell .page-head .admin-kicker,html[data-theme] .admin-shell .workspace-heading>p{display:inline-flex;width:fit-content;margin:0 0 8px;padding:4px 10px;border:1px solid #c5d4e6;border-radius:999px;background:linear-gradient(180deg,#ffffff,#e4edf7);box-shadow:inset 0 1px 0 #ffffff,0 1px 0 #d5deea;color:#1e3a5f;letter-spacing:.08em}html[data-theme] .admin-shell .admin-workspace>section>h2{display:flex;align-items:center;gap:10px;color:#1a2744}html[data-theme] .admin-shell .admin-workspace>section>h2:before{content:"";width:22px;height:4px;border-radius:99px;background:linear-gradient(90deg,#1e3a5f,#8aafd4);box-shadow:0 1px 0 rgba(255,255,255,.7)}html[data-theme] .admin-shell .admin-card,html[data-theme] .admin-shell .admin-destinations a,html[data-theme] .admin-shell .perm-board,html[data-theme] .admin-shell .perm-head,html[data-theme] .admin-shell .report-dialog,html[data-theme] .admin-shell .school-board button.school-card,html[data-theme] .admin-shell .settings-panel,html[data-theme] .admin-shell .translation-language{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.9),transparent 38%),linear-gradient(165deg,#ffffff,#e7eef8);border:1px solid #b9c9dc;border-top:3px solid #1e3a5f;box-shadow:inset 0 1px 0 #ffffff,0 1px 0 #d7e2ef,0 14px 28px rgba(16,36,68,.09)}html[data-theme] .admin-shell .admin-destinations a{overflow:hidden;border-radius:16px;transition:transform .18s ease,box-shadow .18s ease}html[data-theme] .admin-shell .admin-destinations a:hover,html[data-theme] .admin-shell .school-board button.school-card:hover:not(:disabled){transform:translateY(-3px);border-color:#8ea6c4;box-shadow:inset 0 1px 0 #ffffff,0 18px 32px rgba(16,36,68,.14)}html[data-theme] .admin-shell .admin-destinations a>span{display:inline-flex;width:fit-content;padding:4px 10px;border:1px solid #c5d4e6;border-radius:999px;background:linear-gradient(180deg,#ffffff,#e4edf7);box-shadow:inset 0 1px 0 #ffffff,0 1px 0 #d5deea;color:#1e3a5f}html[data-theme] .admin-shell .admin-destinations h3{color:#122038}html[data-theme] .admin-shell .admin-context a{color:#1e3a5f}html[data-theme] .admin-shell .admin-destinations strong{margin-top:14px}html[data-theme] .admin-shell .admin-destinations strong,html[data-theme] .admin-shell .overview-settings>a{display:inline-flex;width:fit-content;padding:8px 12px;border-radius:10px;background:linear-gradient(180deg,#2d527f,#16324f);color:#ffffff;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 2px 0 #0c1a2c}html[data-theme] .admin-shell .overview-settings>a{align-items:center;margin-top:0;text-decoration:none}html[data-theme] .admin-shell .admin-overview>*,html[data-theme] .admin-shell .licence-summary article{overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.85),transparent 42%),linear-gradient(165deg,#ffffff,#e4edf7);border:1px solid #b9c9dc;border-top:4px solid #1e3a5f;box-shadow:inset 0 1px 0 #ffffff,0 10px 20px rgba(16,36,68,.08)}html[data-theme] .admin-shell .admin-table th,html[data-theme] .admin-shell .perm-grid thead th,html[data-theme] .admin-shell .vocab-table th{color:#e8eef6;background:linear-gradient(180deg,#2a4d78,#152c4a);box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}html[data-theme] .admin-shell .admin-table tbody tr:nth-child(2n),html[data-theme] .admin-shell .vocab-table tbody tr:nth-child(2n){background:#f3f7fc}html[data-theme] .admin-shell .admin-filterbar,html[data-theme] .admin-shell .bulk-toolbar{padding:12px;border:1px solid #c5d2e2;border-radius:14px;background:linear-gradient(180deg,#ffffff,#e8eef7);box-shadow:inset 0 1px 0 #ffffff,0 8px 16px rgba(16,36,68,.05)}html[data-theme] .admin-shell .admin-overview strong,html[data-theme] .admin-shell .licence-summary strong{color:#12243d}html[data-theme] .admin-shell .admin-theme-grid button[aria-pressed=true] small,html[data-theme] .admin-shell .appendix-tabs button.on,html[data-theme] .admin-shell .bucket-tabs button.on,html[data-theme] .admin-shell .font-options button[aria-pressed=true] span,html[data-theme] .admin-shell .licence-tabs button[aria-selected=true]{color:#ffffff}html[data-theme] .admin-shell .cat-row{background:linear-gradient(180deg,#ffffff,#f3f7fb);box-shadow:inset 0 1px 0 #ffffff}html[data-theme] .admin-shell .cat-row:hover{background:linear-gradient(180deg,#f8fbff,#e3edf8)}html[data-theme] .admin-shell .cat-row.open,html[data-theme] .admin-shell .cat-row.open:hover{background:linear-gradient(90deg,#152844,#2a4d78);box-shadow:inset 0 1px 0 rgba(255,255,255,.16)}html[data-theme] .admin-shell .cat-row.open .cat-count,html[data-theme] .admin-shell .cat-row.open .cat-folder,html[data-theme] .admin-shell .cat-row.open .cat-grip,html[data-theme] .admin-shell .cat-row.open .cat-name,html[data-theme] .admin-shell .cat-row.open .cat-twist{color:#f4f7fb}html[data-theme] .admin-shell .cat-row.sub,html[data-theme] .admin-shell .cat-row.sub:hover{background:#f6f3ec;box-shadow:inset 4px 0 0 #d9c79a}html[data-theme] .admin-shell .cat-row.sub .cat-folder,html[data-theme] .admin-shell .cat-row.sub .cat-name,html[data-theme] .admin-shell .cat-row.sub .cat-twist{color:#3f3422}html[data-theme] .admin-shell .cat-row.sub.open,html[data-theme] .admin-shell .cat-row.sub.open:hover{background:linear-gradient(90deg,#3d3424,#5c4b32);box-shadow:inset 0 1px 0 rgba(255,255,255,.14)}html[data-theme] .admin-shell .cat-row.sub.open .cat-count,html[data-theme] .admin-shell .cat-row.sub.open .cat-folder,html[data-theme] .admin-shell .cat-row.sub.open .cat-grip,html[data-theme] .admin-shell .cat-row.sub.open .cat-name,html[data-theme] .admin-shell .cat-row.sub.open .cat-twist{color:#f8f3e8}html[data-theme] .admin-shell .admin-theme-grid button,html[data-theme] .admin-shell .appendix-tabs button,html[data-theme] .admin-shell .bucket-tabs button,html[data-theme] .admin-shell .font-options button,html[data-theme] .admin-shell .licence-tabs button,html[data-theme] .admin-shell .settings-layout>nav a{background:linear-gradient(180deg,#ffffff,#e7eef8);border:1px solid #c5d2e2;box-shadow:inset 0 1px 0 #ffffff,0 2px 0 #d4deea,0 4px 8px rgba(16,32,58,.05)}html[data-theme] .admin-shell .admin-theme-grid button[aria-pressed=true],html[data-theme] .admin-shell .appendix-tabs button.on,html[data-theme] .admin-shell .bucket-tabs button.on,html[data-theme] .admin-shell .font-options button[aria-pressed=true],html[data-theme] .admin-shell .licence-tabs button[aria-selected=true],html[data-theme] .admin-shell .settings-layout>nav a[aria-current=page]{background:linear-gradient(180deg,#2c4c74,#12243d);color:#ffffff;border-color:#0c182c;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 3px 0 #0a1220}.admin-shell .discard-notice{flex-basis:100%;border:1px solid var(--danger-line);border-radius:10px;padding:16px;background:var(--danger-bg)}.admin-shell .discard-notice p{font-size:14px}.admin-shell .discard-notice button{margin-right:8px}.admin-shell .drawer-foot{flex-wrap:wrap}.perm-screen{display:grid;gap:14px}.admin-shell .admin-main>.perm-screen{max-width:none}.perm-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.perm-head h1{display:flex;align-items:center;gap:10px;margin:0;font-size:28px;letter-spacing:-.03em}.perm-head h1 svg{width:22px;height:22px;color:var(--accent)}.perm-head p{max-width:640px;margin:6px 0 0;color:var(--text-2);line-height:1.55}.perm-actions{display:flex;flex-wrap:wrap;gap:8px}.perm-unsaved{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--warn-text);background:var(--warn-bg);border:1px solid color-mix(in srgb,var(--warn-text) 35%,transparent);border-radius:99px;padding:3px 8px}.perm-board{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.perm-loading{margin:0;padding:48px 16px;text-align:center;color:var(--text-3)}.perm-scroll{overflow-x:auto}.perm-grid{width:100%;min-width:780px;border-collapse:collapse}.perm-grid td,.perm-grid th{border-bottom:1px solid var(--line)}.perm-grid thead th{position:sticky;top:0;z-index:2;padding:14px 12px 12px;vertical-align:bottom;text-align:center}.perm-grid td:first-child,.perm-grid thead th:first-child{position:sticky;left:0;z-index:1;min-width:220px;text-align:left;background:var(--surface)}.perm-grid thead th:first-child{z-index:3;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.perm-grid .perm-col{min-width:132px;border-left:1px solid var(--line);text-align:center}.perm-bar{display:block;height:4px;margin:-14px -12px 10px;border-radius:4px 4px 0 0;background:var(--perm-bar)}.perm-names{flex-direction:column;align-items:center;justify-content:flex-end;gap:4px}.perm-hint,.perm-names{display:flex;min-height:44px}.perm-hint{align-items:flex-end;justify-content:center;font-size:12px;font-style:italic;font-weight:600;color:var(--perm-ink)}.perm-chip{gap:5px;max-width:124px;padding:3px 8px 3px 3px;border:1px solid color-mix(in srgb,var(--perm-bar) 35%,transparent);border-radius:99px;background:var(--surface);color:var(--perm-ink);font-size:11px;font-weight:700;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.perm-av,.perm-chip{display:inline-flex;align-items:center}.perm-av{justify-content:center;width:18px;height:18px;flex:none;border-radius:50%;background:var(--perm-bar);color:#fff;font-size:8px;font-weight:800}.perm-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:96px}.perm-corner{display:inline-flex;align-items:center;gap:7px}.perm-corner svg{width:13px;height:13px}.perm-grid thead strong{display:inline-block;padding:4px 11px;border-radius:7px;background:var(--perm-bar);color:#fff;font-size:11px;letter-spacing:.08em}.perm-grid thead strong,.perm-lock{margin-top:8px;text-transform:uppercase}.perm-lock{display:block;font-size:10px;font-weight:700;letter-spacing:.04em;color:var(--perm-ink)}.perm-bulk{display:flex;justify-content:center;gap:5px;margin-top:8px}.admin-shell .perm-mini{min-height:0;padding:4px 8px;border-radius:6px;font-size:10px;font-weight:800;box-shadow:none}.admin-shell .perm-mini.on{background:var(--perm-bar);border-color:var(--perm-bar);color:#fff}.perm-col-admin,.perm-col-admin1,.perm-col-demo,.perm-col-user,.perm-col-user4{--perm-bar:#1e3a5f;--perm-ink:#1e3a5f;background:color-mix(in srgb,#1e3a5f 6%,var(--surface))}html[data-theme] .admin-shell .perm-bar{display:none}html[data-theme] .admin-shell .perm-grid thead .perm-chip,html[data-theme] .admin-shell .perm-grid thead .perm-hint{color:#e8eef6}html[data-theme] .admin-shell .perm-grid thead strong,html[data-theme] .admin-shell .perm-mini.on{background:linear-gradient(180deg,#ffffff,#e4edf7);border-color:#d5e0ee;color:#1e3a5f;box-shadow:inset 0 1px 0 #ffffff,0 1px 0 rgba(8,16,32,.28)}html[data-theme] .admin-shell .perm-mini:not(.on){background:transparent;border-color:rgba(232,238,246,.45);color:#e8eef6}.perm-grid tbody td{padding:10px 12px}.admin-shell button.perm-folder{display:inline-flex;align-items:center;gap:8px;min-height:0;padding:0;border:0;background:none;box-shadow:none;color:var(--text);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.admin-shell button.perm-folder svg,.perm-actions svg{width:14px;height:14px}.admin-shell button.perm-folder:hover{background:none;border-color:transparent;color:var(--text)}.admin-shell button.perm-folder[aria-expanded=true] svg{transform:rotate(90deg)}.perm-folder small,.perm-tag{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3)}.perm-page{padding-left:42px!important;font-weight:500}.perm-tag{margin-left:8px}.perm-tag.warn{color:var(--warn-text);background:var(--warn-bg);border-radius:99px;padding:1px 7px}.perm-grid input[type=checkbox]{width:16px;height:16px;accent-color:var(--perm-bar,var(--accent))}.perm-grid td:first-child{background:var(--surface)}.perm-grid tr.perm-branch td:first-child{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}@media (max-width:800px){.perm-head{flex-direction:column}.perm-head h1{font-size:22px}}.report-page{display:grid;gap:14px}.coverage-list{display:grid;gap:12px}.coverage-card header{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.coverage-card header span,.coverage-picks span{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3)}.coverage-card p{margin:6px 0 0;color:var(--text-2)}.coverage-picks{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.admin-shell .coverage-picks label{display:inline-flex;align-items:center;gap:6px;min-height:32px;margin:0;padding:4px 10px;border:1px solid var(--line);border-radius:999px;background:var(--bg);font-size:13px;font-weight:600;cursor:pointer}.assign-modal{width:min(860px,100%);max-height:min(86vh,820px);overflow:auto}.assign-group{margin:16px 0 0;padding:12px 14px 4px;border:1px solid var(--line);border-radius:12px}.assign-group legend{padding:0 6px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.assign-group>p{margin:0 0 8px;color:var(--text-2)}.assign-row{padding:8px 0 12px;border-top:1px solid var(--line)}.assign-row:first-of-type{border-top:0}.assign-row strong{display:flex;align-items:baseline;gap:8px}.assign-row small{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3)}.assign-standards{display:grid;gap:8px;margin-top:8px}.assign-standard{display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px;align-items:start}.assign-standard>span{padding-top:6px;font-size:12px;font-weight:800;letter-spacing:.04em;color:var(--text-2)}.assign-standard .coverage-picks{margin:0}.assign-summary{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;margin:0}.assign-summary span{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3)}.report-dialog-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px;background:rgba(6,12,16,.72)}.report-dialog{width:min(520px,100%);padding:22px 22px 18px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 24px 60px rgba(0,0,0,.35)}.report-dialog header p:last-child{margin:8px 0 0;color:var(--text-2);font-size:13.5px;line-height:1.55}.report-dialog h2{margin:2px 0 0;font-size:22px;letter-spacing:-.03em}.report-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.report-date-grid label{display:grid;gap:6px;color:var(--text-3);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.admin-shell .report-date-grid input[type=date]{width:100%;min-height:44px;padding:0 12px;color-scheme:light;font-size:15px;font-weight:600;letter-spacing:0;text-transform:none}html[data-theme-mode=light] .admin-shell .report-date-grid input[type=date]{color-scheme:light}.report-span{margin:14px 0 0;color:var(--text-2);font-size:13px}.report-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}@media (max-width:560px){.report-date-grid{grid-template-columns:1fr}}.coverage-picks span{display:inline-flex;align-items:center;min-height:32px;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--text);text-transform:none;letter-spacing:0}.admin-shell .admin-note.error,.admin-shell .notice.error,.student .s-notice.error{border-color:var(--danger-line,var(--bad));color:var(--danger,var(--bad))}.admin-shell .admin-note.success,.admin-shell .notice.success,.student .s-notice.success{color:var(--ok-text,var(--ok));background:var(--ok-bg,var(--ok-soft))}.admin-shell .notice.warning,.student .s-notice.warning{color:var(--warn-text,var(--gold))}.student details.device-card{display:block}.student details.device-card[open]>div{margin-top:16px}:is([role=dialog],[role=alertdialog],dialog){caret-color:transparent}:is([role=dialog],[role=alertdialog],dialog) :is(input,textarea,[contenteditable]:not([contenteditable=false])),:is([role=dialog],[role=alertdialog],dialog) [contenteditable]:not([contenteditable=false]) *{caret-color:auto}