@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.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 Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.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:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/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(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/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}:root{--paper:#f3eee4;--surface:#fbf8f2;--surface-2:#efe8db;--ink:#1c1a17;--ink-2:#3d3830;--muted:#6e665a;--rule:#d8cfbf;--rule-strong:#b9ad98;--forge:#e0531a;--forge-ink:#b8400f;--forge-wash:#fbe3d4;--good:#2c7a4b;--good-wash:#dcefe2;--warn:#a8700f;--warn-wash:#f6ead0;--bad:#be3418;--bad-wash:#f7ddd5;--chart-prev:#b9ad98;--shadow:3px 3px 0 var(--ink);--radius:6px;--font-display:"Fraunces Variable", Georgia, "Times New Roman", serif;--font-body:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--paper:#15130f;--surface:#1e1b16;--surface-2:#27231c;--ink:#f0e9dc;--ink-2:#d6cdbd;--muted:#9c9283;--rule:#39332a;--rule-strong:#554c3f;--forge:#f26b2a;--forge-ink:#ff8a4f;--forge-wash:#3a2215;--good:#5cbf83;--good-wash:#1b3024;--warn:#e0a93d;--warn-wash:#33290f;--bad:#f0694c;--bad-wash:#3a1d16;--chart-prev:#554c3f;--shadow:3px 3px 0 #000;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font:15px/1.55 var(--font-body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.01em;font-variation-settings:"opsz" 72, "SOFT" 30;margin:0;font-weight:600;line-height:1.15}h1{font-size:2rem}h2{font-size:1.45rem}h3,.card h2,.site-card h2{font-size:1.12rem}p{margin:0}a{color:inherit;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:3px}a:hover{-webkit-text-decoration-color:var(--forge);text-decoration-color:var(--forge);color:var(--forge-ink)}:focus-visible{outline:2px solid var(--forge);outline-offset:2px}.mono,.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.label{font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:.7rem}.muted{color:var(--muted)}.small{font-size:.85rem}.good{color:var(--good)}.bad{color:var(--bad)}.warn{color:var(--warn)}.nowrap{white-space:nowrap}.truncate{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.shell{flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid var(--rule);background:var(--paper);z-index:20;position:sticky;top:0}.topbar-inner{align-items:center;gap:1rem;max-width:1200px;margin:0 auto;padding:.7rem 1.25rem;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.02em;align-items:center;gap:.55rem;font-size:1.2rem;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{background:var(--ink);border-radius:6px;place-items:center;width:26px;height:26px;display:grid}.topbar .spacer{flex:1}.container{width:100%;max-width:1200px;margin:0 auto;padding:1.75rem 1.25rem 4rem}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;display:flex}.page-head .sub{color:var(--muted);margin-top:.35rem}.stack{flex-direction:column;gap:1rem;display:flex}.stack-lg{flex-direction:column;gap:1.75rem;display:flex}.row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.grid{gap:1rem;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:900px){.grid-3,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.grid-3{grid-template-columns:minmax(0,1fr)}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.stat .value{font-size:1.4rem}h1{font-size:1.6rem}}.card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);padding:1.15rem 1.25rem}.card-flush{padding:0;overflow:hidden}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.9rem;display:flex}.card-flush .card-head{padding:1rem 1.25rem 0}.stat .value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin-top:.35rem;font-size:1.75rem;font-weight:500;line-height:1.1}.stat .delta{font-family:var(--font-mono);margin-top:.3rem;font-size:.8rem}.btn{--b-bg:var(--surface);--b-fg:var(--ink);appearance:none;font:500 .88rem/1 var(--font-body);border-radius:var(--radius);border:1.5px solid var(--ink);background:var(--b-bg);color:var(--b-fg);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:.45rem;padding:.62rem .95rem;text-decoration:none;transition:transform 80ms,box-shadow 80ms,background .15s;display:inline-flex}.btn:hover{box-shadow:var(--shadow);color:var(--b-fg);transform:translate(-1px,-1px)}.btn:active{box-shadow:none;transform:translate(1px,1px)}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary{--b-bg:var(--ink);--b-fg:var(--paper)}.btn-primary:hover{--b-bg:var(--forge);border-color:var(--forge)}.btn-forge{--b-bg:var(--forge);--b-fg:#1c1a17;border-color:var(--forge)}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{border-color:var(--rule-strong);box-shadow:none;transform:none}.btn-sm{padding:.4rem .65rem;font-size:.8rem}.btn-danger{--b-fg:var(--bad);border-color:var(--bad)}.field{flex-direction:column;gap:.35rem;display:flex}.field>span{font-size:.84rem;font-weight:500}.field .hint{color:var(--muted);font-size:.78rem}.input,select.input,textarea.input{width:100%;font:.95rem var(--font-body);color:var(--ink);background:var(--surface);border:1.5px solid var(--rule-strong);border-radius:var(--radius);padding:.6rem .75rem}.input:focus{border-color:var(--ink);box-shadow:0 0 0 3px var(--forge-wash);outline:none}textarea.input{resize:vertical;min-height:5rem}.segmented{border:1.5px solid var(--ink);border-radius:var(--radius);display:inline-flex;overflow:hidden}.segmented button{font:500 .8rem var(--font-mono);background:var(--surface);color:var(--ink);cursor:pointer;border:0;padding:.42rem .75rem}.segmented button+button{border-left:1.5px solid var(--ink)}.segmented button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.tabs{border-bottom:1px solid var(--rule);scrollbar-width:none;gap:.25rem;margin-bottom:1.6rem;display:flex;overflow-x:auto}.tabs a{color:var(--muted);white-space:nowrap;border-bottom:2.5px solid #0000;margin-bottom:-1px;padding:.6rem .85rem;font-size:.92rem;font-weight:500;text-decoration:none}.tabs a:hover{color:var(--ink)}.tabs a.active{color:var(--ink);border-bottom-color:var(--forge)}.tabs .count{font-family:var(--font-mono);background:var(--forge-wash);color:var(--forge-ink);border-radius:99px;margin-left:.35rem;padding:.05rem .4rem;font-size:.7rem}.table-wrap{overflow-x:auto}table.ledger{border-collapse:collapse;width:100%;font-size:.88rem}.ledger th{text-align:left;font:500 .68rem var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1.5px solid var(--ink);white-space:nowrap;-webkit-user-select:none;user-select:none;padding:.6rem .75rem}.ledger th.sortable{cursor:pointer}.ledger th.sortable:hover{color:var(--ink)}.ledger td{border-bottom:1px solid var(--rule);vertical-align:top;padding:.6rem .75rem}.ledger tbody tr:hover td{background:var(--surface-2)}.ledger .n{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.ledger th.n{text-align:right}.ledger td.main{max-width:420px}.ledger td.main a{font-weight:500;text-decoration:none}.ledger td.main a:hover{text-decoration:underline}.ledger .sub{color:var(--muted);margin-top:.15rem;font-size:.78rem}.ledger tr:last-child td{border-bottom:0}.badge{font:500 .68rem var(--font-mono);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border:1px solid;border-radius:4px;align-items:center;gap:.3rem;padding:.18rem .45rem;display:inline-flex}.badge-critical,.badge-high{color:var(--bad);background:var(--bad-wash)}.badge-warning,.badge-medium{color:var(--warn);background:var(--warn-wash)}.badge-notice,.badge-low{color:var(--muted);background:var(--surface-2)}.badge-good{color:var(--good);background:var(--good-wash)}.badge-forge{color:var(--forge-ink);background:var(--forge-wash)}.stamp{--c:var(--good);border:3px double var(--c);width:88px;height:88px;color:var(--c);text-align:center;border-radius:50%;flex:none;place-items:center;display:grid;transform:rotate(-6deg)}.stamp b{font:600 1.9rem/1 var(--font-mono);display:block}.stamp small{font:500 .6rem var(--font-mono);letter-spacing:.1em;text-transform:uppercase}.stamp.fair{--c:var(--warn)}.stamp.poor{--c:var(--bad)}.stamp.sm{border-width:2.5px;width:52px;height:52px}.stamp.sm b{font-size:1.1rem}.stamp.sm small{display:none}.action{border-bottom:1px solid var(--rule);grid-template-columns:auto 1fr auto;align-items:start;gap:.25rem 1rem;padding:1rem 1.25rem;display:grid}.action:last-child{border-bottom:0}.action .check{border:1.5px solid var(--ink);background:var(--surface);cursor:pointer;width:26px;height:26px;color:var(--paper);border-radius:5px;place-items:center;margin-top:.15rem;padding:0;display:grid}.action .check[aria-checked=true]{background:var(--good);border-color:var(--good)}.action h2{font-size:1.02rem;font-family:var(--font-body);letter-spacing:0;font-weight:600}.action.done h2{text-decoration:line-through;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted);color:var(--muted)}.action .meta{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.3rem;display:flex}.action ol{color:var(--ink-2);margin:.6rem 0 0;padding-left:1.1rem;font-size:.9rem}.action ol li+li{margin-top:.25rem}.action .side{flex-direction:column;align-items:flex-end;gap:.4rem;display:flex}.action .gain{font-family:var(--font-mono);color:var(--good);white-space:nowrap;font-size:.85rem}@media (max-width:640px){.action{grid-template-columns:auto 1fr}.action .side{flex-direction:row;grid-column:2;align-items:flex-start}}.chart{width:100%;height:auto;display:block;overflow:visible}.chart .grid-line{stroke:var(--rule);stroke-width:1px}.chart .axis{fill:var(--muted);font:10px var(--font-mono)}.chart .line-cur{fill:none;stroke:var(--forge);stroke-width:2px}.chart .line-prev{fill:none;stroke:var(--chart-prev);stroke-width:1.5px;stroke-dasharray:4 3}.chart .area{fill:var(--forge-wash);opacity:.65}.chart .hover-line{stroke:var(--ink);stroke-width:1px;stroke-dasharray:2 2}.chart .dot{fill:var(--forge);stroke:var(--surface);stroke-width:2px}.chart-tooltip{pointer-events:none;background:var(--ink);color:var(--paper);font:.75rem/1.4 var(--font-mono);white-space:nowrap;border-radius:4px;padding:.4rem .55rem;position:absolute;transform:translate(-50%,-110%)}.legend{font:.75rem var(--font-mono);color:var(--muted);gap:1rem;display:flex}.legend i{border-top:2px solid var(--forge);vertical-align:middle;width:14px;height:0;margin-right:.35rem;display:inline-block}.legend i.prev{border-top:2px dashed var(--chart-prev)}.spark{display:block}.spark path{fill:none;stroke:var(--forge);stroke-width:1.5px}.bar-track{background:var(--surface-2);border-radius:99px;height:8px;display:flex;overflow:hidden}.bar-track span{height:100%;display:block}.speed-row{border-top:1px solid var(--rule);flex-direction:column;gap:.6rem;padding:.9rem 1.25rem;display:flex}.speed-metrics{grid-template-columns:repeat(3,auto) 1fr;gap:.4rem 1.5rem;margin:0;display:grid}.speed-metrics dd{margin:.15rem 0 0}.speed-fixes{color:var(--ink-2);margin:0;padding-left:1.1rem}@media (max-width:640px){.speed-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.speed-metrics>div:last-child{grid-column:1/-1}}.empty{border:1.5px dashed var(--rule-strong);border-radius:var(--radius);text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 1.5rem;display:flex}.empty h2{font-size:1.25rem}.empty p{color:var(--muted);max-width:46ch}.alert{border:1.5px solid var(--ink);border-radius:var(--radius);background:var(--surface);padding:.75rem 1rem;font-size:.9rem}.alert-error{border-color:var(--bad);background:var(--bad-wash);color:var(--bad)}.alert-ok{border-color:var(--good);background:var(--good-wash);color:var(--good)}.alert-info{border-color:var(--rule-strong)}.skeleton{background:linear-gradient(90deg, var(--surface-2), var(--surface), var(--surface-2));border-radius:var(--radius);background-size:200% 100%;animation:1.3s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.toast-stack{z-index:100;flex-direction:column;gap:.5rem;display:flex;position:fixed;bottom:1.25rem;right:1.25rem}.toast{background:var(--ink);color:var(--paper);border-radius:var(--radius);box-shadow:3px 3px 0 var(--forge);max-width:360px;padding:.7rem 1rem;font-size:.88rem;animation:.18s ease-out rise}.toast.error{box-shadow:3px 3px 0 var(--bad)}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}.modal-backdrop{z-index:50;background:#14120e73;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border:1.5px solid var(--ink);border-radius:var(--radius);box-shadow:6px 6px 0 var(--ink);width:100%;max-width:460px;padding:1.4rem}.menu{position:relative}.menu-pop{background:var(--surface);border:1.5px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);z-index:30;min-width:220px;padding:.35rem;position:absolute;top:calc(100% + 6px);right:0}.menu-pop a,.menu-pop button{text-align:left;width:100%;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:.5rem .65rem;font-size:.9rem;text-decoration:none;display:block}.menu-pop a:hover,.menu-pop button:hover{background:var(--surface-2);color:var(--ink)}.menu-pop hr{border:0;border-top:1px solid var(--rule);margin:.3rem 0}details.disclosure>summary{cursor:pointer;list-style:none}details.disclosure>summary::-webkit-details-marker{display:none}details.disclosure>summary:before{content:"▸";width:1rem;color:var(--muted);transition:transform .15s;display:inline-block}details.disclosure[open]>summary:before{transform:rotate(90deg)}.site-card{flex-direction:column;gap:.9rem;text-decoration:none;transition:box-shadow .1s,transform .1s;display:flex}.site-card:hover{box-shadow:var(--shadow);border-color:var(--ink);color:var(--ink);transform:translate(-1px,-1px)}.verify-banner{background:var(--forge-wash);color:var(--ink);border-bottom:1px solid var(--rule);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;padding:.55rem 1rem;font-size:.88rem;display:flex}.auth-wrap{grid-template-columns:1.1fr 1fr;min-height:100vh;display:grid}.auth-side{color:#f3eee4;background:#1c1a17;flex-direction:column;justify-content:space-between;padding:3rem;display:flex;position:relative;overflow:hidden}.auth-side:after{content:"";pointer-events:none;background-image:repeating-linear-gradient(0deg,#0000 0 31px,#ffffff0d 31px 32px);position:absolute;inset:0}.auth-side blockquote{font:500 1.7rem/1.25 var(--font-display);max-width:18ch;margin:0}.auth-side blockquote em{color:var(--forge);font-style:normal}.auth-form{place-items:center;padding:2rem 1.25rem;display:grid}.auth-form form{flex-direction:column;gap:1rem;width:100%;max-width:380px;display:flex}@media (max-width:860px){.auth-wrap{grid-template-columns:1fr}.auth-side{display:none}}.hero{grid-template-columns:1.2fr 1fr;align-items:center;gap:3rem;padding:4.5rem 0 3rem;display:grid}.hero h1{font-size:clamp(2.3rem,5vw,3.6rem);line-height:1.02}.hero h1 em{color:var(--forge);font-style:italic}.hero p.lead{color:var(--ink-2);max-width:52ch;margin-top:1.2rem;font-size:1.15rem}@media (max-width:860px){.hero{grid-template-columns:1fr;padding-top:2.5rem}}.ticket{background:var(--surface);border:1.5px solid var(--ink);border-radius:var(--radius);box-shadow:8px 8px 0 var(--ink);padding:1.25rem;transform:rotate(1.2deg)}@media (max-width:560px){.ticket{box-shadow:5px 5px 0 var(--ink);transform:none}}.ticket .line{border-bottom:1px dashed var(--rule-strong);justify-content:space-between;gap:1rem;padding:.55rem 0;font-size:.9rem;display:flex}.ticket .line:last-child{border-bottom:0}.feature{border-top:1.5px solid var(--ink);padding-top:1rem}.feature .num-tag{font:600 .8rem var(--font-mono);color:var(--forge)}.footer{border-top:1px solid var(--rule);text-align:center;color:var(--muted);padding:1.5rem 1.25rem;font-size:.82rem}.skip-link{z-index:200;background:var(--ink);color:var(--paper);border-radius:var(--radius);padding:.6rem .9rem;text-decoration:none;position:absolute;top:-100px;left:1rem}.skip-link:focus{color:var(--paper);top:1rem}.link-button{appearance:none;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:3px;padding:0}.link-button:hover{color:var(--forge-ink)}.th-sort{appearance:none;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.th-sort:hover{color:var(--ink)}.status-page{text-align:center;flex-direction:column;align-items:center;gap:1rem;max-width:560px;margin:0 auto;padding:5rem 1.25rem 4rem;display:flex}.status-code{font:600 4.5rem/1 var(--font-mono);color:var(--forge);border:5px double var(--forge);border-radius:12px;margin-bottom:1rem;padding:.6rem 1.4rem;transform:rotate(-4deg)}.status-page p{font-size:1.05rem}.th-sort{min-width:24px;padding:5px 0}.link-button{padding:3px 0}.label a,a.small,.ledger td.main a,.ledger .sub a{padding-block:4px;display:inline-block}@media (max-width:400px){.hide-xs{display:none}.topbar-inner{gap:.6rem}}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.legal{max-width:720px}.legal h2{margin-top:2rem}.legal p,.legal ul{margin-top:.75rem;line-height:1.6}.legal ul{padding-left:1.25rem}.legal li+li{margin-top:.4rem}.footer a{color:inherit;text-decoration:underline}
