@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/167cd0713aa75522-s.40v7iydlhc_yt.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:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/e455bcff747f0d5e-s.438h7bwt6ldsi.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:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/791bf8c4bb753ed6-s.p.0rg7ym60g9xsl.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:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_93adee12-module__6h-eVq__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_93adee12-module__6h-eVq__variable{--font-fraunces:"Fraunces", "Fraunces Fallback"}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2e4y-bhazgt_v.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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.3o0_l_yqebdng.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.2mglm451ism6l.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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.3bjsqkuy1d2v8.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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0xluf1kzv7x5w.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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.45487z7p3r8wm.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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2e4y-bhazgt_v.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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.3o0_l_yqebdng.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.2mglm451ism6l.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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.3bjsqkuy1d2v8.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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0xluf1kzv7x5w.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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.45487z7p3r8wm.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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.2e4y-bhazgt_v.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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.3o0_l_yqebdng.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.2mglm451ism6l.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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.3bjsqkuy1d2v8.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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0xluf1kzv7x5w.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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.45487z7p3r8wm.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:IBM Plex Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_9a42ea1f-module__2lIkVa__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.ibm_plex_sans_9a42ea1f-module__2lIkVa__variable{--font-plex:"IBM Plex Sans", "IBM Plex Sans 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 Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_4ba603de-module__Zo4tiq__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_4ba603de-module__Zo4tiq__variable{--font-jetbrains:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--color-paper:#f8f5ef;--color-paper-2:#f0ece5;--color-paper-3:#e7e2da;--color-rule:#d4d0ca;--color-rule-soft:#e1ddd7;--color-neutral:#6e6862;--color-muted:#4d4640;--color-ink:#1d1712;--color-accent:#b95115;--color-accent-soft:#f9e3d5;--color-focus:#b35100;--color-link:#934319;--color-danger:#b33736;--color-ok:#317a45;--color-selection:#f0dbb9;--color-highlight:#f7e59f;--color-code-bg:#efebe4;--color-veil:#1d171259;--color-card:#fbf9f5;--font-display:var(--font-fraunces), ui-serif, Georgia, serif;--font-body:var(--font-plex), ui-sans-serif, system-ui, sans-serif;--font-mono:var(--font-jetbrains), ui-monospace, monospace;--text-xs:.72rem;--text-sm:.8125rem;--text-base:.9375rem;--text-md:1.0625rem;--text-lg:1.25rem;--text-xl:1.5625rem;--text-2xl:1.9531rem;--text-3xl:2.4414rem;--text-title:clamp(1.75rem, 2.2vw + 1rem, 2.6rem);--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.25rem;--space-2xl:3.5rem;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in:cubic-bezier(.55, 0, 1, .45);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-fast:.12s;--dur-med:.2s;--dur-slow:.32s;--radius-sm:4px;--radius-md:7px;--radius-lg:12px;--rule-hair:1px solid var(--color-rule);--rule-soft:1px solid var(--color-rule-soft);--shadow-pop:0 4px 24px #342c2324, 0 1px 3px #342c231a;--shadow-card:0 1px 2px #342c2312;--sidebar-w:248px;--panel-w:340px}@supports (color:lab(0% 0 0)){:root{--color-paper:lab(96.5432% .459313 3.01498);--color-paper-2:lab(93.6486% .580996 3.7732);--color-paper-3:lab(90.1738% .706017 4.53374);--color-rule:lab(83.7884% .584036 3.77523);--color-rule-soft:lab(88.4258% .521332 3.39484);--color-neutral:lab(44.3241% 1.42297 4.35519);--color-muted:lab(30.3862% 2.08218 4.93557);--color-ink:lab(8.32477% 2.54384 4.38684);--color-accent:lab(47.8774% 40.8881 52.0565);--color-accent-soft:lab(91.7832% 5.94327 9.55294);--color-focus:lab(46.6484% 44.5038 79.2081);--color-link:lab(38.8293% 32.4868 40.1507);--color-danger:lab(42.7155% 50.4992 30.4501);--color-ok:lab(45.7105% -33.1533 21.792);--color-selection:lab(88.5071% 3.54594 19.3722);--color-highlight:lab(91.1512% -.677466 36.31);--color-code-bg:lab(93.0686% .581116 3.77332);--color-veil:lab(8.32477% 2.54384 4.38684/.35);--color-card:lab(97.9296% .34067 2.25881);--shadow-pop:0 4px 24px lab(18.7942% 2.60349 7.45645/.14), 0 1px 3px lab(18.7942% 2.60349 7.45645/.1);--shadow-card:0 1px 2px lab(18.7942% 2.60349 7.45645/.07)}}:root[data-theme=dark]{--color-paper:#0d0b07;--color-paper-2:#14110c;--color-paper-3:#1e1a14;--color-rule:#302d28;--color-rule-soft:#24211d;--color-neutral:#8a8580;--color-muted:#aeaaa5;--color-ink:#ebe7e2;--color-accent:#cc7044;--color-accent-soft:#351e0d;--color-focus:#e07937;--color-link:#d7926b;--color-danger:#d46660;--color-ok:#5d9d6b;--color-selection:#403012;--color-highlight:#3e3200;--color-code-bg:#16130f;--color-veil:#01000080;--color-card:#13100b;--shadow-pop:0 4px 24px #00000073, 0 1px 3px #00000059;--shadow-card:0 1px 2px #00000040}@supports (color:lab(0% 0 0)){:root[data-theme=dark]{--color-paper:lab(3.05898% .393577 1.80124);--color-paper-2:lab(5.28515% .609912 2.87521);--color-paper-3:lab(9.54589% .84766 4.55285);--color-rule:lab(18.8249% .646725 3.82054);--color-rule-soft:lab(13.0221% .588879 3.44392);--color-neutral:lab(55.9361% .885546 3.71429);--color-muted:lab(69.8536% .696182 2.96328);--color-ink:lab(91.9032% .460118 3.01553);--color-accent:lab(57.3632% 34.5162 40.5775);--color-accent-soft:lab(13.9482% 10.1194 15.2747);--color-focus:lab(61.9735% 37.6479 52.9028);--color-link:lab(66.9873% 23.9224 31.9456);--color-danger:lab(56.871% 43.8545 25.0613);--color-ok:lab(59.5259% -29.9329 19.4545);--color-selection:lab(21.1522% 4.84975 21.444);--color-highlight:lab(21.3338% 1.47001 31.7135);--color-code-bg:lab(6.21417% .596792 2.94662);--color-veil:lab(.110571% .130355 .149465/.5);--color-card:lab(4.85708% .580512 2.71113);--shadow-pop:0 4px 24px lab(0% 0 0/.45), 0 1px 3px lab(0% 0 0/.35);--shadow-card:0 1px 2px lab(0% 0 0/.25)}}
*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow-x:clip}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.55}::selection{background:var(--color-selection)}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}input,textarea,select{font:inherit;color:inherit}a{color:var(--color-link);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}}.shell{height:100dvh;display:flex;overflow:clip}.main{flex-direction:column;flex:1;min-width:0;scroll-padding-top:4rem;display:flex;overflow:clip auto}.sidebar{width:var(--sidebar-w);border-right:var(--rule-hair);background:var(--color-paper-2);padding:var(--space-sm) var(--space-xs) var(--space-lg);scrollbar-width:thin;flex-direction:column;flex-shrink:0;display:flex;overflow:clip auto}.sidebar.collapsed{display:none}.sb-brand{align-items:baseline;gap:var(--space-2xs);font-family:var(--font-display);font-weight:600;font-size:var(--text-md);letter-spacing:-.01em;padding:var(--space-xs) var(--space-sm) var(--space-sm);display:flex}.sb-brand .tick{color:var(--color-accent)}.sb-capture{align-items:center;gap:var(--space-xs);margin:0 var(--space-xs) var(--space-sm);padding:var(--space-xs) var(--space-sm);border:var(--rule-hair);border-radius:var(--radius-md);background:var(--color-card);color:var(--color-neutral);font-size:var(--text-sm);box-shadow:var(--shadow-card);transition:border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);display:flex}.sb-capture:hover{border-color:var(--color-neutral);color:var(--color-ink)}.sb-capture kbd{margin-left:auto}kbd{font-family:var(--font-mono);border:var(--rule-hair);border-radius:var(--radius-sm);color:var(--color-neutral);background:var(--color-paper);border-bottom-width:2px;padding:1px 5px;font-size:.68rem}.sb-section{margin-top:var(--space-md);padding:0 var(--space-sm) var(--space-2xs);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-neutral);justify-content:space-between;align-items:center;font-weight:600;display:flex}.sb-section button{color:var(--color-neutral);font-size:var(--text-sm);border-radius:var(--radius-sm);padding:0 4px;line-height:1}.sb-section button:hover{color:var(--color-ink)}.sb-item{align-items:center;gap:var(--space-xs);text-align:left;width:100%;padding:5px var(--space-sm);border-radius:var(--radius-md);color:var(--color-muted);font-size:var(--text-sm);transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);white-space:nowrap;text-overflow:ellipsis;display:flex;overflow:clip}.sb-item:hover{background:var(--color-paper-3);color:var(--color-ink)}.sb-item.active{background:var(--color-paper-3);color:var(--color-ink);font-weight:500}.sb-item.active .sb-ico{color:var(--color-accent)}.sb-item .sb-ico{text-align:center;opacity:.85;flex-shrink:0;width:1.1em}.sb-item .count{font-size:var(--text-xs);color:var(--color-neutral);font-variant-numeric:tabular-nums;margin-left:auto}.sb-sub{padding-left:var(--space-lg)}.topbar{z-index:30;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);background:color-mix(in oklab, var(--color-paper) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:var(--rule-soft);min-height:44px;display:flex;position:sticky;top:0}.topbar .crumb{font-size:var(--text-sm);color:var(--color-neutral);white-space:nowrap;text-overflow:ellipsis;overflow:clip}.topbar .crumb b{color:var(--color-ink);font-weight:500}.topbar .spacer{flex:1}.icon-btn{border-radius:var(--radius-md);width:28px;height:28px;color:var(--color-neutral);font-size:var(--text-base);transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--color-paper-3);color:var(--color-ink)}.icon-btn.active{color:var(--color-accent);background:var(--color-accent-soft)}.icon-btn:disabled{opacity:.4;cursor:default}.icon-btn:disabled:hover{color:var(--color-neutral);background:0 0}.text-btn{align-items:center;gap:var(--space-2xs);border-radius:var(--radius-md);border:var(--rule-hair);background:var(--color-card);color:var(--color-muted);font-size:var(--text-sm);transition:border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);padding:4px 10px;display:inline-flex}.text-btn:hover{border-color:var(--color-neutral);color:var(--color-ink)}.text-btn.primary{background:var(--color-ink);color:var(--color-paper);border-color:var(--color-ink)}.text-btn.primary:hover{opacity:.9}.text-btn.accent{color:var(--color-accent);border-color:color-mix(in oklab, var(--color-accent) 40%, var(--color-rule))}.text-btn:disabled{opacity:.45;cursor:default}.note-scroll{flex:1}.note-page{width:100%;max-width:46rem;padding:var(--space-xl) var(--space-lg) 40vh;margin:0 auto}.note-meta-row{align-items:center;gap:var(--space-xs);margin-bottom:var(--space-xs);font-size:var(--text-xs);color:var(--color-neutral);flex-wrap:wrap;display:flex}.note-meta-row .chip{cursor:pointer}.chip{background:var(--color-paper-3);color:var(--color-muted);font-size:var(--text-xs);transition:border-color var(--dur-fast) var(--ease-out);border:1px solid #0000;border-radius:99px;align-items:center;gap:4px;padding:2px 9px;display:inline-flex}.chip:hover{border-color:var(--color-neutral)}.chip.accent{background:var(--color-accent-soft);color:var(--color-accent)}.chip .x{opacity:.6}.chip .x:hover{opacity:1}.note-title{resize:none;width:100%;font-family:var(--font-display);font-weight:600;font-size:var(--text-title);letter-spacing:-.015em;color:var(--color-ink);margin-bottom:var(--space-md);background:0 0;border:none;line-height:1.12;overflow:clip}.note-title:focus-visible{outline:none}.note-title::placeholder{color:var(--color-rule)}.source-card{gap:var(--space-xs);border-left:3px solid var(--color-accent);background:var(--color-paper-2);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:var(--space-xs) var(--space-sm);margin-bottom:var(--space-md);font-size:var(--text-sm);color:var(--color-muted);align-items:baseline;display:flex}.source-card a{overflow-wrap:anywhere}.editor{position:relative}.block-row{align-items:flex-start;display:flex;position:relative}.block-row.drag-over-top:before,.block-row.drag-over-bottom:after{content:"";background:var(--color-accent);z-index:5;border-radius:1px;height:2px;position:absolute;left:0;right:0}.block-row.drag-over-top:before{top:-1px}.block-row.drag-over-bottom:after{bottom:-1px}.block-gutter{opacity:0;height:100%;transition:opacity var(--dur-fast) var(--ease-out);align-items:flex-start;gap:2px;padding-top:.3em;display:flex;position:absolute;top:0;left:-44px}.block-row:hover .block-gutter{opacity:1}.block-gutter:has(:focus-visible){opacity:1}.gutter-btn{border-radius:var(--radius-sm);width:18px;height:20px;color:var(--color-neutral);cursor:grab;justify-content:center;align-items:center;font-size:13px;display:inline-flex}.gutter-btn:hover{background:var(--color-paper-3);color:var(--color-ink)}.gutter-btn.add{cursor:pointer}.block{flex:1;min-width:0;padding:.18em 0}.block-text{white-space:pre-wrap;overflow-wrap:anywhere;caret-color:var(--color-accent);outline:none}.block-text:empty:before{content:attr(data-ph);color:var(--color-rule);pointer-events:none}.block-row.is-focused .block-text:empty:before{content:attr(data-ph-focus)}.b-h1,.b-h2,.b-h3{font-family:var(--font-display);letter-spacing:-.01em;font-weight:600;line-height:1.2}.b-h1{font-size:var(--text-2xl);margin-top:var(--space-md)}.b-h2{font-size:var(--text-xl);margin-top:var(--space-sm)}.b-h3{font-size:var(--text-lg);margin-top:var(--space-xs)}.b-li{gap:var(--space-xs);display:flex}.b-li .marker{-webkit-user-select:none;user-select:none;color:var(--color-neutral);text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0;min-width:1.1em;padding-top:.05em}.b-li .marker.bullet{padding-top:.35em;font-size:.8em}.b-li .block-text{flex:1;min-width:0}.b-task .task-box{border:1.5px solid var(--color-neutral);border-radius:var(--radius-sm);width:15px;height:15px;color:var(--color-paper);transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;flex-shrink:0;justify-content:center;align-items:center;margin-top:.32em;font-size:10px;display:inline-flex}.b-task.done .task-box{background:var(--color-ok);border-color:var(--color-ok)}.b-task.done .block-text{color:var(--color-neutral);text-decoration:line-through;-webkit-text-decoration-color:var(--color-rule);text-decoration-color:var(--color-rule)}.b-quote{border-left:2.5px solid var(--color-ink);padding-left:var(--space-md);font-family:var(--font-display);font-size:var(--text-md);color:var(--color-muted)}.b-callout{gap:var(--space-xs);background:var(--color-accent-soft);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);align-items:flex-start;display:flex}.b-callout .callout-ico{font-size:var(--text-md);cursor:pointer;flex-shrink:0;line-height:1.4}.b-callout .block-text{flex:1;min-width:0}.b-divider{padding:var(--space-xs) 0;align-items:center;display:flex}.b-divider hr{border:none;border-top:var(--rule-hair);flex:1}.b-code{background:var(--color-code-bg);border:var(--rule-soft);border-radius:var(--radius-md);overflow:clip}.b-code .code-head{padding:2px var(--space-xs);border-bottom:var(--rule-soft);background:color-mix(in oklab, var(--color-paper-2) 60%, var(--color-code-bg));align-items:center;display:flex}.b-code .code-head select{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-neutral);cursor:pointer;background:0 0;border:none}.b-code .code-head .icon-btn{width:22px;height:22px;font-size:var(--text-sm);margin-left:auto}.b-code .block-text,.b-code textarea{font-family:var(--font-mono);padding:var(--space-sm) var(--space-md);resize:none;white-space:pre;background:0 0;border:none;outline:none;width:100%;font-size:.8rem;line-height:1.6;display:block;overflow-x:auto}.b-equation{text-align:center;padding:var(--space-xs) 0;cursor:pointer;border-radius:var(--radius-md)}.b-equation:hover{background:var(--color-paper-2)}.b-equation .katex-display{margin:.35em 0}.b-equation.editing textarea{width:100%;font-family:var(--font-mono);background:var(--color-code-bg);border:var(--rule-hair);border-radius:var(--radius-md);padding:var(--space-xs) var(--space-sm);resize:vertical;min-height:3.2em;font-size:.85rem}.eq-error{color:var(--color-danger);font-size:var(--text-sm);font-family:var(--font-mono)}.b-image{text-align:center}.b-image img{border-radius:var(--radius-md);border:var(--rule-soft);max-width:100%}.b-image .img-caption,.img-caption input{font-size:var(--text-sm);color:var(--color-neutral);text-align:center;width:100%;margin-top:var(--space-2xs);background:0 0;border:none;outline:none}.b-image.empty{border:1.5px dashed var(--color-rule);border-radius:var(--radius-md);padding:var(--space-lg);color:var(--color-neutral);font-size:var(--text-sm);cursor:pointer}.b-embed{border:var(--rule-hair);border-radius:var(--radius-md);overflow:clip}.b-embed iframe{aspect-ratio:16/9;border:none;width:100%;display:block}.embed-card{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);display:flex}.embed-card .fav{border-radius:var(--radius-sm);background:var(--color-paper-3);flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.embed-card .u{min-width:0}.embed-card .u .t{font-size:var(--text-sm);font-weight:500}.embed-card .u .d{font-size:var(--text-xs);color:var(--color-neutral);overflow-wrap:anywhere}.b-table{overflow-x:auto}.b-table table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.b-table th,.b-table td{border:var(--rule-hair);min-width:90px;padding:0}.b-table th{background:var(--color-paper-2)}.b-table th input,.b-table td input{width:100%;font-size:var(--text-sm);background:0 0;border:none;outline:none;padding:5px 9px}.b-table th input{font-weight:600}.b-table td input:focus,.b-table th input:focus{background:var(--color-selection)}.table-tools{gap:var(--space-2xs);padding-top:var(--space-2xs);opacity:0;transition:opacity var(--dur-fast) var(--ease-out);display:flex}.block-row:hover .table-tools{opacity:1}.table-tools button{font-size:var(--text-xs);color:var(--color-neutral);border-radius:var(--radius-sm);border:var(--rule-soft);padding:1px 7px}.table-tools button:hover{color:var(--color-ink);border-color:var(--color-neutral)}.syn{color:var(--color-rule)}.tok-b{font-weight:650}.tok-i{font-style:italic}.tok-c{font-family:var(--font-mono);background:var(--color-code-bg);border-radius:3px;padding:0 2px;font-size:.85em}.tok-hl{background:var(--color-highlight);border-radius:2px}.tok-wiki{color:var(--color-link);cursor:pointer;border-radius:3px}.tok-wiki:hover{text-decoration:underline}.tok-wiki.broken{color:var(--color-neutral);border-bottom:1px dashed var(--color-neutral)}.tok-tag{color:var(--color-accent);cursor:pointer}.tok-url{color:var(--color-link);text-decoration:underline;-webkit-text-decoration-color:var(--color-rule);text-decoration-color:var(--color-rule);overflow-wrap:anywhere}.tok-mdlink{color:var(--color-link)}.float-menu{z-index:100;background:var(--color-card);border:var(--rule-hair);border-radius:var(--radius-lg);min-width:240px;max-width:320px;box-shadow:var(--shadow-pop);padding:var(--space-2xs);max-height:320px;animation:menu-in var(--dur-fast) var(--ease-out);position:fixed;overflow-y:auto}@keyframes menu-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.float-menu .group-label{font-size:var(--text-xs);color:var(--color-neutral);padding:var(--space-2xs) var(--space-xs);letter-spacing:.06em;text-transform:uppercase}.menu-item{align-items:center;gap:var(--space-xs);text-align:left;width:100%;padding:5px var(--space-xs);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-ink);display:flex}.menu-item .mi-ico{border:var(--rule-soft);border-radius:var(--radius-sm);background:var(--color-paper);width:22px;height:22px;font-size:var(--text-xs);font-family:var(--font-display);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.menu-item .mi-hint{font-size:var(--text-xs);color:var(--color-neutral);margin-left:auto}.menu-item.sel{background:var(--color-paper-3)}.menu-item .mi-sub{font-size:var(--text-xs);color:var(--color-neutral);display:block}.refs{width:100%;max-width:46rem;padding:0 var(--space-lg) var(--space-2xl);margin:0 auto}.refs-rule{border:none;border-top:var(--rule-hair);margin-bottom:var(--space-md)}.refs h3{font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-neutral);margin:var(--space-md) 0 var(--space-xs);gap:var(--space-xs);align-items:baseline;font-weight:600;display:flex}.refs h3 .n{color:var(--color-accent);font-variant-numeric:tabular-nums}.ref-item{text-align:left;border:var(--rule-soft);border-radius:var(--radius-md);width:100%;padding:var(--space-xs) var(--space-sm);margin-bottom:var(--space-2xs);background:var(--color-card);transition:border-color var(--dur-fast) var(--ease-out);display:block}.ref-item:hover{border-color:var(--color-neutral)}.ref-item .ref-note{font-size:var(--text-sm);align-items:baseline;gap:var(--space-xs);margin-bottom:1px;font-weight:550;display:flex}.ref-item .ref-note .when{font-weight:400;font-size:var(--text-xs);color:var(--color-neutral)}.ref-item .ref-ctx{font-size:var(--text-sm);color:var(--color-muted)}.ref-item .ref-ctx mark{background:var(--color-highlight);color:inherit;border-radius:2px;padding:0 1px}.ref-item .link-it{float:right}.related-row{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.related-row .why{color:var(--color-neutral)}.veil{z-index:200;background:var(--color-veil);padding:12vh var(--space-md) var(--space-md);animation:veil-in var(--dur-fast) var(--ease-out);justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}@keyframes veil-in{0%{opacity:0}to{opacity:1}}.modal{background:var(--color-card);border:var(--rule-hair);border-radius:var(--radius-lg);width:100%;max-width:560px;max-height:70vh;box-shadow:var(--shadow-pop);animation:modal-in var(--dur-med) var(--ease-out);flex-direction:column;display:flex;overflow:clip}@keyframes modal-in{0%{opacity:0;transform:translateY(-6px)scale(.995)}to{opacity:1;transform:none}}.palette-input{width:100%;padding:var(--space-md);font-size:var(--text-md);border:none;border-bottom:var(--rule-soft);background:0 0;outline:none}.palette-list{padding:var(--space-2xs);overflow-y:auto}.palette-empty{padding:var(--space-lg);text-align:center;color:var(--color-neutral);font-size:var(--text-sm)}.capture-modal{max-width:620px}.capture-input{resize:none;width:100%;padding:var(--space-md) var(--space-md) var(--space-xs);font-size:var(--text-md);background:0 0;border:none;outline:none;min-height:96px;line-height:1.5}.capture-foot{align-items:center;gap:var(--space-2xs);padding:var(--space-xs) var(--space-md) var(--space-sm);flex-wrap:wrap;display:flex}.capture-foot .hint{font-size:var(--text-xs);color:var(--color-neutral);margin-left:auto}.cap-kind{border:var(--rule-hair);font-size:var(--text-xs);color:var(--color-muted);background:var(--color-paper);border-radius:99px;align-items:center;gap:4px;padding:3px 10px;display:inline-flex}.cap-kind.on{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-soft)}.cap-live{color:var(--color-danger);animation:1.2s infinite pulse}@keyframes pulse{50%{opacity:.4}}.list-page{width:100%;max-width:46rem;padding:var(--space-xl) var(--space-lg) var(--space-2xl);margin:0 auto}.page-head{margin-bottom:var(--space-lg)}.page-head h1{font-family:var(--font-display);letter-spacing:-.015em;font-weight:600;font-size:var(--text-3xl);line-height:1.1}.page-head .sub{color:var(--color-neutral);font-size:var(--text-sm);margin-top:var(--space-2xs)}.page-head .head-actions{gap:var(--space-xs);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.note-card{text-align:left;width:100%;padding:var(--space-sm) 0;border-bottom:var(--rule-soft);transition:background var(--dur-fast) var(--ease-out);display:block}.note-card:hover{background:var(--color-paper-2)}.note-card .t{gap:var(--space-xs);align-items:baseline;font-weight:550;display:flex}.note-card .t .k{font-size:var(--text-xs);color:var(--color-neutral);font-weight:400}.note-card .x{font-size:var(--text-sm);color:var(--color-neutral);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;display:-webkit-box;overflow:clip}.note-card .meta{gap:var(--space-xs);font-size:var(--text-xs);color:var(--color-neutral);flex-wrap:wrap;margin-top:4px;display:flex}.daily-strip{gap:var(--space-2xs);padding-bottom:var(--space-2xs);margin-bottom:var(--space-md);display:flex;overflow-x:auto}.day-pill{text-align:center;border-radius:var(--radius-md);border:var(--rule-soft);font-size:var(--text-xs);color:var(--color-muted);flex-shrink:0;padding:4px 10px}.day-pill .dn{font-weight:600;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.day-pill.today{border-color:var(--color-accent);color:var(--color-accent)}.day-pill.sel{background:var(--color-ink);color:var(--color-paper);border-color:var(--color-ink)}.day-pill.has-dot{position:relative}.day-pill .dot{background:var(--color-accent);border-radius:2px;width:4px;height:4px;margin:1px auto 0;display:block}.right-dock{width:var(--panel-w);border-left:var(--rule-hair);background:var(--color-paper-2);flex-direction:column;flex-shrink:0;display:flex;overflow:clip}.dock-head{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-bottom:var(--rule-soft);font-size:var(--text-sm);font-weight:600;display:flex}.dock-head .icon-btn{margin-left:auto}.dock-body{padding:var(--space-sm);flex:1;overflow-y:auto}.ai-scope{font-size:var(--text-xs);color:var(--color-neutral);margin-bottom:var(--space-xs);align-items:center;gap:var(--space-2xs);flex-wrap:wrap;display:flex}.ai-actions{gap:var(--space-2xs);margin-bottom:var(--space-sm);grid-template-columns:1fr 1fr;display:grid}.ai-action{text-align:left;padding:var(--space-xs) var(--space-sm);border:var(--rule-soft);border-radius:var(--radius-md);background:var(--color-card);font-size:var(--text-sm);color:var(--color-muted);transition:border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out)}.ai-action:hover{border-color:var(--color-neutral);color:var(--color-ink)}.ai-action:disabled{opacity:.5}.ai-out{background:var(--color-card);border:var(--rule-soft);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);font-size:var(--text-sm)}.ai-out h4{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-neutral);margin-bottom:var(--space-xs)}.ai-out p{margin-bottom:var(--space-xs)}.ai-out .cite{color:var(--color-link);cursor:pointer}.ai-out .cite:hover{text-decoration:underline}.ai-offline{font-size:var(--text-sm);color:var(--color-neutral);padding:var(--space-sm);border:1.5px dashed var(--color-rule);border-radius:var(--radius-md)}.ai-thinking{padding:var(--space-xs) 0;gap:4px;display:inline-flex}.ai-thinking i{background:var(--color-neutral);width:5px;height:5px;animation:think 1s infinite var(--ease-in-out);border-radius:3px}.ai-thinking i:nth-child(2){animation-delay:.15s}.ai-thinking i:nth-child(3){animation-delay:.3s}@keyframes think{50%{opacity:.25;transform:translateY(-2px)}}.canvas-wrap{background:radial-gradient(circle, var(--color-rule-soft) 1px, transparent 1px) 0 0 / 22px 22px, var(--color-paper);cursor:default;flex:1;position:relative;overflow:clip}.canvas-wrap.panning{cursor:grabbing}.canvas-stage{transform-origin:0 0;position:absolute;top:0;left:0}.canvas-item{background:var(--color-card);border:var(--rule-hair);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:box-shadow var(--dur-fast) var(--ease-out);flex-direction:column;display:flex;position:absolute;overflow:clip}.canvas-item.sel{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-soft), var(--shadow-pop)}.canvas-item.group-item{background:color-mix(in oklab, var(--color-accent-soft) 40%, transparent);border-style:dashed;z-index:0!important}.canvas-item .ci-head{align-items:center;gap:var(--space-2xs);padding:4px var(--space-xs);border-bottom:var(--rule-soft);font-size:var(--text-xs);color:var(--color-neutral);cursor:grab;-webkit-user-select:none;user-select:none;background:var(--color-paper-2);display:flex}.canvas-item .ci-head .ci-title{white-space:nowrap;text-overflow:ellipsis;color:var(--color-ink);font-weight:550;overflow:clip}.canvas-item .ci-body{padding:var(--space-xs) var(--space-sm);font-size:var(--text-sm);flex:1;overflow:clip}.canvas-item .ci-body.txt textarea{resize:none;width:100%;height:100%;font-size:var(--text-sm);background:0 0;border:none;outline:none}.canvas-item img{object-fit:cover;width:100%;height:100%}.ci-resize{cursor:nwse-resize;width:14px;height:14px;position:absolute;bottom:0;right:0}.ci-resize:after{content:"";border-right:2px solid var(--color-rule);border-bottom:2px solid var(--color-rule);border-radius:1px;width:7px;height:7px;position:absolute;bottom:3px;right:3px}.canvas-toolbar{top:var(--space-sm);z-index:50;gap:var(--space-2xs);padding:var(--space-2xs);background:var(--color-card);border:var(--rule-hair);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);display:flex;position:absolute;left:50%;transform:translate(-50%)}.canvas-hud{bottom:var(--space-sm);right:var(--space-sm);z-index:50;font-size:var(--text-xs);color:var(--color-neutral);gap:var(--space-xs);align-items:center;display:flex;position:absolute}.edge-label{fill:var(--color-neutral);font-size:11px}.edge-line{stroke:var(--color-neutral);stroke-width:1.5px;fill:none;opacity:.65}.edge-line.pending{stroke:var(--color-accent);stroke-dasharray:5 4}.graph-wrap{flex:1;position:relative;overflow:clip}.graph-wrap canvas{width:100%;height:100%;display:block}.graph-filters{top:var(--space-sm);left:var(--space-sm);z-index:40;gap:var(--space-2xs);background:color-mix(in oklab, var(--color-card) 92%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:var(--rule-hair);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-sm);font-size:var(--text-sm);flex-direction:column;max-width:250px;display:flex;position:absolute}.graph-filters label{font-size:var(--text-xs);color:var(--color-neutral);letter-spacing:.05em;text-transform:uppercase;margin-top:var(--space-2xs)}.graph-filters select,.graph-filters input[type=search]{border:var(--rule-hair);border-radius:var(--radius-md);background:var(--color-paper);font-size:var(--text-sm);width:100%;padding:3px 8px}.graph-filters input[type=range]{width:100%;accent-color:var(--color-accent)}.graph-info{top:var(--space-sm);right:var(--space-sm);bottom:var(--space-sm);z-index:40;background:color-mix(in oklab, var(--color-card) 94%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:var(--rule-hair);border-radius:var(--radius-lg);width:300px;box-shadow:var(--shadow-pop);padding:var(--space-md);animation:menu-in var(--dur-med) var(--ease-out);position:absolute;overflow-y:auto}.graph-info h2{font-family:var(--font-display);font-size:var(--text-lg);margin-bottom:var(--space-2xs);line-height:1.2}.graph-info .gi-meta{font-size:var(--text-xs);color:var(--color-neutral);margin-bottom:var(--space-xs)}.graph-info .gi-x{font-size:var(--text-sm);color:var(--color-muted);margin-bottom:var(--space-sm)}.graph-legend{bottom:var(--space-sm);left:var(--space-sm);z-index:30;gap:var(--space-sm);font-size:var(--text-xs);color:var(--color-neutral);flex-wrap:wrap;display:flex;position:absolute}.graph-legend .sw{vertical-align:baseline;border-radius:5px;width:9px;height:9px;margin-right:4px;display:inline-block}.tl-page{width:100%;max-width:52rem;padding:var(--space-xl) var(--space-lg) var(--space-2xl);margin:0 auto}.tl-controls{gap:var(--space-xs);margin-bottom:var(--space-lg);flex-wrap:wrap;align-items:center;display:flex}.tl-controls select{border:var(--rule-hair);border-radius:var(--radius-md);background:var(--color-card);font-size:var(--text-sm);padding:4px 8px}.tl-month{font-family:var(--font-display);font-size:var(--text-lg);margin:var(--space-lg) 0 var(--space-xs);background:color-mix(in oklab, var(--color-paper) 92%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:var(--space-2xs) 0;z-index:10;font-weight:600;position:sticky;top:48px}.tl-day{gap:var(--space-md);padding:var(--space-xs) 0;display:flex}.tl-date{text-align:right;width:76px;font-size:var(--text-xs);color:var(--color-neutral);font-variant-numeric:tabular-nums;flex-shrink:0;padding-top:3px}.tl-events{border-left:var(--rule-hair);min-width:0;padding-left:var(--space-md);gap:var(--space-2xs);flex-direction:column;flex:1;display:flex;position:relative}.tl-ev{gap:var(--space-xs);font-size:var(--text-sm);align-items:baseline;display:flex;position:relative}.tl-ev:before{content:"";left:calc(-1 * var(--space-md) - 3.5px);background:var(--color-rule);border-radius:3px;width:6px;height:6px;position:absolute;top:.5em}.tl-ev.k-created:before{background:var(--color-ok)}.tl-ev.k-decision:before{background:var(--color-accent)}.tl-ev.k-linked:before{background:var(--color-link)}.tl-ev .k{font-size:var(--text-xs);color:var(--color-neutral);flex-shrink:0;width:62px}.tl-ev button.t{text-align:left;font-weight:500}.tl-ev button.t:hover{color:var(--color-link)}.tl-ev .d{color:var(--color-neutral);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:clip}.study-page{width:100%;max-width:46rem;padding:var(--space-xl) var(--space-lg) var(--space-2xl);margin:0 auto}.study-stats{gap:var(--space-lg);margin:var(--space-md) 0 var(--space-lg);flex-wrap:wrap;display:flex}.study-stats .st .n{font-family:var(--font-display);font-size:var(--text-2xl);font-variant-numeric:tabular-nums;font-weight:600}.study-stats .st .l{font-size:var(--text-xs);color:var(--color-neutral);letter-spacing:.07em;text-transform:uppercase}.study-card{border:var(--rule-hair);border-radius:var(--radius-lg);background:var(--color-card);box-shadow:var(--shadow-card);padding:var(--space-xl) var(--space-lg);text-align:center;justify-content:center;align-items:center;gap:var(--space-md);cursor:pointer;flex-direction:column;min-height:220px;display:flex}.study-card .q{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.3}.study-card .a{font-size:var(--text-md);color:var(--color-muted);border-top:var(--rule-soft);padding-top:var(--space-md);width:100%}.study-card .src{font-size:var(--text-xs);color:var(--color-neutral)}.grade-row{gap:var(--space-xs);margin-top:var(--space-md);flex-wrap:wrap;justify-content:center;display:flex}.grade-btn{padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);border:var(--rule-hair);background:var(--color-card);font-size:var(--text-sm)}.grade-btn:hover{border-color:var(--color-neutral)}.grade-btn b{font-size:var(--text-xs);color:var(--color-neutral);font-weight:400;display:block}.quiz-opt{text-align:left;border:var(--rule-hair);border-radius:var(--radius-md);background:var(--color-card);width:100%;padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-2xs);font-size:var(--text-base);transition:border-color var(--dur-fast) var(--ease-out);display:block}.quiz-opt:hover{border-color:var(--color-neutral)}.quiz-opt.right{border-color:var(--color-ok);background:color-mix(in oklab, var(--color-ok) 10%, var(--color-card))}.quiz-opt.wrong{border-color:var(--color-danger);background:color-mix(in oklab, var(--color-danger) 8%, var(--color-card))}.deck-row{align-items:center;gap:var(--space-sm);border-bottom:var(--rule-soft);padding:var(--space-xs) 0;font-size:var(--text-sm);display:flex}.deck-row .grow{flex:1;min-width:0}.deck-row .due{color:var(--color-accent);font-variant-numeric:tabular-nums}.empty{padding:var(--space-2xl) var(--space-lg);text-align:center;color:var(--color-neutral)}.empty .big{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-muted);margin-bottom:var(--space-xs)}.empty .hint-line{font-size:var(--text-sm)}.toast{bottom:var(--space-lg);z-index:300;background:var(--color-ink);color:var(--color-paper);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);font-size:var(--text-sm);box-shadow:var(--shadow-pop);gap:var(--space-sm);animation:toast-in var(--dur-med) var(--ease-out);align-items:center;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast button{color:var(--color-accent-soft);font-weight:600}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)}}@media (max-width:900px){.right-dock{z-index:150;box-shadow:var(--shadow-pop);position:fixed;top:0;bottom:0;right:0}.block-gutter{left:-30px}}@media (max-width:768px){.sidebar{z-index:150;box-shadow:var(--shadow-pop);position:fixed;top:0;bottom:0;left:0}.sidebar.collapsed{display:none}.note-page,.list-page,.study-page,.tl-page{padding-left:var(--space-md);padding-right:var(--space-md)}.block-gutter{display:none}.ai-actions{grid-template-columns:1fr}.graph-info{width:min(300px, calc(100vw - 2 * var(--space-sm)))}}
