:root{--bg:#0b0f17;--bg-soft:#111827;--card:#151c2a;--card-border:#24304a;--text:#e7ecf5;--muted:#97a3ba;--text-soft:#c8d1e2;--accent:#f5a524;--accent-soft:#f5a5241f;--green:#34d399;--red:#f87171;--blue:#60a5fa;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.65}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:1100px;margin:0 auto;padding:0 20px}.skip-link{background:var(--accent);color:#0b0f17;z-index:100;border-radius:0 0 10px;padding:10px 16px;font-weight:700;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.site-header{border-bottom:1px solid var(--card-border);z-index:20;backdrop-filter:blur(8px);background:#0b0f17eb;position:sticky;top:0}.site-header .inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;min-height:58px;padding-top:8px;padding-bottom:8px;display:flex}.brand{color:var(--text);white-space:nowrap;align-items:center;gap:8px;font-size:18px;font-weight:800;display:flex}.brand:hover{text-decoration:none}.brand .logo{object-fit:cover;border-radius:6px;width:24px;height:24px;display:block;box-shadow:0 2px 8px #f5a52466}.header-right{align-items:center;gap:8px;display:flex}.main-nav{flex-wrap:wrap;align-items:center;gap:2px;font-size:14px;display:flex}.main-nav>a,.nav-drop>summary{color:var(--muted);white-space:nowrap;border-radius:8px;align-items:center;gap:5px;padding:7px 11px;display:inline-flex}.main-nav>a:hover,.nav-drop>summary:hover{background:var(--bg-soft);color:var(--text);text-decoration:none}.main-nav>a[aria-current=page],.nav-drop.active>summary{background:var(--accent-soft);color:var(--accent)}.play-btn{background:linear-gradient(135deg, var(--accent), #d97706);color:#0b0f17;white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:7px 14px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 2px 10px #f5a52440}.play-btn:hover{filter:brightness(1.08);text-decoration:none;box-shadow:0 4px 14px #f5a52461}.nav-drop{position:relative}.nav-drop summary{cursor:pointer;list-style:none}.nav-drop summary::-webkit-details-marker{display:none}.nav-drop[open]>summary{background:var(--bg-soft);color:var(--text)}.drop-panel{background:var(--card);border:1px solid var(--card-border);z-index:30;border-radius:12px;min-width:320px;max-width:360px;padding:8px;list-style:none;display:grid;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 12px 32px #00000080}.drop-panel a{color:var(--muted);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:14px;padding:8px 10px;font-size:14px;display:grid}.drop-panel a:hover{color:var(--text);background:#ffffff0f;text-decoration:none}.drop-panel a[aria-current=page]{background:var(--accent-soft);color:var(--accent)}.drop-sub{color:var(--muted);font-size:12px}.nav-toggle{background:var(--card);border:1px solid var(--card-border);color:var(--text);cursor:pointer;border-radius:8px;padding:6px 10px;font-size:16px;display:none}@media (width<=1024px){.nav-toggle{min-width:44px;min-height:44px;display:inline-block}.main-nav{border-top:1px solid var(--card-border);flex-direction:column;flex-basis:100%;order:1;align-items:stretch;gap:2px;margin-top:6px;padding:8px 0 4px;display:none}.main-nav.open{display:flex}.main-nav>a,.nav-drop>summary{padding:11px 12px;font-size:15px}.nav-drop>summary{justify-content:space-between;display:flex}.drop-panel{box-shadow:none;background:0 0;border:none;min-width:0;max-width:none;padding:0 0 6px 12px;position:static}}.hero{padding:40px 0 26px}.hero h1{margin:10px 0 12px;font-size:clamp(28px,5vw,40px);line-height:1.15}.hero p.lede{color:var(--muted);max-width:760px;margin:0 0 18px;font-size:18px}.hero-badge{background:var(--accent-soft);color:var(--accent);letter-spacing:.05em;border:1px solid #f5a52459;border-radius:999px;margin:0;padding:4px 14px;font-size:12.5px;font-weight:700;display:inline-block}h2{margin:34px 0 12px;font-size:24px;line-height:1.25}h3{margin:24px 0 8px;font-size:19px}.section{padding-bottom:8px}.sec-head{display:block}.sec-head p{margin:0 0 20px}.sec-head a{white-space:nowrap;font-size:14px}.page-head{padding:36px 0 6px}.page-head h1{margin:0 0 10px;font-size:clamp(26px,4.5vw,34px);line-height:1.2}.page-head .lede{color:var(--muted);max-width:780px;margin:0 0 8px}.live-strip{background:var(--card);border:1px solid var(--card-border);color:var(--muted);border-radius:999px;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:20px 0 26px;padding:8px 18px;font-size:13.5px;display:flex}.live-strip a{color:var(--muted);text-decoration:underline;text-decoration-color:var(--card-border)}.live-strip a:hover{color:var(--text)}.live-label{color:var(--green);letter-spacing:.08em;align-items:center;gap:6px;font-size:12px;font-weight:800;display:inline-flex}.dot{background:var(--green);border-radius:50%;width:8px;height:8px;display:inline-block;box-shadow:0 0 0 3px #34d39933}.live-amber{color:var(--accent)}.live-sep{color:var(--card-border)}.cta-row{flex-wrap:wrap;gap:10px;margin:6px 0 10px;display:flex}.btn{background:linear-gradient(135deg, var(--accent), #d97706);color:#131a26;border-radius:10px;padding:11px 20px;font-weight:800;display:inline-block;box-shadow:0 4px 16px #f5a52440}.btn:hover{filter:brightness(1.06);text-decoration:none}.btn.ghost{color:var(--text);border:1px solid var(--card-border);box-shadow:none;background:0 0}.btn.ghost:hover{border-color:var(--accent);color:var(--accent)}.card-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:18px 0;display:grid}.card{background:var(--card);border:1px solid var(--card-border);border-radius:12px;padding:16px 18px}.card h3{margin:0 0 6px;font-size:17px}.card p{color:var(--muted);margin:0;font-size:14.5px}.card .card-role{color:var(--text);margin-bottom:4px;font-weight:600}.card .icon{margin-bottom:6px;font-size:22px;display:inline-block}a.card{color:inherit;display:block}a.card:hover{border-color:var(--accent);text-decoration:none}.step-num{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;margin-bottom:6px;font-weight:800;display:inline-flex}.hub-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:12px 0;display:grid}.hub-card{background:var(--card);border:1px solid var(--card-border);color:inherit;border-radius:12px;gap:2px;padding:12px 14px;display:grid}.hub-card:hover{border-color:var(--accent);text-decoration:none}.hub-icon{font-size:20px;font-style:normal}.hub-title{font-weight:700}.hub-sub{color:var(--muted);font-size:12.5px}.stat-row{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin:18px 0;display:grid}.stat{background:var(--card);border:1px solid var(--card-border);text-align:center;color:inherit;border-radius:12px;padding:12px 14px;display:block}a.stat:hover{border-color:var(--accent);text-decoration:none}.stat .num{color:var(--accent);font-variant-numeric:tabular-nums;font-size:20px;font-weight:800}.stat .lbl{color:var(--muted);font-size:12.5px}.table-wrap{border:1px solid var(--card-border);background:var(--card);border-radius:12px;margin:16px 0;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:520px;font-size:14.5px}th,td{text-align:left;border-bottom:1px solid var(--card-border);vertical-align:top;padding:9px 13px}th{background:var(--bg-soft);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-size:12px;font-weight:700}tr:last-child td{border-bottom:none}tbody tr:nth-child(2n){background:#94a3b80d}tbody tr:hover{background:var(--accent-soft)}tbody td:first-child{color:var(--text)}td .sub{color:var(--muted);font-size:13px}table.steps-table th:first-child,table.steps-table td:first-child{white-space:nowrap;width:165px}.step-badge{background:var(--accent-soft);width:22px;height:22px;color:var(--accent);vertical-align:-4px;border:1px solid #f5a5244d;border-radius:50%;justify-content:center;align-items:center;margin-right:12px;font-size:12.5px;font-weight:800;display:inline-flex}code{background:var(--bg-soft);border:1px solid var(--card-border);border-radius:6px;padding:1px 6px;font-size:13.5px}pre,.mono{font-family:var(--mono)}pre{background:var(--bg-soft);border:1px solid var(--card-border);border-radius:10px;padding:12px 14px;font-size:13.5px;overflow-x:auto}.code-chip{font-family:var(--mono);color:var(--accent);background:var(--accent-soft);border:1px solid #f5a52459;border-radius:8px;padding:3px 10px;font-size:14px;font-weight:700}.copy-btn{background:var(--bg-soft);color:var(--muted);border:1px solid var(--card-border);cursor:pointer;border-radius:8px;min-height:44px;padding:4px 14px;font-size:13px}.copy-btn:hover{color:var(--text);border-color:var(--accent)}.copy-btn.copied{color:var(--green);border-color:var(--green)}.code-tag{color:var(--green);letter-spacing:.06em;vertical-align:1px;background:#34d39926;border:1px solid #34d39966;border-radius:6px;margin-left:8px;padding:1px 7px;font-size:11px;font-weight:800;display:inline-block}.status-working{color:var(--green);white-space:nowrap;font-weight:700}.status-expired{color:var(--muted);white-space:nowrap;font-weight:700}.badge{border:1px solid var(--card-border);color:var(--muted);white-space:nowrap;border-radius:999px;padding:2px 9px;font-size:12px;font-weight:700;display:inline-block}.badge.s{color:#fca5a5;background:#7f1d1d40;border-color:#7f1d1d}.badge.a{color:#fcd34d;background:#78350f40;border-color:#78350f}.badge.b{color:var(--blue);background:#1e3a8a40;border-color:#1e3a8a}.badge.c{color:var(--muted)}.badge.ok{color:var(--green);background:#065f4640;border-color:#065f46}.badge.warn{color:var(--accent);background:var(--accent-soft);border-color:#78350f}.updated-line{color:var(--muted);margin:0 0 12px;font-size:13px}.updated-badge{background:var(--bg-soft);border:1px solid var(--card-border);color:var(--muted);border-radius:999px;flex-wrap:wrap;align-self:flex-start;align-items:center;gap:8px;margin:0 0 14px;padding:4px 13px;font-size:12.5px;display:inline-flex}.updated-badge .dot{width:auto;height:auto;box-shadow:none;color:var(--green);background:0 0;font-weight:800}.updated-badge .dot:before{content:"✓"}.tier-row{border-bottom:1px dashed var(--card-border);align-items:flex-start;gap:14px;padding:12px 0;display:flex}.tier-row:last-child{border-bottom:none}.tier-row .tier{border-radius:10px;flex:0 0 38px;justify-content:center;align-items:center;height:38px;font-size:18px;font-weight:800;display:inline-flex}.tier-s{color:#fca5a5;background:#7f1d1d59;border:1px solid #7f1d1d}.tier-a{color:#fcd34d;background:#78350f59;border:1px solid #78350f}.tier-b{color:var(--blue);background:#1e3a8a59;border:1px solid #1e3a8a}.tier-c{background:var(--bg-soft);color:var(--muted);border:1px solid var(--card-border)}.tier-row p{color:var(--muted);margin:2px 0 0;font-size:14.5px}.timeline{margin:14px 0;padding:0;list-style:none}.timeline li{border-left:2px solid var(--card-border);margin-left:8px;padding:0 0 18px 26px;position:relative}.timeline li:last-child{border-left-color:#0000}.timeline li:before{content:"";background:var(--accent);width:12px;height:12px;box-shadow:0 0 0 3px var(--accent-soft);border-radius:50%;position:absolute;top:4px;left:-7px}.timeline .date{color:var(--accent);margin-right:10px;font-size:13.5px;font-weight:700}.timeline h3{margin:4px 0;font-size:16.5px}.timeline p{color:var(--muted);margin:0;font-size:14.5px}.u-src{color:#6b7690;margin-top:4px!important;font-size:12.5px!important}.notice{border:1px solid #f5a52447;border-left:3px solid var(--accent);color:var(--text-soft);background:#f5a52417;border-radius:10px;margin:16px 0;padding:13px 16px;font-size:15px}.notice:before{content:"💡";margin-right:9px}.notice strong,.notice b{color:var(--text);font-weight:700}.notice p{margin:8px 0 0}.notice.ok{border-color:#34d3994d;border-left-color:var(--green);background:#34d39917}.notice.ok:before{content:"✅"}.notice.info{border-color:#60a5fa4d;border-left-color:var(--blue);background:#60a5fa17}.notice.info:before{content:"ℹ️"}.notice.warn{border-color:#f8717152;border-left-color:var(--red);background:#f8717117}.notice.warn:before{content:"⚠️"}ul.clean{padding-left:20px}ul.clean li{margin:6px 0}ol.steps,section ol{padding-left:22px}ol.steps li,section ol li{margin:8px 0}.checklist{padding-left:20px}.checklist li{margin:5px 0}.calc-grid{grid-template-columns:minmax(280px,420px) 1fr;gap:18px;margin:18px 0;display:grid}@media (width<=820px){.calc-grid{grid-template-columns:1fr}}.calc-panel{background:var(--card);border:1px solid var(--card-border);border-radius:12px;padding:18px}.field{margin-bottom:14px}.field label{margin-bottom:4px;font-size:13.5px;font-weight:600;display:block}.field .hint{color:var(--muted);font-size:12.5px;font-weight:400}.field input[type=number],.field select{background:var(--bg);width:100%;min-height:44px;color:var(--text);border:1px solid var(--card-border);border-radius:8px;padding:9px 11px;font-family:inherit;font-size:15px}.field input:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:1px}.calc-output .big{color:var(--accent);font-size:30px;font-weight:800;line-height:1.2}.calc-output .row{border-bottom:1px dashed var(--card-border);justify-content:space-between;gap:12px;padding:7px 0;font-size:14.5px;display:flex}.calc-output .row:last-child{border-bottom:none}.calc-output .row .k{color:var(--muted)}.calc-output .row .v{font-variant-numeric:tabular-nums;text-align:right}.advice{margin-top:12px;font-size:14.5px}.advice li{margin:5px 0}.progress-track{background:var(--bg);border:1px solid var(--card-border);border-radius:999px;height:12px;margin:8px 0 4px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, #d97706, var(--accent));width:0%;height:100%;transition:width .25s}.pager{flex-wrap:wrap;justify-content:space-between;gap:12px;margin:22px 0 8px;display:flex}.pager a{background:var(--card);border:1px solid var(--card-border);color:var(--text);border-radius:10px;padding:10px 16px;font-size:14.5px}.pager a:hover{border-color:var(--accent);text-decoration:none}.pager .next{text-align:right;margin-left:auto}.pager .lbl{color:var(--muted);font-size:12px;display:block}.site-footer{border-top:1px solid var(--card-border);color:var(--muted);margin-top:48px;padding:30px 0 34px;font-size:14px}.footer-cols{grid-template-columns:1.4fr 1fr 1fr;gap:24px;display:grid}@media (width<=720px){.footer-cols{grid-template-columns:1fr}}.footer-cols h4{color:var(--text);margin:0 0 10px;font-size:15px}.footer-cols ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.footer-cols a{color:var(--muted)}.footer-cols a:hover{color:var(--text)}.footer-note{margin:0 0 10px;font-size:13px}.copyright{color:#6b7690;margin-top:22px;font-size:12.5px}.breadcrumbs{color:var(--muted);padding:16px 0 0;font-size:13px}.breadcrumbs a{color:var(--muted)}.breadcrumbs .sep{color:#4b5670;margin:0 6px}.source-note{background:var(--bg-soft);border:1px solid var(--card-border);border-left:3px solid var(--accent);border-radius:10px;margin:18px 0;padding:14px 16px;font-size:14.5px}.source-note h3{margin:0 0 8px;font-size:15px}.source-note .clean li{margin-bottom:6px}.on-this-page{background:var(--card);border:1px solid var(--card-border);border-radius:12px;margin:16px 0;padding:14px 16px}.on-this-page h3{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:12px;font-weight:800}.on-this-page ul{margin:0;padding:0;list-style:none}.on-this-page .clean{columns:2;column-gap:20px}.on-this-page li{break-inside:avoid;margin:0}.on-this-page a{color:var(--muted);text-wrap:pretty;border-left:2px solid #0000;border-radius:0 6px 6px 0;padding:5px 10px;font-size:14px;line-height:1.45;display:block}.on-this-page a:hover{color:var(--text);background:var(--bg-soft);text-decoration:none}.on-this-page a[aria-current=location]{color:var(--accent);background:var(--accent-soft);border-left-color:var(--accent);font-weight:600}@media (width>=1080px){main.container:has(>.on-this-page),article:has(>.on-this-page){grid-template-columns:200px minmax(0,1fr);align-items:start;column-gap:24px;display:grid}main.container:has(>.on-this-page)>:not(.on-this-page),article:has(>.on-this-page)>:not(.on-this-page){grid-column:2;min-width:0}main.container:has(>.on-this-page)>.on-this-page,article:has(>.on-this-page)>.on-this-page{border:0;border-right:1px solid var(--card-border);background:0 0;border-radius:0;grid-area:1/1/span 200;align-self:stretch;margin:30px 0 0;padding:0 18px 0 0}main.container:has(>.on-this-page)>.on-this-page .clean,article:has(>.on-this-page)>.on-this-page .clean{columns:1}.on-this-page .toc-inner{position:sticky;top:120px}}.faq-list{flex-direction:column;gap:8px;display:flex}.faq-item{background:var(--card);border:1px solid var(--card-border);border-radius:10px;padding:10px 14px}.faq-item summary{cursor:pointer;font-weight:600}.faq-item p{color:var(--muted);margin:8px 0 2px}.rank-chip{text-align:center;min-width:34px;font-size:13px;font-weight:700;font-family:var(--mono);border-radius:6px;padding:1px 7px;display:inline-block}.rank-d,.rank-c{background:var(--bg-soft);color:var(--muted);border:1px solid var(--card-border)}.rank-b{color:var(--blue);background:#1e3a8a59;border:1px solid #1e3a8a}.rank-a{color:#fcd34d;background:#78350f59;border:1px solid #78350f}.rank-s,.rank-ss{color:#fca5a5;background:#7f1d1d59;border:1px solid #7f1d1d}.conf-official{color:var(--green)}.conf-cross{color:var(--blue)}.conf-community{color:var(--accent)}.conf-pending{color:var(--muted)}[class^=conf-]{white-space:nowrap}.tool-grid{grid-template-columns:1.05fr .95fr;align-items:start;gap:18px;display:grid}@media (width<=860px){.tool-grid{grid-template-columns:1fr}}.tool-panel{background:var(--card);border:1px solid var(--card-border);border-radius:12px;padding:16px 18px}.tool-output .big{color:var(--accent);margin:6px 0 10px;font-size:40px;font-weight:800;line-height:1.15}.tool-output .row{border-bottom:1px dashed var(--card-border);justify-content:space-between;gap:12px;padding:6px 0;font-size:15px;display:flex}.tool-output .row:last-of-type{border-bottom:none}.tool-output .k{color:var(--muted)}.tool-output .v{font-weight:600;font-family:var(--mono)}.check-line{align-items:flex-start;gap:8px;padding:5px 0;font-size:14.5px;display:flex}.check-line input{margin-top:4px}@media (width<=620px){.on-this-page .clean{columns:1}.tool-output .big{font-size:32px}}h2[id],h3[id],section[id],.section[id]{scroll-margin-top:108px}@media (width<=880px){h2[id],h3[id],section[id],.section[id]{scroll-margin-top:124px}}
