@font-face{font-family:Rajdhani;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/rajdhani-latin-600-normal-CXCVEoA9.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:Rajdhani;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/rajdhani-latin-ext-600-normal-C9ZjJQAt.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:Rajdhani;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/rajdhani-latin-700-normal-BPDUZo87.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:Rajdhani;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/rajdhani-latin-ext-700-normal-S6aYESQK.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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/inter-latin-400-normal-C38fXH4l.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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/inter-greek-400-normal-B4URO6DV.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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/inter-latin-600-normal-LgqL8muc.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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/inter-greek-600-normal-plRanbMR.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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/inter-greek-700-normal-C3JjAnD8.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:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/space-mono-latin-400-normal-Rg4St2Dn.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:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/space-mono-latin-ext-400-normal-DTLbW2xa.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:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/space-mono-latin-700-normal-mWgeinG7.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:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/space-mono-latin-ext-700-normal-B2s3bDs2.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}:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#080c14;--bg-card:#0d1321;--bg-surface:#111827;--bg-elevated:#131b2c;--accent:#00f5c4;--accent-ink:#00f5c4;--on-accent:#080c14;--accent-soft:#00f5c41f;--gradient-start:#00f5c4;--gradient-end:#7c3aed;--violet:#a78bfa;--warm:#ff7a45;--pink:#ff5ccb;--text-primary:#e8edf5;--text-secondary:#8b9bb4;--text-muted:#6b7a90;--border:#1e2d40;--border-strong:#2b3d55;--outline:#4a5568;--shadow:0 18px 40px -18px #000000b3;--sheet-shadow:0 -1px 0 var(--border), 0 -30px 60px -28px #000c;--nav-bg:#080c14d1;--overlay:#0000008c;--tooltip-bg:#e8edf5;--tooltip-fg:#080c14;--code-bg:#0b111d;--grid-line:#1e2d408c;--orb-violet:#7c3aed2e;--orb-cyan:#00f5c41f;--particle-accent:0, 245, 196;--particle-muted:139, 155, 180;--particle-line:0, 245, 196;--particle-line-alpha:.16;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--chart-grid:#1a2536;--chart-axis:#34425a;--chart-text:#8b9bb4}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f7fa;--bg-card:#fff;--bg-surface:#eef2f7;--bg-elevated:#fff;--accent:#00f5c4;--accent-ink:#0f172a;--on-accent:#080c14;--accent-soft:#00f5c429;--gradient-start:#00f5c4;--gradient-end:#6d28d9;--violet:#6d28d9;--warm:#c2410c;--pink:#be185d;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--border:#dde3ea;--border-strong:#c7d0db;--outline:#b4bfcc;--shadow:0 18px 40px -20px #0f172a40;--sheet-shadow:0 -1px 0 var(--border), 0 -24px 50px -30px #0f172a59;--nav-bg:#f5f7fad9;--overlay:#0f172a59;--tooltip-bg:#0f172a;--tooltip-fg:#f8fafc;--code-bg:#f0f3f7;--grid-line:#0f172a12;--orb-violet:#6d28d91a;--orb-cyan:#00a88a1a;--particle-accent:0, 128, 106;--particle-muted:100, 116, 139;--particle-line:0, 128, 106;--particle-line-alpha:.2;--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#eda100;--series-5:#e87ba4;--series-6:#008300;--series-7:#4a3aa7;--series-8:#e34948;--chart-grid:#e8edf2;--chart-axis:#c3ccd7;--chart-text:#475569}:root{--gradient:linear-gradient(90deg, var(--gradient-start), var(--gradient-end));--font-display:"Rajdhani", "Segoe UI", system-ui, sans-serif;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji";--font-mono:"Space Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--gutter:80px;--nav-height:64px;--content-max:1280px;--ease-out:cubic-bezier(.22, 1, .36, 1)}@media (max-width:767px){:root{--gutter:24px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}html.scroll-locked{overflow:hidden}body{background:var(--bg);min-height:100vh;color:var(--text-secondary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:16px;line-height:1.7;transition:background-color .25s,color .25s}img,svg,canvas{display:block}img{max-width:100%}button,input,textarea{font:inherit;color:inherit}a{color:inherit}h1,h2,h3,p,figure{margin:0}::selection{background:color-mix(in srgb, var(--accent) 28%, transparent);color:var(--text-primary)}:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.container{width:100%;max-width:calc(var(--content-max) + 2 * var(--gutter));padding-inline:var(--gutter);margin-inline:auto}.text-link{color:var(--accent-ink);text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}:root[data-theme=light] .text-link{text-decoration-thickness:2px}@media (hover:hover){.text-link:hover{text-decoration-thickness:2px}}.section-label{color:var(--accent);font-family:var(--font-mono);letter-spacing:3px;text-transform:uppercase;align-items:center;gap:18px;margin-bottom:48px;font-size:12px;font-weight:700;line-height:1.5;display:flex}.section-label:after{content:"";background:linear-gradient(90deg, var(--border-strong), transparent);flex:1;height:1px}:root[data-theme=light] .section-label>span,:root[data-theme=light] .hero__eyebrow{will-change:transform}.subheading{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:2px;text-transform:uppercase;margin-bottom:18px;font-size:11px;font-weight:700;line-height:1.5}.body{color:var(--text-secondary);font-size:16px;line-height:1.7}.lead{color:var(--text-primary);letter-spacing:-.005em;font-size:19px;line-height:1.65}.gradient-text{white-space:pre-line;background-image:var(--gradient);color:#0000;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-block:-.08em;padding-block:.08em;display:inline-block}.clamp-1{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.clamp-2,.clamp-3,.clamp-4{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.clamp-2{-webkit-line-clamp:2;line-clamp:2}.clamp-3{-webkit-line-clamp:3;line-clamp:3}.clamp-4{-webkit-line-clamp:4;line-clamp:4}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:200;background:var(--accent);color:var(--on-accent);font:700 11px/1.5 var(--font-mono);letter-spacing:2px;border-radius:4px;padding:10px 16px;text-decoration:none;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus{transform:none}@keyframes fade-in{0%{opacity:0}}@keyframes rise-in{0%{opacity:0;transform:translateY(20px)}}@keyframes slide-in{0%{opacity:0;transform:translate(-20px)}}.js .reveal{opacity:0}.js .is-visible .reveal{opacity:1;animation:fade-in .6s var(--ease-out) var(--d,0s) both}.js .is-visible .reveal--up{animation-name:rise-in;animation-duration:.65s}.js .reveal-hero{animation:rise-in .7s var(--ease-out) var(--d,0s) both}.js .reveal-hero--fade{animation-name:fade-in}.js .reveal-hero--left{animation-name:slide-in}.js .enter{animation:rise-in .55s var(--ease-out) both}.js .enter--fade{animation-name:fade-in}.js .enter--left{animation-name:slide-in}@media (prefers-reduced-motion:reduce){.js .reveal,.js .reveal-hero,.js .enter{opacity:1;animation:none!important}body{transition:none}}.btn{min-height:46px;font-family:var(--font-mono);letter-spacing:2px;white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:14px 28px;font-size:11px;font-weight:700;line-height:1.5;text-decoration:none;transition:background-color .2s,border-color .2s,box-shadow .2s,color .2s,transform .2s;display:inline-flex}.btn--wide{padding-inline:32px}.btn--primary{background:var(--accent);color:var(--on-accent)}.btn--primary:disabled{cursor:progress}.btn--outline{border-color:var(--outline);color:var(--accent-ink);background:0 0}.btn__icon{color:var(--text-muted);flex:none;transition:color .2s,transform .2s}.btn--primary .btn__icon{color:inherit}.btn__icon--leading{margin-left:-4px}@media (hover:hover){.btn--primary:hover{background:var(--accent);box-shadow:0 6px 24px -6px color-mix(in srgb, var(--accent) 70%, transparent);transform:translateY(-1px)}.btn--outline:hover{background:var(--accent-soft);border-color:var(--accent)}.btn--outline:hover .btn__icon{color:var(--accent-ink);transform:translate(2px)}}.icon-button{width:40px;height:40px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;transition:background-color .2s,color .2s;display:inline-grid}@media (hover:hover){.icon-button:hover{background:color-mix(in srgb, var(--text-primary) 8%, transparent);color:var(--text-primary)}}.theme-toggle__to-dark,:root[data-theme=light] .theme-toggle__to-light{display:none}:root[data-theme=light] .theme-toggle__to-dark{display:block}.icon-btn{border:1px solid var(--border);color:var(--text-secondary);border-radius:4px;place-items:center;padding:10px;transition:background-color .2s,border-color .2s,color .2s;display:inline-grid}.social-btn{border:1px solid var(--border);color:var(--text-secondary);font:700 11px/1.5 var(--font-mono);letter-spacing:2px;border-radius:4px;align-items:center;gap:10px;padding:12px 20px;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s;display:inline-flex}@media (hover:hover){.icon-btn:hover,.social-btn:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink)}}.filter-row{scrollbar-width:none;gap:8px;margin:-4px;padding:4px;display:flex;overflow-x:auto}.filter-row::-webkit-scrollbar{display:none}.chip{border:1px solid var(--border);color:var(--text-muted);font:700 11px/1.5 var(--font-mono);letter-spacing:2px;white-space:nowrap;cursor:pointer;background:0 0;border-radius:4px;flex:none;padding:8px 16px;transition:background-color .2s,border-color .2s,color .2s}@media (hover:hover){.chip:hover{border-color:var(--text-muted);color:var(--text-secondary)}}.chip[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-ink)}.tag{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);font:400 11px/1.5 var(--font-mono);letter-spacing:.5px;border-radius:6px;padding:4px 10px}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);z-index:20;background:var(--tooltip-bg);color:var(--tooltip-fg);font:500 12px/1.4 var(--font-body);letter-spacing:0;white-space:nowrap;pointer-events:none;opacity:0;border-radius:4px;padding:4px 8px;transition:opacity .15s,transform .15s;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%,-4px)}[data-tooltip]:hover:after,[data-tooltip]:focus-visible:after{opacity:1;transition-delay:.25s;transform:translate(-50%)}.badge{border:1px solid color-mix(in srgb, var(--badge-color) 35%, transparent);background:color-mix(in srgb, var(--badge-color) 10%, transparent);max-width:100%;color:var(--badge-color);font:400 10px/1.5 var(--font-mono);letter-spacing:1px;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding:4px 8px;display:inline-block;overflow:hidden}.badge--large{padding:6px 12px;font-size:11px}.spinner{border:2px solid var(--border);border-top-color:var(--accent-ink);border-radius:50%;width:34px;height:34px;animation:.9s linear infinite spin;display:inline-block}.spinner--dark{border-color:color-mix(in srgb, var(--on-accent) 25%, transparent);border-top-color:var(--on-accent);width:16px;height:16px}@keyframes spin{to{transform:rotate(360deg)}}.page-message{text-align:center;color:var(--text-muted);padding:64px 0}div.page-message{justify-content:center;display:flex}.nav{z-index:50;height:var(--nav-height);position:fixed;inset:0 0 auto}.nav:before{content:"";z-index:-1;border-bottom:1px solid var(--border);background:var(--nav-bg);-webkit-backdrop-filter:saturate(160%)blur(12px);backdrop-filter:saturate(160%)blur(12px);opacity:0;transition:opacity .3s;position:absolute;inset:0}.nav--solid:before{opacity:1}.nav--dock:before{opacity:calc((var(--dock,0) - .9) * 10);transition:none}.nav__inner{justify-content:space-between;align-items:center;gap:16px;height:100%;padding-inline:clamp(14px,2vw,28px);display:flex}.nav__logo{border-radius:6px;flex:none;align-items:center;gap:14px;min-width:0;text-decoration:none;display:inline-flex}.nav__logo img{flex:none;width:48px;height:48px}.nav__name{font-family:var(--font-display);letter-spacing:-.4px;white-space:nowrap;font-size:23px;font-weight:700;line-height:1}.nav--dock .nav__name{opacity:calc((var(--dock,0) - .9) * 10)}@media (max-width:767px){.nav__name{font-size:20px}}@media (max-width:359px){.nav__name{display:none}}.nav__end{align-items:center;gap:4px;min-width:0;display:flex}.nav__links{min-width:0}.nav__links ul{scrollbar-width:none;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.nav__link{color:var(--text-secondary);font:700 11px/1.5 var(--font-mono);letter-spacing:1.5px;white-space:nowrap;padding:20px 14px;text-decoration:none;transition:color .2s;display:block}@media (hover:hover){.nav__link:hover{color:var(--accent-ink)}}.nav__menu-button{display:none}.js .nav__logo,.js .nav__end{animation:fade-in .6s var(--ease-out) .1s both}@media (max-width:767px){.nav__links{display:none}.nav__menu-button{display:inline-grid}}.sheet{z-index:100;position:fixed;inset:0}.sheet__backdrop{background:var(--overlay);animation:.2s ease-out fade-in;position:absolute;inset:0}.sheet__panel{max-height:85vh;padding:24px 24px calc(24px + env(safe-area-inset-bottom));background:var(--bg-card);animation:sheet-up .25s var(--ease-out);border-radius:16px 16px 0 0;position:absolute;inset:auto 0 0;overflow-y:auto}.sheet__panel ul{margin:0;padding:0;list-style:none}.sheet__item{min-height:56px;color:var(--text-primary);font:700 15px/1.45 var(--font-mono);letter-spacing:.3px;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:0 16px;text-decoration:none;display:flex}@media (hover:hover){.sheet__item:hover{background:color-mix(in srgb, var(--text-primary) 5%, transparent)}}.sheet__item .icon{color:var(--accent-ink)}@keyframes sheet-up{0%{transform:translateY(100%)}}.hero{isolation:isolate;min-height:100vh;min-height:100svh;padding:calc(var(--nav-height) + 48px) 0 112px;flex-direction:column;justify-content:center;display:flex;position:relative;overflow:hidden}.hero--cover{z-index:0;position:sticky;top:0}.hero--cover .hero__content{opacity:calc(1 - var(--cover,0) * .9);transform:translateY(calc(var(--cover,0) * -56px - var(--lift,0px))) scale(calc(1 - var(--cover,0) * .06));transform-origin:50% 20%;will-change:transform}.hero--cover:after{content:"";z-index:1;background:var(--bg);opacity:calc(var(--cover,0) * .7);pointer-events:none;position:absolute;inset:0}.hero__backdrop{z-index:-1;pointer-events:none;position:absolute;inset:0}.hero__particles{width:100%;height:100%;position:absolute;inset:0}.hero__grid{background-image:linear-gradient(to right, var(--grid-line) 1px, transparent 1px), linear-gradient(to bottom, var(--grid-line) 1px, transparent 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(85% 75% at 40% 45%,#000 35%,#0000 100%);mask-image:radial-gradient(85% 75% at 40% 45%,#000 35%,#0000 100%)}.hero__orb{border-radius:50%;position:absolute}.hero__orb--violet{aspect-ratio:1;background:radial-gradient(closest-side, var(--orb-violet), transparent);width:min(560px,80vw);top:4%;right:8%}.hero__orb--cyan{aspect-ratio:1;background:radial-gradient(closest-side, var(--orb-cyan), transparent);width:min(420px,70vw);bottom:2%;left:2%}.hero__content{position:relative;container-type:inline-size}.hero__eyebrow{color:var(--accent);font:700 12px/1.5 var(--font-mono);letter-spacing:3px;text-transform:uppercase}.hero__name-box{margin-top:22px}.hero__name{font-family:var(--font-display);letter-spacing:-1px;color:var(--text-primary);white-space:nowrap;font-size:clamp(30px,7.5cqi,76px);font-weight:700;line-height:.95}.hero--cover .hero__name{transform-origin:0;opacity:calc(1 - (var(--dock,0) - .9) * 10);will-change:transform}.hero__typewriter{min-height:32px;color:var(--text-primary);align-items:center;margin-top:18px;font-size:19px;font-weight:500;line-height:1.5;display:flex}.hero__cursor{visibility:hidden;color:var(--accent-ink)}.hero__bio{max-width:620px;color:var(--text-secondary);margin-top:22px;font-size:17px;line-height:1.7}.hero__actions{flex-wrap:wrap;gap:12px 14px;margin-top:40px;display:flex}.hero__socials{flex-wrap:wrap;gap:12px;margin:36px 0 0;padding:0;list-style:none;display:flex}.hero__scroll{color:var(--text-muted);font:700 10px/1 var(--font-mono);letter-spacing:3px;flex-direction:column;align-items:center;gap:6px;text-decoration:none;transition:color .2s;display:flex;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}.hero__scroll-icon{transform:rotate(90deg)}@media (prefers-reduced-motion:no-preference){.hero__scroll-icon{animation:2.4s ease-in-out infinite nudge}}@keyframes nudge{0%,to{transform:rotate(90deg)translate(0)}50%{transform:rotate(90deg)translate(5px)}}@media (hover:hover){.hero__scroll:hover{color:var(--accent-ink)}}@media (max-width:767px){.hero{padding-top:calc(var(--nav-height) + 32px);padding-bottom:96px}.hero__typewriter,.hero__bio{font-size:16px}}@media (max-height:560px){.hero__scroll{display:none}}.page-body{z-index:1;background:var(--bg);position:relative}.page-body--over{box-shadow:var(--sheet-shadow);border-radius:28px 28px 0 0;margin-top:30svh}.page-body:not(.page-body--over){padding-top:var(--nav-height)}.section{scroll-margin-top:calc(var(--nav-height) + 8px);padding-block:104px}.page-body--over>.section:first-child{padding-top:96px}.section+.section{padding-top:24px}@media (max-width:767px){.section{padding-block:72px}.page-body--over{border-radius:20px 20px 0 0}}.section-filters{margin-bottom:32px}.section-footer{justify-content:center;margin-top:40px;display:flex}.empty-message{text-align:center;color:var(--text-muted);padding:32px 0}.about{grid-template-columns:minmax(0,1fr);gap:48px;display:grid}@media (min-width:900px){.about{grid-template:"bio skills""interests skills"".skills"1fr/minmax(0,3fr) minmax(0,2fr);column-gap:96px}.about__bio{grid-area:bio}.about__interests{grid-area:interests}.about__skills{grid-area:skills}}.skill-list,.skill__tags,.interest-list{margin:0;padding:0;list-style:none}.skill-list{gap:22px;display:grid}.skill__label{color:var(--text-primary);font-size:15px;font-weight:600}.skill__tags{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.interest-list{flex-wrap:wrap;gap:10px;display:flex}.interest{border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);border-radius:999px;align-items:center;gap:10px;padding:9px 16px;font-size:14px;display:inline-flex}.interest__icon{font-size:15px;line-height:1}.contact__intro{max-width:600px}.contact__form{max-width:640px;margin-top:40px}.form{gap:18px;display:grid}.form__row{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}@media (min-width:768px){.form__row{grid-template-columns:repeat(2,minmax(0,1fr))}}.field__label{color:var(--accent-ink);font:700 10px/1.5 var(--font-mono);letter-spacing:2px;margin-bottom:8px;display:block}.field__input{border:1px solid var(--border);background:var(--bg-card);width:100%;color:var(--text-primary);border-radius:6px;padding:12px 16px;font-size:15px;line-height:1.5;transition:border-color .2s,box-shadow .2s;display:block}textarea.field__input{resize:vertical}.field__input::placeholder{color:var(--text-muted);font-size:14px}.field__input:focus{border-color:var(--accent-ink);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.form__error{color:var(--warm);font-size:14px}.form .btn{justify-self:start;margin-top:6px}.form-success{border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent-ink);font:700 11px/1.5 var(--font-mono);letter-spacing:2px;border-radius:6px;align-items:center;gap:10px;padding:16px;display:flex}.contact__socials{flex-wrap:wrap;gap:12px;margin:48px 0 0;padding:0;list-style:none;display:flex}.site-footer{border-top:1px solid var(--border);text-align:center;color:var(--text-muted);font:400 12px/1.6 var(--font-mono);letter-spacing:1px;margin-top:96px;padding-top:28px}.grid-wrap{container-type:inline-size}.card-grid{grid-template-columns:minmax(0,1fr);gap:24px;display:grid}@container (width>=620px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (width>=960px){.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.card{--card-accent:var(--violet);border:1px solid var(--border);background:var(--bg-card);min-width:0;transition:transform .3s var(--ease-out), border-color .3s, box-shadow .3s;border-radius:14px;flex-direction:column;display:flex;position:relative;overflow:hidden}@media (hover:hover){.card:hover{border-color:color-mix(in srgb, var(--card-accent) 50%, var(--border));box-shadow:var(--shadow);transform:translateY(-4px)}.card:hover .card__image{transform:scale(1.04)}.card:hover .card__more .icon{transform:translate(3px)}}.card:has(.card__link:focus-visible){outline:2px solid var(--accent-ink);outline-offset:3px}.card__media{aspect-ratio:16/9;border-bottom:1px solid var(--border);background:var(--bg-surface);overflow:hidden}.card__image{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-out)}.card__body{flex-direction:column;flex:1;padding:22px 24px 20px;display:flex}.card__meta{color:var(--text-muted);font:400 11px/1.5 var(--font-mono);letter-spacing:1px;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:4px 8px;margin-bottom:10px;display:flex}.card__category{color:var(--badge-color);font-weight:700}.card__featured{color:var(--warm);margin-left:auto;display:inline-flex}.card__title{color:var(--text-primary);letter-spacing:-.01em;font-size:19px;font-weight:600;line-height:1.35}.card__link{color:inherit;text-decoration:none}.card__link:after{content:"";z-index:1;border-radius:inherit;position:absolute;inset:0}.card__link:focus-visible{outline:none}.card__text{color:var(--text-secondary);margin-top:10px;font-size:15px;line-height:1.65}.card__organizer{color:var(--text-secondary);margin-top:6px;font-size:14px;font-weight:500}.card__footer{justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:20px;display:flex}.card__tags{flex-wrap:wrap;gap:6px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.card__tags li{background:var(--bg-surface);color:var(--text-secondary);font:400 11px/1.5 var(--font-mono);border-radius:5px;padding:3px 8px}.card__links{z-index:2;flex:none;gap:2px;margin-right:-6px;display:flex;position:relative}.card__icon-link{width:34px;height:34px;color:var(--text-secondary);border-radius:8px;place-items:center;transition:background-color .2s,color .2s;display:grid}@media (hover:hover){.card__icon-link:hover{background:var(--accent-soft);color:var(--accent-ink)}}.card__result,.card__role{min-width:0;color:var(--warm);font:700 11px/1.5 var(--font-mono);letter-spacing:1px;text-transform:uppercase;align-items:center;gap:6px;display:inline-flex}.card__role{color:var(--violet)}.card__result .icon{flex:none}.card__read-time{color:var(--text-muted);font:400 11px/1.5 var(--font-mono);letter-spacing:1px;text-transform:uppercase}.card__more{color:var(--accent-ink);font:700 11px/1.5 var(--font-mono);letter-spacing:2px;align-items:center;gap:6px;display:inline-flex}.card__more .icon{transition:transform .2s}.template-body--narrow{max-width:760px}.gallery{grid-template-columns:repeat(auto-fill, minmax(max(220px, calc((100% - (var(--columns) - 1) * 12px) / var(--columns))), 1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.gallery__tile{aspect-ratio:4/3;background:var(--bg-surface);border-radius:10px;position:relative;overflow:hidden}.gallery__tile img{object-fit:cover;width:100%;height:100%}.gallery__caption{color:#e8edf5;background:linear-gradient(#0000,#080c14d9);padding:8px 12px;font-size:13px;line-height:1.5;position:absolute;inset:auto 0 0}.timeline{margin:0;padding:0;list-style:none}.timeline__entry{padding:0 0 32px 40px;position:relative}.timeline__entry:last-child{padding-bottom:0}.timeline__entry:before{content:"";background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 4px var(--accent-soft);border-radius:50%;position:absolute;top:7px;left:7px}.timeline__entry:not(:last-child):after{content:"";background:var(--border-strong);width:1px;position:absolute;top:22px;bottom:0;left:11.5px}.timeline__date{color:var(--accent-ink);font:700 11px/1.5 var(--font-mono);letter-spacing:2px}.timeline__title{color:var(--text-primary);margin-top:6px;font-size:17px;font-weight:600;line-height:1.4}.timeline__text{margin-top:6px;font-size:15px}.simple-grid{grid-template-columns:repeat(auto-fill, minmax(max(260px, calc((100% - (var(--columns) - 1) * 16px) / var(--columns))), 1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.simple-card{min-height:190px;padding:24px}.simple-card__icon{margin-bottom:14px;font-size:26px;line-height:1.2}.simple-card .card__text{margin-top:8px}.simple-card__arrow{color:var(--text-muted);align-self:flex-end;margin-top:auto}.page{min-height:100vh;padding-block:calc(var(--nav-height) + 48px) 128px}.back-link{color:var(--accent-ink);font:700 11px/1.5 var(--font-mono);letter-spacing:2px;text-transform:uppercase;align-items:center;gap:8px;text-decoration:none;transition:color .2s;display:inline-flex}@media (hover:hover){.back-link:hover{color:var(--text-primary)}}.page-heading{margin-top:40px}.page-heading .section-label{margin-bottom:0}.page-heading__intro{max-width:640px;margin-top:20px}.page-filters{margin-top:32px}.grid-wrap--page{margin-top:40px}.not-found__text{margin:32px 0}.detail{margin-top:40px}.detail-header{max-width:920px}.detail-meta{color:var(--text-muted);font:400 12px/1.6 var(--font-mono);letter-spacing:1.5px;text-transform:uppercase}.detail-meta__category{color:var(--badge-color);font-weight:700}.detail-title{color:var(--text-primary);font-family:var(--font-display);letter-spacing:-.02em;overflow-wrap:anywhere;margin-top:16px;font-size:clamp(34px,5vw,56px);font-weight:600;line-height:1.08}.detail-cover{margin-top:48px}.detail-cover img{aspect-ratio:16/9;object-fit:cover;background:var(--bg-surface);border-radius:14px;width:100%;height:auto;display:block}.detail-layout{grid-template-columns:minmax(0,1fr);gap:48px;margin-top:56px;display:grid}@media (min-width:960px){.detail-layout{grid-template-columns:minmax(0,1fr) 320px;gap:72px}}.detail-text p{max-width:760px;color:var(--text-secondary);white-space:pre-line;font-size:17px;line-height:1.8}.facts{border:1px solid var(--border);background:var(--bg-card);border-radius:14px;align-self:start;padding:6px 24px}@media (min-width:960px){.facts{top:calc(var(--nav-height) + 32px);position:sticky}}@media (max-width:959px){.facts{order:-1}}.facts__links{border-top:1px solid var(--border);gap:10px;padding:18px 0;display:grid}.facts dl+.facts__links{margin-top:2px}.facts__links:first-child{border-top:0}.facts__links .btn{width:100%}.facts__result{color:var(--warm);align-items:center;gap:8px;font-weight:600;display:inline-flex}.facts dl{margin:0}.facts__row{border-bottom:1px solid var(--border);padding:16px 0}.facts__row:last-child{border-bottom:0}.facts dt{color:var(--text-muted);font:700 10px/1.5 var(--font-mono);letter-spacing:2px;text-transform:uppercase}.facts dd{color:var(--text-primary);margin:6px 0 0;font-size:15px}.tag-list{flex-wrap:wrap;gap:8px;margin:4px 0 0;padding:0;list-style:none;display:flex}.article .detail-header{max-width:820px}.article__summary{max-width:760px;margin-top:22px}.article__layout{grid-template-columns:minmax(0,760px);gap:40px;margin-top:56px;display:grid}@media (min-width:1100px){.article__layout--toc{grid-template-columns:minmax(0,760px) 240px;grid-template-areas:"body toc";column-gap:80px}.article__layout--toc .article__body{grid-area:body}.article__layout--toc .toc{top:calc(var(--nav-height) + 32px);grid-area:toc;align-self:start;position:sticky}}.toc{border-left:1px solid var(--border-strong);padding:4px 0 4px 20px;font-size:14px;line-height:1.5}.toc__title{color:var(--text-muted);font:700 10px/1.5 var(--font-mono);letter-spacing:2px;text-transform:uppercase;margin-bottom:12px}.toc ol{gap:8px;margin:0;padding:0;list-style:none;display:grid}.toc a{color:var(--text-secondary);text-decoration:none;transition:color .2s}@media (hover:hover){.toc a:hover{color:var(--accent-ink)}}.toc__sub{padding-left:14px}.reading-progress{display:none}@supports (animation-timeline:scroll()){.reading-progress{top:var(--nav-height);z-index:49;background:var(--gradient);transform-origin:0;height:2px;animation:linear both reading;animation-timeline:scroll(root);display:block;position:fixed;left:0;right:0}@keyframes reading{0%{transform:scaleX(0)}to{transform:scaleX(1)}}}.course-section+.course-section{margin-top:48px}.course-overview{max-width:760px}.course-overview>:first-child{margin-top:0}.curriculum{border:1px solid var(--border);background:var(--bg-card);border-radius:12px;margin:0;padding:0;list-style:none;overflow:hidden}.curriculum__item+.curriculum__item{border-top:1px solid var(--border)}.curriculum__link{color:var(--text-secondary);align-items:center;gap:14px;padding:14px 18px;text-decoration:none;transition:background-color .2s,color .2s;display:flex}@media (hover:hover){.curriculum__link:hover{background:var(--accent-soft);color:var(--text-primary)}}.curriculum__item.is-current .curriculum__link{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent);color:var(--text-primary);font-weight:600}.curriculum__mark{border:1px solid var(--border-strong);width:26px;height:26px;color:var(--text-muted);font:700 11px/1 var(--font-mono);border-radius:50%;flex:none;place-items:center;display:inline-grid}.curriculum__item.is-done .curriculum__mark{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.curriculum__title{flex:1;min-width:0}.curriculum__time{color:var(--text-muted);font:400 11px/1.5 var(--font-mono);flex:none}.course-progress__bar{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.course-progress__bar>span{border-radius:inherit;background:var(--accent);height:100%;transition:width .4s var(--ease-out);display:block}.course-progress__text{color:var(--text-muted);font:400 12px/1.5 var(--font-mono);margin:8px 0 0}.lesson-layout{grid-template-columns:minmax(0,1fr);gap:28px;margin-top:32px;display:grid}@media (min-width:1024px){.lesson-layout{grid-template-columns:300px minmax(0,1fr);gap:64px}}.lesson-sidebar{align-self:start}@media (min-width:1024px){.lesson-sidebar{top:calc(var(--nav-height) + 24px);max-height:calc(100vh - var(--nav-height) - 48px);padding:2px;position:sticky;overflow-y:auto}}.lesson-sidebar__course{color:var(--text-primary);font:700 20px/1.25 var(--font-display);margin:0 0 14px}.lesson-sidebar__toggle{border:1px solid var(--border);background:var(--bg-card);width:100%;color:var(--text-secondary);font:700 11px/1.5 var(--font-mono);letter-spacing:2px;text-transform:uppercase;cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;margin-top:16px;padding:12px 14px;display:flex}.lesson-sidebar__chevron{transition:transform .2s;transform:rotate(90deg)}.lesson-sidebar__toggle[aria-expanded=true] .lesson-sidebar__chevron{transform:rotate(-90deg)}.lesson-sidebar__list{margin-top:12px;display:none}.lesson-sidebar__list.is-open{display:block}@media (min-width:1024px){.lesson-sidebar__toggle{display:none}.lesson-sidebar__list{margin-top:20px;display:block}}.lesson-sidebar .curriculum__link{padding:12px 14px;font-size:14px}.lesson{min-width:0;max-width:780px}.lesson__eyebrow{color:var(--text-muted);font:700 11px/1.5 var(--font-mono);letter-spacing:2px;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:6px;margin:0;display:flex}.lesson__title{color:var(--text-primary);font-family:var(--font-display);letter-spacing:-.015em;overflow-wrap:anywhere;margin:12px 0 32px;font-size:clamp(30px,4vw,44px);font-weight:600;line-height:1.12}.lesson__footer{border-top:1px solid var(--border);gap:20px;margin-top:56px;padding-top:28px;display:grid}.lesson__complete{color:var(--text-secondary);cursor:pointer;justify-self:start;align-items:center;gap:10px;display:inline-flex}.lesson__complete input{width:18px;height:18px;accent-color:var(--accent);margin:0}.lesson__nav{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.event-role{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:22px;display:flex}.event-role__badge{border:1px solid color-mix(in srgb, var(--violet) 40%, transparent);background:color-mix(in srgb, var(--violet) 10%, transparent);color:var(--violet);font:700 11px/1.5 var(--font-mono);letter-spacing:2px;text-transform:uppercase;border-radius:4px;align-items:center;gap:8px;padding:6px 12px;display:inline-flex}.event-role__talk{color:var(--text-primary);font-size:19px;font-style:italic;line-height:1.5}.slides-frame{border:1px solid var(--border);background:var(--bg-card);border-radius:12px;overflow:hidden}.slides-frame iframe{border:0;width:100%;height:100%;display:block}.slides-note{color:var(--text-muted);margin-top:10px;font-size:14px}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.photo-grid__open{border:1px solid var(--border);background:var(--bg-surface);cursor:zoom-in;border-radius:10px;width:100%;padding:0;display:block;overflow:hidden}.photo-grid__open img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto;transition:transform .4s var(--ease-out);display:block}@media (hover:hover){.photo-grid__open:hover img{transform:scale(1.03)}}.photo-grid__caption{color:var(--text-muted);margin-top:8px;font-size:13px;line-height:1.5}.lightbox{color:#e8edf5;background:0 0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:56px 64px 24px}.lightbox::backdrop{background:#04070ceb}.lightbox[open]{justify-content:center;align-items:center;display:flex}.lightbox__figure{flex-direction:column;align-items:center;gap:14px;max-width:100%;max-height:100%;margin:0;display:flex}.lightbox__figure img{object-fit:contain;border-radius:8px;width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 140px)}.lightbox__caption{color:#c9d3e0;text-align:center;flex-wrap:wrap;justify-content:center;gap:6px 16px;max-width:760px;font-size:14px;line-height:1.5;display:flex}.lightbox__count{color:#8b9bb4;font:400 12px/1.5 var(--font-mono)}.lightbox__button{color:#e8edf5;cursor:pointer;background:#ffffff14;border:0;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;transition:background-color .2s;display:inline-grid;position:fixed}@media (hover:hover){.lightbox__button:hover{background:#ffffff2e}}.lightbox__close{top:12px;right:12px}.lightbox__prev,.lightbox__next{top:50%;transform:translateY(-50%)}.lightbox__prev{left:10px}.lightbox__next{right:10px}@media (max-width:600px){.lightbox{padding:56px 8px 16px}.lightbox__prev,.lightbox__next{top:auto;bottom:14px;transform:none}}.markdown{color:var(--text-secondary);overflow-wrap:break-word;font-size:17px;line-height:1.8}.markdown>*{margin:0}.markdown>*+*{margin-top:20px}.markdown h2,.markdown h3{color:var(--text-primary);font-family:var(--font-display);letter-spacing:-.01em;scroll-margin-top:calc(var(--nav-height) + 24px);font-weight:600;line-height:1.2}.markdown h2{font-size:30px}.markdown>h2{margin-top:56px}.markdown h3{font-size:23px}.markdown>h3{margin-top:40px}.markdown h4,.markdown h5,.markdown h6{color:var(--text-primary);font:700 13px/1.5 var(--font-mono);letter-spacing:1.5px;text-transform:uppercase;scroll-margin-top:calc(var(--nav-height) + 24px)}.markdown>h2+*,.markdown>h3+*,.markdown>h4+*{margin-top:14px}.markdown strong{color:var(--text-primary);font-weight:650}.markdown a{color:var(--accent-ink);text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}:root[data-theme=light] .markdown a{text-decoration-thickness:2px}.markdown :not(pre)>code{border:1px solid var(--border);background:var(--code-bg);color:var(--text-primary);font-family:var(--font-mono);border-radius:5px;padding:1px 6px;font-size:.86em}.markdown pre{border:1px solid var(--border);background:var(--code-bg);color:var(--text-primary);font:400 14px/1.65 var(--font-mono);border-radius:10px;padding:18px 20px;overflow-x:auto}.markdown blockquote{border-left:3px solid var(--border-strong);color:var(--text-secondary);padding-left:20px;font-style:italic}.markdown blockquote>*{margin:0}.markdown blockquote>*+*{margin-top:12px}.markdown ul,.markdown ol{padding-left:1.4em}.markdown li+li{margin-top:6px}.markdown li::marker{color:var(--accent-ink)}.markdown hr{border:0;border-top:1px solid var(--border);margin-block:48px}.markdown img{border-radius:10px;height:auto}.table-scroll{border:1px solid var(--border);border-radius:10px;overflow-x:auto}.markdown table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:15px}.markdown th,.markdown td{border-bottom:1px solid var(--border);text-align:left;padding:10px 14px}.markdown tr:last-child td{border-bottom:0}.markdown th{background:var(--bg-surface);color:var(--text-primary);font-weight:600}.markdown .figure,.markdown .video,.markdown .embed,.markdown .chart,.markdown .math--display,.markdown .callout{margin-block:36px}.markdown .figure img{border:1px solid var(--border);border-radius:12px;width:100%}.markdown figcaption{color:var(--text-muted);text-align:center;margin-top:12px;font-size:14px;line-height:1.55}.markdown .math{color:var(--text-primary)}.markdown .math--display{text-align:center;padding:4px 0;display:block;overflow:auto hidden}.markdown .katex{font-size:1.08em}.markdown .katex-display{margin:0}.math-source{font-family:var(--font-mono)}.callout{--callout:var(--accent);--callout-ink:var(--accent-ink);border:1px solid var(--border);border-left:3px solid var(--callout);background:color-mix(in srgb, var(--callout) 5%, var(--bg-card));border-radius:10px;padding:18px 22px;font-style:normal}.callout>*{margin:0}.callout>*+*{margin-top:12px}.callout__title{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.callout__label{color:var(--callout-ink);font:700 11px/1.5 var(--font-mono);letter-spacing:2px;text-transform:uppercase}.callout__name{color:var(--text-primary);font-weight:600}.callout--theorem,.callout--lemma,.callout--proposition,.callout--corollary,.callout--important{--callout:var(--violet);--callout-ink:var(--callout)}.callout--warning,.callout--caution{--callout:var(--warm);--callout-ink:var(--callout)}.callout--example,.callout--exercise{--callout:var(--series-1);--callout-ink:var(--callout)}.callout--proof,.callout--remark{--callout:var(--text-muted);--callout-ink:var(--callout)}.callout--proof>:last-child:after{content:" ∎";color:var(--text-primary)}.video__link{aspect-ratio:16/9;background:#000;border-radius:12px;display:block;position:relative;overflow:hidden}.video__link img{object-fit:cover;width:100%;height:100%;transition:opacity .2s}.video__play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.video__play-bg{fill:#212121;fill-opacity:.85;transition:fill .2s,fill-opacity .2s}@media (hover:hover){.video__link:hover .video__play-bg{fill:red;fill-opacity:1}.video__link:hover img{opacity:.9}}.video__frame{aspect-ratio:16/9;background:#000;border:0;border-radius:12px;width:100%;display:block}.embed__frame{border:1px solid var(--border);background:var(--bg-card);border-radius:12px;width:100%;display:block}.embed-error{border:1px solid color-mix(in srgb, var(--warm) 45%, transparent);background:color-mix(in srgb, var(--warm) 8%, transparent);color:var(--text-primary);border-radius:8px;padding:12px 16px;font-size:14px}.quiz{gap:18px;margin:32px 0;display:grid}.quiz__question{border:1px solid var(--border);background:var(--bg-card);border-radius:12px;padding:22px 24px}.markdown .quiz__label{color:var(--accent-ink);font:700 10px/1.5 var(--font-mono);letter-spacing:2px;text-transform:uppercase;margin:0 0 8px}.quiz__prompt{color:var(--text-primary);font-size:17px;font-weight:600;line-height:1.6}.markdown .quiz__options{gap:10px;margin:16px 0 0;padding:0;list-style:none;display:grid}.markdown .quiz__options li+li{margin-top:0}.quiz__option{border:1px solid var(--border-strong);width:100%;color:var(--text-secondary);font:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:12px;padding:12px 14px;line-height:1.5;transition:background-color .2s,border-color .2s,color .2s;display:flex}.quiz__option[aria-disabled=true]{cursor:default}@media (hover:hover){.quiz__question:not(.is-answered) .quiz__option:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--text-primary)}}.quiz__marker{border:2px solid var(--outline);border-radius:50%;flex:none;width:18px;height:18px;transition:background-color .2s,border-color .2s}.quiz__text{min-width:0}.quiz__option.is-correct{border-color:var(--accent);background:var(--accent-soft);color:var(--text-primary)}.quiz__option.is-correct .quiz__marker{border-color:var(--accent);background:var(--accent);box-shadow:inset 0 0 0 3px var(--bg-card)}.quiz__option.is-chosen:not(.is-correct){border-color:var(--warm);background:color-mix(in srgb, var(--warm) 10%, transparent);color:var(--text-primary)}.quiz__option.is-chosen:not(.is-correct) .quiz__marker{border-color:var(--warm);background:var(--warm);box-shadow:inset 0 0 0 3px var(--bg-card)}.quiz__result{border-top:1px solid var(--border);margin-top:16px;padding-top:14px}.quiz__result[hidden],.quiz__retry[hidden]{display:none}.markdown .quiz__verdict{color:var(--text-primary);margin:0;font-weight:700}.is-right .quiz__verdict{color:var(--accent-ink)}.is-wrong .quiz__verdict{color:var(--warm)}.quiz__explanation{color:var(--text-secondary);margin-top:8px}.quiz__retry{color:var(--accent-ink);font:700 11px/1.5 var(--font-mono);letter-spacing:2px;text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:4px;text-transform:uppercase;cursor:pointer;background:0 0;border:0;margin-top:12px;padding:0}.chart{--c:var(--series-1);container-type:inline-size}.chart .s1{--c:var(--series-1)}.chart .s2{--c:var(--series-2)}.chart .s3{--c:var(--series-3)}.chart .s4{--c:var(--series-4)}.chart .s5{--c:var(--series-5)}.chart .s6{--c:var(--series-6)}.chart .s7{--c:var(--series-7)}.chart .s8{--c:var(--series-8)}.chart__title{color:var(--text-primary);margin-bottom:8px;font-size:16px;font-weight:600;line-height:1.4}.chart__legend{color:var(--text-secondary);flex-wrap:wrap;gap:6px 18px;margin:0 0 10px;padding:0;font-size:13px;line-height:1.5;list-style:none;display:flex}.chart__legend li{align-items:center;gap:8px;display:inline-flex}.chart__key{background:var(--c);flex:none;display:inline-block}.chart__key--line{border-radius:1px;width:16px;height:2px}.chart__key--rect{border-radius:2px;width:10px;height:10px}.chart__key--dot{border-radius:50%;width:8px;height:8px}.chart__frame{border:1px solid var(--border);background:var(--bg-card);border-radius:12px;padding:10px 6px 4px;position:relative}.chart__svg{border-radius:8px;width:100%;height:auto;display:block;overflow:visible}.chart__svg:focus{outline:none}.chart__svg:focus-visible{outline:2px solid var(--accent-ink);outline-offset:4px}.chart__svg--narrow{display:none}@container (width<=540px){.chart__svg--wide{display:none}.chart__svg--narrow{display:block}}.chart__grid{stroke:var(--chart-grid);stroke-width:1px}.chart__baseline{stroke:var(--chart-axis);stroke-width:1px}.chart__tick{fill:var(--chart-text);font:400 12px var(--font-body);font-variant-numeric:tabular-nums}.chart__axis-title{fill:var(--chart-text);font:600 12px var(--font-body)}.chart__line{fill:none;stroke:var(--c);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.chart__area{fill:var(--c);fill-opacity:.12}.chart__bars path{fill:var(--c)}.chart__dots circle{fill:var(--c);stroke:var(--bg-card);stroke-width:2px}.chart__end-label{fill:var(--text-secondary);font:500 12px var(--font-body)}.chart__crosshair{stroke:var(--chart-axis);stroke-width:1px;pointer-events:none}.chart__crosshair--band{stroke:var(--text-primary);stroke-opacity:.06}.chart__hit{fill:#0000}.chart__tooltip{z-index:3;border:1px solid var(--border-strong);background:var(--bg-elevated);min-width:120px;box-shadow:var(--shadow);color:var(--text-secondary);pointer-events:none;border-radius:8px;padding:8px 12px;font-size:13px;line-height:1.5;position:absolute}.chart__tooltip-heading{color:var(--text-muted);font:400 11px/1.5 var(--font-mono);margin-bottom:4px}.chart__tooltip-row{grid-template-columns:16px auto 1fr;align-items:center;gap:8px;display:grid}.chart__tooltip-row strong{color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:650}.chart__table{margin-top:10px}.chart__table summary{color:var(--text-muted);font:700 10px/1.5 var(--font-mono);letter-spacing:2px;text-transform:uppercase;cursor:pointer;display:inline-block}.chart__table-scroll{border:1px solid var(--border);border-radius:8px;margin-top:10px;overflow-x:auto}.chart__table table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:13px}.chart__table th,.chart__table td{border-bottom:1px solid var(--border);text-align:right;padding:6px 12px}.chart__table th:first-child{text-align:left}.chart__table thead th{background:var(--bg-surface);color:var(--text-primary);font-weight:600}.chart__table tbody tr:last-child>*{border-bottom:0}
