.ThemeToggle_wrap__6sCES{position:relative;display:flex;align-items:center;gap:var(--space-tight);min-height:var(--touch-target-min)}.ThemeToggle_label__s12yZ{display:inline-flex;align-items:center;gap:var(--space-tight);font-family:var(--font-data);font-size:var(--text-fine);letter-spacing:.02em}.ThemeToggle_glyph__tyxjo,.ThemeToggle_label__s12yZ{color:var(--ink-quiet);flex-shrink:0}.ThemeToggle_select__QHS7D{-moz-appearance:none;appearance:none;-webkit-appearance:none;font-family:var(--font-data);font-size:var(--text-fine);color:var(--ink);background:var(--surface-sunk);border:var(--border-hair) solid var(--rule);border-radius:var(--radius-control);padding:.34rem 1.5rem .34rem .5rem;min-width:0;cursor:pointer;transition:border-color var(--dur-quick) var(--ease-out),color var(--dur-quick) var(--ease-out);background-image:linear-gradient(45deg,transparent 50%,currentColor 0),linear-gradient(135deg,currentColor 50%,transparent 0);background-position:calc(100% - .62rem) 50%,calc(100% - .4rem) 50%;background-size:.22rem .22rem,.22rem .22rem;background-repeat:no-repeat}.ThemeToggle_select__QHS7D:focus-visible,.ThemeToggle_select__QHS7D:hover{color:var(--ink-bright);border-color:var(--rule-strong)}.ThemeToggle_select__QHS7D:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.ThemeToggle_wrap__6sCES[data-compact=true] .ThemeToggle_label__s12yZ{position:absolute}.ThemeToggle_wrap__6sCES[data-compact=true] .ThemeToggle_select__QHS7D{width:100%;padding-inline:.4rem 1.2rem}.ThemeToggle_srOnly__dBAFa{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.MobileNav_backdrop__73tbD,.MobileNav_bottomBar__iLOIm,.MobileNav_drawer__u_wKG,.MobileNav_topBar__cHIap{display:none}@media (max-width:56rem){.MobileNav_topBar__cHIap{display:flex;align-items:center;justify-content:space-between;top:0;height:calc(3.25rem + env(safe-area-inset-top, 0px));padding-top:env(safe-area-inset-top,0);padding-inline:1rem;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--rule)}.MobileNav_bottomBar__iLOIm,.MobileNav_topBar__cHIap{position:fixed;left:0;right:0;background:var(--rail-bg);z-index:var(--z-rail);-moz-user-select:none;user-select:none;-webkit-user-select:none}.MobileNav_bottomBar__iLOIm{display:grid;grid-template-columns:repeat(5,1fr);bottom:0;height:calc(3.75rem + env(safe-area-inset-bottom, 0px));padding-bottom:env(safe-area-inset-bottom,0);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-top:1px solid var(--rule-strong);box-shadow:0 -4px 20px rgba(0,0,0,.5)}.MobileNav_backdrop__73tbD{display:block;position:fixed;inset:0;background:var(--scrim);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:calc(var(--z-rail) + 10);opacity:0;pointer-events:none;transition:opacity var(--dur-quick) var(--ease-out)}.MobileNav_backdrop__73tbD[data-open=true]{opacity:1;pointer-events:auto}.MobileNav_drawer__u_wKG{display:flex;position:fixed;left:0;right:0;bottom:0;max-height:85dvh;background:var(--surface-raised);border-top:1px solid var(--rule-strong);border-radius:20px 20px 0 0;z-index:calc(var(--z-rail) + 11);flex-direction:column;transform:translateY(105%);transition:transform .3s cubic-bezier(.16,1,.3,1);box-shadow:0 -10px 40px rgba(0,0,0,.7);padding-bottom:max(1rem,env(safe-area-inset-bottom,0px));will-change:transform}.MobileNav_drawer__u_wKG[data-open=true]{transform:translateY(0)}.MobileNav_drawer__u_wKG[data-dragging=true]{transition:none!important}}.MobileNav_topBrand__Z4ULZ{display:flex;align-items:center;gap:.6rem;color:var(--ink-bright);text-decoration:none;font-family:var(--font-data);font-size:var(--text-small);font-weight:600;letter-spacing:.5px}.MobileNav_brandDot__4mTTy{width:7px;height:7px;border-radius:50%;background:var(--signal);box-shadow:0 0 8px var(--glow);animation:MobileNav_pulseDot___wl3l 2.5s infinite}@keyframes MobileNav_pulseDot___wl3l{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}.MobileNav_topActions__l2Zkw{display:flex;align-items:center;gap:.5rem}.MobileNav_topBtn__cbg6R{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--fill);border:1px solid var(--rule-strong);color:var(--ink-quiet);cursor:pointer;transition:all var(--dur-quick) var(--ease-out)}.MobileNav_topBtn__cbg6R:active{transform:scale(.92);color:var(--signal);border-color:var(--signal)}.MobileNav_tabItem__85wvZ{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:100%;background:none;border:none;color:var(--ink-faint);text-decoration:none;font-size:10px;font-family:var(--font-ui);cursor:pointer;position:relative;overflow:hidden;transition:color var(--dur-quick) var(--ease-out),transform .1s var(--ease-out);-webkit-tap-highlight-color:transparent}.MobileNav_tabItem__85wvZ:active{transform:scale(.92)}.MobileNav_tabRipple___IDBm{position:absolute;width:50px;height:50px;border-radius:50%;background:radial-gradient(circle,var(--line-strong) 0,transparent 70%);pointer-events:none;transform:translate(-50%,-50%) scale(0);animation:MobileNav_tabRippleKeyframes__jJ6Rp .4s ease-out forwards}@keyframes MobileNav_tabRippleKeyframes__jJ6Rp{0%{transform:translate(-50%,-50%) scale(.2);opacity:1}to{transform:translate(-50%,-50%) scale(2.5);opacity:0}}.MobileNav_tabItem__85wvZ[data-active=true]{color:var(--ink-bright);font-weight:600}.MobileNav_tabItem__85wvZ[data-active=true]:before{content:"";position:absolute;top:0;left:25%;right:25%;height:2px;background:var(--signal);border-radius:0 0 2px 2px;box-shadow:0 1px 6px var(--glow)}.MobileNav_tabIcon__NIMXr{display:grid;place-items:center;width:20px;height:20px}.MobileNav_tabLabel__siXPb{font-size:9.5px;letter-spacing:.2px}.MobileNav_handleContainer__Qxm2A{padding:12px 0 6px;cursor:-webkit-grab;cursor:grab;touch-action:none;display:flex;justify-content:center;align-items:center;-moz-user-select:none;user-select:none;-webkit-user-select:none;flex-shrink:0}.MobileNav_handleContainer__Qxm2A:active{cursor:-webkit-grabbing;cursor:grabbing}.MobileNav_handleBar__v8UI5{width:44px;height:5px;background:var(--rule-strong);border-radius:3px;transition:background var(--dur-quick) var(--ease-out),transform var(--dur-quick) var(--ease-out)}.MobileNav_handleContainer__Qxm2A:active .MobileNav_handleBar__v8UI5{background:var(--signal);transform:scaleX(1.15)}.MobileNav_drawerHeader__X8sxG{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;border-bottom:1px solid var(--rule);flex-shrink:0}.MobileNav_drawerTitle__l_67j{font-family:var(--font-data);font-size:var(--text-small);color:var(--ink-bright);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.MobileNav_drawerClose__wcoB7{background:var(--fill);border:1px solid var(--rule-strong);border-radius:50%;width:1.85rem;height:1.85rem;color:var(--ink-quiet);cursor:pointer;display:grid;place-items:center}.MobileNav_drawerClose__wcoB7:active{transform:scale(.92)}.MobileNav_drawerBody__GftWu{overflow-y:auto;padding:1rem 1.25rem;display:grid;grid-gap:1.25rem;gap:1.25rem;-webkit-overflow-scrolling:touch}.MobileNav_searchLauncher__QLFDT{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:var(--fill-faint);border:1px solid var(--rule-strong);border-radius:var(--radius-control);color:var(--ink-quiet);font-family:var(--font-ui);font-size:var(--text-small);cursor:pointer}.MobileNav_searchLauncher__QLFDT:active{border-color:var(--signal);color:var(--ink-bright)}.MobileNav_appearanceRow__vp8nu{padding-top:.75rem;border-top:1px solid var(--rule)}.MobileNav_categoryGroupTitle__eMqKQ{font-family:var(--font-data);font-size:var(--text-fine);color:var(--ink-faint);text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem}.MobileNav_gridLinks__z8QpO{display:grid;grid-template-columns:1fr 1fr;grid-gap:.5rem;gap:.5rem}.MobileNav_gridCard__MWoel{display:flex;align-items:center;gap:.6rem;padding:.7rem .8rem;background:var(--fill-faint);border:1px solid var(--rule);border-radius:var(--radius-control);color:var(--ink);text-decoration:none;font-size:var(--text-small);transition:all var(--dur-quick) var(--ease-out);-webkit-tap-highlight-color:transparent}.MobileNav_gridCard__MWoel:active{background:var(--fill-strong);border-color:var(--signal);color:var(--ink-bright);transform:scale(.97)}.MobileNav_gridCard__MWoel[data-current=true]{border-color:var(--line-strong);background:var(--fill);color:var(--ink-bright)}.Rail_rail__Des4S{position:-webkit-sticky;position:sticky;top:0;align-self:start;height:100dvh;width:var(--rail-width);display:flex;flex-direction:column;gap:var(--space-hair);padding:var(--space) 0 var(--space-loose);background:var(--rail-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-right:1px solid var(--rule);z-index:var(--z-rail);overflow-y:auto;overflow-x:hidden;transition:width var(--dur-considered) var(--ease-out)}.Rail_rail__Des4S[data-open=true]{width:var(--rail-open);box-shadow:1px 0 24px rgba(0,0,0,.6)}.Rail_expand__AMMoD,.Rail_home__fQjRs,.Rail_item__EaJQq{display:flex;align-items:center;gap:var(--space-snug);width:100%;padding:.55rem 0 .55rem 1.45rem;background:none;border:0;border-left:2px solid transparent;color:var(--ink-quiet);cursor:pointer;white-space:nowrap;font-family:var(--font-ui);transition:color var(--dur-quick) var(--ease-out),border-color var(--dur-quick) var(--ease-out),background var(--dur-quick) var(--ease-out)}.Rail_expand__AMMoD:hover,.Rail_home__fQjRs:hover,.Rail_item__EaJQq:hover{color:var(--ink-bright);background:var(--fill-faint)}.Rail_item__EaJQq[data-current=true]{color:var(--ink-bright);border-left-color:var(--signal);background:var(--fill)}.Rail_itemMark__errNt{display:grid;place-items:center;width:20px;flex:none;transition:transform var(--dur-quick) var(--ease-out)}.Rail_item__EaJQq:hover .Rail_itemMark__errNt{transform:scale(1.08)}.Rail_itemLabel__nT7cn{font-size:var(--text-meta);font-weight:450;opacity:0;transform:translateX(-4px);transition:opacity var(--dur-quick) var(--ease-out),transform var(--dur-quick) var(--ease-out)}.Rail_rail__Des4S[data-open=true] .Rail_itemLabel__nT7cn{opacity:1;transform:none}.Rail_home__fQjRs{margin-bottom:var(--space-snug);color:var(--ink-bright)}.Rail_homeMark__0cUVt{width:20px;height:20px;flex:none;border:1px solid var(--signal);background:linear-gradient(135deg,var(--signal) 0 50%,transparent 50% 100%)}.Rail_group__mk0QM{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}.Rail_group__mk0QM[data-tier=secondary]{margin-top:var(--space-snug);padding-top:var(--space-snug);border-top:1px solid var(--rule);opacity:.85}.Rail_expand__AMMoD{padding-top:var(--space-snug)}.Rail_appearance__77kPN,.Rail_expand__AMMoD{margin-top:auto;border-top:1px solid var(--rule)}.Rail_appearance__77kPN{padding:0 1.45rem var(--space-snug);padding-top:var(--space-snug)}.Rail_appearance__77kPN+.Rail_expand__AMMoD{margin-top:0;border-top:0;padding-top:0}@media (max-width:56rem){.Rail_rail__Des4S{display:none!important}}.GitHubBadge_container__vEl4g{position:fixed;top:1.15rem;right:1.25rem;z-index:45;pointer-events:none;opacity:0;transform:translateY(-8px) scale(.96);transition:opacity .4s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1)}.GitHubBadge_visible__cY3t9{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.GitHubBadge_badge__oo1IC{position:relative;display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .85rem;border-radius:9999px;background:var(--surface-raised);color:var(--ink);font-family:var(--font-data);font-size:.8125rem;font-weight:500;line-height:1;letter-spacing:-.01em;text-decoration:none;border:1px solid var(--rule-strong);box-shadow:0 4px 18px rgba(0,0,0,.18),0 1px 3px rgba(0,0,0,.1);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:all .25s cubic-bezier(.2,.8,.2,1);overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none}.GitHubBadge_pulseGlow__Qhm0l{position:absolute;inset:-2px;border-radius:9999px;background:radial-gradient(circle at 50% 50%,var(--signal) 0,transparent 70%);opacity:.08;pointer-events:none;animation:GitHubBadge_breathe__iIEkN 3.6s ease-in-out infinite}@keyframes GitHubBadge_breathe__iIEkN{0%,to{opacity:.06;transform:scale(.98)}50%{opacity:.18;transform:scale(1.03)}}.GitHubBadge_iconWrapper__VlGvC{display:flex;align-items:center;justify-content:center;color:var(--ink-bright);transition:transform .25s ease}.GitHubBadge_icon__K6GhX{width:17px;height:17px}.GitHubBadge_label__EnDKj{display:flex;align-items:center;gap:.35rem}.GitHubBadge_repoName__GRFyi{color:var(--ink-bright);font-weight:500}.GitHubBadge_indicator__jrB0e{display:inline-block;width:6px;height:6px;border-radius:50%;background:#10b981;box-shadow:0 0 6px rgba(16,185,129,.7);animation:GitHubBadge_pulseIndicator__Yug51 2.2s ease-in-out infinite}@keyframes GitHubBadge_pulseIndicator__Yug51{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.85)}}.GitHubBadge_externalArrow__58m8H{font-size:.75rem;color:var(--ink-quiet);transition:transform .2s ease,color .2s ease;font-family:system-ui,sans-serif}.GitHubBadge_badge__oo1IC:hover{background:var(--surface-overlay,var(--surface-raised));border-color:var(--signal);color:var(--ink-bright);transform:translateY(-2px);box-shadow:0 6px 24px rgba(0,0,0,.26),0 0 12px var(--glow)}.GitHubBadge_badge__oo1IC:hover .GitHubBadge_iconWrapper__VlGvC{transform:rotate(-8deg) scale(1.1);color:var(--signal)}.GitHubBadge_badge__oo1IC:hover .GitHubBadge_externalArrow__58m8H{transform:translate(2px,-2px);color:var(--signal)}.GitHubBadge_badge__oo1IC:active{transform:translateY(0) scale(.97)}@media (max-width:56rem){.GitHubBadge_container__vEl4g{display:none}}:root{--brand-primary:oklch(0.12 0.005 260);--brand-secondary:oklch(0.98 0.002 260);--surface-sunk:#050608;--surface:#090a0d;--surface-raised:#111318;--surface-vitrine:#171a22;--surface-float:rgba(17,19,24,0.85);--ink-bright:#ffffff;--ink:#e2e5eb;--ink-quiet:#9aa1b0;--ink-faint:#5c6373;--rule:rgba(255,255,255,0.07);--rule-strong:rgba(255,255,255,0.14);--fill-faint:rgba(255,255,255,0.03);--fill:rgba(255,255,255,0.06);--fill-strong:rgba(255,255,255,0.12);--line-strong:rgba(255,255,255,0.28);--glow:rgba(255,255,255,0.35);--scrim:rgba(3,4,6,0.72);--rail-bg:rgba(9,10,13,0.85);--signal:#ffffff;--signal-quiet:#a0a6b5;--signal-wash:rgba(255,255,255,0.08);--space-hair:0.25rem;--space-tight:0.5rem;--space-snug:0.75rem;--space:1rem;--space-loose:1.5rem;--space-wide:2.5rem;--space-section:4rem;--space-chapter:7rem;--font-display:var(--font-display-loaded,var(--font-ui-loaded,"Inter")),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-ui:var(--font-ui-loaded,"Inter"),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-data:var(--font-data-loaded,"IBM Plex Mono"),ui-monospace,"SF Mono",Menlo,monospace;--text-fine:0.75rem;--text-small:0.8125rem;--text-meta:0.875rem;--text-body:1rem;--text-lead:1.125rem;--text-title:clamp(1.2rem,1rem + 1vw,1.85rem);--text-heading:clamp(1.5rem,1.15rem + 1.8vw,3rem);--text-display:clamp(2.2rem,1.4rem + 4vw,5rem);--touch-target-min:44px;--leading-tight:1.08;--leading-snug:1.3;--leading-body:1.6;--leading-reading:1.72;--measure:66ch;--measure-reading:72ch;--measure-tight:46ch;--radius-none:0;--radius-sm:4px;--radius-frame:6px;--radius-control:6px;--radius-card:10px;--radius-pill:9999px;--border-hair:1px;--lift:0 1px 0 rgba(255,255,255,0.08) inset,0 16px 48px -20px rgba(0,0,0,0.85);--lift-subtle:0 1px 0 rgba(255,255,255,0.05) inset,0 4px 16px -4px rgba(0,0,0,0.5);--glow-subtle:0 0 24px -4px rgba(255,255,255,0.08);--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-in-out:cubic-bezier(0.65,0,0.35,1);--dur-instant:90ms;--dur-quick:180ms;--dur-considered:340ms;--dur-deliberate:620ms;--rail-width:4.5rem;--rail-open:15rem;--gutter:clamp(1.25rem,4vw,4rem);--column-max:74rem;--z-rail:40;--z-overlay:60;--z-menu:80;color-scheme:dark}@supports (color:oklch(from red l c h)){:root{--surface-sunk:oklch(from var(--brand-primary) 0.07 c h);--surface:oklch(from var(--brand-primary) 0.11 c h);--surface-raised:oklch(from var(--brand-primary) 0.16 calc(c * 0.9) h);--surface-vitrine:oklch(from var(--brand-primary) 0.20 calc(c * 0.85) h);--ink-bright:oklch(from var(--brand-secondary) 0.99 c h);--ink:oklch(from var(--brand-secondary) 0.90 c h);--ink-quiet:oklch(from var(--brand-secondary) 0.72 c h);--ink-faint:oklch(from var(--brand-secondary) 0.63 c h);--rule:rgba(255,255,255,0.07);--rule-strong:rgba(255,255,255,0.14);--signal:var(--brand-secondary);--signal-quiet:oklch(from var(--brand-secondary) 0.68 c h);--signal-wash:oklch(100% 0 0/0.08);--fill-faint:oklch(100% 0 0/0.03);--fill:oklch(100% 0 0/0.06);--fill-strong:oklch(100% 0 0/0.12);--line-strong:oklch(100% 0 0/0.28);--glow:oklch(100% 0 0/0.35);--scrim:oklch(2% 0.006 260/0.82);--rail-bg:oklch(4% 0.006 260/0.92)}}[data-appearance=light]{color-scheme:light;--surface-sunk:#eef1f5;--surface:#f8fafc;--surface-raised:#ffffff;--surface-vitrine:#f1f4f8;--surface-float:rgba(255,255,255,0.85);--ink-bright:#090a0d;--ink:#242933;--ink-quiet:#4c5464;--ink-faint:#697180;--rule:rgba(9,10,13,0.10);--rule-strong:rgba(9,10,13,0.18);--fill-faint:rgba(9,10,13,0.035);--fill:rgba(9,10,13,0.06);--fill-strong:rgba(9,10,13,0.10);--line-strong:rgba(9,10,13,0.24);--glow:rgba(9,10,13,0.10);--scrim:rgba(9,10,13,0.42);--rail-bg:rgba(255,255,255,0.86);--signal:#090a0d;--signal-quiet:#4b5563;--signal-wash:rgba(9,10,13,0.06);--lift:0 1px 0 rgba(255,255,255,0.9) inset,0 12px 32px -20px rgba(0,0,0,0.15);--lift-subtle:0 1px 0 rgba(255,255,255,0.9) inset,0 4px 16px -4px rgba(0,0,0,0.08);--glow-subtle:0 0 24px -4px rgba(0,0,0,0.05)}[data-appearance=contrast]{color-scheme:dark;--brand-secondary:#ffffff;--surface-sunk:#000000;--surface:#000000;--surface-raised:#0a0b0e;--surface-vitrine:#0a0b0e;--surface-float:rgba(0,0,0,0.98);--ink-bright:#ffffff;--ink:#ffffff;--ink-quiet:#e4e7ec;--ink-faint:#c8cdd6;--rule:#5c6373;--rule-strong:#9aa1b0;--fill-faint:rgba(255,255,255,0.10);--fill:rgba(255,255,255,0.18);--fill-strong:rgba(255,255,255,0.28);--line-strong:#ffffff;--glow:transparent;--scrim:rgba(0,0,0,0.95);--rail-bg:#000000;--signal:#ffffff;--signal-quiet:#e4e7ec;--signal-wash:rgba(255,255,255,0.16);--lift:none;--lift-subtle:none;--glow-subtle:none}[data-appearance=sepia]{color-scheme:light;--surface-sunk:#e8e0d0;--surface:#f4ece0;--surface-raised:#fbf6ee;--surface-vitrine:#efe6d8;--surface-float:rgba(251,246,238,0.88);--ink-bright:#211a12;--ink:#33291d;--ink-quiet:#5c4c39;--ink-faint:#6b5a45;--rule:rgba(33,26,18,0.12);--rule-strong:rgba(33,26,18,0.22);--fill-faint:rgba(33,26,18,0.04);--fill:rgba(33,26,18,0.07);--fill-strong:rgba(33,26,18,0.12);--line-strong:rgba(33,26,18,0.28);--glow:rgba(107,63,29,0.10);--scrim:rgba(33,26,18,0.45);--rail-bg:rgba(251,246,238,0.88);--signal:#6b3f1d;--signal-quiet:#7d5636;--signal-wash:rgba(107,63,29,0.08);--lift:0 1px 0 rgba(255,255,255,0.8) inset,0 12px 32px -20px rgba(60,42,20,0.22);--lift-subtle:0 1px 0 rgba(255,255,255,0.8) inset,0 4px 16px -4px rgba(60,42,20,0.12);--glow-subtle:0 0 24px -4px rgba(60,42,20,0.06)}@media (prefers-contrast:more){html:not([data-appearance-applied]){color-scheme:dark;--surface-sunk:#000000;--surface:#000000;--surface-raised:#0a0b0e;--surface-vitrine:#0a0b0e;--ink-bright:#ffffff;--ink:#ffffff;--ink-quiet:#e4e7ec;--ink-faint:#c8cdd6;--rule:#5c6373;--rule-strong:#9aa1b0}}@media (prefers-reduced-motion:reduce){:root{--dur-instant:1ms;--dur-quick:1ms;--dur-considered:1ms;--dur-deliberate:1ms}}@media (max-width:30rem){:root{--space-wide:1.5rem;--space-section:2.5rem;--space-chapter:3.75rem;--gutter:1rem}}@media (max-width:23rem){:root{--space-snug:0.625rem;--space:0.875rem;--space-loose:1.25rem;--space-wide:1.25rem;--space-section:2rem;--space-chapter:3rem;--gutter:0.75rem}}*,:after,:before{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{background:var(--surface-sunk);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-body);line-height:var(--leading-body);font-synthesis-weight:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;min-height:100dvh}iframe,img,svg,video{display:block;max-width:100%}img,video{height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--signal);outline-offset:3px;border-radius:var(--radius-control)}::selection{background:var(--signal-wash);color:var(--ink-bright)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.skip-link{position:absolute;left:var(--space);top:calc(var(--space) * -6);z-index:var(--z-menu);padding:var(--space-tight) var(--space);background:var(--surface-raised);border:var(--border-hair) solid var(--signal);transition:top var(--dur-quick) var(--ease-out)}.skip-link:focus{top:var(--space)}.shell{display:grid;grid-template-columns:auto minmax(0,1fr);min-height:100dvh}.shell:has([data-open=true]){grid-template-columns:var(--rail-open) minmax(0,1fr)}.shell__main{min-width:0;background:var(--surface);border-left:var(--border-hair) solid var(--rule)}.page{max-width:var(--column-max);padding:var(--space-wide) var(--gutter) var(--space-chapter);margin-inline:0}.page--wide{max-width:96rem}.ruler{display:flex;align-items:center;gap:var(--space-tight);padding-block:var(--space-tight);color:var(--ink-faint);font-family:var(--font-data);font-size:var(--text-fine);letter-spacing:.04em}.ruler__ticks{display:flex;gap:3px;align-items:flex-end}.ruler__tick{width:1px;height:7px;background:var(--rule-strong)}.ruler__tick[data-on=true]{background:var(--signal);height:12px}.display{font-size:var(--text-display);line-height:1.02;letter-spacing:-.035em}.display,.heading{font-family:var(--font-display);font-weight:600;color:var(--ink-bright);text-wrap:balance}.heading{font-size:var(--text-heading);line-height:var(--leading-tight);letter-spacing:-.025em}.title{font-family:var(--font-display);font-size:var(--text-title);font-weight:500;line-height:var(--leading-snug);letter-spacing:-.015em;color:var(--ink-bright)}.lead{font-size:var(--text-lead);line-height:var(--leading-reading);color:var(--ink);letter-spacing:-.01em}.lead,.prose{max-width:var(--measure);text-wrap:pretty}.prose p+p{margin-top:var(--space)}.meta{font-family:var(--font-data);font-size:var(--text-fine);letter-spacing:.02em;color:var(--ink-faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.label{font-size:var(--text-small);color:var(--ink-quiet);letter-spacing:.01em}.section{padding-block:var(--space-section);border-top:var(--border-hair) solid var(--rule)}.section:first-of-type{border-top:none;padding-top:var(--space-loose)}.section__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-loose);margin-bottom:var(--space-loose);flex-wrap:wrap}.section__note{color:var(--ink-quiet);font-size:var(--text-meta);max-width:var(--measure-tight)}.rows{border-top:var(--border-hair) solid var(--rule)}.row{display:grid;grid-template-columns:2.25rem minmax(0,1fr) auto;grid-gap:var(--space);gap:var(--space);align-items:start;padding:var(--space-loose) var(--space-snug);border-bottom:var(--border-hair) solid var(--rule);border-radius:var(--radius-frame);position:relative;transition:background var(--dur-quick) var(--ease-out),border-color var(--dur-quick) var(--ease-out),transform var(--dur-quick) var(--ease-out)}.row:before{content:"";position:absolute;left:0;top:15%;bottom:15%;width:2px;background:var(--signal);opacity:0;border-radius:2px;box-shadow:0 0 10px var(--glow);transition:opacity var(--dur-quick) var(--ease-out),transform var(--dur-quick) var(--ease-out);transform:scaleY(.4)}.row:focus-within:before,.row:hover:before{opacity:1;transform:scaleY(1)}.row:hover{background:var(--fill-faint);border-color:var(--fill-strong)}.row__mark{color:var(--ink-faint);padding-top:3px;transition:color var(--dur-quick) var(--ease-out)}.row:focus-within .row__mark,.row:hover .row__mark{color:var(--signal)}.row__name{font-family:var(--font-display);font-size:var(--text-title);font-weight:600;letter-spacing:-.015em;line-height:var(--leading-snug);color:var(--ink-bright)}.row__name a:after{content:"";position:absolute;inset:0}.row__summary{margin-top:var(--space-hair);color:var(--ink-quiet);max-width:var(--measure);font-size:var(--text-meta);line-height:var(--leading-reading)}.row__aside{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-hair);text-align:right}.row__tech{display:flex;flex-wrap:wrap;gap:var(--space-tight);margin-top:var(--space-snug)}.tech{display:inline-flex;align-items:center;font-family:var(--font-data);font-size:var(--text-fine);color:var(--ink-quiet);background:var(--fill-faint);border:var(--border-hair) solid var(--fill);border-radius:var(--radius-sm);padding:.18rem .5rem;line-height:1.2;transition:all var(--dur-quick) var(--ease-out)}a.tech:hover{color:var(--ink-bright);background:var(--fill);border-color:var(--line-strong)}.badge{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-data);font-size:var(--text-fine);letter-spacing:.02em;color:var(--ink-quiet);background:var(--fill-faint);border:var(--border-hair) solid var(--rule-strong);border-radius:var(--radius-pill);padding:.15rem .5rem;white-space:nowrap}.badge:before{content:"";width:5px;height:5px;border:var(--border-hair) solid;transform:rotate(45deg);border-radius:1px}.badge[data-state=active],.badge[data-state=live],.badge[data-state=validated]{color:var(--ink-bright);background:var(--fill);border-color:var(--line-strong);box-shadow:0 0 10px var(--fill)}.badge[data-state=active]:before,.badge[data-state=live]:before{background:currentColor;box-shadow:0 0 6px var(--glow)}.badge[data-state=archived],.badge[data-state=unresolved]{color:var(--ink-faint)}.badge[data-state=private]:before{border-style:dashed}.vitrine{border:var(--border-hair) solid var(--rule-strong);background:var(--surface-vitrine);border-radius:var(--radius-frame);overflow:hidden;box-shadow:var(--lift)}.vitrine__body{position:relative;background:var(--surface-sunk)}.vitrine__caption{display:flex;justify-content:space-between;gap:var(--space);padding:var(--space-snug) var(--space);border-top:var(--border-hair) solid var(--rule);font-size:var(--text-small);color:var(--ink-quiet)}.vitrine__fallback{display:grid;place-items:center;grid-gap:var(--space-tight);gap:var(--space-tight);min-height:12rem;padding:var(--space-loose);color:var(--ink-faint);text-align:center}.gallery{display:grid;grid-gap:var(--space-loose);gap:var(--space-loose);grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr))}.disclosure{border-top:var(--border-hair) solid var(--rule)}.disclosure__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space);padding:var(--space) 0;background:none;border:0;cursor:pointer;text-align:left;color:var(--ink);transition:color var(--dur-quick) var(--ease-out)}.disclosure__trigger:hover{color:var(--ink-bright)}.disclosure__sign{color:var(--ink-faint);font-family:var(--font-data);font-size:var(--text-small);display:inline-grid;place-items:center;width:24px;height:24px;border-radius:var(--radius-control);border:1px solid var(--rule);background:var(--surface-sunk);transition:transform .28s cubic-bezier(.16,1,.3,1),color .2s ease,border-color .2s ease;flex-shrink:0}.disclosure__trigger[aria-expanded=true] .disclosure__sign{color:var(--signal);border-color:var(--signal-quiet);transform:rotate(90deg)}.disclosure__panelWrapper{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s cubic-bezier(.16,1,.3,1),opacity .22s ease-out;opacity:0}.disclosure__panelWrapper[data-open=true]{grid-template-rows:1fr;opacity:1}.disclosure__panelInner{overflow:hidden}.disclosure__panel{padding-bottom:var(--space-loose)}.disclosure__panel[hidden]{display:none}.reader{font-family:var(--font-display);font-size:1.0625rem;line-height:var(--leading-reading);color:var(--ink);max-width:var(--measure-reading)}.reader>*+*{margin-top:var(--space)}.reader h2{font-size:var(--text-title);font-weight:500;margin-top:var(--space-wide);padding-top:var(--space);border-top:var(--border-hair) solid var(--rule);line-height:var(--leading-snug)}.reader h2,.reader h3{color:var(--ink-bright)}.reader h3{font-size:var(--text-lead);font-weight:600;margin-top:var(--space-loose)}.reader ol,.reader ul{padding-left:1.25em}.reader li+li{margin-top:var(--space-tight)}.reader blockquote{border-left:2px solid var(--signal-quiet);padding-left:var(--space);color:var(--ink-quiet);font-style:italic}.reader code{font-size:.85em;background:var(--surface-raised);border:var(--border-hair) solid var(--rule);padding:.1em .35em;border-radius:var(--radius-control)}.reader code,.reader pre{font-family:var(--font-data)}.reader pre{font-size:var(--text-small);line-height:1.55;background:var(--surface-sunk);border:var(--border-hair) solid var(--rule);border-radius:var(--radius-frame);padding:var(--space);overflow-x:auto}.reader pre code{background:none;border:0;padding:0;font-size:inherit}.reader table{width:100%;border-collapse:collapse;font-family:var(--font-ui);font-size:var(--text-meta)}.reader td,.reader th{text-align:left;padding:var(--space-tight) var(--space-snug);border-bottom:var(--border-hair) solid var(--rule)}.reader th{font-weight:500}.reader a,.reader th{color:var(--ink-bright)}.reader a{border-bottom:var(--border-hair) solid var(--signal-quiet)}.reader a:hover{border-bottom-color:var(--signal)}.table-scroll{overflow-x:auto}.link{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--fill-strong);padding-bottom:1px;transition:color var(--dur-quick) var(--ease-out),border-color var(--dur-quick) var(--ease-out)}.link:hover{color:var(--ink-bright);border-bottom-color:var(--signal)}.control{display:inline-flex;align-items:center;gap:var(--space-tight);padding:.45rem .9rem;background:var(--fill-faint);border:var(--border-hair) solid var(--rule-strong);border-radius:var(--radius-control);color:var(--ink);cursor:pointer;font-size:var(--text-meta);font-weight:500;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.control:hover{border-color:var(--line-strong);background:var(--fill);color:var(--ink-bright);box-shadow:0 0 16px var(--fill)}.control[data-emphasis=signal]{border-color:var(--glow);background:var(--fill-strong);color:var(--ink-bright)}.control[disabled]{opacity:.35;cursor:not-allowed}.field{width:100%;background:var(--fill-faint);border:var(--border-hair) solid var(--rule-strong);border-radius:var(--radius-control);padding:.55rem .85rem;color:var(--ink-bright);font-size:var(--text-meta);transition:all var(--dur-quick) var(--ease-out)}.field:focus{border-color:var(--glow);background:var(--fill);box-shadow:0 0 0 3px var(--fill);outline:none}.field[data-invalid=true]{border-color:var(--signal);background:var(--fill)}.notice{border:var(--border-hair) solid var(--rule-strong);border-left:3px solid var(--signal);background:var(--fill-faint);padding:var(--space-snug) var(--space);font-size:var(--text-meta);color:var(--ink-quiet);border-radius:var(--radius-frame);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.notice strong{color:var(--ink-bright);font-weight:600}@keyframes rise{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:none}}@keyframes draw{to{stroke-dashoffset:0}}.enter{animation:rise var(--dur-deliberate) var(--ease-out) backwards}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}}.row{-webkit-tap-highlight-color:transparent}.row:active{background:color-mix(in oklab,var(--surface-raised) 75%,transparent);transform:scale(.995);transition:transform var(--dur-instant) var(--ease-out),background var(--dur-instant) var(--ease-out)}.control{-webkit-tap-highlight-color:transparent;transition:all var(--dur-quick) var(--ease-out)}.control:active{transform:scale(.96);border-color:var(--signal);color:var(--signal)}.link:active{color:var(--signal);opacity:.85}.tech:active{color:var(--signal);border-color:var(--signal)}.disclosure__trigger{-webkit-tap-highlight-color:transparent;transition:color var(--dur-quick) var(--ease-out),transform var(--dur-instant) var(--ease-out)}.disclosure__trigger:active{transform:scale(.99);color:var(--signal)}@media (max-width:56rem){.shell{grid-template-columns:minmax(0,1fr)}.shell__main{border-left:0;padding-top:calc(3.5rem + env(safe-area-inset-top, 0px));padding-bottom:calc(5.5rem + env(safe-area-inset-bottom, 0px))}.page{padding-inline:var(--gutter)}.row{grid-template-columns:1.75rem minmax(0,1fr)}.row,.row__aside{gap:var(--space-snug)}.row__aside{grid-column:2;align-items:flex-start;text-align:left;flex-direction:row;flex-wrap:wrap;margin-top:var(--space-tight)}.gallery{grid-template-columns:1fr}}@media (max-width:48rem){.section__head,.vitrine__caption{flex-direction:column;align-items:flex-start;gap:var(--space-tight)}}@media (max-width:30rem){.row{grid-template-columns:1fr;gap:var(--space-tight);padding:var(--space) 0}.row__mark{display:none}.row__aside{grid-column:1}.row__name{font-size:1.25rem}.display{font-size:clamp(1.75rem,1.25rem + 3.5vw,2.75rem)}.heading{font-size:clamp(1.35rem,1.1rem + 2vw,2rem)}.control{display:inline-flex;align-items:center;justify-content:center}.control,.disclosure__trigger{min-height:var(--touch-target-min,44px)}}@media (max-width:23rem){.page{padding-inline:.75rem}.row{padding:.85rem 0}.row__name{font-size:1.1rem}.row__tech{gap:4px}.tech{padding:1px 4px}.badge,.tech{font-size:10px}}