@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2)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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2)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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-DadHysG0.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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-XN7g48iV.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}:root{--font-sans:"Geist Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono:"Geist Mono Variable", ui-monospace, "SF Mono", Menlo, "Cascadia Code", monospace;--fs-2xs:11px;--fs-xs:12px;--fs-sm:13px;--fs-base:14px;--fs-md:15px;--fs-lg:16px;--fs-xl:18px;--fs-2xl:28px;--bg:#faf8fb;--surface:#fff;--surface-2:#f4f1f7;--border:#e9e4ef;--border-strong:#d7d0e1;--text:#1b1720;--text-muted:#615a6e;--text-faint:#716a7d;--accent:#c60d5c;--accent-hover:#a80d50;--accent-ink:#fff;--pass:#0a7d44;--fail:#cc1338;--error:#9c5410;--skip:#655e73;--sel-bg:#c60d5c0f;--shadow:0 1px 2px #140c180f, 0 8px 24px #140c180d;--j-key:#a11560;--j-str:#157540;--j-num:#9a560c;--j-bool:#6b43c9}@media (prefers-color-scheme:dark){:root{--bg:#131017;--surface:#1a171f;--surface-2:#221e28;--border:#2b2732;--border-strong:#3b3644;--text:#f0edf4;--text-muted:#a8a2b3;--text-faint:#8c8597;--accent:#ff3d84;--accent-hover:#ff5c99;--accent-ink:#16020c;--pass:#35c281;--fail:#ff5470;--error:#f7a63b;--skip:#948da4;--sel-bg:#ff3d840f;--shadow:0 1px 2px #0000004d, 0 8px 24px #00000059;--j-key:#ff85b5;--j-str:#6fd39b;--j-num:#f7a63b;--j-bool:#c79bff}}:root[data-theme=light]{--bg:#faf8fb;--surface:#fff;--surface-2:#f4f1f7;--border:#e9e4ef;--border-strong:#d7d0e1;--text:#1b1720;--text-muted:#615a6e;--text-faint:#716a7d;--accent:#c60d5c;--accent-hover:#a80d50;--accent-ink:#fff;--pass:#0a7d44;--fail:#cc1338;--error:#9c5410;--skip:#655e73;--sel-bg:#c60d5c0f;--shadow:0 1px 2px #140c180f, 0 8px 24px #140c180d;--j-key:#a11560;--j-str:#157540;--j-num:#9a560c;--j-bool:#6b43c9}:root[data-theme=dark]{--bg:#131017;--surface:#1a171f;--surface-2:#221e28;--border:#2b2732;--border-strong:#3b3644;--text:#f0edf4;--text-muted:#a8a2b3;--text-faint:#8c8597;--accent:#ff3d84;--accent-hover:#ff5c99;--accent-ink:#16020c;--pass:#35c281;--fail:#ff5470;--error:#f7a63b;--skip:#948da4;--sel-bg:#ff3d840f;--shadow:0 1px 2px #0000004d, 0 8px 24px #00000059;--j-key:#ff85b5;--j-str:#6fd39b;--j-num:#f7a63b;--j-bool:#c79bff}*{box-sizing:border-box}html,body{height:100%}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-size:var(--fs-md);margin:0;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}p a,.h-lead a,.empty-note a,.other-impls a{text-underline-offset:.15em;text-decoration:underline}button{color:inherit;font-family:inherit}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.label{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.13em;text-transform:uppercase;color:var(--text-faint);font-weight:500}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);background-clip:content-box;border:3px solid #0000;border-radius:6px}::-webkit-scrollbar-track{background:0 0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.fade{animation:.18s fade}@keyframes fade{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.app{grid-template-rows:auto 1fr;height:100vh;display:grid}.route{flex-direction:column;min-height:0;display:flex}.topbar{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:20;align-items:center;gap:20px;height:52px;padding:0 20px;display:flex;position:sticky;top:0}.topbar::-webkit-scrollbar{display:none}.brand{letter-spacing:-.02em;font-weight:640;font-size:var(--fs-lg);color:var(--text);align-items:center;gap:10px;text-decoration:none;display:flex}.brand .mark{font-family:var(--font-mono);color:var(--accent);font-size:var(--fs-xl);letter-spacing:-.04em;font-weight:700}.topnav{align-items:center;gap:2px;display:flex}.navlink{font-size:var(--fs-base);color:var(--text-muted);white-space:nowrap;border-radius:7px;padding:6px 11px;text-decoration:none}.navlink:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.navlink.active{color:var(--accent);font-weight:540}.topbar .spacer{flex:1}.topbar .ghost{height:32px;color:var(--text-muted);cursor:pointer;font-size:var(--fs-base);background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:7px;padding:0 11px;text-decoration:none;display:inline-flex}.topbar .ghost:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.ver{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-faint)}.shell{flex:1;grid-template-columns:280px minmax(0,1fr) 392px;min-height:0;display:grid}.shell>*{min-height:0;overflow-y:auto}.rail{border-right:1px solid var(--border);flex-direction:column;gap:24px;padding:18px 16px 40px;display:flex}.rail-group{flex-direction:column;gap:10px;display:flex}.rail-group .label{padding-left:2px}.search{border:1px solid var(--border-strong);background:var(--surface);border-radius:8px;align-items:center;gap:8px;padding:7px 10px;display:flex}.search:focus-within{border-color:var(--accent)}.search input{color:var(--text);width:100%;font-size:var(--fs-base);font-family:var(--font-sans);background:0 0;border:0;outline:none}.search svg{color:var(--text-faint);flex:none}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{font-family:var(--font-mono);font-size:var(--fs-xs);border:1px solid var(--border-strong);color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border-radius:20px;padding:4px 9px;transition:background .12s,color .12s,border-color .12s}.chip:hover{border-color:var(--text-faint);color:var(--text)}.chip[aria-pressed=true]{background:color-mix(in srgb, var(--accent) 11%, transparent);border-color:color-mix(in srgb, var(--accent) 42%, transparent);color:var(--accent)}.chip.status[aria-pressed=true]{background:var(--surface-2);color:var(--text);border-color:var(--border-strong)}.chip.status .dot{vertical-align:middle;border-radius:2px;width:7px;height:7px;margin-right:5px;display:inline-block}.impl-list{flex-direction:column;gap:1px;max-height:260px;margin:0 -6px;padding:0 6px;list-style:none;display:flex;overflow-y:auto}.impl-item{border-radius:6px;align-items:center;gap:8px;padding:4px 6px;display:flex}.impl-item .nm{font-size:var(--fs-sm);white-space:nowrap;text-overflow:ellipsis;color:inherit;text-decoration:none;overflow:hidden}.impl-item .nm:hover{color:var(--accent);text-decoration:underline}.impl-item .lg{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--text-faint);flex:none;margin-left:auto}.impl-item.off{opacity:.34}.impl-count{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--text-faint);padding-left:2px}.center{padding:26px 34px 60px}.center-inner{max-width:880px;margin:0 auto}.crumbs{font-size:var(--fs-sm);color:var(--text-muted);align-items:center;gap:8px;margin-bottom:18px;display:flex}.crumbs a{color:var(--text-muted);cursor:pointer;text-decoration:none}.crumbs a:hover{color:var(--accent)}.crumbs .sep{color:var(--text-faint)}.runstrip{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-wrap:wrap;margin-bottom:26px;display:flex;overflow:hidden}.runstrip .cell{border-right:1px solid var(--border);flex:1;min-width:140px;padding:13px 18px}.runstrip .cell:last-child{border-right:0}.runstrip .cell .v{font-family:var(--font-mono);font-size:var(--fs-lg);font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin-top:4px}.runstrip .cell .v.small{font-size:var(--fs-sm)}.h-lead{font-size:var(--fs-lg);color:var(--text-muted);text-wrap:pretty;max-width:68ch;margin:0 0 20px;line-height:1.6}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.page-head .page{margin-bottom:0}h1.page{font-size:var(--fs-2xl);letter-spacing:-.025em;text-wrap:balance;margin:4px 0 6px;font-weight:660;line-height:1.2}.matrix{border:1px solid var(--border);background:var(--surface);border-radius:12px;overflow:hidden}.matrix .row{border-top:1px solid var(--border);cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border-bottom:0;border-left:0;border-right:0;grid-template-columns:1fr 150px 64px;align-items:center;gap:14px;padding:10px 18px;display:grid}.matrix .row:first-child{border-top:0}.matrix .row:hover{background:var(--surface-2)}.matrix .row .who{align-items:baseline;gap:8px;min-width:0;display:flex}.matrix .row .who .nm{font-weight:540;font-size:var(--fs-base);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.matrix .row .who .lg{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--text-faint);flex:none}.matrix .row .who .vv{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--text-faint);white-space:nowrap;text-overflow:ellipsis;flex:none;max-width:130px;overflow:hidden}.bar{background:var(--surface-2);border-radius:4px;height:6px;display:flex;overflow:hidden}.bar>i{height:100%;display:block}.matrix .row .count{text-align:right;font-family:var(--font-mono);font-size:var(--fs-base);font-variant-numeric:tabular-nums}.matrix .row .count.zero{color:var(--pass)}.matrix .row .count.some{color:var(--text)}.hint-card{border:1px dashed var(--border-strong);text-align:center;color:var(--text-muted);font-size:var(--fs-base);border-radius:12px;margin-top:24px;padding:20px}.hint-card .kbd{font-family:var(--font-mono);font-size:var(--fs-xs);border:1px solid var(--border-strong);color:var(--text);border-radius:5px;padding:1px 6px}.case-meta{flex-wrap:wrap;align-items:center;gap:8px 12px;margin:2px 0 22px;display:flex}.tag{font-family:var(--font-mono);font-size:var(--fs-xs);background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);border-radius:6px;align-items:center;gap:6px;padding:3px 9px;display:inline-flex}.tag b{color:var(--text);font-weight:600}.split{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:22px;display:grid}.panel{border:1px solid var(--border);background:var(--surface);border-radius:11px;flex-direction:column;display:flex;overflow:hidden}.panel>header{border-bottom:1px solid var(--border);background:var(--surface-2);justify-content:space-between;align-items:center;padding:9px 13px;display:flex}.panel>header .hint{font-size:var(--fs-2xs);color:var(--text-faint);font-family:var(--font-mono)}.panel>header .hdr-right{align-items:center;gap:10px;display:flex}pre.code{max-height:360px;font-family:var(--font-mono);font-size:var(--fs-sm);tab-size:2;margin:0;padding:13px 14px;line-height:1.6;overflow:auto}pre.code .j-key{color:var(--j-key)}pre.code .j-str{color:var(--j-str)}pre.code .j-num{color:var(--j-num)}pre.code .j-bool{color:var(--j-bool)}.sec-label{margin:0 0 10px 2px;display:block}.tlist{border:1px solid var(--border);background:var(--surface);border-radius:11px;margin-bottom:20px;overflow:hidden}.tline{border-top:1px solid var(--border);cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border-bottom:0;border-left:0;border-right:0;align-items:center;gap:14px;padding:11px 14px;display:flex}.tline:first-child{border-top:0}.tline:hover{background:var(--surface-2)}.tline.sel{background:var(--sel-bg);box-shadow:inset 3px 0 0 var(--accent)}.tline .d{font-weight:520;font-size:var(--fs-base)}.tline .exp{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--text-faint);margin-left:8px}.tline .tally{font-family:var(--font-mono);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;flex:none;gap:12px;margin-left:auto;display:flex}.tally .t-ok{color:var(--pass)}.tally .t-fail{color:var(--fail)}.tally .t-err{color:var(--error)}.tally .t-skip{color:var(--skip)}.tally .mut{color:var(--text-faint)}.dis{border:1px solid var(--border);background:var(--surface);border-radius:11px;overflow:hidden}.dis .dhead{border-bottom:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:16px;padding:12px 14px;display:flex}.dhead .for{font-size:var(--fs-sm);color:var(--text-muted)}.dhead .for b{color:var(--text)}.dsum{font-family:var(--font-mono);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;gap:14px;margin-left:auto;display:flex}.dsum .d-ok{color:var(--pass)}.dsum .d-fail{color:var(--fail)}.dsum .d-err{color:var(--error)}.dsum .d-skip{color:var(--skip)}.ogroup{border-top:1px solid var(--border)}.ogroup:first-child{border-top:0}.oh{align-items:center;gap:9px;padding:11px 14px 4px;display:flex}.oh .badge{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.03em;text-transform:uppercase;border-radius:5px;padding:2px 8px}.badge.fail{background:color-mix(in srgb, var(--fail) 10%, transparent);color:var(--fail)}.badge.err{background:color-mix(in srgb, var(--error) 10%, transparent);color:var(--error)}.badge.skip{background:color-mix(in srgb, var(--skip) 10%, transparent);color:var(--skip)}.chips-impl{flex-wrap:wrap;gap:6px;padding:8px 14px 13px;display:flex}.ichip{font-family:var(--font-mono);font-size:var(--fs-xs);border:1px solid var(--border-strong);background:var(--surface);cursor:pointer;color:var(--text-muted);border-radius:6px;align-items:baseline;gap:6px;padding:3px 9px;display:inline-flex}.ichip:hover{border-color:var(--text-faint);color:var(--text)}.ichip.open{border-color:var(--accent);color:var(--text);background:var(--sel-bg)}.ichip .il{font-size:var(--fs-2xs);color:var(--text-faint)}.diag{border:1px solid var(--border);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);white-space:pre-wrap;word-break:break-word;border-radius:8px;margin:0 14px 13px;padding:10px 12px;line-height:1.55}.diag .who{color:var(--text);margin-bottom:6px;font-weight:600;display:block}.passed-line{font-size:var(--fs-sm);color:var(--text-muted);border-top:1px solid var(--border);align-items:center;gap:9px;padding:12px 14px;display:flex}.passed-line .tick{color:var(--pass)}.master{border-left:1px solid var(--border);flex-direction:column;display:flex}.master-head{border-bottom:1px solid var(--border);background:var(--surface);z-index:5;padding:15px 16px 12px;position:sticky;top:0}.master-head .row1{justify-content:space-between;align-items:center;display:flex}.master-head h2{font-size:var(--fs-base);letter-spacing:-.01em;margin:0}.master-head .n{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);background:var(--surface-2);border-radius:20px;padding:2px 8px}.master-filters{flex-direction:column;gap:10px;margin-top:12px;display:flex}.section-label{padding:14px 16px 6px}.case-row{text-align:left;cursor:pointer;border:0;border-bottom:1px solid var(--border);background:0 0;border-left:2px solid #0000;width:100%;padding:11px 16px;display:block}.case-row:hover{background:var(--surface-2)}.case-row.sel{background:var(--sel-bg);border-left-color:var(--accent)}.case-row .cr-top{align-items:center;gap:8px;margin-bottom:7px;display:flex}.case-row .grp{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.02em;color:var(--accent)}.case-row .nfail{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--text-muted);font-variant-numeric:tabular-nums;margin-left:auto}.case-row .desc{font-size:var(--fs-sm);color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.pbar{background:var(--surface-2);border-radius:3px;height:5px;margin-top:9px;display:flex;overflow:hidden}.pbar>i{height:100%;display:block}.pbar>i.ok{background:color-mix(in srgb, var(--pass) 34%, transparent)}.pbar>i.fail{background:var(--fail)}.pbar>i.err{background:var(--error)}.pbar>i.skip{background:var(--skip)}.passing-toggle{text-align:left;cursor:pointer;width:100%;color:var(--text-muted);border:0;border-top:1px solid var(--border);background:0 0;align-items:center;gap:9px;padding:13px 16px;display:flex}.passing-toggle:hover{background:var(--surface-2);color:var(--text)}.passing-toggle .n{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-faint);margin-left:auto}.passing-toggle svg{transition:transform .15s}.passing-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.empty-note{text-align:center;color:var(--text-faint);font-size:var(--fs-base);padding:40px 24px}.alert-failfast{border:1px solid color-mix(in srgb, var(--error) 45%, var(--border));background:color-mix(in srgb, var(--error) 10%, transparent);font-size:var(--fs-sm);color:var(--text);border-radius:10px;align-items:flex-start;gap:10px;margin:0 0 22px;padding:11px 14px;display:flex}.alert-failfast .ic{color:var(--error);flex:none;margin-top:1px}.spinner-wrap{flex:1;justify-content:center;align-items:center;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:42px;height:42px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.doc{flex:1;min-height:0;padding:30px 24px 60px;overflow-y:auto}.doc-inner{max-width:860px;margin:0 auto}.dropzone{border:2px dashed var(--border-strong);text-align:center;cursor:pointer;color:var(--text-muted);background:var(--surface);font-size:var(--fs-base);border-radius:14px;flex-direction:column;align-items:center;gap:14px;padding:52px 24px;transition:border-color .15s,background .15s,color .15s;display:flex}.dropzone:hover,.dropzone.active{border-color:var(--accent);background:var(--sel-bg);color:var(--text)}.dropzone.invalid{border-color:var(--fail);background:color-mix(in srgb, var(--fail) 8%, transparent)}.dropzone svg{color:var(--text-faint);transition:color .15s}.dropzone:hover svg,.dropzone.active svg{color:var(--accent)}code{font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--border);border-radius:5px;padding:1px 6px;font-size:.92em}.card{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin-bottom:20px;overflow:hidden}.card>header{border-bottom:1px solid var(--border);background:var(--surface-2);font-weight:560;font-size:var(--fs-base);padding:12px 16px}.card>.body{padding:16px}table.kv{border-collapse:collapse;width:100%;font-size:var(--fs-base)}table.kv th{text-align:left;color:var(--text-muted);white-space:nowrap;vertical-align:top;width:160px;padding:6px 14px 6px 0;font-weight:560}table.kv td{word-break:break-word;padding:6px 0}@media (max-width:1120px){html,body{height:auto}.app{height:auto;min-height:100vh}.route{min-height:0}.shell{flex-direction:column;flex:none;display:flex}.shell>*{min-height:0;overflow:visible}.rail{border-right:0;border-bottom:1px solid var(--border)}.impl-list{max-height:320px}.master{border-left:0;border-top:1px solid var(--border);display:flex}.master-head{position:static}.doc{flex:none;overflow:visible}}@media (max-width:640px){.center{padding:22px 18px 48px}.doc{padding:24px 18px 48px}.split{grid-template-columns:1fr}.topbar{flex-wrap:wrap;gap:8px 14px;height:auto;padding:8px 14px}.topbar .spacer{display:none}}.dialect-picker.svelte-1befbsk{flex-direction:column;gap:6px;display:flex}.dp-select.svelte-1befbsk{align-items:center;display:flex;position:relative}.dp-select.svelte-1befbsk select:where(.svelte-1befbsk){appearance:none;width:100%;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);cursor:pointer;border-radius:8px;padding:7px 30px 7px 11px}.dp-select.svelte-1befbsk select:where(.svelte-1befbsk):focus-visible{border-color:var(--accent)}.dp-select.svelte-1befbsk svg:where(.svelte-1befbsk){color:var(--text-faint);pointer-events:none;position:absolute;right:10px}.runmeta.svelte-op2jfd{margin:-14px 0 26px}.other-impls.svelte-op2jfd{border:1px solid var(--border);background:var(--surface);border-radius:11px;margin-top:22px;padding:0 15px}.other-impls.svelte-op2jfd summary:where(.svelte-op2jfd){cursor:pointer;font-size:var(--fs-sm);color:var(--text-muted);align-items:center;gap:9px;padding:12px 0;list-style:none;display:flex}.other-impls.svelte-op2jfd summary:where(.svelte-op2jfd)::-webkit-details-marker{display:none}.other-impls.svelte-op2jfd summary:where(.svelte-op2jfd) svg:where(.svelte-op2jfd){color:var(--text-faint);flex:none}.other-impls.svelte-op2jfd ul:where(.svelte-op2jfd){border-top:1px solid var(--border);gap:8px;margin:0;padding:4px 0 14px;list-style:none;display:grid}.other-impls.svelte-op2jfd li:where(.svelte-op2jfd){font-size:var(--fs-sm);flex-wrap:wrap;align-items:baseline;gap:8px;padding-top:8px;display:flex}.oi-lang.svelte-op2jfd{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--text-faint)}.oi-latest.svelte-op2jfd{color:var(--text-muted);font-size:var(--fs-xs);margin-left:auto}.copy-btn.svelte-1j12gkz{border:1px solid var(--border-strong);background:var(--surface);width:26px;height:26px;color:var(--text-muted);cursor:pointer;border-radius:6px;place-items:center;transition:color .12s,border-color .12s;display:inline-grid}.copy-btn.svelte-1j12gkz:hover{color:var(--text);border-color:var(--text-faint)}.copy-btn.copied.svelte-1j12gkz{color:var(--pass);border-color:color-mix(in srgb, var(--pass) 50%, transparent)}.et-body.svelte-1122825{white-space:pre-wrap;word-break:break-word;display:block}.et-controls.svelte-1122825{flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.et-note.svelte-1122825{font-family:var(--font-sans);font-size:var(--fs-2xs);color:var(--text-faint)}.et-btn.svelte-1122825{font-family:var(--font-sans);font-size:var(--fs-2xs);border:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:6px;padding:2px 8px}.et-btn.svelte-1122825:hover{border-color:var(--accent);color:var(--accent)}.bchart.svelte-1nndlpz{flex-direction:column;gap:6px;display:flex}.brow.svelte-1nndlpz{grid-template-columns:minmax(120px,210px) 1fr 70px;align-items:center;gap:12px;display:grid}.blabel.svelte-1nndlpz{font-size:var(--fs-sm);white-space:nowrap;text-overflow:ellipsis;color:var(--text);overflow:hidden}.btrack.svelte-1nndlpz{background:var(--surface-2);border-radius:5px;height:16px;overflow:hidden}.bfill.svelte-1nndlpz{background:color-mix(in srgb, var(--accent) 42%, transparent);border-radius:5px;min-width:2px;height:100%;transition:width .2s}.bfill.best.svelte-1nndlpz{background:var(--accent)}.bval.svelte-1nndlpz{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--fs-xs);color:var(--text-muted);text-align:right}.bench-group.svelte-94j2d6{border:1px solid var(--border);background:var(--surface);border-radius:11px;margin-bottom:10px;overflow:hidden}summary.svelte-94j2d6{cursor:pointer;padding:12px 15px;list-style:none}summary.svelte-94j2d6::-webkit-details-marker{display:none}.bg-title.svelte-94j2d6{align-items:baseline;gap:10px;display:flex}.bg-name.svelte-94j2d6{font-weight:560;font-size:var(--fs-base)}.bg-vary.svelte-94j2d6{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--accent)}.bg-desc.svelte-94j2d6{font-size:var(--fs-sm);color:var(--text-muted);margin-top:3px}.bg-body.svelte-94j2d6{border-top:1px solid var(--border);padding:4px 15px 14px}.bench-item.svelte-94j2d6{margin-top:14px}.bi-head.svelte-94j2d6{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text);margin-bottom:2px}.bi-desc.svelte-94j2d6{font-size:var(--fs-sm);color:var(--text-muted);margin-bottom:8px}.table-scroll.svelte-94j2d6{overflow-x:auto}.bench-table.svelte-94j2d6{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.bench-table.svelte-94j2d6 th:where(.svelte-94j2d6),.bench-table.svelte-94j2d6 td:where(.svelte-94j2d6){border-bottom:1px solid var(--border);text-align:right;white-space:nowrap;padding:7px 10px}.bench-table.svelte-94j2d6 thead:where(.svelte-94j2d6) th:where(.svelte-94j2d6){color:var(--text-muted);font-weight:560;font-size:var(--fs-xs)}.bench-table.svelte-94j2d6 th.impl:where(.svelte-94j2d6){text-align:left}.bench-table.svelte-94j2d6 td:where(.svelte-94j2d6),.bench-table.svelte-94j2d6 tbody:where(.svelte-94j2d6) th:where(.svelte-94j2d6){font-family:var(--font-mono);font-variant-numeric:tabular-nums}.bench-table.svelte-94j2d6 tbody:where(.svelte-94j2d6) th.impl:where(.svelte-94j2d6){font-family:var(--font-sans);font-weight:500}.bench-table.svelte-94j2d6 tr.best:where(.svelte-94j2d6) th:where(.svelte-94j2d6),.bench-table.svelte-94j2d6 tr.best:where(.svelte-94j2d6) td:where(.svelte-94j2d6){background:color-mix(in srgb, var(--pass) 12%, transparent)}.fastest.svelte-94j2d6{font-family:var(--font-mono);font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--pass);margin-left:8px}.pm.svelte-94j2d6{color:var(--text-faint)}.gm.svelte-94j2d6{color:var(--text);font-weight:600}td.err.svelte-94j2d6{color:var(--error)}.muted.svelte-1o5mr76{color:var(--text-muted)}.bench-type-head.svelte-1o5mr76{font-size:var(--fs-lg);letter-spacing:-.01em;margin:26px 0 12px;font-weight:620}.impl-group.svelte-19bi3bl{margin-bottom:22px}.impl-group.svelte-19bi3bl .label:where(.svelte-19bi3bl){margin-bottom:8px;display:block}.impl-grid.svelte-19bi3bl{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;display:grid}.impl-card.svelte-19bi3bl{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:9px;justify-content:space-between;align-items:baseline;gap:8px;padding:10px 13px;text-decoration:none;display:flex}.impl-card.svelte-19bi3bl:hover{border-color:var(--accent);text-decoration:none}.ic-name.svelte-19bi3bl{font-size:var(--fs-base);white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;font-weight:520;overflow:hidden}.ic-ver.svelte-19bi3bl{font-size:var(--fs-2xs);color:var(--text-faint);white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;max-width:45%;overflow:hidden}.vt-head.svelte-1wjno9o{justify-content:space-between;align-items:center;display:flex}.vt-select.svelte-1wjno9o{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-size:var(--fs-sm);cursor:pointer;border-radius:7px;padding:4px 8px}.vt-chart.svelte-1wjno9o{width:100%;height:auto}.vt-grid.svelte-1wjno9o{stroke:var(--border);stroke-width:1px}.vt-axis.svelte-1wjno9o{fill:var(--text-faint);font-family:var(--font-mono);font-size:var(--fs-xs)}.vt-line.svelte-1wjno9o{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.vt-dot.svelte-1wjno9o{fill:var(--accent);stroke:var(--surface);stroke-width:2px}.badge-embed.svelte-bx9bys{grid-template-columns:minmax(150px,220px) 1fr;gap:22px;display:grid}.be-cat.svelte-bx9bys{flex-direction:column;gap:3px;margin-bottom:14px;display:flex}.be-cat.svelte-bx9bys .label:where(.svelte-bx9bys){margin-bottom:4px}.be-item.svelte-bx9bys,.be-format.svelte-bx9bys{text-align:left;color:var(--text-muted);font-size:var(--fs-sm);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:5px 9px}.be-item.svelte-bx9bys:hover,.be-format.svelte-bx9bys:hover{background:var(--surface-2);color:var(--text)}.be-item.active.svelte-bx9bys,.be-format.active.svelte-bx9bys{background:var(--sel-bg);color:var(--accent)}.be-formats.svelte-bx9bys{flex-wrap:wrap;gap:4px;margin-bottom:12px;display:flex}.be-format.svelte-bx9bys{font-family:var(--font-mono);font-size:var(--fs-xs);border:1px solid var(--border)}.be-snippet.svelte-bx9bys{border:1px solid var(--border);background:var(--surface-2);border-radius:9px;position:relative;overflow:hidden}.be-snippet.svelte-bx9bys pre:where(.svelte-bx9bys){font-family:var(--font-mono);font-size:var(--fs-sm);white-space:pre-wrap;word-break:break-word;color:var(--text);margin:0;padding:13px 44px 13px 14px;line-height:1.5;overflow-x:auto}.be-copy.svelte-bx9bys{position:absolute;top:8px;right:8px}.be-preview.svelte-bx9bys{max-width:100%;margin-top:18px;display:block}@media (max-width:640px){.badge-embed.svelte-bx9bys{grid-template-columns:1fr}}.failure.svelte-16ic2m5{border:1px solid var(--border);background:var(--surface);border-radius:10px;margin-bottom:8px;overflow:hidden}summary.svelte-16ic2m5{cursor:pointer;align-items:baseline;gap:11px;padding:10px 13px;list-style:none;display:flex}summary.svelte-16ic2m5::-webkit-details-marker{display:none}.badge.svelte-16ic2m5{font-family:var(--font-mono);font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.03em;border-radius:5px;flex:none;padding:2px 8px}.badge.fail.svelte-16ic2m5{background:color-mix(in srgb, var(--fail) 10%, transparent);color:var(--fail)}.badge.err.svelte-16ic2m5{background:color-mix(in srgb, var(--error) 10%, transparent);color:var(--error)}.badge.skip.svelte-16ic2m5{background:color-mix(in srgb, var(--skip) 10%, transparent);color:var(--skip)}.f-text.svelte-16ic2m5{flex-direction:column;gap:2px;min-width:0;display:flex}.f-case.svelte-16ic2m5{font-size:var(--fs-base);font-weight:520}.f-test.svelte-16ic2m5{font-size:var(--fs-sm);color:var(--text-muted)}.f-body.svelte-16ic2m5{border-top:1px solid var(--border);padding:4px 13px 14px}.f-msg.svelte-16ic2m5{border:1px solid var(--border);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);white-space:pre-wrap;word-break:break-word;border-radius:8px;margin:12px 0;padding:10px 12px;line-height:1.55;overflow-x:auto}.ff-head.svelte-13ifrkz{justify-content:space-between;align-items:center;display:flex}.ff-select.svelte-13ifrkz{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-size:var(--fs-sm);cursor:pointer;border-radius:7px;padding:4px 8px}.ff-count.svelte-13ifrkz{font-size:var(--fs-sm);color:var(--text-muted);margin:0 0 14px}.ff-count.svelte-13ifrkz b:where(.svelte-13ifrkz){color:var(--text);font-variant-numeric:tabular-nums}.pass-card.svelte-13ifrkz{border-color:color-mix(in srgb, var(--pass) 38%, var(--border));background:color-mix(in srgb, var(--pass) 7%, var(--surface))}.pass-body.svelte-13ifrkz{align-items:center;gap:14px;padding:18px;display:flex}.pass-ic.svelte-13ifrkz{color:var(--pass);flex:none}.pass-text.svelte-13ifrkz{flex-direction:column;gap:3px;display:flex}.pass-text.svelte-13ifrkz strong:where(.svelte-13ifrkz){color:var(--pass);font-size:var(--fs-md);letter-spacing:-.01em}.pass-text.svelte-13ifrkz span:where(.svelte-13ifrkz){color:var(--text-muted);font-size:var(--fs-sm)}table.compliance.svelte-1pnab6m{border-collapse:collapse;width:100%;font-size:var(--fs-base)}.muted.svelte-1pnab6m{color:var(--text-muted)}ul.links.svelte-1pnab6m{flex-direction:column;gap:3px;margin:0;padding-left:18px;display:flex}table.compliance.svelte-1pnab6m th:where(.svelte-1pnab6m),table.compliance.svelte-1pnab6m td:where(.svelte-1pnab6m){border-bottom:1px solid var(--border);text-align:center;padding:8px 12px}table.compliance.svelte-1pnab6m thead:where(.svelte-1pnab6m) th:where(.svelte-1pnab6m){color:var(--text-muted);font-weight:560;font-size:var(--fs-sm)}table.compliance.svelte-1pnab6m .dialect:where(.svelte-1pnab6m){text-align:left;white-space:nowrap}table.compliance.svelte-1pnab6m .num:where(.svelte-1pnab6m){font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-muted)}table.compliance.svelte-1pnab6m .num.bad:where(.svelte-1pnab6m){color:var(--text);font-weight:600}table.compliance.svelte-1pnab6m .pass-cell:where(.svelte-1pnab6m){color:var(--pass);font-size:var(--fs-sm)}table.compliance.svelte-1pnab6m .ok-check:where(.svelte-1pnab6m){margin-right:3px;font-weight:700}.badge.svelte-1pnab6m{vertical-align:middle;max-width:100%}.impl-head.svelte-1pnab6m{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.btn-badges.svelte-1pnab6m{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-size:var(--fs-sm);cursor:pointer;border-radius:8px;flex:none;margin-top:6px;padding:6px 14px}.btn-badges.svelte-1pnab6m:hover,.btn-badges[aria-expanded=true].svelte-1pnab6m{border-color:var(--accent);color:var(--accent)}
