@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/asset?u=https%3A%2F%2Fpackvium.com%2F_next%2Fstatic%2Fmedia%2F46a9e2f250689b4a-s.0-dom-5bn10r2.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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/asset?u=https%3A%2F%2Fpackvium.com%2F_next%2Fstatic%2Fmedia%2F76b70a1dbe058eb5-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/asset?u=https%3A%2F%2Fpackvium.com%2F_next%2Fstatic%2Fmedia%2F2fb76073e23fd9e4-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/asset?u=https%3A%2F%2Fpackvium.com%2F_next%2Fstatic%2Fmedia%2F6131cbbf5549afa2-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/asset?u=https%3A%2F%2Fpackvium.com%2F_next%2Fstatic%2Fmedia%2F45462fd7b7c12654-s.0k62hbripvv8p.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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/asset?u=https%3A%2F%2Fpackvium.com%2F_next%2Fstatic%2Fmedia%2Fba63f6a0e436df8e-s.3-6t-g6q0vh0a.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/asset?u=https%3A%2F%2Fpackvium.com%2F_next%2Fstatic%2Fmedia%2F07c7676b89ed2778-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.jtyeTG_className{font-family:Inter,Inter Fallback;font-style:normal}.jtyeTG_variable{--font-sans:"Inter", "Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/asset?u=https%3A%2F%2Fpackvium.com%2F_next%2Fstatic%2Fmedia%2F258bd0ab5fdd762a-s.2f7nqdagzwx2-.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/asset?u=https%3A%2F%2Fpackvium.com%2F_next%2Fstatic%2Fmedia%2F99a2019bdfa8519b-s.176arc174-8zp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/asset?u=https%3A%2F%2Fpackvium.com%2F_next%2Fstatic%2Fmedia%2F44e0cb21b0d052b7-s.0bp8oijd_gu96.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/asset?u=https%3A%2F%2Fpackvium.com%2F_next%2Fstatic%2Fmedia%2Ff9cd5a77d065db98-s.1fby2rem9ngyr.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/asset?u=https%3A%2F%2Fpackvium.com%2F_next%2Fstatic%2Fmedia%2F954d21e04331b2ae-s.0vfdmo25voy_0.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/asset?u=https%3A%2F%2Fpackvium.com%2F_next%2Fstatic%2Fmedia%2F53897e768d329f66-s.p.3t6q91iet4nsy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.kJDCNG_className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.kJDCNG_variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--ink-1:#f4f4f1;--ink-2:#d6dbdf;--ink-3:#b3bbc1;--ink-4:#8e969d;--document-paper:#fff;--line-1:#22282d;--line-2:#2f363c;--line-3:#414951;--surface-0:#090b0d;--surface-1:#0e1114;--surface-2:#12161a;--surface-3:#191d21;--accent:#e9a23b;--accent-strong:#f0b054;--accent-line:#e9a23b61;--ok:#55c989;--bad:#f06464;--info:#62b9d8;--bad-on-tint:#f06464;--code-keyword:var(--accent);--code-string:var(--ok);--code-number:var(--info);--code-entity:var(--ink-1);--code-comment:var(--ink-4);--code-punct:var(--ink-3);--invert-surface:#f2f2ef;--invert-surface-hover:#e2e4e1;--invert-ink:#101214;--grid-line:#ffffff0b;--fig-fill:#d69a5452;--fig-line:#9b743b;--fig-solid:#b67b3f;--fig-solid-line:#d09a5c;--brand:#e9a23b;--brand-on:#101214;--bg:#0b0d0f;--text-2xs:11px;--text-xs:12px;--text-sm:14px;--text-md:15px;--text-lg:17px;--text-xl:clamp(18px, 1.35vw, 20px);--head-2xs:clamp(18px, 1.5vw, 21px);--head-xs:clamp(20px, 1.8vw, 24px);--head-sm:clamp(21px, 1.9vw, 26px);--head-md:clamp(23px, 2.1vw, 30px);--head-lg:clamp(26px, 2.7vw, 36px);--head-xl:clamp(29px, 3.3vw, 44px);--head-2xl:clamp(32px, 3.9vw, 52px);--head-3xl:clamp(34px, 4.4vw, 60px);--display:clamp(40px, 5.4vw, 76px);--lh-body:1.65;--lh-dense:1.5;--lh-display:1.02;--lh-head:1.14;--ls-display:-.03em;--ls-head:-.022em;--ls-tight:-.015em;--ls-label:.1em;--ls-label-soft:.06em;--weight-head:580;--measure:53ch;--measure-lead:46ch;--mono:var(--font-mono), "SFMono-Regular", Consolas, "Liberation Mono", monospace;--sans:var(--font-sans), Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}.tone-dark{--ink-1:#f4f4f1;--ink-2:#d6dbdf;--ink-3:#b3bbc1;--ink-4:#8e969d;--line-1:#22282d;--line-2:#2f363c;--line-3:#414951;--surface-0:#090b0d;--surface-1:#0e1114;--surface-2:#12161a;--surface-3:#191d21;--accent:#e9a23b;--accent-strong:#f0b054;--accent-line:#e9a23b61;--ok:#55c989;--bad:#f06464;--info:#62b9d8;--bad-on-tint:#f06464;--code-keyword:var(--accent);--code-string:var(--ok);--code-number:var(--info);--code-entity:var(--ink-1);--code-comment:var(--ink-4);--code-punct:var(--ink-3);--invert-surface:#f2f2ef;--invert-surface-hover:#e2e4e1;--invert-ink:#101214;--grid-line:#ffffff0b;--fig-fill:#d69a5452;--fig-line:#9b743b;--fig-solid:#b67b3f;--fig-solid-line:#d09a5c;color:var(--ink-2);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.tone-paper{--ink-1:#16181a;--ink-2:#3c4042;--ink-3:#565a5c;--ink-4:#5e6264;--line-1:#cfccc4;--line-2:#bcb9b1;--line-3:#a9a69e;--surface-0:#e6e3dc;--surface-1:#ece9e2;--surface-2:#f2efe9;--surface-3:#f8f5ef;--accent:#8a5a12;--accent-strong:#7d5210;--accent-line:#8a5a1266;--ok:#276b45;--bad:#a83c36;--info:#2f6b80;--bad-on-tint:#9e352f;--code-keyword:var(--accent);--code-string:var(--ok);--code-number:var(--info);--code-entity:var(--ink-1);--code-comment:var(--ink-4);--code-punct:var(--ink-3);--invert-surface:#16181a;--invert-surface-hover:#2a2d30;--invert-ink:#f6f4ef;--grid-line:#d5d2ca;--fig-fill:#e9a23b8c;--fig-line:#8b5e1e;--fig-solid:#c58c50;--fig-solid-line:#805526;color:var(--ink-2);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (max-width:640px){:root{--text-2xs:12px;--text-xs:13px}}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}html[data-boot]{scroll-behavior:auto}body{font-family:var(--sans);background:var(--bg);color:var(--ink-1);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}@media (pointer:coarse){input,select,textarea{font-size:16px}input:not([type=checkbox]):not([type=radio]),select,textarea,button{min-height:44px}}small{font-size:var(--text-2xs)}button{color:inherit}::selection{background:var(--brand);color:var(--ink-1)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.skip-link{z-index:300;background:var(--invert-surface);color:var(--invert-ink);border:2px solid var(--brand);font:var(--text-2xs) var(--mono);padding:10px 14px;position:fixed;top:10px;left:14px;transform:translateY(-160%)}.skip-link:focus{transform:none}.hero-actions a,.rule-index a,.principles-actions a,.runtime-matrix a,.prose-panel a,.source-note a,.evidence-links a,.tag-list a,.docs-rail-block a,.health-list a,.detail-index-grid code+a{align-items:center;min-height:24px;display:inline-flex}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px}
.section-opener{margin:0 0 60px}.section-opener h2{font-weight:var(--weight-head);text-wrap:balance;margin:0}.section-opener .eyebrow{margin:0}.section-opener .section-deck{color:var(--ink-3);font-size:var(--text-xl);line-height:var(--lh-body);margin:0}.section-opener--display{grid-template-columns:1.35fr .65fr;align-items:start;gap:26px clamp(32px,7vw,96px);display:grid}.section-opener--display .section-deck{max-width:var(--measure-lead);padding-top:.3em}.section-opener--display .eyebrow{grid-column:1/-1}.section-opener--display h2{font-size:var(--head-3xl);line-height:var(--lh-display);letter-spacing:var(--ls-display);max-width:17ch}.section-opener--rule{border-top:1px solid var(--line-2);gap:14px;padding-top:18px;display:grid}.section-opener--rule h2{font-size:var(--head-xl);line-height:var(--lh-head);letter-spacing:var(--ls-head);max-width:24ch}.section-opener--rule .section-deck{max-width:var(--measure-lead)}.section-opener--aside{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:18px clamp(24px,4vw,60px);display:grid}.section-opener--aside .eyebrow{grid-column:1/-1}.section-opener--aside h2{font-size:var(--head-lg);line-height:var(--lh-head);letter-spacing:var(--ls-head);max-width:20ch}.section-opener--aside .section-deck{border-left:1px solid var(--line-2);max-width:var(--measure-lead);padding-left:clamp(16px,2vw,28px)}@media (max-width:900px){.section-opener{margin-bottom:40px}.section-opener--display,.section-opener--aside{grid-template-columns:minmax(0,1fr);row-gap:20px}.section-opener--display .section-deck{padding-top:0}.section-opener--display h2,.section-opener--aside h2{max-width:none}.section-opener--aside .section-deck{border-left:0;padding-left:0}}.code-block{-webkit-overflow-scrolling:touch;tab-size:2;margin:0;overflow-x:auto}.code-block code{font:var(--text-sm) / 1.75 var(--mono);color:var(--ink-2);white-space:pre}.code-block:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.tok-comment{color:var(--code-comment)}.tok-string{color:var(--code-string)}.tok-number{color:var(--code-number)}.tok-keyword{color:var(--code-keyword)}.tok-entity{color:var(--code-entity)}.tok-punct{color:var(--code-punct)}.state{color:var(--ink-2);font-style:normal;font-weight:500}.state[data-tone=ok]{color:var(--ok)}.state[data-tone=warn]{color:var(--accent)}.state[data-tone=bad]{color:var(--bad)}.state[data-tone=info]{color:var(--info)}.state[data-tone=neutral]{color:var(--ink-4)}.state[data-proof]{border:1px solid;padding:1px 7px;display:inline-block}.state[data-proof=proven]{background:color-mix(in srgb, currentColor 7%, transparent);border-width:2px;padding:0 6px}.state[data-proof=inferred]{border-style:dashed}.state[data-proof=unknown_due_to_limit]{border-color:#0000}
:root{--icon-external:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 11.5 11.5 4.5M6.5 4.5h5v5'/%3E%3C/svg%3E");--icon-forward:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.75 8h10.5M9 3.75 13.25 8 9 12.25'/%3E%3C/svg%3E");--icon-back:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13.25 8H2.75M7 3.75 2.75 8 7 12.25'/%3E%3C/svg%3E");--icon-replay:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 8a5 5 0 1 1-1.6-3.65M13.25 3v3.5h-3.5'/%3E%3C/svg%3E");--icon-upright:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 13.25V6.4M5 9.4 8 6.4l3 3M4 2.75h8'/%3E%3C/svg%3E")}.icon,.link-out:after,.nav-cta:before,.portal-go:after,.footer-meta a:after,.mobile-menu-foot a:after,.evidence-links a:after,.tag-list a:after,.detail-index-grid>a>b:after,.capability-copy b:after,.fixture-bottom span:last-child:after,.prose-panel a:after,.content-callout a:after,.source-note a:after,.docs-onramp a:after,.plugin-detail-actions a:after,.install-actions a:after,.principles-actions a:after,.registry-card:after{content:"";width:1em;height:1em;-webkit-mask:var(--icon-external) center / contain no-repeat;-webkit-mask:var(--icon-external) center / contain no-repeat;mask:var(--icon-external) center / contain no-repeat;background:currentColor;flex:none;display:inline-block}.link-out:after,.portal-go:after,.footer-meta a:after,.mobile-menu-foot a:after,.evidence-links a:after,.tag-list a:after,.detail-index-grid>a>b:after,.capability-copy b:after,.fixture-bottom span:last-child:after,.prose-panel a:after,.content-callout a:after,.source-note a:after,.docs-onramp a:after,.plugin-detail-actions a:after,.install-actions a:after,.principles-actions a:after{vertical-align:-.11em;margin-left:.42em}.icon-back{-webkit-mask-image:var(--icon-back);-webkit-mask-image:var(--icon-back);mask-image:var(--icon-back)}.icon-forward{-webkit-mask-image:var(--icon-forward);-webkit-mask-image:var(--icon-forward);mask-image:var(--icon-forward)}.icon-replay{-webkit-mask-image:var(--icon-replay);-webkit-mask-image:var(--icon-replay);mask-image:var(--icon-replay)}.icon-upright{-webkit-mask-image:var(--icon-upright);-webkit-mask-image:var(--icon-upright);mask-image:var(--icon-upright)}.action-button{gap:.5em}.nav-cta:before{vertical-align:-.11em;order:2;margin-left:.42em}.nav-cta{align-items:center;display:inline-flex}
.site-nav{z-index:100;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);height:72px;font-size:var(--text-xs);letter-spacing:var(--ls-label-soft);text-transform:uppercase;background:#0b0d0fc7;border-bottom:1px solid #ffffff1a;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 34px;display:grid;position:fixed;top:0;left:0;right:0}.site-nav nav{color:var(--ink-2);gap:28px;display:flex}.site-nav nav a:hover{color:#fff}.brand{justify-self:start;align-items:center;gap:12px;min-height:24px;font-weight:700;display:inline-flex}.nav-cta{color:var(--accent);justify-self:end}.logo-mark{width:24px;height:24px;color:var(--accent);flex:none;display:block;overflow:visible}.inner-page .site-nav{color:var(--ink-1)}@media (max-width:980px){.site-nav{grid-template-columns:1fr auto;padding:0 18px}.site-nav nav{display:none}.nav-cta{font-size:var(--text-2xs)}}@media (max-width:620px){.site-nav{height:62px}.brand span:last-child{font-size:var(--text-2xs)}.nav-cta{font-size:0}.nav-cta:after{content:"OPEN";font-size:var(--text-2xs)}.nav-cta:before{font-size:var(--text-2xs)}}.site-nav{grid-template-columns:auto 1fr auto;gap:28px;min-height:72px}.desktop-nav{justify-self:center;align-items:center;display:flex;gap:clamp(14px,1.8vw,28px)!important}.desktop-nav a,.nav-cta{white-space:nowrap;align-items:center;min-height:44px;display:inline-flex}.desktop-nav a.active{color:var(--ink-1);position:relative}.desktop-nav a.active:after{content:"";background:var(--brand);height:1px;position:absolute;bottom:6px;left:0;right:0}.nav-actions{justify-self:end;align-items:center;gap:18px;display:flex}.menu-toggle{border:1px solid var(--line-3);cursor:pointer;background:0 0;width:44px;height:44px;display:none;position:relative}.menu-toggle span{background:var(--ink-2);height:1px;transition:all .2s;position:absolute;left:11px;right:11px}.menu-toggle span:first-child{top:17px}.menu-toggle span:last-child{top:25px}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px)rotate(-45deg)}.mobile-menu{z-index:90;background:var(--surface-0);opacity:0;visibility:hidden;pointer-events:none;grid-template-rows:1fr auto;padding:28px clamp(18px,5vw,56px) 26px;transition:opacity .2s,transform .2s,visibility .2s;display:grid;position:fixed;inset:72px 0 0;transform:translateY(-12px)}.mobile-menu.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}.mobile-menu nav{align-content:start;display:grid}.mobile-menu nav a{border-bottom:1px solid var(--line-1);grid-template-columns:48px 1fr;align-items:center;min-height:66px;display:grid}.mobile-menu nav span{font:var(--text-2xs) var(--mono);color:var(--ink-4)}.mobile-menu nav b{font-size:var(--head-lg);font-weight:var(--weight-head);letter-spacing:var(--ls-tight)}.mobile-menu-foot a{align-items:center;min-height:24px;display:inline-flex}.mobile-menu-foot{font:var(--text-2xs) var(--mono);color:var(--ink-4);flex-wrap:wrap;align-items:center;gap:22px;display:flex}.mobile-menu-foot small{color:var(--ink-4);margin-left:auto}@media (max-width:1180px){.desktop-nav{display:none!important}.menu-toggle{display:block}.site-nav{grid-template-columns:1fr auto;padding-inline:20px}.nav-actions{gap:10px}}@media (max-width:640px){.site-nav{height:60px;min-height:60px;padding-inline:12px}.mobile-menu{padding:18px 16px 20px;inset:60px 0 0}.nav-cta{display:none}.menu-toggle{width:44px;height:44px}.brand{gap:9px}.brand>span:last-child{font-size:var(--text-2xs)}.logo-mark{width:20px;height:20px}.mobile-menu-foot small{width:100%;margin-left:0}}.mobile-menu{overscroll-behavior:contain;overflow-y:auto}.site-nav-v12{grid-template-columns:auto 1fr auto;gap:30px;display:grid}.grouped-nav{justify-self:center;align-items:center}.grouped-nav>details{position:relative}.grouped-nav summary{cursor:pointer;color:var(--ink-3);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);padding:24px 2px;list-style:none}.grouped-nav summary::-webkit-details-marker{display:none}.grouped-nav summary:after{content:" +";color:var(--ink-4)}.grouped-nav details[open] summary,.grouped-nav summary:hover{color:var(--ink-1)}.grouped-nav summary.active{color:var(--ink-1);position:relative}.grouped-nav summary.active:before{content:"";background:var(--brand);height:1px;position:absolute;bottom:18px;left:0;right:11px}.nav-popover{z-index:70;border:1px solid var(--line-2);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0a0c0ef7;width:400px;padding:8px;position:absolute;top:67px;left:-22px;box-shadow:0 24px 70px #00000052}.nav-popover-end{left:auto;right:-22px}.nav-popover>a{white-space:normal;border:1px solid #0000;gap:4px;padding:13px;display:grid}.nav-popover>a:hover{background:var(--surface-2);border-color:var(--line-2)}.nav-popover>a.active{background:var(--surface-2);border-color:var(--line-2);box-shadow:inset 2px 0 0 var(--brand)}.nav-popover b{font-size:var(--text-xs);color:var(--ink-1)}.nav-popover small{font:var(--text-2xs)/1.5 var(--mono);color:var(--ink-4);text-wrap:pretty}.nav-source{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-3);white-space:nowrap}.nav-search{border:1px solid var(--line-2);height:36px;color:var(--ink-3);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);white-space:nowrap;cursor:pointer;background:0 0;align-items:center;gap:8px;padding:0 10px;display:flex}.nav-search:hover{color:var(--ink-1);border-color:var(--line-3)}.nav-search kbd{font:var(--text-2xs) var(--mono);color:var(--ink-4);border:1px solid var(--line-2);padding:0 5px;line-height:16px}.search-dialog{text-transform:none;border:1px solid var(--line-3);background:var(--surface-1);width:min(560px,100vw - 32px);color:var(--ink-1);margin:12vh auto auto;padding:0}.search-dialog::backdrop{background:#06080a9e}.search-panel{padding:14px}.search-panel input{border:1px solid var(--line-2);background:var(--bg);width:100%;height:44px;color:var(--ink-1);font:var(--text-md) var(--sans);padding:0 12px}.search-panel input::placeholder{color:var(--ink-4)}.search-results{gap:1px;margin:0;padding:0;list-style:none;display:grid}.search-results:not(:empty){margin-top:12px}.search-results li{cursor:pointer;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 12px;display:flex}.search-results li.active{background:var(--surface-2)}.search-results b{font-size:var(--text-md);font-weight:400}.search-results small{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--ink-4);flex-shrink:0}.search-empty{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-4);margin:14px 12px 4px}@media (pointer:coarse){.search-panel input{font-size:16px}.search-results li{padding:13px 12px}.nav-search{min-height:44px}}.locale-switcher{align-items:center;gap:7px;display:flex}.locale-switcher>span{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.locale-switcher select{border:1px solid var(--line-2);background:var(--surface-1);height:36px;color:var(--ink-2);font:var(--text-2xs) var(--mono);text-transform:uppercase;cursor:pointer;padding:0 26px 0 9px}.mobile-menu-groups{background:var(--surface-3);border-block:1px solid var(--line-2);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:1px;display:grid}.mobile-menu-groups section{background:var(--surface-0);padding:24px}.mobile-menu-groups section>span{color:var(--accent);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);text-transform:uppercase;margin-bottom:14px;display:block}.mobile-menu-groups a{border-bottom:1px solid var(--line-1);gap:4px;padding:12px 0;display:grid}.mobile-menu-groups a.active{box-shadow:inset 2px 0 0 var(--brand);padding-left:12px}.mobile-menu-groups b{font-size:var(--text-lg)}.mobile-menu-groups small{font:var(--text-2xs)/1.45 var(--mono);color:var(--ink-4)}.mobile-menu-foot .locale-switcher{margin-right:auto}@media (max-width:1100px){.site-nav-v12{grid-template-columns:auto 1fr}.site-nav-v12 .nav-actions{justify-self:end}.grouped-nav{display:none!important}.site-nav-v12 .menu-toggle{display:flex}.site-nav-v12 .nav-source{display:none}}@media (max-width:760px){.site-nav-v12{grid-template-columns:1fr auto;padding-inline:16px}.site-nav-v12 .locale-switcher,.site-nav-v12 .nav-cta,.site-nav-v12 .nav-search kbd{display:none}.mobile-menu-groups{grid-template-columns:minmax(0,1fr);grid-auto-flow:row}.mobile-menu-groups section{padding:18px 20px}}@media (max-width:420px){.brand span{font-size:var(--text-2xs)}}
.site-footer{border-top:1px solid var(--line-2);background:var(--surface-0);color:var(--ink-3);grid-template-columns:minmax(240px,320px) 1fr;align-items:start;gap:46px clamp(40px,7vw,104px);padding:64px 5vw 34px;display:grid}.footer-brand{align-content:start;gap:20px;display:grid}.footer-brand>div{color:var(--ink-1);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);align-items:center;gap:12px;display:flex}.footer-brand p{max-width:var(--measure);color:var(--ink-4);font-size:var(--text-sm);line-height:var(--lh-body);margin:0}.footer-promise{flex-wrap:wrap;gap:6px;display:flex}.footer-promise span{border:1px solid var(--line-2);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-4);white-space:nowrap;padding:6px 9px}.footer-links{grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:34px 30px;display:grid}.footer-links nav{align-content:start;gap:10px;display:grid}.footer-links ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.footer-links span{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--ink-4);text-transform:uppercase;margin-bottom:4px}.footer-links a{font-size:var(--text-sm);color:var(--ink-3);min-height:28px}.footer-links a:hover{color:var(--ink-1)}.footer-meta{border-top:1px solid var(--line-1);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--ink-4);text-transform:uppercase;flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;gap:16px;padding-top:22px;display:flex}.footer-meta a{min-height:24px;color:var(--accent);align-items:center;display:inline-flex}.footer-meta a:hover{color:var(--accent-strong)}@media (max-width:900px){.site-footer{grid-template-columns:minmax(0,1fr);row-gap:40px}}@media (max-width:640px){.site-footer{padding:50px 16px 26px}.footer-links{gap:28px 24px}.footer-meta{flex-direction:column;gap:12px}}
.story-shell{position:relative}.story-stage{background:var(--surface-1);border-bottom:1px solid var(--line-2);min-height:700vh;position:relative}.scene-sticky{z-index:1;width:58%;height:100vh;margin-left:auto;position:sticky;top:0}.scene-wrap{position:absolute;inset:72px 0 0;overflow:hidden}.scene-wrap:before{content:"";z-index:2;pointer-events:none;background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0}.scene-vignette{pointer-events:none;z-index:2;background:radial-gradient(circle at 50% 45%, transparent 20%, #0b0d0f1a 50%, var(--surface-1) 96%);position:absolute;inset:0}.story-copy-column{z-index:4;width:42%;position:absolute;inset:0 auto 0 0}.story-chapter{align-items:center;height:100vh;min-height:700px;padding:92px 4.5vw 40px;display:flex}.chapter-card{width:100%;max-width:570px}.chapter-card h2{font-size:var(--head-2xl);line-height:var(--lh-display);letter-spacing:var(--ls-display);font-weight:var(--weight-head);margin:22px 0 24px}.chapter-card p{color:var(--ink-3);line-height:var(--lh-body);max-width:520px;font-size:var(--text-lg)}.scene-ui{pointer-events:none;z-index:6;position:absolute;inset:0}.mode-bar{pointer-events:auto;border:1px solid var(--line-2);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0a0c0ec7;padding:4px;display:flex;position:absolute;bottom:28px;left:26px}.mode-bar button{color:var(--ink-4);font:var(--text-2xs) var(--mono);text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:9px 11px}.mode-bar button.active{background:var(--invert-surface);color:var(--invert-ink)}.inspector{pointer-events:auto;border:1px solid var(--line-2);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);width:270px;font-family:var(--mono);font-size:var(--text-2xs);background:#0d1013e0;min-height:54px;padding:15px;position:absolute;bottom:28px;right:26px}.inspector-head{border-bottom:1px solid var(--line-2);color:var(--info);letter-spacing:var(--ls-label);justify-content:space-between;margin-bottom:12px;padding-bottom:12px;display:flex}.inspector-head button{cursor:pointer;color:var(--ink-4);font-size:var(--text-lg);background:0 0;border:0;line-height:10px}.inspector-grid{color:var(--ink-4);grid-template-columns:1fr auto;gap:9px 14px;display:grid}.inspector-grid b{color:var(--ink-2);text-align:right;font-weight:500}.check-list{color:var(--ok);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px;margin-top:15px;display:grid}.scene-label{background:var(--surface-1);border:1px solid var(--ink-2);width:28px;height:28px;color:var(--ink-1);font:var(--text-2xs) var(--mono);border-radius:50%;place-items:center;display:grid}@media (max-width:980px){.story-stage{min-height:auto}.scene-sticky{background:var(--surface-1);width:100%;height:58vh;position:sticky;top:72px}.scene-wrap{inset:0}.story-copy-column{z-index:8;width:100%;position:relative}.story-chapter{background:linear-gradient(to bottom,transparent 0%,#0d1013d1 36%,var(--surface-1) 100%);align-items:end;height:auto;min-height:72vh;padding:90px 24px}.chapter-card{max-width:620px}.mode-bar{max-width:calc(100% - 28px);bottom:14px;left:14px;overflow:auto}.mode-bar button{padding:8px}.inspector-grid{grid-template-columns:auto 1fr auto 1fr}}@media (max-width:620px){.scene-sticky{height:46vh;top:62px}.story-chapter{min-height:74vh;padding:80px 18px}.chapter-card h2{font-size:var(--head-lg)}.chapter-card p{font-size:var(--text-sm)}}.demo-container{border:1px solid var(--line-3);flex-wrap:wrap;place-content:flex-end center;align-items:flex-end;gap:3px;width:72%;height:52%;padding:8%;display:flex;position:relative}.demo-container i{border:1px solid var(--fig-line);background:#e9a23b94;width:24%;height:26%;transition:all .35s;display:block}.demo-container b{font:var(--head-sm) var(--mono);color:var(--info);opacity:0;transition:all .35s;position:absolute;top:17%;right:16%}.cg-obstacles .demo-container:after{content:"";background:#f064641f;border:1px dashed #f06464f2;width:28%;height:58%;position:absolute;top:12%;right:10%}.cg-support .demo-container i:nth-child(8){background:#f064648c;transform:translateY(-20px)}.cg-top-load .demo-container i:nth-child(2){background:#f064648c;box-shadow:0 -18px #f0646433}.cg-stacking .demo-container i:nth-child(n+6){transform:translateY(-10px)}.cg-weight .demo-container i:nth-child(3){background:#f06464a6}.cg-balance .demo-container b{font-size:var(--head-lg);opacity:1;top:42%;right:40%}.cg-compatibility .demo-container i:nth-child(4),.cg-compatibility .demo-container i:nth-child(5){background:#62b9d880}.cg-load-order .demo-container:before{content:"01  →  02  →  03";font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--info);position:absolute;top:7%;left:8%}.cg-load-order .demo-container i:first-child,.cg-load-order .demo-container i:nth-child(4),.cg-load-order .demo-container i:nth-child(7){border-color:var(--info);background:#62b9d86b}.cg-geometry .demo-container:before{content:"";border:1px dashed var(--line-3);position:absolute;inset:4%}.cg-units .demo-container:before{content:"| | | | | |";font:var(--text-2xs) var(--mono);letter-spacing:3px;color:var(--ink-4);position:absolute;bottom:4%;left:10%}.cg-rotations .demo-container i:nth-child(5){background:#62b9d880;transform:rotate(90deg)}.cg-objectives .demo-container i:nth-child(n+4){opacity:.3}.cg-validation .demo-container i:nth-child(5){position:relative}.cg-validation .demo-container i:nth-child(5):after{content:"";border:1px dashed var(--info);position:absolute;inset:-5px -4px -4px -5px}.slice-control{pointer-events:auto;border:1px solid var(--line-2);font:var(--text-2xs) var(--mono);color:var(--ink-4);background:#0a0c0ed1;grid-template-columns:auto 140px auto;align-items:center;gap:10px;padding:10px 12px;display:grid;position:absolute;bottom:78px;left:26px}.slice-control input{accent-color:var(--brand);width:140px}.slice-control b{color:var(--ink-2);font-weight:500}.scene-poster{background:var(--surface-1);place-items:center;display:grid;position:absolute;inset:0}.scene-poster.waiting{background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:28px 28px}.scene-poster.waiting:after{content:"";border:1px solid var(--line-3);opacity:.5;width:76%;height:56%;transform:skewY(-5deg)}@media (prefers-reduced-motion:no-preference){.scene-poster.waiting:after{animation:1.8s ease-in-out infinite scene-poster-breathe}}@keyframes scene-poster-breathe{0%,to{opacity:.28}50%{opacity:.6}}.scene-poster.waiting>*{display:none}@media (prefers-reduced-motion:reduce){.scene-poster.waiting{background-image:none}.scene-poster.waiting:after{content:none}.scene-poster.waiting>.poster-frame{display:flex}.scene-poster.waiting>.poster-note{display:grid}}.poster-frame{border:1px solid var(--line-3);background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:28px 28px;flex-wrap:wrap;place-content:flex-end center;align-items:flex-end;gap:3px;width:76%;height:56%;padding:8%;display:flex;transform:skewY(-5deg)}.poster-frame i{border:1px solid var(--fig-line);background:#e9a23b94;width:17%;height:13%;display:block}.poster-frame i:nth-child(4n+2){width:19%}.poster-frame i:nth-child(4n+3){width:21%}.poster-frame i:nth-child(4n){width:23%}.poster-frame i:nth-child(3n+2){height:17%}.poster-frame i:nth-child(3n){height:21%}.poster-note{z-index:3;text-align:right;font:var(--text-2xs) var(--mono);color:var(--ink-4);display:grid;position:absolute;bottom:20px;right:20px}.poster-note b{color:var(--ok);font-size:var(--head-2xs);margin-bottom:4px}@media (max-width:620px){.slice-control input{width:100%}}.scene-loading{background:var(--surface-1);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--ink-4);place-content:center;gap:14px;display:grid;position:absolute;inset:0}.scene-loading i{background:linear-gradient(90deg,var(--brand) 0 42%,var(--line-2) 42%);width:180px;height:1px;animation:1.2s ease-in-out infinite alternate loadline;display:block}@keyframes loadline{to{transform-origin:0;transform:scaleX(.72)}}.cinematic-scene{width:100%;margin-left:0}.cinematic-scene .scene-wrap:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(90deg,#080a0cf7 0%,#080a0cd6 29%,#080a0c4d 47%,#0000 68%);position:absolute;inset:0}.cinematic-copy{pointer-events:none;width:46%}.cinematic-copy a{pointer-events:auto}.hero-story-card h1{font-size:var(--display);line-height:var(--lh-display);letter-spacing:var(--ls-display);font-weight:var(--weight-head);margin:24px 0 30px}.hero-story-card h1 em{color:var(--ink-4);font-style:normal}.hero-story-card>p{color:var(--ink-3);font-size:var(--text-lg);line-height:var(--lh-body);max-width:620px}.hero-install{border:1px solid var(--line-2);background:#090b0d8c;justify-items:start;gap:5px;margin-top:16px;padding:9px 13px;display:inline-grid}.hero-install:hover{border-color:var(--line-3)}.hero-install>span{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--ink-4);text-transform:uppercase}.hero-install>b{font:var(--text-sm) var(--mono);color:var(--accent);letter-spacing:var(--ls-label-soft);font-weight:400}.hero-scope-note{max-width:560px;color:var(--ink-4);font:var(--text-2xs) var(--mono);line-height:var(--lh-body);letter-spacing:var(--ls-label-soft);text-transform:uppercase;margin-top:18px;display:block}.hero-story .chapter-card{max-width:820px}.story-chapter.hero-story{align-content:start;align-items:start}.scene-stage-badge{z-index:8;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);min-width:210px;font-family:var(--mono);pointer-events:none;background:#0a0c0eb8;border:1px solid #ffffff24;grid-template-columns:auto 1fr;gap:3px 12px;padding:12px 14px;display:grid;position:absolute;top:96px;right:26px}.scene-stage-badge span{color:var(--accent);font-size:var(--text-lg);grid-row:1/3;align-self:center}.scene-stage-badge b{font-size:var(--text-2xs);letter-spacing:var(--ls-label);color:var(--ink-1);font-weight:var(--weight-head)}.scene-stage-badge small{font-size:var(--text-2xs);color:var(--ink-4);letter-spacing:var(--ls-label-soft)}@media (max-width:980px){.cinematic-stage{min-height:auto}.cinematic-copy,.cinematic-scene{width:100%}.cinematic-scene .scene-wrap:after{background:linear-gradient(to bottom,transparent 42%,#0d1013a6 72%,var(--surface-1) 100%)}.hero-story{align-items:end;min-height:86vh;padding-top:58vh}.hero-story-card h1{font-size:var(--head-2xl)}.scene-stage-badge{min-width:175px;top:16px;right:14px}}@media (max-width:620px){.hero-story-card h1{font-size:var(--head-xl)}.scene-stage-badge{top:10px}.scene-stage-badge small{display:none}.scene-stage-badge{grid-template-columns:auto auto;min-width:auto}.scene-stage-badge span{font-size:var(--text-md)}.hero-story{padding-top:50vh}}@media (min-width:981px){.cinematic-copy{width:40%}.cinematic-copy .chapter-card{max-width:520px}.cinematic-copy .hero-story-card{max-width:680px}.cinematic-scene .scene-wrap:after{background:linear-gradient(90deg,#080a0cfa 0%,#080a0ced 22%,#080a0ca3 30%,#080a0c33 39%,#0000 48%)}.cinematic-scene .scene-vignette{background:radial-gradient(circle at 66% 49%,#0000 20%,#0b0d0f0f 58%,#07090bb8 100%)}}.cinematic-stage{min-height:700vh}.cinematic-scene .scene-wrap:before{display:none}.cinematic-scene .scene-wrap:after{background:linear-gradient(90deg,#07090bfb 0%,#07090bed 21%,#07090b8f 29%,#07090b24 36%,#0000 44%)}.cinematic-scene .scene-vignette{background:radial-gradient(circle at 64%,#0000 0 28%,#080a0c0d 58%,#06080a99 100%)}.cinematic-copy{width:34%}.cinematic-copy .story-chapter{padding-left:3.8vw;padding-right:1.5vw}.cinematic-copy .chapter-card{background:linear-gradient(90deg,#090b0ddb,#090b0dbd 62%,#090b0d4d 86%,#0000);border-left:1px solid #d69a5494;max-width:470px;padding:18px 8px 18px 18px}.cinematic-copy .chapter-card h2{font-size:var(--head-xl);line-height:var(--lh-display);margin:18px 0}.cinematic-copy .chapter-card p{max-width:440px;font-size:var(--text-sm);line-height:var(--lh-body);color:var(--ink-3)}.hero-story-card{background:0 0!important;border-left:0!important;max-width:560px!important;padding-left:0!important}.hero-story-card h1{font-size:var(--head-3xl);line-height:var(--lh-display);margin:22px 0 26px}.hero-story-card>p{max-width:520px;font-size:var(--text-lg)}.scene-stage-badge.compact{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#080a0c99;border-color:#ffffff1c;grid-template-columns:42px auto;column-gap:10px;width:auto;min-width:0;max-width:260px;padding:10px 12px;top:94px;right:26px}.scene-stage-badge.compact span{font-size:var(--text-sm);color:var(--accent);grid-row:1/3;align-self:center}.scene-stage-badge.compact b{font-size:var(--text-2xs);letter-spacing:var(--ls-label)}.scene-stage-badge.compact small{font-size:var(--text-2xs);color:var(--ink-4)}.story-progress{z-index:9;background:#ffffff1f;width:1px;position:absolute;top:92px;bottom:30px;right:12px;overflow:hidden}.story-progress i{background:linear-gradient(var(--brand),var(--info));transform-origin:top;will-change:transform;width:100%;height:100%;display:block}.explore-dock{pointer-events:auto;z-index:10;justify-items:center;gap:7px;animation:.35s both dockIn;display:grid;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.explore-dock>span{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--ink-4)}.explore-dock .mode-bar{background:#080a0cc2;position:static;bottom:auto;left:auto;transform:none}@keyframes dockIn{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.inspector{width:250px;bottom:92px;right:26px}.slice-control{bottom:82px;left:50%;transform:translate(-50%)}@media (max-width:1180px) and (min-width:981px){.cinematic-copy{width:38%}.cinematic-copy .chapter-card{max-width:440px}.cinematic-copy .chapter-card h2{font-size:var(--head-xl)}.cinematic-scene .scene-wrap:after{background:linear-gradient(90deg,#07090bf7 0%,#07090bd6 24%,#07090b42 36%,#0000 47%)}}@media (max-width:980px){.cinematic-stage{min-height:auto}.cinematic-copy{width:100%}.cinematic-scene .scene-wrap:after{background:linear-gradient(to bottom,transparent 36%,#090b0d38 55%,var(--surface-1) 96%)}.cinematic-scene .scene-vignette{background:linear-gradient(to bottom,transparent 45%,#080a0c52 72%,var(--surface-1) 100%)}.cinematic-copy .story-chapter{padding-left:22px;padding-right:22px}.cinematic-copy .chapter-card{background:linear-gradient(90deg,#090b0d80,#0000);max-width:620px;padding:16px 0 16px 14px}.scene-stage-badge.compact{top:14px;right:18px}.story-progress{display:none}.explore-dock{justify-items:start;bottom:12px;left:12px;right:12px;transform:none}.explore-dock .mode-bar{max-width:100%;overflow:auto}.inspector{width:min(250px,100vw - 24px);bottom:72px;right:12px}}@media (max-width:620px){.cinematic-copy .chapter-card h2{font-size:var(--head-lg)}.cinematic-copy .chapter-card p{font-size:var(--text-md)}.hero-story-card h1{font-size:var(--head-xl)}.scene-stage-badge.compact small{display:none}.scene-stage-badge.compact{grid-template-columns:30px auto}.explore-dock>span{display:none}}.mode-bar button{min-width:46px;min-height:40px}@media (max-width:980px){.scene-sticky{height:56svh;min-height:360px;max-height:620px;top:72px}.scene-wrap{inset:0}.cinematic-copy .story-chapter{min-height:70svh;padding:68px clamp(22px,6vw,58px)}.cinematic-copy .story-chapter.hero-story{min-height:78svh;padding-top:26px}.cinematic-copy .chapter-card{background:var(--surface-1);border-left:1px solid #d69a5494;max-width:720px!important;padding:20px!important}.hero-story-card{border-left:0!important;padding-left:0!important}.scene-stage-badge.compact{top:14px;right:14px}}@media (max-width:640px){.scene-sticky{height:50svh;min-height:300px;max-height:460px;top:60px}.scene-wrap{inset:0}.scene-stage-badge.compact{padding:8px 9px;top:10px;right:10px}.scene-stage-badge.compact b{font-size:var(--text-2xs)}.scene-stage-badge.compact span{font-size:var(--text-xs)}.cinematic-copy .story-chapter{min-height:64svh;padding:48px 16px}.cinematic-copy .story-chapter.hero-story{min-height:72svh;padding-top:22px}.cinematic-copy .chapter-card{padding:17px 14px!important}.hero-story-card{padding-left:0!important;padding-right:0!important}.hero-story-card h1{font-size:var(--head-lg)}.cinematic-copy .chapter-card h2{font-size:var(--head-lg);line-height:var(--lh-head)}.cinematic-copy .chapter-card p{font-size:var(--text-md);line-height:var(--lh-body);color:var(--ink-3)}.hero-story-card>p{font-size:var(--text-md)}.explore-dock{left:8px;right:8px}.explore-dock .mode-bar{width:100%;overflow-x:auto}.inspector{max-height:45svh;overflow:auto}}@media (max-width:380px){.scene-sticky{height:46svh;min-height:270px}.cinematic-copy .story-chapter{padding-inline:12px}.cinematic-copy .chapter-card h2{font-size:var(--head-md)}.hero-story-card h1{font-size:var(--head-lg)}.scene-stage-badge.compact small{display:none}.scene-stage-badge.compact{grid-template-columns:28px auto}}@media (max-height:620px) and (min-width:641px) and (max-width:980px){.scene-sticky{height:62svh;min-height:300px}.cinematic-copy .story-chapter{min-height:76svh}}@media (max-width:980px){.cinematic-scene{z-index:12}.cinematic-copy{z-index:4}.cinematic-copy .story-chapter{background:var(--surface-1)}.cinematic-copy .chapter-card{background:var(--surface-1)!important}}.explore-dock-v12{border:1px solid var(--line-2);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#080a0cd4;width:min(680px,100% - 48px);padding:11px;justify-items:stretch!important;gap:9px!important}.explore-title{grid-template-columns:auto 1fr;align-items:baseline;gap:3px 12px;display:grid}.explore-title>span{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--ink-4)}.explore-title>b{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--ink-1)}.explore-title>small{color:var(--ink-4);font:var(--text-2xs)/1.45 var(--mono);grid-column:1/-1}.explore-dock-v12 .mode-bar{grid-template-columns:repeat(6,minmax(68px,1fr));width:100%;display:grid;overflow:visible!important}.explore-dock-v12 .mode-bar button{border-right:1px solid var(--line-1);min-width:0;display:block!important}.explore-dock-v12 .mode-bar button:last-child{border-right:0}.mode-legend{color:var(--ink-4);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);flex-wrap:wrap;gap:14px;padding:2px 1px;display:flex}.mode-legend span{align-items:center;gap:6px;display:inline-flex}.mode-legend i{border-radius:50%;width:7px;height:7px;display:inline-block}.legend-green{background:var(--ok)}.legend-amber{background:var(--brand)}.legend-red{background:var(--bad)}.slice-control{bottom:122px!important}@media (max-width:760px){.explore-dock-v12{width:auto!important;bottom:8px!important;left:8px!important;right:8px!important}.explore-title{grid-template-columns:1fr auto}.explore-title>small{font-size:var(--text-2xs)}.explore-dock-v12 .mode-bar{display:flex!important;overflow-x:auto!important}.explore-dock-v12 .mode-bar button{flex:none;min-width:72px}.mode-legend{white-space:nowrap;flex-wrap:nowrap;overflow-x:auto}.slice-control{bottom:154px!important}}@media (max-width:420px){.explore-title>small{display:none}.explore-dock-v12{padding:7px}.mode-legend{font-size:var(--text-2xs)}}.carton-bar{pointer-events:auto;border:1px solid var(--line-2);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0a0c0ec7;flex-wrap:wrap;gap:2px;max-width:min(420px,100% - 52px);padding:4px;display:flex;position:absolute;bottom:78px;left:26px}.carton-bar button{color:var(--ink-4);font:var(--text-2xs) var(--mono);cursor:pointer;background:0 0;border:0;padding:6px 8px}.carton-bar button:hover{color:var(--ink-2)}.carton-bar button.active{background:var(--invert-surface);color:var(--invert-ink)}@media (max-width:980px){.carton-bar{flex-wrap:nowrap;max-width:none;bottom:70px;left:12px;right:12px;overflow-x:auto}.carton-bar button{min-height:36px}}@media (max-width:820px){.cinematic-scene{display:none}.cinematic-copy .story-chapter,.cinematic-copy .story-chapter.hero-story{background:0 0;min-height:0;padding-block:34px}.cinematic-copy .story-chapter.hero-story{padding-top:84px}.cinematic-copy .story-chapter+.story-chapter{border-top:1px solid var(--line-2)}}@media (min-width:821px) and (max-width:980px){.cinematic-copy .story-chapter{align-items:start;min-height:46svh;padding-block:22px}.cinematic-copy .story-chapter.hero-story{min-height:54svh}.cinematic-copy .chapter-card{position:sticky;top:calc(86px + clamp(360px,56svh,620px))}}.explore-stack{pointer-events:none;z-index:10;gap:8px;width:min(680px,100% - 48px);animation:.35s both stackIn;display:grid;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.explore-stack>.explore-dock,.explore-stack>.carton-bar,.explore-stack>.slice-control{pointer-events:auto;width:auto;max-width:none;animation:none;position:static;transform:none}.explore-stack>.slice-control{grid-template-columns:auto minmax(0,1fr) auto}.explore-stack>.slice-control input{width:100%}@keyframes stackIn{0%{opacity:0;translate:0 12px}}@media (min-width:1181px){.explore-stack{width:auto;max-width:680px;margin-inline:auto;left:calc(34% + 24px);right:300px;transform:none}}@media (min-width:981px) and (max-width:1180px){.explore-stack{width:auto;left:calc(38% + 24px);right:24px;transform:none}.inspector{max-height:calc(100% - 470px);top:180px;bottom:auto;overflow:auto}}@media (min-width:821px) and (max-width:980px){.explore-stack{width:auto;bottom:12px;left:12px;right:12px;transform:none}.inspector{width:min(440px,100% - 24px);max-height:calc(100% - 368px);top:96px;bottom:auto;right:12px;overflow:auto}.inspector-grid b{white-space:nowrap}}
.hero-actions{font-size:var(--text-md);text-transform:uppercase;letter-spacing:var(--ls-label-soft);flex-wrap:wrap;align-items:center;gap:16px 26px;margin-top:30px;display:flex}.primary-link{background:var(--brand);color:var(--brand-on);padding:16px 20px;font-weight:760}.constraint-strip{border-bottom:1px solid var(--line-2);background:var(--surface-2);overflow:hidden}.rule-index{font:var(--text-2xs) var(--mono);color:var(--ink-4);flex-wrap:wrap;align-items:baseline;gap:10px 22px;padding:15px 5vw;display:flex}.rule-index>span{font-size:var(--text-2xs);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--ink-4)}.rule-index ul{flex-wrap:wrap;gap:8px 20px;margin:0;padding:0;list-style:none;display:flex}.rule-index a{color:var(--ink-3)}.rule-index a:hover{color:var(--accent)}.section-pad{padding:110px 5vw}.lede{color:var(--ink-3);font-size:var(--text-xl);line-height:var(--lh-body);max-width:var(--measure-lead)}.paper{background:var(--surface-1);color:var(--ink-1)}.paper .eyebrow{color:var(--accent)}.fixture-grid{border-top:1px solid var(--line-2);border-left:1px solid var(--line-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.fixture-card{border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2);grid-template-rows:auto 1fr auto;min-height:360px;padding:18px;transition:background .2s;display:grid}.fixture-card:hover{background:var(--surface-3)}.fixture-card:hover .fixture-visual:after{border-color:var(--accent)}.fixture-card:hover .fixture-visual i{border-color:var(--accent);filter:brightness(1.08)}.fixture-top,.fixture-bottom{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);justify-content:space-between;gap:10px;display:flex}.fixture-top span{color:var(--ink-4)}.fixture-top b{color:var(--ink-1)}.fixture-bottom b{font-size:var(--text-2xs)}.fixture-bottom span{color:var(--ink-4)}.fixture-visual{background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:25px 25px;min-height:250px;margin:15px 0;position:relative;overflow:hidden}.fixture-visual:after{content:"";border:1px solid var(--ink-4);transition:border-color .2s;position:absolute;inset:17% 12%}.fixture-visual i{z-index:2;left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);width:calc(var(--w) * 1%);height:calc(var(--h) * 1%);border:1px solid var(--fig-line);background:var(--fig-fill);transition:border-color .2s,filter .2s;position:absolute}@media (max-width:980px){.section-pad{padding:80px 24px}.fixture-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (max-width:620px){.hero-actions{flex-direction:column;align-items:flex-start;gap:18px}.section-pad{padding:70px 18px}.fixture-grid{grid-template-columns:minmax(0,1fr)}.fixture-card{min-height:310px}.fixture-visual{min-height:210px}}.capability-lens{background:var(--surface-2);border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}.capability-grid{border-top:1px solid var(--line-2);border-left:1px solid var(--line-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.capability-card{border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2);grid-template-columns:minmax(190px,.82fr) 1fr;min-height:320px;transition:background .2s;display:grid}.capability-card:hover{background:var(--surface-3)}.capability-card:hover .cap-box{border-color:var(--accent)}.capability-card:hover .capability-copy h3{color:var(--accent)}.capability-visual{background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);border-right:1px solid var(--line-2);background-size:26px 26px;min-height:100%;position:relative;overflow:hidden}.cap-box{border:1px solid var(--fig-line);background:var(--fig-fill);position:absolute}.cap-box.a{width:34%;height:28%;bottom:20%;left:16%}.cap-box.b{width:28%;height:36%;bottom:20%;left:47%}.cap-box.c{width:25%;height:22%;bottom:48%;left:35%}.cap-overlay,.cap-marker{position:absolute}.capability-visual.obstacles .cap-overlay{border:1px dashed var(--bad);background:color-mix(in srgb, var(--bad) 9%, transparent);width:24%;height:52%;top:18%;left:57%}.capability-visual.support .cap-marker{background:linear-gradient(90deg,var(--ok) 0 78%,var(--bad) 78%);height:4px;bottom:18%;left:20%;right:18%}.capability-visual.support .cap-overlay{background:#ffffff45;width:1px;height:68%;top:14%;left:34%;box-shadow:42px 0 #ffffff21}.capability-visual.balance .cap-marker{border:1px solid var(--info);width:14px;height:14px;box-shadow:0 0 0 8px color-mix(in srgb, var(--info) 8%, transparent);border-radius:50%;top:38%;left:55%}.capability-visual.balance .cap-overlay{background:color-mix(in srgb, var(--info) 33%, transparent);height:1px;top:50%;left:18%;right:18%}.capability-visual.validation .cap-overlay{border:1px solid color-mix(in srgb, var(--ok) 47%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ok) 13%, transparent);inset:17%}.capability-visual.validation .cap-marker{background:var(--ok);width:12px;height:12px;box-shadow:0 0 18px var(--ok);border-radius:50%;top:14%;right:16%}.capability-copy{padding:28px}.capability-copy>span{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--accent)}.capability-copy h3{font-size:var(--head-sm);line-height:var(--lh-head);letter-spacing:var(--ls-head);margin:24px 0 14px}.capability-copy p{color:var(--ink-4);line-height:var(--lh-body);font-size:var(--text-md);max-width:380px}.capability-copy b{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-2);text-transform:uppercase;margin-top:26px;display:inline-block}.primary-link{align-items:center;min-height:44px;display:inline-flex}@media (max-width:980px){.capability-grid{grid-template-columns:minmax(0,1fr)}.capability-card{grid-template-columns:minmax(200px,.7fr) 1fr}}@media (max-width:640px){.hero-actions{flex-direction:column;align-items:flex-start;gap:16px}.primary-link{padding:14px 16px}.section-pad{padding:68px 16px}.capability-card{grid-template-columns:minmax(0,1fr);min-height:0}.capability-visual{border-right:0;border-bottom:1px solid var(--line-2);min-height:220px}.capability-copy{padding:22px}.capability-copy h3{font-size:var(--head-md)}.fixture-card{padding:15px}.fixture-grid{border-left:0}}@media (max-width:380px){.capability-visual{min-height:190px}}.principles{background:var(--surface-1);color:var(--ink-1);border-bottom:1px solid var(--line-3)}.principles .eyebrow{color:var(--accent)}.principles-grid{border-top:1px solid var(--line-2);border-left:1px solid var(--line-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.principle-card{border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2);min-height:250px;padding:26px}.principle-card>span{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--accent)}.principle-card h3{font-size:var(--head-sm);line-height:var(--lh-head);letter-spacing:var(--ls-head);margin:54px 0 12px}.principle-card p{color:var(--ink-4);line-height:var(--lh-body);font-size:var(--text-md);max-width:360px}.principles-actions{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);text-transform:uppercase;align-items:center;gap:24px;margin-top:32px;display:flex}.principles-actions .primary-link{background:var(--invert-surface);color:var(--invert-ink);border:1px solid var(--invert-surface)}.principles-actions>a:not(.primary-link){color:var(--ink-4)}.quickstart{background:var(--surface-1);border-block:1px solid var(--line-2)}.quickstart-shell{border:1px solid var(--line-2);grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);min-height:510px;display:grid}.quickstart-steps{display:grid}.quickstart-steps article{border-bottom:1px solid var(--line-2);grid-template-columns:54px 1fr;align-content:center;gap:18px;padding:28px;display:grid}.quickstart-steps article:last-child{border-bottom:0}.quickstart-steps article>span{font:var(--text-2xs) var(--mono);color:var(--accent)}.quickstart-steps h3{font-size:var(--head-sm);letter-spacing:var(--ls-tight);margin:0 0 9px}.quickstart-steps p{color:var(--ink-4);line-height:var(--lh-body);font-size:var(--text-md);max-width:430px;margin:0}.install-panel{border-left:1px solid var(--line-2);background:var(--surface-0);grid-template-rows:auto 1fr auto auto;grid-template-columns:minmax(0,1fr);display:grid}.install-top{border-bottom:1px solid var(--line-2);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--ink-4);justify-content:space-between;padding:18px 20px;display:flex}.install-top b{color:var(--ok);font-weight:500}.install-langs{border-bottom:1px solid var(--line-2);display:flex}.install-langs button{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-4);cursor:pointer;background:0 0;border:0;flex:1;padding:12px 8px}.install-langs button+button{border-left:1px solid var(--line-2)}.install-langs button:hover{color:var(--ink-2)}.install-langs button.active{background:var(--surface-2);color:var(--ink-1)}.install-panel pre{align-items:center;margin:0;padding:40px clamp(22px,4vw,54px);display:flex;overflow:auto}.install-panel code{font:var(--text-sm)/1.85 var(--mono);color:var(--ink-2);white-space:pre}.install-note{border-top:1px solid var(--line-2);color:var(--ink-4);font:var(--text-2xs)/1.55 var(--mono);padding:16px 20px}.install-actions{border-top:1px solid var(--line-2);display:flex}.install-actions a{font:var(--text-2xs) var(--mono);text-transform:uppercase;letter-spacing:var(--ls-label-soft);flex:1;padding:18px 20px}.install-actions a+a{border-left:1px solid var(--line-2)}.install-actions a:hover{background:var(--surface-2);color:var(--ink-1)}.ecosystem{background:var(--surface-0);border-top:1px solid var(--line-2)}.runtime-matrix{border:1px solid var(--line-2);background:var(--surface-1);margin-top:34px;overflow-x:auto}.runtime-matrix table{border-collapse:collapse;width:100%;min-width:720px;font:var(--text-2xs) var(--mono)}.runtime-matrix th,.runtime-matrix td{text-align:left;border-bottom:1px solid var(--line-1);vertical-align:top;color:var(--ink-3);padding:15px 18px}.runtime-matrix thead th{font-size:var(--text-2xs);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--ink-4);background:var(--surface-2)}.runtime-matrix tbody th{font-size:var(--text-md);font-weight:var(--weight-head);letter-spacing:var(--ls-tight);color:var(--ink-1);white-space:nowrap;width:1%}.runtime-matrix tbody tr:last-child th,.runtime-matrix tbody tr:last-child td{border-bottom:0}.runtime-matrix tbody tr:hover td,.runtime-matrix tbody tr:hover th{background:var(--surface-2)}.runtime-matrix a{color:var(--accent);border-bottom:1px solid var(--accent-line)}.runtime-matrix a:hover{border-bottom-color:var(--accent)}.ecosystem-benchmark-bridge{justify-content:flex-end;margin-top:20px;display:flex}.benchmark-bridge-link{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-3);background:var(--surface-1);border:1px solid var(--line-2);padding:10px 16px;transition:color .2s,border-color .2s,background .2s}.benchmark-bridge-link:hover{color:var(--accent);border-color:var(--accent-line);background:var(--surface-2)}.docs-onramp .primary-link{background:var(--invert-surface);color:var(--invert-ink);white-space:nowrap}@media (max-width:980px){.principles-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.quickstart-shell{grid-template-columns:minmax(0,1fr)}.install-panel{border-left:0;border-top:1px solid var(--line-2)}}@media (max-width:640px){.principles-grid{border-left:0;grid-template-columns:minmax(0,1fr)}.principle-card{border-left:1px solid var(--line-2);min-height:0;padding:22px}.principle-card h3{margin-top:34px}.principles-actions{flex-direction:column;align-items:flex-start}.quickstart-steps article{grid-template-columns:40px 1fr;padding:22px 17px}.install-panel pre{padding:28px 17px}.install-panel code{font-size:var(--text-2xs)}.install-actions{display:grid}.install-actions a+a{border-left:0;border-top:1px solid var(--line-2)}}.site-portal{background:var(--surface-1);border-top:1px solid var(--line-2)}.portal-list{border-top:1px solid var(--line-2);margin:0;padding:0;list-style:none}.portal-list li{border-bottom:1px solid var(--line-2)}.portal-list a{grid-template-columns:118px minmax(120px,190px) minmax(0,1fr) auto;align-items:baseline;gap:24px;padding:22px 4px;transition:background .18s;display:grid}.portal-list a:hover{background:var(--surface-2)}.portal-tag{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--accent)}.portal-name{font-size:var(--head-xs);letter-spacing:var(--ls-tight);font-weight:var(--weight-head);color:var(--ink-1)}.portal-note{color:var(--ink-4);font-size:var(--text-sm);line-height:var(--lh-body);max-width:var(--measure)}.portal-go{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);text-transform:uppercase;color:var(--ink-3);white-space:nowrap}.portal-list a:hover .portal-go{color:var(--ink-1)}@media (max-width:900px){.portal-list a{grid-template-columns:minmax(0,1fr) auto;gap:6px 18px;padding:20px 4px}.portal-tag{grid-column:1}.portal-go{grid-area:1/2;align-self:center}.portal-name,.portal-note{grid-column:1/-1}}.system-state-page .hero-actions{flex-wrap:wrap;gap:.75rem;display:flex}.system-state-page .hero-actions a{border:1px solid var(--line-2);min-height:44px;color:inherit;font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);cursor:pointer;background:0 0;align-items:center;padding:.8rem 1rem;display:inline-flex}.capability-story-beats{margin-top:20px}.capability-beat{border-top:1px solid var(--line-2);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:6vw;padding:56px 0;scroll-margin-top:64px;display:grid}.capability-beat:first-child{border-top:none}.capability-beat-text h3{font-size:var(--head-2xs);margin-bottom:10px}.capability-beat-text p{color:var(--ink-3)}.capability-rule{margin:18px 0 0}.capability-rule figcaption{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-4);margin-bottom:6px}.capability-rule pre{white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--line-2);border-left:2px solid var(--accent);background:var(--surface-2);font:var(--text-xs) var(--mono);color:var(--ink-2);margin:0;padding:12px 14px;line-height:1.55}.refusal-lesson{margin:0 0 14px}.refusal-lesson svg{width:100%;height:auto;display:block;overflow:visible}.lesson-container{fill:none;stroke:var(--ink-3);stroke-width:6px;vector-effect:non-scaling-stroke}.lesson-standing{fill:color-mix(in srgb, var(--bad) 22%, transparent);stroke:var(--bad);stroke-width:6px;vector-effect:non-scaling-stroke}.lesson-ghost rect{fill:color-mix(in srgb, var(--ok) 14%, transparent);stroke:var(--ok);stroke-width:6px;stroke-dasharray:14 10;vector-effect:non-scaling-stroke}.lesson-ghost{transform-box:view-box;animation:7s ease-in-out infinite lesson-turn}@keyframes lesson-turn{0%,22%{transform:rotate(-90deg)}50%,to{transform:rotate(0)}}@media (prefers-reduced-motion:reduce){.lesson-ghost{animation:none}}.refusal-lesson figcaption{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-3);gap:4px;margin-top:10px;display:grid}.lesson-fits{color:var(--ok)}.lesson-refused code{color:var(--bad)}.unload-lesson{margin:0 0 14px}.unload-lesson svg{width:100%;height:auto;display:block;overflow:visible}.unload-door{stroke:var(--accent);stroke-width:5px;vector-effect:non-scaling-stroke}.unload-crate rect{fill:color-mix(in srgb, var(--info) 22%, transparent);stroke:var(--info);stroke-width:3px;vector-effect:non-scaling-stroke}.unload-crate text{font:700 110px var(--mono);fill:var(--ink-1)}.unload-crate[data-stop="1"]{animation:9s ease-in-out infinite unload-first}.unload-crate[data-stop="2"]{animation:9s ease-in-out infinite unload-second}@keyframes unload-first{0%,22%{opacity:1;transform:translate(0)}40%,88%{opacity:0;transform:translate(-420px)}to{opacity:1;transform:translate(0)}}@keyframes unload-second{0%,46%{opacity:1;transform:translate(0)}66%,88%{opacity:0;transform:translate(-620px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.unload-crate{animation:none!important}}.unload-lesson figcaption{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-3);gap:4px;margin-top:10px;display:grid}.nested-lesson{margin:0 0 14px}.nested-lesson ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 10px;margin:0;padding:0;list-style:none;display:grid}.nested-lesson li{border:1px solid var(--line-2);align-content:start;gap:6px;padding:10px;animation:9s ease-in-out infinite nested-step;display:grid;position:relative}.nested-lesson li[data-level="2"]{animation-delay:3s}.nested-lesson li[data-level="3"]{animation-delay:6s}.nested-lesson li:not(:last-child):after{content:"→";z-index:1;color:var(--accent);font:var(--text-xs) var(--mono);position:absolute;top:50%;right:-12px}.nested-lesson li>b,.nested-lesson li>span,.nested-lesson figcaption{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);text-transform:uppercase;color:var(--ink-4)}.nested-lesson li>span{text-transform:none;color:var(--ink-3);line-height:1.5}.nested-lesson-output{height:3px;position:absolute;bottom:-1px;left:-1px;right:-1px}.nested-lesson li>b{color:var(--ink-2)}.nested-lesson figcaption{text-transform:none;margin-top:10px;line-height:1.5}@keyframes nested-step{0%,to{border-color:var(--line-2)}8%,30%{border-color:var(--accent)}40%{border-color:var(--line-2)}}@media (prefers-reduced-motion:reduce){.nested-lesson li{animation:none}}@media (max-width:620px){.nested-lesson ol{grid-template-columns:1fr;gap:10px 0}.nested-lesson li:not(:last-child):after{content:"↓";inset:auto auto -14px 50%}}.capability-evidence{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.capability-evidence span,.capability-evidence a{border:1px solid var(--line-2);font:var(--text-2xs) var(--mono);text-transform:uppercase;color:var(--ink-4);padding:7px 8px}.capability-evidence a:hover{background:var(--invert-surface);color:var(--invert-ink)}.capability-beat>.capability-beat-visual{position:sticky;top:132px}.capability-progress{z-index:2;background:var(--bg);border-bottom:1px solid var(--line-2);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);text-transform:uppercase;color:var(--ink-4);flex-wrap:wrap;gap:6px 28px;margin:20px 0 0;padding:12px 0;list-style:none;display:flex;position:sticky;top:72px}.capability-progress li{transition:color .2s}.capability-progress li[data-active]{color:var(--ink-1)}.capability-progress li[data-active] span{color:var(--accent)}.capability-beat-index{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);text-transform:uppercase;color:var(--accent);margin-bottom:10px;display:none}.capability-story-transition{max-width:52ch;color:var(--ink-3);margin:30px 0 0}@media (max-width:900px){.capability-beat{grid-template-columns:1fr;gap:24px;padding:36px 0}.capability-beat>.capability-beat-visual{position:relative;top:auto}.capability-progress{display:none}.capability-beat-index{display:block}}.oss-strip{border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);background:var(--surface-2);flex-wrap:wrap;align-items:baseline;gap:14px 5vw;padding:36px 5vw;display:flex}.oss-strip-label{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--ink-4);flex-basis:100%}.oss-strip ul{flex-wrap:wrap;gap:20px 5vw;margin:0;padding:0;list-style:none;display:flex}.oss-strip li{max-width:26ch}.oss-strip b{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--accent);margin-bottom:4px;display:block}.oss-strip span{color:var(--ink-3)}
.validator h2{font-size:var(--head-lg);line-height:var(--lh-head);letter-spacing:var(--ls-head);font-weight:var(--weight-head);margin:0}.race{background:var(--surface-0)}.pareto{margin:38px 0 0}.pareto-chart{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:auto minmax(0,1fr);column-gap:12px;display:grid}.pareto-axis-y-title{font:var(--text-2xs) var(--mono);color:var(--ink-3);grid-area:1/1/auto/-1;margin-bottom:10px}.pareto-plot{border-left:1px solid var(--line-3);border-bottom:1px solid var(--line-3);grid-area:2/2;height:clamp(280px,32vw,400px);position:relative}.pareto-plot svg{width:100%;height:100%;display:block;position:absolute;inset:0}.pareto-grid{stroke:var(--line-1);stroke-width:1px}.pareto-frontier{fill:none;stroke:var(--ok);stroke-width:1.5px;stroke-dasharray:5 4;opacity:.75}.pareto-axis-y,.pareto-axis-x{font:var(--text-2xs) var(--mono);color:var(--ink-4);position:relative}.pareto-axis-y{grid-area:2/1;width:2.5em}.pareto-axis-y span{position:absolute;right:0;transform:translateY(50%)}.pareto-axis-x{grid-area:3/2;height:2.4em}.pareto-axis-x span{position:absolute;top:6px;transform:translate(-50%)}.pareto-axis-x b{color:var(--ink-3);font-weight:500;position:absolute;top:6px;right:0}.pareto-point{grid-auto-flow:column;align-items:center;gap:9px;transition:opacity .3s,filter .3s;display:grid;position:absolute;transform:translate(-50%,50%)}.pareto-point[data-flip]{direction:rtl;grid-auto-flow:column dense}.pareto-point[data-flip]>*{direction:ltr}.pareto-point,.pareto-key li{--mark:var(--ink-4)}.pareto-point[data-tone=ok],.pareto-key li[data-tone=ok]{--mark:var(--ok)}.pareto-point[data-tone=bad],.pareto-key li[data-tone=bad]{--mark:var(--bad)}.pareto-dot,.pareto-key-dot{background:var(--mark);border-radius:50%;flex:none;width:11px;height:11px}.pareto-dot{box-shadow:0 0 0 4px color-mix(in srgb, var(--surface-0) 70%, transparent);transition:transform .5s cubic-bezier(.2,.8,.2,1)}[data-ours] .pareto-dot,[data-ours] .pareto-key-dot{box-shadow:0 0 0 3px var(--surface-0),0 0 0 5px var(--mark)}.pareto-name{white-space:nowrap;font:var(--text-2xs) var(--mono);color:var(--ink-2);text-shadow:0 0 4px var(--surface-0),0 0 9px var(--surface-0)}.pareto-point[data-dim]{opacity:.3;filter:saturate(.4)}@starting-style{.pareto-dot{transform:scale(.2)}}.pareto-key{border-top:1px solid var(--line-1);grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:10px 34px;margin:26px 0 0;padding:18px 0 0;list-style:none;display:grid}.pareto-key li{font:var(--text-2xs) var(--mono);color:var(--ink-4);flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.pareto-key-dot{align-self:center}.pareto-key code{color:var(--ink-2)}.pareto-key-values{color:var(--ink-3)}.pareto-key small{flex-basis:100%;padding-left:21px}@media (max-width:700px){.pareto-name{display:none}.pareto-chart{column-gap:8px}.pareto-axis-x{height:4em}.pareto-axis-x b{top:auto;bottom:2px}}.action-button{border:1px solid var(--line-3);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);text-transform:uppercase;cursor:pointer;background:0 0;margin-top:30px;padding:13px 16px}.action-button:hover{border-color:var(--ink-4)}.validator{background:var(--surface-2);border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}.validator-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:8vw;margin-top:30px;display:grid}.validator h2{margin-top:26px}.validation-panel{border:1px solid color-mix(in srgb, var(--ok) 22%, var(--line-2));background:color-mix(in srgb, var(--ok) 5%, var(--surface-0));box-shadow:inset 3px 0 var(--ok);margin-top:30px;transition:all .25s}.validation-panel.failed{border-color:color-mix(in srgb, var(--bad) 22%, var(--line-2));box-shadow:inset 3px 0 var(--bad);background:color-mix(in srgb, var(--bad) 5%, var(--surface-0))}.validation-status{border-bottom:1px solid color-mix(in srgb, var(--ok) 12%, var(--line-1));font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);grid-template-columns:auto auto 1fr;align-items:center;gap:12px;padding:18px;display:grid}.validation-status span:last-child{text-align:right;color:var(--ink-4)}.status-dot{background:var(--ok);width:7px;height:7px;box-shadow:0 0 16px var(--ok);border-radius:50%}.failed .status-dot{background:var(--bad);box-shadow:0 0 16px var(--bad)}.validation-checks{padding:12px 18px}.validation-checks div{border-bottom:1px solid color-mix(in srgb, var(--ok) 12%, var(--line-1));font:var(--text-2xs) var(--mono);justify-content:space-between;padding:10px 0;display:flex}.validation-checks span{color:var(--ink-4)}.validation-checks b{color:var(--ok);font-weight:500}.validation-checks b.bad{color:var(--bad)}.validation-footer{font:var(--text-2xs) var(--mono);color:var(--ink-4);justify-content:space-between;padding:18px;display:flex}.validation-footer b{color:var(--ink-2);font-size:var(--head-2xs);font-weight:500}.playground{background:var(--surface-1);color:var(--ink-1)}.playground.section-pad{padding-top:0}.playground .eyebrow{color:var(--accent)}.playground-shell{border:1px solid var(--line-3);grid-template-columns:340px minmax(0,1fr);min-height:clamp(560px,64vh,720px);display:grid}.play-controls{border-right:1px solid var(--line-3);background:var(--surface-0);flex-direction:column;gap:28px;padding:24px;display:flex}.play-back-link{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--ink-4);align-items:center;gap:6px;text-decoration:none;display:inline-flex}.play-back-link:hover{color:var(--ink-1)}.field-group label{font:var(--text-2xs) var(--mono);text-transform:uppercase;letter-spacing:var(--ls-label);color:var(--ink-4);margin-bottom:12px;display:block}.item-row{border-bottom:1px solid var(--line-2);grid-template-columns:1fr auto 55px;align-items:center;gap:8px;padding:8px 0;display:grid}.item-row code{font:var(--text-2xs) var(--mono)}.field-note{font-family:var(--sans);font-size:var(--text-2xs);color:var(--ink-4);margin:10px 0 0;line-height:1.5}.pack-hint{font-family:var(--sans);font-size:var(--text-2xs);color:var(--accent);margin:0 0 -16px;line-height:1.5}.pack-hint.quiet{color:var(--ink-4)}.item-row input{border:1px solid var(--line-3);background:var(--surface-2);width:55px;font:var(--text-2xs) var(--mono);padding:7px}@media (pointer:coarse){.item-row input{width:68px;min-height:44px;font-size:16px}}.pack-button:disabled{opacity:.55;cursor:not-allowed}.pack-button{background:var(--invert-surface);color:var(--invert-ink);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);cursor:pointer;border:0;justify-content:space-between;padding:15px 16px;display:flex}.pack-button:hover{background:var(--invert-surface-hover)}.pack-state-edited{background:currentColor;border-radius:50%;align-self:center;width:7px;height:7px}.play-result{grid-template-rows:auto 1fr auto auto auto;grid-template-columns:minmax(0,1fr);gap:2px;min-width:0;padding:20px;display:grid;position:relative;overflow:hidden}.play-result-head{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--ink-4);z-index:2;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 18px;display:flex}.play-result-head b{color:var(--ink-1)}.play-stale-tag{border:1px solid var(--bad);color:var(--bad);letter-spacing:var(--ls-label);padding:2px 7px;font-style:normal}.play-verdict{font-family:var(--sans);font-size:var(--text-xs);letter-spacing:normal;flex-wrap:wrap;align-items:baseline;gap:4px 11px;display:flex}.play-verdict .state+.state:before{content:"·";color:var(--ink-4);margin-right:11px}.pack-stage{z-index:2;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:36px 36px;flex-wrap:wrap;justify-content:center;place-self:center;gap:18px;width:100%;padding:20px 0 24px;display:flex}.pack-stage figure{justify-items:center;gap:8px;width:min(580px,100%);margin:0;display:grid}.pack-stage figcaption{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-4)}.pack-canvas{width:min(560px,100%);height:clamp(230px,34vh,330px);overflow:visible}.pack-shell{fill:color-mix(in srgb, var(--ink-4) 14%, transparent);stroke:var(--ink-4);stroke-width:.006px;vector-effect:non-scaling-stroke}.pack-outline{fill:none;stroke:var(--ink-4);stroke-width:1px;vector-effect:non-scaling-stroke;pointer-events:none}.pack-box polygon{stroke:color-mix(in srgb, var(--ink-1) 55%, transparent);stroke-width:1px;vector-effect:non-scaling-stroke;stroke-linejoin:round}.pack-view{z-index:2;font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);text-transform:uppercase;color:var(--ink-4);flex-wrap:wrap;align-items:center;gap:10px 22px;padding:0 0 4px;display:flex}.pack-view-mode{border:1px solid var(--line-3);min-height:32px;color:var(--ink-2);font:inherit;letter-spacing:inherit;text-transform:uppercase;cursor:pointer;background:0 0;padding:0 10px}.pack-view-mode:hover{background:var(--invert-surface);color:var(--invert-ink)}.pack-view-mode[aria-pressed=true]{border-color:var(--accent);color:var(--ink-1)}.pack-3d{touch-action:none;cursor:grab;width:min(560px,100%);height:clamp(230px,34vh,330px)}.pack-3d:active{cursor:grabbing}.pack-3d:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pack-3d canvas{width:100%;height:100%;display:block}.pack-view-turn,.pack-view-cut{align-items:center;gap:8px;display:flex}.pack-view-turn[hidden]{display:none}.pack-view-turn b,.pack-view-cut b{color:var(--ink-2)}.pack-view-turn button{border:1px solid var(--line-2);min-width:32px;min-height:32px;color:var(--ink-3);font:var(--text-xs) var(--mono);cursor:pointer;background:0 0;padding:0}.pack-view-turn button:hover{background:var(--invert-surface);color:var(--invert-ink)}.pack-view-cut{cursor:pointer}.pack-view-cut input{width:clamp(96px,18vw,160px);accent-color:var(--brand)}.pack-box.is-ghost polygon{stroke:var(--bad);stroke-dasharray:4 3}.pack-box.is-ghost.is-selected polygon{stroke-dasharray:none}.pack-box.is-reserved polygon{stroke:var(--ink-3);stroke-dasharray:2 2}.pack-box.is-fixed polygon{stroke:var(--ink-1);stroke-width:2px}.pack-ghost-note{z-index:2;font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-4);margin:0;padding:0 0 10px}.pack-detail.is-refused{border-left-color:var(--bad)}.pack-detail{border:1px solid var(--line-2);border-left:2px solid var(--accent);z-index:2;font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:6px 18px;margin:0;padding:8px 38px 8px 10px;display:flex;position:relative}.pack-detail dl{flex-wrap:wrap;align-items:center;gap:6px 18px;margin:0;display:flex}.pack-detail dl>div{align-items:baseline;gap:6px;display:flex}.pack-detail dt{text-transform:uppercase;color:var(--ink-4)}.pack-detail dd{color:var(--ink-1);margin:0}.pack-detail>button{min-width:32px;min-height:32px;color:var(--ink-4);font:var(--text-xs) var(--mono);cursor:pointer;background:0 0;border:0;position:absolute;top:2px;right:2px}.pack-detail>button:hover{color:var(--ink-1)}.pack-box[role=button]{cursor:pointer}.pack-box[role=button]:hover polygon{stroke:var(--accent-strong)}.pack-box[role=button]:focus{outline:none}.pack-box[role=button]:focus-visible polygon,.pack-box.is-selected polygon{stroke:var(--accent-strong);stroke-width:2.5px}.pack-legend button{min-height:32px;color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;padding:0 6px;display:inline-flex}.pack-legend button:hover{color:var(--ink-2)}.pack-legend button[aria-pressed=true]{border-color:var(--line-3);color:var(--ink-1)}.pack-legend{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-4);z-index:2;flex-wrap:wrap;gap:14px;padding:0 0 12px;display:flex}.pack-legend i{border:1px solid color-mix(in srgb, var(--ink-1) 50%, transparent);width:9px;height:9px;margin-right:6px;display:inline-block}.pack-legend .is-fixed i{border:2px solid var(--ink-1)}.play-empty{font:var(--text-2xs) var(--mono);color:var(--ink-4);margin:0}.play-error{border-left:2px solid var(--bad);background:color-mix(in srgb, var(--bad) 10%, transparent);font:var(--text-2xs) var(--mono);color:var(--bad-on-tint);z-index:2;margin:10px 0 0;padding:9px 11px}.play-error span{display:block}.play-error span+span{margin-top:4px}.play-select{border:1px solid var(--line-3);background:var(--surface-2);width:100%;font:var(--text-2xs) var(--mono);color:inherit;padding:9px}@media (pointer:coarse){.play-select{min-height:44px;font-size:16px}}.scenario-lab{border-bottom:1px solid var(--line-2);padding-bottom:18px}.scenario-lab-links{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);flex-wrap:wrap;gap:6px 18px;margin:10px 0 0;display:flex}.play-mode-tabs{border:1px solid var(--line-3);display:flex}.play-mode-tabs button{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-4);cursor:pointer;background:0 0;border:0;flex:1;padding:10px 6px}.play-mode-tabs button+button{border-left:1px solid var(--line-3)}.play-mode-tabs button:hover{color:var(--ink-2)}.play-mode-tabs button.active{background:var(--surface-2);color:var(--ink-1)}.raw-editor{resize:vertical;border:1px solid var(--line-3);background:var(--surface-2);width:100%;min-height:220px;font:var(--text-2xs) var(--mono);color:inherit;padding:11px;line-height:1.5}.raw-editor-actions{gap:8px;margin-top:10px;display:flex}.raw-editor-actions button{border:1px solid var(--line-3);font:var(--text-2xs) var(--mono);color:var(--ink-3);cursor:pointer;background:0 0;padding:7px 11px}.raw-editor-actions button:hover{color:var(--ink-1)}.upright-toggle{border:1px solid var(--line-3);background:var(--surface-2);min-height:28px;color:var(--ink-4);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);text-transform:uppercase;cursor:pointer;align-items:center;gap:.42em;padding:0 9px;display:inline-flex}@media (pointer:coarse){.upright-toggle{min-height:44px;padding:0 12px}}.upright-toggle .icon{vertical-align:-.14em}.upright-toggle.active{background:var(--invert-surface);border-color:var(--invert-surface);color:var(--invert-ink)}.container-cost{font:var(--text-2xs) var(--mono);color:var(--ink-4)}.score-vector{border-top:1px solid var(--line-2);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--ink-4);z-index:2;grid-template-columns:minmax(0,1fr) minmax(0,268px);align-items:start;gap:9px 40px;padding:14px 0 0;display:grid}.score-title{grid-column:1/-1}.score-rows{counter-reset:score;margin:0;padding:0;list-style:none;display:grid}.score-rows li{border-top:1px solid var(--line-1);grid-template-columns:1.7em minmax(0,1fr) auto;align-items:baseline;gap:2px 14px;padding:7px 0;display:grid}.score-rows li:first-child{border-top:0}.score-rows li:before{counter-increment:score;content:counter(score);font:var(--text-2xs) var(--mono);color:var(--ink-4);grid-area:1/1}.score-rows b{font-family:var(--sans);font-size:var(--text-xs);letter-spacing:normal;text-transform:none;color:var(--ink-1);grid-area:1/2;font-weight:500}.score-rows small{font-family:var(--sans);font-size:var(--text-2xs);letter-spacing:normal;text-transform:none;color:var(--ink-4);grid-area:2/2;line-height:1.45}.score-rows span{font-family:var(--mono);font-size:var(--text-lg);letter-spacing:var(--ls-tight);color:var(--ink-1);grid-area:1/3/span 2;place-self:center end}.score-note{font-family:var(--sans);font-size:var(--text-2xs);letter-spacing:normal;text-transform:none;color:var(--ink-4);margin:0;padding-top:7px;line-height:1.55}.refusal-list{border-top:1px solid var(--line-2);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-4);z-index:2;grid-template-columns:minmax(0,1fr) minmax(0,268px);gap:7px 40px;padding:14px 0 0;display:grid}.refusal-list>*{grid-column:1}.refusal-card{border-bottom:1px dashed var(--line-2);flex-direction:column;gap:5px;padding:9px 0;display:flex}.refusal-card:last-of-type{border-bottom:0;padding-bottom:0}.refusal-card header{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid}.refusal-card p{margin:0}.refusal-card b{color:var(--ink-1)}.refusal-card em{font-style:normal;font-family:var(--sans);font-size:var(--text-xs);letter-spacing:normal;color:var(--ink-2)}.refusal-card .state{font-family:var(--sans);font-size:var(--text-xs);letter-spacing:normal}.refusal-measure{color:var(--ink-4)}.refusal-details{color:var(--ink-4);margin:0;padding-left:16px}.refusal-details li{list-style:outside}.refusal-constraint{align-items:center;gap:10px;display:flex}.refusal-constraint a{color:var(--ink-2);text-underline-offset:2px;text-decoration:underline}.refusal-constraint a:hover{color:var(--ink-1)}.play-result[aria-busy=true] .pack-stage,.play-result[aria-busy=true] .pack-legend,.play-result[aria-busy=true] .result-metrics,.play-result[aria-busy=true] .score-vector,.play-result[aria-busy=true] .refusal-list{opacity:.4}.pack-stage,.pack-legend,.result-metrics,.score-vector,.refusal-list{transition:opacity .18s}.play-actions{background:var(--line-2);flex-wrap:wrap;gap:1px;display:flex}.play-actions button{background:var(--surface-2);min-width:max-content;font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-3);cursor:pointer;border:0;flex:1;padding:11px 14px}.play-actions button:hover{color:var(--ink-1)}.code-gen,.work-order{border:1px solid var(--line-2)}.code-gen-head,.work-order-head{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);color:var(--ink-4);border-bottom:1px solid var(--line-2);padding:12px 16px}.work-order{margin-bottom:16px}.work-order-note{font:var(--text-xs) var(--mono);color:var(--ink-3);margin:0;padding:12px 16px;line-height:1.6}.work-order-frame{border:0;border-top:1px solid var(--line-2);background:var(--document-paper);width:100%;height:420px;display:block}.work-order-code{border-top:1px solid var(--line-2);max-height:420px;margin:0;overflow:auto}.code-gen-langs,.work-order-tabs{border-bottom:1px solid var(--line-2);display:flex}.code-gen-langs button,.work-order-tabs button{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);color:var(--ink-4);cursor:pointer;background:0 0;border:0;flex:1;padding:10px 6px}.code-gen-langs button+button,.work-order-tabs button+button{border-left:1px solid var(--line-2)}.code-gen-langs button:hover,.work-order-tabs button:hover{color:var(--ink-2)}.code-gen-langs button.active,.work-order-tabs button.active{background:var(--surface-2);color:var(--ink-1)}@media (max-width:400px){.code-gen-langs{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.code-gen-langs button+button{border-left:0}.code-gen-langs button:not(:nth-child(3n)){border-right:1px solid var(--line-2)}.code-gen-langs button:nth-child(-n+3){border-bottom:1px solid var(--line-2)}}.code-gen .code-block{max-height:320px;overflow-y:auto}.result-metrics{border-top:1px solid var(--line-3);z-index:2;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.result-metrics div{border-right:1px solid var(--line-3);padding:14px 10px 4px}.result-metrics div:last-child{border-right:0}.result-metrics strong{font-size:var(--head-sm);letter-spacing:var(--ls-head);display:block}.result-metrics span{font:var(--text-2xs) var(--mono);color:var(--ink-4);text-transform:uppercase}@media (max-width:980px){.validator-layout{grid-template-columns:minmax(0,1fr);gap:35px}.playground-shell{grid-template-columns:minmax(0,1fr)}.play-controls{border-right:0;border-bottom:1px solid var(--line-3)}.score-vector,.refusal-list{grid-template-columns:minmax(0,1fr)}.score-note{padding-top:0}}@media (max-width:620px){.playground-shell{border-left:0;border-right:0}.play-controls{padding:18px}.play-result{min-height:470px}.pack-canvas,.pack-3d{width:100%;height:200px}.result-metrics strong{font-size:var(--head-2xs)}}.constraint-explorer{border:1px solid var(--line-3);grid-template-columns:260px 1fr;min-height:600px;display:grid}.constraint-menu{border-right:1px solid var(--line-3);background:var(--surface-0)}.constraint-menu button{border:0;border-bottom:1px solid var(--line-2);text-align:left;width:100%;font:var(--text-2xs) var(--mono);cursor:pointer;background:0 0;gap:18px;padding:16px 14px;display:flex}.constraint-menu button span{color:var(--ink-4)}.constraint-menu button.active{background:var(--invert-surface);color:var(--invert-ink)}.constraint-menu button.active span{color:var(--brand)}.constraint-demo{grid-template-columns:1.2fr .8fr;min-height:600px;display:grid}.constraint-graphic{background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);border-right:1px solid var(--line-3);background-size:35px 35px;place-items:center;display:grid}.constraint-text{align-self:center;padding:50px 35px}.constraint-text .eyebrow{color:var(--accent)}.constraint-text h2{font-size:var(--head-xl);letter-spacing:var(--ls-head);margin:18px 0}.constraint-text code{background:var(--invert-surface);color:var(--invert-ink);font:var(--text-2xs) var(--mono);padding:9px 11px;display:inline-block}.constraint-text p{color:var(--ink-4);line-height:var(--lh-body);margin:26px 0}.constraint-pass{border-top:1px solid var(--line-2);color:var(--ok);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);padding-top:18px}.data-table{border-collapse:collapse;width:100%;font:var(--text-2xs) var(--mono)}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--line-2);padding:14px}.data-table th{color:var(--ink-4);font-weight:500}.data-table td:last-child{text-align:right}.registry-card{position:relative}.registry-card:after{content:"";font:var(--text-2xs) var(--mono);position:absolute;top:18px;right:18px}@media (max-width:850px){.constraint-explorer{grid-template-columns:minmax(0,1fr)}.constraint-menu{border-right:0;border-bottom:1px solid var(--line-3);display:flex;overflow:auto}.constraint-menu button{white-space:nowrap;border-right:1px solid var(--line-2);border-bottom:0;flex:none;width:auto;min-width:130px}.constraint-demo{grid-template-columns:minmax(0,1fr)}.constraint-graphic{border-right:0;border-bottom:1px solid var(--line-3);min-height:360px}}.race-actions{flex-wrap:wrap;gap:10px;display:flex}.race-actions .action-button.active{border-color:var(--info);color:var(--info)}.failure-copy code{background:var(--surface-2);border:1px solid var(--line-2);font:var(--text-2xs) var(--mono);letter-spacing:normal;color:var(--ink-4);vertical-align:1px;margin-left:2px;padding:1px 6px;display:inline-block}.failures{background:var(--surface-1);border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}.failure-grid{border-left:1px solid var(--line-2);border-top:1px solid var(--line-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.failure-card{border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2);grid-template-rows:auto 1fr auto;min-height:390px;padding:18px;display:grid}.failure-index{font:var(--text-2xs) var(--mono);color:var(--ink-4)}.failure-ghost{align-self:center;height:170px;position:relative}.failure-ghost:after{content:"";border:1px solid var(--line-3);z-index:1;position:absolute;inset:24% 12%}.failure-ghost i{border:1px solid var(--fig-line);background:var(--fig-fill);z-index:2;position:absolute}.failure-ghost i+i{border-color:var(--bad);background:color-mix(in srgb, var(--bad) 25%, transparent)}.failure-ghost[data-variant=rotation_restricted] i:first-child{width:32%;height:20%;top:46%;left:16%}.failure-ghost[data-variant=rotation_restricted] i+i{width:20%;height:70%;top:-8%;left:54%}.failure-ghost[data-variant=no_feasible_placement] i:first-child{width:28%;height:18%;top:48%;left:24%}.failure-ghost[data-variant=no_feasible_placement] i+i{width:42%;height:26%;top:20%;left:38%}.failure-ghost[data-variant=group_cannot_fit_together]:before{content:"";background:var(--line-3);z-index:1;width:16%;height:1px;position:absolute;top:53%;left:44%}.failure-ghost[data-variant=group_cannot_fit_together] i:first-child{width:26%;height:26%;top:38%;left:18%}.failure-ghost[data-variant=group_cannot_fit_together] i+i{border-style:dashed;width:30%;height:26%;top:38%;left:62%}.failure-copy span{font-family:var(--sans);font-size:var(--text-xs);letter-spacing:normal;color:var(--bad);font-weight:500;line-height:1.5}.failure-copy h3{font-size:var(--head-sm);letter-spacing:var(--ls-tight);margin:13px 0 5px}.failure-copy b{font:var(--text-sm) var(--mono);color:var(--ink-1)}.failure-copy p{font-size:var(--text-xs);color:var(--ink-4);line-height:var(--lh-body);max-width:280px}@media (max-width:780px){.failure-grid{grid-template-columns:minmax(0,1fr)}.failure-card{grid-template-rows:1fr;grid-template-columns:40px 1fr 1fr;align-items:center;min-height:300px}.failure-ghost{width:100%}.failure-copy{padding-left:14px}}.playground-bleed{margin-bottom:-110px;margin-left:-5vw;margin-right:-5vw}.action-button{align-items:center;min-height:44px;display:inline-flex}@media (max-width:640px){.validation-status{grid-template-columns:auto 1fr}.validation-status span:last-child{text-align:left;grid-column:1/-1}.validation-footer{flex-wrap:wrap;gap:12px}.failure-card{padding:20px;grid-template-columns:1fr!important;min-height:0!important;display:grid!important}.failure-ghost{height:150px}.playground-shell{min-height:0}.play-result{min-height:390px}.result-metrics{flex-wrap:wrap;gap:12px}.playground-bleed{margin-bottom:-80px;margin-left:-16px;margin-right:-16px}}.registry-toolbar{border:1px solid var(--line-2);justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px;padding:14px;display:flex}.registry-toolbar>div{flex-wrap:wrap;gap:5px;display:flex}.registry-toolbar button{border:1px solid var(--line-2);background:var(--surface-2);min-height:38px;font:var(--text-2xs) var(--mono);cursor:pointer;padding:0 13px}.registry-toolbar button.active{background:var(--invert-surface);color:var(--invert-ink);border-color:var(--invert-surface)}.registry-toolbar label{font:var(--text-2xs) var(--mono);text-transform:uppercase;color:var(--ink-4);align-items:center;gap:10px;display:flex}.registry-toolbar input{border:1px solid var(--line-3);background:var(--surface-3);min-width:240px;min-height:38px;font:var(--text-2xs) var(--mono);padding:0 12px}@media (pointer:coarse){.registry-toolbar input{width:100%;min-width:0;min-height:44px;font-size:16px}.registry-toolbar label{width:100%}.registry-toolbar button{min-height:44px}}.registry-surfaces{margin-bottom:70px}.plugin-meta{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;margin-top:28px;display:grid}.plugin-meta span{border:1px solid var(--line-2);font:var(--text-2xs) var(--mono);color:var(--ink-4);padding:8px}.plugin-meta b{color:var(--ink-1);font-size:var(--text-2xs);overflow-wrap:anywhere;margin-top:4px;display:block}@media (max-width:640px){.registry-toolbar{flex-direction:column;align-items:stretch}.registry-toolbar label{grid-template-columns:auto 1fr;display:grid}.registry-toolbar input{width:100%;min-width:0}}.registry-empty{border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2);min-height:180px;color:var(--ink-4);font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label-soft);text-transform:uppercase;grid-column:1/-1;place-items:center;display:grid}.table-scroll{border:1px solid var(--line-2);-webkit-overflow-scrolling:touch;background:linear-gradient(to right, var(--surface-1) 30%, transparent) left center / 32px 100% no-repeat local, linear-gradient(to left, var(--surface-1) 30%, transparent) right center / 32px 100% no-repeat local, linear-gradient(to right, color-mix(in srgb, var(--ink-1) 15%, transparent), transparent) left center / 16px 100% no-repeat scroll, linear-gradient(to left, color-mix(in srgb, var(--ink-1) 15%, transparent), transparent) right center / 16px 100% no-repeat scroll;max-width:100%;overflow:auto}.table-scroll .data-table{border:0;min-width:680px}.registry-card-link{color:inherit;text-decoration:none;transition:transform .22s,border-color .22s,background .22s}.registry-card-link:hover{border-color:color-mix(in srgb,var(--brand) 45%,var(--line-2));background:color-mix(in srgb,var(--surface-1) 92%,var(--brand));transform:translateY(-3px)}.registry-empty-production{border:1px dashed var(--line-2);flex-direction:column;grid-column:1/-1;justify-content:center;gap:.75rem;min-height:220px;padding:2rem;display:flex}.registry-empty-production b{font-size:var(--head-xs);letter-spacing:var(--ls-tight)}.registry-empty-production span{max-width:700px;color:var(--ink-4);line-height:var(--lh-body)}.result-bound,.result-validation{border-left:2px solid var(--ink-4);font-family:var(--sans);font-size:var(--text-xs);color:var(--ink-2);margin:14px 0 0;padding:2px 0 2px 12px;line-height:1.5}.result-validation{margin-bottom:16px}.result-bound.is-attained{border-left-color:var(--ok)}.result-bound p{margin:4px 0 0}.result-bound .score-title,.result-validation .score-title{font:var(--text-2xs) var(--mono);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--ink-4);display:block}.result-validation.is-valid{border-left-color:var(--ok)}.result-validation.is-issues{border-left-color:var(--bad)}.result-validation p{margin:4px 0 0}.result-validation ul{margin:6px 0 0;padding-left:16px}.result-validation small{font-size:var(--text-2xs);color:var(--ink-4);margin-top:4px;display:block}
