:root{color-scheme:dark;--bg:#0b0d11;--panel:#14171d;--line:#2c3038;--ink:#f3f1ea;--muted:#b1b4bb;--red:#ee4944;--gold:#f2c35b}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65}a{color:inherit}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.wrap{width:min(1100px,calc(100% - 40px));margin:auto}.skip{position:fixed;left:20px;top:-100px;z-index:10;background:var(--gold);color:#111;padding:10px}.skip:focus{top:10px}
header{position:sticky;top:0;z-index:5;border-bottom:1px solid var(--line);background:#0b0d11f5}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 0}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:850;letter-spacing:-.04em;font-size:22px}.brand img{width:38px;height:38px}.nav-links{display:flex;align-items:center;gap:24px;font-size:14px}.nav-links a{text-decoration:none;color:var(--muted)}.nav-links a:hover{color:var(--ink)}.languages{display:flex;border:1px solid var(--line);border-radius:6px;padding:3px;gap:2px}.languages button{border:0;border-radius:3px;background:none;color:var(--muted);padding:5px 9px;font-size:12px;cursor:pointer}.languages button[aria-pressed=true]{color:#111;background:var(--ink)}
.hero{padding:62px 0 38px;text-align:center;background:radial-gradient(ellipse at 50% 24%,#69232235,transparent 65%)}.eyebrow{color:var(--gold);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;margin:0 0 18px}.main-logo{display:block;width:min(660px,100%);height:auto;margin:0 auto 20px}.hero h1{font-size:clamp(28px,4vw,48px);line-height:1.16;letter-spacing:-.045em;margin:0 0 18px}.intro{max-width:730px;margin:0 auto;color:var(--muted);font-size:clamp(16px,2vw,19px)}.credit{margin:20px 0 24px;font-size:16px;font-weight:800}.credit span{color:var(--gold)}.actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:24px 0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border-radius:6px;border:1px solid var(--line);text-decoration:none;font-weight:750;font-size:14px;transition:background .15s,transform .15s}.button:hover{background:#272b32;transform:translateY(-2px)}.button.primary{background:var(--red);border-color:var(--red);color:#fff}.button.primary:hover{background:#d73331}.button.gold{background:var(--gold);border-color:var(--gold);color:#15120c}.disclosure{font-size:12px;color:var(--muted);margin:0 auto;max-width:680px}
.notice{border:1px solid #7d4c2f;border-left:4px solid var(--gold);background:#221b13;border-radius:6px;padding:20px 24px;margin:28px auto 0;text-align:left;max-width:880px}.notice strong{display:block;color:var(--gold);font-size:16px;margin-bottom:5px}.notice p{font-size:14px;color:#d0c6b6;margin:0}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:40px;padding:24px 0;gap:20px}.metric strong{display:block;font-size:27px;letter-spacing:-.04em}.metric span{font-size:12px;color:var(--muted)}.metric-note{font-size:11px;color:var(--muted);margin-top:12px}
section.content{padding:64px 0;border-bottom:1px solid var(--line)}.section-top{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:28px}.section-top h2{font-size:clamp(26px,3vw,36px);letter-spacing:-.04em;line-height:1.2;margin:0}.section-top p{color:var(--muted);max-width:470px;margin:0;font-size:14px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:24px}.card h3{font-size:18px;margin:14px 0 8px;letter-spacing:-.025em}.card p{font-size:14px;color:var(--muted);margin:0}.tag{font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--gold);font-weight:800}.card-number{font-size:12px;color:#747a84}.roadmap{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;counter-reset:milestone}.milestone{border-top:2px solid var(--line);padding-top:18px}.milestone.current{border-color:var(--gold)}.milestone h3{font-size:18px;line-height:1.35}.milestone p{font-size:14px;color:var(--muted)}.support{background:linear-gradient(120deg,#291a17,#171512);border:1px solid #55402c;border-radius:10px;padding:40px}.support h2{font-size:clamp(28px,4vw,40px);line-height:1.2;letter-spacing:-.04em;margin:8px 0 16px;max-width:680px}.support>p{max-width:780px;color:#cec5b9}.support .actions{justify-content:flex-start}.support .disclosure{margin:0;color:#b6aa9b}.support-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:30px 0}.support-list h3{font-size:15px;margin:0 0 6px}.support-list p{font-size:13px;color:#bfb4a6;margin:0}
details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:700;font-size:16px}details p{color:var(--muted);max-width:850px;font-size:14px}.footer{padding:32px 0 40px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer strong{font-size:17px}.footer p{font-size:12px;color:var(--muted);max-width:820px}.footer a{text-underline-offset:4px}.repo-link[hidden]{display:none}
@media(max-width:760px){.nav{gap:12px;flex-wrap:wrap}.brand{font-size:19px}.nav-links{gap:14px;flex-wrap:wrap;justify-content:flex-end}.nav-links a{font-size:12px}.hero{padding-top:32px}.grid{grid-template-columns:repeat(2,1fr)}.section-top{display:block}.section-top p{margin-top:14px}.roadmap,.support-list{grid-template-columns:1fr}.support{padding:26px}.metrics{grid-template-columns:repeat(2,1fr)}section.content{padding:42px 0}.footer-top{align-items:start;flex-direction:column}}
@media(max-width:480px){.wrap{width:calc(100% - 32px)}.nav-links{width:100%;justify-content:space-between;gap:10px}.brand img{width:30px;height:30px}.hero h1{font-size:29px}.grid{grid-template-columns:1fr}.actions{flex-direction:column}.actions .button{width:100%}.notice{padding:16px}.card{padding:20px}.support{padding:22px}.hero .main-logo{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

.languages[hidden]{display:none}

/* Port Progress & Status Styles */
.status-badges{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:18px 0}
.status-badges a{display:inline-flex;transition:transform .15s}
.status-badges a:hover{transform:scale(1.04)}
.status-badges img{height:22px;display:block}
.treemap-card{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#16191c;box-shadow:0 8px 24px rgba(0,0,0,.45);margin:20px 0 12px;transition:border-color .2s}
.treemap-card:hover{border-color:var(--gold)}
.treemap-card img{width:100%;height:auto;display:block}
.progress-table-wrap{overflow-x:auto;margin:24px 0 16px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}
.progress-table{width:100%;border-collapse:collapse;text-align:left}
.progress-table th,.progress-table td{padding:10px 14px;border-bottom:1px solid var(--line);font-size:14px}
.progress-table th{background:#191d24;color:var(--ink);font-weight:750;font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.progress-table td.n{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.progress-table .bar{background:#3a3f47;height:8px;width:130px;border-radius:4px;overflow:hidden;display:inline-block;vertical-align:middle}
.progress-table .bar i{background:#3fa34d;display:block;height:8px}
.progress-table details{border:none;padding:0;margin:0}
.progress-table summary{cursor:pointer;font-weight:650;color:var(--ink);outline:none}
.progress-table summary:hover{color:var(--gold)}
.progress-table small{color:var(--muted);font-size:12px;display:block;margin-top:4px;line-height:1.4}
.progress-table code{font-family:ui-monospace,Consolas,monospace;font-size:12px;color:var(--gold)}
@media(max-width:760px){.progress-table .bar{width:90px}}

.cpp-progress-panel{padding:24px;border:1px solid var(--line);border-radius:8px;background:var(--panel);margin:26px 0}.cpp-progress-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.cpp-progress-heading strong{font-size:46px;line-height:1.1;color:#6acf7a;font-variant-numeric:tabular-nums}.cpp-progress-heading p{margin:8px 0 0;color:var(--ink);font-weight:750}.cpp-progress-heading code{color:#c2d7c5;font-size:17px}.cpp-progress-panel>p{font-size:13px;color:var(--muted);max-width:900px}.cpp-progress-panel .treemap-card{display:block}.cpp-progress-panel img{display:block;width:100%;height:auto}@media(max-width:480px){.cpp-progress-panel{padding:14px}.cpp-progress-heading strong{font-size:36px}.cpp-progress-heading code{font-size:14px}}

.cpp-progress-heading strong.readiness-label{font-size:clamp(25px,4vw,40px);color:#f2c35b}.technical-diagnostics p{max-width:none}.cpp-progress-panel .technical-diagnostics .status-badges img{width:auto;height:24px;max-width:100%}.technical-diagnostics .treemap-card{margin-top:18px}
