:root{--bg: #0a0a0a;--card: #1a1a2e;--card-elevated: #232845;--border: #2b3139;--text: #eaecef;--muted: #848e9c;--accent: #f0b90b;--accent-dim: rgba(240, 185, 11, .18);--success: #0ecb81;--danger: #f6465d}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overscroll-behavior:none}button{font-family:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}.app{max-width:480px;margin:0 auto;padding:16px 16px 64px}header{display:flex;justify-content:space-between;align-items:center;padding:8px 0 16px;margin-bottom:4px;border-bottom:1px solid rgba(240,185,11,.08)}header h1{font-size:26px;margin:0;color:var(--accent);letter-spacing:-.02em;font-weight:800;background:linear-gradient(180deg,#ffd23f,#f0b90b 60%,#c98e07);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.tagline{color:var(--muted);margin:4px 0 0;font-size:13px;display:flex;align-items:center;gap:8px}.kyc-badge{background:var(--accent-dim);color:var(--accent);padding:2px 8px;border-radius:999px;font-size:10px;letter-spacing:.05em}.loading,.hint-card,.error-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:24px;margin-top:24px;text-align:center}.error-card{border-color:var(--danger)}.error-card h2{color:var(--danger)}.muted{color:var(--muted)}code{background:var(--border);padding:2px 6px;border-radius:4px;font-size:.9em}.display-name-gate{margin-top:32px;display:flex;justify-content:center}.display-name-card{background:linear-gradient(180deg,var(--card-elevated) 0%,var(--card) 100%);border:1px solid var(--border);border-radius:16px;padding:24px 22px;width:100%;box-shadow:0 12px 48px #00000080,0 0 0 1px #f0b90b0f}.display-name-card h2{margin:0 0 8px;font-size:18px;color:var(--accent)}.display-name-card .muted{font-size:13px;margin:0 0 18px;line-height:1.5}.display-name-form{display:flex;flex-direction:column;gap:12px}.display-name-input-row{display:flex;align-items:center;background:#0000004d;border:1.5px solid var(--border);border-radius:10px;padding:0 12px;transition:border-color .15s}.display-name-input-row:focus-within{border-color:var(--accent)}.display-name-prefix{color:var(--muted);font-weight:600;font-size:16px;margin-right:4px}.display-name-input-row input{flex:1;background:none;border:none;outline:none;color:var(--text);font-size:16px;font-weight:600;padding:14px 0;font-family:inherit}.display-name-rules{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;color:var(--muted)}.display-name-rules span{display:inline-flex;align-items:center;gap:4px}.display-name-rules span:before{content:"○";font-size:10px;color:var(--muted)}.display-name-rules span.ok{color:var(--success)}.display-name-rules span.ok:before{content:"✓";color:var(--success)}.display-name-error{background:#f6465d1f;border:1px solid var(--danger);color:var(--danger);border-radius:8px;padding:10px 12px;font-size:13px}.display-name-submit{background:var(--accent);color:#000;border:none;border-radius:10px;padding:14px;font-size:15px;font-weight:700;margin-top:4px;transition:background .15s,opacity .15s}.display-name-submit:hover:not(:disabled){background:#ffd23f}.display-name-warning{font-size:11px;margin:14px 0 0;text-align:center}.balance-ticker{background:linear-gradient(180deg,var(--card-elevated) 0%,var(--card) 100%);border:1px solid var(--border);border-radius:16px;padding:18px;margin-bottom:16px}.balance-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}.balance-label{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.balance-value-wrap{position:relative;display:inline-block}.balance-value{font-size:28px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;display:inline-block}.balance-floater{position:absolute;right:0;top:0;pointer-events:none;font-size:14px;font-weight:700;color:var(--success);font-variant-numeric:tabular-nums;text-shadow:0 1px 4px rgba(0,0,0,.6),0 0 12px rgba(14,203,129,.5);white-space:nowrap}.balance-unit{font-size:13px;font-weight:400;color:var(--muted)}.ticker-row{display:flex;justify-content:space-between;align-items:center;font-size:13px}.claim-btn{background:var(--border);color:var(--muted);border:none;border-radius:8px;padding:8px 16px;font-weight:600;font-size:13px;font-variant-numeric:tabular-nums}.claim-btn.active{background:var(--accent);color:#000}.tycoon-scene section{margin:28px 0}.tycoon-scene h2{font-size:13px;margin:0 0 14px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-weight:600;display:flex;align-items:center;gap:10px}.tycoon-scene h2:before{content:"";display:inline-block;width:3px;height:14px;border-radius:2px;background:var(--accent);box-shadow:0 0 8px #f0b90b80}.error-banner{background:#f6465d1f;border:1px solid var(--danger);color:var(--danger);border-radius:8px;padding:10px 14px;font-size:13px}.branches-grid{display:grid;gap:10px}.branch-card{background:linear-gradient(180deg,rgba(255,255,255,.02) 0%,transparent 100%),var(--card);border:1px solid var(--border);border-radius:14px;padding:16px;transition:border-color .2s,transform .15s,box-shadow .2s}.branch-card:hover{border-color:#f0b90b4d;transform:translateY(-1px);box-shadow:0 4px 16px #0006,0 0 0 1px #f0b90b1a}.branch-header h3{display:flex;align-items:center;gap:4px}.branch-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.branch-header h3{font-size:16px;margin:0}.branch-meta{font-size:12px;color:var(--muted)}.staff-actions{display:flex;gap:6px;flex-wrap:wrap}.staff-actions button{flex:1 1 auto;background:var(--border);border:none;color:var(--text);padding:8px 10px;border-radius:6px;font-size:12px;font-weight:500}.staff-actions button:hover:not(:disabled){background:var(--accent-dim);color:var(--accent)}.staff-list{list-style:none;padding:0;margin:0;display:grid;gap:6px}.staff-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:10px 14px;font-size:13px}.staff-row .rate{color:var(--accent);font-variant-numeric:tabular-nums}.staff-row button{background:var(--border);border:none;color:var(--text);padding:6px 10px;border-radius:6px;font-size:12px}.empty{background:var(--card);border:1px dashed var(--border);border-radius:8px;padding:16px;color:var(--muted);text-align:center;font-size:13px}.expand-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.expand-btn{background:var(--card);border:1px dashed var(--border);color:var(--accent);padding:14px 12px;border-radius:10px;font-weight:600;font-size:13px}.expand-btn:hover:not(:disabled){background:var(--accent-dim);border-style:solid}.app{padding-bottom:80px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;background:linear-gradient(180deg,rgba(10,10,10,.85) 0%,var(--card) 100%);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border);padding:8px 0 calc(8px + env(safe-area-inset-bottom));z-index:10}.bottom-nav button{flex:1;background:none;border:none;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;color:var(--muted);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;position:relative;transition:color .15s,transform .15s}.bottom-nav button:active{transform:scale(.92)}.bottom-nav button span:first-child{font-size:22px;filter:grayscale(.4) brightness(.85);transition:filter .15s,transform .15s}.bottom-nav button.active{color:var(--accent)}.bottom-nav button.active span:first-child{filter:none;transform:translateY(-1px)}.bottom-nav button.active:after{content:"";position:absolute;top:-1px;left:50%;transform:translate(-50%);width:18px;height:2px;border-radius:0 0 2px 2px;background:var(--accent);box-shadow:0 0 8px #f0b90b99}.quests-panel{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px}.quests-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.quests-header h2{margin:0;font-size:14px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.streak-badge{background:#f6465d26;color:#ff7a8a;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600}.quests-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.quest-row{display:grid;grid-template-columns:1fr auto;gap:12px;padding:12px;border-radius:10px;background:#ffffff05;border:1px solid var(--border)}.quest-row.ready{border-color:var(--accent);background:#f0b90b0f}.quest-row.claimed{opacity:.55}.quest-title{font-weight:600;font-size:14px;margin-bottom:2px}.quest-desc{font-size:12px;color:var(--muted);margin-bottom:8px}.quest-progress{display:flex;align-items:center;gap:8px}.progress-bar{flex:1;height:5px;background:var(--border);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:var(--accent);transition:width .3s ease}.progress-text{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.quest-action{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:4px;min-width:70px}.quest-reward{color:var(--accent);font-weight:700;font-size:14px;font-variant-numeric:tabular-nums}.quest-action button{background:var(--accent);color:#000;border:none;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:600}.claimed-tag,.locked-tag{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.claimed-tag{color:var(--success)}.referrals-panel{display:flex;flex-direction:column;gap:14px}.referrals-panel h2{margin:0;font-size:14px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.referral-stats-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.stat-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:12px 10px;text-align:center}.stat-card.highlight{border-color:var(--accent);background:#f0b90b0f}.stat-value{font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;margin-bottom:2px}.stat-card.highlight .stat-value{color:var(--accent)}.stat-label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.referral-link-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px}.referral-code{font-size:22px;font-weight:700;letter-spacing:.05em;color:var(--accent);text-align:center;font-family:ui-monospace,SF Mono,Menlo,monospace}.referral-link-row{display:flex;gap:6px;align-items:stretch}.referral-link-input{flex:1;min-width:0;background:#ffffff0a;border:1px dashed var(--border);border-radius:8px;padding:10px 12px;font-size:11px;color:var(--text);font-family:ui-monospace,SF Mono,Menlo,monospace;text-overflow:ellipsis;outline:none}.referral-link-input:focus{border-color:var(--accent);border-style:solid}.copy-btn{background:var(--accent);color:#000;border:none;border-radius:8px;padding:10px 14px;font-weight:700;font-size:13px;white-space:nowrap;display:inline-flex;align-items:center;gap:4px;cursor:pointer;transition:background .15s}.copy-btn:hover{background:#ffd23f}.copy-btn.copied{background:var(--green, #0ecb81);color:#000}.share-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px}.share-chip{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:12px 8px;border:1px solid var(--border);border-radius:10px;background:#ffffff08;color:var(--text);font-size:12px;font-weight:500;cursor:pointer;transition:transform .1s,background .15s,border-color .15s}.share-chip:active{transform:scale(.97)}.share-icon{font-size:22px;line-height:1}.share-chip.share-native:hover{background:#f0b90b14;border-color:var(--accent)}.share-chip.share-telegram:hover{background:#229ed91a;border-color:#229ed9}.share-chip.share-whatsapp:hover{background:#25d3661a;border-color:#25d366}.share-chip.share-twitter:hover{background:#ffffff14;border-color:#fff}.share-chip.share-facebook:hover{background:#1877f21a;border-color:#1877f2}.share-chip.share-twitter .share-icon{font-weight:700}.share-chip.share-facebook .share-icon{font-family:Georgia,serif;font-weight:900;font-style:italic;color:#1877f2}.referral-rates{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:12px 14px;font-size:13px;text-align:center}.referral-rates p{margin:0}.referral-rates p+p{margin-top:6px}.referral-rates strong{color:var(--accent)}.wheel-scene{display:flex;flex-direction:column;gap:14px}.tier-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.tier-tab{background:var(--card);border:1px solid var(--border);color:var(--muted);border-radius:10px;padding:10px 8px;display:flex;flex-direction:column;align-items:center;gap:2px;font-weight:600;font-size:12px;letter-spacing:.05em}.tier-tab.active{border-color:var(--accent);color:var(--accent);background:#f0b90b0f}.tier-cost{font-size:11px;font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums}.wheel-area{display:flex;justify-content:center;padding:16px 0}.spin-controls{display:flex;flex-direction:column;align-items:center;gap:6px}.spin-button{background:var(--accent);color:#000;border:none;border-radius:14px;padding:16px 32px;font-weight:700;font-size:16px;font-variant-numeric:tabular-nums;min-width:240px}.spin-button:disabled{background:var(--border);color:var(--muted)}.spin-hint{font-size:12px;margin:0}.outcome-card{background:var(--card);border:1px solid var(--accent);border-radius:14px;padding:24px;text-align:center}.outcome-emoji{font-size:48px;margin-bottom:4px}.outcome-card h3{margin:4px 0;color:var(--accent)}.outcome-prize{font-size:18px;font-weight:700;margin:0}.provably-fair{margin-top:12px;text-align:left;font-size:11px;color:var(--muted)}.provably-fair summary{cursor:pointer;text-align:center;margin-bottom:6px}.provably-fair p{margin:4px 0;word-break:break-all}.prize-list{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px}.prize-list h3{margin:0 0 10px;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.prize-list ul{list-style:none;padding:0;margin:0;display:grid;gap:4px}.prize-list li{display:flex;justify-content:space-between;align-items:center;padding:6px 4px;font-size:13px}.prize-rarity{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:2px 8px;border-radius:999px;background:var(--border)}li.rarity-legendary .prize-rarity{color:var(--accent);background:#f0b90b2e}li.rarity-rare .prize-rarity{color:#a855f7;background:#a855f72e}li.rarity-uncommon .prize-rarity{color:#3b82f6;background:#3b82f62e}.prizes-panel{display:flex;flex-direction:column;gap:12px}.prizes-panel h2{margin:0;font-size:14px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.awards-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.award-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:12px 14px}.award-row.needs-action{border-color:var(--accent);background:#f0b90b0d}.award-row.delivered{opacity:.7}.award-icon{font-size:28px;width:40px;text-align:center}.award-name{font-weight:600;font-size:14px;margin-bottom:4px}.award-status{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px}.status-tag{padding:2px 8px;border-radius:999px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background:var(--border);color:var(--muted)}.status-tag.status-delivered{background:#0ecb8126;color:var(--success)}.status-tag.status-pending{background:#f0b90b26;color:var(--accent)}.status-tag.status-processing{background:#3b82f626;color:#3b82f6}.status-tag.status-failed{background:#f6465d26;color:var(--danger)}.small{font-size:11px}.award-row>button{background:var(--accent);color:#000;border:none;border-radius:6px;padding:8px 14px;font-weight:600;font-size:12px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100;padding:16px}.modal{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:20px;width:100%;max-width:380px;display:flex;flex-direction:column;gap:12px}.modal h3{margin:0;color:var(--accent)}.modal input{width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:14px;font-family:inherit}.modal input:focus{outline:none;border-color:var(--accent)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:6px}.modal-actions button{background:var(--accent);color:#000;border:none;border-radius:8px;padding:10px 18px;font-weight:600;font-size:13px}.modal-actions button.ghost{background:var(--border);color:var(--text)}.office-floor{position:relative;width:100%;aspect-ratio:800 / 750;margin:8px 0 12px;border-radius:10px;overflow:hidden;background:#06080c;border:1px solid var(--border);box-shadow:inset 0 0 30px #0009;isolation:isolate}.office-svg{width:100%;height:100%;display:block}.office-hud{position:absolute;top:8px;right:10px;display:flex;align-items:baseline;gap:2px;background:#0000008c;padding:4px 9px;border-radius:999px;border:1px solid rgba(240,185,11,.25);pointer-events:none;z-index:6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.office-hud-rate{font-size:11px;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}.office-hud-unit{font-size:9px;color:var(--muted)}.back-office-seat .seat-ring{transition:opacity .15s ease-out}.back-office-seat:hover .seat-ring,.back-office-seat:focus .seat-ring{opacity:.9}.back-office-seat.empty .seat-hint{opacity:.85;animation:seat-hint-pulse 2.4s ease-in-out infinite}.back-office-seat.filled .seat-hint{opacity:0;transition:opacity .15s ease-out}.back-office-seat.filled:hover .seat-hint,.back-office-seat.filled:focus .seat-hint{opacity:.95}.back-office-seat.busy .seat-hint{opacity:.3}@keyframes seat-hint-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.balance-ticker .meter-row{display:grid;grid-template-columns:2fr 1fr;gap:8px;margin-top:10px}.balance-ticker .meter{background:#00000040;border:1px solid var(--border);border-radius:8px;padding:8px 10px}.balance-ticker .meter-label{display:flex;justify-content:space-between;align-items:baseline;font-size:11px;color:var(--muted)}.balance-ticker .meter-label strong{font-size:13px;font-variant-numeric:tabular-nums;color:var(--text)}.balance-ticker .meter-bar{height:5px;background:#ffffff0d;border-radius:3px;overflow:hidden;margin-top:5px}.balance-ticker .meter-fill{height:100%;border-radius:3px;background:var(--accent);transition:background .3s}.balance-ticker .meter.security.good .meter-fill{background:var(--success)}.balance-ticker .meter.security.warn .meter-fill{background:var(--accent)}.balance-ticker .meter.security.bad .meter-fill{background:var(--danger)}.balance-ticker .meter.security.good .meter-label strong{color:var(--success)}.balance-ticker .meter.security.bad .meter-label strong{color:var(--danger)}.balance-ticker .meter.brand .meter-label strong{color:var(--accent)}.balance-ticker .meter-foot{display:flex;justify-content:space-between;margin-top:6px;font-size:10px;color:var(--muted)}.balance-ticker .rate-block{display:flex;flex-direction:column;gap:1px;font-size:12px}.balance-ticker .rate-block strong{font-size:14px;font-variant-numeric:tabular-nums}.balance-ticker .capacity-loss{font-size:10px;color:var(--danger)}.cap-pill{display:inline-block;margin-left:6px;padding:1px 5px;background:#0006;color:var(--accent);border:1px solid var(--accent);border-radius:999px;font-size:9px;font-weight:700;letter-spacing:1px;vertical-align:middle}.claim-btn.at-cap{animation:pulse-cap 2s ease-in-out infinite}@keyframes pulse-cap{0%,to{box-shadow:0 0 #f0b90b00}50%{box-shadow:0 0 14px #f0b90b80}}.staff-actions.hire-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}.hire-btn{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;gap:2px 6px;background:var(--card-elevated);border:1px solid var(--border);color:var(--text);padding:8px 10px;border-radius:8px;font-size:12px;font-weight:500;text-align:left;transition:border-color .15s,background .15s}.hire-btn:hover:not(:disabled){border-color:var(--accent);background:#f0b90b14}.hire-btn .hire-icon{grid-row:span 2;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:14px;color:var(--accent);background:#f0b90b1f;border:1px solid rgba(240,185,11,.3)}.hire-btn .hire-tagline{font-size:10px;color:var(--muted);font-weight:400}.hire-btn.type-cashier:hover:not(:disabled){border-color:#1f6feb}.hire-btn.type-trader:hover:not(:disabled){border-color:#1f8a4f}.hire-btn.type-quant:hover:not(:disabled){border-color:#7c3aed}.hire-btn.type-manager:hover:not(:disabled){border-color:#d97706}.hire-btn.type-marketing:hover:not(:disabled){border-color:#ec4899}.hire-btn.type-security:hover:not(:disabled){border-color:#f6465d}.hire-btn.at-cap{opacity:.55;border-style:dashed}.hire-btn.at-cap .hire-icon{background:#0ecb811f;color:var(--success);border-color:#0ecb8166}.hire-btn.at-cap .hire-tagline{color:var(--success)}.staff-row.role-cashier{border-left:2px solid #1f6feb}.staff-row.role-trader{border-left:2px solid #1f8a4f}.staff-row.role-quant{border-left:2px solid #7c3aed}.staff-row.role-manager{border-left:2px solid #d97706}.staff-row.role-marketing{border-left:2px solid #ec4899}.staff-row.role-security{border-left:2px solid #f6465d}.branch-bonus{margin-top:8px;font-size:11px;color:#d97706;background:#d977061a;border:1px solid rgba(217,119,6,.3);padding:4px 8px;border-radius:6px;display:inline-block}.expand-hint{font-size:12px;color:var(--muted);margin:0 0 12px;line-height:1.45}.expand-section{margin-top:18px}.branch-flag{margin-right:6px;font-size:1.05em}.region-tabs{display:flex;gap:6px;margin-bottom:12px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:4px}.region-tabs::-webkit-scrollbar{display:none}.region-tab{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 14px;border-radius:999px;border:1px solid var(--border);background:#ffffff05;color:var(--muted);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;min-width:84px}.region-tab:hover:not(.active){border-color:var(--accent);color:var(--text)}.region-tab.active{background:var(--accent);border-color:var(--accent);color:#000}.region-tab-name{font-weight:600}.region-tab-meta{font-size:10px;opacity:.75;font-variant-numeric:tabular-nums;letter-spacing:.04em}.region-tab.active .region-tab-meta{color:#000;opacity:.7}.city-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.city-card{display:flex;flex-direction:column;align-items:stretch;text-align:left;gap:8px;padding:12px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;transition:border-color .15s,transform .1s,opacity .15s;font:inherit}.city-card:hover:not(:disabled){border-color:var(--accent)}.city-card:disabled{cursor:not-allowed}.city-card-header{display:flex;align-items:center;gap:8px}.city-flag{font-size:22px;line-height:1}.city-name{font-size:14px;font-weight:600;line-height:1.2}.city-card-cost{display:flex;flex-wrap:wrap;gap:4px}.cost-chip{display:inline-block;padding:3px 7px;border-radius:6px;background:#ffffff0d;font-size:11px;font-variant-numeric:tabular-nums;font-weight:500}.cost-chip.free{background:#0ecb811f;color:var(--green, #0ecb81)}.cost-chip.missing{background:#f6465d1f;color:var(--danger, #f6465d)}.city-card-status{font-size:11px;color:var(--muted);letter-spacing:.02em}.city-card.status-available .city-card-status{color:var(--accent);font-weight:600}.city-card.status-need-resources{opacity:.85}.city-card.status-locked{opacity:.5}.city-card.status-locked:hover{border-color:var(--border)}.leaderboard-scene{display:flex;flex-direction:column;gap:12px}.leaderboard-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;background:var(--card);border:1px solid var(--border);padding:4px;border-radius:10px}.leaderboard-tab{display:flex;flex-direction:column;align-items:center;gap:2px;background:transparent;border:none;color:var(--muted);padding:8px 6px;border-radius:6px;font-size:12px;font-weight:500;transition:background .15s,color .15s}.leaderboard-tab span:first-child{font-size:18px;line-height:1}.leaderboard-tab.active{background:var(--accent);color:#000;font-weight:700}.leaderboard-tab:hover:not(.active){background:var(--accent-dim);color:var(--accent)}.leaderboard-header{font-size:13px;display:flex;gap:6px;align-items:baseline;padding:0 4px}.leaderboard-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.leaderboard-row{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:12px;background:var(--card);border:1px solid var(--border);padding:10px 14px;border-radius:8px;font-size:13px}.leaderboard-row.me{background:#f0b90b14;border-color:var(--accent);box-shadow:0 0 10px #f0b90b26}.leaderboard-row .rank{font-variant-numeric:tabular-nums;color:var(--muted);font-weight:600}.leaderboard-row .medal{font-size:18px}.leaderboard-row .name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leaderboard-row.me .name:after{content:" · you";color:var(--accent);font-weight:500;font-size:11px}.leaderboard-row .value{text-align:right;font-variant-numeric:tabular-nums}.leaderboard-row .value strong{color:var(--accent)}.leaderboard-row .unit{font-size:11px;margin-left:2px}.leaderboard-me{margin-top:6px;padding-top:10px;border-top:1px dashed var(--border);display:flex;flex-direction:column;gap:6px}.leaderboard-row.promote{border-left:3px solid var(--success)}.leaderboard-row.demote{border-left:3px solid var(--danger)}.leaderboard-row .movement{margin-left:6px;font-size:12px;font-weight:700}.leaderboard-row .movement.up{color:var(--success)}.leaderboard-row .movement.down{color:var(--danger)}.league-badge{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;background:var(--card);border:2px solid var(--accent);border-radius:12px;padding:14px 16px;position:relative;overflow:hidden}.league-badge:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 0% 50%,rgba(255,255,255,.06),transparent 60%);pointer-events:none}.league-emoji{font-size:36px;line-height:1;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5))}.league-text{display:flex;flex-direction:column;gap:4px;min-width:0}.league-name{font-size:18px;font-weight:700;letter-spacing:.5px}.league-stats{display:flex;gap:14px;font-size:12px;flex-wrap:wrap}.league-stats strong{font-variant-numeric:tabular-nums}.league-countdown{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}.countdown-label{font-size:10px;letter-spacing:1px}.countdown-value{font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--accent)}.branch-card .staff-list{margin-top:10px}.branch-card .staff-row{background:transparent;border:1px solid var(--border);padding:8px 10px;font-size:12px}.hire-emoji{display:inline-block;width:14px;height:14px;line-height:14px;border-radius:50%;background:var(--accent-dim);color:var(--accent);font-size:13px;font-weight:700;margin-right:4px;text-align:center}
