:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#0d1117;--color-card-bg:#111826;--color-border:#262d3d;--color-divider:#1c2433;--color-text:#e6e9ef;--color-text-muted:#8b93a1;--color-input-border:#3a4353;--color-surface-hover:#161d2b;--color-accent:#3b82f6;--color-accent-hover:#60a5fa;--color-positive:#8ee6b0;--color-negative:#ff9d95;--color-debt-fine:#8b93a1;--color-debt-warning:#fb923c;--color-debt-critical:#f87171;--color-market-warn:#fbbf24;--color-radar-bg:#1a1013;--tier-1-color:#94a3b8;--tier-2-color:#2dd4bf;--tier-3-color:#38bdf8;--tier-4-color:#a78bfa;--tier-5-color:#fbbf24;--font-display:"Newsreader", serif;--font-sans:"IBM Plex Sans", system-ui, -apple-system, sans-serif;--font-mono:"IBM Plex Mono", monospace}[hidden]{display:none!important}body{background:var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-sans);margin:0}.app-shell{background:var(--color-bg);border:1px solid var(--color-border);min-height:100vh;color:var(--color-text);display:flex}.sidebar{border-right:1px solid var(--color-border);flex-direction:column;flex:none;gap:32px;width:224px;padding:24px 20px;display:flex}.sidebar-logo-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--color-text);font-size:22px;font-weight:600}.sidebar-logo-sub{font-family:var(--font-mono);color:var(--color-text-muted);margin-top:2px;font-size:11px}.sidebar-nav{flex-direction:column;gap:2px;display:flex}.sidebar-nav-item{font-family:var(--font-sans);color:var(--color-text);padding:9px 10px;font-size:13px;font-weight:500;text-decoration:none}.sidebar-nav-item:hover{background:var(--color-surface-hover)}.sidebar-nav-item-secondary{opacity:.55}.sidebar-tier-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:10px;font-size:10px}.sidebar-tier-list{flex-direction:column;gap:6px;display:flex}.sidebar-tier-row{align-items:center;gap:8px;display:flex}.sidebar-tier-dot{border-radius:50%;flex:none;width:10px;height:10px;transition:opacity .3s}.sidebar-tier-info{flex:1}.sidebar-tier-name{color:var(--color-text);font-size:11.5px;font-weight:500;transition:opacity .3s}.sidebar-tier-track{background:var(--color-divider);height:3px;margin-top:3px}.sidebar-tier-fill{height:100%;transition:width .3s}.sidebar-tier-row-locked .sidebar-tier-dot,.sidebar-tier-row-locked .sidebar-tier-name{opacity:.35}@keyframes tier-unlock-glow{0%{transform:scale(1);box-shadow:0 0 #0000}30%{transform:scale(1.5);box-shadow:0 0 8px 3px}to{transform:scale(1);box-shadow:0 0 #0000}}.sidebar-tier-dot-flash{animation:1s ease-out tier-unlock-glow}.sidebar-footer{font-family:var(--font-mono);color:var(--color-text-muted);margin-top:auto;font-size:11px}.sidebar-brand-reputation{color:var(--tier-3-color);margin-top:2px;font-size:18px;font-weight:600}.main-content{flex-direction:column;flex:1;gap:22px;min-width:0;padding:24px 28px;display:flex}.resources{flex-wrap:wrap;gap:10px;display:flex}.resource-chip{border:1px solid var(--color-border);background:var(--color-card-bg);min-width:118px;padding:8px 12px}.resource-chip-name{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:10.5px}.resource-chip-amount{font-family:var(--font-mono);color:var(--color-text);font-variant-numeric:tabular-nums;margin-top:2px;font-size:16px;font-weight:600}.resource-chip-rate{font-family:var(--font-mono);color:var(--color-text-muted);font-size:11px}.resource-chip-rate-positive{color:var(--color-positive)}.resource-chip-rate-negative{color:var(--color-negative)}@keyframes chip-unlock-flash{0%{border-color:var(--color-accent);box-shadow:0 0 10px 1px var(--color-accent)}to{border-color:var(--color-border);box-shadow:0 0 #0000}}.resource-chip-flash{animation:1s ease-out chip-unlock-flash}.savebar{flex-wrap:wrap;gap:.5rem;display:flex}button{cursor:pointer;padding:.4rem .8rem}button:disabled{cursor:not-allowed}.card{border:1px solid var(--color-border);background:var(--color-card-bg);padding:18px 20px}.card-heading{font-family:var(--font-display);color:var(--color-text);text-transform:none;letter-spacing:normal;margin:0 0 12px;font-size:17px;font-style:italic;font-weight:400}.actions-row{flex-wrap:wrap;gap:10px;display:flex}.actions-row .actions{display:contents}.action-button{background:var(--color-accent);color:var(--color-bg);font-family:var(--font-sans);border:none;padding:10px 16px;font-size:13px;font-weight:600;transition:transform .1s}.action-button:hover{background:var(--color-accent-hover)}.action-button:active{transform:scale(.96)}.buildings-heading-row{justify-content:space-between;align-items:baseline;margin-bottom:14px;display:flex}.buildings-heading-row .card-heading{margin:0}.buildings-legend{font-family:var(--font-mono);color:var(--color-text-muted);font-size:11px}.building{border-top:1px solid var(--color-divider);grid-template-columns:1fr 220px;align-items:center;gap:16px;padding:14px 0;display:grid}.building-title-row{align-items:center;gap:8px;display:flex}.building-name{color:var(--color-text);font-size:14px;font-weight:600}.building-count{font-family:var(--font-mono);color:var(--color-text-muted);font-size:11px}.building-active-note{font-family:var(--font-mono);color:var(--color-debt-warning);font-size:11px}.building-tier-tag{font-family:var(--font-mono);color:var(--color-bg);padding:1px 6px;font-size:10px}@keyframes building-tier-unlock-flash{0%{background:#3b82f629}to{background:0 0}}.building-tier-flash{animation:1.2s ease-out building-tier-unlock-flash}.building-desc{color:var(--color-text-muted);margin:4px 0 8px;font-size:12.5px}.building-debt-bar{align-items:center;gap:8px;display:flex}.building-debt-track{background:var(--color-divider);flex:none;width:140px;height:6px}.building-debt-fill{height:100%;transition:width .3s,background .3s}.building-debt{font-family:var(--font-mono);font-size:11px}.building-boost{font-family:var(--font-mono);color:var(--color-text-muted);margin-top:4px;font-size:11px;display:block}.building-cost{font-family:var(--font-mono);color:var(--color-text);font-variant-numeric:tabular-nums;margin-bottom:6px;font-size:12px;display:block}.building-actions{flex-direction:column;align-items:stretch;gap:8px;display:flex}.buy-group{flex-wrap:wrap;gap:6px;display:flex}.buy-group button{border:1px solid var(--color-accent);background:var(--color-bg);min-width:44px;color:var(--color-accent);font-family:var(--font-sans);flex:1;padding:6px 0;font-size:12px}.buy-group button:hover:not(:disabled){background:var(--color-accent);color:var(--color-bg)}.buy-group button:disabled,.refactor-button:disabled{border-color:var(--color-input-border);background:var(--color-surface-hover);color:var(--color-text-muted);opacity:1}.refactor-button{border:1px solid var(--debt-color,var(--color-border));background:var(--color-bg);color:var(--debt-color,var(--color-text));font-family:var(--font-sans);padding:6px 0;font-size:12px}.refactor-button:hover:not(:disabled){background:var(--debt-color,var(--color-border));color:var(--color-bg)}.dashboard-grid{grid-template-columns:2fr 1fr;align-items:start;gap:20px;display:grid}.dashboard-grid-left,.dashboard-grid-right{flex-direction:column;gap:20px;min-width:0;display:flex}.tech-debt-radar{border-color:var(--color-debt-critical);background:var(--color-radar-bg)}.tech-debt-radar-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--color-debt-critical);margin-bottom:8px;font-size:10px}.tech-debt-radar-value{font-family:var(--font-mono);color:var(--color-debt-critical);font-size:32px;font-weight:600;line-height:1}.tech-debt-radar-note{color:var(--color-text-muted);margin:6px 0 0;font-size:12px}.brand-reputation{color:var(--color-text-muted);margin:0 0 4px;font-size:12px}.ipo-progress{color:var(--color-text-muted);margin:0 0 4px;font-size:12.5px}.ipo-progress-track{background:var(--color-divider);height:6px;margin-bottom:12px}.ipo-progress-fill{background:var(--color-market-warn);height:100%;transition:width .3s}.ipo-button{background:var(--color-accent);width:100%;color:var(--color-bg);font-family:var(--font-sans);border:none;padding:9px 0;font-size:13px;font-weight:500;transition:transform .1s}.ipo-button:hover:not(:disabled){background:var(--color-accent-hover)}.ipo-button:active:not(:disabled){transform:scale(.96)}.ipo-button:disabled{border:1px solid var(--color-input-border);background:var(--color-surface-hover);color:var(--color-text-muted);cursor:not-allowed;opacity:1}.market-status{font-family:var(--font-mono);color:var(--color-text-muted);margin:0;font-size:11px}.market-direction{font-weight:600}.groei-grid{grid-template-columns:1fr 1fr 1fr;align-items:start;gap:20px;display:grid}.card-heading-sm{margin-bottom:10px;font-size:15px}.card-heading-row{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.card-heading-row .card-heading{margin-bottom:0}.card-heading-live{font-family:var(--font-mono);color:var(--color-text-muted);font-size:10px}.stats-subheading{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin:10px 0 6px;font-size:.75rem}.live-list,.achievements-list,.leaderboard-list{scrollbar-width:thin;scrollbar-color:var(--color-input-border) transparent;overflow-y:auto;-webkit-mask-image:linear-gradient(#000 82%,#0000 100%);mask-image:linear-gradient(#000 82%,#0000 100%)}.live-list::-webkit-scrollbar{width:6px}.achievements-list::-webkit-scrollbar{width:6px}.leaderboard-list::-webkit-scrollbar{width:6px}.live-list::-webkit-scrollbar-thumb{background:var(--color-input-border);border-radius:3px}.achievements-list::-webkit-scrollbar-thumb{background:var(--color-input-border);border-radius:3px}.leaderboard-list::-webkit-scrollbar-thumb{background:var(--color-input-border);border-radius:3px}.live-list{max-height:132px;margin:0;padding:0;list-style:none}.live-list li,.live-list-empty{color:var(--color-text-muted);border-top:1px solid var(--color-divider);background:0 0;padding:6px 4px;font-size:12px;transition:background .6s}.live-list li.live-list-item-new{background:#388ef624}.stats-live-list{max-height:90px}.achievements-list{max-height:176px;margin:0;padding:0;list-style:none}.achievement{border-top:1px solid var(--color-divider);color:var(--color-text);padding:5px 0;font-size:12.5px;font-weight:600}.achievement-desc{color:var(--color-text-muted);margin-top:2px;font-size:11.5px;font-weight:400;display:block}.achievement-locked{opacity:.4}.leaderboard-list{max-height:176px;margin:0;padding:0;list-style:none}.leaderboard-list li{border-top:1px solid var(--color-divider);color:var(--color-text);justify-content:space-between;padding:5px 0;font-size:12.5px;display:flex}.leaderboard-rank{color:var(--color-text-muted);margin-right:4px}.leaderboard-reputation{font-family:var(--font-mono)}.account-grid{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}.account-form-row{gap:8px;margin-bottom:8px;display:flex}.account-form-row input{border:1px solid var(--color-input-border);background:var(--color-bg);color:var(--color-text);font-size:12.5px;font-family:var(--font-sans);flex:1;padding:7px 9px}.account-button-primary{border:1px solid var(--color-accent);background:var(--color-accent);color:var(--color-bg);font-family:var(--font-sans);padding:7px 12px;font-size:12px;font-weight:600}.account-button-primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.account-button-outline{border:1px solid var(--color-border);background:var(--color-surface-hover);color:var(--color-text);font-family:var(--font-sans);padding:7px 12px;font-size:12px;font-weight:600}.account-button-outline:hover{background:var(--color-border)}.hint{color:var(--color-text-muted);margin:0 0 10px;font-size:10.5px}.account-panel-secondary,.sync-panel-secondary{margin-top:4px}.save-id-line{font-family:var(--font-mono);color:var(--color-text-muted);margin:0 0 10px;font-size:11px}.game-id{color:var(--color-text)}.link-button{color:var(--color-accent);font-family:var(--font-mono);cursor:pointer;background:0 0;border:none;padding:0;font-size:11px}.link-button:hover{color:var(--color-accent-hover);text-decoration:underline}footer{color:var(--color-text-muted);font-size:11px}footer a{color:var(--color-text-muted)}footer a:hover{color:var(--color-text)}
