@font-face{font-family:Outfit;font-style:normal;font-weight:300;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.3gpqod6e6kd7d.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:300;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1ay-qk1u8nydy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.3gpqod6e6kd7d.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1ay-qk1u8nydy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.3gpqod6e6kd7d.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1ay-qk1u8nydy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.3gpqod6e6kd7d.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1ay-qk1u8nydy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.3gpqod6e6kd7d.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1ay-qk1u8nydy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:800;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.3gpqod6e6kd7d.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:800;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1ay-qk1u8nydy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit Fallback;src:local(Arial);ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.0%;size-adjust:99.82%}.outfit_f4073d44-module__NfKI1W__className{font-family:Outfit,Outfit Fallback;font-style:normal}.outfit_f4073d44-module__NfKI1W__variable{--font-outfit:"Outfit", "Outfit Fallback"}
@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/fc0a7394b875fa43-s.3zvkfbs08rnj_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/7ebf22b5a21034f8-s.p.3strvg7o-g5v2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ccf27e5a7366fb23-s.1wwzpfhzaj2r0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e41d5df559864f9e-s.p.2rlzm4mj5kw8e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif Fallback;src:local(Times New Roman);ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.0%;size-adjust:83.94%}.instrument_serif_1dbb4a96-module__DoDGVG__className{font-family:Instrument Serif,Instrument Serif Fallback;font-weight:400}.instrument_serif_1dbb4a96-module__DoDGVG__variable{--font-instrument:"Instrument Serif", "Instrument Serif Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/04c5164763c40239-s.1zakzi6q17d4o.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/26f284dcc38c84c0-s.2htf8h-pf57mm.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7e7f32a39836f228-s.3skwie1wjplzh.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fa39153a3fc630ba-s.3zhbgtelpa5ua.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3vf5yzuqk3fsd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/051742360c26797e-s.p.1wmoa0e_blxrz.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/04c5164763c40239-s.1zakzi6q17d4o.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/26f284dcc38c84c0-s.2htf8h-pf57mm.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7e7f32a39836f228-s.3skwie1wjplzh.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fa39153a3fc630ba-s.3zhbgtelpa5ua.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3vf5yzuqk3fsd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/051742360c26797e-s.p.1wmoa0e_blxrz.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/04c5164763c40239-s.1zakzi6q17d4o.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/26f284dcc38c84c0-s.2htf8h-pf57mm.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/7e7f32a39836f228-s.3skwie1wjplzh.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fa39153a3fc630ba-s.3zhbgtelpa5ua.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3vf5yzuqk3fsd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/051742360c26797e-s.p.1wmoa0e_blxrz.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_5431f39d-module__KT0v-G__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_5431f39d-module__KT0v-G__variable{--font-jetbrains:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--ground:#e6dac2;--paper:#faf4e6;--paper-2:#f3ebd9;--raised:#fffdf7;--ink:#1e1a34;--ink-2:#4d4666;--ink-3:#6d6683;--rule:#e0d5bc;--rule-2:#cbbc9c;--panel:#16132e;--panel-2:#211c44;--panel-ink:#f7f0e2;--panel-ink-2:#f7f0e2c7;--panel-ink-3:#f7f0e29e;--panel-rule:#f7f0e22e;--gold:#d9962f;--gold-soft:#d9962f29;--gold-ink:#8a5312;--ok:#2f6b52;--ok-bg:#e7f1ec;--ok-rule:#b9d5c8;--warn:#9c3f1f;--warn-bg:#f8e9e1;--warn-rule:#e6c6b7;--r-s:8px;--r-m:14px;--r-l:22px;--r-full:999px;--shadow:0 18px 40px -28px #1e1a3480;--shadow-panel:0 22px 48px -30px #16132ea8}html,body{margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--ground);font-family:var(--font-outfit),system-ui,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}*{box-sizing:border-box}a{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--rule-2);text-decoration-color:var(--rule-2);text-underline-offset:3px}a:hover{color:var(--gold-ink);-webkit-text-decoration-color:var(--gold-ink);text-decoration-color:var(--gold-ink)}input,textarea,select,button{font-family:inherit}input,textarea{transition:border-color .18s,box-shadow .18s}input:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft);outline:none}button{transition:transform .16s cubic-bezier(.22,1,.36,1),filter .18s,background-color .18s,border-color .18s,box-shadow .18s}button:hover{filter:brightness(1.04)}button:active{transform:translateY(1px)scale(.985)}:focus-visible{outline:2.5px solid var(--gold);outline-offset:2px;border-radius:6px}textarea{resize:vertical}::selection{background:var(--gold);color:var(--panel)}@media (pointer:coarse){::-webkit-scrollbar{width:0;height:0}}@media (pointer:fine){*{scrollbar-width:thin;scrollbar-color:var(--rule-2) transparent}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--rule-2);border:3px solid var(--paper);border-radius:var(--r-full)}::-webkit-scrollbar-thumb:hover{background:var(--ink-3)}.gb-sidenav{scrollbar-color:var(--panel-rule) transparent}.gb-sidenav::-webkit-scrollbar-thumb{background:var(--panel-rule);border-color:var(--panel)}}.gb-head{z-index:40;border-bottom:1px solid var(--rule);background:color-mix(in srgb,var(--paper) 93%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0}.gb-head-in{align-items:center;gap:16px;padding-top:14px;padding-bottom:14px;display:flex}.gb-head-t{flex:1;min-width:0}.gb-head-k,.gb-head-h{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gb-head-k{font:500 12px/1 var(--font-outfit),sans-serif;color:var(--ink-3)}.gb-head-h{font-family:var(--font-instrument),serif;color:var(--ink);margin-top:4px;font-size:22px;line-height:1.15}.gb-head-p{flex:none;align-items:center;gap:12px;display:flex}.gb-head-bar{border-radius:var(--r-full);background:var(--rule);width:64px;height:4px;overflow:hidden}.gb-head-btn{border:1px solid var(--rule-2);border-radius:var(--r-m);width:44px;height:44px;color:var(--ink-2);cursor:pointer;background:0 0;flex:none;justify-content:center;align-items:center;display:flex}@media (max-width:479px){.gb-head-in{gap:10px}.gb-head-bar{display:none}.gb-head-h{font-size:19px}}.gb-skip{z-index:300;position:absolute;top:0;left:-9999px}.gb-skip:focus{background:var(--panel);color:var(--panel-ink);border-radius:var(--r-m);font:600 15px/1 var(--font-outfit),sans-serif;padding:11px 16px;text-decoration:none;top:12px;left:12px}.gb-page{background:var(--ground);min-height:100dvh;display:flex}.gb-shell{background:var(--paper);min-width:0;padding-bottom:calc(104px + env(safe-area-inset-bottom));flex:auto;position:relative}.gb-doc{max-width:1680px;margin:0 auto}.gb-sidenav{display:none}.gb-bottomnav{z-index:60;padding:8px 10px calc(14px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--paper) 94%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--rule);gap:4px;display:flex;position:fixed;bottom:0;left:0;right:0}.gb-pad{padding-left:20px;padding-right:20px}@media (min-width:600px){.gb-pad{padding-left:36px;padding-right:36px}}@media (min-width:1024px){.gb-sidenav{display:flex}.gb-bottomnav{display:none}.gb-shell{padding-bottom:72px}.gb-pad{padding-left:56px;padding-right:56px}}@media (min-width:1440px){.gb-pad{padding-left:72px;padding-right:72px}}.gb-split{display:block}.gb-rail{margin-bottom:32px}@media (min-width:1024px){.gb-split{grid-template-columns:236px minmax(0,1fr);align-items:start;gap:0 56px;display:grid}.gb-rail{max-height:calc(100dvh - 128px);margin-bottom:0;position:sticky;top:96px;overflow-y:auto}}@media (min-width:1440px){.gb-split{grid-template-columns:264px minmax(0,1fr);gap:0 72px}}.gb-railnav{--tab-pad:0 16px;--tab-radius:var(--r-full);flex-wrap:wrap;gap:8px;display:flex}@media (min-width:1024px){.gb-railnav{--tab-pad:11px 14px;--tab-radius:var(--r-s);flex-flow:column;gap:2px}}.gb-prose{max-width:68ch}.gb-cols{grid-template-columns:1fr;gap:16px;display:grid}@media (min-width:640px){.gb-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}@media (min-width:1400px){.gb-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.gb-cols-wide{grid-template-columns:1fr;gap:20px;display:grid}@media (min-width:900px){.gb-cols-wide{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}}.gb-bench{grid-template-columns:1fr;gap:24px;display:grid}@media (min-width:900px){.gb-bench{grid-template-columns:minmax(0,1fr) minmax(0,320px);align-items:start;gap:32px}}@media (min-width:1440px){.gb-bench{grid-template-columns:minmax(0,1fr) minmax(0,380px)}}.gb-stage{grid-template-columns:minmax(0,1fr);place-items:center;margin-bottom:10px;display:grid;position:relative;container-type:inline-size}.gb-drum3d{width:100%;position:relative}.gb-kanvas{width:100%;height:clamp(240px,32vw,340px)}.gb-stage-note{position:absolute;bottom:10px;left:0}.gb-stage-hit{position:absolute;bottom:10px;right:0}@container (max-width:679px){.gb-stage-note,.gb-stage-hit{position:static}.gb-stage-hit{justify-content:center;margin-top:10px}.gb-stage-note{text-align:center;margin-top:14px}}@supports not (container-type:inline-size){@media (max-width:559px){.gb-stage{text-align:center;gap:14px;padding:6px 0 2px}.gb-stage-note,.gb-stage-hit{position:static}.gb-stage-hit{flex-wrap:wrap;justify-content:center;margin-top:10px}}}.gb-sheetwrap{z-index:80;background:#16132e8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.gb-sheet{background:var(--paper);border-radius:var(--r-l) var(--r-l) 0 0;width:100%;max-width:560px;padding:20px 24px calc(28px + env(safe-area-inset-bottom));animation:.22s ease-out gbPop}@media (min-width:768px){.gb-sheetwrap{align-items:center;padding:24px}.gb-sheet{border-radius:var(--r-l);padding:32px}}.gb-grain{z-index:200;pointer-events:none;opacity:.42;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='.85' numOctaves='3'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.26'/%3E%3C/svg%3E");position:fixed;inset:0}@keyframes gbRise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.gb-rise{animation:.5s cubic-bezier(.2,.8,.2,1) both gbRise}@keyframes gbPulse{0%{transform:scale(1)}40%{transform:scale(.965)}to{transform:scale(1)}}@keyframes gbRing{0%{opacity:.55;transform:scale(.7)}to{opacity:0;transform:scale(1.5)}}@keyframes gbPop{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.gb-teacher{--paper:#16132e;--paper-2:#1c1838;--raised:#211c44;--ground:#100e22;--ink:#f7f0e2;--ink-2:#f7f0e2c7;--ink-3:#f7f0e28c;--rule:#f7f0e224;--rule-2:#f7f0e247;--panel:#f7f0e2;--panel-ink:#16132e;--panel-ink-2:#16132ec2;--panel-rule:#16132e29;--ok:#7fd4ab;--ok-bg:#7fd4ab1f;--ok-rule:#7fd4ab52;--warn:#f0a58a;--warn-bg:#f0a58a1f;--warn-rule:#f0a58a4d;--gold-ink:#e8b45c;--shadow:0 18px 40px -28px #000000b3;background:var(--paper);color:var(--ink)}.gb-teacher input,.gb-teacher textarea,.gb-teacher select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.gb-gate{place-items:center;min-height:100dvh;padding:32px 20px;display:grid}.gb-gate-card{width:100%;max-width:420px}.gb-gate h1{font-family:var(--font-instrument),serif;text-wrap:balance;margin:12px 0 10px;font-size:clamp(30px,7vw,40px);font-weight:400;line-height:1.05}.gb-gate p{font:400 16px/1.65 var(--font-outfit),sans-serif;color:var(--ink-2);text-wrap:pretty;margin:0 0 24px}.gb-eyebrow{font:500 12px/1 var(--font-jetbrains),ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-ink)}.gb-field{margin-bottom:14px;display:block}.gb-field>span{font:600 13px/1 var(--font-outfit),sans-serif;color:var(--ink-2);margin-bottom:7px;display:block}.gb-field input,.gb-field textarea,.gb-field select{border:1.5px solid var(--rule-2);border-radius:var(--r-m);width:100%;min-height:48px;font:400 16px/1.5 var(--font-outfit),sans-serif;background:var(--raised);color:var(--ink);padding:11px 13px}.gb-field textarea{min-height:96px;line-height:1.6}.gb-row{grid-template-columns:1fr;gap:12px;display:grid}@media (min-width:520px){.gb-row{grid-template-columns:2fr 1fr}}.gb-btn{border-radius:var(--r-m);background:var(--gold);color:#16132e;cursor:pointer;width:100%;min-height:52px;font:600 16px/1 var(--font-outfit),sans-serif;border:none}.gb-btn:disabled{opacity:.5;cursor:progress}.gb-btn-2{color:var(--ink-2);border:1.5px solid var(--rule-2);background:0 0}.gb-btn-danger{background:var(--warn-bg);color:var(--warn);border:1.5px solid var(--warn-rule)}.gb-btn-sm{width:auto;min-height:44px;padding:0 16px;font-size:14px}.gb-error{border-radius:var(--r-m);background:var(--warn-bg);border:1px solid var(--warn-rule);color:var(--warn);font:500 15px/1.55 var(--font-outfit),sans-serif;text-wrap:pretty;margin:0 0 16px;padding:12px 14px}.gb-note{font:400 14.5px/1.6 var(--font-outfit),sans-serif;color:var(--ink-3);text-wrap:pretty;margin:0}.gb-tablewrap{border:1px solid var(--rule);border-radius:var(--r-l);background:var(--raised);-webkit-overflow-scrolling:touch;overflow-x:auto}.gb-table{border-collapse:separate;border-spacing:0;width:100%;font:400 15px/1.4 var(--font-outfit),sans-serif}.gb-table th,.gb-table td{text-align:left;white-space:nowrap;border-bottom:1px solid var(--rule);padding:11px 14px}.gb-table thead th{z-index:2;background:var(--paper-2);font:600 12px/1.3 var(--font-jetbrains),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);position:sticky;top:0}.gb-table tbody tr:last-child td{border-bottom:none}.gb-table tbody tr:hover td{background:color-mix(in srgb,var(--gold) 7%,transparent)}.gb-table{min-width:max-content}.gb-table .gb-sticky{z-index:1;background:var(--raised);border-right:1px solid var(--rule);font-weight:600;position:sticky;left:0}.gb-table thead .gb-sticky{z-index:3;background:var(--paper-2)}.gb-table tbody tr:hover .gb-sticky{background:color-mix(in srgb,var(--gold) 7%,var(--raised))}.gb-num{text-align:right;font-family:var(--font-jetbrains),ui-monospace,monospace;font-size:14px}.gb-table thead th.gb-wrap{white-space:normal;vertical-align:bottom;min-width:112px;max-width:168px;line-height:1.35}@media (max-width:767px){.gb-tablewrap{background:0 0;border:none;border-radius:0;overflow:visible}.gb-table{width:100%;min-width:0;display:block}.gb-table thead{display:none}.gb-table tbody,.gb-table tr,.gb-table td{width:100%;display:block}.gb-table tr{background:var(--raised);border:1px solid var(--rule);border-radius:var(--r-l);margin-bottom:12px;padding:14px 16px}.gb-table tbody tr:hover td{background:0 0}.gb-table td{white-space:normal;border-bottom:none;justify-content:space-between;align-items:baseline;gap:16px;padding:7px 0;display:flex}.gb-table td[data-label]:before{content:attr(data-label);text-align:left;overflow-wrap:anywhere;min-width:0;font:600 12px/1.35 var(--font-jetbrains),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);flex:auto}.gb-table td.gb-sticky,.gb-table tbody tr:hover td.gb-sticky{border-right:none;border-bottom:1px solid var(--rule);font:600 17px/1.35 var(--font-outfit),sans-serif;background:0 0;margin-bottom:6px;padding:0 0 10px;display:block;position:static}.gb-table td.gb-num{text-align:right}}.gb-pass{color:var(--ok)}.gb-fail{color:var(--warn)}.gb-pending{color:var(--ink-3)}.gb-empty{text-align:center;border:1.5px dashed var(--rule-2);border-radius:var(--r-l);color:var(--ink-3);padding:44px 24px}.gb-empty strong{font:600 17px/1.35 var(--font-outfit),sans-serif;color:var(--ink-2);margin-bottom:6px;display:block}.gb-empty p{max-width:44ch;font:400 15px/1.6 var(--font-outfit),sans-serif;text-wrap:pretty;margin:0 auto}.gb-mark{grid-template-columns:1fr;gap:20px;display:grid}@media (min-width:900px){.gb-mark{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:32px}}@media (hover:none){.gb-keyhint{display:none}}.gb-quote{border-left:3px solid var(--gold);background:var(--raised);border-radius:0 var(--r-m) var(--r-m) 0;font:400 16px/1.7 var(--font-outfit),sans-serif;white-space:pre-wrap;text-wrap:pretty;margin:0;padding:16px 18px}.gb-chips{flex-wrap:wrap;gap:6px;display:flex}.gb-chip{font:600 12px/1 var(--font-outfit),sans-serif;border-radius:var(--r-full);background:var(--paper-2);color:var(--ink-3);padding:7px 11px}.gb-chip-on{background:var(--ok-bg);color:var(--ok)}.gb-scores{flex-wrap:wrap;gap:7px;display:flex}.gb-scores button{cursor:pointer;border:1.5px solid var(--rule-2);border-radius:var(--r-m);min-width:54px;min-height:46px;color:var(--ink-2);font:600 15px/1 var(--font-jetbrains),ui-monospace,monospace;background:0 0;padding:0 12px}.gb-scores button[aria-pressed=true]{background:var(--gold);border-color:var(--gold);color:#16132e}.gb-rte{border:1.5px solid var(--rule-2);border-radius:var(--r-m);background:var(--paper);position:relative;overflow:hidden}.gb-rte:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}.gb-rte-bar{border-bottom:1px solid var(--rule);background:var(--paper-2);flex-wrap:wrap;align-items:center;gap:2px;padding:6px;display:flex}.gb-rte-btn{border-radius:var(--r-s);min-width:34px;height:34px;color:var(--ink-2);cursor:pointer;font:600 13px/1 var(--font-outfit),sans-serif;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0 7px;display:inline-flex}.gb-rte-btn:hover{background:var(--gold-soft);color:var(--ink)}.gb-rte-btn.is-on{background:var(--gold);color:var(--panel);border-color:var(--gold)}.gb-rte-btn sup,.gb-rte-btn sub{font-size:9px}.gb-rte-mark{background:var(--gold-soft);border-radius:3px;padding:0 3px}.gb-rte-sep{background:var(--rule-2);flex:none;width:1px;height:20px;margin:0 4px}.gb-rte-push{background:0 0;margin-left:auto}@media (max-width:767px){.gb-rte-bar{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.gb-rte-bar::-webkit-scrollbar{display:none}.gb-rte-btn,.gb-rte-sep{flex:none}.gb-rte-push{margin-left:0}}@media (pointer:coarse){.gb-rte-btn{min-width:42px;height:42px}.gb-rte-sep{height:24px}}.gb-rte-body{min-height:var(--gb-rte-min,120px);font:400 15px/1.65 var(--font-outfit),sans-serif;color:var(--ink);overflow-wrap:anywhere;outline:none;padding:12px}.gb-rte-body.gb-rte-simple{min-height:0;padding:11px 12px}.gb-rte-ph{pointer-events:none;font:400 15px/1.65 var(--font-outfit),sans-serif;color:var(--ink-3);position:absolute;bottom:12px;left:13px}.gb-rte.is-simple .gb-rte-ph{top:auto;bottom:11px}.gb-rte-body>:first-child{margin-top:0}.gb-rte-body>:last-child{margin-bottom:0}.gb-rte-body p{margin:0 0 10px}.gb-rte-body h2{font-family:var(--font-instrument),serif;margin:16px 0 8px;font-size:22px;font-weight:400;line-height:1.15}.gb-rte-body h3{font:600 18px/1.3 var(--font-outfit),sans-serif;margin:14px 0 6px}.gb-rte-body ul,.gb-rte-body ol{margin:0 0 10px;padding-left:22px}.gb-rte-body li{margin:3px 0}.gb-rte-body blockquote{border-left:3px solid var(--gold);color:var(--ink-2);margin:10px 0;padding-left:14px}.gb-rich{overflow-wrap:anywhere}.gb-rich :first-child{margin-top:0}.gb-rich :last-child{margin-bottom:0}.gb-rich-block p{margin:0 0 12px}.gb-rich-block h2{font-family:var(--font-instrument),serif;margin:22px 0 10px;font-size:clamp(20px,3vw,24px);font-weight:400;line-height:1.15}.gb-rich-block h3{font:600 18px/1.35 var(--font-outfit),sans-serif;margin:18px 0 8px}.gb-rich-block ul,.gb-rich-block ol{margin:0 0 12px;padding-left:24px}.gb-rich-block li{margin:5px 0}.gb-rich-block blockquote{border-left:3px solid var(--gold);color:var(--ink-2);margin:14px 0;padding-left:16px}.gb-rich mark,.gb-rte-body mark{background:var(--gold-soft);color:inherit;border-radius:3px;padding:0 3px}.gb-rich code,.gb-rte-body code{font:500 .92em/1.4 var(--font-jetbrains),ui-monospace,monospace;background:var(--gold-soft);border-radius:4px;padding:1px 5px}.gb-rich sup,.gb-rich sub,.gb-rte-body sup,.gb-rte-body sub{font-size:.72em;line-height:0}.gb-adm-bar{z-index:6;background:color-mix(in srgb,var(--paper) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--rule);margin:0 -20px 24px;padding:14px 20px;position:sticky;top:69px}@media (min-width:600px){.gb-adm-bar{margin-left:-36px;margin-right:-36px;padding-left:36px;padding-right:36px}}@media (min-width:1024px){.gb-adm-bar{margin-left:-56px;margin-right:-56px;padding-left:56px;padding-right:56px}}@media (min-width:1440px){.gb-adm-bar{margin-left:-72px;margin-right:-72px;padding-left:72px;padding-right:72px}}.gb-adm-groups{flex-wrap:wrap;align-items:flex-end;gap:8px 28px;display:flex}@media (max-width:767px){.gb-adm-bar{padding-top:10px;padding-bottom:10px}.gb-adm-groups{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;align-items:center;gap:0;overflow-x:auto}.gb-adm-groups::-webkit-scrollbar{display:none}.gb-adm-group{flex-direction:row;flex:none;gap:6px}.gb-adm-group>span{display:none}.gb-adm-group>div{flex-wrap:nowrap}.gb-adm-group+.gb-adm-group{border-left:1px solid var(--rule);margin-left:14px;padding-left:14px}}.gb-adm-group{flex-direction:column;gap:7px;min-width:0;display:flex}.gb-adm-group>span{font:500 12px/1 var(--font-jetbrains),ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.gb-adm-group>div{flex-wrap:wrap;gap:6px;display:flex}.gb-adm-card{background:var(--raised);border:1px solid var(--rule);border-radius:var(--r-l);padding:20px}.gb-adm-card+.gb-adm-card{margin-top:20px}.gb-adm-card>h3{font:600 18px/1.3 var(--font-outfit),sans-serif;margin:0 0 6px}.gb-adm-card>p{font:400 15px/1.6 var(--font-outfit),sans-serif;color:var(--ink-2);text-wrap:pretty;max-width:64ch;margin:0 0 16px}.gb-adm-label{font:600 13px/1 var(--font-outfit),sans-serif;color:var(--ink-2);margin-bottom:8px;display:block}.gb-adm-short{grid-template-columns:1fr;gap:16px;display:grid}@media (min-width:900px){.gb-adm-short{grid-template-columns:repeat(2,minmax(0,1fr))}}.gb-adm-stack{flex-direction:column;gap:20px;display:flex}.gb-adm-card,.gb-adm-short>*,.gb-adm-stack>*{min-width:0}.gb-adm-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.gb-adm-btn,.gb-adm-ghost,.gb-adm-warn{border-radius:var(--r-m);min-height:46px;font:600 15px/1 var(--font-outfit),sans-serif;cursor:pointer;flex:none;justify-content:center;align-items:center;gap:8px;padding:0 18px;display:inline-flex}.gb-adm-btn{background:var(--panel);color:var(--panel-ink);border:none}.gb-adm-ghost{border:1.5px solid var(--rule-2);color:var(--ink-2);background:0 0}.gb-adm-ghost:hover{border-color:var(--gold);color:var(--ink)}.gb-adm-warn{border:1.5px solid var(--warn-rule);background:var(--warn-bg);color:var(--gold-ink)}.gb-adm-btn:disabled,.gb-adm-ghost:disabled{opacity:.5;cursor:not-allowed}.gb-adm-add{border:1.5px dashed var(--rule-2);border-radius:var(--r-m);width:100%;min-height:50px;color:var(--ink-2);font:600 15px/1 var(--font-outfit),sans-serif;cursor:pointer;background:0 0;margin-top:16px}.gb-adm-add:hover{border-color:var(--gold);color:var(--ink)}.gb-adm-meta{flex-wrap:wrap;align-items:center;gap:16px;margin:14px 0;display:flex}.gb-adm-meta>span{font:500 13px/1 var(--font-jetbrains),ui-monospace,monospace;color:var(--ink-3)}.gb-adm-meta label{font:500 13px/1 var(--font-jetbrains),ui-monospace,monospace;color:var(--ink-3);align-items:center;gap:9px;display:flex}.gb-adm-meta input{border:1px solid var(--rule-2);border-radius:var(--r-s);background:var(--paper);width:74px;min-height:44px;color:var(--ink);font:500 15px/1 var(--font-jetbrains),ui-monospace,monospace;padding:0 10px}.gb-adm-num{align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.gb-adm-num>b{font:500 13px/1 var(--font-jetbrains),ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-weight:500}
