@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.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:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_e799d87a-module__u8MhCG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_e799d87a-module__u8MhCG__variable{--font-geist:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.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:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_42eec60-module__Gb1_vG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_42eec60-module__Gb1_vG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/20aee433927f7d4b-s.3x137p1ifayze.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/256e1f7f180674ba-s.1x971o6gwfy6w.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/be3bf58b83159894-s.1ri8jgkzoo1l-.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:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/753b6407f468151f-s.1veyi_qwtij86.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/292081311a6a8abc-s.1t-2a-g4m3ypx.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:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/68d403cf9f2c68c5-s.p.20at88_q9f_kt.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:"Source Serif 4 Fallback";src:local(Times New Roman);ascent-override:87.87%;descent-override:28.41%;line-gap-override:0.0%;size-adjust:117.91%}.source_serif_4_880bd459-module__KbmBwW__className{font-family:"Source Serif 4","Source Serif 4 Fallback";font-style:normal}.source_serif_4_880bd459-module__KbmBwW__variable{--font-source-serif:"Source Serif 4", "Source Serif 4 Fallback"}
:root{--bone:#f4f3ee;--bone-2:#ebeae3;--bone-3:#dedcd2;--graphite:#111110;--graphite-2:#1a1a18;--graphite-3:#262624;--ink:#0a0a08;--ink-2:#2a2a26;--ink-3:#6e6c63;--ink-4:#a3a195;--line:#d6d4c8;--line-2:#c0bdb0;--red:#e8362a;--red-bg:#e8362a14;--blue:#2960ec;--blue-bg:#2960ec14;--signal:#0f8a4a;--amber:#cc7a00;--sans:var(--font-geist), "Geist", "Inter", system-ui, sans-serif;--mono:var(--font-geist-mono), "Geist Mono", "JetBrains Mono", ui-monospace, monospace;--serif:var(--font-source-serif), "Source Serif 4", Georgia, serif}.site-shell,.site-shell *{box-sizing:border-box}.site-shell{background:var(--bone);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-variant-numeric:tabular-nums}.site-shell h1,.site-shell h2,.site-shell h3,.site-shell h4,.site-shell p{margin:0}.sheet{background:var(--bone);max-width:1440px;margin:32px auto;position:relative;box-shadow:0 40px 120px #0006}.site-shell{background:var(--bone);width:100%;min-height:100vh}.site-main{max-width:1320px;margin:0 auto;padding:0 64px}@media (max-width:900px){.site-main{padding:0 24px}}.site-nav{z-index:50;-webkit-backdrop-filter:saturate(140%)blur(8px);border-bottom:1px solid var(--line);background:#f4f3eeeb;position:sticky;top:0}.site-nav-inner{justify-content:space-between;align-items:center;gap:32px;max-width:1320px;margin:0 auto;padding:14px 64px;display:flex}@media (max-width:900px){.site-nav-inner{padding:14px 24px}}.site-nav-links{align-items:center;gap:4px;display:flex}.site-nav a.nav-link{font-family:var(--mono);color:var(--ink-3);letter-spacing:0;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:500;text-decoration:none}.site-nav a.nav-link:hover{color:var(--ink);background:#0000000a}.site-nav a.nav-link.active{color:var(--ink)}.site-nav a.nav-link.active .ndot{background:var(--red);vertical-align:middle;border-radius:50%;width:5px;height:5px;margin-right:6px;display:inline-block;position:relative;top:-1px}.site-nav .nav-cta{font-family:var(--mono);background:var(--ink);color:var(--bone);border:1px solid var(--ink);white-space:nowrap;border-radius:6px;padding:7px 14px;font-size:12px;font-weight:500;text-decoration:none}.site-nav .nav-cta:hover{background:var(--graphite-2)}.nav-burger{border:1px solid var(--line-2);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:none}.nav-burger span{background:var(--ink);width:16px;height:1.5px;display:block;position:relative}.nav-burger span:before,.nav-burger span:after{content:"";background:var(--ink);width:16px;height:1.5px;position:absolute;left:0}.nav-burger span:before{top:-5px}.nav-burger span:after{top:5px}.nav-burger.open span{background:0 0}.nav-burger.open span:before{top:0;transform:rotate(45deg)}.nav-burger.open span:after{top:0;transform:rotate(-45deg)}.nav-drawer{border-top:1px solid var(--line);background:var(--bone);padding:8px 24px 16px;display:none}.nav-drawer a.nav-link{color:var(--ink);border-bottom:1px solid var(--line);padding:12px 4px;font-size:14px;display:block}.nav-drawer a.nav-link:last-child{border-bottom:none}@media (max-width:720px){.site-nav-links{display:none}.nav-burger{display:inline-flex}.nav-drawer.open{display:block}.site-nav-inner{gap:12px}}.site-footer{border-top:1px solid var(--line);background:var(--bone);padding:64px 64px 40px}.site-footer-inner{max-width:1320px;margin:0 auto}@media (max-width:900px){.site-footer{padding:48px 24px 32px}}section.site-section{border-bottom:1px solid var(--line);padding:96px 0}section.site-section:last-of-type{border-bottom:none}section.site-section.compact{padding:56px 0}section.site-section.dark{background:var(--graphite);color:var(--bone);border-color:var(--graphite-3)}section.site-section.dark .label,section.site-section.dark .small{color:#f4f3ee8c}section.site-section.dark .body{color:#f4f3eec7}section.site-section.dark .h-section,section.site-section.dark .h-block,section.site-section.dark .display{color:var(--bone)}@media (max-width:900px){section.site-section{padding:64px 0}}@media (max-width:720px){section.site-section{padding:48px 0}section.site-section.compact{padding:32px 0}.site-footer{padding:40px 24px 24px}}.harness-toc{z-index:40;pointer-events:none;width:140px;position:fixed;top:96px;left:max(16px,50vw - 820px)}.harness-toc-inner{pointer-events:auto}.harness-toc-label{font-family:var(--mono);color:var(--ink-4);text-transform:lowercase;letter-spacing:0;border-bottom:1px solid var(--line);margin-bottom:12px;padding-bottom:8px;font-size:10px;font-weight:500}.harness-toc-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.harness-toc-link{font-family:var(--mono);color:var(--ink-3);align-items:center;gap:10px;padding:6px 0;font-size:11px;font-weight:500;text-decoration:none;transition:color .12s;display:flex}.harness-toc-link:hover,.harness-toc-link.active{color:var(--ink)}.harness-toc-bullet{background:var(--line-2);border-radius:50%;flex-shrink:0;width:4px;height:4px;transition:background .12s,transform .12s}.harness-toc-link.active .harness-toc-bullet{background:var(--red);transform:scale(1.4)}@media (max-width:1500px){.harness-toc{display:none}}@keyframes danielle-pulse{0%{box-shadow:0 0 #e8362a8c}70%{box-shadow:0 0 0 6px #e8362a00}to{box-shadow:0 0 #e8362a00}}.pulse-dot{border-radius:50%;animation:2.2s ease-out infinite danielle-pulse}@media (prefers-reduced-motion:reduce){.pulse-dot{animation:none}}.site-nav a.nav-link.active .ndot{animation:2.2s ease-out infinite danielle-pulse}@media (prefers-reduced-motion:reduce){.site-nav a.nav-link.active .ndot{animation:none}}.chrome-top,.chrome-bottom{font-family:var(--mono);letter-spacing:0;color:var(--ink-3);justify-content:space-between;align-items:center;font-size:11px;display:flex;position:absolute;left:64px;right:64px}.chrome-top{top:32px}.chrome-bottom{bottom:32px}.chrome-top:after,.chrome-bottom:after{content:"";background:var(--line);height:1px;position:absolute;left:0;right:0}.chrome-top:after{bottom:-14px}.chrome-bottom:after{top:-14px}.chrome-top .l,.chrome-bottom .l{align-items:center;gap:16px;display:flex}.chrome-top .dot,.chrome-bottom .dot{background:var(--signal);border-radius:50%;width:6px;height:6px}section.spec{border-bottom:1px solid var(--line);padding:112px 64px 128px;position:relative}section.spec:last-child{border-bottom:none}.display{font-family:var(--sans);letter-spacing:-.04em;color:var(--ink);font-feature-settings:"ss01", "ss03", "cv11";font-weight:600;line-height:.9}.display em{font-family:var(--serif);letter-spacing:-.02em;color:var(--ink-2);font-style:italic;font-weight:400}.h-section{font-family:var(--sans);letter-spacing:-.045em;color:var(--ink);font-feature-settings:"ss01", "ss03";font-size:88px;font-weight:600;line-height:.92}.h-section em{font-family:var(--serif);color:var(--ink-2);letter-spacing:-.02em;font-style:italic;font-weight:400}@media (max-width:720px){.display,.h-section{letter-spacing:-.03em;line-height:1.02;font-size:clamp(36px,10vw,56px)!important}.h-block{line-height:1.2;font-size:18px!important}}@media (min-width:721px) and (max-width:1024px){.display{line-height:.95;font-size:clamp(56px,8.5vw,96px)!important}.h-section{line-height:.95;font-size:clamp(56px,8.5vw,88px)!important}}.h-block{font-family:var(--sans);letter-spacing:-.02em;color:var(--ink);font-size:22px;font-weight:600;line-height:1.2}.body{font-family:var(--sans);color:var(--ink-2);max-width:60ch;font-size:15px;font-weight:400;line-height:1.55}.small{font-family:var(--sans);color:var(--ink-3);font-size:12px;line-height:1.45}.label{font-family:var(--mono);letter-spacing:0;color:var(--ink-3);font-size:11px;font-weight:500}.label .b{color:var(--ink)}.eyebrow{font-family:var(--mono);color:var(--ink-3);align-items:center;gap:10px;font-size:11px;font-weight:500;display:inline-flex}.eyebrow .dot{background:var(--red);border-radius:50%;width:6px;height:6px}.eyebrow .n{color:var(--ink)}.eyebrow .sep{color:var(--line-2)}.ins{color:var(--blue);text-decoration:underline;-webkit-text-decoration-color:var(--blue);text-decoration-color:var(--blue);text-underline-offset:3px;text-decoration-thickness:1.5px}.del{color:var(--red);text-decoration:line-through;-webkit-text-decoration-color:var(--red);text-decoration-color:var(--red);text-decoration-thickness:1.5px}.ins-bg{background:var(--blue-bg);border-radius:2px;padding:1px 4px}.del-bg{background:var(--red-bg);border-radius:2px;padding:1px 4px}.grid-12{grid-template-columns:repeat(12,1fr);gap:24px;display:grid}.col-2{grid-column:span 2}.col-3{grid-column:span 3}.col-4{grid-column:span 4}.col-5{grid-column:span 5}.col-6{grid-column:span 6}.col-7{grid-column:span 7}.col-8{grid-column:span 8}.col-12{grid-column:span 12}.grid-12>*{min-width:0}@media (max-width:1024px){.col-2{grid-column:span 4}.col-3,.col-4{grid-column:span 6}.col-5,.col-7,.col-8{grid-column:span 12}}@media (max-width:720px){.grid-12{gap:16px}.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-12{grid-column:span 12}}.chip{border:1px solid var(--line-2);font-family:var(--mono);color:var(--ink-2);background:var(--bone);border-radius:6px;align-items:center;gap:8px;padding:5px 10px 5px 9px;font-size:11px;font-weight:500;display:inline-flex}.chip .sdot{background:var(--signal);border-radius:50%;width:6px;height:6px}.chip.blue{color:var(--blue);background:var(--blue-bg);border-color:#2960ec59}.chip.blue .sdot{background:var(--blue)}.chip.red{color:var(--red);background:var(--red-bg);border-color:#e8362a59}.chip.red .sdot{background:var(--red)}.chip.amber{color:var(--amber);background:#cc7a0014;border-color:#cc7a0059}.chip.amber .sdot{background:var(--amber)}.keycap{border:1px solid var(--line-2);min-width:28px;height:28px;font-family:var(--mono);color:var(--ink);background:#fff;border-bottom-width:2px;border-radius:6px;justify-content:center;align-items:center;padding:0 8px;font-size:12px;font-weight:600;display:inline-flex;box-shadow:0 1px #0000000a}.panel{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.panel.flat{background:var(--bone-2)}.panel-head{border-bottom:1px solid var(--line);background:var(--bone-2);font-family:var(--mono);color:var(--ink-3);justify-content:space-between;align-items:center;padding:10px 14px;font-size:11px;font-weight:500;display:flex}.panel-head .h-lights{gap:6px;display:flex}.panel-head .h-lights span{background:var(--line-2);border-radius:50%;width:8px;height:8px}.panel-body{padding:18px 20px}.diff{border:1px solid var(--line);font-family:var(--mono);color:var(--ink);background:#fff;border-radius:8px;font-size:13px;line-height:1.6;overflow:hidden}.diff-head{border-bottom:1px solid var(--line);background:var(--bone-2);color:var(--ink-3);justify-content:space-between;align-items:center;padding:10px 14px;font-size:11px;font-weight:500;display:flex}.diff-head .file{color:var(--ink)}.diff-row{grid-template-columns:44px 44px 18px 1fr;align-items:stretch;display:grid}.diff-row .gut,.diff-row .gut2{background:var(--bone-2);color:var(--ink-4);text-align:right;border-right:1px solid var(--line);-webkit-user-select:none;user-select:none;padding:4px 8px;font-size:11px}.diff-row .gut2{border-right:1px solid var(--line)}.diff-row .mark{text-align:center;color:var(--ink-4);padding-top:4px;font-weight:600}.diff-row .code{white-space:pre-wrap;padding:4px 14px}.diff-row.add{background:#0f8a4a0f}.diff-row.add .mark{color:var(--signal)}.diff-row.add .code{color:#0b6c3a}.diff-row.del{background:#e8362a0f}.diff-row.del .mark{color:var(--red)}.diff-row.del .code{color:#a51e15;text-decoration:line-through;text-decoration-thickness:1px}.diff-row.ctx .code{color:var(--ink-2)}.diff-row .gut.empty{color:#0000}.diff-meta{border-top:1px solid var(--line);background:var(--bone-2);color:var(--ink-3);grid-template-columns:88px 1fr;align-items:center;padding:10px 14px;font-size:11px;display:grid}.diff-meta .k{color:var(--ink-4)}@media (max-width:720px){.diff{-webkit-overflow-scrolling:touch;font-size:11px;overflow-x:auto}.diff-row{grid-template-columns:32px 32px 16px minmax(420px,1fr)}.diff-row .gut,.diff-row .gut2{padding:4px 6px;font-size:10px}.diff-row .code{padding:4px 10px}.diff-head,.diff-meta{font-size:10px}}.wm{font-family:var(--sans);letter-spacing:-.045em;color:var(--ink);font-weight:600;line-height:1}.wm .dot{color:var(--red)}.wm.mono{font-family:var(--mono);letter-spacing:-.04em;font-weight:600}.wm.dark{color:var(--bone)}.wm.dark .dot{color:#ff5a4d}.cover{border-bottom:1px solid var(--line);padding:96px 64px;position:relative}.cover-grid{grid-template-columns:1.2fr 1fr;align-items:end;gap:64px;display:grid}.cover-grid>*{min-width:0}.swatch{border:1px solid var(--line);background:#fff;border-radius:6px;flex-direction:column;display:flex;overflow:hidden}.swatch .well{border-bottom:1px solid var(--line);height:140px;position:relative}.swatch .meta{padding:12px 14px}.swatch .name{font-family:var(--sans);color:var(--ink);letter-spacing:-.01em;font-size:14px;font-weight:600}.swatch .row{font-family:var(--mono);justify-content:space-between;margin-top:6px;font-size:11px;display:flex}.swatch .hex{color:var(--ink-3)}.swatch .tok{color:var(--ink-4)}.swatch .role{font-family:var(--sans);color:var(--ink-3);margin-top:8px;font-size:12px;line-height:1.4}.wm-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.wm-tile{aspect-ratio:4/3;border:1px solid var(--line);border-radius:6px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.wm-tile.bone{background:var(--bone)}.wm-tile.bone-2{background:var(--bone-2)}.wm-tile.graphite{background:var(--graphite)}.wm-tile.bw{background:#fff}.wm-tile .lbl{font-family:var(--mono);color:var(--ink-4);font-size:10px;position:absolute;bottom:12px;left:12px}.wm-tile.graphite .lbl{color:#f4f3ee8c}.specimen-row{border-bottom:1px solid var(--line);grid-template-columns:180px 1fr;align-items:baseline;gap:24px;padding:24px 0;display:grid}.specimen-row:last-child{border-bottom:none}.specimen-row .tag{flex-direction:column;gap:4px;display:flex}.specimen-row .tag .nm{font-family:var(--mono);color:var(--ink);font-size:11px;font-weight:500}.specimen-row .tag .sp{font-family:var(--mono);color:var(--ink-4);font-size:10px}.scale{background:var(--bone-2);border:1px solid var(--line);border-radius:6px;gap:4px;padding:16px;display:grid}.scale-row{font-family:var(--mono);grid-template-columns:56px 56px 1fr;align-items:center;gap:12px;font-size:11px;display:grid}.scale-row .nm{color:var(--ink);font-weight:500}.scale-row .v{color:var(--ink-3)}.scale-row .bar{background:var(--ink);border-radius:2px;height:12px}.dxdt{grid-template-columns:1fr 1fr;gap:16px;display:grid}.dxdt .panel{border:1px solid var(--line);background:#fff;border-top-width:3px;border-radius:8px;padding:20px 24px}.dxdt .panel.do{border-top-color:var(--signal)}.dxdt .panel.dont{border-top-color:var(--red)}.dxdt .head{font-family:var(--mono);margin-bottom:12px;font-size:11px;font-weight:600}.dxdt .do .head{color:var(--signal)}.dxdt .dont .head{color:var(--red)}.dxdt ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.dxdt li{font-family:var(--sans);color:var(--ink-2);padding-left:20px;font-size:14px;line-height:1.45;position:relative}.dxdt .do li:before{content:"+";color:var(--signal);font-family:var(--mono);font-weight:600;position:absolute;top:0;left:0}.dxdt .dont li:before{content:"−";color:var(--red);font-family:var(--mono);font-weight:700;position:absolute;top:0;left:0}.stat{border:1px solid var(--line);background:#fff;border-radius:8px;padding:20px 24px}.stat .v{font-family:var(--sans);letter-spacing:-.04em;color:var(--ink);font-variant-numeric:tabular-nums;font-size:64px;font-weight:600;line-height:1}.stat .v .u{color:var(--ink-3);font-size:32px}.stat .k{margin-top:14px}.ref{border-bottom:1px solid var(--line);grid-template-columns:160px 1fr 320px;align-items:center;gap:24px;padding:20px 24px;display:grid}.ref:last-child{border-bottom:none}.ref .rk .nm{font-family:var(--sans);color:var(--ink);font-size:16px;font-weight:600}.ref .rk .ds{font-family:var(--sans);color:var(--ink-3);margin-top:4px;font-size:12px;line-height:1.4}.ref .rs{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ref .rc{font-family:var(--mono);color:var(--ink-3);background:var(--bone);border:1px solid var(--line);white-space:pre;border-radius:6px;padding:10px 12px;font-size:11px;line-height:1.55;overflow-x:auto}.construct{border:1px solid var(--line);background:#fff;border-radius:8px;padding:64px 48px;position:relative;overflow:hidden}.construct .bg{background-image:linear-gradient(90deg,#2960ec12 1px,#0000 1px),linear-gradient(#2960ec12 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0}.construct .body-area{justify-content:center;display:flex;position:relative}.toc{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:0 32px;margin-top:56px;display:grid}.toc a{border-bottom:1px solid var(--line);color:var(--ink-2);font-family:var(--mono);grid-template-columns:32px 1fr 64px;align-items:baseline;padding:14px 0;font-size:12px;font-weight:500;text-decoration:none;display:grid}.toc a .n{color:var(--red)}.toc a .t{color:var(--ink);letter-spacing:-.01em}.toc a .p{color:var(--ink-4);text-align:right}.toc a:hover{background:#00000005}.reverse{background:var(--graphite);color:var(--bone);border:1px solid var(--graphite-3);border-radius:8px;padding:56px 48px}.reverse .label{color:#f4f3ee80}.reverse h3{color:var(--bone)}.gridvis{border:1px solid var(--line);background:#fff;border-radius:8px;height:320px;position:relative;overflow:hidden}.gridvis .cols{grid-template-columns:repeat(12,1fr);gap:24px;display:grid;position:absolute;inset:24px 64px}.gridvis .cols>div{background:#2960ec0f;border-left:1px solid #2960ec2e;border-right:1px solid #2960ec2e}.gridvis .ch-t,.gridvis .ch-b{font-family:var(--mono);color:var(--ink-4);justify-content:space-between;font-size:9px;display:flex;position:absolute;left:64px;right:64px}.gridvis .ch-t{top:8px}.gridvis .ch-b{bottom:8px}.gridvis .rule{background:var(--line);height:1px;position:absolute;left:64px;right:64px}.gridvis .rule.t{top:18px}.gridvis .rule.b{bottom:18px}.voice{grid-template-columns:1fr 1fr 1fr;gap:12px;display:grid}.voice .v-tile{border:1px solid var(--line);border-top:3px solid var(--ink-2);background:#fff;border-radius:8px;min-height:180px;padding:20px 22px}.voice .v-head{font-family:var(--mono);margin-bottom:10px;font-size:11px;font-weight:600}.voice .v-quote{font-family:var(--sans);color:var(--ink);letter-spacing:-.02em;font-size:20px;font-weight:500;line-height:1.25}.voice .v-meta{font-family:var(--sans);color:var(--ink-3);margin-top:14px;font-size:12px}.voice .v-tile.good{border-top-color:var(--signal)}.voice .v-tile.good .v-head{color:var(--signal)}.voice .v-tile.bad{border-top-color:var(--red)}.voice .v-tile.bad .v-head{color:var(--red)}.voice .v-tile.bad .v-quote{color:var(--red);text-decoration:line-through;text-decoration-thickness:1px}
