@font-face{font-family:Heebo;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_app/immutable/assets/heebo-var.CK-16_sU.woff2)format("woff2");unicode-range:U+??,U+590-5FF,U+FB1D-FB4F,U+2000-206F,U+20AA,U+2190-21FF,U+2022,U+A0,U+2026,U+20AC}@font-face{font-family:Frank Ruhl Libre;font-style:normal;font-weight:300 900;font-display:swap;src:url(/_app/immutable/assets/frank-ruhl-libre-var.C84fv13U.woff2)format("woff2");unicode-range:U+??,U+590-5FF,U+FB1D-FB4F,U+2000-206F,U+20AA,U+2190-21FF,U+2022,U+A0,U+2026,U+20AC}:root{--paper:#fff;--paper-2:#f5f6fa;--paper-3:#e9ecf3;--surface:#fff;--ink:#0c1230;--ink-2:#3f4766;--ink-3:#6f7694;--line:#e3e6ef;--line-2:#cfd4e2;--navy:#0c1230;--navy-2:#141b3f;--blue:#2742c8;--blue-2:#1d33a6;--blue-soft:#2742c81a;--light:#d4680a;--light-2:#a84f05;--light-soft:#ff8c2821;--dawn-1:#ffb347;--dawn-2:#ff7a3d;--dawn-3:#ff3d7f;--sea:#0f8f85;--sea-soft:#0f8f851f;--on-light:#2a1400;--shadow-1:0 1px 2px #0c12300d, 0 10px 30px -14px #0c123029;--shadow-2:0 2px 6px #0c12300f, 0 30px 70px -28px #0c123052;--shadow-glow:0 0 0 1px #ff7a3d40, 0 24px 60px -22px #ff7a3d73;--f-ui:"Heebo", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--f-read:"Frank Ruhl Libre", "David Libre", Georgia, serif;--f-mono:ui-monospace, "Cascadia Mono", Consolas, Menlo, monospace;--fs-0:clamp(.8rem, .78rem + .2vw, .88rem);--fs-1:clamp(.95rem, .9rem + .25vw, 1.05rem);--fs-2:clamp(1.1rem, 1rem + .4vw, 1.3rem);--fs-3:clamp(1.35rem, 1.15rem + .9vw, 1.9rem);--fs-4:clamp(1.8rem, 1.3rem + 2vw, 3rem);--fs-5:clamp(2.3rem, 1.3rem + 4vw, 4.6rem);--fs-6:clamp(2.8rem, 1.4rem + 6vw, 6.6rem);--lh-tight:1.04;--lh-ui:1.5;--lh-read:1.72;--read-size:1.1875rem;--read-font:var(--f-ui);--r-1:10px;--r-2:16px;--r-3:22px;--r-4:32px;--pill:999px;--gut:clamp(16px, 4vw, 56px);--maxw:1440px;--top-h:68px;--tab-h:0px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:linear(0, .009, .035 2.1%, .141 4.4%, .723 12.9%, .938 16.7%, 1.017, 1.077 20.4%, 1.121, 1.149 24.3%, 1.159, 1.163 27.8%, 1.158, 1.141 31.3%, 1.106 34.2%, 1.048 37.9%, .994 41.6%, .959 44.9%, .942 48.5%, .939 52.2%, .95 56%, .987 64.4%, 1.014 72.8%, 1.021 80.2%, 1.001 95.8%, 1);--t-1:.16s;--t-2:.32s;--t-3:.64s;--t-4:1.1s;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#06070d;--paper-2:#0f1119;--paper-3:#181b27;--surface:#0f1119;--ink:#f2f3f8;--ink-2:#b4b9cc;--ink-3:#8b91a8;--line:#22263a;--line-2:#313650;--blue:#8fa0ff;--blue-2:#a9b6ff;--blue-soft:#8fa0ff24;--light:#ffb347;--light-2:#ffc670;--light-soft:#ffb34724;--sea:#34d3c6;--sea-soft:#34d3c624;--on-light:#2a1400;--shadow-1:0 1px 2px #00000080, 0 10px 30px -14px #000000b3;--shadow-2:0 2px 6px #00000080, 0 30px 70px -28px #000000e6;--shadow-glow:0 0 0 1px #ffb34740, 0 24px 70px -20px #ff7a3d73;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#06070d;--paper-2:#0f1119;--paper-3:#181b27;--surface:#0f1119;--ink:#f2f3f8;--ink-2:#b4b9cc;--ink-3:#8b91a8;--line:#22263a;--line-2:#313650;--blue:#8fa0ff;--blue-2:#a9b6ff;--blue-soft:#8fa0ff24;--light:#ffb347;--light-2:#ffc670;--light-soft:#ffb34724;--sea:#34d3c6;--sea-soft:#34d3c624;--on-light:#2a1400;--shadow-1:0 1px 2px #00000080, 0 10px 30px -14px #000000b3;--shadow-2:0 2px 6px #00000080, 0 30px 70px -28px #000000e6;--shadow-glow:0 0 0 1px #ffb34740, 0 24px 70px -20px #ff7a3d73;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-contrast=high]{--ink-2:var(--ink);--ink-3:var(--ink);--line:var(--ink-3);--light:#8a4b00;--blue:#10217a}:root[data-theme=dark][data-contrast=high],:root:not([data-theme=light])[data-contrast=high]{--light:#ffd27a;--blue:#c3cdff}:root[data-readable="1"]{--f-ui:"Arial", "Heebo", sans-serif;--read-font:"Arial", "Heebo", sans-serif}:root[data-underline="1"] a{text-underline-offset:.18em;text-decoration:underline}:root[data-motion=off] *,:root[data-motion=off] :before,:root[data-motion=off] :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}:root[data-scale="1"]{font-size:112.5%}:root[data-scale="2"]{font-size:125%}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--top-h) + 16px);scroll-behavior:smooth;hanging-punctuation:first last}body{background:var(--paper);min-height:100dvh;color:var(--ink);font:400 var(--fs-1) / var(--lh-ui) var(--f-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"kern" 1, "liga" 1;padding-bottom:var(--tab-h);transition:background-color var(--t-3) var(--ease-out), color var(--t-3) var(--ease-out);margin:0;overflow-x:clip}:where(h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote,hr){margin:0}:where(ul,ol){padding:0;list-style:none}:where(button){font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}:where(input,select,textarea){font:inherit;color:inherit}a{color:inherit;text-decoration:none}img,svg,video,iframe{max-width:100%}img{height:auto;display:block}mark{color:inherit;background:0 0}kbd{font-family:var(--f-mono);border:1px solid var(--line-2);direction:ltr;unicode-bidi:isolate;border-bottom-width:2px;border-radius:6px;padding:1px 6px;font-size:.78em}[hidden]{display:none!important}::selection{background:var(--light-soft);color:var(--ink)}:focus-visible{outline:2px solid var(--light);outline-offset:3px;border-radius:6px}.vh{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.muted{color:var(--ink-2)}.num{font-variant-numeric:tabular-nums}.sprite{width:0;height:0;position:absolute;overflow:hidden}.ico{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;flex:none;width:1.25em;height:1.25em}.ico--sm{width:1em;height:1em}.skip{z-index:300;border-radius:var(--pill);background:var(--ink);color:var(--paper);transition:transform var(--t-1);padding:10px 16px;font-weight:600;position:fixed;inset-block-start:10px;inset-inline-start:10px;transform:translateY(-200%)}.skip:focus{transform:none}.wrap{width:100%;max-width:var(--maxw);padding-inline:max(var(--gut), env(safe-area-inset-left,0px));margin-inline:auto}.wrap--read{max-width:calc(var(--read-measure) + 2 * var(--gut))}.wrap--wide{max-width:1680px}.sec{padding-block:clamp(28px,5vw,64px) 8px}.sec--flush{padding-block-start:0}.h-display{font-family:var(--f-ui);font-weight:900;font-size:var(--fs-6);letter-spacing:-.028em;text-wrap:balance;line-height:.98}.h-1{font-family:var(--f-ui);font-weight:900;font-size:var(--fs-5);line-height:var(--lh-tight);letter-spacing:-.024em;text-wrap:balance}.h-2{font-family:var(--f-ui);font-weight:700;font-size:var(--fs-4);letter-spacing:-.02em;text-wrap:balance;line-height:1.08}.h-3{font-family:var(--f-ui);font-weight:700;font-size:var(--fs-3);letter-spacing:-.012em;text-wrap:balance;line-height:1.15}.lead{font-size:var(--fs-2);color:var(--ink-2);text-wrap:pretty;max-width:60ch;line-height:1.55}.eyebrow{font-size:var(--fs-0);letter-spacing:.08em;text-transform:uppercase;color:var(--light-2);align-items:center;gap:10px;font-weight:800;display:inline-flex}.eyebrow:before{content:"";background:linear-gradient(90deg, var(--dawn-1), var(--dawn-3));border-radius:2px;width:22px;height:2px}.meta{font-size:var(--fs-0);color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:6px 14px;display:flex}.meta>*{align-items:center;gap:6px;display:inline-flex}.glow-text{background:linear-gradient(100deg, var(--dawn-1), var(--dawn-2) 45%, var(--dawn-3));color:#0000;-webkit-background-clip:text;background-clip:text}.top{z-index:200;height:var(--top-h);background:color-mix(in oklab, var(--paper) 84%, transparent);-webkit-backdrop-filter:blur(18px)saturate(1.4);backdrop-filter:blur(18px)saturate(1.4);transition:border-color var(--t-3), box-shadow var(--t-3);border-bottom:1px solid #0000;align-items:center;display:flex;position:sticky;inset-block-start:0}.top.is-stuck{border-color:var(--line);box-shadow:0 10px 30px -24px #0c123066}.top-in{align-items:center;gap:12px;width:100%;display:flex}.brand{letter-spacing:-.02em;color:var(--ink);white-space:nowrap;align-items:center;gap:10px;font-size:21px;font-weight:900;display:inline-flex}.brand .mark{width:34px;height:34px;transition:transform var(--t-3) var(--ease-spring);border-radius:10px;flex:none;box-shadow:0 6px 18px -8px #ff7a3db3}.brand:hover .mark{transform:rotate(-8deg)scale(1.08)}.nav{flex:1;justify-content:center;display:none}.nav ul{gap:2px;display:flex}.nav a{border-radius:var(--pill);min-height:38px;color:var(--ink-2);transition:color var(--t-2), background-color var(--t-2);align-items:center;padding-inline:13px;font-size:15px;font-weight:600;display:inline-flex;position:relative}.nav a:hover,.nav a[aria-current=page]{color:var(--ink);background:var(--paper-2)}.top-end{align-items:center;gap:4px;margin-inline-start:auto;display:flex}.cmd{border-radius:var(--pill);background:var(--paper-2);border:1px solid var(--line);height:40px;color:var(--ink-2);transition:background-color var(--t-2), color var(--t-2), border-color var(--t-2);align-items:center;gap:10px;padding-inline:14px 8px;font-size:14px;font-weight:600;display:none}.cmd:hover{color:var(--ink);border-color:var(--line-2)}.cmd kbd{font-size:11px}.donate{display:none}@media (width>=720px){.cmd{display:inline-flex}}@media (width>=1000px){.nav{display:flex}.donate{display:inline-flex}.menu-btn{display:none}}.tabbar{z-index:180;background:color-mix(in oklab, var(--paper) 90%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.3);backdrop-filter:blur(16px)saturate(1.3);border-top:1px solid var(--line);grid-auto-columns:1fr;grid-auto-flow:column;padding-block-end:env(safe-area-inset-bottom);display:grid;position:fixed;inset-block-end:0;inset-inline:0}.tab{color:var(--ink-3);transition:color var(--t-2);justify-items:center;gap:3px;padding:9px 4px 8px;font-size:11px;font-weight:600;display:grid}.tab .ico{width:22px;height:22px}.tab[aria-current=page]{color:var(--blue)}@media (width<=999px){:root{--tab-h:64px}}@media (width>=1000px){.tabbar{display:none}}.foot{background:var(--navy);color:#fff;isolation:isolate;margin-block-start:clamp(56px,8vw,120px);padding-block:clamp(40px,6vw,80px) 28px;position:relative;overflow:hidden}.foot:before{content:"";background:linear-gradient(90deg, var(--dawn-1), var(--dawn-2), var(--dawn-3));height:4px;position:absolute;inset-block-start:0;inset-inline:0}:root[data-theme=dark] .foot,:root:not([data-theme=light]) .foot{background:var(--paper-2)}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .foot{background:var(--navy)}}.foot-grid{gap:36px;display:grid}@media (width>=800px){.foot-grid{grid-template-columns:1.4fr 1fr 1fr;gap:48px}}.foot-brand{align-content:start;gap:14px;display:grid}.foot-brand .brand{color:inherit}.foot-brand p{opacity:.75;max-width:42ch;line-height:1.6}.foot-col h2{letter-spacing:.1em;text-transform:uppercase;opacity:.6;margin-block-end:14px;font-size:12px;font-weight:700}.foot-col ul{gap:8px;display:grid}.foot-col a{opacity:.85;transition:opacity var(--t-1), padding-inline-start var(--t-2) var(--ease-out)}.foot-col a:hover{opacity:1;padding-inline-start:4px}.foot-base{opacity:.75;border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-block-start:40px;padding-block-start:20px;font-size:13px;display:flex}.mode{border-radius:var(--pill);background:#ffffff14;width:fit-content;padding:3px;display:inline-flex}.mode button{border-radius:var(--pill);opacity:.8;height:34px;transition:background-color var(--t-2), opacity var(--t-2);align-items:center;gap:6px;padding-inline:12px;font-size:13px;font-weight:600;display:inline-flex}.mode button[aria-pressed=true]{color:var(--navy);opacity:1;background:#fff}.mode .ico{width:16px;height:16px}.phead{gap:16px;padding-block:clamp(24px,4vw,56px) clamp(14px,2.5vw,28px);display:grid;position:relative}.phead>*{min-width:0}.phead--split{align-items:center}@media (width>=900px){.phead--split{grid-template-columns:1.1fr .9fr;gap:48px}}.crumbs{color:var(--ink-3);font-size:13px}.crumbs ol{flex-wrap:wrap;gap:4px 0;display:flex}.crumbs li{align-items:center;min-width:0;display:inline-flex}.crumbs li+li:before{content:"‹";opacity:.6;margin-inline:8px}.crumbs a:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.crumbs [aria-current]{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;max-width:44ch;overflow:hidden}.phead-act{flex-wrap:wrap;align-items:center;gap:10px;margin-block-start:8px;display:flex}.bento{gap:16px;display:grid}@media (width>=900px){.bento{grid-template-columns:repeat(12,1fr);grid-auto-rows:minmax(0,auto)}.bento>.b-8{grid-column:span 8}.bento>.b-4{grid-column:span 4}.bento>.b-6{grid-column:span 6}.bento>.b-12{grid-column:span 12}.bento>.b-rows-2{grid-row:span 2}}.numbers{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width>=700px){.numbers{grid-template-columns:repeat(4,1fr)}}.num-card{border-radius:var(--r-3);background:var(--paper-2);gap:4px;padding:18px 20px;display:grid}.num-v{font-weight:900;font-size:var(--fs-4);letter-spacing:-.03em;font-variant-numeric:tabular-nums;background:linear-gradient(100deg, var(--dawn-1), var(--dawn-3));color:#0000;-webkit-background-clip:text;background-clip:text;line-height:1}.num-l{color:var(--ink-2);font-weight:600;font-size:var(--fs-0)}.band{border-radius:var(--r-4);background:var(--navy);color:#fff;isolation:isolate;gap:14px;padding:clamp(24px,4vw,44px);display:grid;position:relative;overflow:hidden}.band:after{content:"";aspect-ratio:1;z-index:-1;background:radial-gradient(closest-side,#ffb34780,#0000 70%);border-radius:50%;width:60%;position:absolute;inset-block-end:-60%;inset-inline-end:-10%}.band h2{font-weight:900;font-size:var(--fs-4);letter-spacing:-.02em;line-height:1.06}.band p{opacity:.8;max-width:56ch}.band .btn--light{width:fit-content}.article-layout{align-items:start;gap:36px;display:grid}@media (width>=1100px){.article-layout{grid-template-columns:minmax(0,1fr) 340px;column-gap:clamp(36px,5vw,80px)}}.article-body{min-width:0}.article-side,.side-sticky{gap:18px;display:grid}@media (width>=1100px){.side-sticky{position:sticky;inset-block-start:calc(var(--top-h) + 20px)}}@media (width<=1099px){.side-others{display:none}}.side-card{border-radius:var(--r-3);background:var(--paper-2);gap:10px;padding:18px;display:grid}.side-k{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-size:12px;font-weight:800}.side-t{font-weight:800;font-size:var(--fs-2);line-height:1.2}.side-bar{border-radius:var(--pill);background:var(--paper-3);height:6px;overflow:hidden}.side-bar span{border-radius:var(--pill);background:linear-gradient(90deg, var(--dawn-1), var(--dawn-3));height:100%;transition:width var(--t-4) var(--ease-out);display:block}.side-nav{justify-content:space-between;gap:8px;display:flex}.side-list{gap:2px;display:grid}.side-list a{border-radius:var(--r-2);transition:background-color var(--t-2);grid-template-columns:54px 1fr;align-items:center;gap:12px;padding:8px;display:grid}.side-list a:hover{background:var(--paper-3)}.side-list .cover{aspect-ratio:1;box-shadow:none;border-radius:10px}.side-list b{font-weight:700;line-height:1.25;font-size:var(--fs-0);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.side-list small{color:var(--ink-3);font-size:12px}.focus-mode .top,.focus-mode .tabbar,.focus-mode .foot,.focus-mode .article-side,.focus-mode .after-article,.focus-mode .shelf-sec,.focus-mode .sticky-bar{opacity:.06;filter:grayscale();transition:opacity var(--t-3)}.focus-mode .top:hover,.focus-mode .tabbar:hover,.focus-mode .sticky-bar:hover{opacity:1;filter:none}.sticky-bar{z-index:210;height:var(--top-h);background:color-mix(in oklab, var(--paper) 92%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);transition:transform var(--t-3) var(--ease-out);align-items:center;display:flex;position:fixed;inset-block-start:0;inset-inline:0;transform:translateY(-110%)}.sticky-bar.is-on{transform:none}.sticky-in{align-items:center;gap:14px;width:100%;min-width:0;display:flex}.sticky-t{min-width:0;font-weight:800;font-size:var(--fs-1);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.sticky-m{color:var(--ink-3);white-space:nowrap;font-size:13px}.sticky-bar .progress{position:absolute;inset-block:auto -1px}.btn{border-radius:var(--pill);min-height:46px;font-weight:700;font-size:var(--fs-1);white-space:nowrap;transition:transform var(--t-2) var(--ease-spring), box-shadow var(--t-2), background-color var(--t-2), color var(--t-2), border-color var(--t-2);will-change:transform;border:1px solid #0000;justify-content:center;align-items:center;gap:9px;padding-inline:22px;display:inline-flex}.btn .ico{width:20px;height:20px}.btn:active{transform:scale(.97)}.btn--sm{min-height:38px;font-size:var(--fs-0);padding-inline:15px}.btn--lg{min-height:54px;font-size:var(--fs-2);padding-inline:28px}.btn--light{background:linear-gradient(120deg, var(--dawn-1), var(--dawn-2) 60%, var(--dawn-3));color:var(--on-light);box-shadow:0 10px 30px -12px #ff7a3d99}.btn--light:hover{transform:translateY(-1px);box-shadow:0 16px 40px -12px #ff7a3db3}.btn--ink{background:var(--ink);color:var(--paper)}.btn--ink:hover{box-shadow:var(--shadow-2);transform:translateY(-1px)}.btn--blue{background:var(--blue);color:#fff}.btn--blue:hover{background:var(--blue-2);transform:translateY(-1px)}.btn--soft{background:var(--paper-2);color:var(--ink)}.btn--soft:hover{background:var(--paper-3)}.btn--ghost{border-color:var(--line-2);color:var(--ink)}.btn--ghost:hover{border-color:var(--ink-3);background:var(--surface)}.ibtn{width:42px;height:42px;color:inherit;transition:background-color var(--t-2), color var(--t-2), transform var(--t-2) var(--ease-spring);border-radius:50%;flex:none;place-items:center;display:inline-grid;position:relative}.ibtn .ico{width:21px;height:21px}.ibtn:hover{background:var(--paper-2);transform:translateY(-1px)}.ibtn:active{transform:scale(.94)}.ibtn--soft{background:var(--paper-2)}.ibtn--soft:hover{background:var(--paper-3);color:var(--blue)}.ibtn[aria-pressed=true]{background:var(--ink);color:var(--paper)}.ibtn .badge{border-radius:var(--pill);background:var(--dawn-2);color:#fff;place-items:center;min-width:18px;height:18px;padding-inline:5px;font-size:11px;font-weight:700;display:grid;position:absolute;inset-block-start:4px;inset-inline-end:4px}.chip{border-radius:var(--pill);background:var(--paper-2);min-height:36px;color:var(--ink);font-size:var(--fs-0);white-space:nowrap;transition:background-color var(--t-2), color var(--t-2), border-color var(--t-2), transform var(--t-2) var(--ease-spring);border:1px solid #0000;align-items:center;gap:7px;padding-inline:14px;font-weight:600;display:inline-flex}.chip:hover{background:var(--paper-3);transform:translateY(-1px)}.chip[aria-current=page],.chip[aria-pressed=true]{background:var(--ink);color:var(--paper)}.chip-n{opacity:.7;font-variant-numeric:tabular-nums;font-size:.85em}.chips{min-width:0;max-width:calc(100% + 2 * var(--gut));scrollbar-width:none;margin-inline:calc(var(--gut) * -1);padding-block:6px;padding-inline:var(--gut);scroll-snap-type:x proximity;gap:8px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chips>*{scroll-snap-align:start;flex:none}.chips--wrap{flex-wrap:wrap;max-width:none;margin-inline:0;padding-inline:0;overflow:visible}.pill{letter-spacing:.02em;border-radius:var(--pill);background:var(--light-soft);color:var(--light-2);align-items:center;gap:6px;width:fit-content;padding:4px 11px;font-size:12px;font-weight:800;display:inline-flex}.pill--blue{background:var(--blue-soft);color:var(--blue)}.pill--sea{background:var(--sea-soft);color:var(--sea)}.pill--ink{background:var(--ink);color:var(--paper)}.pill--glass{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff29}.card{min-width:0;position:relative}.card-a{border-radius:var(--r-3);transform-style:preserve-3d;align-content:start;gap:12px;display:grid}.card-b{gap:6px;min-width:0;padding-inline:2px;display:grid}.card-t{font-weight:800;font-size:var(--fs-2);letter-spacing:-.015em;text-wrap:balance;-webkit-line-clamp:3;transition:color var(--t-2);-webkit-box-orient:vertical;line-height:1.2;display:-webkit-box;overflow:hidden}.card-a:hover .card-t{color:var(--blue)}.card-ex{color:var(--ink-2);font-size:var(--fs-0);-webkit-line-clamp:3;text-wrap:pretty;-webkit-box-orient:vertical;line-height:1.55;display:-webkit-box;overflow:hidden}.card-m{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:10px;font-size:12.5px;display:flex}.card--feature .card-a{aspect-ratio:16/9;border-radius:var(--r-4);min-height:360px;box-shadow:var(--shadow-2);display:block;position:relative;overflow:hidden}.card--feature .cover{aspect-ratio:auto;box-shadow:none;transition:transform var(--t-4) var(--ease-out);border-radius:0;position:absolute;inset:0}.card--feature .card-a:hover .cover{transform:scale(1.03)}.card--feature .card-b{color:#fff;background:linear-gradient(#0000,#0000008c);gap:10px;padding:clamp(18px,3vw,36px);position:absolute;inset-block-end:0;inset-inline:0}.card--feature .card-t{-webkit-line-clamp:3;letter-spacing:-.02em;color:#fff;font-size:clamp(1.6rem,1rem + 2.4vw,3rem);font-weight:900}.card--feature .card-a:hover .card-t{color:#fff}.card--feature .card-ex{color:#ffffffd9;font-size:var(--fs-1);-webkit-line-clamp:2;max-width:60ch}.card--feature .card-m{color:#ffffffbf}@media (width>=900px){.card--feature .card-a{aspect-ratio:auto;height:100%;min-height:440px}}.card--row .card-a{border-radius:var(--r-2);grid-template-columns:96px 1fr;align-items:center;gap:14px;padding:8px}.card--row .card-a:hover{background:var(--paper-2)}.card--row .cover{aspect-ratio:1;border-radius:12px}.card--row .card-t{font-size:var(--fs-1);-webkit-line-clamp:2}.card--row .card-ex{display:none}.card--tile .card-a{border-radius:var(--r-3);background:var(--surface);border:1px solid var(--line);transition:border-color var(--t-2), transform var(--t-3) var(--ease-spring), box-shadow var(--t-3);gap:0;overflow:hidden}.card--tile .card-a:hover{border-color:var(--line-2);box-shadow:var(--shadow-2);transform:translateY(-3px)}.card--tile .cover{box-shadow:none;border-radius:0}.card--tile .card-b{gap:8px;padding:16px 18px 18px}.cover{aspect-ratio:16/10;border-radius:var(--r-3);background:var(--paper-3);box-shadow:var(--shadow-1);isolation:isolate;transition:box-shadow var(--t-3) var(--ease-out), transform var(--t-3) var(--ease-spring);display:block;position:relative;overflow:hidden;transform:translateZ(0)}.cover>svg{width:100%;height:100%;display:block;position:absolute;inset:0}.cover--wide{aspect-ratio:16/9}.cover--tall{aspect-ratio:4/5}.cover--square{aspect-ratio:1}.cover--hero{border-radius:var(--r-4);box-shadow:var(--shadow-2)}.cover-t{color:#fff;letter-spacing:-.02em;text-shadow:0 2px 20px #00000059;text-wrap:balance;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:clamp(16px,2.2vw,30px);font-weight:900;line-height:1.08;display:-webkit-box;position:absolute;inset-block-end:9%;inset-inline:7%;overflow:hidden}.cover-k{white-space:nowrap;text-overflow:ellipsis;color:#ffffffd9;letter-spacing:.06em;max-width:58%;font-size:clamp(10px,1vw,13px);font-weight:700;position:absolute;inset-block-start:8%;inset-inline-start:7%;overflow:hidden}.cover-brand{color:#ffffffb3;letter-spacing:.06em;font-size:clamp(10px,1vw,12px);font-weight:600;position:absolute;inset-block-start:8%;inset-inline-end:7%}.cover--hero .cover-t{font-size:clamp(26px,3.6vw,56px)}.grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:clamp(16px,2.4vw,28px);display:grid}.grid--2{grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr))}.grid--series{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr))}.shelf{padding:8px max(var(--gut), calc((100vw - var(--maxw)) / 2 + var(--gut))) 22px;scroll-snap-type:x mandatory;scroll-padding-inline:max(var(--gut), calc((100vw - var(--maxw)) / 2 + var(--gut)));scrollbar-width:none;outline:none;gap:16px;display:flex;overflow-x:auto}.shelf::-webkit-scrollbar{display:none}.shelf>*{scroll-snap-align:start;flex:none;width:min(78vw,320px)}.shelf .card--series{width:min(62vw,250px)}.sec-h{justify-content:space-between;align-items:flex-end;gap:16px;margin-block-end:clamp(14px,2vw,24px);display:flex}.sec-h h2{font-weight:900;font-size:var(--fs-4);letter-spacing:-.025em;line-height:1.05}.sec-h .sub{color:var(--ink-2);font-size:var(--fs-1);margin-block-start:6px}.tlink{color:var(--blue);white-space:nowrap;align-items:center;gap:4px;padding-block:6px;font-weight:700;display:inline-flex}.tlink .ico{width:18px;height:18px;transition:transform var(--t-2) var(--ease-spring)}.tlink:hover .ico{transform:translate(-3px)}.card--series .card-a{gap:10px}.card--series .cover{aspect-ratio:4/5}.series-n{font-size:var(--fs-0);color:var(--ink-3)}.sindex{gap:2px;display:grid}.sindex a{border-radius:var(--r-2);transition:background-color var(--t-2);grid-template-columns:44px 64px 1fr auto;align-items:center;gap:14px;padding:10px 12px;display:grid}.sindex a:hover{background:var(--paper-2)}.sindex .n{font-weight:900;font-size:var(--fs-3);color:var(--ink-3);font-variant-numeric:tabular-nums;letter-spacing:-.03em}.sindex .cover{aspect-ratio:1;box-shadow:none;border-radius:12px}.sindex b{font-weight:800;font-size:var(--fs-2);line-height:1.15}.sindex small{color:var(--ink-3);font-size:var(--fs-0);margin-block-start:2px;display:block}.sindex .ico{color:var(--ink-3)}.pager{justify-content:center;margin-block:36px 8px;display:flex}.pager ul{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.pager a,.pager span{border-radius:var(--pill);font-variant-numeric:tabular-nums;min-width:42px;height:42px;transition:background-color var(--t-2);place-items:center;padding-inline:10px;font-weight:700;display:inline-grid}.pager a{background:var(--paper-2)}.pager a:hover{background:var(--paper-3)}.pager [aria-current=page]{background:var(--ink);color:var(--paper)}.pager .dots{color:var(--ink-3)}.toasts{z-index:400;pointer-events:none;justify-items:center;gap:8px;display:grid;position:fixed;inset-block-end:calc(var(--tab-h) + 16px);inset-inline:0}.toast{pointer-events:auto;border-radius:var(--pill);background:var(--ink);color:var(--paper);box-shadow:var(--shadow-2);font-weight:600;font-size:var(--fs-0);padding:12px 20px}.empty{text-align:center;border:1px dashed var(--line-2);border-radius:var(--r-3);justify-items:center;gap:10px;padding:56px 20px;display:grid}.empty h2{font-weight:800;font-size:var(--fs-2)}.empty p{color:var(--ink-2);max-width:46ch}.empty-ico .ico{width:40px;height:40px;color:var(--light)}.share{flex-wrap:wrap;gap:6px;display:inline-flex}.adjacent{gap:14px;margin-block:36px 10px;display:grid}@media (width>=700px){.adjacent{grid-template-columns:1fr 1fr}}.adj{border-radius:var(--r-2);background:var(--paper-2);transition:border-color var(--t-2), transform var(--t-2) var(--ease-spring), box-shadow var(--t-2);border:1px solid #0000;gap:6px;padding:18px 20px;display:grid}.adj:hover{border-color:var(--line-2);box-shadow:var(--shadow-1);transform:translateY(-2px)}.adj-k{font-size:var(--fs-0);color:var(--ink-3);font-weight:600}.adj-t{font-weight:800;font-size:var(--fs-2);text-wrap:balance;line-height:1.25}dialog{color:inherit;background:0 0;border:0;max-width:100vw;max-height:100dvh;padding:0}dialog::backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#06070d8c}.sheet{background:var(--paper);width:100%;height:100dvh;color:var(--ink);padding:16px var(--gut) calc(24px + env(safe-area-inset-bottom));grid-template-rows:auto auto 1fr auto;margin:0;position:fixed;inset:0;overflow:auto}.sheet[open]{animation:sheet-in var(--t-3) var(--ease-out);display:grid}@keyframes sheet-in{0%{opacity:0;transform:translateY(24px)}}.sheet-top{min-height:var(--top-h);justify-content:space-between;align-items:center;display:flex}.sheet-search{border-radius:var(--pill);background:var(--paper-2);align-items:center;gap:10px;margin-block:10px 22px;padding:6px 8px 6px 16px;display:flex}.sheet-search input{background:0 0;border:0;outline:none;flex:1;min-width:0;height:40px;font-size:17px}.sheet-list{align-content:start;gap:4px;display:grid}.sheet-list a{border-bottom:1px solid var(--line);font-weight:900;font-size:var(--fs-4);letter-spacing:-.02em;transition:color var(--t-2), padding-inline-start var(--t-2) var(--ease-out);justify-content:space-between;align-items:center;padding:14px 6px;line-height:1;display:flex}.sheet-list a:hover,.sheet-list a[aria-current=page]{color:var(--blue);padding-inline-start:10px}.sheet-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-block-start:20px;display:flex}.palette{background:var(--surface);width:min(100% - 24px,720px);color:var(--ink);border-radius:var(--r-3);box-shadow:var(--shadow-2);border:1px solid var(--line);margin-inline:auto;position:fixed;inset-block-start:min(12vh,110px);inset-inline:0;overflow:hidden}.palette[open]{animation:pal-in var(--t-2) var(--ease-out)}@keyframes pal-in{0%{opacity:0;transform:translateY(-8px)scale(.985)}}.pal-top{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:10px 14px 10px 20px;display:flex}.pal-top>.ico{color:var(--light);width:22px;height:22px}.pal-top input{background:0 0;border:0;outline:none;flex:1;min-width:0;height:48px;font-size:19px;font-weight:500}.kbd-btn{border-radius:8px;padding:4px}.pal-res{max-height:min(60vh,520px);padding:8px;overflow:auto}.pal-msg{text-align:center;color:var(--ink-3);padding:28px 16px}.pal-hit{border-radius:var(--r-2);transition:background-color var(--t-1);align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.pal-hit:hover,.pal-hit[aria-selected=true]{background:var(--paper-2)}.hit-ico{background:var(--light-soft);width:38px;height:38px;color:var(--light-2);border-radius:12px;flex:none;place-items:center;display:grid}.hit-b{gap:3px;min-width:0;display:grid}.hit-t{font-weight:700}.hit-s{font-size:var(--fs-0);color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.45;display:-webkit-box;overflow:hidden}.hit-m{color:var(--ink-3);font-size:12px;font-weight:600}.pal-hit mark,.results mark{color:var(--light-2);font-weight:700}.pal-foot{color:var(--ink-3);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:10px 18px;font-size:12px;display:flex}.rtools{z-index:120;border-radius:var(--pill);background:color-mix(in oklab, var(--surface) 86%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);box-shadow:var(--shadow-2), inset 0 0 0 1px var(--line);transition:transform var(--t-3) var(--ease-spring), opacity var(--t-2);align-items:center;gap:2px;padding:6px;display:flex;position:fixed;inset-block-end:calc(var(--tab-h) + 18px);inset-inline-start:50%;transform:translate(-50%)}.rtools.is-hidden{opacity:0;pointer-events:none;transform:translate(-50%,140%)}.rtools .ibtn{width:42px;height:42px}.rtools .ibtn[aria-pressed=true]{background:var(--light-soft);color:var(--light-2)}.rtools-sep{background:var(--line);width:1px;height:24px;margin-inline:4px}.rpanel{z-index:121;border-radius:var(--r-3);background:var(--surface);width:min(100% - 24px,380px);box-shadow:var(--shadow-2), inset 0 0 0 1px var(--line);animation:pal-in var(--t-2) var(--ease-out);gap:14px;padding:16px;display:grid;position:fixed;inset-block-end:calc(var(--tab-h) + 78px);inset-inline-start:50%;transform:translate(-50%)}.rrow{font-size:var(--fs-0);grid-template-columns:1fr auto;align-items:center;gap:10px;font-weight:600;display:grid}.seg{border-radius:var(--pill);background:var(--paper-2);padding:3px;display:inline-flex}.seg button{border-radius:var(--pill);min-width:40px;height:34px;transition:background-color var(--t-1), color var(--t-1);padding-inline:12px;font-size:13px;font-weight:700}.seg button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.progress{z-index:250;background:linear-gradient(90deg, var(--dawn-1), var(--dawn-2), var(--dawn-3));transform-origin:100%;height:3px;transform:scaleX(var(--p,0));pointer-events:none;position:fixed;inset-block-start:0;inset-inline:0}@supports (animation-timeline:scroll()){.progress{animation:linear both grow;animation-timeline:scroll(root);transform:none}@keyframes grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}}.toc{font-size:var(--fs-0);gap:2px;display:grid}.toc-h{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-block-end:6px;font-size:12px;font-weight:800}.toc a{border-inline-start:2px solid var(--line);color:var(--ink-2);transition:color var(--t-1), border-color var(--t-1);padding:6px 10px;display:block}.toc a.is-active{color:var(--ink);border-color:var(--light);font-weight:700}.toc a[data-level="3"]{padding-inline-start:22px}.qpop{z-index:130;border-radius:var(--pill);background:var(--ink);color:var(--paper);box-shadow:var(--shadow-2);animation:pal-in var(--t-1) var(--ease-out);gap:4px;padding:5px;display:inline-flex;position:absolute}.qpop button{border-radius:var(--pill);align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:700;display:inline-flex}.qpop button:hover{background:#ffffff24}.qcard{background:var(--surface);border-radius:var(--r-3);width:min(100% - 24px,560px);box-shadow:var(--shadow-2);z-index:300;gap:14px;margin:auto;padding:18px;position:fixed;inset:0}.qcard[open]{display:grid}.qcard canvas{border-radius:var(--r-2);width:100%;height:auto;box-shadow:var(--shadow-1)}.qcard-act{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.a11y{z-index:119;position:fixed;inset-block-end:calc(var(--tab-h) + 18px);inset-inline-end:18px}.a11y-panel{z-index:121;border-radius:var(--r-3);background:var(--surface);width:min(100% - 36px,340px);box-shadow:var(--shadow-2), inset 0 0 0 1px var(--line);animation:pal-in var(--t-2) var(--ease-out);gap:10px;padding:16px;display:grid;position:fixed;inset-block-end:calc(var(--tab-h) + 70px);inset-inline-end:18px}.a11y-panel h2{font-size:var(--fs-1);font-weight:800}.a11y-row{font-weight:600;font-size:var(--fs-0);justify-content:space-between;align-items:center;gap:10px;display:flex}.switch{border-radius:var(--pill);background:var(--paper-3);width:46px;height:28px;transition:background-color var(--t-2);flex:none;position:relative}.switch:after{content:"";background:var(--surface);width:22px;height:22px;box-shadow:var(--shadow-1);transition:transform var(--t-2) var(--ease-spring);border-radius:50%;position:absolute;inset-block-start:3px;inset-inline-start:3px}.switch[aria-checked=true]{background:var(--sea)}.switch[aria-checked=true]:after{transform:translate(-18px)}.listen{align-items:center;gap:6px;display:inline-flex}.listen .btn{gap:8px}.prose .is-reading{background:var(--light-soft);box-shadow:0 0 0 6px var(--light-soft);border-radius:6px}.prose{font-family:var(--read-font);font-size:var(--read-size);line-height:var(--lh-read);color:var(--ink);text-wrap:pretty;font-feature-settings:"kern" 1, "liga" 1}.prose>*+*{margin-block-start:1.05em}.prose p{-webkit-hyphens:manual;hyphens:manual}.prose h2,.prose h3,.prose h4{font-family:var(--f-ui);letter-spacing:-.02em;text-wrap:balance;scroll-margin-top:calc(var(--top-h) + 24px);margin-block-start:1.7em;font-weight:900;line-height:1.15}.prose h2{font-size:1.5em}.prose h3{font-size:1.22em}.prose h4{font-size:1.05em}.prose blockquote{border-inline-start:3px solid;border-image:linear-gradient(180deg, var(--dawn-1), var(--dawn-3)) 1;color:var(--ink-2);background:var(--paper-2);border-radius:0 var(--r-2) var(--r-2) 0;margin-inline:0;padding:.4em 1.3em;position:relative}.prose blockquote p{font-size:1.02em}.prose a{color:var(--blue);text-underline-offset:.2em;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:color-mix(in oklab, var(--blue) 45%, transparent);text-decoration-color:color-mix(in oklab, var(--blue) 45%, transparent);transition:text-decoration-color var(--t-1)}.prose a:hover{-webkit-text-decoration-color:var(--blue);text-decoration-color:var(--blue)}.prose strong{font-weight:800}.prose ul,.prose ol{padding-inline-start:1.4em}.prose ul{list-style:outside}.prose ol{list-style:decimal}.prose li+li{margin-block-start:.4em}.prose li::marker{color:var(--light)}.prose hr{background:linear-gradient(90deg, transparent, var(--line-2), transparent);border:0;height:1px;margin-block:2.2em}.prose img{border-radius:var(--r-2);margin-inline:auto}.prose figure{margin-inline:0}.prose figcaption{font-family:var(--f-ui);color:var(--ink-3);text-align:center;margin-block-start:.6em;font-size:.78em}.prose table{border-collapse:collapse;width:100%;font-family:var(--f-ui);font-size:.85em}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:start;vertical-align:top;padding:.6em .8em}.prose th{font-weight:700}.prose mark{background:var(--light-soft);color:inherit;border-radius:3px;padding-inline:2px}.prose sup,.prose sub{font-size:.7em;line-height:0}.prose .source,.prose cite{font-family:var(--f-ui);color:var(--ink-3);font-size:.82em;font-style:normal}.prose audio{width:100%}.prose iframe{aspect-ratio:16/9;border-radius:var(--r-2);border:0;width:100%;height:auto}.prose>p:first-of-type{color:var(--ink);font-size:1.12em;font-weight:500}.prose--sans{font-family:var(--f-ui)}.prose--serif{font-family:var(--f-read)}.comments{gap:14px;margin-block-start:40px;display:grid}.comment{border-radius:var(--r-2);background:var(--paper-2);gap:6px;padding:16px 18px;display:grid}.comment-h{font-size:var(--fs-0);color:var(--ink-3);justify-content:space-between;gap:10px;display:flex}.comment-h b{color:var(--ink)}.comment-b{font-size:var(--fs-1);line-height:1.6}.after-article{border-top:1px solid var(--line);gap:22px;margin-block-start:40px;padding-block-start:26px;display:grid}.after-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.tags{flex-wrap:wrap;gap:8px;display:flex}:root:not([data-motion=off]) .reveal{opacity:0;transition:opacity var(--t-3) var(--ease-out), transform var(--t-3) var(--ease-out);transition-delay:var(--d,0s);transform:translateY(18px)}:root:not([data-motion=off]) .reveal.is-in{opacity:1;transform:none}.stagger>*{--d:calc(var(--i,0) * 55ms)}.tilt{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform var(--t-3) var(--ease-spring)}.tilt .cover:after{content:"";background:radial-gradient(260px circle at var(--gx,50%) var(--gy,50%), #ffffff38, transparent 60%);opacity:var(--go,0);transition:opacity var(--t-2);pointer-events:none;position:absolute;inset:0}.magnetic{transition:transform var(--t-3) var(--ease-spring)}@view-transition{navigation:auto}::view-transition-old(root){animation-duration:.42s;animation-timing-function:var(--ease-out)}::view-transition-new(root){animation-duration:.42s;animation-timing-function:var(--ease-out)}::view-transition-old(root){animation-name:vt-out}::view-transition-new(root){animation-name:vt-in}@keyframes vt-out{to{opacity:0;transform:translateY(-6px)}}@keyframes vt-in{0%{opacity:0;transform:translateY(10px)}}::view-transition-group(cover){animation-duration:.55s;animation-timing-function:var(--ease-out)}::view-transition-group(title){animation-duration:.55s;animation-timing-function:var(--ease-out)}::view-transition-old(cover){mix-blend-mode:normal;object-fit:cover;height:100%;animation:none}::view-transition-new(cover){mix-blend-mode:normal;object-fit:cover;height:100%;animation:none}@keyframes breathe{0%,to{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@keyframes shimmer{to{background-position:200%}}.shimmer{background:linear-gradient(100deg, var(--dawn-1), var(--dawn-3), var(--dawn-1));color:#0000;background-size:200%;-webkit-background-clip:text;background-clip:text;animation:6s linear infinite shimmer}.words .word{animation:word-in .9s var(--ease-out) backwards;animation-delay:calc(var(--i) * 60ms + 80ms);display:inline-block}@keyframes word-in{0%{opacity:0;transform:translateY(.6em)rotate(1deg)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.words .word{opacity:1!important;animation:none!important;transform:none!important}.lightfield span{animation:none!important}::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}.cover .rays,.cover .sun-glow,.cover .spark{transform-box:view-box}.cover.is-live .rays,.cover--hero .rays,.card-a:hover .cover .rays{animation:80s linear infinite rays-turn}.cover.is-live .sun-glow,.cover--hero .sun-glow,.card-a:hover .cover .sun-glow{animation:5s ease-in-out infinite sun-breathe}.cover.is-live .spark,.cover--hero .spark,.card-a:hover .cover .spark{animation-name:twinkle;animation-timing-function:ease-in-out;animation-iteration-count:infinite}@keyframes rays-turn{to{transform:rotate(360deg)}}@keyframes sun-breathe{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.35)}}@keyframes twinkle{0%,to{opacity:.2}50%{opacity:1}}.cover.has-image img{object-fit:cover;width:100%;height:100%;transition:transform var(--t-4) var(--ease-out);display:block}.card-a:hover .cover.has-image img{transform:scale(1.04)}.card-t,.sindex b{background-image:linear-gradient(90deg, var(--dawn-2), var(--dawn-3));transition:background-size var(--t-3) var(--ease-out);background-position:100% 100%;background-repeat:no-repeat;background-size:0% 2px;padding-block-end:2px}.card-a:hover .card-t,.sindex a:hover b{background-size:100% 2px}.card--feature .card-t{background-image:none}.ticker{min-height:5.5em;position:relative}.ticker-item{opacity:0;transition:opacity var(--t-3) var(--ease-out), transform var(--t-3) var(--ease-out);pointer-events:none;position:absolute;inset:0;transform:translateY(8px)}.ticker-item.is-on{opacity:1;pointer-events:auto;transform:none}.ticker-dots{gap:6px;margin-block-start:10px;display:flex}.ticker-dots button{background:var(--line-2);width:8px;height:8px;transition:width var(--t-2), background-color var(--t-2);border-radius:50%}.ticker-dots button[aria-current=true]{background:var(--dawn-2);width:22px}.live{border-radius:var(--pill);background:var(--paper-2);font-size:var(--fs-0);align-items:center;gap:14px;padding:10px 16px;display:flex;overflow:hidden}.live-dot{background:var(--dawn-2);border-radius:50%;flex:none;width:9px;height:9px;animation:2s infinite live-pulse;box-shadow:0 0 #ff7a3d99}@keyframes live-pulse{to{box-shadow:0 0 0 12px #ff7a3d00}}.live-k{white-space:nowrap;font-weight:800}.live-track{flex:1;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.live-move{white-space:nowrap;gap:28px;animation:40s linear infinite marquee;display:inline-flex}.live-move:hover{animation-play-state:paused}.live-move a{color:var(--ink-2);font-weight:600}.live-move a:hover{color:var(--blue)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(50%)}}.num-v{font-variant-numeric:tabular-nums}.plx{will-change:transform}.lightfield{pointer-events:none;z-index:-1;opacity:.9;width:100%;height:100%;display:block;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 60%,#0000);mask-image:linear-gradient(#000 60%,#0000)}.has-light{isolation:isolate;position:relative}.cursor-light{pointer-events:none;z-index:1;opacity:0;mix-blend-mode:multiply;width:600px;height:600px;transition:opacity var(--t-3);will-change:transform;background:radial-gradient(closest-side,#ffb3472e,#ff7a3d0f 45%,#0000 70%);border-radius:50%;position:fixed;inset-block-start:0;inset-inline-start:0}:root[data-theme=dark] .cursor-light,:root:not([data-theme=light]) .cursor-light{mix-blend-mode:screen;background:radial-gradient(closest-side,#ffb34729,#ff7a3d0d 45%,#0000 70%)}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .cursor-light{mix-blend-mode:multiply}}.cursor-light.is-on{opacity:1}@media (hover:none),(prefers-reduced-motion:reduce){.cursor-light{display:none}}.marquee{padding-block:6px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.marquee-move{white-space:nowrap;animation:marquee-rtl var(--dur,40s) linear infinite;gap:10px;display:inline-flex}.marquee:hover .marquee-move{animation-play-state:paused}.marquee-item{border-radius:var(--pill);background:var(--paper-2);min-height:36px;font-size:var(--fs-0);color:var(--ink-2);transition:background-color var(--t-2), color var(--t-2);align-items:center;gap:7px;padding-inline:14px;font-weight:600;display:inline-flex}.marquee-item:hover{background:var(--light-soft);color:var(--light-2)}.marquee-item .ico{color:var(--light)}@keyframes marquee-rtl{0%{transform:translate(0)}to{transform:translate(50%)}}.btn,.chip,.ibtn{position:relative;overflow:hidden}.ripple{animation:ripple .65s var(--ease-out) forwards;pointer-events:none;background:radial-gradient(circle,#ffffff8c,#fff0 60%);border-radius:50%;position:absolute;transform:scale(0)}@keyframes ripple{to{opacity:0;transform:scale(1)}}.nav{position:relative}.nav-pill{border-radius:var(--pill);background:var(--paper-2);opacity:0;height:38px;transition:transform var(--t-3) var(--ease-spring), width var(--t-3) var(--ease-spring), opacity var(--t-2);pointer-events:none;z-index:0;margin-block-start:-19px;position:absolute;inset-block-start:50%;inset-inline-start:0}.nav ul{z-index:1;position:relative}.nav a[aria-current=page],.nav a:hover{background:0 0}.brand .mark{animation:6s ease-in-out infinite mark-breathe}@keyframes mark-breathe{0%,to{box-shadow:0 6px 18px -8px #ff7a3db3}50%{box-shadow:0 8px 26px -6px #ff7a3d}}.theme-btn .when-dark{display:none}:root[data-theme=dark] .theme-btn .when-dark,:root:not([data-theme=light]) .theme-btn .when-dark{display:block}:root[data-theme=dark] .theme-btn .when-light,:root:not([data-theme=light]) .theme-btn .when-light{display:none}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .theme-btn .when-light{display:block}:root:not([data-theme=dark]) .theme-btn .when-dark{display:none}}.theme-switch::view-transition-old(root){mix-blend-mode:normal;animation:none}.theme-switch::view-transition-new(root){mix-blend-mode:normal;animation:none}.theme-switch::view-transition-new(root){z-index:1}.theme-switch::view-transition-old(root){z-index:0}@property --aurora{syntax:"<angle>";inherits:false;initial-value:0deg}.card--feature .card-a:before{content:"";border-radius:inherit;background:conic-gradient(from var(--aurora), var(--dawn-1), var(--dawn-3), var(--blue), var(--dawn-1));-webkit-mask-composite:xor;opacity:.9;pointer-events:none;z-index:2;padding:2px;animation:9s linear infinite aurora;position:absolute;inset:-2px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes aurora{to{--aurora:360deg}}.card-a{position:relative}.card-a:after{content:"";border-radius:inherit;opacity:0;pointer-events:none;transition:opacity var(--t-2);z-index:3;background:linear-gradient(115deg,#0000 35%,#ffffff47 50%,#0000 65%) 120% 0/250% 100%;position:absolute;inset:0}.card-a:hover:after{opacity:1;animation:shine .9s var(--ease-out) forwards}@keyframes shine{to{background-position:-40% 0}}.card--feature .card-a:after{border-radius:var(--r-4)}.sindex .n{transition:color var(--t-2), text-shadow var(--t-2)}.sindex a:hover .n{color:var(--light-2);text-shadow:0 0 18px #ffb34799}.sindex .cover{transition:transform var(--t-3) var(--ease-spring)}.sindex a:hover .cover{transform:rotate(-4deg)scale(1.08)}.sticky-bar.is-done .sticky-m{color:var(--light-2);animation:pop .6s var(--ease-spring);font-weight:800}@keyframes pop{0%{opacity:0;transform:scale(.6)}}.sec-h h2{display:inline-block;position:relative}.sec-h h2:after{content:"";background:linear-gradient(90deg, var(--dawn-1), var(--dawn-3));width:0;height:3px;transition:width var(--t-4) var(--ease-out);border-radius:3px;position:absolute;inset-block-end:-6px;inset-inline-start:0}.sec-h.is-in h2:after,.sec-h:not(.reveal) h2:after{width:42px}@media (prefers-reduced-motion:reduce){.lightfield,.marquee-move,.brand .mark,.card--feature .card-a:before{animation:none!important}}@media print{:root{--paper:#fff;--ink:#000}.top,.tabbar,.foot,.lightfield,.rtools,.rpanel,.a11y,.a11y-panel,.progress,.share,.after-article,.adjacent,.article-toc,.article-side,.toasts,.skip,.comments,.phead-act,.shelf-sec{display:none!important}body{color:#000;background:#fff;font-size:12pt}.prose{max-width:none;font-size:12.5pt;line-height:1.6}.prose a{color:#000;text-decoration:none}.prose a[href^=http]:after{content:" (" attr(href) ")";color:#555;font-size:.8em}.cover{display:none}.phead{padding-block:0 12pt}.h-1{font-size:24pt}@page{margin:2cm}}
