:root{--bg:#fff;--ink:#171a1f;--muted:#47505b;--panel:#f2f4f7;--zebra:#f8f9fb;--line:#d9dee3;--line-strong:#b7bfc9;--accent:#1e40af;--accent-dark:#18306e;--band:#121a2c;--band-ink:#fff;--band-muted:#c3cee3;--band-faint:#93a5c9;--fs-xs:.78rem;--fs-sm:.88rem;--fs-table:.94rem;--fs-base:1.0625rem;--fs-lede:1.16rem;--fs-h3:1.13rem;--fs-h2:1.45rem;--fs-h1:2.15rem;--fs-display:2.6rem;--radius:4px;--radius-sm:3px;--font-num:ui-monospace, "SFMono-Regular", "Cascadia Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.65;font-size:var(--fs-base);margin:0}.wrap{max-width:1080px;margin:0 auto;padding:0 20px}a{color:var(--accent);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{color:var(--accent-dark)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1{font-size:var(--fs-h1);letter-spacing:-.01em;margin:.4em 0 .5em;line-height:1.2}h2{font-size:var(--fs-h2);margin:1.6em 0 .55em;line-height:1.3}h3{font-size:var(--fs-h3);margin:1.3em 0 .4em}p{margin:.55em 0}ul,ol{margin:.5em 0 .9em;padding-left:1.35em}li{margin:.28em 0}small,.muted{color:var(--muted)}.num{font-family:var(--font-num);font-variant-numeric:tabular-nums;text-align:right}.site-header{border-bottom:1px solid var(--line-strong);background:var(--bg);z-index:10;position:sticky;top:0}.header-in{justify-content:space-between;align-items:center;gap:16px;padding-top:12px;padding-bottom:12px;display:flex}.brand{color:var(--ink);align-items:center;gap:9px;font-size:1.25rem;font-weight:800;text-decoration:none;display:inline-flex}.brand em{color:var(--accent);font-style:normal}.main-nav{flex-wrap:wrap;gap:20px;display:flex}.main-nav a{color:var(--ink);font-size:.98rem;font-weight:600;text-decoration:none}.main-nav a:hover{color:var(--accent)}.site-footer{border-top:1px solid var(--line-strong);background:var(--panel);margin-top:64px;padding:40px 0 24px;font-size:.95rem}.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:28px;display:grid}.footer-name{font-weight:800}.footer-col{margin-bottom:.4em;font-weight:700}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:.35em 0}.footer-base{border-top:1px solid var(--line);color:var(--muted);font-size:var(--fs-sm);margin-top:28px;padding-top:16px}main{padding-top:28px}.lede{font-size:var(--fs-lede)}.quick-answer{border:1px solid var(--line);border-left:4px solid var(--accent);background:var(--panel);border-radius:var(--radius);margin:20px 0 26px;padding:16px 20px}.quick-answer .qa-label{text-transform:uppercase;letter-spacing:.06em;font-weight:800;font-size:var(--fs-xs);color:var(--accent-dark);margin:0 0 4px}.quick-answer p{margin:.3em 0}.crumbs{color:var(--muted);font-size:.9rem}.crumbs a{color:var(--muted)}table{border-collapse:collapse;width:100%;margin:14px 0 22px;font-size:.97rem}th,td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 12px}th{background:var(--panel);font-weight:700}table:not(.spec-table) tbody tr:nth-child(2n) td{background:var(--zebra)}.cards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin:18px 0 8px;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:var(--bg);padding:18px;text-decoration:none;display:block}.card:hover{border-color:var(--accent);background:var(--zebra)}.card h3{margin:0 0 6px;font-size:1.08rem}.card p{margin:.25em 0;font-size:.95rem}.card .meta{color:var(--muted);font-size:.87rem}.faq{border-top:1px solid var(--line);margin-top:10px}.faq details{border-bottom:1px solid var(--line);padding:12px 2px}.faq summary{cursor:pointer;font-weight:700}.faq details p{margin:.5em 0 .2em}.sources{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);margin:22px 0;padding:14px 18px;font-size:.92rem}.sources p{margin:0 0 6px;font-weight:700}.sources ul{margin:0}.updated{color:var(--muted);font-size:.9rem}.tag{background:var(--panel);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-sm);margin-right:6px;padding:1px 9px;font-size:.8rem;font-weight:600;display:inline-block}dl.glossary dt{border-top:1px solid var(--line);margin-top:22px;padding-top:14px;font-size:1.08rem;font-weight:800}dl.glossary dd{margin:4px 0 0}.lang-nav{font-size:var(--fs-sm);flex-wrap:wrap;justify-content:flex-end;gap:14px;padding-top:14px;display:flex}.lang-nav a{color:var(--muted);text-decoration:none}.lang-nav a:hover{color:var(--accent)}.lang-nav a[aria-current]{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);font-weight:700}.hero{padding:26px 0 6px}.hero h1{font-size:var(--fs-display)}.note{border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--zebra);padding:12px 18px;font-size:.95rem}.hub-band{background:var(--band);color:var(--band-ink);box-shadow:0 0 0 100vmax var(--band);clip-path:inset(0 -100vmax);padding-top:26px;padding-bottom:26px}main>.hub-band:first-child{margin-top:-28px}.hub-band h1{color:var(--band-ink)}.hub-band .lede{color:var(--band-muted)}.hub-band .crumbs{color:var(--band-faint)}.hub-band .crumbs a{color:var(--band-muted)}.spec-table{font-size:var(--fs-table)}.spec-table th[scope=row]{background:var(--bg);font-weight:600}.spec-table .spec-val{white-space:nowrap;font-weight:600}.spec-table .num-col{text-align:right}.spec-table .spec-subhead th{background:var(--panel);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:var(--fs-xs);font-weight:700}.table-scroll{margin:14px 0 22px;overflow-x:auto}.table-scroll table{margin:0}.data-table{font-size:var(--fs-table);white-space:nowrap}.data-table th,.data-table td{padding:7px 10px}.data-table td.num,.data-table th.num-col{text-align:right;font-family:var(--font-num);font-variant-numeric:tabular-nums}.data-table th.num-col{font-family:inherit}.relations{margin-top:34px}.rel-grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:16px;margin-top:14px;display:grid}.rel-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);padding:16px 18px}.rel-card p{font-size:.95rem}.rel-label{text-transform:uppercase;letter-spacing:.06em;font-weight:800;font-size:var(--fs-xs);color:var(--muted);margin:0 0 6px}.rel-name{margin:0 0 2px;font-size:1.08rem;font-weight:700}.rel-meta{color:var(--muted);margin:0 0 6px;font-size:.87rem}.rel-list{margin:0;padding:0;list-style:none}.rel-list li{margin:.45em 0}.rel-list .rel-meta{margin:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn{background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:var(--radius-sm);font-size:var(--fs-sm);cursor:pointer;padding:6px 14px;font-weight:700;text-decoration:none;display:inline-block}.btn:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.btn-quiet{background:var(--bg);color:var(--ink);border-color:var(--line-strong)}.btn-quiet:hover{background:var(--panel);border-color:var(--line-strong)}.btn.disabled{opacity:.5;pointer-events:none}.filter-bar{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;align-items:end;gap:12px 16px;margin:14px 0 4px;padding:14px 16px;display:flex}.filter-field{flex-direction:column;gap:4px;display:flex}.filter-field label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}.filter-field select,.filter-field input{background:var(--bg);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-sm);font-size:var(--fs-sm);max-width:230px;padding:6px 8px;font-family:inherit}.filter-actions{align-items:center;gap:14px;margin-left:auto;display:flex}.result-count{color:var(--muted);font-size:var(--fs-sm);margin:0}.filter-bar :focus-visible,.compare-bar :focus-visible,.picker :focus-visible,.th-sort:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.compare-bar{background:var(--zebra);border:1px solid var(--accent);border-radius:var(--radius);font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:14px;margin:12px 0 4px;padding:10px 16px;display:flex}.compare-bar[hidden]{display:none}table.data-table.hub-table tbody tr td{background:var(--bg)}table.data-table.hub-table tbody tr.alt td{background:var(--zebra)}.hub-table tr.is-hidden{display:none}.hub-table .cmp-col{width:34px}.hub-table .cmp-cell{text-align:center}.cmp-check{width:17px;height:17px;accent-color:var(--accent);cursor:pointer}.cmp-check:disabled{cursor:not-allowed;opacity:.4}.th-sort{font:inherit;color:inherit;cursor:pointer;text-align:inherit;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-weight:700;display:inline-flex}.th-sort .sort-ind:after{content:"↕";color:var(--muted);font-weight:400}.th-sort.sorted .sort-ind:after{color:var(--accent)}.th-sort[data-dir=asc] .sort-ind:after{content:"↑"}.th-sort[data-dir=desc] .sort-ind:after{content:"↓"}.no-matches td{color:var(--muted)}.picker{border:1px solid var(--line-strong);border-radius:var(--radius);margin:16px 0 6px;padding:14px 18px 16px}.picker legend{padding:0 6px;font-weight:700}.picker-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px 20px;margin-bottom:14px;display:grid}.picker-item{cursor:pointer;font-size:var(--fs-sm);align-items:flex-start;gap:8px;display:flex}.picker-item input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin-top:3px}.picker-item input:disabled{cursor:not-allowed;opacity:.4}.picker-meta{color:var(--muted);display:block}.compare-status{color:var(--muted)}.compare-table{white-space:normal}.compare-table th[scope=row]{background:var(--bg);font-weight:600}.compare-table thead th{background:var(--panel)}.cmp-spec{margin-bottom:5px}.cmp-spec .num{font-weight:600}.cmp-sub{color:var(--muted);font-size:var(--fs-xs);display:block}td.cmp-missing{color:var(--muted);text-align:center}.formula{font-family:var(--font-num);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);margin:14px 0 20px;padding:12px 18px;font-size:.97rem;overflow-x:auto}.formula p{white-space:nowrap;margin:.3em 0}.calc-form{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);margin:16px 0 6px;padding:18px}.calc-group{border:1px solid var(--line);border-radius:var(--radius);margin:0 0 14px;padding:12px 16px 16px}.calc-group legend{padding:0 6px;font-weight:700}.calc-radio{cursor:pointer;font-size:var(--fs-sm);align-items:flex-start;gap:8px;margin:4px 0;display:flex}.calc-radio input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin-top:3px}.calc-grid{flex-wrap:wrap;align-items:end;gap:12px 16px;margin-top:10px;display:flex}.calc-grid .filter-field select{background:var(--bg);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-sm);font-size:var(--fs-sm);max-width:320px;padding:6px 8px;font-family:inherit}.calc-hint{color:var(--muted);font-size:var(--fs-sm);flex-basis:100%;margin:8px 0 0}.calc-error{margin:12px 0 4px;font-weight:700}.calc-form [data-errors] ul{margin:.2em 0 .4em}input.field-invalid{border:2px solid var(--ink)}.calc-form :focus-visible{outline:2px solid var(--accent);outline-offset:1px}.kicker{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--accent-dark);margin:0 0 8px;font-weight:800}.hub-band .kicker{color:var(--band-muted)}.portal-masthead h1{letter-spacing:-.02em}.portal-section{border-top:2px solid var(--ink);margin-top:42px;padding-top:16px}.lead-headline{font-size:var(--fs-display);letter-spacing:-.015em;margin:.1em 0 .25em;line-height:1.14}.lead-headline a{color:var(--ink);text-decoration:none}.lead-headline a:hover{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.lead-dek{font-size:var(--fs-lede);line-height:1.55}.dateline{color:var(--muted);font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px}.front-grid{grid-template-columns:2fr 1fr;align-items:start;gap:30px;display:grid}.news-list{margin:6px 0 12px}.news-item{border-top:1px solid var(--line);grid-template-columns:118px 1fr;gap:16px;padding:13px 0;display:grid}.news-item:first-child{border-top:0;padding-top:2px}.news-date{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:var(--fs-sm);color:var(--muted);margin:.2em 0 0}.news-meta{margin:0 0 2px}.news-title{font-size:var(--fs-h3);margin:.15em 0 .3em;line-height:1.3}.briefing-box{background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:var(--radius);padding:18px 20px}.briefing-box h2,.briefing-box h3{margin-top:.2em}.eco-list{margin:10px 0 14px;padding:0;list-style:none}.eco-list li{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:14px;padding:9px 0;display:flex}.eco-counts{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:var(--fs-sm);color:var(--muted);white-space:nowrap}.depth-list{margin:6px 0 12px}.depth-item{border-top:1px solid var(--line);padding:11px 0}.depth-item:first-child{border-top:0;padding-top:2px}.depth-item h3{margin:.1em 0 .25em}.depth-item p{margin:.2em 0}.tools-module{background:var(--zebra);border:1px solid var(--line-strong);border-radius:var(--radius);padding:20px 22px}.tools-counts{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:var(--fs-h3);margin:.2em 0;font-weight:700}.tools-links{flex-wrap:wrap;gap:8px 22px;margin:12px 0 2px;padding:0;list-style:none;display:flex}.tools-links li{margin:0}.ad-slot{border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--zebra);margin:22px 0;padding:14px 18px}.ad-slot-label{color:var(--muted);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;margin:0}.matrix-table th[scope=row]{background:var(--bg);font-weight:600}.matrix-table td{text-align:center}.status-planned,.status-none{color:var(--muted)}.design-numbers{white-space:normal}.design-numbers th[scope=row]{background:var(--bg);font-weight:600}@media (width<=760px){:root{--fs-base:1rem;--fs-h1:1.8rem;--fs-display:2rem;--fs-table:.88rem}.footer-grid{grid-template-columns:1fr 1fr}.front-grid{grid-template-columns:1fr}.news-item{grid-template-columns:1fr;gap:2px}table{font-size:.9rem}th,td{padding:6px 8px}.spec-table .spec-val{white-space:normal}}
