@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-normal.CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-normal.CBcvBZtf.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-cyrillic-wght-normal.D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-greek-wght-normal.Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-vietnamese-wght-normal.Bt-aOZkq.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-ext-wght-normal.DBQx-q_a.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-wght-normal.B9CIFXIH.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{--sans:"Inter Variable", "Inter", -apple-system, "Segoe UI", system-ui, sans-serif;--mono:"JetBrains Mono Variable", "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--ink:#0b0c0e;--body:#3b3f45;--mute:#74787e;--faint:#9ba0a6;--ghost:#c4c7cb;--line:#e6e7e9;--line2:#f1f1f2;--bg:#fcfcfd;--panel:#f6f6f7;--fill:#e4e5e7;--fill2:#e9eaeb;--dot:#dedfe1;--measure:32em;--page:1060px;--gutter:36px}@media (width<=620px){:root{--gutter:20px}}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0}a{color:inherit;text-decoration:none}.tnum{font-variant-numeric:tabular-nums}.bd{max-width:var(--page);padding:0 var(--gutter);margin:0 auto}.skip{position:absolute;left:-9999px}.skip:focus{z-index:999;background:var(--ink);color:#fff;border-radius:7px;padding:8px 14px;font-size:13px;top:12px;left:12px}.top{border-bottom:1px solid var(--line);backdrop-filter:blur(10px);z-index:100;background:#fcfcfdeb;position:sticky;top:0}.top .in{align-items:center;gap:34px;height:56px;display:flex}.logo{letter-spacing:-.02em;white-space:nowrap;font-size:14.5px;font-weight:650}.logo i{color:var(--ghost);font-style:normal}.nav{scrollbar-width:none;gap:24px;display:flex;overflow-x:auto}.nav::-webkit-scrollbar{display:none}.nav a{color:var(--body);white-space:nowrap;border-bottom:1.5px solid #0000;align-items:baseline;gap:5px;padding:2px 0;font-size:13.5px;display:flex}.nav a em{font-style:normal;font-family:var(--mono);color:var(--ghost);font-variant-numeric:tabular-nums;font-size:10.5px}.nav a:hover{color:var(--ink)}.nav a[aria-current]{color:var(--ink);border-bottom-color:var(--ink);font-weight:550}.top .end{font-family:var(--mono);color:var(--faint);white-space:nowrap;margin-left:auto;font-size:11px}.hero{text-align:center;padding:78px 0 56px}.hero h1{letter-spacing:-.036em;margin:0 0 30px;font-size:42px;font-weight:620;line-height:1.12}.search{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:stretch;max-width:600px;margin:0 auto;transition:all .15s;display:flex;position:relative}.search:focus-within{border-color:var(--ink);box-shadow:0 0 0 3px #0b0c0e0d}.search input{min-width:0;height:52px;font:inherit;color:var(--ink);background:0 0;border:0;border-radius:11px 0 0 11px;outline:none;flex:1;padding:0 4px 0 18px;font-size:15.5px}.search input::placeholder{color:var(--faint)}.search input::-webkit-search-cancel-button{display:none}.search button{cursor:pointer;width:52px;color:var(--mute);background:0 0;border:0;border-radius:0 11px 11px 0;justify-content:center;align-items:center;padding:0;display:flex}.search button:hover{color:var(--ink)}.search button svg{stroke:currentColor}.results{border:1px solid var(--line);text-align:left;z-index:50;background:#fff;border-radius:11px;position:absolute;top:60px;left:0;right:0;overflow:hidden;box-shadow:0 8px 28px #0b0c0e17}.results[hidden]{display:none}.results a{border-bottom:1px solid var(--line2);align-items:baseline;gap:10px;padding:9px 16px;font-size:13.5px;display:flex}.results a:last-child{border-bottom:0}.results a:hover,.results a.on{background:var(--panel)}.results a .kindtag{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);margin-left:auto;font-size:10px}.results a .sub{color:var(--mute);font-size:12.5px}.sech{align-items:baseline;gap:14px;padding:50px 0 16px;display:flex}.sech h2{letter-spacing:.13em;text-transform:uppercase;margin:0;font-size:11.5px;font-weight:650}.sech .rule{background:var(--line);flex:1;height:1px}.sech a,.sech .note{color:var(--mute);font-size:12.5px}.grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.card{border:1px solid var(--line);background:#fff;border-radius:13px;flex-direction:column;transition:all .15s;display:flex;overflow:hidden}.card:hover{border-color:var(--ghost);transform:translateY(-1px);box-shadow:0 4px 14px #0b0c0e0b}.card .vis{background:var(--panel);border-bottom:1px solid var(--line2);flex-direction:column;justify-content:center;min-height:134px;padding:18px 20px;display:flex;overflow:hidden}.card .txt{flex:1;padding:15px 20px 17px}.card .kind{letter-spacing:.11em;text-transform:uppercase;color:var(--faint);margin-bottom:8px;font-size:10.5px;font-weight:650}.card h3{letter-spacing:-.019em;margin:0 0 7px;font-size:16.5px;font-weight:580;line-height:1.35}.card p{color:var(--mute);margin:0;font-size:13.5px;line-height:1.6}.card .foot{font-family:var(--mono);color:var(--faint);margin-top:11px;font-size:10.5px}.card.wide{grid-column:span 2}.card.wide .vis{min-height:172px}.card.wide h3{letter-spacing:-.024em;font-size:21px;font-weight:600}.card.wide p{color:var(--body);font-size:14.5px}.bars{flex-direction:column;gap:6px;width:100%;display:flex}.bars .row{align-items:center;gap:10px;font-size:11px;display:flex}.bars .row .l{width:136px;color:var(--mute);white-space:nowrap;text-overflow:ellipsis;text-align:right;overflow:hidden}.bars .row .t{background:var(--fill2);border-radius:2px;flex:1;height:11px;overflow:hidden}.bars .row .t i{background:var(--ghost);border-radius:2px;height:100%;display:block}.bars .row.on .l{color:var(--ink);font-weight:550}.bars .row.on .t i{background:var(--ink)}.bars .row .v{font-family:var(--mono);color:var(--mute);text-align:right;width:36px;font-size:10.5px}.code{font-family:var(--mono);width:100%;font-size:11px;line-height:1.95}.code div{grid-template-columns:112px 1fr;gap:8px;display:grid}.code div .k{color:var(--faint);text-align:right;text-overflow:ellipsis;overflow:hidden}.code div .v{color:var(--ink);white-space:pre;overflow:hidden}.code div .v u{background:var(--fill);border-radius:2px;padding:1px 2px;text-decoration:none}.code div.off .v{color:var(--faint)}.ratio{align-items:center;gap:16px;display:flex}.ratio .big{font-family:var(--mono);letter-spacing:-.04em;font-size:38px;font-weight:500;line-height:1}.ratio .sq{grid-template-columns:repeat(3,14px);gap:5px;display:grid}.ratio .sq i{border:1px solid var(--ghost);border-radius:3px;width:14px;height:14px;display:block}.ratio .sq i.f{background:var(--ink);border-color:var(--ink)}.chg{font-family:var(--mono);align-items:center;gap:14px;display:flex}.chg .o{color:var(--faint);font-size:23px;text-decoration:line-through}.chg .a{letter-spacing:-.03em;font-size:33px;font-weight:500}.chg .arw{color:var(--ghost);font-size:17px}.rank{flex-direction:column;gap:8px;width:100%;display:flex}.rank .r{align-items:center;gap:9px;font-size:11.5px;display:flex}.rank .r .n{width:118px;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rank .r .d{flex:1;gap:3px;display:flex}.rank .r .d i{background:var(--dot);border-radius:50%;width:7px;height:7px}.rank .r .d i.f{background:var(--ink)}.rank .r .c{font-family:var(--mono);color:var(--mute);text-align:right;width:26px;font-size:10.5px}.mx{width:100%;font-size:10px}.mx .hdr{color:var(--faint);grid-template-columns:96px 1fr;gap:8px;margin-bottom:6px;display:grid}.mx .hdr .a{font-family:var(--mono);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mx .rw{grid-template-columns:96px 1fr;align-items:center;gap:8px;margin-bottom:4px;display:grid}.mx .rw .l{color:var(--mute);text-align:right;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mx .rw .c{gap:3px;display:grid}.mx .rw .c i{background:var(--fill);border-radius:2px;height:11px}.mx .rw .c i.f{background:var(--ink)}.mx .rw .c i.p{background:var(--ghost)}.mx .cols{grid-auto-columns:1fr;grid-auto-flow:column;gap:3px;min-width:0;display:grid}.mx .cols i{background:var(--fill);border-radius:2px;height:11px}.mx .cols i.f{background:var(--ink)}.mx .cols i.p{background:var(--ghost)}.mx.board{font-size:11px}.mx.board .hdr,.mx.board .rw{grid-template-columns:132px 1fr;gap:12px}.mx.board .rw{margin-bottom:5px}.mx.board .cols{grid-auto-columns:minmax(0,104px);justify-content:start;gap:6px}.mx.board .cols i{height:14px}.mx.board .hdr .a{white-space:normal;line-height:1.35}.mx.board .rw .l{color:var(--body)}.mx.board .rw .l a:hover{color:var(--ink);border-bottom:1px solid var(--ink)}footer.site{border-top:1px solid var(--line);color:var(--mute);flex-wrap:wrap;gap:22px;margin-top:60px;padding:20px 0 56px;font-size:12.5px;display:flex}footer.site .r{font-family:var(--mono);color:var(--faint);margin-left:auto;font-size:11px}.cap{padding:44px 0 0}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:14px;font-size:11px}.cap h1{letter-spacing:-.032em;max-width:16em;margin:0 0 34px;font-size:38px;font-weight:620;line-height:1.12}.verdict{border-top:2px solid var(--ink);padding-top:19px}.verdict .l{letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:9px;font-size:11px}.verdict .p{letter-spacing:-.028em;margin-bottom:9px;font-size:30px;font-weight:620}.verdict .r{color:var(--body);max-width:31em;font-size:16px;line-height:1.62}.exc{margin:20px 0 46px}.exc div{border-top:1px solid var(--line2);gap:18px;padding:11px 0;font-size:14.5px;display:flex}.exc div .i{color:var(--mute);flex:1}.exc div .t{font-weight:550}.kpi{border-top:1px solid var(--line);flex-wrap:wrap;gap:54px;padding:24px 0 6px;display:flex}.kpi div .n{letter-spacing:-.035em;font-size:36px;font-weight:600;font-family:var(--mono)}.kpi div .l{color:var(--mute);margin-top:4px;font-size:12.5px;line-height:1.5}.method{font-family:var(--mono);color:var(--faint);margin:14px 0 46px;font-size:11.5px}.method a{border-bottom:1px solid var(--line)}.method a:hover{color:var(--body)}.prose{color:var(--body);max-width:var(--measure);margin:0 0 46px;font-size:16px;line-height:1.8}.prose h2{letter-spacing:-.02em;color:var(--ink);margin:40px 0 12px;font-size:21px;font-weight:600}.prose h3{color:var(--ink);margin:30px 0 8px;font-size:16.5px;font-weight:600}.prose p{margin:0 0 18px}.prose ul,.prose ol{margin:0 0 18px;padding-left:20px}.prose li{margin-bottom:7px}.prose b,.prose strong{color:var(--ink);font-weight:600}.prose code{font-family:var(--mono);background:var(--panel);border:1px solid var(--line2);border-radius:4px;padding:1px 5px;font-size:.87em}.prose pre{background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:14px 16px;font-size:12.5px;line-height:1.7;overflow-x:auto}.prose pre code{font-size:inherit;background:0 0;border:0;padding:0}.prose a{border-bottom:1px solid var(--ghost)}.prose a:hover{border-bottom-color:var(--ink);color:var(--ink)}.prose blockquote{border-left:2px solid var(--line);color:var(--mute);margin:0 0 18px;padding-left:16px}.scroller{margin-bottom:46px;overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:13.5px}table.data caption{text-align:left;color:var(--mute);padding-bottom:10px;font-size:12.5px}table.data th{text-align:left;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);border-bottom:1px solid var(--ink);white-space:normal;vertical-align:bottom;max-width:130px;padding:0 12px 8px 0;font-size:10.5px;font-weight:650}table.data th .sub{font-family:var(--mono);letter-spacing:0;text-transform:none;color:var(--ghost);font-size:9.5px;font-weight:400;display:block}table.data td{border-bottom:1px solid var(--line2);white-space:nowrap;vertical-align:top;padding:10px 12px 10px 0}table.data td.nm{font-weight:520}table.data td.dim{color:var(--mute)}table.data td.num{font-family:var(--mono);text-align:right;font-variant-numeric:tabular-nums;font-size:12.5px}table.data th.num{text-align:right}table.data td.none{color:var(--ghost);text-align:center}table.data td.unk{color:var(--faint);text-align:center;font-style:italic}table.data tr.hi td{background:var(--panel)}table.data tr.hi td.nm{box-shadow:inset 2px 0 0 var(--ink);padding-left:10px}table.data tr.sec td{letter-spacing:.09em;text-transform:uppercase;color:var(--faint);border-bottom:1px solid var(--line);padding:18px 12px 6px 0;font-size:10px;font-weight:700}table.data tr:target td{background:var(--panel)}table.data td.wrap{white-space:normal;min-width:190px}table.data td .mono,table.data td.mono{font-family:var(--mono);font-size:12px}.scroller.matrix{position:relative}.scroller.matrix table.data{width:auto;min-width:100%;font-size:11.5px}.scroller.matrix table.data th,.scroller.matrix table.data td{white-space:normal;max-width:190px;padding:6px 14px 6px 0}.scroller.matrix table.data td.mono,.scroller.matrix table.data td .mono{font-size:11px}.scroller.matrix table.data th:first-child,.scroller.matrix table.data td:first-child{z-index:2;background:var(--bg);min-width:150px;padding-right:18px;position:sticky;left:0}.scroller.matrix table.data tr.sec td{background:var(--bg)}.scroller.matrix table.data th:first-child{z-index:3}table.data.cov td{padding-top:11px;padding-bottom:11px}table.data.cov tr.gap td.nm,table.data.cov tr.gap td{color:var(--faint)}table.data.cov .sep{color:var(--ghost)}table.data.cov .role{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-left:6px;font-size:10px}table.data.cov .via{color:var(--mute);white-space:normal;margin-top:3px;font-size:12px}table.data.cov .swatch{margin-right:9px}table.data.cov td.cmp{font-family:var(--mono);color:var(--faint);white-space:nowrap;font-size:11.5px}table.data.cov td.cmp b{color:var(--mute);font-weight:600}.inv{border-top:1px solid var(--ink)}.inv .grp{border-bottom:1px solid var(--line2);grid-template-columns:150px 1fr;align-items:baseline;gap:20px;padding:12px 0;display:grid}.inv .grp .l{color:var(--mute);text-align:right;font-size:12.5px}.inv .grp .l a{border-bottom:1px solid var(--line)}.inv .grp .l a:hover{color:var(--ink);border-bottom-color:var(--ink)}.inv .grp .t{flex-wrap:wrap;gap:4px 16px;min-width:0;display:flex}.inv .grp .t a{font-family:var(--mono);color:var(--body);font-size:12.5px}.inv .grp .t a:hover{color:var(--ink);border-bottom:1px solid var(--ink)}.inv .grp .t .role{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-left:5px;font-size:10px}@media (width<=620px){.inv .grp{grid-template-columns:1fr;gap:7px}.inv .grp .l{text-align:left}}.chips{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.chips a{color:var(--mute);border:1px solid var(--line);background:#fff;border-radius:99px;padding:5px 13px;font-size:13px}.chips a:hover{border-color:var(--ink);color:var(--ink)}.toolgrid{border-top:1px solid var(--ink);grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1px 22px;padding-top:10px;display:grid}.toolgrid a{border-bottom:1px solid var(--line2);align-items:baseline;gap:8px;min-width:0;padding:5px 0;display:flex}.toolgrid a:hover .tn{color:var(--ink)}.toolgrid .tn{font-family:var(--mono);color:var(--body);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.toolgrid .tc{color:var(--ghost);white-space:nowrap;margin-left:auto;font-size:10.5px}.mark{object-fit:contain;vertical-align:-5px;border-radius:4px;flex:none;width:20px;height:20px}.mark.xs{vertical-align:-3px;border-radius:3px;width:15px;height:15px}.mark.sm{vertical-align:-3px;border-radius:3px;width:16px;height:16px}.mark.lg{border-radius:9px;width:42px;height:42px}a.withmark{align-items:center;gap:9px;min-width:0;display:inline-flex}.mx.board a.withmark{justify-content:flex-end;gap:6px}.chips a{align-items:center;gap:7px;display:inline-flex}.titleline{align-items:center;gap:15px;margin-bottom:16px;display:flex}.titleline h1{margin:0}.swatch{background:var(--fill);vertical-align:-1px;border-radius:2px;width:9px;height:9px;margin-right:5px;display:inline-block}.swatch.f{background:var(--ink)}.swatch.p{background:var(--ghost)}.val{align-items:baseline;gap:5px;display:inline-flex}.val.fail{color:var(--ink);font-weight:600}.val.fail:before{content:"✗";font-size:11px}.val.pass:before{content:"✓";color:var(--faint);font-size:11px}a.src,span.src{font-family:var(--mono);color:var(--ghost);vertical-align:super;white-space:nowrap;margin-left:3px;font-size:9.5px;line-height:0}a.src:hover{color:var(--ink)}.badge{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mute);border:1px solid var(--line);background:var(--panel);vertical-align:middle;border-radius:4px;padding:2px 6px;font-size:10px;display:inline-block}.badge.warn{border-color:var(--ink);color:var(--ink);font-weight:600}.diverge{border-top:2px solid var(--ink);margin-bottom:46px;padding-top:19px}.diverge ul{margin:14px 0 0;padding:0;list-style:none}.diverge li{border-top:1px solid var(--line2);flex-wrap:wrap;align-items:baseline;gap:18px;padding:11px 0;font-size:14.5px;display:flex}.diverge li .k{color:var(--mute);flex:1;min-width:160px}.diverge li .mine{font-weight:600;font-family:var(--mono);font-size:13px}.diverge li .rest{color:var(--faint);font-family:var(--mono);font-size:12px}.raw{background:var(--panel);border:1px solid var(--line);font-family:var(--mono);color:var(--body);white-space:pre-wrap;word-break:break-word;border-radius:9px;margin:0 0 46px;padding:14px 16px;font-size:12px;line-height:1.65;overflow-x:auto}.meta{font-family:var(--mono);color:var(--faint);border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:22px;margin-bottom:34px;padding:14px 0;font-size:11.5px;display:flex}.meta a{border-bottom:1px solid var(--line)}.meta a:hover{color:var(--ink)}.list{border-top:1px solid var(--ink);margin-bottom:46px}.list a.item{border-bottom:1px solid var(--line2);align-items:baseline;gap:20px;padding:15px 0;display:flex}.list a.item:hover .ttl{color:var(--ink)}.list a.item .ttl{letter-spacing:-.014em;flex:1;font-size:16px;font-weight:550;line-height:1.4}.list a.item .dsc{color:var(--mute);margin-top:4px;font-size:13.5px;font-weight:400;line-height:1.55}.list a.item .dt{font-family:var(--mono);color:var(--faint);white-space:nowrap;font-size:11px}.post-h1{letter-spacing:-.03em;max-width:18em;margin:0 0 16px;font-size:34px;font-weight:620;line-height:1.16}.lede{color:var(--body);max-width:var(--measure);margin:0 0 26px;font-size:18px;line-height:1.65}@media (width<=920px){.grid{grid-template-columns:1fr}.card.wide{grid-column:span 1}}@media (width<=620px){.hero{padding:56px 0 46px}.hero h1{font-size:30px}.cap h1{font-size:28px}.post-h1{font-size:26px}.verdict .p{font-size:24px}.kpi{gap:28px}.top .in{gap:18px}.top .end{display:none}}
