@import url(classroom-fonts.css);@import url(components/lesson-shell.css);:root{--bg:#f5f5f7;--text:#1d1d1f;--muted:#6e6e73;--line:#d2d2d7;--white:#ffffff;--blue:#0071e3;--surface-0:var(--bg);--surface-3:rgba(255, 255, 255, 0.98);--text-strong:var(--text);--text-body:var(--text);--text-muted:var(--muted);--text-inverse:#ffffff;--text-on-image:#ffffff;--border-subtle:var(--line);--border-strong:#8a8a90;--accent:var(--blue);--accent-hover:#005ec3;--accent-contrast:#ffffff;--danger:#c32235;--danger-contrast:#ffffff;--success:#167a3c;--success-contrast:#ffffff;--warning:#8f5a00;--warning-contrast:#ffffff;--info:#0066cc;--info-contrast:#ffffff;--focus-ring:#006edb;--font-sans:"Classroom Chicago","Chicago","ChicagoFLF","Charcoal",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-display:"IBM Plex Sans","Classroom Chicago","Chicago","ChicagoFLF","Charcoal",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-mono:ui-monospace,"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;--fs-100:0.75rem;--fs-200:0.9rem;--fs-300:1rem;--fs-400:1.2rem;--fs-500:1.44rem;--fs-600:1.728rem;--fs-700:2.488rem;--fs-800:3rem;--lh-tight:1.2;--lh-normal:1.5;--lh-loose:1.7;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:72px;--space-10:80px;--page-wash:radial-gradient(1200px 600px at -10% -10%, rgba(0, 113, 227, 0.1), transparent 52%),radial-gradient(900px 420px at 110% 0%, rgba(120, 180, 255, 0.12), transparent 45%);--header-bg:rgba(245, 245, 247, 0.86);--header-border:rgba(210, 210, 215, 0.8);--nav-ink:#3a3a3c;--nav-ink-strong:#111111;--nav-hover-bg:rgba(0, 0, 0, 0.06);--surface-1:rgba(255, 255, 255, 0.92);--surface-2:rgba(248, 250, 252, 0.95);--theme-accent:#0071e3;--theme-accent-strong:#005ec3;--theme-accent-soft:rgba(0, 113, 227, 0.12);--radius-sm:10px;--radius-md:14px;--radius-lg:26px;--gap-1:0.5rem;--gap-2:0.75rem;--gap-3:1rem;--gap-4:1.5rem;--gap-5:2rem;--max:1180px;--shadow:0 12px 34px rgba(0, 0, 0, 0.08);--shadow-0:none;--shadow-1:0 2px 8px rgba(0, 0, 0, 0.05);--shadow-2:0 12px 34px rgba(0, 0, 0, 0.08);--shadow-3:0 18px 36px rgba(0, 0, 0, 0.12);--shadow-4:0 28px 48px rgba(0, 0, 0, 0.18);--ease-smooth:cubic-bezier(0.4, 0, 0.2, 1);--ease-spring:cubic-bezier(0.34, 1.56, 0.64, 1);--ease-sharp:cubic-bezier(0.4, 0, 1, 1);--glow-sm:0 0 8px var(--theme-accent-soft);--glow-md:0 0 20px var(--theme-accent-soft)}html[data-lighting=day],html[data-lighting=dusk],html[data-lighting=morning]{--bg:#f5f5f7;--text:#1d1d1f;--muted:#6e6e73;--line:#d2d2d7;--white:#ffffff;--blue:#0071e3;--surface-0:var(--bg);--surface-3:rgba(255, 255, 255, 0.98);--text-strong:var(--text);--text-body:var(--text);--text-muted:var(--muted);--text-inverse:#ffffff;--text-on-image:#ffffff;--border-subtle:var(--line);--border-strong:#8a8a90;--accent:var(--blue);--accent-hover:#005ec3;--accent-contrast:#ffffff;--danger:#c32235;--danger-contrast:#ffffff;--success:#167a3c;--success-contrast:#ffffff;--warning:#8f5a00;--warning-contrast:#ffffff;--info:#0066cc;--info-contrast:#ffffff;--focus-ring:#006edb;--page-wash:radial-gradient(1200px 600px at -10% -10%, rgba(0, 113, 227, 0.1), transparent 52%),radial-gradient(900px 420px at 110% 0%, rgba(120, 180, 255, 0.12), transparent 45%);--header-bg:rgba(245, 245, 247, 0.86);--header-border:rgba(210, 210, 215, 0.8);--nav-ink:#3a3a3c;--nav-ink-strong:#111111;--nav-hover-bg:rgba(0, 0, 0, 0.06);--surface-1:rgba(255, 255, 255, 0.92);--surface-2:rgba(248, 250, 252, 0.95);--theme-accent:#0071e3;--theme-accent-strong:#005ec3;--theme-accent-soft:rgba(0, 113, 227, 0.12);--shadow:0 12px 34px rgba(0, 0, 0, 0.08);--shadow-0:none;--shadow-1:0 2px 8px rgba(0, 0, 0, 0.05);--shadow-2:0 12px 34px rgba(0, 0, 0, 0.08);--shadow-3:0 18px 36px rgba(0, 0, 0, 0.12);--shadow-4:0 28px 48px rgba(0, 0, 0, 0.18);--glow-sm:0 0 8px var(--theme-accent-soft);--glow-md:0 0 20px var(--theme-accent-soft)}html[data-lighting=night]{--bg:#1c1c1e;--text:#f5f5f7;--muted:#98989d;--line:#3a3a3c;--white:#2c2c2e;--blue:#69a8ff;--surface-0:var(--bg);--surface-3:rgba(44, 44, 46, 0.98);--text-strong:#ffffff;--text-body:var(--text);--text-muted:#c4c4ca;--text-inverse:#09111f;--text-on-image:#ffffff;--border-subtle:var(--line);--border-strong:#8e8e98;--accent:var(--blue);--accent-hover:#8ec0ff;--accent-contrast:#09111f;--danger:#ff6b7a;--danger-contrast:#230005;--success:#62d68b;--success-contrast:#001f0d;--warning:#ffd166;--warning-contrast:#261800;--info:#73b7ff;--info-contrast:#00182e;--focus-ring:#9fccff;--page-wash:radial-gradient(1200px 600px at -10% -10%, rgba(34, 120, 255, 0.14), transparent 50%),radial-gradient(900px 420px at 110% 0%, rgba(100, 90, 220, 0.14), transparent 45%);--header-bg:rgba(28, 28, 30, 0.88);--header-border:rgba(58, 58, 60, 0.9);--nav-ink:#e5e5ea;--nav-ink-strong:#ffffff;--nav-hover-bg:rgba(255, 255, 255, 0.08);--surface-1:rgba(33, 34, 38, 0.94);--surface-2:rgba(26, 27, 31, 0.96);--theme-accent:#69a8ff;--theme-accent-strong:#8ec0ff;--theme-accent-soft:rgba(105, 168, 255, 0.16);--shadow:0 12px 34px rgba(0, 0, 0, 0.4);--shadow-0:none;--shadow-1:0 2px 8px rgba(0, 0, 0, 0.22);--shadow-2:0 12px 34px rgba(0, 0, 0, 0.40);--shadow-3:0 18px 36px rgba(0, 0, 0, 0.52);--shadow-4:0 28px 48px rgba(0, 0, 0, 0.64);--glow-sm:0 0 10px var(--theme-accent-soft);--glow-md:0 0 24px var(--theme-accent-soft)}html[data-theme=sakura]{--bg:#fff0f5;--text:#5d1224;--muted:#744054;--line:#ffc2d7;--white:#ffffff;--blue:#ff85b2;--surface-0:var(--bg);--surface-3:rgba(255, 251, 253, 0.98);--text-strong:var(--text);--text-body:var(--text);--text-muted:var(--muted);--text-inverse:#ffffff;--text-on-image:#ffffff;--border-subtle:var(--line);--border-strong:#b85a7a;--accent:#c93372;--accent-hover:#a9205b;--accent-contrast:#ffffff;--danger:#b51f3d;--danger-contrast:#ffffff;--success:#216f44;--success-contrast:#ffffff;--warning:#7a4b00;--warning-contrast:#ffffff;--info:#225fc2;--info-contrast:#ffffff;--focus-ring:#9f1f5a;--page-wash:radial-gradient(980px 520px at 50% 100%, rgba(255, 133, 178, 0.22), transparent 56%),radial-gradient(1200px 620px at -10% -10%, rgba(255, 196, 219, 0.3), transparent 52%),radial-gradient(920px 420px at 110% 0%, rgba(255, 231, 241, 0.38), transparent 44%);--header-bg:rgba(255, 251, 253, 0.9);--header-border:rgba(255, 133, 178, 0.58);--nav-ink:#9a4964;--nav-ink-strong:#5d1224;--nav-hover-bg:rgba(255, 133, 178, 0.16);--surface-1:rgba(255, 255, 255, 0.95);--surface-2:rgba(255, 247, 250, 0.99);--theme-accent:#ff85b2;--theme-accent-strong:#d94d84;--theme-accent-soft:rgba(255, 133, 178, 0.2);--shadow:0 14px 34px rgba(205, 94, 138, 0.16);--glow-sm:0 0 10px rgba(255, 133, 178, 0.16);--glow-md:0 0 22px rgba(255, 133, 178, 0.2)}html[data-theme=diamond]{--bg:#eafcff;--text:#12343b;--muted:#3d6970;--line:rgba(8, 121, 133, 0.22);--white:#ffffff;--blue:#60e8f0;--surface-0:var(--bg);--surface-3:rgba(255, 255, 255, 0.98);--text-strong:#09292f;--text-body:var(--text);--text-muted:var(--muted);--text-inverse:#ffffff;--text-on-image:#09292f;--border-subtle:var(--line);--border-strong:#087985;--accent:#087985;--accent-hover:#055c66;--accent-contrast:#ffffff;--danger:#b42338;--danger-contrast:#ffffff;--success:#177245;--success-contrast:#ffffff;--warning:#8b5a00;--warning-contrast:#ffffff;--info:#075f88;--info-contrast:#ffffff;--focus-ring:#087985;--page-wash:radial-gradient(920px 520px at 50% -12%, rgba(96, 232, 240, 0.36), transparent 56%),radial-gradient(760px 420px at 0% 100%, rgba(196, 246, 250, 0.62), transparent 48%),radial-gradient(680px 360px at 100% 12%, rgba(96, 232, 240, 0.28), transparent 42%);--header-bg:rgba(247, 254, 255, 0.88);--header-border:rgba(8, 121, 133, 0.18);--nav-ink:#315e66;--nav-ink-strong:#082b32;--nav-hover-bg:rgba(96, 232, 240, 0.2);--surface-1:rgba(255, 255, 255, 0.92);--surface-2:rgba(238, 253, 255, 0.96);--theme-accent:#087985;--theme-accent-strong:#055c66;--theme-accent-soft:rgba(96, 232, 240, 0.26);--shadow:0 18px 38px rgba(8, 121, 133, 0.14);--shadow-1:0 4px 12px rgba(8, 121, 133, 0.1);--shadow-2:0 18px 38px rgba(8, 121, 133, 0.14);--shadow-3:0 24px 48px rgba(8, 121, 133, 0.18);--shadow-4:0 32px 62px rgba(8, 121, 133, 0.22);--glow-sm:0 0 12px rgba(96, 232, 240, 0.28);--glow-md:0 0 28px rgba(96, 232, 240, 0.32)}html[data-theme=emerald]{--bg:#f0fff4;--text:#1a3a2a;--muted:#3e614b;--line:#9ee3b7;--white:#ffffff;--blue:#50db82;--surface-0:var(--bg);--surface-3:rgba(251, 255, 252, 0.98);--text-strong:var(--text);--text-body:var(--text);--text-muted:var(--muted);--text-inverse:#ffffff;--text-on-image:#ffffff;--border-subtle:var(--line);--border-strong:#348d59;--accent:#237947;--accent-hover:#185d35;--accent-contrast:#ffffff;--danger:#b92838;--danger-contrast:#ffffff;--success:#237947;--success-contrast:#ffffff;--warning:#795000;--warning-contrast:#ffffff;--info:#2264bc;--info-contrast:#ffffff;--focus-ring:#176f40;--page-wash:radial-gradient(980px 520px at 50% 100%, rgba(80, 219, 130, 0.22), transparent 56%),radial-gradient(1200px 620px at -10% -10%, rgba(169, 255, 209, 0.32), transparent 52%),radial-gradient(920px 420px at 110% 0%, rgba(226, 255, 236, 0.4), transparent 44%);--header-bg:rgba(251, 255, 252, 0.92);--header-border:rgba(56, 155, 101, 0.5);--nav-ink:#427053;--nav-ink-strong:#1a3a2a;--nav-hover-bg:rgba(80, 219, 130, 0.16);--surface-1:rgba(255, 255, 255, 0.96);--surface-2:rgba(246, 255, 249, 0.99);--theme-accent:#50db82;--theme-accent-strong:#389b65;--theme-accent-soft:rgba(80, 219, 130, 0.2);--shadow:0 14px 34px rgba(56, 155, 101, 0.16);--glow-sm:0 0 10px rgba(80, 219, 130, 0.16);--glow-md:0 0 22px rgba(80, 219, 130, 0.2)}html[data-theme=topaz]{--bg:#fff9e3;--text:#5c3c00;--muted:#6f4c00;--line:#ffd86a;--white:#ffffff;--blue:#ffb900;--surface-0:var(--bg);--surface-3:rgba(255, 252, 244, 0.98);--text-strong:var(--text);--text-body:var(--text);--text-muted:var(--muted);--text-inverse:#ffffff;--text-on-image:#ffffff;--border-subtle:var(--line);--border-strong:#9a6a00;--accent:#8a5a00;--accent-hover:#6f4900;--accent-contrast:#ffffff;--danger:#ad2b21;--danger-contrast:#ffffff;--success:#24703e;--success-contrast:#ffffff;--warning:#8a5a00;--warning-contrast:#ffffff;--info:#225fba;--info-contrast:#ffffff;--focus-ring:#795000;--page-wash:radial-gradient(980px 520px at 50% 100%, rgba(255, 215, 0, 0.24), transparent 56%),radial-gradient(1200px 620px at -10% -10%, rgba(255, 247, 173, 0.32), transparent 52%),radial-gradient(920px 420px at 110% 0%, rgba(255, 243, 190, 0.42), transparent 44%);--header-bg:rgba(255, 252, 244, 0.92);--header-border:rgba(244, 169, 0, 0.56);--nav-ink:#8a6200;--nav-ink-strong:#5c3c00;--nav-hover-bg:rgba(255, 185, 0, 0.14);--surface-1:rgba(255, 255, 255, 0.96);--surface-2:rgba(255, 251, 235, 0.99);--theme-accent:#ffb900;--theme-accent-strong:#f4a900;--theme-accent-soft:rgba(244, 169, 0, 0.2);--shadow:0 14px 34px rgba(196, 133, 0, 0.16);--glow-sm:0 0 10px rgba(244, 169, 0, 0.16);--glow-md:0 0 22px rgba(244, 169, 0, 0.2)}html[data-theme=vaporwave]{--bg:#050505;--text:#ffffff;--muted:#9ae9f7;--line:#ff5cff;--white:#000000;--blue:#00ffff;--surface-0:var(--bg);--surface-3:rgba(20, 0, 36, 0.98);--text-strong:#ffffff;--text-body:var(--text);--text-muted:#b9f4ff;--text-inverse:#160018;--text-on-image:#ffffff;--border-subtle:rgba(255, 92, 255, 0.72);--border-strong:#ff8cff;--accent:#00ffff;--accent-hover:#7dffff;--accent-contrast:#001b1b;--danger:#ff6b8a;--danger-contrast:#250008;--success:#73ff9d;--success-contrast:#00220b;--warning:#ffff66;--warning-contrast:#202000;--info:#8aa2ff;--info-contrast:#000b2d;--focus-ring:#00ffff;--page-wash:radial-gradient(980px 520px at 50% 100%, rgba(255, 255, 0, 0.18), transparent 50%),radial-gradient(1200px 620px at -10% -10%, rgba(255, 0, 255, 0.18), transparent 52%),radial-gradient(920px 420px at 110% 0%, rgba(0, 255, 255, 0.16), transparent 42%);--header-bg:rgba(0, 0, 0, 0.9);--header-border:rgba(255, 0, 255, 0.66);--nav-ink:#8af7ff;--nav-ink-strong:#ffffff;--nav-hover-bg:rgba(255, 0, 255, 0.16);--surface-1:rgba(0, 0, 0, 0.88);--surface-2:rgba(10, 0, 22, 0.96);--theme-accent:#ff00ff;--theme-accent-strong:#00ffff;--theme-accent-soft:rgba(255, 0, 255, 0.22);--shadow:5px 5px 0 rgba(255, 0, 255, 0.55),-3px -3px 0 rgba(0, 255, 255, 0.36);--shadow-1:5px 5px 0 rgba(255, 0, 255, 0.52),-3px -3px 0 rgba(0, 255, 255, 0.32);--shadow-2:6px 6px 0 rgba(255, 0, 255, 0.56),-4px -4px 0 rgba(0, 255, 255, 0.34);--shadow-3:8px 8px 0 rgba(255, 0, 255, 0.58),-5px -5px 0 rgba(0, 255, 255, 0.34);--shadow-4:10px 10px 0 rgba(255, 0, 255, 0.6),-6px -6px 0 rgba(0, 255, 255, 0.34);--glow-sm:0 0 12px rgba(255, 0, 255, 0.22);--glow-md:0 0 24px rgba(0, 255, 255, 0.18)}html[data-theme=goldfish]{--bg:#fff3e6;--text:#5c2c0a;--muted:#8a5a30;--line:#ffd2a6;--white:#ffffff;--blue:#ff6a1a;--surface-0:var(--bg);--surface-3:rgba(255, 252, 247, 0.98);--text-strong:#431f06;--text-body:var(--text);--text-muted:var(--muted);--text-inverse:#ffffff;--text-on-image:#ffffff;--border-subtle:var(--line);--border-strong:#b35900;--accent:#c74300;--accent-hover:#a53800;--accent-contrast:#ffffff;--danger:#c62828;--danger-contrast:#ffffff;--success:#2e7d32;--success-contrast:#ffffff;--warning:#7c5000;--warning-contrast:#ffffff;--info:#225fc2;--info-contrast:#ffffff;--focus-ring:#d94e00;--page-wash:radial-gradient(980px 520px at 50% 100%, rgba(255, 106, 26, 0.22), transparent 56%),radial-gradient(1200px 620px at -10% -10%, rgba(255, 200, 140, 0.3), transparent 52%),radial-gradient(920px 420px at 110% 0%, rgba(255, 235, 210, 0.4), transparent 44%);--header-bg:rgba(255, 250, 244, 0.9);--header-border:rgba(255, 106, 26, 0.5);--nav-ink:#8a5225;--nav-ink-strong:#431f06;--nav-hover-bg:rgba(255, 106, 26, 0.14);--surface-1:rgba(255, 255, 255, 0.95);--surface-2:rgba(255, 246, 235, 0.98);--theme-accent:#ff6a1a;--theme-accent-strong:#d94e00;--theme-accent-soft:rgba(255, 106, 26, 0.2);--shadow:0 14px 34px rgba(196, 87, 10, 0.16);--glow-sm:0 0 10px rgba(255, 106, 26, 0.16);--glow-md:0 0 22px rgba(255, 106, 26, 0.2)}html[data-theme=cobblestone]{--bg:#f3f2f1;--text:#2c2c2c;--muted:#6b6b6a;--line:#d8d6d3;--white:#ffffff;--blue:#5c5f63;--surface-0:var(--bg);--surface-3:rgba(255, 255, 255, 0.98);--text-strong:#1c1c1c;--text-body:var(--text);--text-muted:var(--muted);--text-inverse:#ffffff;--text-on-image:#ffffff;--border-subtle:var(--line);--border-strong:#7d7b78;--accent:#55575b;--accent-hover:#3d3f42;--accent-contrast:#ffffff;--danger:#a3342e;--danger-contrast:#ffffff;--success:#3d6b45;--success-contrast:#ffffff;--warning:#7a6a2e;--warning-contrast:#ffffff;--info:#3a5a78;--info-contrast:#ffffff;--focus-ring:#55575b;--page-wash:radial-gradient(1100px 560px at -10% -10%, rgba(120, 120, 118, 0.12), transparent 52%),radial-gradient(900px 420px at 110% 0%, rgba(180, 180, 176, 0.14), transparent 45%);--header-bg:rgba(243, 242, 241, 0.88);--header-border:rgba(180, 178, 174, 0.7);--nav-ink:#575654;--nav-ink-strong:#1c1c1c;--nav-hover-bg:rgba(0, 0, 0, 0.06);--surface-1:rgba(255, 255, 255, 0.92);--surface-2:rgba(248, 247, 246, 0.95);--theme-accent:#8a8d91;--theme-accent-strong:#5c5f63;--theme-accent-soft:rgba(138, 141, 145, 0.18);--shadow:0 12px 32px rgba(60, 60, 58, 0.12);--glow-sm:0 0 8px rgba(138, 141, 145, 0.14);--glow-md:0 0 20px rgba(138, 141, 145, 0.16)}html[data-theme=bark]{--bg:#241a12;--text:#f0e0d0;--muted:#c9ac8e;--line:#4a3626;--white:#3a2a1c;--blue:#d99a54;--surface-0:var(--bg);--surface-3:rgba(58, 42, 28, 0.98);--text-strong:#fff6ec;--text-body:var(--text);--text-muted:var(--muted);--text-inverse:#241a12;--text-on-image:#ffffff;--border-subtle:var(--line);--border-strong:#8a6f52;--accent:#d99a54;--accent-hover:#e8b06a;--accent-contrast:#241a12;--danger:#ff6b5c;--danger-contrast:#2a1000;--success:#7ed88a;--success-contrast:#06210b;--warning:#e8b34d;--warning-contrast:#2a1c00;--info:#8fb3d9;--info-contrast:#0a1520;--focus-ring:#e0a868;--page-wash:radial-gradient(1100px 600px at -10% -10%, rgba(180, 120, 60, 0.14), transparent 52%),radial-gradient(900px 420px at 110% 0%, rgba(120, 80, 40, 0.14), transparent 45%);--header-bg:rgba(30, 20, 13, 0.88);--header-border:rgba(90, 65, 40, 0.7);--nav-ink:#c9ac8e;--nav-ink-strong:#fff6ec;--nav-hover-bg:rgba(255, 255, 255, 0.06);--surface-1:rgba(45, 32, 22, 0.9);--surface-2:rgba(38, 27, 18, 0.94);--theme-accent:#d99a54;--theme-accent-strong:#e8b06a;--theme-accent-soft:rgba(217, 154, 84, 0.2);--shadow:0 12px 34px rgba(0, 0, 0, 0.4);--shadow-0:none;--shadow-1:0 2px 8px rgba(0, 0, 0, 0.22);--shadow-2:0 12px 34px rgba(0, 0, 0, 0.4);--shadow-3:0 18px 36px rgba(0, 0, 0, 0.52);--shadow-4:0 28px 48px rgba(0, 0, 0, 0.64);--glow-sm:0 0 10px rgba(217, 154, 84, 0.18);--glow-md:0 0 24px rgba(217, 154, 84, 0.22)}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{background:var(--page-wash),var(--bg);color:var(--text);font-family:var(--font-sans);line-height:var(--lh-normal)}html[data-theme=sakura] body{background-image:radial-gradient(ellipse 8px 14px at 22px 24px,rgba(255,183,197,.8) 0 60%,transparent 64%),radial-gradient(ellipse 7px 13px at 112px 40px,rgba(255,250,252,.92) 0 58%,transparent 63%),radial-gradient(ellipse 9px 15px at 72px 122px,rgba(255,133,178,.28) 0 58%,transparent 63%),radial-gradient(ellipse 8px 13px at 170px 78px,rgba(255,224,236,.8) 0 58%,transparent 63%),radial-gradient(circle at 50% 100%,rgba(255,183,197,.46),transparent 42%),var(--page-wash),linear-gradient(var(--bg),var(--bg));background-repeat:repeat,repeat,repeat,repeat,no-repeat,no-repeat,no-repeat;background-size:220px 220px,280px 280px,260px 260px,320px 320px,auto,auto,auto;background-position:0 -140px,110px -240px,160px -180px,240px -300px,0 100%,0 0,0 0;animation:30s linear infinite sakura-petals-fall}html[data-theme=diamond] body{background-image:url("../images/theme-patterns/diamond-facets.png"),var(--page-wash),linear-gradient(var(--bg),var(--bg));background-repeat:repeat,no-repeat,no-repeat;background-size:128px 224px,auto,auto;background-attachment:fixed,fixed,fixed}html[data-theme=vaporwave] body{position:relative;background-image:repeating-linear-gradient(180deg,rgba(255,255,255,.05) 0 1px,rgba(0,0,0,0) 1px 3px),linear-gradient(90deg,rgba(255,0,255,.06),rgba(0,255,255,.02),rgba(255,255,0,.05)),radial-gradient(circle at 50% 112%,rgba(255,255,0,.15),transparent 30%),var(--page-wash),linear-gradient(var(--bg),var(--bg));background-attachment:fixed}html[data-theme=vaporwave] body::after,html[data-theme=vaporwave] body::before{content:"";position:fixed;left:0;right:0;pointer-events:none}html[data-theme=vaporwave] body::before{inset:0;z-index:0;opacity:.05;background-image:radial-gradient(circle at 20% 18%,rgba(255,255,255,.42) 0 1px,transparent 1px 100%),radial-gradient(circle at 78% 32%,rgba(255,255,255,.22) 0 1px,transparent 1px 100%),radial-gradient(circle at 48% 62%,rgba(255,255,255,.3) 0 1px,transparent 1px 100%);background-size:160px 160px,220px 220px,180px 180px;mix-blend-mode:screen;animation:1.2s steps(2) infinite vaporwave-static-shift}html[data-theme=vaporwave] body::after{bottom:-10vh;left:50%;z-index:0;width:180vw;height:34vh;transform:translateX(-50%) perspective(640px) rotateX(68deg);background:linear-gradient(90deg,#f0f 0,#0ff 35%,#ff0 68%,#f0f 100%);opacity:.16;filter:blur(36px);-webkit-mask-image:linear-gradient(to top,black 56%,transparent 100%);mask-image:linear-gradient(to top,black 56%,transparent 100%);animation:4s ease-in-out infinite vaporwave-road-flicker}@keyframes sakura-petals-fall{from{background-position:0 -140px,110px -240px,160px -180px,240px -300px,0 0,0 0}to{background-position:96px 920px,8px 1080px,232px 980px,172px 1180px,0 0,0 0}}@keyframes vaporwave-static-shift{0%,100%{transform:translate3d(0,0,0)}33%{transform:translate3d(1px,-1px,0)}66%{transform:translate3d(-1px,1px,0)}}@keyframes vaporwave-road-flicker{0%,100%{opacity:.18;transform:translateX(-50%) perspective(640px) rotateX(68deg) scale(1)}50%{opacity:.3;transform:translateX(-50%) perspective(640px) rotateX(70deg) scale(1.04)}}a{color:var(--blue);text-underline-offset:0.18em}a:hover{color:var(--theme-accent-strong)}img{max-width:100%;display:block}.skip-link{position:absolute;left:-9999px;top:0;z-index:1000}.skip-link:focus{left:1rem;top:1rem;padding:.5rem .75rem;background:var(--accent);color:var(--accent-contrast);border-radius:var(--radius-sm)}.site-header{position:sticky;top:0;z-index:120;backdrop-filter:saturate(160%) blur(12px);background:var(--header-bg);border-bottom:1px solid var(--header-border);box-shadow:0 10px 28px rgba(15,23,42,.05)}.nav-wrap{width:min(var(--max),calc(100% - 2rem));margin:0 auto;min-height:44px;padding:.22rem 0;display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap}.brand{display:inline-flex;align-items:center;gap:.5rem;color:var(--nav-ink-strong);text-decoration:none;font-size:.82rem;font-weight:700;letter-spacing:-.02em;min-width:0;max-width:min(100%,28rem);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0}.brand::before{content:"";width:.62rem;height:.62rem;border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,var(--theme-accent) 52%,#fff),var(--theme-accent-strong));box-shadow:0 0 0 5px color-mix(in srgb,var(--theme-accent-soft) 72%,transparent),0 8px 18px color-mix(in srgb,var(--theme-accent) 28%,transparent);flex-shrink:0}.site-nav{flex:1 1 auto;min-width:0;overflow:hidden}.site-nav ul{margin:0;padding:0;display:flex;align-items:center;justify-content:flex-start;gap:.08rem;list-style:none;flex-wrap:nowrap}.site-nav ul>li{display:flex;align-items:center;position:relative}.site-nav a{display:inline-flex;align-items:center;justify-content:center;gap:.2rem;min-height:1.75rem;padding:.18rem .46rem;border:1px solid transparent;border-radius:999px;color:var(--nav-ink);text-decoration:none;font-size:.75rem;font-weight:500;letter-spacing:-.01em;white-space:nowrap;transition:color 160ms,background 160ms,border-color 160ms,box-shadow 160ms,transform 160ms}.site-nav a[aria-current=page]{color:var(--nav-ink-strong);font-weight:600;background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,.3)),var(--surface-1);border-color:color-mix(in srgb,var(--theme-accent) 28%,rgba(255,255,255,.88));box-shadow:0 10px 24px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.78)}.site-nav a:hover{color:var(--nav-ink-strong);background:color-mix(in srgb,var(--nav-hover-bg) 88%,rgba(255,255,255,.44));border-color:color-mix(in srgb,var(--line) 72%,rgba(255,255,255,.36));box-shadow:inset 0 1px 0 rgba(255,255,255,.6);transform:translateY(-1px)}main{width:min(var(--max),calc(100% - 2rem));margin:0 auto;padding:2.2rem 0 1.4rem}.page-hero{display:grid;gap:.65rem;margin-bottom:1.3rem}.page-hero h1{margin:0;font-size:clamp(1.7rem, 3.8vw, 3rem);line-height:1.08;letter-spacing:-.03em}.page-hero p{margin:0;color:var(--muted);max-width:75ch}.hero-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.3rem}.pill{display:inline-flex;align-items:center;border:1px solid var(--line);background:var(--surface-1);color:var(--text-body);border-radius:999px;padding:.24rem .58rem;font-size:.77rem;white-space:nowrap}.controls-panel{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:var(--shadow);padding:.95rem;margin-bottom:1.05rem}.search-row{display:grid;gap:.75rem;grid-template-columns:minmax(240px,2.5fr) minmax(150px,1fr) auto;align-items:end}label span.label{display:inline-block;margin-bottom:.22rem;color:var(--muted);font-size:.84rem}input[type=password],input[type=search],input[type=text],select{width:100%;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text-body);padding:.6rem .72rem}input[type=password]::placeholder,input[type=search]::placeholder,input[type=text]::placeholder{color:var(--text-muted)}input[type=password]:focus,input[type=search]:focus,input[type=text]:focus,select:focus{border-color:var(--focus-ring);outline:2px solid var(--focus-ring);outline-offset:1px}.button,button{border:1px solid var(--accent-hover);border-radius:var(--radius-md);background:linear-gradient(180deg,var(--accent),var(--accent-hover));color:var(--accent-contrast);padding:.58rem .76rem;font-weight:600;cursor:pointer}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.button.secondary,button.secondary{background:var(--surface-1);border-color:var(--border-subtle);color:var(--text-body)}.button:hover,button:hover{filter:brightness(1.04)}.filter-group-wrap{margin-top:.9rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem}.filter-group{border:1px solid var(--border-subtle);background:var(--surface-2);border-radius:var(--radius-md);padding:.65rem}.filter-group h3{font-size:.9rem;margin:0 0 .55rem;color:var(--text-strong)}.chips{display:flex;flex-wrap:wrap;gap:.42rem}.chip{border:1px solid var(--border-subtle);background:var(--surface-1);color:var(--text-body);border-radius:999px;padding:.3rem .52rem;font-size:.77rem}.chip[aria-pressed=true]{border-color:var(--accent);background:var(--theme-accent-soft);color:var(--text-strong)}.grid-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem}.result-count{color:var(--muted);font-size:.92rem}.about-card,.about-step,.card-shell,.detail-main,.detail-side,.github-lesson-card,.project-card{--card-radius:clamp(14px, 1.8vw, 22px);--card-padding:1rem;--card-border:rgba(210, 210, 215, 0.66);--card-background:linear-gradient(180deg, var(--surface-1), var(--surface-2));--card-shadow-rest:0 10px 24px rgba(15, 23, 42, 0.06);--card-shadow-hover:0 16px 32px rgba(15, 23, 42, 0.11);position:relative;min-width:0;border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--card-background);box-shadow:var(--card-shadow-rest);overflow:hidden;transition:transform 180ms var(--ease-smooth, ease),box-shadow 180ms var(--ease-smooth, ease),border-color 180ms var(--ease-smooth, ease)}a.card-shell,button.card-shell{color:inherit;text-decoration:none}.card-shell--border{border-color:color-mix(in srgb,var(--card-border) 88%,var(--theme-accent-soft))}.card-shell--featured{display:grid;gap:0}.card-shell--image-full{color:var(--text-on-image);background:color-mix(in srgb,var(--surface-0) 72%,#000)}.card-shell--image-full .card-media{position:absolute;inset:0;z-index:0;border:0}.card-shell--image-full .card-body{position:relative;z-index:1;min-height:100%;align-content:end;background:linear-gradient(180deg,rgba(5,8,12,.08) 0,rgba(5,8,12,.78) 100%)}.card-shell--image-full .card-sub,.card-shell--image-full .card-title{color:var(--text-on-image)}.card-shell--image-full .card-sub{color:rgba(232,238,248,.86)}.card-media{position:relative;overflow:hidden;background:color-mix(in srgb,var(--surface-2) 92%,#fff)}.card-media img{width:100%;height:100%;object-fit:cover}.card-body{padding:var(--card-padding);display:grid;gap:.45rem;align-content:start}.card-title{margin:0;font-size:.98rem;letter-spacing:-.01em;line-height:1.25}.card-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.2rem}@keyframes ui-skeleton-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.skeleton{--skeleton-base:color-mix(in srgb, var(--surface-2) 88%, white);--skeleton-highlight:color-mix(in srgb, var(--surface-1) 72%, white 28%);display:block;border-radius:.55rem;background:linear-gradient(90deg,var(--skeleton-base) 0,var(--skeleton-base) 35%,var(--skeleton-highlight) 50%,var(--skeleton-base) 65%,var(--skeleton-base) 100%);background-size:240% 100%;animation:1.4s ease-in-out infinite ui-skeleton-shimmer}.skeleton-text{height:.92rem;margin:0}.skeleton-text[data-width=short]{width:38%}.skeleton-text[data-width=medium]{width:62%}.skeleton-text[data-width=long]{width:88%}.skeleton-avatar{width:2rem;height:2rem;border-radius:999px}.skeleton-chip{width:5.4rem;height:2rem;border-radius:999px}.skeleton-card{--card-padding:1rem;display:grid;gap:0;min-width:0;border:1px solid color-mix(in srgb,var(--card-border,rgba(210,210,215,.66)) 88%,var(--theme-accent-soft,rgba(84,171,255,.18)));border-radius:var(--card-radius,clamp(14px,1.8vw,22px));background:linear-gradient(180deg,var(--surface-1),var(--surface-2));box-shadow:var(--card-shadow-rest,0 10px 24px rgba(15,23,42,.06));overflow:hidden;pointer-events:none}.skeleton-card>*{min-width:0}.skeleton-card--featured{display:grid;gap:0}@media (min-width:1024px){.card-shell--featured{grid-template-columns:minmax(0,1.08fr) minmax(260px,0.92fr)}.card-shell--featured.card-shell--reverse{grid-template-columns:minmax(260px,0.92fr) minmax(0,1.08fr)}.card-shell--featured.card-shell--reverse>.card-media{order:2}.card-shell--featured.card-shell--reverse>.card-body{order:1}.skeleton-card--featured{grid-template-columns:minmax(0,1.08fr) minmax(260px,0.92fr)}}.skeleton-media{min-height:11.25rem;border-bottom:1px solid rgba(210,210,215,.52)}.skeleton-card--featured .skeleton-media{min-height:100%}.skeleton-media[data-ratio=video]{aspect-ratio:16/9}.skeleton-media[data-ratio=feature]{aspect-ratio:16/10}.skeleton-body{padding:var(--card-padding);display:grid;gap:.55rem;align-content:start}.skeleton-meta{display:flex;gap:.6rem;align-items:flex-start}.skeleton-meta-copy{flex:1;display:grid;gap:.45rem;min-width:0}.skeleton-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.2rem}.skeleton-grid{display:grid;gap:1rem}.skeleton-grid--projects{grid-template-columns:repeat(2,minmax(0,1fr))}.skeleton-timeline{display:grid;gap:1rem}.skeleton-timeline-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.85rem;align-items:start}.skeleton-timeline-rail{position:relative;display:grid;justify-items:center;gap:.35rem;min-height:100%}.skeleton-timeline-rail::after{content:"";width:2px;min-height:100%;border-radius:999px;background:color-mix(in srgb,var(--surface-2) 80%,var(--line,#d2d2d7))}.skeleton-timeline-dot{width:.95rem;height:.95rem;border-radius:999px}@media (max-width:720px){.skeleton-grid--projects{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html[data-theme=sakura] body,html[data-theme=vaporwave] body::after,html[data-theme=vaporwave] body::before{animation:none}.skeleton{animation:none;background-position:50% 0}}.project-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.project-card{--card-padding:0.78rem}.card-shell:hover,.project-card:hover{transform:translateY(-2px);box-shadow:var(--card-shadow-hover)}.card-link{display:grid;color:inherit;text-decoration:none;height:100%}.card-thumb{aspect-ratio:16/9;border-bottom:1px solid var(--border-subtle);background:var(--surface-2)}.card-body{gap:.38rem}.card-sub{margin:0;font-size:.82rem;color:var(--muted)}.badge-row{display:flex;flex-wrap:wrap;gap:.34rem}.badge{display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--border-subtle);background:var(--surface-2);color:var(--text-body);padding:.17rem .5rem;font-size:.72rem}.badge.diff-beginner{border-color:var(--success);background:color-mix(in srgb,var(--success) 12%,var(--surface-1))}.badge.diff-intermediate{border-color:var(--warning);background:color-mix(in srgb,var(--warning) 12%,var(--surface-1))}.badge.diff-advanced{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,var(--surface-1))}.media-row{margin-bottom:1.2rem}.row-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.62rem}.row-header h2{font-size:1.14rem;margin:0}.row-sub{margin:.2rem 0 0;color:var(--muted);font-size:.85rem}.row-controls{display:inline-flex;gap:.42rem}.row-controls button{width:34px;height:34px;border-radius:999px;padding:0;font-size:1rem}.row-track-wrap{position:relative}.row-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,280px);gap:.92rem;overflow-x:auto;overflow-y:hidden;padding-bottom:.35rem;scroll-snap-type:x proximity;scrollbar-width:thin;cursor:grab}.row-track.is-dragging{cursor:grabbing;user-select:none}.row-track .project-card{scroll-snap-align:start}.row-track::-webkit-scrollbar{height:10px}.row-track::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px}.empty-state{border:1px dashed var(--border-strong);background:var(--surface-1);border-radius:var(--radius-md);padding:1rem;color:var(--muted)}.detail-hero{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden;margin-bottom:1.05rem;background:var(--surface-1)}.detail-hero img{width:100%;aspect-ratio:16/9;object-fit:cover}.detail-layout{display:grid;gap:1rem;grid-template-columns:minmax(0,2.1fr) minmax(260px,1fr);margin-bottom:1.25rem}.detail-main,.detail-side{padding:1rem}.detail-main h2,.detail-side h2{margin:0 0 .6rem;font-size:1.03rem}.detail-main p{margin:.55rem 0;color:var(--text-body)}.about-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0 0 1.25rem}.about-card{padding:1rem}.about-card h2{margin:0 0 .55rem;font-size:1.02rem}.about-card p{margin:0;color:var(--text-body)}.about-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-top:.8rem}.about-step{--card-radius:var(--radius-md);--card-padding:0.9rem;--card-background:linear-gradient(180deg, var(--surface-1), var(--surface-2));padding:.9rem}.about-step strong{display:block;margin-bottom:.45rem;font-size:.88rem;letter-spacing:.01em}.about-step p{margin:0;color:var(--text-body);font-size:.93rem}.about-list{margin:.75rem 0 0;padding-left:1.1rem;color:var(--text-body)}.about-list li+li{margin-top:.55rem}.about-note{margin-top:.85rem;padding:.8rem .9rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--info) 10%,var(--surface-1));border:1px solid color-mix(in srgb,var(--info) 35%,var(--border-subtle));color:var(--text-body)}.meta-list{display:grid;gap:.55rem;margin:0}.meta-list dt{font-size:.78rem;color:var(--muted)}.meta-list dd{margin:.12rem 0 0}.link-list{display:grid;gap:.5rem;margin-top:.7rem}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-top:.6rem}.gallery-grid img{border-radius:var(--radius-md);border:1px solid var(--border-subtle);aspect-ratio:16/9;object-fit:cover}.students-list{display:grid;gap:1rem}.student-panel{border:1px solid var(--border-subtle);background:var(--surface-1);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:.9rem}.student-panel h2{margin:0 0 .3rem;font-size:1rem}.student-meta{margin:0 0 .75rem;color:var(--muted);font-size:.84rem}.student-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.site-footer{width:min(var(--max),calc(100% - 2rem));margin:0 auto;padding:1.1rem 0 2rem;color:var(--muted);font-size:.89rem}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;border-radius:10px}.visually-hidden{border:0;clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@media (min-width:720px){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:980px){.project-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1240px){.project-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (max-width:980px){.detail-layout{grid-template-columns:1fr}.about-flow,.about-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:880px){.search-row{grid-template-columns:1fr}}@media (max-width:620px){.about-flow,.about-grid{grid-template-columns:1fr}}.login-main{min-height:100vh;display:grid;place-items:center;padding:1.2rem}.login-card{width:min(460px,100%);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:var(--shadow);padding:1rem}.login-card h1{margin-top:.5rem;margin-bottom:.4rem}.stack{display:grid;gap:.75rem}.sc-toolbar-wrap{position:sticky;top:44px;z-index:40;background:rgba(245,245,247,.92);backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid rgba(210,210,215,.8)}.sc-toolbar-inner{width:min(var(--max),calc(100% - 2rem));margin:0 auto}.sc-toolbar-row{display:flex;align-items:center;gap:.46rem;padding:.44rem 0;flex-wrap:wrap}.sc-search-field{flex:1 1 160px;min-width:100px}.sc-search-field input[type=search],.sc-sort-field select{padding:.35rem .6rem;font-size:.86rem;border-radius:var(--radius-sm)}.sc-sort-field select{width:auto}.sc-btn{padding:.35rem .68rem;font-size:.84rem;border-radius:var(--radius-sm);white-space:nowrap;flex-shrink:0}.sc-count{color:var(--muted);font-size:.82rem;white-space:nowrap;margin:0 0 0 auto;flex-shrink:0}.sc-filter-panel{border-top:1px solid rgba(210,210,215,.6);padding:.7rem 0 .85rem}.sc-filter-panel .chip{padding:.18rem .4rem;font-size:.72rem}.sc-filter-panel .filter-group h3{font-size:.82rem;margin-bottom:.38rem}@media (max-width:520px){.sc-count{display:none}}.nav-toggle{display:none;align-items:center;justify-content:center;background:0 0;border:1px solid transparent;cursor:pointer;padding:.46rem;color:var(--nav-ink);border-radius:999px;line-height:1;position:relative;z-index:2;flex-shrink:0;order:1;transition:background 160ms,border-color 160ms,color 160ms,transform 160ms}.nav-toggle:hover{background:color-mix(in srgb,var(--nav-hover-bg) 88%,rgba(255,255,255,.44));border-color:color-mix(in srgb,var(--line) 72%,rgba(255,255,255,.36));color:var(--nav-ink-strong);transform:translateY(-1px)}.nav-settings{position:relative;flex-shrink:0;margin-left:auto}.nav-settings-toggle{display:inline-flex;align-items:center;gap:.3rem;min-height:1.75rem;padding:.18rem .3rem .18rem .5rem;border:1px solid color-mix(in srgb,var(--line) 70%,rgba(255,255,255,.88));border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.56),rgba(255,255,255,.24)),var(--surface-1);color:var(--nav-ink-strong);font:inherit;font-size:.72rem;font-weight:600;cursor:pointer;box-shadow:0 18px 42px rgba(19,28,22,.14),inset 0 1px 0 rgba(255,255,255,.62);-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%)}.nav-settings-toggle:hover,.nav-settings.is-open .nav-settings-toggle{border-color:color-mix(in srgb,var(--theme-accent) 42%,rgba(255,255,255,.76));background:linear-gradient(180deg,rgba(255,255,255,.64),rgba(255,255,255,.28)),var(--surface-2)}.nav-settings-toggle svg{pointer-events:none;opacity:.8}.nav-toggle svg{pointer-events:none}.nav-settings-status{display:inline-flex;align-items:center;justify-content:center;min-height:1.45rem;padding:.16rem .54rem;border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--theme-accent) 24%,rgba(255,255,255,.8)),color-mix(in srgb,var(--theme-accent) 38%,rgba(255,255,255,.18)));color:var(--theme-accent-strong);font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.nav-settings-panel{position:absolute;top:calc(100% + .72rem);right:0;width:min(440px,calc(100vw - 2rem));padding:1.15rem;border:1px solid color-mix(in srgb,var(--line) 68%,rgba(255,255,255,.88));border-radius:30px;background:radial-gradient(circle at top right,color-mix(in srgb,var(--theme-accent) 18%,rgba(255,255,255,.72)),transparent 38%),linear-gradient(180deg,rgba(255,255,255,.62),rgba(255,255,255,.24)),linear-gradient(180deg,var(--surface-1),var(--surface-2));box-shadow:0 30px 84px rgba(19,28,22,.18),0 14px 36px rgba(82,97,84,.12),inset 0 1px 0 rgba(255,255,255,.72);-webkit-backdrop-filter:blur(24px) saturate(155%);backdrop-filter:blur(24px) saturate(155%);z-index:160}.nav-settings-head{display:grid;gap:.34rem;margin-bottom:.9rem}.nav-settings-current,.nav-settings-eyebrow{margin:0}.nav-settings-eyebrow{color:var(--muted);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.nav-settings-current{color:var(--text);font-family:var(--font-sans);margin-top:.18rem;font-size:1.42rem;line-height:1.02;font-weight:650}.nav-settings-note{margin:0 0 .95rem;color:var(--muted);font-size:.81rem;line-height:1.55}.nav-settings-section{display:grid;gap:.78rem}.nav-settings-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-bottom:.72rem;padding:.28rem;border:1px solid color-mix(in srgb,var(--line) 62%,rgba(255,255,255,.76));border-radius:20px;background:rgba(255,255,255,.24);box-shadow:inset 0 1px 0 rgba(255,255,255,.54)}.nav-mode-pill{border:none;border-radius:16px;padding:.72rem .8rem;background:0 0;color:var(--muted);font:inherit;font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background 160ms,color 160ms,transform 160ms,box-shadow 160ms}.nav-mode-pill:hover{transform:translateY(-1px);color:var(--text)}.nav-mode-pill.is-active{background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(255,255,255,.54)),color-mix(in srgb,var(--theme-accent) 16%,rgba(255,255,255,.9));color:var(--theme-accent-strong);box-shadow:0 10px 24px rgba(12,24,22,.08),inset 0 1px 0 rgba(255,255,255,.82)}.nav-tone-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.62rem;margin-bottom:.98rem}.nav-tone-pill{display:flex;align-items:center;gap:.72rem;min-height:3.2rem;padding:.78rem .9rem;border:1px solid color-mix(in srgb,var(--line) 66%,rgba(255,255,255,.82));border-radius:20px;background:rgba(255,255,255,.34);color:var(--text);font:inherit;cursor:pointer;transition:transform 160ms,border-color 160ms,background 160ms,opacity 160ms}.nav-tone-pill:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--theme-accent) 34%,rgba(255,255,255,.84))}.nav-tone-pill.is-active{border-color:color-mix(in srgb,var(--theme-accent) 44%,rgba(255,255,255,.88));background:linear-gradient(180deg,color-mix(in srgb,var(--theme-accent) 20%,rgba(255,255,255,.66)),rgba(255,255,255,.24)),rgba(255,255,255,.5);box-shadow:inset 0 1px 0 rgba(255,255,255,.78)}.nav-tone-pill.is-muted{opacity:.64}.nav-tone-icon{display:inline-flex;align-items:center;justify-content:center;min-width:2.2rem;height:2.2rem;border-radius:999px;background:rgba(255,255,255,.62);color:var(--theme-accent-strong);font-size:1rem;font-weight:700}.nav-tone-copy{font-size:.9rem;font-weight:700}.nav-theme-grid{display:grid;grid-template-columns:1fr;gap:.68rem}.nav-theme-chip{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.88rem;min-height:4.35rem;padding:.92rem .96rem;border:1px solid color-mix(in srgb,var(--line) 66%,rgba(255,255,255,.82));border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.4),rgba(255,255,255,.24)),rgba(255,255,255,.22);color:var(--text);font:inherit;cursor:pointer;transition:transform 160ms,border-color 160ms,background 160ms,opacity 160ms,box-shadow 160ms}.nav-theme-chip:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--theme-accent) 38%,rgba(255,255,255,.8));background:linear-gradient(180deg,rgba(255,255,255,.48),rgba(255,255,255,.28)),rgba(255,255,255,.28)}.nav-theme-chip.is-active{border-color:color-mix(in srgb,var(--theme-accent) 44%,rgba(255,255,255,.8));background:linear-gradient(180deg,color-mix(in srgb,var(--theme-accent) 24%,rgba(255,255,255,.76)),color-mix(in srgb,var(--theme-accent) 14%,rgba(255,255,255,.22))),rgba(255,255,255,.42);box-shadow:0 14px 32px color-mix(in srgb,var(--theme-accent) 16%,transparent),inset 0 1px 0 rgba(255,255,255,.74)}.nav-theme-chip.is-muted{opacity:.62}.nav-theme-label{display:grid;gap:.18rem;text-align:left}.nav-theme-label strong{color:var(--text);font-size:.92rem;line-height:1.08}.nav-theme-label small{color:var(--muted);font-size:.74rem;line-height:1.35}.nav-theme-swatch{width:2.7rem;height:1.7rem;border-radius:999px;border:1px solid rgba(255,255,255,.65);box-shadow:0 0 0 4px rgba(255,255,255,.18),inset 0 1px 0 rgba(255,255,255,.42);flex-shrink:0}.nav-theme-chip[data-theme=day] .nav-theme-swatch{background:linear-gradient(135deg,#dff1ff,#6eb6ff)}.nav-theme-chip[data-theme=night] .nav-theme-swatch{background:linear-gradient(135deg,#445c93,#111827)}.nav-theme-chip[data-theme=sakura] .nav-theme-swatch{background:linear-gradient(135deg,#fff7fb,#ff85b2)}.nav-theme-chip[data-theme=diamond] .nav-theme-swatch{background:linear-gradient(135deg,#eafcff,#087985)}.nav-theme-chip[data-theme=emerald] .nav-theme-swatch{background:linear-gradient(135deg,#f4fff7,#50db82)}.nav-theme-chip[data-theme=vaporwave] .nav-theme-swatch{background:linear-gradient(135deg,#050505 12%,#f0f 52%,#0ff 100%)}.nav-theme-chip[data-theme=goldfish] .nav-theme-swatch{background:linear-gradient(135deg,#fff3e6,#ff6a1a)}.nav-theme-chip[data-theme=cobblestone] .nav-theme-swatch{background:linear-gradient(135deg,#f3f2f1,#8a8d91)}.nav-theme-chip[data-theme=bark] .nav-theme-swatch{background:linear-gradient(135deg,#241a12,#d99a54)}.nav-theme-tone{font-size:.72rem;opacity:.45;line-height:1;flex-shrink:0;user-select:none}.nav-theme-chip.is-active .nav-theme-tone{opacity:.7}html[data-theme=emerald] .about-card,html[data-theme=emerald] .about-step,html[data-theme=emerald] .button.secondary,html[data-theme=emerald] .card-shell,html[data-theme=emerald] .detail-main,html[data-theme=emerald] .detail-side,html[data-theme=emerald] .github-lesson-card,html[data-theme=emerald] .nav-mode-pill.is-active,html[data-theme=emerald] .nav-settings-panel,html[data-theme=emerald] .nav-settings-toggle,html[data-theme=emerald] .nav-theme-chip,html[data-theme=emerald] .nav-tone-pill,html[data-theme=emerald] .pill,html[data-theme=emerald] .project-card,html[data-theme=emerald] .site-header,html[data-theme=emerald] button.secondary,html[data-theme=emerald] input[type=search],html[data-theme=emerald] input[type=text],html[data-theme=emerald] select{background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(244,255,247,.92));border-color:rgba(56,155,101,.56);box-shadow:0 12px 28px rgba(56,155,101,.12),inset 0 1px 0 #fff,inset 0 -2px 0 rgba(80,219,130,.08)}html[data-theme=emerald] .nav-mode-pill.is-active,html[data-theme=emerald] .nav-settings-toggle:hover,html[data-theme=emerald] .nav-settings.is-open .nav-settings-toggle,html[data-theme=emerald] .nav-theme-chip.is-active,html[data-theme=emerald] .nav-tone-pill.is-active,html[data-theme=emerald] .site-nav a:hover,html[data-theme=emerald] .site-nav a[aria-current=page]{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(210,255,225,.82));border-color:rgba(56,155,101,.84);color:var(--nav-ink-strong)}html[data-theme=emerald] .nav-settings-eyebrow,html[data-theme=emerald] .nav-settings-note,html[data-theme=emerald] .nav-theme-label small{color:#4f725c}html[data-theme=emerald] .nav-settings-status,html[data-theme=emerald] .nav-theme-swatch,html[data-theme=emerald] .nav-tone-icon{box-shadow:0 0 0 1px rgba(80,219,130,.24),0 8px 18px rgba(80,219,130,.12)}.nav-theme-chip[data-theme=topaz] .nav-theme-swatch{background:linear-gradient(135deg,#fff9e3,#ffb900)}html[data-theme=topaz] .about-card,html[data-theme=topaz] .about-step,html[data-theme=topaz] .button.secondary,html[data-theme=topaz] .card-shell,html[data-theme=topaz] .detail-main,html[data-theme=topaz] .detail-side,html[data-theme=topaz] .github-lesson-card,html[data-theme=topaz] .nav-mode-pill.is-active,html[data-theme=topaz] .nav-settings-panel,html[data-theme=topaz] .nav-settings-toggle,html[data-theme=topaz] .nav-theme-chip,html[data-theme=topaz] .nav-tone-pill,html[data-theme=topaz] .pill,html[data-theme=topaz] .project-card,html[data-theme=topaz] .site-header,html[data-theme=topaz] button.secondary,html[data-theme=topaz] input[type=search],html[data-theme=topaz] input[type=text],html[data-theme=topaz] select{background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,250,229,.92));border-color:rgba(244,169,0,.6);box-shadow:0 12px 28px rgba(196,133,0,.12),inset 0 1px 0 rgba(255,247,173,.92),inset 0 -2px 0 rgba(244,169,0,.08)}html[data-theme=topaz] .nav-mode-pill.is-active,html[data-theme=topaz] .nav-settings-toggle:hover,html[data-theme=topaz] .nav-settings.is-open .nav-settings-toggle,html[data-theme=topaz] .nav-theme-chip.is-active,html[data-theme=topaz] .nav-tone-pill.is-active,html[data-theme=topaz] .site-nav a:hover,html[data-theme=topaz] .site-nav a[aria-current=page]{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,238,170,.82));border-color:rgba(244,169,0,.88);color:var(--nav-ink-strong)}html[data-theme=topaz] .nav-settings-eyebrow,html[data-theme=topaz] .nav-settings-note,html[data-theme=topaz] .nav-theme-label small{color:#8a6412}html[data-theme=topaz] .nav-settings-status,html[data-theme=topaz] .nav-theme-swatch,html[data-theme=topaz] .nav-tone-icon{box-shadow:0 0 0 1px rgba(244,169,0,.24),0 8px 18px rgba(244,169,0,.12)}html[data-theme=diamond] .nav-mode-pill.is-active,html[data-theme=diamond] .nav-settings-panel,html[data-theme=diamond] .nav-settings-toggle,html[data-theme=diamond] .nav-theme-chip,html[data-theme=diamond] .nav-tone-pill,html[data-theme=diamond] .site-header{border-color:rgba(8,121,133,.18);box-shadow:0 18px 36px rgba(8,121,133,.12),inset 0 1px 0 rgba(255,255,255,.85)}html[data-theme=diamond] .nav-settings-panel,html[data-theme=diamond] .site-header{-webkit-backdrop-filter:blur(22px) saturate(165%);backdrop-filter:blur(22px) saturate(165%)}html[data-theme=diamond] .nav-mode-pill.is-active,html[data-theme=diamond] .nav-settings-toggle:hover,html[data-theme=diamond] .nav-settings.is-open .nav-settings-toggle,html[data-theme=diamond] .nav-theme-chip.is-active,html[data-theme=diamond] .nav-tone-pill.is-active,html[data-theme=diamond] .site-nav a:hover,html[data-theme=diamond] .site-nav a[aria-current=page]{background:linear-gradient(180deg,rgba(96,232,240,.28),rgba(255,255,255,.82)),rgba(238,253,255,.88);border-color:rgba(96,232,240,.38);color:var(--nav-ink-strong)}html[data-theme=diamond] .nav-settings-eyebrow,html[data-theme=diamond] .nav-settings-note,html[data-theme=diamond] .nav-theme-label small{color:#3d6970}html[data-theme=diamond] .nav-settings-status,html[data-theme=diamond] .nav-theme-swatch,html[data-theme=diamond] .nav-tone-icon{box-shadow:0 0 0 1px rgba(96,232,240,.2),0 0 24px rgba(96,232,240,.12)}html[data-theme=diamond] .about-card,html[data-theme=diamond] .about-step,html[data-theme=diamond] .button.secondary,html[data-theme=diamond] .card-shell,html[data-theme=diamond] .detail-main,html[data-theme=diamond] .detail-side,html[data-theme=diamond] .github-lesson-card,html[data-theme=diamond] .nav-settings-panel,html[data-theme=diamond] .nav-settings-toggle,html[data-theme=diamond] .nav-theme-chip,html[data-theme=diamond] .nav-tone-pill,html[data-theme=diamond] .pill,html[data-theme=diamond] .project-card,html[data-theme=diamond] button.secondary,html[data-theme=diamond] input[type=search],html[data-theme=diamond] input[type=text],html[data-theme=diamond] select{background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(238,253,255,.96))}html[data-theme=diamond] :focus-visible{outline:rgba(166,251,255,.92) solid 3px;outline-offset:3px}html[data-theme=diamond] .steam-galaxy-help-toggle,html[data-theme=diamond] .steam-galaxy-overlay-card,html[data-theme=diamond] .steam-galaxy-panel{background:radial-gradient(circle at top right,rgba(96,232,240,.22),transparent 34%),linear-gradient(180deg,rgba(255,255,255,.92),rgba(238,253,255,.96));border-color:rgba(8,121,133,.2);color:#12343b;box-shadow:0 18px 40px rgba(8,121,133,.12),0 0 22px rgba(96,232,240,.18),inset 0 1px 0 rgba(255,255,255,.86);-webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%)}html[data-theme=diamond] .steam-galaxy-node-label,html[data-theme=diamond] .steam-galaxy-panel-title{color:#09292f;fill:#09292f;text-shadow:0 0 16px rgba(96,232,240,.24)}html[data-theme=diamond] .steam-galaxy-overlay-kicker,html[data-theme=diamond] .steam-galaxy-panel small,html[data-theme=diamond] .steam-galaxy-panel-desc,html[data-theme=diamond] .steam-galaxy-panel-eyebrow,html[data-theme=diamond] .steam-galaxy-panel-teaches,html[data-theme=diamond] .steam-galaxy-section-label,html[data-theme=diamond] .steam-galaxy-status{color:#3d6970}html[data-theme=diamond] .steam-galaxy-badge,html[data-theme=diamond] .steam-galaxy-related-btn,html[data-theme=diamond] .steam-galaxy-stat{background:rgba(255,255,255,.72);border-color:rgba(96,232,240,.18)}html[data-theme=diamond] .steam-galaxy-node-surface{stroke:#60e8f0!important;fill:#eafcff!important;fill-opacity:0.9!important}html[data-theme=diamond] .app-launch-link{background:linear-gradient(135deg,#087985 0,#055c66 100%);border:1px solid rgba(96,232,240,.72);color:#fff;box-shadow:0 4px 0 #0d1d4a,0 0 12px rgba(96,232,240,.18)}html[data-theme=diamond] .app-launch-link:focus-visible,html[data-theme=diamond] .app-launch-link:hover{background:#60e8f0;color:#04101f;box-shadow:0 0 28px rgba(96,232,240,.32)}html[data-theme=vaporwave] body,html[data-theme=vaporwave] button,html[data-theme=vaporwave] input,html[data-theme=vaporwave] select,html[data-theme=vaporwave] textarea{font-family:var(--font-mono)}html[data-theme=vaporwave] .about-card,html[data-theme=vaporwave] .about-step,html[data-theme=vaporwave] .app-launch-link,html[data-theme=vaporwave] .button.secondary,html[data-theme=vaporwave] .card-shell,html[data-theme=vaporwave] .detail-main,html[data-theme=vaporwave] .detail-side,html[data-theme=vaporwave] .github-lesson-card,html[data-theme=vaporwave] .nav-mode-pill,html[data-theme=vaporwave] .nav-settings-panel,html[data-theme=vaporwave] .nav-settings-toggle,html[data-theme=vaporwave] .nav-theme-chip,html[data-theme=vaporwave] .nav-tone-pill,html[data-theme=vaporwave] .pill,html[data-theme=vaporwave] .project-card,html[data-theme=vaporwave] .site-header,html[data-theme=vaporwave] .steam-galaxy-help-toggle,html[data-theme=vaporwave] .steam-galaxy-overlay-card,html[data-theme=vaporwave] .steam-galaxy-panel,html[data-theme=vaporwave] button.secondary,html[data-theme=vaporwave] input[type=search],html[data-theme=vaporwave] input[type=text],html[data-theme=vaporwave] select{background:linear-gradient(180deg,rgba(20,0,38,.96),rgba(0,0,0,.98));border-color:rgba(255,0,255,.58);border-radius:8px;color:#fff;box-shadow:5px 5px 0 rgba(255,0,255,.45),-3px -3px 0 rgba(0,255,255,.22)}html[data-theme=vaporwave] .nav-settings-panel,html[data-theme=vaporwave] .site-header{-webkit-backdrop-filter:blur(14px) saturate(120%);backdrop-filter:blur(14px) saturate(120%)}html[data-theme=vaporwave] .nav-settings-eyebrow,html[data-theme=vaporwave] .nav-settings-note,html[data-theme=vaporwave] .nav-theme-label small,html[data-theme=vaporwave] .site-nav a,html[data-theme=vaporwave] .steam-galaxy-overlay-kicker,html[data-theme=vaporwave] .steam-galaxy-panel small,html[data-theme=vaporwave] .steam-galaxy-panel-desc,html[data-theme=vaporwave] .steam-galaxy-panel-eyebrow,html[data-theme=vaporwave] .steam-galaxy-panel-teaches,html[data-theme=vaporwave] .steam-galaxy-section-label,html[data-theme=vaporwave] .steam-galaxy-status{color:#8ffcff}html[data-theme=vaporwave] .app-launch-link:focus-visible,html[data-theme=vaporwave] .app-launch-link:hover,html[data-theme=vaporwave] .nav-mode-pill.is-active,html[data-theme=vaporwave] .nav-settings-toggle:hover,html[data-theme=vaporwave] .nav-settings.is-open .nav-settings-toggle,html[data-theme=vaporwave] .nav-theme-chip.is-active,html[data-theme=vaporwave] .nav-tone-pill.is-active,html[data-theme=vaporwave] .site-nav a:hover,html[data-theme=vaporwave] .site-nav a[aria-current=page]{background:linear-gradient(180deg,rgba(255,0,255,.12),rgba(0,0,0,.96));border-color:rgba(0,255,255,.72);color:#ff0}html[data-theme=vaporwave] .nav-mode-pill.is-active,html[data-theme=vaporwave] .nav-settings-status,html[data-theme=vaporwave] .nav-settings-toggle:hover,html[data-theme=vaporwave] .nav-settings.is-open .nav-settings-toggle,html[data-theme=vaporwave] .nav-theme-chip.is-active,html[data-theme=vaporwave] .nav-theme-swatch,html[data-theme=vaporwave] .nav-tone-icon,html[data-theme=vaporwave] .nav-tone-pill.is-active,html[data-theme=vaporwave] .site-nav a:hover,html[data-theme=vaporwave] .site-nav a[aria-current=page],html[data-theme=vaporwave] .steam-galaxy-node-label,html[data-theme=vaporwave] .steam-galaxy-panel-title{text-shadow:1px 0 0 rgba(255,0,255,.55),-1px 0 0 rgba(0,255,255,.55)}html[data-theme=vaporwave] :focus-visible{outline:#00ffff solid 2px;outline-offset:3px}html[data-theme=vaporwave] .steam-galaxy-node-surface{stroke:#00ffff!important;fill:#090013!important;fill-opacity:0.92!important}html[data-theme=goldfish] .about-card,html[data-theme=goldfish] .about-step,html[data-theme=goldfish] .button.secondary,html[data-theme=goldfish] .card-shell,html[data-theme=goldfish] .detail-main,html[data-theme=goldfish] .detail-side,html[data-theme=goldfish] .github-lesson-card,html[data-theme=goldfish] .nav-mode-pill.is-active,html[data-theme=goldfish] .nav-settings-panel,html[data-theme=goldfish] .nav-settings-toggle,html[data-theme=goldfish] .nav-theme-chip,html[data-theme=goldfish] .nav-tone-pill,html[data-theme=goldfish] .pill,html[data-theme=goldfish] .project-card,html[data-theme=goldfish] .site-header,html[data-theme=goldfish] button.secondary,html[data-theme=goldfish] input[type=search],html[data-theme=goldfish] input[type=text],html[data-theme=goldfish] select{background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,238,219,.92));border-color:rgba(255,106,26,.4);box-shadow:0 12px 28px rgba(196,87,10,.12),inset 0 1px 0 rgba(255,245,230,.92),inset 0 -2px 0 rgba(255,106,26,.08)}html[data-theme=goldfish] .nav-mode-pill.is-active,html[data-theme=goldfish] .nav-settings-toggle:hover,html[data-theme=goldfish] .nav-settings.is-open .nav-settings-toggle,html[data-theme=goldfish] .nav-theme-chip.is-active,html[data-theme=goldfish] .nav-tone-pill.is-active,html[data-theme=goldfish] .site-nav a:hover,html[data-theme=goldfish] .site-nav a[aria-current=page]{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,199,148,.82));border-color:rgba(255,106,26,.78);color:var(--nav-ink-strong)}html[data-theme=goldfish] .nav-settings-eyebrow,html[data-theme=goldfish] .nav-settings-note,html[data-theme=goldfish] .nav-theme-label small{color:#8a5225}html[data-theme=goldfish] .nav-settings-status,html[data-theme=goldfish] .nav-theme-swatch,html[data-theme=goldfish] .nav-tone-icon{box-shadow:0 0 0 1px rgba(255,106,26,.24),0 8px 18px rgba(255,106,26,.12)}html[data-theme=cobblestone] .about-card,html[data-theme=cobblestone] .about-step,html[data-theme=cobblestone] .button.secondary,html[data-theme=cobblestone] .card-shell,html[data-theme=cobblestone] .detail-main,html[data-theme=cobblestone] .detail-side,html[data-theme=cobblestone] .github-lesson-card,html[data-theme=cobblestone] .nav-mode-pill.is-active,html[data-theme=cobblestone] .nav-settings-panel,html[data-theme=cobblestone] .nav-settings-toggle,html[data-theme=cobblestone] .nav-theme-chip,html[data-theme=cobblestone] .nav-tone-pill,html[data-theme=cobblestone] .pill,html[data-theme=cobblestone] .project-card,html[data-theme=cobblestone] .site-header,html[data-theme=cobblestone] button.secondary,html[data-theme=cobblestone] input[type=search],html[data-theme=cobblestone] input[type=text],html[data-theme=cobblestone] select{background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(238,237,235,.92));border-color:rgba(140,138,134,.4);box-shadow:0 12px 28px rgba(60,60,58,.1),inset 0 1px 0 rgba(255,255,255,.88),inset 0 -2px 0 rgba(140,138,134,.08)}html[data-theme=cobblestone] .nav-mode-pill.is-active,html[data-theme=cobblestone] .nav-settings-toggle:hover,html[data-theme=cobblestone] .nav-settings.is-open .nav-settings-toggle,html[data-theme=cobblestone] .nav-theme-chip.is-active,html[data-theme=cobblestone] .nav-tone-pill.is-active,html[data-theme=cobblestone] .site-nav a:hover,html[data-theme=cobblestone] .site-nav a[aria-current=page]{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(216,214,211,.82));border-color:rgba(140,138,134,.7);color:var(--nav-ink-strong)}html[data-theme=cobblestone] .nav-settings-eyebrow,html[data-theme=cobblestone] .nav-settings-note,html[data-theme=cobblestone] .nav-theme-label small{color:#575654}html[data-theme=cobblestone] .nav-settings-status,html[data-theme=cobblestone] .nav-theme-swatch,html[data-theme=cobblestone] .nav-tone-icon{box-shadow:0 0 0 1px rgba(140,138,134,.24),0 8px 18px rgba(140,138,134,.12)}html[data-theme=bark] .about-card,html[data-theme=bark] .about-step,html[data-theme=bark] .button.secondary,html[data-theme=bark] .card-shell,html[data-theme=bark] .detail-main,html[data-theme=bark] .detail-side,html[data-theme=bark] .github-lesson-card,html[data-theme=bark] .nav-mode-pill.is-active,html[data-theme=bark] .nav-settings-panel,html[data-theme=bark] .nav-settings-toggle,html[data-theme=bark] .nav-theme-chip,html[data-theme=bark] .nav-tone-pill,html[data-theme=bark] .pill,html[data-theme=bark] .project-card,html[data-theme=bark] .site-header,html[data-theme=bark] button.secondary,html[data-theme=bark] input[type=search],html[data-theme=bark] input[type=text],html[data-theme=bark] select{background:linear-gradient(180deg,rgba(58,42,28,.94),rgba(42,30,20,.92));border-color:rgba(217,154,84,.32);box-shadow:0 12px 28px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,230,200,.08),inset 0 -2px 0 rgba(0,0,0,.2)}html[data-theme=bark] .nav-mode-pill.is-active,html[data-theme=bark] .nav-settings-toggle:hover,html[data-theme=bark] .nav-settings.is-open .nav-settings-toggle,html[data-theme=bark] .nav-theme-chip.is-active,html[data-theme=bark] .nav-tone-pill.is-active,html[data-theme=bark] .site-nav a:hover,html[data-theme=bark] .site-nav a[aria-current=page]{background:linear-gradient(180deg,rgba(217,154,84,.28),rgba(58,42,28,.82));border-color:rgba(217,154,84,.6);color:var(--nav-ink-strong)}html[data-theme=bark] .nav-settings-eyebrow,html[data-theme=bark] .nav-settings-note,html[data-theme=bark] .nav-theme-label small{color:#c9ac8e}html[data-theme=bark] .nav-settings-status,html[data-theme=bark] .nav-theme-swatch,html[data-theme=bark] .nav-tone-icon{box-shadow:0 0 0 1px rgba(217,154,84,.28),0 8px 18px rgba(0,0,0,.3)}.nav-settings-divider{height:1px;margin:1rem 0 .35rem;background:linear-gradient(90deg,transparent,var(--line,rgba(210,210,215,.5)),transparent);opacity:.72}.nav-canvas-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.68rem}.nav-canvas-icon{display:flex;align-items:center;justify-content:center;width:.94rem;height:.94rem;font-size:.82rem;line-height:1;color:var(--theme-accent);flex-shrink:0}@media (max-width:1120px){.nav-toggle{display:flex}.nav-wrap{flex-wrap:wrap}.brand{max-width:calc(100% - 4.75rem)}.site-nav{flex:none;overflow:hidden;max-height:0;opacity:0;width:100%;order:3;transition:max-height .28s,opacity .2s}.site-nav.is-open{max-height:960px;opacity:1;overflow:visible;margin-top:.5rem;padding:.45rem;border:1px solid color-mix(in srgb,var(--line) 72%,rgba(255,255,255,.72));border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(255,255,255,.28)),linear-gradient(180deg,var(--surface-1),var(--surface-2));box-shadow:0 22px 52px rgba(15,23,42,.1),inset 0 1px 0 rgba(255,255,255,.72)}.site-nav ul{flex-direction:column;align-items:stretch;gap:.25rem;overflow:visible}.site-nav a{display:block;padding:.55rem .75rem;font-size:.88rem;border-radius:14px;background:rgba(255,255,255,.18);box-shadow:none;transform:none}.site-nav ul li:last-child a{border-bottom:none}}.nav-dd-wrap{position:relative}.nav-dd-trigger{display:inline-flex;align-items:center;gap:.18rem;min-height:1.75rem;padding:.18rem .38rem .18rem .46rem;border:1px solid transparent;border-radius:999px;color:var(--nav-ink);background:0 0;font:inherit;font-size:.75rem;font-weight:500;letter-spacing:-.01em;white-space:nowrap;cursor:pointer;transition:color 160ms,background 160ms,border-color 160ms}.nav-dd-trigger .nav-dd-caret{font-size:.6em;opacity:.55;transition:transform 160ms;line-height:1}.nav-dd-trigger:hover,.nav-dd-wrap.is-open .nav-dd-trigger{color:var(--nav-ink-strong);background:color-mix(in srgb,var(--nav-hover-bg) 88%,rgba(255,255,255,.44));border-color:color-mix(in srgb,var(--line) 72%,rgba(255,255,255,.36))}.nav-dd-wrap.is-open .nav-dd-caret{transform:rotate(180deg)}.nav-dd-panel{display:none;position:absolute;top:calc(100% + 5px);left:50%;transform:translateX(-50%);min-width:175px;background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(255,255,255,.44)),var(--surface-1);border:1px solid color-mix(in srgb,var(--line) 70%,rgba(255,255,255,.6));border-radius:14px;padding:.3rem;box-shadow:0 12px 32px rgba(15,23,42,.13),inset 0 1px 0 rgba(255,255,255,.7);backdrop-filter:blur(16px) saturate(140%);z-index:200}.nav-dd-wrap.is-open .nav-dd-panel{display:block}.nav-dd-panel a,.nav-dd-panel button.nav-dd-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.42rem .6rem;border-radius:9px;border:none;background:0 0;color:var(--nav-ink);font:inherit;font-size:.77rem;font-weight:500;text-decoration:none;text-align:left;cursor:pointer;white-space:nowrap;transition:background 120ms,color 120ms}.nav-dd-panel a:hover,.nav-dd-panel button.nav-dd-item:hover{background:color-mix(in srgb,var(--nav-hover-bg) 72%,rgba(255,255,255,.4));color:var(--nav-ink-strong)}.nav-dd-panel .nav-dd-divider{height:1px;background:color-mix(in srgb,var(--line) 50%,transparent);margin:.25rem .3rem}.nav-dd-sub-label{padding:.32rem .6rem .15rem;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.nav-dd-sub a{padding-left:1rem;font-size:.73rem}[data-lighting=night] .nav-dd-panel,[data-theme=bark] .nav-dd-panel,[data-theme=night] .nav-dd-panel,[data-theme=vaporwave] .nav-dd-panel{background:linear-gradient(180deg,rgba(40,40,45,.88),rgba(28,28,32,.7)),var(--surface-1)}@media (prefers-color-scheme:dark){:root{--bg:#1c1c1e;--text:#f5f5f7;--muted:#98989d;--line:#3a3a3c;--white:#ffffff;--shadow:0 12px 34px rgba(0, 0, 0, 0.4)}.site-header{background:rgba(28,28,30,.88);border-bottom-color:rgba(58,58,60,.9)}.brand{color:#f5f5f7}.nav-toggle,.site-nav a{color:#e5e5ea}.site-nav a:hover,.site-nav a[aria-current=page]{color:#fff}.site-nav a{border-bottom-color:rgba(58,58,60,.6)}.sc-toolbar-wrap{background:rgba(28,28,30,.92);border-bottom-color:rgba(58,58,60,.8)}.sc-filter-panel{border-top-color:rgba(58,58,60,.6)}input[type=search],input[type=text],select{background:#2c2c2e;border-color:#3a3a3c;color:#f5f5f7}.pill{background:#2c2c2e;border-color:#3a3a3c;color:#e5e5ea}.button.secondary,button.secondary{background:#3a3a3c;border-color:#555;color:#f5f5f7}.project-card{background:#2c2c2e;border-color:rgba(58,58,60,.8)}.project-card:hover{box-shadow:0 18px 36px rgba(0,0,0,.45)}.about-card,.about-step{background:#2c2c2e;border-color:rgba(58,58,60,.85)}.about-card p,.about-list,.about-step p{color:#d1d1d6}.about-note{background:#1f2a37;border-color:#324255;color:#dceaff}.site-footer a{color:#6e9ecf}}html[data-theme]:not([data-theme=sakura]):not([data-theme=goldfish]):not([data-theme=cobblestone]):not([data-theme=diamond]):not([data-theme=topaz]):not([data-theme=bark]):not([data-theme=emerald]) body{background:var(--page-wash),var(--bg)}html[data-theme=sakura] body{background-image:radial-gradient(ellipse 8px 14px at 22px 24px,rgba(255,219,233,.8) 0 60%,transparent 64%),radial-gradient(ellipse 7px 13px at 112px 40px,rgba(255,245,250,.88) 0 58%,transparent 63%),radial-gradient(ellipse 9px 15px at 72px 122px,rgba(238,154,192,.34) 0 58%,transparent 63%),radial-gradient(ellipse 8px 13px at 170px 78px,rgba(255,230,239,.76) 0 58%,transparent 63%),var(--page-wash),linear-gradient(var(--bg),var(--bg))}html[data-theme=goldfish] body{background-image:url("../images/theme-patterns/goldfish-scales.png"),var(--page-wash),linear-gradient(var(--bg),var(--bg));background-repeat:repeat,no-repeat,no-repeat;background-size:40px 40px,auto,auto;background-attachment:fixed,fixed,fixed}html[data-theme=cobblestone] body{background-image:url("../images/theme-patterns/cobblestone.png"),var(--page-wash),linear-gradient(var(--bg),var(--bg));background-repeat:repeat,no-repeat,no-repeat;background-size:220px 220px,auto,auto;background-attachment:fixed,fixed,fixed}html[data-theme=bark] body{background-image:url("../images/theme-patterns/bark.png"),var(--page-wash),linear-gradient(var(--bg),var(--bg));background-repeat:repeat,no-repeat,no-repeat;background-size:300px 409px,auto,auto;background-attachment:fixed,fixed,fixed}html[data-theme=emerald] body{background-image:url("../images/theme-patterns/emerald-leaves.png"),var(--page-wash),linear-gradient(var(--bg),var(--bg));background-repeat:repeat,no-repeat,no-repeat;background-size:294px 235px,auto,auto;background-attachment:fixed,fixed,fixed}html[data-theme] .site-header{background:var(--header-bg);border-bottom-color:var(--header-border)}html[data-theme] .brand,html[data-theme] .nav-settings-toggle,html[data-theme] .site-nav a:hover,html[data-theme] .site-nav a[aria-current=page]{color:var(--nav-ink-strong)}html[data-theme] .nav-toggle,html[data-theme] .site-nav a{color:var(--nav-ink)}html[data-theme] .site-nav a{border-bottom-color:color-mix(in srgb,var(--line) 86%,transparent)}html[data-theme] .about-card,html[data-theme] .about-step,html[data-theme] .button.secondary,html[data-theme] .card-shell,html[data-theme] .detail-main,html[data-theme] .detail-side,html[data-theme] .github-lesson-card,html[data-theme] .pill,html[data-theme] .project-card,html[data-theme] button.secondary,html[data-theme] input[type=search],html[data-theme] input[type=text],html[data-theme] select{background:linear-gradient(180deg,var(--surface-1),var(--surface-2));border-color:var(--line);color:var(--text)}html[data-theme] .card-shell:hover,html[data-theme] .project-card:hover{box-shadow:var(--card-shadow-hover,var(--shadow))}html[data-theme] .about-card p,html[data-theme] .about-list,html[data-theme] .about-step p,html[data-theme] .detail-main p,html[data-theme] .github-lesson-card p{color:var(--muted)}html[data-theme] .about-note{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-1) 88%,#fff),var(--surface-2));border-color:color-mix(in srgb,var(--theme-accent) 26%,var(--line));color:color-mix(in srgb,var(--text) 82%,var(--theme-accent-strong))}html[data-theme] .site-footer a{color:var(--theme-accent)}.reveal{opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease-smooth, cubic-bezier(.4, 0, .2, 1)),transform .6s var(--ease-smooth, cubic-bezier(.4, 0, .2, 1));transition-delay:calc(var(--i, 0) * 60ms)}.reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}html[data-theme=sakura] .about-card,html[data-theme=sakura] .about-step,html[data-theme=sakura] .button.secondary,html[data-theme=sakura] .card-shell,html[data-theme=sakura] .detail-main,html[data-theme=sakura] .detail-side,html[data-theme=sakura] .github-lesson-card,html[data-theme=sakura] .nav-mode-pill.is-active,html[data-theme=sakura] .nav-settings-panel,html[data-theme=sakura] .nav-settings-toggle,html[data-theme=sakura] .nav-theme-chip,html[data-theme=sakura] .nav-tone-pill,html[data-theme=sakura] .pill,html[data-theme=sakura] .project-card,html[data-theme=sakura] .site-header,html[data-theme=sakura] button.secondary,html[data-theme=sakura] input[type=search],html[data-theme=sakura] input[type=text],html[data-theme=sakura] select{background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,245,249,.9));border-color:rgba(255,133,178,.58);box-shadow:0 12px 28px rgba(213,108,149,.12),inset 0 1px 0 #fff,inset 0 -2px 0 rgba(255,133,178,.08)}html[data-theme=sakura] .nav-mode-pill.is-active,html[data-theme=sakura] .nav-settings-toggle:hover,html[data-theme=sakura] .nav-settings.is-open .nav-settings-toggle,html[data-theme=sakura] .nav-theme-chip.is-active,html[data-theme=sakura] .nav-tone-pill.is-active,html[data-theme=sakura] .site-nav a:hover,html[data-theme=sakura] .site-nav a[aria-current=page]{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,215,231,.82));border-color:rgba(255,133,178,.88);color:var(--nav-ink-strong)}html[data-theme=sakura] .nav-settings-eyebrow,html[data-theme=sakura] .nav-settings-note,html[data-theme=sakura] .nav-theme-label small{color:#8d4f63}html[data-theme=sakura] .nav-settings-status,html[data-theme=sakura] .nav-theme-swatch,html[data-theme=sakura] .nav-tone-icon{box-shadow:0 0 0 1px rgba(255,133,178,.24),0 8px 18px rgba(255,133,178,.12)}html[data-theme=topaz] body{background-image:url("../images/theme-patterns/honey-comb.png"),var(--page-wash),linear-gradient(var(--bg),var(--bg));background-repeat:repeat,no-repeat,no-repeat;background-size:270px 289px,auto,auto;background-attachment:fixed,fixed,fixed}.project-card{position:relative;overflow:hidden;border-radius:16px;transition:.3s cubic-bezier(.23, 1, .32, 1)}.project-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px rgba(0,0,0,.2)}.card-thumb{aspect-ratio:16/9;position:relative;overflow:hidden;background:linear-gradient(135deg,#667eea 0,#764ba2 100%)}.card-thumb img{object-fit:cover;width:100%;height:100%;object-fit:cover;transition:transform .4s}.project-card:hover .card-thumb img{transform:scale(1.08)}.card-type-badge{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:rgba(0,0,0,.6);backdrop-filter:blur(8px);border-radius:8px;font-size:.75rem;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.05em;z-index:10}.card-type-badge.type-game{background:rgba(59,130,246,.8)}.card-type-badge.type-animation{background:rgba(236,72,153,.8)}.card-type-badge.type-model{background:rgba(34,197,94,.8)}.card-type-badge.type-art{background:rgba(f59e0b,.8)}.card-credit-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(to top,rgba(0,0,0,.8) 0,rgba(0,0,0,.3) 60%,transparent 100%);padding:16px;color:#fff;opacity:0;transition:opacity .3s;z-index:5}.project-card:hover .card-credit-overlay{opacity:1}.card-student-name{font-weight:700;font-size:1rem;margin:0 0 4px}.card-year-group{font-size:.75rem;opacity:.8;margin:0}#project-modal{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.95);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s;padding:2rem;overflow-y:auto}#project-modal.is-open{opacity:1;pointer-events:auto}.modal-content{background:linear-gradient(180deg,var(--surface-1),var(--surface-2));border:1px solid var(--line);border-radius:24px;padding:32px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px rgba(0,0,0,.3)}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;gap:16px}.modal-close-btn{background:0 0;border:none;font-size:1.5rem;cursor:pointer;color:var(--muted);padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:.2s}.modal-close-btn:hover{background:var(--nav-hover-bg);color:var(--text)}.modal-gallery{display:grid;gap:16px;margin-bottom:24px}.modal-gallery-item{width:100%;border-radius:12px;overflow:hidden}.modal-gallery-item img{width:100%;height:auto;display:block}.modal-info{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:start}.modal-info h2{font-size:1.75rem;margin:0 0 8px}.modal-credits{padding:16px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08);border-radius:12px;margin-bottom:16px}.modal-student{font-weight:600;font-size:1rem;margin:0}.modal-year{font-size:.875rem;color:var(--muted);margin:4px 0 0}.modal-description{color:var(--muted);line-height:1.6;margin-bottom:16px}.modal-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.modal-btn{padding:12px 24px;border-radius:8px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);cursor:pointer;font-weight:600;transition:.2s;text-decoration:none;display:inline-flex;align-items:center;gap:8px}.modal-btn:hover{background:var(--theme-accent-soft);border-color:var(--theme-accent);color:var(--theme-accent-strong)}.modal-btn.primary{background:var(--theme-accent);border-color:var(--theme-accent);color:#fff}.modal-btn.primary:hover{background:var(--theme-accent-strong);border-color:var(--theme-accent-strong)}@media (max-width:768px){.project-grid{grid-template-columns:1fr}.modal-content{padding:20px}.modal-info{grid-template-columns:1fr}.card-type-badge{top:8px;right:8px;font-size:.65rem;padding:5px 10px}}body,body :where(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,legend,summary,details,li,dt,dd,th,td,caption,small,strong,em,b,i,span,div){font-family:var(--font-sans)!important}body :where(code,pre,samp,kbd,code *,pre *,samp *,kbd *,.mono,.font-mono,[class*=mono],[class*=code],[class*=terminal],[class*=console]){font-family:var(--font-mono)!important}.feedback-widget{margin-top:2rem;padding:1.5rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;color:inherit;font-family:inherit}body.theme-liquid-woodland .feedback-widget{background:rgba(17,28,46,.6);border-color:rgba(255,255,255,.14)}.feedback-title{margin-top:0;margin-bottom:1rem;font-size:1.2rem;font-weight:700}.feedback-stats{display:flex;gap:1rem;margin-bottom:1.2rem}.stat-pill{display:flex;align-items:center;gap:.5rem;padding:.4rem .8rem;border-radius:20px;font-size:.88rem;font-weight:600}.like-pill{background:rgba(76,175,80,.15);color:#4caf50;border:1px solid rgba(76,175,80,.25)}.bug-pill{background:rgba(244,67,54,.15);color:#f44336;border:1px solid rgba(244,67,54,.25)}.feedback-actions{display:flex;gap:1rem;margin-bottom:1.2rem}.fb-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:rgba(255,255,255,.08);color:inherit;font-weight:600;cursor:pointer;transition:background .2s,transform .1s}.fb-action-btn:hover{background:rgba(255,255,255,.15)}.fb-action-btn:active{transform:scale(.98)}.fb-action-btn.like-btn:hover{border-color:#4caf50;background:rgba(76,175,80,.1)}.fb-action-btn.bug-btn:hover{border-color:#f44336;background:rgba(244,67,54,.1)}.feedback-panel{padding:1rem;background:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.15);border-radius:8px;margin-bottom:1.2rem;animation:.2s ease-out slideDown}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.panel-heading{margin-top:0;margin-bottom:.8rem;font-size:.95rem;font-weight:700}.comment-chips{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.comment-chip{padding:.6rem .8rem;border:1px solid rgba(255,255,255,.15);border-radius:6px;background:rgba(255,255,255,.05);color:inherit;text-align:left;font-size:.9rem;cursor:pointer;transition:background .2s,border-color .2s}.comment-chip:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.3)}.comment-chip.selected{background:rgba(13,114,207,.2);border-color:#0d72cf;font-weight:600}.panel-actions{display:flex;gap:.8rem;justify-content:flex-end}.panel-btn{padding:.5rem 1rem;border-radius:6px;font-weight:600;font-size:.88rem;cursor:pointer;border:1px solid transparent}.submit-btn{background:#0d72cf;color:#fff}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.cancel-btn{background:0 0;border-color:rgba(255,255,255,.2);color:inherit}.cancel-btn:hover{background:rgba(255,255,255,.05)}.feedback-history{border-top:1px solid rgba(255,255,255,.1);padding-top:1rem}.feedback-history h4{margin-top:0;margin-bottom:.8rem;font-size:.95rem;color:inherit;opacity:.8}.activity-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem;max-height:200px;overflow-y:auto}.activity-item{display:flex;flex-direction:column;gap:.2rem;padding:.5rem .7rem;border-radius:6px;background:rgba(255,255,255,.03);font-size:.85rem}.activity-header{display:flex;justify-content:space-between;font-weight:600}.activity-student{color:#0d72cf}.activity-time{opacity:.5;font-size:.75rem}.activity-comment{line-height:1.4}.activity-list::-webkit-scrollbar{width:6px}.activity-list::-webkit-scrollbar-track{background:0 0}.activity-list::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:3px}.activity-list::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}.class-picker{position:fixed;inset:0;z-index:10100;display:grid;place-items:center;padding:1rem}.class-picker-backdrop{position:absolute;inset:0;background:rgba(8,13,22,.58)}.class-picker-panel{position:relative;z-index:1;width:min(680px,96vw);background:var(--surface-1,#fff);border:1px solid var(--line,#d8e1ef);border-radius:20px;box-shadow:0 20px 48px rgba(12,22,40,.25);padding:1.25rem}.class-picker-panel h2{margin:0 0 .35rem;font-size:1.4rem}.class-picker-panel p{margin:0 0 .85rem;color:var(--muted,#44536a)}.class-picker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.class-picker-actions button,.class-picker-grid button{border:1px solid var(--line,#c4d2e7);border-radius:10px;background:var(--surface-2,#f7faff);color:var(--text,#143760);font:600 0.95rem/1.2 var(--font-sans, sans-serif);padding:.66rem .74rem;cursor:pointer;transition:background 120ms}.class-picker-grid button{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;text-align:left}.class-picker-sub{display:block;font-weight:500;font-size:.78rem;color:var(--muted,#44536a)}.class-picker-actions button:hover,.class-picker-grid button:hover{background:var(--hover-bg,#edf3fb)}.class-picker-actions button:focus-visible,.class-picker-grid button:focus-visible{outline:2px solid var(--accent,#1d6fd4);outline-offset:2px}.class-picker-actions{margin-top:.8rem;display:flex;justify-content:flex-end}