:root{--bg: #0b1020;--bg-2: #121a30;--panel: #16203a;--panel-2: #1c2845;--line: #2a3756;--ink: #e8eef7;--ink-dim: #9fb0cc;--ink-mute: #6b7c9c;--gold: #d9a441;--gold-dim: #8a6d2f;--good: #4ec98a;--warn: #e6b755;--bad: #e3675f;--accent: #5b8bd0;--radius: 10px;--mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--sans: -apple-system, "Segoe UI", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:radial-gradient(1200px 700px at 70% -10%,#16213e 0%,var(--bg) 55%) fixed;color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}#app{max-width:1180px;margin:0 auto;padding:22px 18px 60px}h1,h2,h3{margin:0;font-weight:650}small{color:var(--ink-mute);font-weight:400}b{font-weight:700}.muted{color:var(--ink-mute)}.v,.ph-year,.ph-score b,.final-score b,.alloc-pct,#taxval,#spendval{font-variant-numeric:tabular-nums;font-family:var(--mono)}.btn{font-family:var(--sans);font-size:14px;color:var(--ink);background:var(--panel-2);border:1px solid var(--line);border-radius:8px;padding:9px 14px;cursor:pointer;transition:background .12s,border-color .12s,transform .05s}.btn:hover{background:#25345c;border-color:#3a4b73}.btn:active{transform:translateY(1px)}.btn.primary{background:linear-gradient(180deg,#e6b65a,var(--gold));color:#2a1d05;border-color:var(--gold-dim);font-weight:700}.btn.primary:hover{filter:brightness(1.06);background:linear-gradient(180deg,#efc163,#e0a838)}.btn.ghost{background:transparent}.btn.xs{padding:4px 9px;font-size:12px}.btn[disabled]{opacity:.38;cursor:not-allowed}.title-block{text-align:center;margin:18px 0 26px}.title-block h1{font-size:42px;letter-spacing:1px}.title-block h1 .zh{color:var(--gold)}.tagline{color:var(--ink-dim);max-width:620px;margin:12px auto 0}.section-h{color:var(--ink-dim);font-size:15px;font-weight:600;margin:26px 0 12px;text-align:center}.continue{display:block;margin:0 auto}.scenario-row{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:6px}.scenario{background:var(--panel);border:1px solid var(--line);color:var(--ink-dim);border-radius:8px;padding:6px 14px;cursor:pointer;font-size:13px;font-family:var(--sans)}.scenario:hover{border-color:var(--accent);color:var(--ink)}.scenario.on{border-color:var(--gold);color:var(--gold);background:#2a2412}.country-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.country-card{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px;cursor:pointer;color:var(--ink);transition:border-color .12s,transform .08s,background .12s}.country-card:hover{border-color:var(--gold);transform:translateY(-2px);background:var(--panel-2)}.cc-top{display:flex;align-items:center;gap:12px}.flag{font-size:30px;line-height:1}.cc-name{display:flex;flex-direction:column;font-weight:700;font-size:17px}.cc-name small{font-size:12px}.cc-blurb{color:var(--ink-dim);font-size:13px;margin:10px 0;min-height:36px}.cc-stats{display:flex;flex-wrap:wrap;gap:6px}.cc-stats span{background:var(--bg-2);border:1px solid var(--line);border-radius:6px;padding:2px 8px;font-size:12px;color:var(--ink-dim);font-family:var(--mono)}.play-head{display:flex;align-items:center;gap:18px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:12px 18px;margin-bottom:16px}.ph-id{display:flex;align-items:center;gap:10px}.ph-name{display:flex;flex-direction:column;line-height:1.2}.ph-year{font-size:22px;font-weight:700;margin-left:auto}.ph-year small,.ph-score small{font-size:11px;margin-left:3px}.ph-score{display:flex;flex-direction:column;align-items:flex-end;line-height:1.1}.ph-score b{font-size:24px;color:var(--gold)}.cols{display:grid;grid-template-columns:1.35fr 1fr;gap:16px;align-items:start}.group,.briefings,.decisions,.report,.savebar{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;margin-bottom:16px}.group h3,.briefings h3,.decisions h3,.report h3,.savebar h3{font-size:12px;text-transform:uppercase;letter-spacing:1.2px;color:var(--gold);margin-bottom:10px}.vitals{display:grid;grid-template-columns:1fr 1fr;gap:16px}.vitals .group{margin-bottom:0}.stat{display:flex;justify-content:space-between;align-items:baseline;padding:4px 0;border-bottom:1px dashed #223052}.stat:last-child{border-bottom:0}.stat .k{color:var(--ink-dim);font-size:13px}.stat .v{font-size:15px;font-weight:600}.v.good{color:var(--good)}.v.warn{color:var(--warn)}.v.bad{color:var(--bad)}.briefings ul{list-style:none;margin:0;padding:0}.brief{padding:8px 10px;border-radius:7px;margin-bottom:7px;font-size:13.5px;border-left:3px solid var(--line);background:var(--bg-2)}.brief:last-child{margin-bottom:0}.brief .who{display:inline-block;font-weight:700;color:var(--ink);margin-right:8px}.brief.good{border-left-color:var(--good)}.brief.warn{border-left-color:var(--warn)}.brief.bad{border-left-color:var(--bad)}.brief.good .who{color:var(--good)}.brief.warn .who{color:var(--warn)}.brief.bad .who{color:var(--bad)}.lever{margin-bottom:14px}.lever label,.alloc>label,.policies>label{display:block;font-size:13px;color:var(--ink);margin-bottom:4px;font-weight:600}.lever label span{color:var(--gold);font-weight:700}.lever small{display:block;color:var(--ink-mute);font-size:11.5px;margin-top:2px}input[type=range]{width:100%;accent-color:var(--gold);cursor:pointer}.alloc{margin:6px 0 14px}.alloc-row{display:grid;grid-template-columns:52px 1fr 42px;align-items:center;gap:8px;margin-bottom:4px}.alloc-row label{font-size:13px;color:var(--ink-dim);margin:0}.alloc-pct{text-align:right;color:var(--gold);font-weight:600;font-size:13px}.policies{margin-bottom:14px}.policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.policy{text-align:left;display:flex;flex-direction:column;background:var(--bg-2);border:1px solid var(--line);color:var(--ink);border-radius:8px;padding:8px 10px;cursor:pointer;font-size:13px;font-weight:600}.policy small{font-size:11px;margin-top:3px;font-weight:400}.policy:hover:not([disabled]){border-color:var(--accent)}.policy.on{border-color:var(--gold);background:#2a2412}.policy.used{opacity:.5;border-style:dashed}.policy[disabled]{opacity:.4;cursor:not-allowed}.actions-panel{margin-bottom:14px}.actions-panel>label{display:block;font-size:13px;color:var(--ink);margin-bottom:4px;font-weight:600}.actions-panel .pc{color:var(--gold);font-size:14px}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.action{position:relative;text-align:left;display:flex;flex-direction:column;background:var(--bg-2);border:1px solid var(--line);border-left-width:3px;color:var(--ink);border-radius:8px;padding:8px 26px 8px 10px;cursor:pointer;font-size:13px;font-weight:600}.action small{font-size:11px;margin-top:3px;font-weight:400;color:var(--ink-dim)}.action:hover:not([disabled]){border-color:var(--accent)}.action.on{border-color:var(--gold);background:#2a2412}.action[disabled]{opacity:.4;cursor:not-allowed}.action .acost{position:absolute;top:8px;right:9px;font-size:11px;color:var(--gold);font-weight:700}.action.diplo{border-left-color:var(--good)}.action.military{border-left-color:var(--bad)}.action.domestic{border-left-color:var(--accent)}.advance{width:100%;margin-top:4px;font-size:16px}.chronicle{margin-top:14px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px}.chronicle h3{margin-bottom:8px}.chronicle ul{list-style:none;margin:0;padding:0}.chron{display:flex;gap:10px;padding:5px 0;border-bottom:1px dashed #223052;font-size:13px}.chron:last-child{border-bottom:none}.cyr{color:var(--gold);font-family:var(--mono);font-weight:700;flex-shrink:0}.ctxt{color:var(--ink-dim)}.figures{margin-top:14px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px}.figures h3{margin-bottom:8px}.figures ul{list-style:none;margin:0;padding:0}.fig{display:flex;justify-content:space-between;align-items:baseline;padding:6px 0;border-bottom:1px dashed #223052;gap:10px}.fig:last-child{border-bottom:none}.fig-id b{font-size:13.5px;color:var(--ink)}.fig-id small{display:block;font-size:11px;color:var(--ink-mute);margin-top:1px}.fig-loy{font-family:var(--mono);font-size:12px;color:var(--ink-dim);white-space:nowrap}.fig-loy.good{color:var(--good)}.fig-loy.bad{color:var(--bad)}.mandate{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:var(--radius);padding:12px 16px;margin-bottom:14px}.m-top{display:flex;align-items:center;gap:8px}.m-tag{font-size:11px;color:var(--gold);border:1px solid var(--gold);border-radius:4px;padding:1px 6px}.m-title{font-size:15px;color:var(--ink)}.m-pct{margin-left:auto;font-family:var(--mono);font-weight:700;color:var(--gold)}.m-desc{font-size:12.5px;color:var(--ink-dim);margin:6px 0 8px}.m-bar{height:6px;background:var(--bg-2);border-radius:3px;overflow:hidden}.m-fill{height:100%;background:var(--gold);border-radius:3px;transition:width .3s}.m-detail{font-size:11px;color:var(--ink-mute);margin-top:6px;font-family:var(--mono)}.m-hint{font-size:11.5px;color:var(--accent);margin-top:7px;line-height:1.45}.m-hint summary{cursor:pointer;color:var(--ink-mute);list-style:none;font-size:11px}.m-hint summary::-webkit-details-marker{display:none}.m-hint summary:hover{color:var(--accent)}.m-hint[open] summary{margin-bottom:4px}.attribution{background:#1c2845;border-left:3px solid var(--accent);border-radius:8px;padding:9px 12px;margin-bottom:14px;font-size:13px;color:var(--ink)}.preview{background:var(--bg-2);border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin-bottom:10px}.pv-head{font-size:12px;color:var(--ink-mute);font-weight:600;margin-bottom:6px}.pv-row{display:flex;justify-content:space-between;align-items:baseline;padding:2.5px 0;font-size:12.5px}.pv-k{color:var(--ink-dim)}.pv-v{font-family:var(--mono);color:var(--ink-mute)}.pv-d{font-weight:700}.pv-d.good{color:var(--good)}.pv-d.bad{color:var(--bad)}.focus-panel{margin-bottom:14px}.focus-panel>label{display:block;font-size:13px;color:var(--ink);margin-bottom:4px;font-weight:600}.focus-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.focus{text-align:left;display:flex;flex-direction:column;background:var(--bg-2);border:1px solid var(--line);color:var(--ink);border-radius:8px;padding:7px 9px;cursor:pointer;font-size:12.5px;font-weight:600}.focus small{font-size:10.5px;margin-top:2px;font-weight:400;color:var(--ink-dim);line-height:1.3}.focus:hover{border-color:var(--accent)}.focus.on{border-color:var(--gold);background:#2a2412;color:var(--gold)}.crisis{background:#3a1a1a;border:1px solid var(--bad);border-radius:var(--radius);padding:11px 16px;margin-bottom:16px}.cr-top{display:flex;align-items:center;justify-content:space-between}.cr-tag{font-size:14px;font-weight:700;color:var(--bad)}.cr-timer{font-size:12px;font-family:var(--mono);color:var(--warn);font-weight:700}.cr-warn{font-size:12.5px;color:var(--ink-dim);margin-top:5px}.report ul{list-style:none;margin:0;padding:0}.log{padding:6px 0;border-bottom:1px dashed #223052;font-size:13.5px}.log:last-child{border-bottom:0}.log.fail{color:var(--bad);font-weight:700}.log.event{color:var(--accent)}.log.politics{color:var(--warn)}.slot{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px dashed #223052}.slot:last-child{border-bottom:0}.slot-label{flex:1;font-size:12.5px;color:var(--ink-dim);font-family:var(--mono)}.slot-actions{display:flex;gap:5px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#040812b8;display:flex;align-items:center;justify-content:center;padding:20px;z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{background:var(--panel);border:1px solid var(--gold-dim);border-radius:14px;padding:24px;max-width:480px;width:100%;box-shadow:0 24px 60px #00000080}.modal h2{font-size:22px;margin-bottom:8px}.modal p{color:var(--ink-dim);margin:0 0 18px}.opts{display:flex;flex-direction:column;gap:10px}.opts .opt{text-align:left;padding:12px 14px}.opts .opt:hover{border-color:var(--gold)}.end{max-width:560px;margin:40px auto;text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:36px 28px}.end h1{font-size:34px;margin-bottom:10px}.epitaph{color:var(--ink-dim);margin:0 auto 22px;max-width:440px}.final-score{font-size:16px;color:var(--ink-dim);margin-bottom:20px}.final-score b{font-size:52px;color:var(--gold);display:block;line-height:1.1}.end-recap{text-align:left;max-width:320px;margin:0 auto 24px}.end-cast{text-align:left;max-width:360px;margin:0 auto 22px}.end-cast h3{margin-bottom:8px;text-align:center}.ec-row{font-size:13px;padding:3px 0}.ec-row.good{color:var(--good)}.ec-row.bad{color:var(--bad)}.ec-row.muted{color:var(--ink-mute)}.viewtabs{display:flex;gap:8px;margin-bottom:14px}.tab{background:var(--panel);border:1px solid var(--line);color:var(--ink-dim);border-radius:8px;padding:7px 18px;cursor:pointer;font-size:14px;font-family:var(--sans)}.tab:hover{border-color:var(--accent);color:var(--ink)}.tab.on{border-color:var(--gold);color:var(--gold);background:#2a2412}.worldnews ul{list-style:none;margin:0;padding:0}.news{padding:7px 10px;border-radius:7px;margin-bottom:6px;font-size:13.5px;background:var(--bg-2);border-left:3px solid var(--line)}.news:last-child{margin-bottom:0}.news.war{border-left-color:var(--bad)}.news.econ{border-left-color:var(--warn)}.news.politics{border-left-color:var(--accent)}.news.diplo{border-left-color:var(--good)}table.nations{width:100%;border-collapse:collapse;font-size:13px}table.nations th{text-align:left;color:var(--ink-mute);font-weight:600;padding:5px 6px;border-bottom:1px solid var(--line);font-size:12px}table.nations td{padding:5px 6px;border-bottom:1px dashed #223052}table.nations td.v{font-family:var(--mono);font-variant-numeric:tabular-nums}table.nations tr.me{background:#1c2845}table.nations tr.me td{color:var(--ink);font-weight:600}@media (max-width: 820px){.cols,.vitals{grid-template-columns:1fr}.ph-score,.ph-year{font-size:18px}}
