:root{--night-950:#0a120f;--night-900:#0d1713;--night-800:#15231c;--night-700:#1d3027;--night-line:rgb(234 243 236/0.16);--on-night:#eaf3ec;--on-night-muted:#a9bfb0;--paper-100:#f6eedb;--paper-200:#ece0c4;--paper-line:rgb(42 33 24/0.22);--paper-ink:#2a2118;--ink-muted:#5e4b36;--ink-blue:#1f3d7a;--wood-900:#24150a;--wood-800:#36210f;--wood-700:#4a2f1a;--wood-600:#6c4629;--wood-edge:#8a5a2e;--wood-line:#24140a;--on-wood:#f4e8cf;--on-wood-muted:#d9c3a0;--gold-text:#ffe6a0;--brass-300:#f3d892;--brass-400:#e8c46a;--brass-500:#c99a45;--brass-600:#b8892f;--on-brass:#2a1606;--aurora:#5ee0a0;--aurora-ink:#1f7a52;--danger:#b42a37;--info:#2560a8;--warn:#9a4c0c;--success:#27784a;--hp:#d64545;--mana:#3d7fe0;--energy:#e8b83a;--xp:#9b6ff0;--font-ui:var(--font-body-family,"Figtree"),system-ui,sans-serif;--font-read:var(--bk-body,"Crimson Pro"),"Noto Serif",Georgia,serif;--font-title:var(--bk-head,var(--font-display-family,"Playfair Display")),"Noto Serif",Georgia,serif;--font-hand:var(--bk-hand,"Patrick Hand"),cursive;--t-12:12px;--t-14:14px;--t-16:16px;--t-20:20px;--t-24:24px;--t-32:32px;--t-44:44px;--r-xs:4px;--r-sm:8px;--r-md:12px;--r-lg:18px;--r-pill:999px;--sh-1:0 1px 0 rgb(0 0 0/0.25),0 2px 6px rgb(0 0 0/0.18);--sh-2:0 10px 28px rgb(0 0 0/0.32);--sh-3:0 24px 64px rgb(0 0 0/0.5);--pixel-edge:0 2px 0 rgb(0 0 0/0.35);--m-fast:120ms;--m-base:200ms;--m-slow:400ms;--ease:cubic-bezier(0.23,1,0.32,1);--focus-ring:0 0 0 2px var(--paper-ink),0 0 0 4px var(--aurora);--hit:40px;--hit-big:48px}@media (prefers-reduced-motion:reduce){:root{--m-fast:0ms;--m-base:0ms;--m-slow:0ms}}button,input,select,textarea{font:inherit}:where(.bk-face,.bk-wide-sheet) button,:where(.bk-face,.bk-wide-sheet) input,:where(.bk-face,.bk-wide-sheet) select,:where(.bk-face,.bk-wide-sheet) textarea{font:revert}.ui-key{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:6px;border:1px solid;font:700 var(--t-12) /1 var(--font-ui);opacity:.8}.ui-answer{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;min-height:var(--hit-big);padding:6px 10px 6px 8px;border-radius:var(--r-md);border:1.5px solid var(--paper-line);background:#fffaf0;color:var(--paper-ink);font:600 16px/1.25 var(--font-ui);text-align:left;cursor:pointer;box-shadow:var(--pixel-edge);transition:transform var(--m-fast) var(--ease),border-color var(--m-fast) var(--ease),background-color var(--m-fast) var(--ease)}.ui-answer:hover:not(:disabled){border-color:var(--brass-600)}.ui-answer:active:not(:disabled){transform:translateY(1px)}.ui-answer>.ui-answer-letter{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1.5px solid var(--paper-ink);font:800 15px/1 var(--font-ui)}.ui-answer>.ui-key{color:var(--ink-muted);background:var(--paper-200);border-color:var(--paper-line);opacity:1}.ui-answer[data-state=right]{border-color:var(--success);background:#eaf6ee}.ui-answer[data-state=right]>.ui-answer-letter{background:var(--success);border-color:var(--success);color:#fff}.ui-answer[data-state=wrong]{border-color:var(--danger);background:#fbeaea}.ui-answer[data-state=wrong]>.ui-answer-letter{background:var(--danger);border-color:var(--danger);color:#fff}.ui-answer[data-state=crossed]{opacity:.45;text-decoration:line-through;cursor:default}.ui-answer[data-state=dim]{opacity:.6}.ui-dialog{width:min(440px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:0;border:2px solid var(--wood-edge);border-radius:var(--r-lg);background:linear-gradient(160deg,var(--wood-700),var(--wood-800));color:var(--on-wood);box-shadow:inset 0 0 0 1px rgb(255 230 180/.12),var(--sh-3);font:400 var(--t-14) /1.45 var(--font-ui)}.ui-dialog::-webkit-backdrop{background:rgb(6 12 9/.55)}.ui-dialog::backdrop{background:rgb(6 12 9/.55)}.ui-dialog-title{margin:0;padding:14px 18px 10px;font:700 var(--t-20) /1.2 var(--font-title)}.ui-dialog-body{margin:0 8px;padding:14px;border-radius:var(--r-md);background:var(--paper-100);color:var(--paper-ink);font-size:15px}.ui-dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;padding:12px 14px 14px}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--hit);padding:0 16px;border-radius:var(--r-md);border:1px solid transparent;font:700 var(--t-14) /1 var(--font-ui);white-space:nowrap;cursor:pointer;transition:transform var(--m-fast) var(--ease)}.ui-btn:active:not(:disabled){transform:translateY(1px)}.ui-btn:disabled{opacity:.55;cursor:default}.ui-btn.primary{background:linear-gradient(var(--brass-300),var(--brass-400) 45%,var(--brass-600));border-color:#7a5a1c;color:var(--on-brass);box-shadow:var(--pixel-edge)}.ui-btn.secondary{border-color:currentColor}.ui-btn.quiet,.ui-btn.secondary{background:transparent;color:inherit}.ui-btn.quiet:hover{background:rgb(127 127 127/.14)}.ui-btn.danger{background:var(--danger);border-color:#7d1720;color:#fff;box-shadow:var(--pixel-edge)}.ui-toasts{position:fixed;top:60px;left:50%;transform:translateX(-50%);z-index:2000;display:grid;justify-items:center;grid-gap:8px;gap:8px;width:min(560px,calc(100vw - 32px));pointer-events:none}.ui-toast{display:inline-flex;align-items:center;gap:10px;min-height:44px;max-width:100%;padding:8px 10px 8px 14px;border-radius:var(--r-md);border:1px solid var(--night-line);background:color-mix(in oklab,var(--night-800) 96%,transparent);color:var(--on-night);box-shadow:var(--sh-2);font:600 var(--t-14) /1.35 var(--font-ui);pointer-events:auto;animation:ui-toast-in var(--m-base) var(--ease)}.ui-toast>.ui-ico{flex:none;color:var(--aurora)}.ui-toast[data-kind=warn]>.ui-ico{color:var(--brass-400)}.ui-toast[data-kind=error]>.ui-ico{color:#ff8f8f}.ui-toast-x{flex:none;display:grid;place-items:center;width:28px;height:28px;margin-left:4px;padding:0;border:0;border-radius:var(--r-sm);background:transparent;color:var(--on-night-muted);cursor:pointer}.ui-toast-act{min-height:32px;padding:0 12px;font-size:13px}@keyframes ui-toast-in{0%{opacity:0;transform:translateY(-8px)}}.ui-ico{flex:none;vertical-align:-.18em}:root{--bg:#f3eee4;--bg-elevated:#faf7f1;--bg-ink:#1a1714;--fg:#1a1714;--fg-muted:#6b6459;--fg-subtle:#716a60;--border:color-mix(in oklab,var(--fg) 12%,transparent);--border-strong:color-mix(in oklab,var(--fg) 22%,transparent);--accent:#215544;--accent-fg:#f3eee4;--accent-soft:color-mix(in oklab,var(--accent) 12%,var(--bg));--shadow:0 1px 0 color-mix(in oklab,var(--fg) 6%,transparent),0 12px 32px color-mix(in oklab,var(--fg) 6%,transparent);--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--font-display:var(--font-display-family),"Times New Roman",serif;--font-body:var(--font-body-family),system-ui,sans-serif;--text-xs:0.75rem;--text-sm:0.9375rem;--text-base:1.0625rem;--text-lg:clamp(1.125rem,1rem + 0.4vw,1.25rem);--text-xl:clamp(1.5rem,1.2rem + 1vw,2rem);--text-2xl:clamp(2rem,1.3rem + 2.2vw,3rem);--text-3xl:clamp(2.75rem,1.5rem + 4.2vw,4.75rem);--leading-tight:1.08;--leading-snug:1.25;--leading-normal:1.55;--tracking-display:-0.03em;--motion-quick:150ms;--motion-fast:250ms;--ease-out:cubic-bezier(0.23,1,0.32,1);--header-bg:#f3eee4;--header-fg:#1a1714;--header-muted:#5c564c;--header-line:color-mix(in oklab,var(--fg) 14%,transparent);--header-sky:linear-gradient(#efe8dc,#f3eee4);--header-glow:none;--header-account-border:color-mix(in oklab,var(--fg) 22%,transparent);--ridge-opacity:0}html[data-theme=aurora]{--bg:#0c1612;--bg-elevated:#142019;--bg-ink:#06100c;--fg:#e8f3ea;--fg-muted:#9fb6a6;--fg-subtle:#7e9788;--accent:#5ee0a0;--accent-fg:#06140f;--accent-soft:color-mix(in oklab,var(--accent) 16%,var(--bg));--border:color-mix(in oklab,var(--fg) 14%,transparent);--border-strong:color-mix(in oklab,var(--fg) 26%,transparent);--shadow:0 1px 0 color-mix(in oklab,#000 20%,transparent),0 18px 40px color-mix(in oklab,#000 28%,transparent);--header-bg:#07140f;--header-fg:#f4fff8;--header-muted:#d5eee0;--header-line:color-mix(in oklab,#9bffe0 18%,transparent);--header-sky:radial-gradient(ellipse 70% 140% at 12% 120%,rgba(64,230,160,0.42),transparent 58%),radial-gradient(ellipse 55% 120% at 62% -10%,rgba(132,96,255,0.38),transparent 55%),radial-gradient(ellipse 40% 90% at 92% 90%,rgba(60,200,255,0.28),transparent 50%),linear-gradient(#06130f,#0a1c16 70%,#08140f);--header-glow:0 0 10px rgba(120,255,200,0.65),0 0 28px rgba(150,120,255,0.45);--header-account-border:color-mix(in oklab,#9bffe0 40%,transparent);--ridge-opacity:1;--bg-art:radial-gradient(1200px 560px at 12% -160px,rgba(94,224,160,0.15),transparent 70%),radial-gradient(1000px 520px at 92% -140px,rgba(139,108,255,0.1),transparent 70%)}html[data-theme=boreal]{--bg:#122016;--bg-elevated:#1a2c20;--bg-ink:#0b140e;--fg:#e4eedc;--fg-muted:#a3b79a;--fg-subtle:#8aa082;--accent:#6fbf73;--accent-fg:#0d1a10;--accent-soft:color-mix(in oklab,var(--accent) 16%,var(--bg));--header-bg:#0e1a12;--header-fg:#eaf3e2;--header-muted:#c3d4b8;--header-line:color-mix(in oklab,#8fca84 20%,transparent);--header-sky:radial-gradient(ellipse at 30% 0%,rgba(90,160,80,0.35),transparent 55%),linear-gradient(#102016,#15261a);--header-glow:0 0 16px rgba(120,180,90,0.35);--header-account-border:color-mix(in oklab,#8fca84 40%,transparent);--ridge-opacity:0.9;--bg-art:radial-gradient(1200px 560px at 18% -160px,rgba(111,191,115,0.15),transparent 70%),radial-gradient(900px 480px at 96% -120px,rgba(196,215,178,0.05),transparent 70%)}html[data-theme=tundra]{--bg:#e7ebe4;--bg-elevated:#f3f4ef;--bg-ink:#2e342c;--fg:#2a3028;--fg-muted:#626a5f;--fg-subtle:#62695f;--accent:#5c6c51;--accent-fg:#f4f6f0;--accent-soft:color-mix(in oklab,var(--accent) 14%,var(--bg));--header-bg:#dfe4d8;--header-fg:#2a3028;--header-muted:#5c6558;--header-line:color-mix(in oklab,#2a3028 14%,transparent);--header-sky:linear-gradient(#d5ddd0,#e7ebe4);--header-glow:none;--header-account-border:color-mix(in oklab,#2a3028 22%,transparent);--ridge-opacity:0.25;--bg-art:radial-gradient(1300px 600px at 82% -180px,rgba(201,180,138,0.26),transparent 70%),radial-gradient(900px 500px at 4% -120px,rgba(122,139,120,0.1),transparent 70%)}html[data-theme=coast]{--bg:#0e1c24;--bg-elevated:#163038;--bg-ink:#071116;--fg:#e4f3f6;--fg-muted:#92b8c2;--fg-subtle:#7fa4af;--accent:#3aa3b8;--accent-fg:#062026;--accent-soft:color-mix(in oklab,var(--accent) 16%,var(--bg));--header-bg:#0b1820;--header-fg:#eaf8fb;--header-muted:#b5d4dc;--header-line:color-mix(in oklab,#7ad4e6 22%,transparent);--header-sky:radial-gradient(ellipse at 80% 0%,rgba(70,190,220,0.35),transparent 55%),linear-gradient(#0b1820,#123038);--header-glow:0 0 18px rgba(80,210,230,0.4);--header-account-border:color-mix(in oklab,#7ad4e6 40%,transparent);--ridge-opacity:0.7;--bg-art:radial-gradient(1200px 560px at 86% -160px,rgba(58,163,184,0.2),transparent 70%),radial-gradient(900px 480px at 6% -120px,rgba(226,244,247,0.04),transparent 70%)}html[data-theme=alpine]{--bg:#eef2f5;--bg-elevated:#ffffff;--bg-ink:#243038;--fg:#243038;--fg-muted:#5b6d7a;--fg-subtle:#5f6d78;--accent:#4d6d82;--accent-fg:#f4f8fb;--accent-soft:color-mix(in oklab,var(--accent) 12%,var(--bg));--header-bg:#e3eaf0;--header-fg:#243038;--header-muted:#4d5f6c;--header-line:color-mix(in oklab,#243038 14%,transparent);--header-sky:linear-gradient(#d5e0ea,#eef2f5);--header-glow:none;--header-account-border:color-mix(in oklab,#243038 22%,transparent);--ridge-opacity:0.35;--bg-art:radial-gradient(1400px 620px at 50% -220px,rgba(138,164,184,0.26),transparent 70%)}html[data-theme=basketball]{--bg:#1a120c;--bg-elevated:#271b12;--bg-ink:#100b08;--fg:#f3e6d2;--fg-muted:#c4a888;--fg-subtle:#a98c71;--accent:#d6722f;--accent-fg:#141412;--accent-soft:color-mix(in oklab,var(--accent) 18%,var(--bg));--header-bg:#140e09;--header-fg:#f8ead4;--header-muted:#e0c39a;--header-line:color-mix(in oklab,#e08a3c 28%,transparent);--header-sky:radial-gradient(ellipse at 20% 120%,rgba(196,92,26,0.45),transparent 55%),linear-gradient(#140e09,#1e140c);--header-glow:0 0 16px rgba(196,92,26,0.35);--header-account-border:color-mix(in oklab,#e08a3c 50%,transparent);--ridge-opacity:0.4;--bg-art:radial-gradient(1200px 560px at 18% -160px,rgba(214,114,47,0.2),transparent 70%),radial-gradient(800px 420px at 94% -100px,rgba(232,210,168,0.05),transparent 70%)}html[data-theme=mushing]{--bg:#f4f1ea;--bg-elevated:#fffdf8;--bg-ink:#1d2834;--fg:#1d2834;--fg-muted:#5a6a7a;--fg-subtle:#606d7b;--accent:#2c4c6e;--accent-fg:#f7f3ea;--accent-soft:color-mix(in oklab,var(--accent) 12%,var(--bg));--header-bg:#2c4c6e;--header-fg:#f7f3ea;--header-muted:#d5deea;--header-line:color-mix(in oklab,#c9842a 40%,transparent);--header-sky:linear-gradient(#243e5c,#2c4c6e 55%,#c9842a 160%);--header-glow:0 0 14px rgba(201,132,42,0.35);--header-account-border:color-mix(in oklab,#f7f3ea 45%,transparent);--ridge-opacity:0.2;--bg-art:radial-gradient(1200px 520px at 86% -180px,rgba(201,132,42,0.12),transparent 70%),radial-gradient(1000px 500px at 8% -160px,rgba(44,76,110,0.08),transparent 70%)}html[data-theme=light]{--bg:#f7f7f5;--bg-elevated:#ffffff;--bg-ink:#111111;--fg:#161616;--fg-muted:#5c5c5c;--fg-subtle:#707070;--accent:#222222;--accent-fg:#f7f7f5;--accent-soft:color-mix(in oklab,var(--accent) 8%,var(--bg));--header-bg:#ffffff;--header-fg:#161616;--header-muted:#4a4a4a;--header-line:color-mix(in oklab,#161616 12%,transparent);--header-sky:linear-gradient(#ffffff,#f7f7f5);--header-glow:none;--header-account-border:color-mix(in oklab,#161616 22%,transparent);--ridge-opacity:0}html[data-theme=dark]{--bg:#121212;--bg-elevated:#1c1c1c;--bg-ink:#000000;--fg:#ececec;--fg-muted:#a3a3a3;--fg-subtle:#8c8c8c;--accent:#e8e8e8;--accent-fg:#111111;--accent-soft:color-mix(in oklab,var(--accent) 10%,var(--bg));--header-bg:#0d0d0d;--header-fg:#f2f2f2;--header-muted:#c2c2c2;--header-line:color-mix(in oklab,#ffffff 12%,transparent);--header-sky:linear-gradient(#0d0d0d,#121212);--header-glow:none;--header-account-border:color-mix(in oklab,#ffffff 28%,transparent);--ridge-opacity:0;--bg-art:radial-gradient(1200px 560px at 50% -200px,rgba(255,255,255,0.045),transparent 70%)}html[data-theme=paper]{--bg:#f3eee4;--bg-elevated:#faf7f1;--bg-ink:#1a1714;--fg:#1a1714;--fg-muted:#6b6459;--fg-subtle:#716a60;--accent:#215544;--accent-fg:#f3eee4;--accent-soft:color-mix(in oklab,var(--accent) 12%,var(--bg));--header-bg:#ece6d8;--header-fg:#1a1714;--header-muted:#5c564c;--header-line:color-mix(in oklab,#1a1714 12%,transparent);--header-sky:linear-gradient(#e6dfd0,#f3eee4);--header-glow:none;--header-account-border:color-mix(in oklab,#1a1714 22%,transparent);--ridge-opacity:0}html[data-theme=aurora] body:before,html[data-theme=basketball] body:before,html[data-theme=boreal] body:before,html[data-theme=coast] body:before,html[data-theme=dark] body:before{opacity:.16;mix-blend-mode:overlay}*,:after,:before{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-height:100dvh;background-color:var(--bg);background-image:var(--bg-art,none);background-repeat:no-repeat;color:var(--fg);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal)}body:before{content:"";pointer-events:none;position:fixed;inset:0;z-index:0;opacity:.28;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E")}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.22em}[role=button]:not(:disabled),a,button:not(:disabled){cursor:pointer}:focus-visible{outline:2px solid var(--aurora);outline-offset:2px;box-shadow:0 0 0 2px var(--paper-ink)}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}.page{position:relative;z-index:1;min-height:100dvh;display:flex;flex-direction:column}.shell{width:min(1120px,calc(100% - 2 * var(--space-5)));margin-inline:auto}.site-header{position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid var(--header-line);background:var(--header-bg);color:var(--header-fg)}.aurora-sky{position:absolute;inset:0;z-index:0;pointer-events:none;background:var(--header-sky)}html[data-theme=aurora] .aurora-sky{animation:aurora-shift 14s ease-in-out infinite alternate;will-change:transform}.aurora-ridge{position:absolute;left:0;right:0;bottom:0;z-index:1;height:12px;pointer-events:none;opacity:var(--ridge-opacity);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 80' preserveAspectRatio='none'%3E%3Cpath fill='%23060f0c' d='M0 80V50l70-22 60 18 90-32 70 20 90-28 80 22 110-34 70 20 90-24 80 22 110-30 80 18 90-16 100 24v32z'/%3E%3Cpath fill='%23081410' d='M40 80 70 48l18 32h-48zm90 0 22-40 22 40zm70 0 16-28 16 28zm210 0 20-36 20 36zm160 0 14-26 14 26zm300 0 24-42 24 42z'/%3E%3C/svg%3E") no-repeat bottom /100% 12px}.site-header-inner{position:relative;z-index:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 16px;padding-block:4px}.wordmark{display:inline-flex;align-items:center;gap:var(--space-3);font-family:var(--font-display);font-size:1.15rem;font-weight:600;letter-spacing:.01em;text-decoration:none;min-height:36px;color:var(--header-fg);text-shadow:var(--header-glow)}html[data-theme=aurora] .wordmark{text-shadow:0 0 12px rgba(140,255,210,.65),0 0 28px rgba(160,125,255,.42),0 0 44px rgba(80,220,255,.2)}.wordmark[aria-current=page]{pointer-events:none}.nav{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4)}.nav,.nav a{align-items:center}.nav a{display:inline-flex;min-height:36px;color:var(--header-muted);text-decoration:none;font-size:.95rem;font-weight:600;letter-spacing:.02em;transition:color var(--motion-quick) var(--ease-out)}.nav a:focus-visible,.nav a:hover{color:var(--header-fg)}.nav a[aria-current=page]{color:var(--header-fg);text-decoration:underline;text-underline-offset:.28em}.nav-who{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;min-height:36px;margin-left:var(--space-2);max-width:180px;line-height:1.1}.nav-who-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--header-fg);font-size:.92rem;font-weight:700}.nav-who-role{color:var(--header-muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.nav-account{margin-left:var(--space-2);padding:6px 14px;min-height:36px;border:1px solid var(--header-account-border);border-radius:999px;color:var(--header-fg)}.nav-account:focus-visible,.nav-account:hover{text-decoration:none}.nav a.nav-who{display:flex;flex-direction:column;align-items:flex-end;padding:3px 12px;border:1px solid var(--header-account-border);border-radius:12px;text-decoration:none;transition:background var(--motion-quick) var(--ease-out),border-color var(--motion-quick) var(--ease-out)}.nav a.nav-who:focus-visible,.nav a.nav-who:hover,.nav a.nav-who[aria-current=page]{background:color-mix(in oklab,var(--header-fg) 10%,transparent);border-color:var(--header-fg);text-decoration:none}@keyframes aurora-shift{0%{transform:scale(1) translateX(0)}to{transform:scale(1.06) translateX(-2%)}}[data-offscreen],[data-offscreen] *,[data-offscreen] :after,[data-offscreen] :before,html[data-hidden] *,html[data-hidden] :after,html[data-hidden] :before{animation-play-state:paused!important}@media (prefers-reduced-motion:reduce){.aurora-sky,.wordmark{animation:none}}.settings-fold{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.settings-fold h2{margin:0;font-size:1.15rem}.settings-fold-head{display:flex;width:100%;align-items:center;justify-content:space-between;min-height:52px;padding:0 var(--space-5);border:0;background:transparent;color:inherit;font:inherit;font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;letter-spacing:var(--tracking-display);text-align:left;cursor:pointer}.settings-chevron{display:inline-block;font-size:1.4rem;line-height:1;transform:rotate(0deg);transition:transform var(--motion-quick) var(--ease-out)}.settings-fold-head[aria-expanded=true] .settings-chevron{transform:rotate(90deg)}.theme-choices{display:grid;grid-gap:var(--space-2);gap:var(--space-2);padding:0 var(--space-4) var(--space-4)}.theme-choice{display:flex;align-items:center;gap:var(--space-3);min-height:44px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:inherit;font:inherit;text-align:left;cursor:pointer}.theme-choice[data-active=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.theme-swatch{display:flex;width:42px;height:18px;overflow:hidden;border-radius:999px;border:1px solid var(--border);flex-shrink:0}.theme-swatch i{flex:1 1}@media (min-width:640px){.theme-choices{grid-template-columns:1fr 1fr}}main{flex:1 1}.hero{display:grid;grid-template-columns:1fr;grid-gap:var(--space-5);gap:var(--space-5);padding-block:var(--space-5) var(--space-4);align-items:center}.home-hero{display:block;text-align:center;padding-block:var(--space-5) var(--space-3)}.home-hero h1{margin:0 0 var(--space-2)}.home-hero .kicker{margin:0;font-size:clamp(1.15rem,1rem + 1vw,1.7rem);letter-spacing:.1em}.home-rooms{padding-bottom:var(--space-8)}.kicker{margin:0 0 var(--space-4);color:var(--accent);font-size:.8125rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.hero h1,.page-head h1{margin:0 0 var(--space-5);font-family:var(--font-display);font-size:var(--text-3xl);font-weight:400;line-height:var(--leading-tight);letter-spacing:var(--tracking-display)}.lede{margin:0;max-width:36rem;color:var(--fg-muted);font-size:var(--text-lg)}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-5);border-radius:var(--radius-sm);border:1px solid transparent;font-family:inherit;font-size:var(--text-sm);font-weight:600;letter-spacing:.01em;text-decoration:none;transition:background-color var(--motion-quick) var(--ease-out),color var(--motion-quick) var(--ease-out),border-color var(--motion-quick) var(--ease-out),transform var(--motion-quick) var(--ease-out)}.btn:active{transform:scale(.98)}.btn:disabled{cursor:not-allowed;opacity:.55}.btn-primary{background:var(--accent);color:var(--accent-fg)}.btn-primary:focus-visible,.btn-primary:hover{background:color-mix(in oklab,var(--accent) 88%,var(--fg))}.btn-ghost{background:transparent;color:var(--fg);border-color:var(--border-strong)}.btn-ghost:focus-visible,.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.section{padding-block:0 var(--space-8)}.card-grid{grid-template-columns:1fr;grid-gap:var(--space-4)}.card-grid,.class-board{display:grid;gap:var(--space-4)}.class-board{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:var(--space-4);padding-bottom:var(--space-8)}.class-tile-tools{position:absolute;right:0;bottom:0;z-index:5}.class-gear-menu{position:fixed;z-index:70;display:grid;min-width:180px;padding:.35rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated);box-shadow:var(--shadow)}.class-gear-menu button{display:block;width:100%;min-height:40px;padding:0 .75rem;border:0;border-radius:8px;background:transparent;color:inherit;font:inherit;text-align:left}.class-gear-menu button:focus-visible,.class-gear-menu button:hover{background:var(--accent-soft)}.class-gear-menu button[data-danger=true]{color:#8f2d22}.class-rename{position:absolute;inset:auto 8px 8px 8px;z-index:4;display:flex;gap:var(--space-2);align-items:center;padding:.4rem;border-radius:var(--radius-sm);background:var(--bg-elevated);box-shadow:var(--shadow)}.class-rename input{min-height:40px;flex:1 1;padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--fg);font:inherit}.card{display:flex;flex-direction:column;gap:var(--space-3);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:var(--shadow);text-decoration:none;color:inherit;min-height:100%;overflow:hidden;isolation:isolate;transition:border-color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}a.card:focus-visible,a.card:hover{border-color:color-mix(in oklab,var(--accent) 45%,var(--border));transform:translateY(-2px)}.home-card-copy{padding:var(--space-4) var(--space-5) var(--space-3)}.home-card img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.home-card{padding:0 0 var(--space-4);gap:0}.card h2,.card h3{margin:0;font-family:var(--font-display);font-size:var(--text-xl);font-weight:400;letter-spacing:var(--tracking-display)}.home-card h3{margin:0 0 var(--space-3);text-align:center;font-size:clamp(1.85rem,1.5rem + 1.1vw,2.5rem)}.card p,.home-card p{margin:0}.card p{color:var(--fg-muted);flex:1 1}.chip{display:inline-flex;align-items:center;min-height:28px;padding:0 var(--space-3);border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.chip-quiet{background:transparent;border:1px solid var(--border);color:var(--fg-muted)}.card-art{display:grid;place-items:center;height:160px;margin:calc(var(--space-5) * -1) calc(var(--space-5) * -1) 0;padding:0;border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--accent-soft);overflow:hidden}.card-preview{height:118px;border-radius:10px;overflow:hidden;background:var(--bg)}.card-preview img{width:100%;height:100%;object-fit:cover;display:block}.card-construction{position:relative;overflow:hidden}.construction-banner{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none}.construction-banner span{position:absolute;left:-28%;top:44%;width:156%;padding:.55rem 0;background:repeating-linear-gradient(-52deg,#161616 0 14px,#e2b00a 14px 28px);color:#111;font-size:.78rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase;text-align:center;transform:rotate(-21deg);box-shadow:0 8px 18px color-mix(in oklab,#000 35%,transparent);text-shadow:0 1px 0 color-mix(in oklab,#fff 55%,transparent)}.card-photo .card-art{height:min(52vw,280px)}.card-art img,.card-art svg{width:100%;height:100%;object-fit:cover;display:block}.card-photo{padding-top:0}.page-head{padding-block:var(--space-8) var(--space-6)}.page-head p{margin:0;max-width:40rem;color:var(--fg-muted)}.makerspace-hours{margin:0 0 var(--space-3)!important;color:var(--accent)!important;font-weight:700;letter-spacing:.04em}.stack{display:grid;grid-gap:var(--space-4);gap:var(--space-4);padding-bottom:var(--space-8)}.note{margin:0;color:var(--fg-muted);font-size:var(--text-sm)}.auth-panel{width:min(28rem,100%);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow);display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.field{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.field label{font-size:var(--text-sm);font-weight:600}.field input{min-height:44px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--fg);font:inherit;padding:0 var(--space-4)}.field input:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.form-status{margin:0;font-size:var(--text-sm);color:var(--fg-muted)}.form-status[data-kind=error]{color:#8f2d22}.form-status[data-kind=ok]{color:var(--accent)}.divider{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:var(--space-3);gap:var(--space-3);align-items:center;color:var(--fg-subtle);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase}.divider:after,.divider:before{content:"";height:1px;background:var(--border)}.table-wrap{overflow-x:auto;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg)}.user-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.user-table td,.user-table th{text-align:left;padding:var(--space-3) var(--space-4);vertical-align:middle;border-bottom:1px solid var(--border)}.user-table th{color:var(--fg-subtle);font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:var(--text-xs)}.user-table tr:last-child td{border-bottom:0}.table-sub{color:var(--fg-subtle);font-size:var(--text-xs);font-weight:400}.inline-actions,.inline-form{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.inline-form select{min-height:40px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--fg);font:inherit;padding:0 var(--space-3)}.pill{display:inline-flex;align-items:center;min-height:28px;padding:0 var(--space-3);border-radius:999px;font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;background:var(--accent-soft);color:var(--accent)}.pill[data-status=pending]{background:color-mix(in oklab,#b5812a 16%,var(--bg));color:#7a5410}.pill[data-status=denied]{background:color-mix(in oklab,#8f2d22 12%,var(--bg));color:#8f2d22}.gallery{display:grid;grid-template-columns:1fr;grid-gap:var(--space-4);gap:var(--space-4)}.carousel{margin-bottom:var(--space-7);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow);overflow:hidden}.carousel-stage{position:relative;display:block;width:100%;padding:0;border:0;background:var(--bg-ink);cursor:zoom-in}.carousel-stage img{display:block;width:100%;height:min(62vh,560px);object-fit:cover}.carousel-hint{position:absolute;right:var(--space-4);bottom:var(--space-4);padding:.35rem .7rem;border-radius:999px;background:color-mix(in oklab,var(--bg-ink) 55%,transparent);color:var(--accent-fg);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase}.carousel-bar{display:grid;grid-template-columns:auto 1fr auto;grid-gap:var(--space-3);gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4)}.carousel-caption{margin:0;text-align:center;color:var(--fg-muted);font-size:var(--text-sm)}.carousel-nav{min-height:40px;padding:0 var(--space-4);border:1px solid var(--border-strong);border-radius:999px;background:transparent;color:var(--fg);font:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer}.carousel-nav:focus-visible,.carousel-nav:hover{border-color:var(--accent);color:var(--accent)}.lightbox{position:fixed;inset:0;z-index:40;display:grid;place-items:center;grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-5);background:color-mix(in oklab,var(--bg-ink) 82%,transparent);cursor:zoom-out}.lightbox img{max-width:min(1100px,100%);max-height:82vh;object-fit:contain;border-radius:var(--radius-md);box-shadow:var(--shadow)}.lightbox p{margin:0;color:var(--accent-fg);font-size:var(--text-sm)}.guide-frame{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-elevated);min-height:70vh}.guide-frame iframe{display:block;width:100%;height:70vh;border:0}.plain-list{margin:0;padding-left:1.2rem;color:var(--fg-muted)}.link-stack,.plain-list{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.link-stack{margin-top:auto}.link-stack .btn{justify-content:flex-start}.page-head a{color:var(--accent);text-decoration:none}.page-head a:focus-visible,.page-head a:hover{text-decoration:underline}@media (min-width:720px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:880px){.hero:not(.home-hero){grid-template-columns:1.1fr .9fr;gap:var(--space-6);padding-block:var(--space-5) var(--space-4)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}}.catalog-shell{width:min(1240px,calc(100% - 2 * var(--space-5)))}.catalog{display:grid;grid-gap:var(--space-6);gap:var(--space-6);padding-bottom:var(--space-8)}.catalog-filters{z-index:8;display:grid;grid-gap:var(--space-3);gap:var(--space-3);align-content:start}.catalog-filters,.filter-menu{position:relative}.filter-menu-head{display:flex;width:100%;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:inherit;font:inherit;font-size:var(--text-sm);font-weight:600;text-align:left;cursor:pointer}.filter-menu-head .settings-chevron{margin-left:auto}.filter-menu[data-open=true] .settings-chevron{transform:rotate(90deg)}.filter-count{min-width:1.4em;padding:0 .35em;border-radius:999px;background:var(--accent);color:var(--accent-fg);font-size:.75rem;text-align:center}.filter-panel{position:absolute;top:calc(100% + 4px);left:0;z-index:20;width:max(260px,100%);max-height:min(50vh,360px);overflow:auto;padding:var(--space-3);display:grid;grid-gap:.4rem;gap:.4rem;background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow)}.filter-panel label{color:var(--fg)}.filter-check,.filter-panel label,.filter-search{display:flex;gap:.5rem;align-items:flex-start;font-size:var(--text-sm)}.filter-check,.filter-search{color:var(--fg-muted)}.filter-search{flex-direction:column}.card input,.card select,.filter-search input{width:100%;min-height:40px;padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--fg);font:inherit}.card label{display:grid;grid-gap:.35rem;gap:.35rem;font-size:var(--text-sm);color:var(--fg-muted)}.catalog-grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}@media (min-width:860px){.catalog{grid-template-columns:220px minmax(0,1fr)}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.stage-root{position:fixed;inset:0;z-index:40;display:grid;place-items:center;background:#000;overflow:hidden}.stage-root:has([data-atmosphere=lesson]){background:var(--bg);place-items:start center}.stage-frame{position:relative;transform-origin:center center;overflow:hidden;color:#eaf4ff}.stage-frame[data-atmosphere=space]{background:radial-gradient(ellipse at 20% 0,rgba(90,60,180,.35),transparent 45%),radial-gradient(ellipse at 80% 100%,rgba(20,80,90,.4),transparent 50%),#05070d}.stage-frame[data-atmosphere=shop]{background:#1a140c;color:#f6efe2}.ws-play{position:relative;overflow:hidden}.ws-canvas,.ws-play{width:100%;height:100%}.ws-canvas{position:absolute;inset:0;touch-action:none;cursor:-webkit-grab;cursor:grab}.ws-panel-dock{position:absolute;left:auto;right:178px;transform:none;width:560px;height:136px;bottom:28px;z-index:5;display:flex;flex-direction:row;align-items:stretch;gap:8px;padding:6px 8px;box-sizing:border-box;color:#1a3040;background-color:#f6f1dc;background-image:linear-gradient(rgba(70,150,165,.28) 1px,transparent 0),linear-gradient(90deg,rgba(70,150,165,.22) 1px,transparent 0);background-size:16px 16px;background-position:8px 6px;border:9px solid #6e4524;border-radius:4px;box-shadow:inset 0 0 0 2px #d2ae72,3px 6px 14px rgba(0,0,0,.45)}.ws-nail{top:-7px;width:16px;height:16px;transform:translateX(-50%);background:radial-gradient(circle at 35% 30%,#f0f0f0,#8a8a8a 52%,#2c2c2c 78%);box-shadow:0 2px 0 #1a1a1a,1px 4px 5px rgba(0,0,0,.45)}.ws-nail,.ws-nail:after{position:absolute;left:50%;border-radius:50%}.ws-nail:after{content:"";top:50%;width:6px;height:6px;transform:translate(-50%,-50%);background:#3a3a3a;box-shadow:inset 0 1px 1px #111}.ws-toggles{display:grid;grid-gap:4px;gap:4px;align-content:center}.ws-toggle{display:flex;gap:3px;padding:2px;border-radius:3px;background:rgba(255,255,255,.55);border:1px solid rgba(70,150,165,.45)}.ws-toggle button{min-height:36px;flex:1 1;padding:0 8px;border:0;border-radius:2px;background:transparent;color:#1a3040;font-weight:700;font-size:.82rem;cursor:pointer}.ws-toggle button[data-on=true]{background:#1f4d63;color:#f6f1dc}.ws-task{flex:1 1;display:grid;grid-gap:4px;gap:4px;align-content:center;min-height:92px;padding:4px 6px;border:1px solid rgba(70,150,165,.45);border-radius:2px;background:rgba(255,255,255,.42);text-align:center}.ws-task p{margin:0;font-weight:600;font-size:.84rem;color:#1a3040}.ws-input-row{display:flex;justify-content:center;gap:6px}.ws-input-row input{min-height:36px;width:150px;text-align:center;border:1px solid #1f4d63;border-radius:2px;background:#fffdf4;font-size:.95rem}.ws-check{min-height:36px;padding:0 12px;border:0;border-radius:2px;background:#1f4d63;color:#f6f1dc;font-weight:700;cursor:pointer}.ws-feedback{min-height:1.3em}.ws-feedback-ok{color:#27ae60}.ws-feedback-err{color:#c0392b}.ws-feedback-hint{color:#d35400}.stage-exit{position:absolute;top:16px;left:16px;z-index:3;display:inline-flex;align-items:center;justify-content:center;min-height:52px;min-width:88px;padding:0 18px;border:1px solid rgba(234,244,255,.35);border-radius:12px;background:rgba(8,12,20,.72);color:#eaf4ff;text-decoration:none;font:inherit;font-weight:700;cursor:pointer}.stage-exit:focus-visible,.stage-exit:hover{border-color:#9bffe0}.gfb-voice-mute{position:absolute;top:16px;right:16px;z-index:3}.stage-frame .btn{min-height:52px;padding-inline:22px;font-size:1.05rem}.gfb-screen{height:100%;display:grid;place-items:center;padding:44px 40px 18px}.gfb-screen-body{width:min(980px,100%);display:grid;grid-gap:.45rem;gap:.45rem;justify-items:start}.gfb-screen-body h1{margin:0;font-size:clamp(1.85rem,2.8vw,2.7rem);color:#f4fff8;text-shadow:0 0 24px rgba(120,255,200,.35)}.gfb-story{margin:0;max-width:44rem;font-size:.9rem;line-height:1.38;color:rgba(234,244,255,.86)}.gfb-op{position:relative;width:64px;height:64px;display:grid;place-items:center;border:1px solid rgba(234,244,255,.3);border-radius:14px;background:rgba(8,12,20,.62);color:#eaf4ff;cursor:pointer}.gfb-op span{font-size:1.85rem;font-weight:700;line-height:1}.gfb-power-card{display:grid;justify-items:start;grid-gap:.2rem;gap:.2rem;min-height:0;padding:10px 12px;border:1px solid rgba(234,244,255,.22);border-radius:14px;background:rgba(8,12,20,.58)}.gfb-field{display:flex;flex-direction:row;align-items:center;gap:12px;min-height:52px;padding:0 16px}.gfb-field input{min-width:88px;width:88px}.gfb-screen-center .gfb-screen-body{justify-items:center;text-align:center}.gfb-tag{font-size:1.05rem}.gfb-kicker,.gfb-tag{margin:0;color:#9bffe0}.gfb-kicker{letter-spacing:.16em;text-transform:uppercase;font-size:.8rem}.gfb-hint{margin:0;color:rgba(234,244,255,.7)}.gfb-ops{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.gfb-op input{position:absolute;inset:0;opacity:0;cursor:pointer}.gfb-op:has(input:checked){border-color:#9bffe0;box-shadow:0 0 0 2px #9bffe0;background:rgba(20,48,40,.8)}.gfb-home-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding-bottom:4px}.gfb-power-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;width:min(920px,100%);text-align:left}.gfb-power-card[data-on=false]{opacity:.45}.gfb-power-card h3{margin:0;font-size:1rem}.gfb-power-card kbd{font:inherit;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#9bffe0}.gfb-power-card p{margin:0;font-size:.82rem;color:rgba(234,244,255,.75)}.gfb-power-card svg{width:28px;height:28px;fill:none;stroke:#9bffe0;stroke-width:1.7;stroke-linejoin:round;stroke-linecap:round}.gfb-mothership-idle{position:absolute;top:18px;left:18%;width:120px;height:18px;border-radius:40px 40px 12px 12px;background:#2a1028;box-shadow:0 0 18px rgba(255,74,212,.35);animation:gfb-drift 9s ease-in-out infinite}@keyframes gfb-drift{0%{transform:translateX(0)}50%{transform:translateX(720px)}to{transform:translateX(0)}}@media (prefers-reduced-motion:reduce){.gfb-mothership-idle{animation:none}}.gfb-codex ul{display:grid;grid-template-columns:1fr 1fr;grid-gap:.25rem 1.5rem;gap:.25rem 1.5rem;margin:0;padding:0;list-style:none;text-align:left;max-height:420px;overflow:auto;width:100%}.gfb-codex li{display:grid;grid-gap:.1rem;gap:.1rem;padding:.25rem 0;border-bottom:1px solid rgba(234,244,255,.08)}.gfb-codex span{color:rgba(234,244,255,.65);font-size:.85rem}.gfb-chip,.gfb-field{display:flex;flex-direction:row;align-items:center;gap:10px;padding:0 16px;background:rgba(8,12,20,.55);color:#eaf4ff}.gfb-answer input,.gfb-chip,.gfb-field,.gfb-field input{min-height:52px;border:1px solid rgba(234,244,255,.28);border-radius:12px}.gfb-answer input,.gfb-field input{min-width:88px;padding:0 14px;background:rgba(8,12,20,.8);color:#f4fff8;font:inherit;font-size:1.25rem;text-align:center}.gfb-play{height:100%;display:grid;grid-template-rows:48px 640px 80px}.gfb-hud{display:flex;align-items:center;justify-content:center;gap:24px;padding-left:120px}.gfb-canvas{width:1366px;height:640px;display:block;border:0;border-radius:0}.gfb-dock{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:12px;gap:12px;padding:0 20px}.gfb-dock .gfb-audio{justify-self:end}.gfb-dock .gfb-powers{justify-self:start}.gfb-audio{display:flex;gap:8px;align-items:center}.gfb-audio-btn{display:grid;justify-items:center;grid-gap:2px;gap:2px;min-width:56px;min-height:56px;padding:6px 8px;border:1px solid rgba(234,244,255,.28);border-radius:12px;background:rgba(8,12,20,.72);color:#eaf4ff;cursor:pointer}.gfb-audio-btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round;stroke-linecap:round}.gfb-audio-btn span{font-size:.68rem;letter-spacing:.04em;text-transform:uppercase}.gfb-audio-btn[data-on=false]{opacity:.45}.gfb-power{position:relative;width:64px;min-height:64px;padding:.25rem .15rem .2rem;display:grid;justify-items:center;grid-gap:.08rem;gap:.08rem;border:1px solid rgba(234,244,255,.28);border-radius:12px;background:rgba(8,12,20,.72);color:#eaf4ff;cursor:pointer}.gfb-power[data-active=true]{border-color:#9bffe0;box-shadow:0 0 0 1px #9bffe0}.gfb-powers{display:flex;gap:.75rem}.gfb-power-icon,.gfb-power-icon svg{width:24px;height:24px}.gfb-power-icon svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round;stroke-linecap:round}.gfb-power strong{font-size:.8rem}.gfb-power-key{font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;color:rgba(234,244,255,.7)}.gfb-tip{display:none;position:absolute;bottom:calc(100% + 8px);left:50%;width:max-content;max-width:220px;padding:.45rem .55rem;border-radius:8px;background:rgba(8,12,20,.95);color:#eaf4ff;border:1px solid rgba(234,244,255,.25);font-size:.75rem;line-height:1.3;transform:translateX(-50%);pointer-events:none}.gfb-power:focus-visible .gfb-tip,.gfb-power:hover .gfb-tip{display:block}.gfb-answer{display:flex;justify-content:center;width:100%}.class-shell{width:min(1240px,calc(100% - 2 * var(--space-5)));margin-inline:auto;padding-block:var(--space-4) var(--space-5)}.class-dash-title{margin:0 0 var(--space-3);font-family:var(--font-display);font-size:var(--text-xl);font-weight:400;line-height:var(--leading-tight);letter-spacing:var(--tracking-display)}.journal-soon{margin:var(--space-4) 0 var(--space-2);font-size:var(--text-lg);color:var(--fg-muted)}.class-menu{display:flex;flex-wrap:wrap;gap:var(--space-2);padding-bottom:var(--space-1)}.class-switch{position:relative;width:100%}.class-modal-backdrop{position:fixed;inset:0;z-index:40;display:grid;align-items:start;justify-items:center;padding:var(--space-6) var(--space-4) var(--space-8);overflow:auto;background:color-mix(in oklab,var(--bg-ink) 62%,transparent)}.class-modal{width:min(52rem,100%);margin-block:3vh}.class-modal .create-class{margin:0;max-height:none}.join-display{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:var(--space-6);background-color:var(--class-accent,var(--accent));background-size:cover;background-position:50%;color:#fff;text-align:center}.join-display:before{content:"";position:absolute;inset:0;background:color-mix(in oklab,#111 58%,transparent)}.join-display-copy{position:relative;display:grid;grid-gap:var(--space-3);gap:var(--space-3);justify-items:center}.join-display-title{margin:0;font-size:clamp(2rem,6vw,4.4rem);line-height:1.05;text-shadow:0 0 24px color-mix(in oklab,#000 55%,transparent),0 2px 4px #000}.join-display-period{margin:0;font-size:clamp(1.2rem,3vw,2rem);font-weight:700;text-shadow:0 0 18px color-mix(in oklab,#fff 30%,transparent),0 1px 3px #000}.join-display-code{margin:.4rem 0 0;font-size:clamp(4rem,16vw,10rem);font-weight:800;letter-spacing:.14em;line-height:1;text-transform:uppercase;text-shadow:0 0 28px color-mix(in oklab,#fff 40%,transparent),0 0 40px color-mix(in oklab,#000 70%,transparent),0 3px 6px #000}.join-display-close{margin-top:var(--space-4);color:#fff;background:color-mix(in oklab,#111 40%,transparent)}.join-display-close:focus-visible,.join-display-close:hover{background:color-mix(in oklab,#111 62%,transparent);color:#fff}@media (min-width:860px){.class-menu{position:-webkit-sticky;position:sticky;top:var(--space-4);flex-direction:column;overflow:visible;padding-bottom:0;min-height:0}}.create-class{margin-bottom:0}.class-schedule{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.class-days{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;border:0}.class-days legend{margin-bottom:var(--space-2);font-weight:650}.class-days label{display:inline-flex;align-items:center;gap:.4rem;min-height:40px;padding:0 .8rem 0 .55rem;border:1px solid var(--border-strong);border-radius:999px;background:var(--bg);cursor:pointer}.class-days label[data-on=true]{background:var(--accent-soft);border-color:var(--accent)}.class-days input{width:1.05rem;height:1.05rem;accent-color:var(--accent)}.class-when{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:var(--space-4);gap:var(--space-4);align-items:start}.class-when-fields{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.class-when-mode{display:flex;flex-wrap:wrap;gap:var(--space-2)}.class-clock-meridiem button,.class-when-mode button{min-height:36px;padding:0 .75rem;border:1px solid var(--border-strong);border-radius:999px;background:var(--bg);color:inherit;font:inherit}.class-clock-meridiem button[data-on=true],.class-when-mode button[data-on=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.class-when-ends{margin:0;color:var(--fg-muted);font-size:var(--text-sm)}.class-clock,.class-clock-panel{display:grid;justify-items:center;grid-gap:var(--space-2);gap:var(--space-2)}.class-clock-face{width:148px;height:148px;touch-action:none;cursor:pointer}.class-clock-disk{fill:var(--bg);stroke:var(--border-strong)}.class-clock-tick{stroke:var(--fg-subtle);stroke-width:1}.class-clock-tick-major{stroke:var(--fg);stroke-width:2}.class-clock-hour{stroke:var(--fg);stroke-width:4.5;stroke-linecap:round}.class-clock-minute{stroke:var(--accent);stroke-width:3;stroke-linecap:round}.class-clock-hub{fill:var(--accent)}.class-clock-meridiem{display:flex;gap:var(--space-2)}@media (max-width:700px){.class-when{grid-template-columns:1fr;justify-items:center}.class-when-fields{width:100%}}.class-theme{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.class-theme-tabs{display:flex;flex-wrap:wrap;gap:var(--space-2)}.class-theme-tabs .btn[data-on=true]{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.class-theme-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.class-theme-group{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.class-theme-group h3{margin:var(--space-3) 0 0;font-family:var(--font-body);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted)}.class-theme-swatch{display:grid;grid-gap:.4rem;gap:.4rem;padding:0;border:2px solid transparent;border-radius:var(--radius-md);background:var(--bg);color:inherit;font:inherit;text-align:left;cursor:pointer;overflow:hidden}.class-theme-swatch img{display:block;width:100%;height:78px;object-fit:cover;background:var(--swatch,var(--accent))}.class-theme-swatch span{display:block;padding:0 var(--space-2) var(--space-2);font-size:var(--text-xs);font-weight:700;line-height:1.3}.class-theme-swatch[data-on=true]{border-color:var(--swatch,var(--accent));box-shadow:0 0 0 1px var(--swatch,var(--accent))}.class-theme-sample{display:grid;grid-gap:var(--space-3);gap:var(--space-3);overflow:hidden;border:1px solid color-mix(in oklab,var(--class-accent) 28%,var(--border));border-radius:var(--radius-lg);background:var(--class-card);color:var(--class-fg)}.class-theme-sample img{display:block;width:100%;height:160px;object-fit:cover}.class-theme-sample>div{display:grid;grid-gap:var(--space-2);gap:var(--space-2);padding:0 var(--space-4) var(--space-4)}.class-theme-sample h3{margin:0;color:var(--class-fg)}.class-theme-sample p{margin:0;color:var(--class-muted)}.class-theme-sample .kicker{margin:0;color:var(--class-accent)}.class-theme-sample-note{font-size:var(--text-sm)}.class-desk-stack{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.card.add-class-card{position:relative;overflow:visible}.card.add-class-card[data-open=true]{z-index:20}.add-class-form .multi-pick-option{display:flex;flex-direction:row;align-items:center;gap:var(--space-3);min-height:44px}.multi-pick-foot{position:-webkit-sticky;position:sticky;bottom:calc(-1 * var(--space-2));margin:0 calc(-1 * var(--space-2)) calc(-1 * var(--space-2));padding:var(--space-2);border-top:1px solid var(--border);background:var(--bg-elevated);display:flex;justify-content:flex-end}.add-class-form{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.multi-pick{position:relative}.multi-pick-btn{display:flex;width:100%;min-height:44px;align-items:center;justify-content:space-between;gap:var(--space-3);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--fg);font:inherit;text-align:left;cursor:pointer}.multi-pick-menu{position:absolute;z-index:30;top:calc(100% + 6px);left:0;right:0;display:grid;grid-gap:var(--space-2);gap:var(--space-2);max-height:min(420px,60vh);padding:var(--space-2);overflow:auto;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-elevated);box-shadow:var(--shadow)}.multi-pick-search{width:100%;min-height:40px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--fg);font:inherit}.multi-pick-menu ul{list-style:none;margin:0;padding:0;display:grid}.multi-pick-option{display:flex;gap:var(--space-2);align-items:flex-start;min-height:44px;padding:8px;border-radius:var(--radius-sm);color:var(--fg);font-weight:500;cursor:pointer}.multi-pick-option:has(input:checked),.multi-pick-option:hover{background:var(--accent-soft)}.multi-pick-option span{display:grid;grid-gap:2px;gap:2px}.multi-pick-option small{color:var(--fg-muted);font-weight:500}.multi-pick-option input{width:18px;height:18px;margin-top:3px;flex-shrink:0}.people-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.people-row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border)}.people-row:last-child{border-bottom:0}.people-row>div:first-child{display:grid;grid-gap:2px;gap:2px;min-width:0}.people-flag,.people-row small{color:var(--fg-muted);font-size:var(--text-sm)}.people-flag{display:inline-block;margin-top:2px}.people-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.people-journal{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--border);color:var(--fg);text-decoration:none}.people-journal:focus-visible,.people-journal:hover{border-color:var(--accent);color:var(--accent)}.people-supports{display:grid;grid-template-columns:repeat(4,58px);align-items:center;justify-items:center;flex-shrink:0}.people-supports input{width:16px;height:16px;margin:0;accent-color:var(--accent);cursor:pointer}.people-supports[data-trouble=true]{outline:1px dashed #d95926;outline-offset:2px;border-radius:6px}.people-supports-head{display:flex;justify-content:flex-end;align-items:end;gap:var(--space-2);padding:0;color:var(--fg-muted);font-size:10.5px;line-height:1.15;text-align:center}.people-supports-head .people-supports span{padding:0 2px}.people-supports-title{font-weight:700;font-size:var(--text-sm)}.people-supports-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-right:auto;color:var(--fg-muted);font-size:var(--text-sm)}.people-supports-bar .btn{padding:2px 12px;min-height:0}.people-supports-line[data-tone=good],.people-supports-state[data-tone=good]{color:#2f8a4b}.people-supports-line[data-tone=bad],.people-supports-state[data-tone=bad]{color:#d95926}.people-supports-line[data-tone=plain],.people-supports-state[data-tone=plain]{color:var(--fg);font-weight:600}.people-supports-state{display:inline-flex;align-items:center;gap:4px;width:116px;flex-shrink:0;font-size:var(--text-xs,.75rem);color:var(--fg-muted);line-height:1.2}.people-supports-retry{border:1px solid;background:none;color:inherit;border-radius:6px;padding:0 6px;font:inherit;cursor:pointer}.people-supports[data-draft=true]{outline:1px dashed var(--accent);outline-offset:2px;border-radius:6px}.copy-roster{display:grid;grid-gap:var(--space-3);gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border)}.shelf-shift{align-self:center;width:36px;height:56px;padding:0;border:0;border-radius:12px;background:linear-gradient(180deg,color-mix(in oklab,#fff 22%,#8b5a2b),#5c3d24);color:#f6efe4;font-size:1.7rem;line-height:1;box-shadow:inset 0 1px 0 color-mix(in oklab,#fff 28%,transparent),0 6px 12px color-mix(in oklab,#000 28%,transparent);visibility:hidden;pointer-events:none}.shelf-shift[data-show=true]{visibility:visible;pointer-events:auto}.shelf-shift:focus-visible,.shelf-shift:hover{filter:brightness(1.08)}.connect-page{padding:1.25rem 1.5rem 2.5rem}.connect-page h1{margin-bottom:1rem}.connect-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:1.25rem;gap:1.25rem;max-width:960px}@keyframes binder-turn{0%{transform:rotateY(0)}45%{transform:rotateY(-70deg)}to{transform:rotateY(0)}}@media (min-width:720px){.class-theme-sample{grid-template-columns:1.1fr .9fr;align-items:stretch}.class-theme-sample img{height:100%;min-height:180px}.class-theme-sample>div{padding:var(--space-5);align-content:center}}.stage-frame[data-atmosphere=world]{background:#8ec6e6;color:#102018}.world-stage{position:relative;width:100%;height:100%}.world-gl,.world-gl canvas{display:block;width:100%!important;height:100%!important}.world-boot,.world-stub{display:grid;grid-gap:var(--space-4);gap:var(--space-4);place-content:center;height:100%;padding:var(--space-7);text-align:center}.world-stub h1{margin:0;font-family:var(--font-display)}.world-hud{position:absolute;top:0;left:0;right:0;z-index:5;display:flex;align-items:flex-start;gap:var(--space-3);padding:12px 12px 0 108px}.world-hud p{margin:0;padding:8px 12px;border-radius:12px;background:color-mix(in oklab,#07140f 62%,transparent);color:#f4fff8;font-size:.95rem;font-weight:700;pointer-events:none}.world-hud span{display:block;font-size:.78rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;opacity:.85}.world-hud-btn{min-height:40px;padding:0 12px;border:0;background:color-mix(in oklab,#07140f 62%,transparent);font:inherit;font-size:.9rem;font-weight:700}.world-help,.world-hud-btn{border-radius:12px;color:#f4fff8}.world-help{position:absolute;right:160px;bottom:22px;z-index:5;margin:0;padding:8px 12px;background:color-mix(in oklab,#07140f 55%,transparent);font-size:.85rem}.world-globe-mini{position:absolute;right:16px;bottom:16px;z-index:8;width:132px;height:132px;padding:0;border:0;border-radius:999px;overflow:hidden;background:#061018;box-shadow:0 12px 28px color-mix(in oklab,#000 40%,transparent);cursor:pointer}.world-globe-mini canvas{display:block;width:132px;height:132px}.world-globe-mini span{position:absolute;left:0;right:0;bottom:8px;color:#f4fff8;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;pointer-events:none}.world-stick{position:absolute;left:18px;bottom:18px;z-index:6;width:96px;height:96px;border-radius:999px;border:2px solid color-mix(in oklab,#fff 35%,transparent);background:color-mix(in oklab,#07140f 45%,transparent);touch-action:none}.world-stick i{position:absolute;left:50%;top:50%;width:36px;height:36px;margin:-18px 0 0 -18px;border-radius:999px;background:color-mix(in oklab,#f4fff8 80%,transparent);pointer-events:none}.world-map{position:absolute;top:76px;right:16px;z-index:12;display:flex;flex-direction:column;width:520px;height:380px;padding:8px;border-radius:14px;background:color-mix(in oklab,#07140f 88%,transparent);color:#f4fff8;box-shadow:0 18px 40px color-mix(in oklab,#000 28%,transparent)}.world-map[data-wide=true]{inset:56px 20px 20px;width:auto;height:auto}.world-map[data-fill=true]{inset:56px 0 0;width:auto;height:auto;border-radius:0;box-shadow:none;z-index:4}.world-map-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 4px 8px}.world-map-bar p{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.world-map-tools{display:flex;flex-wrap:wrap;gap:6px}.world-map-tools button{min-height:36px;min-width:36px;padding:0 10px;border:0;border-radius:8px;background:color-mix(in oklab,#f4fff8 12%,transparent);color:#f4fff8;font:inherit;font-size:.85rem;font-weight:700}.world-search{position:relative;flex:1 1;min-width:140px;max-width:280px}.world-search input{width:100%;min-height:36px;padding:0 10px;border:0;border-radius:8px;background:color-mix(in oklab,#f4fff8 12%,transparent);color:#f4fff8;font:inherit;font-size:.88rem}.world-search input::placeholder{color:color-mix(in oklab,#f4fff8 55%,transparent)}.world-search ul{position:absolute;left:0;right:0;top:38px;z-index:8;margin:0;padding:4px;list-style:none;border-radius:8px;background:color-mix(in oklab,#07140f 94%,transparent);box-shadow:0 12px 28px color-mix(in oklab,#000 35%,transparent)}.world-search li button{display:flex;width:100%;align-items:baseline;justify-content:space-between;gap:8px;min-height:36px;padding:4px 8px;border:0;border-radius:6px;background:transparent;color:#f4fff8;font:inherit;text-align:left}.world-search li span{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.world-map-body{position:relative;display:grid;grid-template-columns:188px 1fr;flex:1 1;min-height:0;grid-gap:8px;gap:8px}.world-map:not([data-fill=true]) .world-map-body{grid-template-columns:1fr}.world-map:not([data-fill=true]) .world-map-frame{min-height:180px}.world-layers{display:grid;align-content:start;grid-gap:6px;gap:6px;overflow:auto;padding:8px;border-radius:8px;background:color-mix(in oklab,#07140f 35%,transparent)}.world-layers p{margin:0 0 4px;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.75}.world-layer-group{display:grid;grid-gap:4px;gap:4px;margin-bottom:8px}.world-legend{display:grid;grid-gap:3px;gap:3px;margin:4px 0 8px}.world-legend span{display:flex;align-items:center;gap:6px;margin:0;font-size:.7rem;font-weight:600;text-transform:none;letter-spacing:0;opacity:.9}.world-legend i{width:10px;height:10px;border-radius:2px;flex:0 0 10px}.world-layers label{display:flex;align-items:center;gap:8px;min-height:32px;font-size:.82rem;font-weight:650;cursor:pointer}.world-layers span{display:block;margin-top:8px;font-size:.72rem;opacity:.7}.world-map:not([data-fill=true]) .world-layers{display:flex;flex-wrap:wrap;gap:4px 10px;max-height:72px}.world-map-frame{position:relative;min-height:0;overflow:hidden;border-radius:8px;background:#0b1c28}.world-map-frame canvas{display:block;width:100%;height:100%}.world-map .maplibregl-ctrl-attrib{background:color-mix(in oklab,#07140f 70%,transparent);color:#d7eee2;font-size:10px}.world-map .maplibregl-ctrl-attrib a{color:#f4fff8}.world-map-readout{position:absolute;right:8px;bottom:8px;z-index:3;margin:0;padding:6px 8px;border-radius:8px;background:color-mix(in oklab,#07140f 72%,transparent);color:#f4fff8;font-family:ui-monospace,Cascadia Code,Times New Roman,monospace;font-size:.78rem;font-weight:650;letter-spacing:.02em;pointer-events:none}.world-you{position:relative;width:16px;height:16px;border-radius:999px;border:3px solid #fff;background:#ff4d2e;box-shadow:0 0 0 6px color-mix(in oklab,#ff4d2e 40%,transparent);pointer-events:none}.world-you:after{content:"";position:absolute;inset:-10px;border:2px solid #ff4d2e;border-radius:999px;animation:world-you-ping 1.8s ease-out infinite}@keyframes world-you-ping{0%{transform:scale(.6);opacity:.9}to{transform:scale(1.7);opacity:0}}.world-place{position:absolute;top:8px;right:8px;z-index:4;display:grid;grid-gap:8px;gap:8px;width:min(280px,70%);padding:14px;border-radius:12px;background:color-mix(in oklab,#07140f 88%,transparent);color:#f4fff8}.world-place p{margin:0;font-size:.8rem}.world-place h2{margin:0;font-size:1.15rem;font-weight:700;line-height:1.2}.world-place strong{font-size:1rem}.world-place .btn{width:100%}.world-place .btn-ghost{color:#f4fff8;border-color:color-mix(in oklab,#f4fff8 28%,transparent)}.world-place-empty{font-size:.85rem;opacity:.85}.world-place-close{justify-self:start;padding:0;border:0;background:none;color:#f4fff8;font:inherit;font-weight:700}.world-menu-veil{position:absolute;inset:0;z-index:20;display:grid;place-items:center;background:color-mix(in oklab,#07140f 55%,transparent)}.world-menu{display:grid;grid-gap:10px;gap:10px;width:min(420px,calc(100% - 48px));padding:28px 28px 24px;border-radius:20px;background:color-mix(in oklab,#07140f 88%,transparent);color:#f4fff8;box-shadow:0 24px 48px color-mix(in oklab,#000 35%,transparent)}.world-menu p{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.8}.world-menu h1{margin:0 0 8px;font-family:var(--font-display);font-size:2.4rem;font-weight:400}.world-menu .btn{justify-self:stretch;text-align:center}.world-menu .btn-primary{background:#f4fff8;color:#07140f}.world-menu .btn-ghost{color:#f4fff8;border-color:color-mix(in oklab,#f4fff8 28%,transparent)}.world-menu .btn-ghost:focus-visible,.world-menu .btn-ghost:hover{color:#f4fff8;border-color:#f4fff8}.world-menu ul{margin:8px 0 4px;padding:0;list-style:none;display:grid;grid-gap:4px;gap:4px;font-size:.92rem;color:color-mix(in oklab,#f4fff8 82%,transparent)}.world-menu a{color:#f4fff8;font-weight:700}@media (max-width:900px){.world-map[data-fill=true] .world-map-body{grid-template-columns:1fr}.world-map[data-fill=true] .world-layers{display:flex;flex-wrap:wrap;max-height:88px}}@media (max-width:700px){.world-map{inset:64px 8px 8px;width:auto;height:auto}}.user-table input,.user-table select{width:100%;min-height:40px;padding:.4rem .55rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--fg);font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.practice-tools{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:end;margin:.75rem 0 1rem}.practice-tools label{display:grid;grid-gap:.25rem;gap:.25rem;font-size:.78rem;font-weight:700}.practice-tools input,.practice-tools select{font:inherit;font-weight:500;min-height:2.2rem}.practice-delete{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.practice-sort{color:inherit}.practice-open,.practice-sort{padding:0;border:0;background:transparent;font:inherit;font-weight:700;cursor:pointer}.practice-open{color:var(--accent);text-align:left;text-decoration:underline}.practice-week td{padding-top:.85rem;background:color-mix(in oklab,var(--bg) 88%,var(--fg))}.practice-week-toggle{display:flex;align-items:center;gap:.45rem;width:100%;padding:.15rem 0;border:0;background:transparent;color:inherit;font:inherit;font-weight:800;text-align:left;cursor:pointer}.practice-week-toggle small{font-weight:600;opacity:.7}.practice-pop{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:24px;background:color-mix(in oklab,#000 45%,transparent)}.practice-detail{display:grid;grid-gap:.75rem;gap:.75rem;width:min(560px,100%);max-height:min(72vh,640px);overflow:auto;margin:0;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:12px;background:var(--bg-elevated,var(--bg));color:var(--fg);box-shadow:0 18px 40px color-mix(in oklab,#000 28%,transparent)}.practice-detail-head{display:flex;justify-content:space-between;gap:1rem;align-items:center}.practice-detail-head h3{margin:0}.practice-detail dl{display:grid;grid-gap:.55rem;gap:.55rem;margin:0}.practice-detail div{display:grid;grid-gap:.15rem;gap:.15rem}.practice-detail dt{font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.practice-detail dd{margin:0}.tech-desk{margin:0 0 2rem;padding:1.1rem 1.15rem 1.2rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);box-shadow:var(--shadow)}.tech-desk h2,.tech-desk h3{margin:0 0 .6rem}.tech-desk-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(200px,.7fr);grid-gap:1.25rem;gap:1.25rem;align-items:start}.tech-people{list-style:none;margin:0 0 .9rem;padding:0;display:grid;grid-gap:.45rem;gap:.45rem}.tech-people li{display:flex;justify-content:space-between;gap:.75rem;align-items:center;padding:.45rem 0;border-bottom:1px solid var(--border)}.tech-people small{display:block;color:var(--fg-muted);font-size:.85rem}.tech-find{display:flex;gap:.5rem;align-items:end;margin-top:.4rem}.tech-find label{flex:1 1;display:grid;grid-gap:.3rem;gap:.3rem;font-weight:700}.tech-find input,.tech-note textarea{width:100%;border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:.55rem .7rem;background:var(--bg);color:var(--fg);font:inherit}.tech-open{padding:.9rem;border-radius:var(--radius-md);background:var(--accent-soft)}.tech-open p{margin-top:0}.tech-form{display:grid;grid-gap:1rem;gap:1rem;margin-bottom:2rem}.tech-form fieldset{margin:0;padding:1rem 1rem 1.1rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated)}.tech-form legend{padding:0 .35rem;font-family:var(--font-display);font-size:1.35rem}.tech-group h2,.tech-note{font-size:1rem}.tech-group h2{margin:.8rem 0 .35rem}.tech-check{display:flex;gap:.65rem;align-items:flex-start;margin:.35rem 0;font-weight:650}.tech-check input{width:1.15rem;height:1.15rem;margin-top:.15rem;accent-color:var(--accent)}.tech-note{display:grid;grid-gap:.35rem;gap:.35rem;margin-top:.8rem;font-weight:700}.tech-saved{margin:0 0 1rem;padding:.7rem .85rem;border-radius:var(--radius-sm);background:#215544;color:#f3eee4;font-weight:800}.tech-log-card h3{margin-bottom:.2rem}@media (max-width:720px){.tech-desk-row,.tech-find{grid-template-columns:1fr;display:grid}.tech-people li{align-items:flex-start}}.tech-tools{display:flex;flex-wrap:wrap;gap:.65rem;align-items:end;margin:0 0 .75rem}.tech-tools label{display:grid;grid-gap:.25rem;gap:.25rem;font-size:.9rem;font-weight:700}.tech-tools input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:.45rem .6rem;background:var(--bg);color:var(--fg);font:inherit}.tech-sheet{display:none}@media print{.aurora-ridge,.aurora-sky,.site-header,.tech-screen{display:none!important}.page,.shell,body{background:#fff!important;color:#111!important;box-shadow:none!important}.page{min-height:0!important}.tech-sheet{display:block!important}.tech-sheet-kicker{margin:0;font-size:10pt;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.tech-sheet h2{margin:0 0 .15rem;font-size:16pt}.tech-sheet header p{margin:0 0 .45rem;font-size:10pt}.tech-sheet-grid{column-count:2;column-gap:.35in}.tech-slip{page-break-inside:avoid;break-inside:avoid;margin:0 0 .4rem;font-size:8.5pt;line-height:1.25}.tech-slip p{margin:0}}@page{size:letter;margin:.45in}.test-tag{display:inline-block;margin-left:.35em;padding:0 .35em;border-radius:4px;background:#6b4fd8;color:#fff;font:700 .62rem/1.5 system-ui,sans-serif;letter-spacing:.06em;vertical-align:middle;white-space:nowrap}.home-tour{margin:var(--space-4) 0 0}.create-class-book-note{font-size:.8rem;color:var(--fg-muted)}.class-auto{position:relative;display:flex;gap:var(--space-2);align-items:center}.class-auto-switch{display:inline-flex;border:1px solid;border-radius:999px;overflow:hidden}.class-auto-switch button{padding:4px 12px;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;opacity:.7}.class-auto-switch button[data-on=true]{background:var(--accent);color:var(--accent-fg);opacity:1}.class-auto-info{width:24px;height:24px;border:1px solid;border-radius:50%;background:transparent;color:inherit;cursor:pointer;line-height:1}.class-auto-pop{position:absolute;top:calc(100% + 6px);left:0;z-index:30;max-width:380px;padding:10px 12px;border-radius:8px;border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--fg);box-shadow:0 8px 24px rgb(0 0 0/.25);font-size:.88em}.class-auto-pop p{margin:0 0 6px;color:var(--fg)}.class-auto-pop button{padding:3px 10px;border:1px solid var(--border-strong);border-radius:6px;background:var(--accent-soft);color:var(--fg);font:inherit;cursor:pointer}