:root{--ground:#0a0e14;--panel:#121722;--panel-2:#1a2130;--line:#263041;--ink:#e8ecf3;--ink-dim:#8a94a6;--ink-faint:#5c6675;--brass:#f5a623;--victory:#2fbf71;--victory-ink:#06110a;--alert:#e5484d;--sky:#4c9aff;--radius:12px;--radius-sm:8px;--mono:ui-monospace, "JetBrains Mono", "SF Mono", Menlo, Consolas, monospace;--sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body{background:var(--ground);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;padding:0}a{color:var(--sky);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}.mono{font-family:var(--mono)}.eyebrow{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);font-size:11px}.tag{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);color:var(--ink-dim);border-radius:999px;padding:3px 8px;font-size:11px}.brass{color:var(--brass)}.btn{border:1px solid var(--line);background:var(--panel-2);color:var(--ink);border-radius:var(--radius-sm);font-family:var(--mono);letter-spacing:.04em;padding:10px 14px;font-size:13px;transition:border-color .15s,background .15s}.btn:hover{border-color:var(--brass)}.btn.active{border-color:var(--brass);color:var(--brass)}.btn-primary{background:var(--victory);color:var(--victory-ink);letter-spacing:.06em;text-transform:uppercase;border:none;font-weight:700}.btn-primary:hover{filter:brightness(1.05)}.btn-primary:disabled{opacity:.45;cursor:not-allowed}:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.country-path:focus,.country-path:focus-visible{outline:none}.powers-banner{border-bottom:1px solid var(--line);background:var(--panel);align-items:stretch;gap:14px;min-height:56px;padding:0 16px;display:flex}.powers-banner-label{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--brass);white-space:nowrap;flex:none;align-self:center;font-size:10px;font-weight:700}.powers-banner-empty{color:var(--ink-dim);align-self:center;margin:0;font-size:13px}.powers-banner-list{scrollbar-width:thin;scrollbar-color:var(--line) transparent;align-items:stretch;gap:8px;margin:0;padding:8px 0;list-style:none;display:flex;overflow-x:auto}.powers-banner-item{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius-sm);flex:none;align-items:center;gap:8px;min-width:0;padding:6px 10px 6px 8px;display:flex}.powers-banner-rank{width:20px;font-family:var(--mono);color:var(--ink-faint);flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.powers-banner-item:first-child .powers-banner-rank{color:var(--brass)}.powers-banner-logo{object-fit:cover;background:var(--panel);border-radius:6px;flex-shrink:0;width:28px;height:28px}.powers-banner-logo-empty{border:1px solid var(--line);display:block}.powers-banner-meta{flex-direction:column;gap:1px;min-width:0;display:flex}.powers-banner-name{white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-size:13px;font-weight:600;line-height:1.2;overflow:hidden}.powers-banner-stats{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-dim);white-space:nowrap;font-size:10px}.hide-info-btn{z-index:6;border:1px solid var(--sky);background:var(--panel);color:var(--ink);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;display:inline-flex;position:absolute;bottom:16px;left:16px;box-shadow:0 8px 24px #00000059}.hide-info-btn:hover{border-color:var(--brass)}.hide-info-mark{color:var(--ink-dim);font-size:14px;line-height:1}.country-stage{z-index:50;pointer-events:none;justify-content:space-between;align-items:stretch;gap:24px;padding:72px 16px 24px;display:flex;position:fixed;inset:0}.country-stage.embedded{z-index:auto;pointer-events:auto;justify-content:center;max-width:1080px;padding:0;position:relative;inset:auto}.country-modal{pointer-events:auto;background:var(--panel);border:1px solid var(--line);border-radius:16px;flex-direction:column;flex:0 380px;width:min(400px,34vw);min-width:0;max-width:400px;display:flex;overflow:hidden;box-shadow:0 20px 60px #00000080}.country-stage.embedded .country-modal{flex:420px;width:auto;max-width:520px}.country-modal-body{flex:1;min-height:0;padding:18px 18px 28px;overflow-y:auto}@media (max-width:800px){.country-stage{flex-direction:column;justify-content:flex-start;align-items:stretch;padding:64px 12px 20px;overflow-y:auto}.country-modal{flex:none;width:auto;max-width:none;max-height:none}.country-modal-body{overflow-y:visible}}.rules-trigger{width:34px;height:34px;color:var(--ink);background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius-sm);justify-content:center;align-items:center;padding:0;transition:border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.rules-trigger:hover,.rules-trigger.is-open{border-color:var(--brass);color:var(--brass)}.rules-trigger.is-open{box-shadow:0 6px 16px #f5a6232e}.rules-dialog{width:min(520px,100vw - 32px);max-width:520px;max-height:min(80vh,720px);color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:16px;margin:auto;padding:0;overflow:auto;box-shadow:0 22px 48px #0000008c}.rules-dialog::backdrop{background:#080b10b8}.rules-dialog[open]{animation:.22s cubic-bezier(.16,1,.3,1) rules-in}.rules-dialog-inner{padding:22px 22px 20px}.rules-dialog-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.rules-dialog h2{letter-spacing:-.02em;text-transform:uppercase;margin:0;font-size:22px;font-weight:800}.rules-dialog-close{flex:none;width:32px;height:32px;padding:0;font-size:14px}.rules-dialog-section+.rules-dialog-section{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.rules-dialog h3{letter-spacing:.14em;text-transform:uppercase;color:var(--ink);margin:0 0 10px;font-size:12px;font-weight:700}.rules-dialog p{max-width:68ch;color:var(--ink-dim);margin:0 0 14px;font-size:15px;line-height:1.55}.rules-dialog p:last-child{margin-bottom:0}.rules-dialog p strong{color:var(--ink);font-weight:700}.rules-dialog p.rules-dialog-foot{border-top:1px solid var(--line);font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin:18px 0 0;padding-top:14px;font-size:10px;line-height:1.6}@keyframes rules-in{0%{opacity:0;filter:blur(5px);transform:translateY(10px)scale(.985)}to{opacity:1;filter:none;transform:none}}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}
