@font-face{font-family:Michroma;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/michroma-latin-ext-400-normal.BeYM1uOO.woff2)format("woff2"),url(/_astro/michroma-latin-ext-400-normal.DlRaauac.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Michroma;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/michroma-latin-400-normal.4gS0VCia.woff2)format("woff2"),url(/_astro/michroma-latin-400-normal.C7Pn7qca.woff)format("woff");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:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/hanken-grotesk-vietnamese-wght-normal.CHiFlh_0.woff2)format("woff2-variations");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:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/hanken-grotesk-latin-ext-wght-normal.Dg-wlmqe.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/hanken-grotesk-latin-wght-normal.CaVRRdDk.woff2)format("woff2-variations");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff");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}@property --spin{syntax:"<angle>";inherits:false;initial-value:0deg}:root{--bg:#0a0f1c;--bg-2:#0e1526;--surface:#111a2c;--surface-2:#18233a;--glass:#111a2cb8;--ink:#e8f1ff;--muted:#8c9ab8;--line:#22304a;--line-2:#2e3f5f;--accent:#5ce1e6;--accent-ink:#03141a;--accent-soft:#5ce1e61f;--when:#5ce1e6;--when-soft:#5ce1e61f;--if:#ffb23f;--if-soft:#ffb23f21;--then:#9b8cff;--then-soft:#9b8cff24;--warn-soft:#ffb23f1a;--danger:#ff7a59;--radius:16px;--shadow:0 1px 0 #ffffff0a inset, 0 20px 40px -24px #000c;--font-display:"Michroma", ui-sans-serif, system-ui, sans-serif;--font-body:"Hanken Grotesk Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;--max:1160px;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);margin:0;font-size:17px;line-height:1.6}img,svg{max-width:100%}a{color:var(--accent);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.01em;margin:0 0 .5em;line-height:1.15}h1{font-size:clamp(2rem,5vw,3.2rem);font-weight:750}h2{margin-top:1.8em;font-size:clamp(1.4rem,3vw,1.9rem);font-weight:700}h3{font-size:1.15rem;font-weight:650}p{margin:0 0 1em}code{background:var(--surface-2);border-radius:5px;padding:.1em .35em;font-size:.9em}.wrap{max-width:var(--max);margin:0 auto;padding:0 16px}.narrow{max-width:760px}.muted{color:var(--muted)}.small{font-size:.9rem}.lede{color:var(--muted);max-width:680px;font-size:1.15rem}.skip{position:absolute;left:-9999px}.skip:focus{background:var(--surface);z-index:10;padding:8px 12px;top:8px;left:16px}.site-header{border-bottom:1px solid var(--line);background:var(--bg);z-index:5;position:sticky;top:0}.site-header .wrap{justify-content:space-between;align-items:center;gap:16px;min-height:60px;display:flex}.brand{color:var(--ink);font-family:var(--font-display);align-items:center;gap:10px;font-size:1.2rem;font-weight:750;text-decoration:none;display:inline-flex}.brand svg{width:28px;height:28px;color:var(--accent)}.nav{flex-wrap:wrap;gap:4px;display:flex}.nav a{color:var(--ink);border-radius:8px;padding:6px 10px;font-size:.95rem;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{background:var(--surface-2)}.menu-btn{display:none}@media (width<=760px){.menu-btn{border:1px solid var(--line);color:var(--ink);font:inherit;background:0 0;border-radius:8px;padding:6px 10px;display:inline-flex}.nav{background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;padding:8px 16px 16px;display:none;position:absolute;top:60px;left:0;right:0}.nav.open{display:flex}}main{padding:32px 0 64px}.crumbs{color:var(--muted);margin-bottom:16px;font-size:.85rem}.crumbs a{color:var(--muted)}.crumbs span[aria-hidden]{margin:0 6px}.btn{background:var(--accent);color:var(--accent-ink);border-radius:10px;align-items:center;gap:8px;padding:11px 18px;font-weight:600;text-decoration:none;display:inline-flex}.btn.ghost{color:var(--ink);border:1px solid var(--line);background:0 0}.chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.chip{background:var(--surface-2);color:var(--ink);border-radius:999px;padding:3px 10px;font-size:.8rem;text-decoration:none;display:inline-block}a.chip:hover{background:var(--accent-soft)}.badge{border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.badge.demoed{background:var(--when-soft);color:var(--when)}.badge.china-verified{background:var(--then-soft);color:var(--then)}.badge.unverified{background:var(--if-soft);color:var(--if)}.rule{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.rule-row{border-top:1px solid var(--line);grid-template-columns:92px 1fr;display:grid}.rule-row:first-child{border-top:0}.rule-key{font-family:var(--font-display);letter-spacing:.06em;padding:14px 12px;font-size:.85rem;font-weight:800}.rule-row.when .rule-key{background:var(--when-soft);color:var(--when)}.rule-row.if .rule-key{background:var(--if-soft);color:var(--if)}.rule-row.then .rule-key{background:var(--then-soft);color:var(--then)}.rule-body{padding:10px 16px}.rule-body ol,.rule-body ul{margin:0;padding-left:1.2em}.rule-body li{padding:4px 0}.rule-body strong{font-weight:650}.rule-body .detail{color:var(--muted)}.grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:10px;padding:18px;display:flex}.card h3{margin:0;font-size:1.08rem}.card h3 a{color:var(--ink);text-decoration:none}.card h3 a:after{content:"";position:absolute;inset:0}.card{position:relative}.card:hover{border-color:var(--accent)}.card p{color:var(--muted);margin:0;font-size:.95rem}.mini-rule{gap:4px;font-size:.85rem;display:grid}.mini-rule span b{font-family:var(--font-display);letter-spacing:.06em;margin-right:6px;font-size:.72rem}.mini-rule .w b{color:var(--when)}.mini-rule .t b{color:var(--then)}.card .chips{z-index:1;margin-top:auto;position:relative}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.note{background:var(--warn-soft);border-radius:var(--radius);padding:14px 18px;font-size:.95rem}.note>:last-child{margin-bottom:0}.steps{counter-reset:s;gap:10px;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:s;grid-template-columns:34px 1fr;align-items:start;gap:12px;display:grid}.steps li:before{content:counter(s);font-family:var(--font-display);background:var(--accent-soft);width:30px;height:30px;color:var(--accent);border-radius:50%;place-items:center;font-weight:700;display:grid}.steps b{display:block}.split{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:32px;display:grid}.split aside{gap:16px;display:grid;position:sticky;top:84px}@media (width<=900px){.split{grid-template-columns:1fr}.split aside{position:static}}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:10px 12px}th{font-family:var(--font-display);background:var(--surface-2);font-weight:650}.filters{gap:12px;margin:20px 0 24px;display:grid}.filters input[type=search]{width:100%;font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;padding:12px 14px}.filter-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.filter-row .lbl{color:var(--muted);min-width:64px;margin-right:4px;font-size:.8rem}.filter-row button{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;padding:5px 12px;font-size:.85rem}.filter-row button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.count{color:var(--muted);font-size:.9rem}.hero{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:32px;padding:24px 0 8px;display:grid}@media (width<=900px){.hero{grid-template-columns:1fr}}.eyebrow{color:var(--accent);letter-spacing:.04em;text-transform:uppercase;font-size:.85rem;font-weight:600}.actions-row{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.tiles{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);padding:14px 16px;text-decoration:none}.tile:hover{border-color:var(--accent)}.tile b{font-family:var(--font-display);display:block}.tile span{color:var(--muted);font-size:.85rem}details{border-bottom:1px solid var(--line);padding:12px 0}summary{cursor:pointer;font-weight:600}details p{margin:10px 0 0}.timeline{border-left:2px solid var(--line);margin:0;padding:0;list-style:none}.timeline li{padding:0 0 20px 20px;position:relative}.timeline li:before{content:"";background:var(--surface);border:2px solid var(--accent);border-radius:50%;width:12px;height:12px;position:absolute;top:6px;left:-7px}.timeline li.done:before{background:var(--accent)}.timeline time{color:var(--muted);font-size:.85rem;display:block}.ad-slot[hidden]{display:none}.site-footer{border-top:1px solid var(--line);color:var(--muted);padding:32px 0 40px;font-size:.9rem}.site-footer .cols{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:24px;display:grid}.site-footer h4{color:var(--ink);font-size:.95rem}.site-footer ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.site-footer a{color:var(--muted)}.disclaimer{border-top:1px solid var(--line);margin-top:24px;padding-top:16px}[hidden]{display:none!important}@media (width<=520px){.rule-row{grid-template-columns:72px 1fr}.rule-key{padding:14px 8px;font-size:.75rem}}.rule-sub{letter-spacing:0;opacity:.8;font-size:.7rem;font-weight:600;display:block}.rule-body li.ext{opacity:.85}.ext-tag{background:var(--if-soft);color:var(--if);border-radius:999px;margin-left:6px;padding:1px 8px;font-size:.72rem;display:inline-block}.facts{gap:10px;margin:0;display:grid}.facts dt{font-weight:650}.facts dd{color:var(--muted);margin:0}.ls-drop{border:2px dashed var(--line);border-radius:var(--radius);text-align:center;background:var(--bg);padding:24px 16px}.ls-drop.over{border-color:var(--accent);background:var(--accent-soft)}.ls-drop .btn{cursor:pointer}.ls-show{border:1px solid var(--line);background:var(--surface);border-left-width:5px;border-radius:10px;margin-top:14px;padding:12px 16px}.ls-show.pass{border-left-color:var(--when)}.ls-show.warn{border-left-color:var(--if)}.ls-show h3{flex-wrap:wrap;align-items:baseline;gap:8px;margin:0 0 6px;display:flex}.ls-verdict{color:var(--muted);font-size:.85rem;font-weight:600}#results>h3{margin:18px 0 6px}.ls-checks{gap:6px;margin:0;padding:0;font-size:.95rem;list-style:none;display:grid}.ls-checks li{grid-template-columns:22px 1fr;gap:6px;display:grid}.ls-checks li>span:first-child{text-align:center;font-weight:800}.ls-checks li.pass>span:first-child{color:var(--when)}.ls-checks li.warn>span:first-child{color:var(--if)}.lc-library{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;margin-bottom:16px;display:grid}.lc-sound{border:1px solid var(--line);background:var(--bg);border-radius:10px;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;padding:10px;display:grid}.lc-meta b{font-size:.95rem;display:block}.lc-meta span{color:var(--muted);font-size:.8rem}.lc-play{background:var(--accent);width:36px;height:36px;color:var(--accent-ink);cursor:pointer;border:0;border-radius:50%;font-size:.8rem}.lc-use{border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;font:inherit;border-radius:8px;padding:6px 12px;font-size:.85rem}.lc-use:hover{border-color:var(--accent)}.lc-wave{border:1px solid var(--line);background:var(--bg);border-radius:10px;position:relative;overflow:hidden}.lc-wave canvas{width:100%;height:120px;display:block}.lc-sel{background:color-mix(in srgb, var(--accent) 18%, transparent);border-left:2px solid var(--accent);border-right:2px solid var(--accent);pointer-events:none;position:absolute;top:0;bottom:0}.lc-range{gap:8px;margin:12px 0;display:grid}.lc-range label{grid-template-columns:44px 1fr 60px;align-items:center;gap:8px;font-size:.9rem;display:grid}.lc-range input{width:100%;accent-color:var(--accent)}.lc-opts{gap:6px;font-size:.9rem;display:grid}.lc-tool button.btn{cursor:pointer;font:inherit;border:0;font-weight:600}.lc-tool button.btn.ghost{border:1px solid var(--line)}body{font-family:var(--font-body);background:radial-gradient(900px 500px at 85% -10%, #5ce1e612, transparent 60%), radial-gradient(700px 400px at -10% 10%, #9b8cff0f, transparent 60%), var(--bg);background-attachment:fixed}html,body{overflow-x:clip}::selection{background:#5ce1e64d}h1{font-family:var(--font-display);letter-spacing:0;text-wrap:balance;font-size:clamp(1.7rem,4.2vw,3rem);font-weight:400;line-height:1.16}h2{font-family:var(--font-display);letter-spacing:.01em;font-size:clamp(1.1rem,2.2vw,1.45rem);font-weight:400;line-height:1.3}h3{font-family:var(--font-body);letter-spacing:0;font-weight:700}.lede{color:var(--muted)}code{background:var(--surface-2);color:#cfe3ff;font-family:var(--font-mono)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.site-header{-webkit-backdrop-filter:blur(14px)saturate(140%);background:#0a0f1cb8;border-bottom-color:#2e3f5f99}.brand{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;font-size:.95rem;font-weight:400}.brand svg{width:30px;height:30px}.nav a{color:var(--muted);font-size:.9rem}.nav a:hover,.nav a[aria-current=page]{background:var(--surface-2);color:var(--ink)}@media (width<=760px){.nav{background:#0a0f1cf7}.menu-btn{border-color:var(--line-2)}}.eyebrow,.rule-key,.mini-rule span b,.badge,.chip,.steps li:before,.rule-sub,.ext-tag,.count,.crumbs,.lc-range output{font-family:var(--font-mono)}.eyebrow{color:var(--accent);letter-spacing:.16em;font-size:.78rem;font-weight:500}.rule-key{letter-spacing:.12em;font-size:.78rem;font-weight:600}.card,.panel,.rule,.tile,.ls-show,.lc-sound{background:var(--glass);border:1px solid var(--line);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(6px)}.ls-show{border-left-width:5px}.card,.tile{transition:border-color .2s,box-shadow .2s,transform .2s}.card:hover,.tile:hover{border-color:#5ce1e68c;transform:translateY(-2px);box-shadow:0 0 0 1px #5ce1e626,0 18px 50px -24px #5ce1e673}.rule-row{border-top-color:var(--line)}.rule-row .rule-key{border-right:1px solid var(--line)}.rule-row.when .rule-key{background:linear-gradient(90deg, var(--when-soft), transparent)}.rule-row.if .rule-key{background:linear-gradient(90deg, var(--if-soft), transparent)}.rule-row.then .rule-key{background:linear-gradient(90deg, var(--then-soft), transparent)}.note{background:var(--warn-soft);border:1px solid #ffb23f40}th{background:var(--surface-2);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.8rem;font-weight:500}td,th,details{border-bottom-color:var(--line)}.chip{background:var(--surface-2);color:var(--ink);border:1px solid var(--line)}a.chip:hover{border-color:var(--accent);background:var(--accent-soft)}.btn{background:var(--accent);color:var(--accent-ink);border-radius:12px;font-weight:700;transition:box-shadow .2s,transform .2s;box-shadow:0 0 0 1px #5ce1e680,0 10px 30px -12px #5ce1e6b3}.btn:hover{transform:translateY(-1px);box-shadow:0 0 0 1px #5ce1e6cc,0 14px 40px -10px #5ce1e6e6}.btn.ghost{color:var(--ink);border:1px solid var(--line-2);box-shadow:none;background:#ffffff08}.btn.ghost:hover{border-color:var(--accent)}.glow-edge{isolation:isolate;position:relative}.glow-edge:before{content:"";border-radius:inherit;z-index:-1;background:conic-gradient(from var(--spin), transparent 0 60%, var(--when) 72%, var(--if) 80%, var(--then) 87%, transparent 95%);-webkit-mask-composite:xor;padding:1px;animation:5s linear infinite spin;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-composite:exclude;mask-mode:match-source,match-source}.btn.glow-edge:before{padding:2px;inset:-2px}@keyframes spin{to{--spin:360deg}}.filters input[type=search],.filter-row button,.lc-use{background:var(--surface);border-color:var(--line-2);color:var(--ink)}.filter-row button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.ls-drop{border-color:var(--line-2);background:#0a0f1c80}.timeline{border-left-color:var(--line-2)}.timeline li:before{background:var(--bg)}.ls-show.fail{border-left-color:var(--danger)}.ls-checks li.fail>span:first-child{color:var(--danger)}.stage{border-bottom:1px solid var(--line);align-items:center;min-height:min(86vh,760px);margin:-32px calc(50% - 50vw) 0;display:grid;position:relative;overflow:hidden}.stage-art{opacity:.6;background-image:url(/img/hero-1920.webp);background-position:70%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.stage:after{content:"";pointer-events:none;background:linear-gradient(90deg, #0a0f1cf2 0%, #0a0f1cb8 42%, #0a0f1c1a 100%), linear-gradient(0deg, var(--bg) 0%, transparent 28%);position:absolute;inset:0}.stage-inner{z-index:1;max-width:var(--max);grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:40px;width:100%;margin:0 auto;padding:72px 16px 96px;display:grid;position:relative}.stage h1{margin-bottom:.4em;font-size:clamp(1.9rem,4.6vw,3.4rem)}.stage h1 .hl{background:linear-gradient(90deg, var(--when), var(--then) 55%, var(--if));color:#0000;-webkit-background-clip:text;background-clip:text}.stage .lede{color:#b7c4dd;font-size:1.12rem}.stage .rule{backdrop-filter:blur(10px);background:#0e1526cc}.screen-label{font-family:var(--font-mono);letter-spacing:.14em;color:var(--muted);text-transform:uppercase;align-items:center;gap:8px;margin-bottom:10px;font-size:.74rem;display:flex}.screen-label:before{content:"";background:var(--when);width:7px;height:7px;box-shadow:0 0 10px var(--when);border-radius:50%}@media (width<=900px){.stage-inner{grid-template-columns:1fr;padding-top:48px}.stage:after{background:linear-gradient(180deg, #0a0f1c8c, #0a0f1ce6 55%, var(--bg))}}.doors{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:8px;display:grid}@media (width<=900px){.doors{grid-template-columns:1fr}}.door{color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:20px;flex-direction:column;text-decoration:none;transition:transform .25s,box-shadow .25s;display:flex;position:relative;overflow:hidden}.door:hover{transform:translateY(-3px);box-shadow:0 24px 60px -28px #5ce1e699}.door img{aspect-ratio:16/10;object-fit:cover;width:100%;transition:transform .6s;display:block}.door:hover img{transform:scale(1.04)}.door-body{gap:6px;padding:18px 20px 22px;display:grid}.door-kicker{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem}.door h3{font-family:var(--font-display);margin:0;font-size:1.05rem;font-weight:400}.door p{color:var(--muted);margin:0;font-size:.95rem}.door.glow-edge:before{opacity:0;transition:opacity .3s}.door.glow-edge:hover:before,.door.glow-edge:focus-visible:before{opacity:1}.banner{border:1px solid var(--line);border-radius:22px;align-items:end;min-height:240px;margin-bottom:28px;display:grid;position:relative;overflow:hidden}.banner img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.banner:after{content:"";background:linear-gradient(#0a0f1c26 0%,#0a0f1c99 45%,#0a0f1cf5 100%);position:absolute;inset:0}.banner-text{z-index:1;padding:28px 24px;position:relative}.banner-text h1{margin-bottom:.3em}.banner-text .lede{color:#b7c4dd;margin:0}.site-footer{border-top-color:var(--line);background:#080c1699}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media (width<=700px){.stage-art{background-image:url(/img/hero-960.webp);background-position:62%}}.stage canvas{opacity:0;transition:opacity 1.2s}.stage canvas.on{opacity:1}.lc-name{align-items:center;gap:6px;font-size:.9rem;display:inline-flex}.lc-name input{border:1px solid var(--line-2);background:var(--surface);width:140px;color:var(--ink);font:inherit;border-radius:10px;padding:9px 10px}.sm{flex-direction:column;max-width:640px;min-height:calc(100svh - 140px);margin:-12px auto 0;display:flex}.sm-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.sm-back{font-size:.9rem;text-decoration:none}.sm-title{text-align:center;flex:1;margin:0;font-size:clamp(1.1rem,4vw,1.4rem)}.sm-wake{color:var(--muted);align-items:center;gap:6px;font-size:.8rem;display:inline-flex}.sm-bar{background:var(--surface-2);border-radius:999px;height:4px;margin:16px 0 8px;overflow:hidden}.sm-bar span{background:linear-gradient(90deg, var(--when), var(--then), var(--if));width:0;height:100%;transition:width .3s;display:block}.sm-count{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 12px;font-size:.8rem}.sm-steps{flex:1;margin:0;padding:0;list-style:none}.sm-step{background:var(--glass);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;padding:24px 20px}.sm-name{font-family:var(--font-display);margin:0 0 18px;font-size:clamp(1.15rem,5vw,1.5rem);line-height:1.3}.sm-path{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px;display:flex}.sm-chip{background:var(--when-soft);color:var(--ink);border:1px solid #5ce1e659;border-radius:12px;padding:8px 14px;font-size:clamp(1.05rem,4.6vw,1.3rem);font-weight:700}.sm-arrow{color:var(--accent);font-size:1.2rem}.sm-set{background:var(--then-soft);border:1px solid #9b8cff59;border-radius:12px;gap:4px;margin:0 0 16px;padding:12px 14px;display:grid}.sm-set span{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--then);font-size:.75rem}.sm-set b{font-size:clamp(1.05rem,4.6vw,1.3rem)}.sm-text{color:var(--muted);margin:0}.sm-done .sm-name{color:var(--when)}.sm-nav{padding:16px 0 calc(12px + env(safe-area-inset-bottom));background:linear-gradient(0deg, var(--bg) 70%, transparent);grid-template-columns:1fr 2fr;gap:12px;margin-top:16px;display:grid;position:sticky;bottom:0}.sm-nav .btn{cursor:pointer;border:0;justify-content:center;padding:16px;font-family:inherit;font-size:1.05rem}.sm-nav .btn.ghost{border:1px solid var(--line-2)}.sm-nav .btn:disabled{opacity:.4;cursor:default}.to-car{gap:12px;display:grid}.to-car .qr{background:#fff;border-radius:12px;width:148px;height:148px;padding:8px}.to-car .qr svg{width:100%;height:100%;display:block}.to-car .btn{cursor:pointer;border:0;justify-content:center;font-family:inherit}.to-car .btn.ghost{border:1px solid var(--line-2)}@media (width<=900px){.to-car .qr-wrap{display:none}}.ml-item{grid-template-columns:1fr auto;align-items:center;gap:12px;display:grid}.ml-item h3{margin:0 0 4px;font-size:1rem}.ml-item h3 a{color:var(--ink);text-decoration:none}.ml-item .ml-state{font-family:var(--font-mono);color:var(--muted);font-size:.75rem}.ml-item .ml-state.done{color:var(--when)}.ml-actions{gap:8px;display:flex}.ml-actions .btn{cursor:pointer;border:0;padding:9px 14px;font-family:inherit;font-size:.9rem}.ml-actions .btn.ghost{border:1px solid var(--line-2)}
