:root{--color-bg-primary: #0a0e14;--color-bg-secondary: #111820;--color-bg-tertiary: #1a2230;--color-gold: #d4af37;--color-gold-light: #f4d160;--color-gold-dark: #996515;--color-success: #2ecc71;--color-danger: #e74c3c;--color-info: #3498db;--color-text-primary: #f5f5f5;--color-text-secondary: #9aa5b1;--color-border: rgba(212, 175, 55, .3);--color-opportunity: #27ae60;--color-shopping: #e74c3c;--color-life: #e91e63;--color-market: #3498db;--color-payday: #f39c12;--color-charity: #9b59b6;--color-deal: #1abc9c;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);font-family:DM Sans,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;color:var(--color-text-primary);background:var(--color-bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;overflow:hidden}body{background:var(--color-bg-primary);overscroll-behavior:none}#root{width:100%;height:100%;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-family:Bebas Neue,sans-serif;letter-spacing:.05em;color:var(--color-gold)}button{font-family:inherit;cursor:pointer;border:none;outline:none;-webkit-tap-highlight-color:transparent}button:disabled{opacity:.5;cursor:not-allowed}.scrollable{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}.card-container{width:100%;max-width:320px;margin:0 auto;pointer-events:auto}.card{width:100%;max-height:none;background:var(--color-bg-primary);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 20px #0006,0 0 0 1px var(--card-color, var(--color-gold));animation:cardPopIn .2s ease-out}.card-header{padding:var(--spacing-sm) var(--spacing-md);background:var(--card-color, var(--color-gold));display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.card-category{font-family:Bebas Neue,sans-serif;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--color-bg-primary)}.card-close-btn{background:#0003;border:none;color:var(--color-bg-primary);width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.85rem;line-height:1;transition:background .2s}.card-close-btn:active{background:#0006}.card-real_estate{--card-color: #27ae60}.card-stocks{--card-color: #2980b9}.card-business{--card-color: #16a085}.card-startup{--card-color: #8e44ad}.card-shopping{--card-color: #e74c3c}.card-life{--card-color: #e91e63}.card-market{--card-color: #3498db}.card-deal{--card-color: #1abc9c}.card-charity{--card-color: #9b59b6}.card-emergency{--card-color: #c0392b}.card-bank{--card-color: #34495e}.card-bonus{--card-color: #f39c12}.card-layoff{--card-color: #7f8c8d}.card-baby{--card-color: #e91e63}.card-promotion{--card-color: #4caf50}.card-mentor{--card-color: #9c27b0}.card-fed_policy{--card-color: #1a237e}.card-payday,.card-start{--card-color: var(--color-gold)}.card-opportunity{--card-color: #27ae60}.card-content{padding:var(--spacing-sm);flex:1;overflow-y:auto;min-height:0}.card-title{font-family:Bebas Neue,sans-serif;font-size:1.1rem;color:var(--color-text-primary);margin-bottom:var(--spacing-xs);letter-spacing:.02em;line-height:1.1}.card-description{font-size:.8rem;color:var(--color-text-secondary);line-height:1.35;margin-bottom:var(--spacing-xs)}.card-flavor{font-size:.75rem;color:var(--color-text-secondary);font-style:italic;opacity:.7;margin-bottom:var(--spacing-sm);padding-left:var(--spacing-sm);border-left:2px solid var(--card-color, var(--color-border))}.card-details{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xs);padding:var(--spacing-sm);background:var(--color-bg-secondary);border-radius:6px}.detail-row{display:flex;flex-direction:column;padding:var(--spacing-xs);background:var(--color-bg-tertiary);border-radius:4px}.detail-row.full-width{grid-column:span 2;flex-direction:row;justify-content:space-between;align-items:center}.detail-row.net-cashflow-row{border:1px solid rgba(255,255,255,.08);margin-top:2px}.detail-row.net-cashflow-row .detail-value{font-size:.8rem;text-align:right}.loan-options-info{grid-column:span 2;display:flex;flex-direction:column;gap:4px;margin-top:var(--spacing-xs);padding-top:var(--spacing-xs);border-top:1px solid var(--color-border)}.loan-options-info .detail-row{flex-direction:row;justify-content:space-between}.loan-options-info .loan-option{background:#ffffff08}.detail-label{font-size:.7rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.detail-value{font-weight:600;font-size:.85rem;color:var(--color-text-primary)}.detail-value.ticker{font-family:monospace}.detail-row.highlight{background:#d4af371f;border:1px solid rgba(212,175,55,.25)}.detail-row.highlight .detail-value{color:var(--color-gold)}.down-slider-row{flex-basis:100%;padding:6px 4px 2px}.down-slider-header{display:flex;justify-content:space-between;font-size:.7rem;color:var(--color-text-secondary);margin-bottom:4px}.down-slider-header .down-slider-value{font-weight:700;color:var(--color-gold, #d4af37)}.down-slider{width:100%;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ffffff26;border-radius:3px;outline:none;cursor:pointer}.down-slider::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--color-gold, #d4af37);border:2px solid var(--color-bg-primary, #1a1a2e);cursor:grab;box-shadow:0 1px 4px #0000004d}.down-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--color-gold, #d4af37);border:2px solid var(--color-bg-primary, #1a1a2e);cursor:grab;box-shadow:0 1px 4px #0000004d}.down-slider.bridge{background:#5c6bc040}.down-slider.bridge::-webkit-slider-thumb{background:#5c6bc0}.down-slider.bridge::-moz-range-thumb{background:#5c6bc0}.down-slider-labels{display:flex;justify-content:space-between;font-size:.6rem;color:var(--color-text-secondary);margin-top:2px}.detail-row.positive .detail-value{color:var(--color-success)}.detail-row.negative .detail-value{color:var(--color-danger)}.detail-row.roi-row{background:#d4af371a;border:1px solid rgba(212,175,55,.3);border-radius:6px;padding:var(--spacing-xs) var(--spacing-sm);margin-top:var(--spacing-xs);flex-direction:column;gap:2px}.roi-main{display:flex;justify-content:space-between;align-items:center}.roi-main .detail-label{font-weight:700;color:var(--color-gold);font-size:.7rem;text-transform:uppercase;letter-spacing:.03em}.roi-main .detail-value{font-weight:700;color:var(--color-gold);font-size:.85rem}.roi-formula{font-size:.7rem;color:var(--color-text-secondary);opacity:.7;font-style:italic}.card-actions{padding:var(--spacing-sm);display:flex;flex-wrap:wrap;gap:var(--spacing-xs);background:var(--color-bg-secondary);border-top:1px solid var(--color-border);flex-shrink:0;justify-content:center}.card-action-btn{flex:1 1 auto;min-width:80px;min-height:44px;max-width:140px;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-sm);border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;transition:all .15s ease;white-space:normal;word-wrap:break-word;text-align:center;line-height:1.2}.card-action-btn.primary{background:var(--card-color, var(--color-gold));color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.2)}.card-action-btn.primary:active:not(:disabled){transform:scale(.97)}.card-action-btn.secondary{background:var(--color-bg-tertiary);color:var(--color-text-secondary);border:1px solid var(--color-border)}.card-action-btn.secondary:active:not(:disabled){background:var(--color-bg-primary)}.card-action-btn:disabled{opacity:.4;cursor:not-allowed}.card-action-btn.blocked{opacity:.3;text-decoration:line-through}.action-cost{font-size:.7rem;opacity:.85}.card-action-btn:has(.action-sub-hint){flex-direction:column;gap:1px}.action-sub-hint{font-size:.6rem;font-weight:600;opacity:1;letter-spacing:.05em;text-transform:uppercase;color:#ffffffd9;text-shadow:0 1px 2px rgba(0,0,0,.3)}.action-sub-hint.resist{color:#86efac}.card-action-btn.cant-afford{background:var(--color-bg-tertiary);color:var(--color-danger);border:1px dashed var(--color-danger);opacity:.7}.card-action-btn.borrow-btn{flex-basis:100%;max-width:100%;flex-direction:column;gap:3px;background:linear-gradient(135deg,#1a237e,#283593);color:#fff;padding:var(--spacing-sm);border:1px solid #5c6bc0;box-shadow:0 0 8px #5c6bc066;animation:borrowPulse 2s ease-in-out infinite}@keyframes borrowPulse{0%,to{box-shadow:0 0 8px #5c6bc04d}50%{box-shadow:0 0 18px #5c6bc0b3,0 0 4px #5c6bc04d inset}}.borrow-btn .borrow-label{font-size:.8rem;font-weight:700}.borrow-btn .borrow-loan-line{font-size:.65rem;opacity:.8;font-weight:400;color:#ffffffd9}.borrow-btn .borrow-cashflow{display:flex;align-items:center;justify-content:center;gap:4px;font-size:.75rem;font-weight:600;margin-top:3px;padding-top:5px;border-top:1px solid rgba(255,255,255,.2)}.borrow-cashflow .cf-net{font-weight:700;padding:2px 6px;border-radius:3px;background:#ffffff1a}.borrow-cashflow .cf-net.positive{color:#4ade80}.borrow-cashflow .cf-net.negative{color:#f87171}.card-action-btn.borrow-btn:active{transform:scale(.98)}.borrow-blocked{display:flex;align-items:center;justify-content:center;gap:6px;padding:var(--spacing-sm);background:#ef444426;border:1px dashed rgba(239,68,68,.5);border-radius:6px;flex-basis:100%}.borrow-blocked .blocked-icon{font-size:.9rem}.borrow-blocked .blocked-text{font-size:.7rem;color:#f87171;font-weight:600}.rate-impact-box{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:#1a237e33;border:1px solid rgba(26,35,126,.4);border-radius:6px;margin:var(--spacing-sm) 0}.rate-impact-box .impact-icon{font-size:1.25rem}.rate-impact-box .impact-text{font-size:.75rem;color:var(--color-text-primary);line-height:1.3}.stock-slider-section{display:flex;flex-direction:column;gap:8px;width:100%}.stock-readout{text-align:center}.stock-readout-main{display:flex;justify-content:space-between;align-items:baseline;padding:0 2px}.stock-shares-count{font-family:Bebas Neue,sans-serif;font-size:1rem;color:var(--color-text-primary);letter-spacing:.02em}.stock-total-cost{font-weight:700;font-size:.85rem;color:var(--color-gold)}.stock-readout-sub{display:flex;justify-content:space-between;font-size:.7rem;color:var(--color-text-secondary);padding:0 2px}.stock-dividend-tag{color:var(--color-success);font-weight:600}.stock-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:var(--color-bg-tertiary);outline:none;cursor:pointer}.stock-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--color-gold);border:2px solid var(--color-bg-primary);box-shadow:0 2px 6px #0006;cursor:grab;transition:transform .1s}.stock-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.15)}.stock-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--color-gold);border:2px solid var(--color-bg-primary);box-shadow:0 2px 6px #0006;cursor:grab}.stock-quick-picks{display:flex;gap:4px}.stock-quick-btn{flex:1;padding:4px 0;font-size:.7rem;font-weight:600;border-radius:4px;background:var(--color-bg-tertiary);color:var(--color-text-secondary);border:1px solid transparent;cursor:pointer;transition:all .15s}.stock-quick-btn.active{border-color:var(--color-gold);color:var(--color-gold);background:#d4af371a}.stock-quick-btn:disabled{opacity:.3;cursor:not-allowed}.stock-margin-toggle{display:flex;align-items:center;gap:6px;font-size:.75rem;color:var(--color-text-secondary);cursor:pointer;padding:2px 0}.stock-margin-toggle input[type=checkbox]{accent-color:var(--color-gold);width:14px;height:14px;cursor:pointer}.stock-margin-details{display:flex;flex-direction:column;gap:2px;padding:6px 8px;background:#1a237e26;border:1px solid rgba(26,35,126,.3);border-radius:6px;font-size:.7rem}.margin-row{display:flex;justify-content:space-between;color:var(--color-text-secondary)}.margin-row.positive span:last-child{color:var(--color-success);font-weight:600}.margin-row.negative span:last-child{color:var(--color-danger);font-weight:600}.stock-action-buttons{display:flex;gap:6px}.stock-action-buttons .card-action-btn{flex:1}.stock-action-buttons .card-action-btn.primary{flex:2}.card-footer{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-tertiary);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.player-cash{font-size:.8rem;color:var(--color-text-secondary)}.current-rate{font-size:.75rem;color:var(--color-gold)}@media(min-width:768px){.card-container{max-width:300px}.card{max-height:460px}.card-header{padding:var(--spacing-sm) var(--spacing-md)}.card-category{font-size:.8rem}.card-close-btn{width:44px;height:44px}.card-close-btn:hover{background:#0006}.card-content{padding:var(--spacing-md)}.card-title{font-size:1.25rem}.card-description{font-size:.8rem}.card-flavor{font-size:.7rem}.detail-label{font-size:.6rem}.detail-value{font-size:.8rem}.card-action-btn{font-size:.7rem;padding:var(--spacing-sm)}.card-action-btn.primary:hover:not(:disabled){filter:brightness(1.1)}.card-action-btn.secondary:hover:not(:disabled){color:var(--color-text-primary)}.stock-quick-btn:hover:not(:disabled):not(.active){color:var(--color-text-primary);border-color:var(--color-border)}}@media(min-width:1024px){.card-container{max-width:320px}.card{max-height:500px}.card-title{font-size:1.35rem}.card-description{font-size:.85rem;line-height:1.4}.detail-value{font-size:.82rem}.card-action-btn{font-size:.72rem}.player-cash{font-size:.75rem}}@keyframes cardPopIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.board-container{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden}.news-banner{display:flex;align-items:center;gap:.4rem;width:100%;padding:.3rem .6rem;background:#1a237e40;border-bottom:1px solid rgba(212,175,55,.3);font-size:.6rem;color:var(--color-text-secondary);overflow:hidden;white-space:nowrap;flex-shrink:0;animation:newsSlideIn .4s ease-out}.news-banner.news-fed{background:#1a237e4d;border-bottom-color:#3f51b566}.news-banner.news-market{background:#27ae6026;border-bottom-color:#27ae604d}.news-banner.news-stock-up{background:#27ae6033;border-bottom-color:#27ae6066}.news-banner.news-stock-down{background:#e74c3c33;border-bottom-color:#e74c3c66}.news-banner.news-stock-mixed{background:#f1c40f26;border-bottom-color:#f1c40f4d}.news-banner.news-invest-up{background:#27ae6040;border-bottom-color:#27ae6080;font-weight:600}.news-banner.news-invest-down{background:#e74c3c40;border-bottom-color:#e74c3c80;font-weight:600}.news-icon{font-size:.75rem;flex-shrink:0}.news-title{font-weight:700;color:var(--color-gold);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.news-sep{color:var(--color-text-secondary);opacity:.4;flex-shrink:0}.news-desc{color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis}.news-impact{margin-left:auto;font-size:.65rem;color:var(--color-text-secondary);opacity:.8;flex-shrink:0;display:none}@keyframes newsSlideIn{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.board{--board-cols: 8;--board-rows: 12;display:grid;grid-template-columns:repeat(var(--board-cols),1fr);grid-template-rows:repeat(var(--board-rows),1fr);gap:2px;aspect-ratio:var(--board-cols) / var(--board-rows);height:100%;max-width:100%;background:var(--color-bg-tertiary);padding:3px;border-radius:8px;border:1px solid var(--color-border);box-shadow:0 4px 20px #0006;position:relative}.board-cell{border-radius:2px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;transition:all .2s ease;overflow:hidden;min-width:0}.board-cell.empty{background:transparent;pointer-events:none}.board-cell.has-space{background:var(--color-bg-secondary);border:1px solid var(--space-color, var(--color-border));cursor:pointer}.board-cell.has-space:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--space-color);opacity:.9}.board-cell.has-space:active{transform:scale(.95)}.board-cell.player-here{box-shadow:0 0 8px var(--color-gold),0 0 16px #d4af3766;animation:pulse 2s ease-in-out infinite;z-index:5}.space-icon{font-size:1.4rem;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.space-name{font-size:.65rem;font-weight:700;color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.01em;text-align:center;line-height:1.15;margin-top:1px;max-width:100%;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.space-number{display:none}.player-token{position:absolute;bottom:-2px;right:-2px;width:16px;height:16px;background:linear-gradient(135deg,var(--color-gold-light) 0%,var(--color-gold) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.4rem;font-weight:900;color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.4);box-shadow:0 2px 6px #0006;z-index:10;border:1.5px solid rgba(255,255,255,.6)}.player-token.arrived{animation:tokenArrive .4s ease}.player-token.animating{animation:tokenStep .35s ease}.player-token{transform:translate(calc(var(--token-i, 0) * 6px),calc(var(--token-i, 0) * -4px))}.player-token.other-player-token{opacity:.85;transform:translate(calc(var(--token-i, 0) * 6px),calc(var(--token-i, 0) * -4px)) scale(.85);box-shadow:0 0 0 1px #ffffff40}.player-token.active-turn-pulse{box-shadow:0 0 #ffd700b3;animation:tokenPulse 1.6s ease-out infinite}@keyframes tokenPulse{0%{box-shadow:0 0 #ffd700a6}70%{box-shadow:0 0 0 12px #ffd70000}to{box-shadow:0 0 #ffd70000}}@keyframes tokenArrive{0%{transform:translateY(-12px) scale(.7)}50%{transform:translateY(2px) scale(1.2)}75%{transform:translateY(-3px) scale(1.05)}to{transform:translateY(0) scale(1)}}@keyframes tokenStep{0%{transform:translateY(0) scale(.9)}35%{transform:translateY(-10px) scale(1.1)}65%{transform:translateY(-8px) scale(1.05)}to{transform:translateY(0) scale(1)}}.board-center{position:absolute;top:calc(100% / var(--board-rows));left:calc(100% / var(--board-cols));bottom:calc(100% / var(--board-rows));right:calc(100% / var(--board-cols));background:radial-gradient(ellipse at 30% 30%,rgba(212,175,55,.05) 0%,transparent 50%),radial-gradient(circle at center,var(--color-bg-secondary) 0%,var(--color-bg-primary) 100%);border-radius:6px;border:1px solid var(--color-border);display:flex;flex-direction:column;padding:.5rem;box-shadow:inset 0 0 40px #00000080;transition:all .2s;overflow:hidden}.center-finances-section{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-height:0;cursor:pointer}.center-finances-section:active{opacity:.9}.board-center.landscape{flex-direction:row}.board-center.landscape .center-finances-section{flex:1;border-right:1px solid rgba(255,255,255,.1);padding-right:.5rem}.center-card-section{display:none}.board-milestones{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:.25rem;padding-top:.25rem;border-top:1px solid rgba(255,255,255,.08)}.board-milestones-label{font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-gold);opacity:.7}.board-milestones-pips{display:flex;justify-content:center;gap:3px;flex-wrap:wrap}.milestone-pip{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--color-border);background:var(--color-bg-secondary);transition:all .4s ease}.milestone-pip.unlocked{border-color:var(--color-gold);background:#d4af3733;box-shadow:0 0 6px #d4af3766}.milestone-pip.escape-pip{border-color:#4ade80;background:#4ade8033;box-shadow:0 0 6px #4ade8080}.milestone-pip-icon{font-size:.65rem}.progress-bars{display:flex;flex-direction:column;gap:4px;width:100%;max-width:220px;margin-top:.25rem}.freedom-progress,.happiness-progress{display:flex;align-items:center;gap:6px;width:100%}.freedom-bar-track,.happiness-bar-track{flex:1;height:6px;background:#ffffff14;border-radius:3px;overflow:hidden}.freedom-bar-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,#ef4444,#eab308,#22c55e);transition:width .6s ease;min-width:2px}.happiness-bar-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,#6b7280,#eab308,#22c55e);transition:width .6s ease;min-width:2px}.freedom-label,.happiness-label{font-size:.6rem;font-weight:700;color:var(--color-text-secondary);white-space:nowrap;text-transform:uppercase;letter-spacing:.05em}.milestone-pip.locked .milestone-pip-icon{font-size:.45rem;opacity:.4}.board-dreams{display:flex;justify-content:center;gap:6px;margin-top:.25rem;padding-top:.25rem;border-top:1px solid rgba(255,255,255,.08)}.dream-progress-card{display:flex;flex-direction:column;align-items:center;gap:1px;padding:4px 8px;background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s;min-width:60px;color:var(--color-text-primary);font-family:inherit}.dream-progress-card:hover:not(:disabled){border-color:var(--color-gold);box-shadow:0 2px 8px #d4af374d}.dream-progress-card.completed{border-color:#4ade80;background:#4ade8026;cursor:default}.dream-card-icon{font-size:.9rem}.dream-card-name{font-size:.55rem;font-weight:700;text-transform:uppercase}.dream-card-cost{font-size:.5rem;color:var(--color-text-secondary)}.dream-progress-card.borrow{border-color:#60a5fa;background:#60a5fa1a}.dream-progress-card.borrow:hover{border-color:#93bbfd;box-shadow:0 2px 8px #60a5fa4d}.dream-card-borrow{font-size:.45rem;color:#60a5fa;font-weight:700;margin-top:2px}.spectator-banner{position:absolute;top:12px;left:50%;transform:translate(-50%);background:#ffd700f2;color:#1a1a1a;padding:8px 16px;border-radius:999px;font-weight:700;font-size:14px;box-shadow:0 4px 12px #0006;z-index:110;pointer-events:none}.card-modal-overlay.spectator-card .card-modal-content{opacity:.85;filter:saturate(.85)}.card-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000bf;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:cardModalIn .25s ease-out}.card-modal-mini-bar{width:100%;max-width:420px;display:flex;align-items:center;gap:8px;padding:6px 10px;background:#0009;border-radius:10px 10px 0 0;border:1px solid rgba(255,255,255,.08);border-bottom:none;flex-shrink:0}.card-modal-cash{font-size:.75rem;font-weight:700;color:var(--color-gold);white-space:nowrap;position:relative}.cash-fx{position:absolute;left:0;bottom:100%;font-size:.85rem;font-weight:800;pointer-events:none;animation:cashFlyUp 1.3s ease-out forwards;text-shadow:0 1px 4px rgba(0,0,0,.6);white-space:nowrap}.cash-fx.positive{color:var(--color-success)}.cash-fx.negative{color:var(--color-danger)}@keyframes cashFlyUp{0%{opacity:1;transform:translateY(0) scale(1)}60%{opacity:1;transform:translateY(-20px) scale(1.1)}to{opacity:0;transform:translateY(-36px) scale(.9)}}.money-particles-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;pointer-events:none;overflow:hidden}.money-particle{position:absolute;bottom:45%;left:50%;font-size:1.4rem;font-weight:900;opacity:0;animation:moneyFlyToTop 1s ease-in forwards;text-shadow:0 2px 8px rgba(0,0,0,.5)}.money-particle.gain{color:var(--color-success)}.money-particle.loss{color:var(--color-danger)}@keyframes moneyFlyToTop{0%{opacity:0;transform:translate(var(--offset-x)) scale(.5)}15%{opacity:1;transform:translate(var(--offset-x)) scale(1.2)}80%{opacity:1;transform:translate(calc(var(--offset-x) * .3),-45vh) scale(.8)}to{opacity:0;transform:translateY(-48vh) scale(.5)}}.card-modal-cashflow{font-size:.8rem;font-weight:600;white-space:nowrap}.card-modal-cashflow.positive{color:var(--color-success)}.card-modal-cashflow.negative{color:var(--color-danger)}.card-modal-content{width:100%;max-width:420px;max-height:calc(100vh - 120px);overflow-y:auto;border-radius:0;-webkit-overflow-scrolling:touch}.card-modal-bottom-bar{width:100%;max-width:420px;display:flex;gap:8px;padding:10px 12px;margin-top:10px;background:#000000b3;border-radius:10px;border:1px solid rgba(255,255,255,.1);flex-shrink:0}.card-modal-bottom-btn{flex:1;min-height:44px;padding:10px 6px;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:var(--color-text-primary);font-size:.8rem;font-weight:700;cursor:pointer;text-align:center;transition:background .15s}.card-modal-bottom-btn:active{background:#ffffff38}@keyframes cardModalIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.board-center h2{font-size:1rem;background:linear-gradient(135deg,var(--color-gold-light) 0%,var(--color-gold) 50%,var(--color-gold-dark) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}.board-center p{font-size:.6rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.15em;margin:0}.center-finances{display:flex;flex-direction:column;gap:.3rem;width:100%;max-width:180px;margin-top:.35rem}.cash-display{display:flex;align-items:center;justify-content:center;gap:.35rem;padding:.35rem .5rem;background:#d4af3726;border:1px solid rgba(212,175,55,.4);border-radius:6px;margin-bottom:.15rem}.cash-display .cash-icon{font-size:.9rem}.cash-display .cash-amount{font-family:Bebas Neue,sans-serif;font-size:1.1rem;color:var(--color-gold);position:relative}.cash-display .cash-label{font-size:.6rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase}.finance-row{display:flex;justify-content:space-between;gap:.5rem}.finance-item{flex:1;display:flex;flex-direction:column;align-items:center;padding:.25rem;background:#ffffff08;border-radius:4px}.finance-item .finance-label{font-size:.65rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.finance-item .finance-value{font-family:Bebas Neue,sans-serif;font-size:.8rem;color:var(--color-text-primary)}.finance-item .finance-value.positive{color:var(--color-success)}.finance-item .finance-value.negative{color:var(--color-danger)}.cashflow-summary{display:flex;flex-direction:column;align-items:center;padding:.35rem;background:#d4af371a;border:1px solid rgba(212,175,55,.3);border-radius:6px;margin-top:.25rem}.cashflow-summary .cashflow-value{font-family:Bebas Neue,sans-serif;font-size:1.1rem}.cashflow-summary .cashflow-value.positive{color:var(--color-success)}.cashflow-summary .cashflow-value.negative{color:var(--color-danger)}.economy-row{display:flex;justify-content:center;gap:.75rem;margin-top:.35rem;padding-top:.35rem;border-top:1px solid rgba(255,255,255,.1)}.economy-item{display:flex;flex-direction:column;align-items:center;gap:1px}.economy-item .economy-icon{font-size:.7rem}.economy-item .economy-value{font-family:Bebas Neue,sans-serif;font-size:.8rem;color:var(--color-gold)}.economy-item .economy-label{font-size:.55rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase}.economy-item.warning .economy-value,.economy-item.warning .economy-label{color:#f59e0b}.tooltip-icon{font-size:.6rem;opacity:.5;cursor:pointer}.economy-item{position:relative}.economy-item[data-tip]:hover:after,.economy-item.tip-active[data-tip]:after{content:attr(data-tip);position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:6px;padding:6px 10px;background:var(--color-bg-primary);color:var(--color-text-primary);font-size:.65rem;font-weight:400;text-transform:none;letter-spacing:0;line-height:1.4;border-radius:6px;border:1px solid var(--color-border);box-shadow:0 4px 12px #0006;white-space:normal;width:max-content;max-width:200px;z-index:100;pointer-events:none;animation:tooltipFadeIn .15s ease-out}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%) translateY(-4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.economy-phase .economy-value{font-size:.7rem!important;letter-spacing:.04em}.economy-phase-boom .economy-value{color:#22c55e}.economy-phase-recession .economy-value{color:#ef4444}.economy-phase-recovery .economy-value{color:#60a5fa}.financials-btn{margin-top:.5rem;min-height:44px;padding:6px 16px;border-radius:6px;background:var(--color-gold);color:#1a1a2e;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;border:none;cursor:pointer;transition:all .15s ease}.financials-btn:active{transform:scale(.96)}.board-tip{margin-top:.3rem;height:1rem;display:flex;align-items:center;justify-content:center}.tip-text{font-size:.75rem;color:var(--color-text-secondary);opacity:.9;text-transform:uppercase;letter-spacing:.05em;animation:tipFadeIn .6s ease}@keyframes tipFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:.5;transform:translateY(0)}}.space-info-box{display:none}@media(min-width:768px){.news-banner{font-size:.7rem;padding:.35rem .75rem;gap:.5rem;border-radius:6px 6px 0 0}.news-impact{display:inline}.board{gap:4px;padding:6px;border-radius:12px}.board-cell{border-radius:4px}.board-cell.has-space:hover{transform:scale(1.05);z-index:10;box-shadow:0 0 10px #d4af374d}.space-icon{font-size:1.8rem}.space-name{font-size:.65rem}.player-token{width:22px;height:22px;font-size:.5rem}.board-center h2{font-size:1.75rem}.board-center p{font-size:.6rem}.center-finances{max-width:240px;gap:.5rem}.cash-display .cash-amount{font-size:1.4rem}.finance-item .finance-label{font-size:.55rem}.finance-item .finance-value{font-size:1rem}.cashflow-summary .cashflow-value{font-size:1.4rem}.economy-item .economy-value{font-size:.9rem}.card-modal-mini-bar,.card-modal-content,.card-modal-bottom-bar{max-width:480px}.card-modal-bottom-btn:hover{background:#ffffff2e}.milestone-pip{width:28px;height:28px}.milestone-pip-icon{font-size:.7rem}.dream-progress-card{padding:6px 12px;min-width:80px}.dream-card-icon{font-size:1.1rem}.dream-card-name{font-size:.55rem}.dream-card-cost{font-size:.45rem}.board-center:hover{background:radial-gradient(ellipse at 30% 30%,rgba(212,175,55,.08) 0%,transparent 50%),radial-gradient(circle at center,var(--color-bg-secondary) 0%,var(--color-bg-primary) 100%)}.space-info-box{display:flex;flex-direction:column;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:220px;padding:.75rem;background:var(--color-bg-primary);border-radius:8px;border:1px solid var(--space-color, var(--color-border));box-shadow:0 8px 24px #00000080;z-index:50;pointer-events:none;animation:infoBoxFadeIn .15s ease-out}.space-info-box:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--space-color);border-radius:8px 8px 0 0}.info-box-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.info-box-icon{font-size:1.5rem}.info-box-name{font-family:Bebas Neue,sans-serif;font-size:1.1rem;color:var(--color-text-primary)}.info-box-description{font-size:.8rem;color:var(--color-text-secondary);line-height:1.4;margin:0 0 .5rem}.info-box-footer{display:flex;justify-content:space-between;align-items:center}.info-box-type{font-size:.6rem;text-transform:uppercase;letter-spacing:.1em;color:var(--space-color);background:#ffffff0d;padding:.15rem .4rem;border-radius:3px}.info-box-position{font-size:.6rem;color:var(--color-text-secondary);opacity:.6}}@media(min-width:1200px){.news-banner{font-size:.8rem;padding:.4rem 1rem;gap:.6rem}.board{gap:6px;padding:12px;border-radius:14px}.board-cell{border-radius:5px}.space-icon{font-size:2.2rem}.space-name{font-size:.75rem}.space-number{display:block;position:absolute;bottom:2px;right:3px;font-size:.5rem;color:var(--color-text-secondary);opacity:.4}.player-token{width:28px;height:28px;font-size:.65rem}.board-center h2{font-size:2.25rem}.board-center p{font-size:.75rem;letter-spacing:.2em}.center-finances{max-width:300px;gap:.6rem}.cash-display{padding:.5rem .75rem}.cash-display .cash-icon{font-size:1.1rem}.cash-display .cash-amount{font-size:1.75rem}.finance-item{padding:.4rem}.finance-item .finance-label{font-size:.6rem}.finance-item .finance-value{font-size:1.15rem}.cashflow-summary{padding:.5rem}.cashflow-summary .cashflow-value{font-size:1.6rem}.economy-row{gap:1rem}.economy-item .economy-icon{font-size:.85rem}.economy-item .economy-value{font-size:1rem}.economy-item .economy-label{font-size:.5rem}.financials-btn{font-size:.65rem;padding:7px 20px}.milestone-pip{width:32px;height:32px}.milestone-pip-icon{font-size:.8rem}.board-milestones{gap:5px}.dream-progress-card{padding:8px 14px;min-width:90px}.dream-card-icon{font-size:1.3rem}.dream-card-name{font-size:.6rem}.dream-card-cost{font-size:.5rem}.space-info-box{width:260px;padding:1rem}.info-box-icon{font-size:1.75rem}.info-box-name{font-size:1.3rem}.info-box-description{font-size:.85rem}}@keyframes pulse{0%,to{box-shadow:0 0 8px var(--color-gold),0 0 16px #d4af3766}50%{box-shadow:0 0 15px var(--color-gold),0 0 30px #d4af3780}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(2deg)}}@keyframes infoBoxFadeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes hintPulse{0%,to{opacity:.4}50%{opacity:.8}}.dice-container{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);cursor:pointer;padding:var(--spacing-xs);border-radius:12px;transition:background .2s}.dice-container:active{background:#ffffff0d}.dice-pair{display:flex;gap:var(--spacing-sm)}.dice{width:36px;height:36px;background:linear-gradient(145deg,#fff,#e8e8e8);border-radius:6px;padding:4px;box-shadow:0 2px 8px #0000004d,inset 0 -1px 2px #0000001a,inset 0 1px 2px #fffc;transition:transform .1s ease}.dice.rolling{animation:diceRoll .12s ease-in-out infinite}.dice-face{width:100%;height:100%;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:1px}.dice-cell{display:flex;align-items:center;justify-content:center}.dice-dot{width:5px;height:5px;background:radial-gradient(circle at 30% 30%,#4a4a4a,#1a1a1a);border-radius:50%;box-shadow:inset 0 1px 1px #0006}.roll-button,.button-shine{display:none}@media(min-width:768px){.dice{width:52px;height:52px;padding:7px;border-radius:10px}.dice-dot{width:8px;height:8px}.roll-button{display:block;position:relative;padding:.875rem 1.75rem;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-bg-primary);background:linear-gradient(135deg,var(--color-gold-light) 0%,var(--color-gold) 50%,var(--color-gold-dark) 100%);border-radius:8px;overflow:hidden;transition:all .2s ease;box-shadow:0 3px 12px #d4af3766}.roll-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #d4af3780}.roll-button:active:not(:disabled){transform:scale(.97)}.button-shine{display:block;position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);transition:left .5s ease}.roll-button:hover:not(:disabled) .button-shine{left:100%}}@media(min-width:1024px){.dice-container{gap:var(--spacing-lg)}.dice-pair{gap:var(--spacing-md)}.dice{width:56px;height:56px;padding:8px}.dice-dot{width:9px;height:9px}.roll-button{padding:1rem 2rem;font-size:.95rem}}@keyframes diceRoll{0%{transform:rotate(0) scale(1)}25%{transform:rotate(-12deg) scale(1.03)}50%{transform:rotate(0) scale(1)}75%{transform:rotate(12deg) scale(1.03)}to{transform:rotate(0) scale(1)}}.dice-pair.doubles .dice{box-shadow:0 0 15px var(--color-gold),0 3px 10px #0000004d,inset 0 -2px 3px #0000001a,inset 0 2px 3px #fffc}.player-finance{display:flex;flex-direction:column;gap:var(--spacing-sm);width:100%}.finance-title{font-size:1rem;text-align:center;margin-bottom:var(--spacing-xs);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.finance-section{display:flex;flex-direction:column;gap:var(--spacing-xs)}.section-label{font-family:Bebas Neue,sans-serif;font-size:.7rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.15em}.finance-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-tertiary);border-radius:4px;font-size:.8rem}.finance-row .label{color:var(--color-text-secondary)}.finance-row .value{font-weight:600;font-family:DM Sans,monospace}.finance-row.total{background:#d4af371a;border:1px solid rgba(212,175,55,.2)}.finance-row.total .value{color:var(--color-gold)}.finance-row.total.negative-bg{background:#e74c3c1a;border:1px solid rgba(231,76,60,.2)}.breakdown-list{display:flex;flex-direction:column;gap:2px;margin-top:var(--spacing-xs);padding-left:var(--spacing-sm);border-left:2px solid var(--color-border)}.breakdown-item{display:flex;justify-content:space-between;align-items:flex-start;padding:var(--spacing-xs);font-size:.7rem;background:#ffffff05;border-radius:3px}.breakdown-item.asset{border-left:2px solid var(--color-success)}.breakdown-item.liability{border-left:2px solid var(--color-danger)}.breakdown-label{display:flex;flex-direction:column;gap:2px;color:var(--color-text-secondary)}.breakdown-label .asset-type{font-size:.55rem;text-transform:uppercase;letter-spacing:.1em;opacity:.6}.breakdown-value{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-weight:600}.breakdown-value .asset-value{color:var(--color-text-primary)}.breakdown-value .asset-cashflow{font-size:.6rem;color:var(--color-success)}.breakdown-value .asset-change{font-size:.55rem;font-weight:700;padding:0 3px;border-radius:3px}.breakdown-value .asset-change.gain{color:#27ae60;background:#27ae6026}.breakdown-value .asset-change.loss{color:#e74c3c;background:#e74c3c26}.breakdown-value.negative{color:var(--color-danger)}.empty-state{font-size:.7rem;color:var(--color-text-secondary);font-style:italic;padding:var(--spacing-xs);opacity:.7}.finance-highlight{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm);border-radius:6px;margin:var(--spacing-xs) 0}.finance-highlight.cashflow{background:linear-gradient(135deg,#2ecc711f,#2ecc710a);border:1px solid rgba(46,204,113,.25)}.finance-highlight.cash{background:linear-gradient(135deg,#3498db1f,#3498db0a);border:1px solid rgba(52,152,219,.25)}.finance-highlight.networth{background:linear-gradient(135deg,#d4af371f,#d4af370a);border:1px solid rgba(212,175,55,.25)}.highlight-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-secondary)}.highlight-value{font-family:Bebas Neue,sans-serif;font-size:1.2rem}.highlight-value.positive{color:var(--color-success)}.highlight-value.negative{color:var(--color-danger)}.value.positive{color:var(--color-success)}.value.negative{color:var(--color-danger)}.freedom-badge{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:linear-gradient(135deg,var(--color-gold) 0%,var(--color-gold-dark) 100%);border-radius:6px;margin-top:var(--spacing-sm);animation:glow 2s ease-in-out infinite}.badge-icon{font-size:1rem}.badge-text{font-family:Bebas Neue,sans-serif;font-size:.85rem;color:var(--color-bg-primary);letter-spacing:.1em}@media(min-width:768px){.player-finance{padding:var(--spacing-md);background:var(--color-bg-secondary);border-radius:12px;border:1px solid var(--color-border);gap:var(--spacing-sm)}.finance-title{font-size:1.05rem}.finance-row{font-size:.82rem}.highlight-value{font-size:1.3rem}}@media(min-width:1024px){.player-finance{gap:var(--spacing-md)}.finance-title{font-size:1.1rem}.section-label{font-size:.75rem}.finance-row{font-size:.85rem;padding:var(--spacing-sm)}.finance-highlight{padding:var(--spacing-md)}.highlight-label{font-size:.75rem}.highlight-value{font-size:1.4rem}}.dream-item-icon{margin-right:4px}.dream-achieved-badge{display:inline-block;font-size:.55rem;background:#4ade8033;color:#4ade80;padding:1px 5px;border-radius:3px;margin-left:6px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.dream-achieved-check{color:#4ade80;font-weight:700;font-size:.9rem}.dream-remaining-cost{color:var(--color-text-secondary);font-size:.75rem}.dream-monthly-expense{display:inline-block;margin-left:6px;color:var(--color-danger, #f87171);font-size:.65rem;font-weight:600}.breakdown-item.dream-item.achieved{opacity:.7;border-left:2px solid #4ade80;padding-left:6px}@keyframes glow{0%,to{box-shadow:0 0 8px #d4af3766}50%{box-shadow:0 0 18px #d4af37b3}}.action-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:flex-end;justify-content:center;z-index:1000;animation:fadeIn .15s ease-out;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.action-modal{width:100%;max-height:85vh;background:var(--color-bg-primary);border-radius:16px 16px 0 0;display:flex;flex-direction:column;box-shadow:0 -10px 40px #00000080;animation:slideUp .25s ease-out}.action-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary);border-radius:16px 16px 0 0;flex-shrink:0}.action-modal-header h2{font-family:Bebas Neue,sans-serif;font-size:1.1rem;margin:0;letter-spacing:.05em}.close-btn{background:var(--color-bg-tertiary);border:none;color:var(--color-text-secondary);width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:1rem}.close-btn:active{background:var(--color-danger);color:#fff}.action-modal-content{flex:1;overflow-y:auto;padding:var(--spacing-md);-webkit-overflow-scrolling:touch}.action-content{display:flex;flex-direction:column;gap:var(--spacing-md)}.action-content.empty{align-items:center;justify-content:center;padding:var(--spacing-xl);text-align:center}.action-description{font-size:.8rem;color:var(--color-text-secondary);line-height:1.4;margin:0}.empty-message{font-size:1rem;color:var(--color-text-primary);margin:0}.empty-hint{font-size:.8rem;color:var(--color-text-secondary);margin:var(--spacing-sm) 0 0}.action-content h4{font-family:Bebas Neue,sans-serif;font-size:.8rem;color:var(--color-text-secondary);margin:var(--spacing-xs) 0;text-transform:uppercase;letter-spacing:.1em}.small-text{font-size:.75rem;color:var(--color-text-secondary);margin:0}.option-card{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm);background:var(--color-bg-secondary);border-radius:8px;border:1px solid rgba(255,255,255,.05);gap:var(--spacing-sm)}.option-card.highlight{border-color:var(--color-gold);background:#d4af371a}.option-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.option-title{font-weight:600;font-size:.85rem;color:var(--color-text-primary)}.option-type{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.option-desc{font-size:.8rem;color:var(--color-text-secondary)}.option-cashflow{font-size:.8rem;color:var(--color-success)}.option-cashflow.negative,.option-payment.negative{color:var(--color-danger)}.option-cashflow.positive{color:var(--color-success)}.sell-card{flex-direction:column;gap:var(--spacing-sm)}.sell-card .option-btn{align-self:stretch;max-width:none;text-align:center}.sell-details{display:flex;flex-direction:column;gap:2px;margin-top:4px;padding:6px 8px;background:#ffffff08;border-radius:6px;border:1px solid rgba(255,255,255,.04)}.sell-detail-row{display:flex;justify-content:space-between;align-items:center}.sell-detail-label{font-size:.75rem;color:var(--color-text-secondary)}.sell-detail-value{font-size:.8rem;font-weight:600;color:var(--color-text-primary)}.sell-detail-value.positive{color:var(--color-success)}.sell-detail-value.negative{color:var(--color-danger)}.sell-detail-net{border-top:1px solid rgba(255,255,255,.06);padding-top:3px;margin-top:2px}.sell-detail-net .sell-detail-label{font-weight:700;color:var(--color-text-primary)}.sell-detail-label .tooltip-icon{font-size:.65rem;opacity:.45;cursor:help;position:relative}.sell-detail-label .tooltip-icon:hover:after{content:attr(data-tip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:6px;padding:6px 10px;background:var(--color-bg-primary);color:var(--color-text-primary);font-size:.65rem;font-weight:400;text-transform:none;letter-spacing:0;line-height:1.4;border-radius:6px;border:1px solid var(--color-border);box-shadow:0 4px 12px #0006;white-space:normal;width:max-content;max-width:200px;z-index:100;pointer-events:none}.option-payment{font-size:.8rem;color:var(--color-text-secondary)}.option-btn{padding:var(--spacing-sm) var(--spacing-md);min-height:44px;border-radius:6px;font-size:.75rem;font-weight:600;white-space:nowrap;transition:all .15s;flex-shrink:0}.option-btn.buy{background:var(--color-success);color:#fff}.option-btn.sell{background:var(--color-payday);color:var(--color-bg-primary)}.option-btn.loan{background:var(--color-info);color:#fff}.option-btn.payoff{background:var(--color-charity);color:#fff}.option-btn:active:not(:disabled){transform:scale(.97)}.option-btn:disabled{opacity:.4;cursor:not-allowed}.debt-warning{padding:var(--spacing-sm);background:#e74c3c1f;border:1px solid rgba(231,76,60,.25);border-radius:6px;font-size:.8rem;color:var(--color-danger)}.debt-summary{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm);background:var(--color-bg-secondary);border-radius:6px}.debt-label{font-size:.8rem;color:var(--color-text-secondary)}.debt-value{font-family:Bebas Neue,sans-serif;font-size:1.2rem;color:var(--color-danger)}.action-modal-footer{padding:var(--spacing-sm) var(--spacing-md);border-top:1px solid var(--color-border);background:var(--color-bg-tertiary);flex-shrink:0}.cash-display{font-size:.8rem;color:var(--color-text-secondary)}@media(min-width:768px){.action-modal-overlay{align-items:center}.action-modal{width:400px;max-width:95vw;max-height:80vh;border-radius:12px;animation:modalPopIn .2s ease-out}.action-modal-header{border-radius:12px 12px 0 0}.action-modal-header h2{font-size:1.2rem}.close-btn:hover{background:var(--color-danger);color:#fff}.option-btn:hover:not(:disabled){filter:brightness(1.1)}}@media(min-width:1024px){.action-modal{width:440px}.action-modal-header h2{font-size:1.25rem}.option-title{font-size:.9rem}.option-btn{font-size:.8rem}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes modalPopIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.action-modal-content::-webkit-scrollbar{width:4px}.action-modal-content::-webkit-scrollbar-track{background:var(--color-bg-secondary)}.action-modal-content::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:2px}.loan-payoff-card{flex-direction:column!important;align-items:stretch!important;gap:10px!important}.loan-payoff-header{display:flex;justify-content:space-between;align-items:center}.loan-payoff-btn{width:100%;text-align:center;padding:10px!important;font-size:.85rem!important}.partial-pay-section{width:100%;padding-top:10px;border-top:1px solid var(--color-border)}.partial-pay-slider-row{width:100%;padding:0 2px}.partial-pay-slider{width:100%;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-bg-tertiary);border-radius:3px;outline:none;cursor:pointer}.partial-pay-slider::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--color-gold);border:2px solid var(--color-bg-primary);box-shadow:0 1px 4px #0006}.partial-pay-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--color-gold);border:2px solid var(--color-bg-primary);box-shadow:0 1px 4px #0006}.partial-pay-labels{display:flex;justify-content:space-between;align-items:baseline;font-size:.7rem;color:var(--color-text-secondary);margin-top:6px}.partial-pay-amount{font-weight:700;color:var(--color-gold);font-size:1rem}.partial-pay-summary{display:flex;justify-content:space-between;font-size:.8rem;margin-top:8px;padding:8px 10px;background:var(--color-bg-tertiary);border-radius:6px}.partial-pay-summary .positive{color:var(--color-success);font-weight:700}.help-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1100;padding:12px;animation:helpFadeIn .2s ease-out}.help-modal{background:var(--card-bg, #1a1a2e);border-radius:16px;width:100%;max-width:560px;max-height:88vh;display:flex;flex-direction:column;color:var(--text-color, #eee);box-shadow:0 12px 48px #00000080;position:relative;overflow:hidden}.help-close{position:absolute;top:12px;right:12px;background:#ffffff14;border:none;font-size:1.1rem;color:inherit;cursor:pointer;opacity:.6;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:opacity .15s,background .15s;z-index:2}.help-close:hover{opacity:1;background:#ffffff26}.help-scroll{flex:1;overflow-y:auto;padding:28px 24px 16px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}.help-scroll::-webkit-scrollbar{width:6px}.help-scroll::-webkit-scrollbar-track{background:transparent}.help-scroll::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.help-heading{font-family:Bebas Neue,sans-serif;font-size:1.8rem;letter-spacing:.04em;margin:0 0 20px;background:linear-gradient(135deg,var(--color-gold-light, #f5d88e) 0%,var(--color-gold, #d4af37) 50%,var(--color-gold-dark, #b8960c) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.help-section{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.06)}.help-section:last-child{border-bottom:none}.help-section h2{font-family:Bebas Neue,sans-serif;font-size:1.2rem;letter-spacing:.04em;margin:0 0 8px;color:var(--color-gold, #d4af37)}.help-section h3{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:12px 0 6px;padding:4px 8px;border-radius:4px;display:inline-block}.help-section h3.green{background:#27ae602e;color:#27ae60}.help-section h3.gold{background:#f39c122e;color:#f39c12}.help-section h3.red{background:#e74c3c2e;color:#e74c3c}.help-section h3.dark{background:#34495e40;color:#95a5a6}.help-section h3.purple{background:#9b59b62e;color:#9b59b6}.help-section p{font-size:.82rem;line-height:1.55;color:#ffffffc7;margin:0 0 8px}.help-section ol,.help-section ul.help-list{margin:0 0 8px;padding-left:20px}.help-section ol li,.help-section ul.help-list li{font-size:.8rem;line-height:1.5;color:#ffffffc7;margin-bottom:4px}.help-list.compact li{margin-bottom:2px}.help-list.tips{list-style:none;padding-left:0}.help-list.tips li{padding:6px 10px;border-radius:6px;background:#ffffff08;margin-bottom:6px}.help-milestones{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.help-milestone{font-size:.7rem;padding:4px 10px;border-radius:20px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);white-space:nowrap}.help-escape{padding:8px 12px;border-radius:8px;background:#d4af371a;border:1px solid rgba(212,175,55,.2);font-weight:500}.help-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;border-top:1px solid rgba(255,255,255,.08);background:#00000026;flex-shrink:0}.help-dont-show{display:flex;align-items:center;gap:8px;font-size:.75rem;color:#ffffff80;cursor:pointer;-webkit-user-select:none;user-select:none}.help-dont-show input[type=checkbox]{accent-color:var(--color-gold, #d4af37);width:15px;height:15px;cursor:pointer}.help-got-it{padding:8px 24px;border:none;border-radius:8px;background:var(--color-gold, #d4af37);color:#1a1a2e;font-weight:700;font-size:.85rem;cursor:pointer;transition:opacity .15s}.help-got-it:hover{opacity:.85}.help-trigger-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:var(--color-gold, #d4af37);width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s;flex-shrink:0}.help-trigger-btn:hover{background:#ffffff26;border-color:var(--color-gold, #d4af37)}.help-expand-btn{display:block;width:100%;padding:10px;margin:4px 0 16px;background:#ffffff0d;border:1px dashed rgba(255,255,255,.15);border-radius:8px;color:var(--color-gold, #d4af37);font-size:.78rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.help-expand-btn:hover{background:#ffffff1a;border-color:var(--color-gold, #d4af37)}.help-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--card-bg, #1a1a2e);color:var(--text-color, #eee);display:flex;flex-direction:column;overflow:hidden;z-index:200}.help-page-header{flex-shrink:0;padding:14px 24px;background:#1a1a2efa;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}.help-page-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;max-width:640px;width:100%;margin:0 auto;padding:32px 24px 60px}.help-page-back{background:none;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:var(--color-gold, #d4af37);font-size:.85rem;font-weight:600;padding:8px 18px;cursor:pointer;transition:background .15s;min-height:44px}.help-page-back:hover{background:#ffffff14}.help-page-content .help-section{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.06)}.help-page-content .help-section:last-child{border-bottom:none}@keyframes helpFadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:480px){.help-modal{max-height:92vh;border-radius:12px}.help-scroll{padding:20px 16px 12px}.help-heading{font-size:1.5rem}.help-section h2{font-size:1.05rem}.help-footer{padding:10px 16px}.help-page-content{padding:20px 16px 40px}}.app{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden;padding-top:var(--safe-area-top)}.app-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:6px var(--spacing-md);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border)}.header-left{flex:1;min-width:0;display:flex;align-items:center}.header-center{text-align:center;flex-shrink:0}.header-logo-btn{background:transparent;border:none;padding:0;margin:0;cursor:pointer;display:block;text-align:inherit;color:inherit;font:inherit;transition:opacity .15s ease,transform .15s ease}.header-logo-btn:hover{opacity:.85;transform:translateY(-1px)}.header-logo-btn:active{transform:translateY(0)}.header-logo-btn:focus-visible{outline:2px solid var(--color-gold, #d4af37);outline-offset:2px;border-radius:4px}.header-right{flex:1;display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0}.app-header h1{font-size:1.1rem;margin:0;background:linear-gradient(135deg,var(--color-gold-light) 0%,var(--color-gold) 50%,var(--color-gold-dark) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.app-header .tagline{display:none}.header-nav-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:var(--color-gold, #d4af37);width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;cursor:pointer;transition:background .15s,border-color .15s;flex-shrink:0;padding:0;line-height:1}.header-nav-btn:hover{background:#ffffff26;border-color:var(--color-gold, #d4af37)}.settings-wrapper{position:relative}.settings-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 8px 24px #00000080;z-index:600;min-width:160px;overflow:hidden}.settings-item{display:block;width:100%;padding:10px 14px;background:none;border:none;color:var(--color-text-primary);font-size:.85rem;text-align:left;cursor:pointer;transition:background .15s}.settings-item:hover{background:#ffffff14}.settings-item+.settings-item{border-top:1px solid var(--color-border)}.settings-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:550}.header-auth{flex-shrink:0;position:relative}.auth-user{display:flex;align-items:center;gap:.4rem}.auth-name{font-size:.7rem;color:var(--color-text-secondary);display:none}.auth-buttons{display:flex;gap:.3rem}.auth-btn{font-size:.75rem;padding:.25rem .5rem;border-radius:4px;border:1px solid var(--color-border);background:var(--color-bg-tertiary);color:var(--color-text-primary);cursor:pointer;white-space:nowrap}.auth-btn:hover{border-color:var(--color-gold)}.auth-submit{background:var(--color-gold-dark);border-color:var(--color-gold-dark);color:#fff}.auth-submit:hover{background:var(--color-gold)}.auth-cancel{opacity:.7}.auth-form-wrap{position:absolute;top:0;right:0;z-index:100;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;padding:.75rem;box-shadow:0 8px 24px #00000080;min-width:240px}.social-auth{display:flex;flex-direction:column;gap:.45rem;margin-bottom:.6rem}.social-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.55rem .75rem;border-radius:6px;border:1px solid var(--color-border);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s ease,transform .05s ease,border-color .15s ease}.social-btn:hover{transform:translateY(-1px)}.social-btn:active{transform:translateY(0)}.social-btn .social-icon{flex-shrink:0}.social-google{background:#fff;color:#1f1f1f;border-color:#dadce0}.social-google:hover{background:#f8f9fa;border-color:#c4c7c5}.social-apple{background:#000;color:#fff;border-color:#000}.social-apple:hover{background:#1a1a1a}.social-divider{position:relative;text-align:center;margin:.35rem 0 .1rem;color:var(--color-text-secondary);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.social-divider:before,.social-divider:after{content:"";position:absolute;top:50%;width:calc(50% - 1.25rem);height:1px;background:var(--color-border)}.social-divider:before{left:0}.social-divider:after{right:0}.social-divider span{background:transparent;padding:0 .5rem}.auth-form{display:flex;flex-direction:column;gap:.4rem}.auth-input{padding:.35rem .5rem;border-radius:4px;border:1px solid var(--color-border);background:var(--color-bg-tertiary);color:var(--color-text-primary);font-size:.75rem;outline:none}.auth-input:focus{border-color:var(--color-gold)}.auth-error{font-size:.75rem;color:var(--color-danger)}.auth-form-actions{display:flex;gap:.3rem;margin-top:.2rem}.auth-form-actions .auth-btn{flex:1;text-align:center}.auth-switch{display:block;margin-top:.4rem;font-size:.75rem;color:var(--color-text-secondary);background:none;border:none;cursor:pointer;text-align:center;width:100%}.auth-switch:hover{color:var(--color-gold)}.toast-message{position:fixed;top:50px;left:50%;transform:translate(-50%);padding:var(--spacing-xs) var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-gold);border-radius:8px;color:var(--color-text-primary);font-size:.8rem;z-index:500;box-shadow:0 4px 20px #00000080;animation:toastSlideIn .3s ease-out;max-width:90vw;text-align:center}@keyframes toastSlideIn{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.roll-popup{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:450;pointer-events:none;background:radial-gradient(ellipse at center,rgba(0,0,0,.6) 0%,rgba(0,0,0,.3) 50%,transparent 70%);animation:rollPopupLife 1.5s ease forwards}.roll-popup-value{font-size:4rem;font-weight:900;background:linear-gradient(135deg,var(--color-gold-light) 0%,var(--color-gold) 50%,var(--color-gold-dark) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:none;filter:drop-shadow(0 2px 8px rgba(212,175,55,.5));line-height:1}.roll-popup-label{font-size:1.1rem;font-weight:700;color:var(--color-text-primary);margin-top:4px;text-shadow:0 2px 8px rgba(0,0,0,.8)}@keyframes rollPopupLife{0%{opacity:0;transform:scale(.5)}15%{opacity:1;transform:scale(1.1)}25%{transform:scale(1)}70%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8) translateY(-20px)}}.milestone-flash{position:fixed;top:0;left:0;right:0;z-index:600;display:flex;align-items:center;justify-content:center;gap:12px;padding:10px 20px;background:linear-gradient(90deg,#d4af3726,#d4af3740,#d4af3726);border-bottom:2px solid var(--color-gold);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:milestoneFlashIn .4s ease-out,milestoneFlashOut .6s ease-in 4.4s forwards}.milestone-flash-icon{font-size:1.6rem;animation:milestoneFlashPulse 1s ease-in-out infinite}.milestone-flash-text{display:flex;flex-direction:column;gap:1px}.milestone-flash-text strong{font-size:.85rem;color:var(--color-gold);letter-spacing:.03em}.milestone-flash-text span{font-size:.7rem;color:var(--color-text-secondary)}@keyframes milestoneFlashIn{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes milestoneFlashOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100%)}}@keyframes milestoneFlashPulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.game-container{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.board-area{flex:1;display:flex;align-items:center;justify-content:center;padding:4px;min-height:0;min-width:0;overflow:hidden;max-height:100%}.dice-logic-container,.desktop-controls-panel{display:none}.mobile-bottom-bar{flex-shrink:0;display:flex;flex-direction:column;background:var(--color-bg-secondary);border-top:1px solid var(--color-border);padding-bottom:env(safe-area-inset-bottom,0)}.mobile-action-bar{display:flex;gap:6px;padding:8px 12px;align-items:center;justify-content:center}.mobile-action-bar .action-btn{min-width:48px;min-height:44px;padding:5px 6px;background:var(--color-bg-tertiary);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:var(--color-text-primary);transition:all .15s}.mobile-action-bar .action-btn .btn-icon{font-size:1.1rem}.mobile-action-bar .action-btn .btn-label{font-size:.7rem;font-weight:700;color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.02em}.mobile-action-bar .action-btn:active:not(:disabled){transform:scale(.92);background:var(--color-bg-primary)}.mobile-action-bar .roll-btn{flex:1;max-width:120px;height:44px;background:linear-gradient(135deg,var(--color-gold-light) 0%,var(--color-gold) 50%,var(--color-gold-dark) 100%);border-radius:10px;color:var(--color-bg-primary);font-weight:700;font-size:.9rem;display:flex;align-items:center;justify-content:center;gap:4px;box-shadow:0 2px 10px #d4af3766}.mobile-action-bar .roll-btn:active:not(:disabled){transform:scale(.97)}.mobile-finance-drawer{position:fixed;bottom:0;left:0;right:0;background:var(--color-bg-primary);border-top:2px solid var(--color-gold);border-radius:16px 16px 0 0;transform:translateY(100%);transition:transform .3s ease-out;z-index:200;max-height:100vh;display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom,0)}.mobile-finance-drawer.open{transform:translateY(0)}.mobile-finance-drawer .drawer-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);flex-shrink:0}.mobile-finance-drawer .drawer-title{font-family:Bebas Neue,sans-serif;font-size:1rem;color:var(--color-gold)}.mobile-finance-drawer .drawer-close{height:44px;padding:0 14px;border-radius:8px;background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-gold);display:flex;align-items:center;justify-content:center;gap:4px;font-size:.8rem;font-weight:600;cursor:pointer}.mobile-finance-drawer .drawer-close:active{background:var(--color-gold);color:var(--color-bg-primary)}.mobile-finance-drawer .drawer-content{flex:1;overflow-y:auto;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md)}@media(min-width:768px){.app-header{padding:var(--spacing-sm) var(--spacing-lg)}.app-header h1{font-size:1.75rem}.app-header .tagline{display:block;font-size:.7rem;color:var(--color-text-secondary);letter-spacing:.15em;text-transform:uppercase}.auth-name{display:inline}.mobile-bottom-bar{display:none!important}.mobile-finance-drawer{position:fixed;top:50%;left:50%;bottom:auto;transform:translate(-50%,-50%) scale(.9);opacity:0;max-width:480px;max-height:95vh;border-radius:16px;box-shadow:0 8px 40px #0009;z-index:1000;pointer-events:none}.mobile-finance-drawer.open{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}.mobile-finance-drawer:before{content:"";position:fixed;top:-100vh;left:-100vw;right:-100vw;bottom:-100vh;background:#00000080;z-index:-1;opacity:0;transition:opacity .3s ease}.mobile-finance-drawer.open:before{opacity:1}.mobile-finance-drawer .drawer-close:hover{background:var(--color-gold);color:var(--color-bg-primary)}.dice-logic-container{display:none}.game-container{flex-direction:row;padding:var(--spacing-xs) var(--spacing-sm);gap:var(--spacing-sm);justify-content:flex-start;align-items:stretch;height:100%;width:100%}.desktop-controls-panel{display:flex;width:220px;flex-shrink:0}.board-area{flex:1;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;overflow:hidden;max-height:100%}}@media(min-width:1024px){.app-header{padding:var(--spacing-sm) var(--spacing-xl)}.app-header h1{font-size:2rem}.app-header .tagline{font-size:.75rem;letter-spacing:.2em}.game-container{padding:var(--spacing-xs) var(--spacing-sm);gap:var(--spacing-md)}.desktop-controls-panel{width:240px}}.desktop-panel{background:var(--color-bg-secondary);border-radius:12px;border:1px solid var(--color-border);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md);height:100%;width:100%}.desktop-roll-section{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-tertiary);border-radius:10px}.end-turn-btn{background:linear-gradient(135deg,#00b894,#00a36a)!important;color:#fff!important;font-weight:800;letter-spacing:.4px;border:none;cursor:pointer;transition:transform .1s ease,box-shadow .1s ease;animation:endTurnPulse 1.4s ease-in-out infinite}.end-turn-btn:hover{transform:translateY(-1px);box-shadow:0 4px 14px #00b89473}.end-turn-btn:active{transform:translateY(0)}.end-turn-btn-desktop{width:100%;padding:12px 16px;border-radius:10px;font-size:1rem}@keyframes endTurnPulse{0%,to{box-shadow:0 0 #00b8948c}50%{box-shadow:0 0 0 10px #00b89400}}.panel-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.panel-section-title{font-size:.7rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.1em;padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--color-border)}.info-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm);background:var(--color-bg-tertiary);border-radius:6px}.info-row .label{font-size:.7rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.info-row .value{font-family:Bebas Neue,sans-serif;font-size:1.2rem;color:var(--color-gold)}.current-space-display{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-bg-tertiary);border-radius:6px;border-left:3px solid var(--space-color, var(--color-gold))}.current-space-display .space-icon{font-size:1.25rem}.current-space-display .space-info{flex:1;min-width:0}.current-space-display .space-name{font-family:Bebas Neue,sans-serif;font-size:.9rem;color:var(--color-text-primary);display:block}.current-space-display .space-desc{font-size:.65rem;color:var(--color-text-secondary);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.desktop-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xs)}.desktop-actions .action-btn{padding:var(--spacing-sm);background:var(--color-bg-tertiary);border-radius:8px;color:var(--color-text-primary);display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.65rem;text-transform:uppercase;transition:all .2s}.desktop-actions .action-btn:hover:not(:disabled){background:var(--color-bg-primary);transform:translateY(-2px)}.desktop-actions .action-btn .btn-icon{font-size:1.1rem}.desktop-actions .action-btn .btn-text{color:var(--color-text-secondary)}.new-game-btn{width:100%;padding:var(--spacing-sm);background:transparent;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-secondary);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);transition:all .2s;margin-top:auto}.new-game-btn:hover{background:#d4af371a;border-color:var(--color-gold);color:var(--color-gold)}.landing-page{overflow-y:auto;overflow-x:hidden}.landing-hero{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem var(--spacing-lg) 2rem;gap:.5rem;position:relative}.landing-title{font-family:Bebas Neue,sans-serif;font-size:3.5rem;letter-spacing:.08em;background:linear-gradient(135deg,var(--color-gold-light) 0%,var(--color-gold) 50%,var(--color-gold-dark) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;line-height:1}.landing-tagline{font-size:.85rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.2em;margin:0}.landing-subtitle{font-size:.9rem;color:var(--color-text-secondary);max-width:400px;line-height:1.5;margin:.5rem 0 0}.landing-actions{display:flex;flex-direction:column;gap:.6rem;margin-top:1.5rem;width:100%;max-width:260px}.landing-btn{padding:.75rem 1.5rem;font-family:Bebas Neue,sans-serif;font-size:1.15rem;letter-spacing:.1em;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.landing-btn.primary{background:linear-gradient(135deg,var(--color-gold-light) 0%,var(--color-gold) 50%,var(--color-gold-dark) 100%);color:var(--color-bg-primary);box-shadow:0 4px 15px #d4af374d}.landing-btn.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #d4af3766}.landing-btn.secondary{background:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border)}.landing-btn.secondary:hover{border-color:var(--color-gold);transform:translateY(-1px)}.landing-features{display:flex;gap:1.5rem;margin-top:2rem;flex-wrap:wrap;justify-content:center}.landing-feature{display:flex;flex-direction:column;align-items:center;gap:.3rem}.landing-feature .feature-icon{font-size:1.5rem}.landing-feature .feature-text{font-size:.7rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}@media(min-width:768px){.landing-title{font-size:5rem}.landing-subtitle{font-size:1rem;max-width:480px}.landing-actions{flex-direction:column;max-width:300px;align-items:stretch}.landing-btn{min-width:160px}.landing-features{gap:2.5rem;margin-top:3rem}.landing-feature .feature-icon{font-size:2rem}.landing-feature .feature-text{font-size:.75rem}}.landing-section{width:100%;padding:3rem var(--spacing-lg);display:flex;flex-direction:column;align-items:center;text-align:center}.landing-section-alt{background:var(--color-bg-secondary)}.landing-section-title{font-family:Bebas Neue,sans-serif;font-size:1.6rem;letter-spacing:.06em;background:linear-gradient(135deg,var(--color-gold-light) 0%,var(--color-gold) 50%,var(--color-gold-dark) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 1.5rem}.landing-steps{display:flex;flex-direction:column;gap:1.25rem;max-width:700px;width:100%}.landing-step{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:10px;padding:1.25rem;text-align:left;display:flex;flex-direction:column;gap:.35rem}.landing-section-alt .landing-step{background:var(--color-bg-tertiary)}.step-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,var(--color-gold-light),var(--color-gold-dark));color:var(--color-bg-primary);font-family:Bebas Neue,sans-serif;font-size:.9rem;flex-shrink:0;margin-bottom:.15rem}.landing-step h3{font-family:Bebas Neue,sans-serif;font-size:1.05rem;color:var(--color-text-primary);letter-spacing:.04em;margin:0}.landing-step p{font-size:.8rem;color:var(--color-text-secondary);line-height:1.5;margin:0}.landing-pitch{font-size:.95rem;color:var(--color-text-secondary);line-height:1.65;max-width:560px;margin:0 0 1.5rem}.landing-pitch strong{color:var(--color-gold)}.landing-values{display:flex;flex-direction:column;gap:1rem;max-width:700px;width:100%}.landing-value{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:10px;padding:1.25rem;text-align:left}.value-icon{font-size:1.5rem;display:block;margin-bottom:.4rem}.landing-value h3{font-family:Bebas Neue,sans-serif;font-size:1rem;color:var(--color-text-primary);letter-spacing:.04em;margin:0 0 .25rem}.landing-value p{font-size:.8rem;color:var(--color-text-secondary);line-height:1.5;margin:0}.landing-testimonials{display:grid;grid-template-columns:1fr;gap:1rem;max-width:700px;width:100%}.landing-quote{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:10px;padding:1.25rem;text-align:left;margin:0}.landing-quote p{font-size:.9rem;color:var(--color-text-primary);line-height:1.5;margin:0 0 .5rem;font-style:italic}.landing-quote cite{font-size:.75rem;color:var(--color-gold);font-style:normal;letter-spacing:.03em}@media(min-width:768px){.landing-section{padding:4rem var(--spacing-xl)}.landing-section-title{font-size:2rem;margin-bottom:2rem}.landing-steps{flex-direction:row}.landing-step{flex:1}.landing-pitch{font-size:1.05rem}.landing-values{flex-direction:row}.landing-value{flex:1}.landing-testimonials{grid-template-columns:1fr 1fr}}.persona-select-screen{flex:1;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md);overflow-y:auto;gap:var(--spacing-lg)}.persona-intro{text-align:center}.persona-intro h2{font-family:Bebas Neue,sans-serif;font-size:1.5rem;color:var(--color-gold);margin-bottom:var(--spacing-xs)}.persona-intro p{color:var(--color-text-secondary);font-size:.85rem}.persona-roll-section{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-bg-secondary);border-radius:12px;border:1px solid var(--color-border)}.roll-hint{font-size:.75rem;color:var(--color-text-secondary);text-align:center}.persona-roll-btn{padding:var(--spacing-md) var(--spacing-xl);font-family:Bebas Neue,sans-serif;font-size:1.2rem;letter-spacing:.1em;background:linear-gradient(135deg,var(--color-gold-light) 0%,var(--color-gold) 50%,var(--color-gold-dark) 100%);color:var(--color-bg-primary);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px #d4af374d}.persona-roll-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #d4af3766}.persona-roll-btn:active{transform:scale(.98)}.persona-roll-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.persona-gallery{width:100%;max-width:1100px;margin-top:1.5rem}.persona-gallery-title{text-align:center;font-size:.95rem;text-transform:uppercase;letter-spacing:.15em;color:var(--color-text-secondary);margin:0 0 1rem}.persona-gallery-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.persona-gallery-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 10px 12px;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:12px;transition:all .3s ease}.persona-gallery-card.selected{border-color:var(--color-gold);background:#d4af3726;box-shadow:0 0 16px #d4af3759;transform:scale(1.04)}.persona-gallery-emoji{font-size:2.4rem;line-height:1}.persona-gallery-name{font-size:1rem;font-weight:700;color:var(--color-text-primary);text-align:center;letter-spacing:.02em}.persona-gallery-role{font-size:.8rem;color:var(--color-text-secondary);text-align:center;line-height:1.2;margin-bottom:4px}.persona-gallery-stats{width:100%;display:flex;flex-direction:column;gap:3px;margin-top:4px;padding-top:8px;border-top:1px solid var(--color-border)}.pg-stat{display:flex;justify-content:space-between;align-items:baseline;gap:6px;font-size:.75rem}.pg-stat-label{color:var(--color-text-secondary);font-size:.7rem;text-transform:uppercase;letter-spacing:.04em}.pg-stat-value{color:var(--color-text-primary);font-weight:600;font-variant-numeric:tabular-nums}.pg-stat-value.positive{color:#2ecc71}.pg-stat-value.negative{color:#ff6b6b}@media(max-width:900px){.persona-gallery-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.persona-gallery-grid{grid-template-columns:repeat(2,1fr);gap:10px}.persona-gallery-card{padding:12px 8px 10px}.persona-gallery-emoji{font-size:2rem}.persona-gallery-name{font-size:.9rem}.persona-gallery-role{font-size:.72rem}.pg-stat{font-size:.7rem}.pg-stat-label{font-size:.62rem}}@media(max-width:380px){.persona-gallery-grid{grid-template-columns:1fr}}.persona-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-md);width:100%;max-width:1200px}.persona-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:10px;padding:var(--spacing-md);text-align:left;transition:all .2s ease;cursor:pointer}.persona-card:hover{border-color:var(--color-gold);transform:translateY(-2px);box-shadow:0 4px 20px #d4af3733}.persona-card:active{transform:scale(.98)}.persona-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.persona-emoji{font-size:1.5rem}.persona-name{font-family:Bebas Neue,sans-serif;font-size:1rem;color:var(--color-gold);letter-spacing:.05em}.persona-desc{font-size:.75rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);line-height:1.4}.persona-stats{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.persona-stats .stat{font-size:.7rem;padding:2px 8px;background:var(--color-bg-tertiary);border-radius:4px;color:var(--color-text-primary)}.persona-stats .stat.negative{color:var(--color-danger)}.persona-stats .stat-label{display:block;font-size:.55rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1px}.persona-reveal-modal{text-align:center;max-width:380px;padding:2rem 1.5rem}.persona-reveal-emoji{font-size:3.5rem;display:block;margin-bottom:.5rem}.persona-reveal-modal h2{font-family:Bebas Neue,sans-serif;font-size:1.6rem;letter-spacing:.03em;margin:0 0 .25rem}.persona-reveal-desc{color:var(--color-text-secondary);font-size:.85rem;margin:0 0 1.2rem}.persona-reveal-stats{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:1.5rem}.reveal-stat{background:#ffffff0a;border:1px solid var(--color-border);border-radius:8px;padding:.5rem}.reveal-stat-label{display:block;font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:2px}.reveal-stat-value{font-size:.95rem;font-weight:600;color:var(--color-accent, #4ecdc4)}.reveal-stat-value.negative{color:var(--color-danger, #ff6b6b)}.current-persona{display:inline;font-size:.7rem;color:var(--color-text-secondary);white-space:nowrap;margin-left:.5rem}@media(min-width:768px){.current-persona{display:inline}.persona-intro h2{font-size:2rem}.persona-intro p{font-size:1rem}.persona-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.persona-card{padding:var(--spacing-lg)}.persona-name{font-size:1.1rem}.persona-desc{font-size:.85rem}}.cloud-save-actions{display:flex;gap:6px;margin-top:8px}.save-btn{flex:1;padding:6px 4px;font-size:.7rem;font-weight:600;border:1px solid var(--border-color, rgba(255,255,255,.15));border-radius:8px;background:#ffffff0f;color:inherit;cursor:pointer;transition:background .15s}.save-btn:hover{background:#ffffff1f}.cloud-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.cloud-modal{background:var(--card-bg, #1a1a2e);border-radius:16px;padding:24px;width:100%;max-width:420px;max-height:80vh;overflow-y:auto;position:relative;color:var(--text-color, #eee);box-shadow:0 8px 32px #0006}.cloud-modal h3{margin:0 0 16px;font-family:Bebas Neue,sans-serif;font-size:1.5rem;letter-spacing:.05em}.cloud-modal-close{position:absolute;top:12px;right:12px;background:none;border:none;font-size:1.2rem;color:inherit;cursor:pointer;opacity:.6}.cloud-modal-close:hover{opacity:1}.cloud-input{width:100%;padding:10px 12px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#0000004d;color:inherit;font-size:.9rem;margin-bottom:12px;box-sizing:border-box}.cloud-input::placeholder{color:#fff6}.cloud-input:focus{outline:none;border-color:#ffffff80}.cloud-action-btn{width:100%;padding:10px;border:none;border-radius:8px;background:var(--accent-color, #4361ee);color:#fff;font-weight:600;font-size:.9rem;cursor:pointer;transition:opacity .15s}.cloud-action-btn:hover{opacity:.85}.cloud-action-btn:disabled{opacity:.4;cursor:not-allowed}.cloud-empty{text-align:center;opacity:.5;padding:24px 0}.cloud-list{list-style:none;padding:0;margin:0}.cloud-list-btn{display:flex;justify-content:space-between;align-items:center;width:100%;padding:10px 12px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0a;color:inherit;cursor:pointer;margin-bottom:6px;transition:background .15s}.cloud-list-btn:hover{background:#ffffff1a}.cloud-list-name{font-weight:600}.cloud-list-date{font-size:.75rem;opacity:.5}.cloud-score-submit{display:flex;gap:8px;margin-bottom:16px}.cloud-score-submit .cloud-input{margin-bottom:0}.cloud-score-submit .cloud-action-btn{width:auto;white-space:nowrap}.cloud-leaderboard{list-style:none;padding:0;margin:0}.cloud-lb-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06)}.cloud-lb-rank{font-weight:700;min-width:30px;font-family:Bebas Neue,sans-serif;font-size:1.1rem}.cloud-lb-name{flex:1}.cloud-lb-worth{font-weight:600;color:var(--positive-color, #4ade80)}.activity-log{margin-top:10px;padding:8px 10px;background:#ffffff0a;border-radius:8px;border:1px solid rgba(255,255,255,.06)}.activity-log-title{margin:0 0 6px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.activity-empty{margin:0;font-size:.7rem;color:var(--color-text-secondary);opacity:.5;font-style:italic}.activity-entry{font-size:.7rem;line-height:1.4;padding:3px 0;color:var(--color-text-secondary);border-bottom:1px solid rgba(255,255,255,.04);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-entry:last-child{border-bottom:none}.activity-entry:first-child{color:var(--color-text)}.autosave-indicator{display:block;text-align:center;font-size:.65rem;color:var(--color-text-secondary);opacity:.7;margin-top:.5rem}.register-wall-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:9999;padding:var(--spacing-md)}.register-wall{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg, 16px);padding:2rem;max-width:400px;width:100%;text-align:center}.register-wall h2{font-size:1.5rem;margin:0 0 .5rem;background:linear-gradient(135deg,var(--color-gold-light) 0%,var(--color-gold) 50%,var(--color-gold-dark) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.register-wall p{color:var(--color-text-secondary);margin:0 0 1.5rem;font-size:.95rem;line-height:1.5}.register-wall-actions{display:flex;gap:.75rem;justify-content:center}.register-wall-actions .landing-btn{min-width:120px}.landing-btn.disabled{opacity:.35;cursor:not-allowed;pointer-events:none;font-size:.8rem}.lobby-screen{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:var(--spacing-lg);overflow-y:auto;-webkit-overflow-scrolling:touch}.lobby-placeholder{text-align:center;max-width:400px;margin:auto 0}.lobby-placeholder h2{font-size:1.5rem;margin-bottom:.5rem}.lobby-placeholder p{color:var(--color-text-secondary);margin-bottom:1.5rem}.queue-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-gold);border-radius:50%;margin:1rem auto;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.queue-info{color:var(--color-text-secondary);font-size:.85rem;margin-bottom:1rem}.lobby-preferences{max-width:500px;width:100%;padding:var(--spacing-lg);margin:auto 0}.lobby-preferences h2{text-align:center;margin-bottom:1.5rem;font-size:1.4rem}.pref-group{margin-bottom:1.25rem}.pref-group label{display:block;font-size:.8rem;color:var(--color-text-secondary);margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.05em}.pref-options{display:flex;gap:.5rem}.pref-btn{flex:1;padding:.6rem .5rem;border:1px solid var(--color-border);border-radius:var(--radius-md, 8px);background:var(--color-bg-secondary);color:var(--color-text);font-size:.8rem;cursor:pointer;transition:all .15s}.pref-btn.active{border-color:var(--color-gold);background:#ffd7001a;color:var(--color-gold)}.lobby-actions{display:flex;gap:.75rem;justify-content:center;margin-top:1.5rem}.queue-count{text-align:center;color:var(--color-text-secondary);font-size:.8rem;margin-top:.75rem}.queue-hint{text-align:center;color:var(--color-text-secondary);font-size:.7rem;opacity:.6;margin-top:.4rem;font-style:italic}.pref-check{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--color-text-secondary);margin-top:1rem;cursor:pointer}.pref-check input[type=checkbox]{accent-color:var(--color-gold);width:16px;height:16px;flex-shrink:0}.lobby-searching{text-align:center;width:100%;max-width:700px;padding:var(--spacing-lg)}.lobby-searching h2{font-size:1.5rem;margin-bottom:.5rem}.searching-content{margin-top:2rem;text-align:left}.searching-personas h3,.lobby-tips h3{font-size:1rem;margin-bottom:.75rem;color:var(--color-gold)}.searching-personas{margin-top:1.5rem}.searching-personas .persona-grid{grid-template-columns:repeat(2,1fr)}.searching-personas .persona-preview{pointer-events:none;opacity:.85}.lobby-tips{margin-bottom:1.5rem}.tip-display{font-size:.85rem;color:var(--color-text-secondary);padding:.6rem .75rem;background:var(--color-bg-secondary);border-radius:var(--radius-md, 8px);border-left:3px solid var(--color-gold);min-height:2.4em;transition:opacity .4s ease}.tip-visible{opacity:1}.tip-hidden{opacity:0}.match-found{max-width:700px;width:100%;padding:var(--spacing-lg);text-align:center}.match-found h2{font-size:1.4rem;margin-bottom:1rem}.match-found h3{margin:1.5rem 0 .75rem;font-size:1rem}.match-players{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.match-player-card{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem 1.25rem;border:1px solid var(--color-border);border-radius:var(--radius-md, 8px);background:var(--color-bg-secondary)}.match-player-name{font-weight:600;font-size:.9rem}.match-player-rating{font-size:.75rem;color:var(--color-text-secondary)}.match-player-league{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;padding:.1rem .5rem;border-radius:4px}.league-bronze{background:#8b4513;color:#fff}.league-silver{background:gray;color:#fff}.league-gold{background:#daa520;color:#000}.league-platinum{background:#4169e1;color:#fff}.league-diamond{background:#00ced1;color:#000}.league-master{background:#9400d3;color:#fff}.persona-grid.compact .persona-card{padding:.5rem}.persona-grid.compact .persona-desc{display:none}.mp-turn-bar{display:flex;gap:2px;padding:0 var(--spacing-md);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);overflow-x:auto}.mp-player-tab{flex:1;display:flex;flex-direction:column;align-items:center;padding:.4rem .5rem;font-size:.7rem;opacity:.5;border-bottom:2px solid transparent;transition:all .2s;min-width:0}.mp-player-tab.active-turn{opacity:1;border-bottom-color:var(--color-gold)}.mp-player-tab.is-me .mp-player-name{font-weight:700}.mp-player-tab.eliminated{opacity:.25;text-decoration:line-through}.mp-player-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.mp-player-cash{font-size:.65rem;color:var(--color-text-secondary)}.turn-timer{font-size:1rem;font-weight:700;color:var(--color-text);padding:.2rem .5rem;border-radius:4px;background:var(--color-bg-secondary);border:1px solid var(--color-border)}.turn-timer.timer-urgent{color:#ef4444;border-color:#ef4444;animation:pulse-urgent .5s ease-in-out infinite alternate}@keyframes pulse-urgent{0%{opacity:1}to{opacity:.5}}.your-turn-badge{display:inline-block;padding:.4rem 1rem;background:#ffd70026;color:var(--color-gold);border:1px solid var(--color-gold);border-radius:var(--radius-md, 8px);font-weight:600;font-size:.85rem;text-align:center}.waiting-badge{display:inline-block;padding:.4rem 1rem;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md, 8px);font-size:.85rem;color:var(--color-text-secondary);text-align:center}.mp-roll-btn{width:100%;margin:.75rem 0}.mp-opponents{margin-top:.75rem}.mp-opponents h4{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.mp-opponent{display:flex;align-items:center;gap:.5rem;padding:.35rem .5rem;border-radius:4px;font-size:.75rem;margin-bottom:.25rem}.mp-opponent.active-turn{background:#ffd70014}.mp-opp-name{flex:1;font-weight:500}.mp-opp-cash{font-weight:600}.mp-opp-cf{font-size:.65rem}.mp-opp-cf.positive{color:var(--positive-color, #4ade80)}.mp-opp-cf.negative{color:var(--negative-color, #f87171)}.mp-status,.mp-result-modal{text-align:center}.mp-result-modal h2{margin-bottom:1rem}.mp-result-winner{margin-bottom:1.5rem}.mp-result-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .75rem;margin-bottom:.4rem;border-radius:var(--radius-md, 8px);background:var(--color-bg-secondary);border:1px solid var(--color-border)}.mp-result-row.winner{border-color:var(--color-gold);background:#ffd70014}.mp-result-name{font-weight:600}.mp-result-rating{font-size:.8rem}.mp-result-rating .positive{color:var(--positive-color, #4ade80)}.mp-result-rating .negative{color:var(--negative-color, #f87171)}.mp-result-league{font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;padding:.15rem .5rem;border-radius:4px}.celebration-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e0;display:flex;align-items:center;justify-content:center;z-index:600;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:celebrationFadeIn .4s ease-out;cursor:pointer}.celebration-content{text-align:center;position:relative;z-index:2;animation:celebrationBounceIn .6s cubic-bezier(.34,1.56,.64,1)}.celebration-icon{font-size:5rem;display:block;margin-bottom:1rem;animation:celebrationIconPulse 1.2s ease-in-out infinite}.celebration-title{font-family:Bebas Neue,sans-serif;font-size:2.5rem;color:var(--color-gold);margin:0 0 .3rem;letter-spacing:.04em}.celebration-subtitle{font-size:1.1rem;color:var(--color-text-primary);font-weight:600;margin:0 0 .5rem}.celebration-desc{font-size:.85rem;color:var(--color-text-secondary);max-width:360px;margin:0 auto 1.5rem;line-height:1.5}.celebration-dismiss-btn{padding:.75rem 2.5rem;font-family:Bebas Neue,sans-serif;font-size:1.4rem;letter-spacing:.08em;color:#fff;background:linear-gradient(135deg,var(--color-gold-light) 0%,var(--color-gold) 100%);border:none;border-radius:12px;cursor:pointer;transition:all .2s;box-shadow:0 4px 16px #d4af3766}.celebration-dismiss-btn:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 6px 24px #d4af3780}.celebration-dismiss-btn:active{transform:scale(.97)}.celebration-escape .celebration-dismiss-btn{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 16px #22c55e66}.celebration-escape .celebration-dismiss-btn:hover{box-shadow:0 6px 24px #22c55e80}.celebration-escape .celebration-title{color:#4ade80;text-shadow:0 0 30px rgba(74,222,128,.5)}.celebration-escape .celebration-icon{filter:drop-shadow(0 0 20px rgba(74,222,128,.6))}.celebration-particles{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;overflow:hidden}.celebration-particle{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--color-gold);opacity:0;animation:celebrationParticleBurst 1.5s ease-out forwards;animation-delay:calc(var(--particle-i) * .06s)}.celebration-escape .celebration-particle{background:#4ade80}@keyframes celebrationFadeIn{0%{opacity:0}to{opacity:1}}@keyframes celebrationBounceIn{0%{opacity:0;transform:scale(.5)}60%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes celebrationIconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.celebration-particle{--angle: calc(var(--particle-i) * 30deg);transform-origin:center}@keyframes celebrationParticleBurst{0%{opacity:1;transform:rotate(var(--angle)) translateY(0) scale(1)}to{opacity:0;transform:rotate(var(--angle)) translateY(-180px) scale(0)}}.dream-select-modal{max-width:700px!important;width:95vw!important;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.dream-select-modal h2{font-family:Bebas Neue,sans-serif;font-size:2rem;color:var(--color-gold);text-align:center;margin:0 0 .25rem}.dream-select-subtitle{text-align:center;font-size:.8rem;color:var(--color-text-secondary);margin:0 0 1rem}.dream-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}.dream-option{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;background:var(--color-bg-tertiary);border:2px solid var(--color-border);border-radius:10px;cursor:pointer;transition:all .2s;text-align:center}.dream-option:hover:not(:disabled){border-color:var(--color-gold);transform:translateY(-2px)}.dream-option.selected{border-color:var(--color-gold);background:#d4af3726;box-shadow:0 0 12px #d4af3766}.dream-option:disabled:not(.selected){opacity:.4;cursor:not-allowed}.dream-opt-icon{font-size:1.5rem}.dream-opt-name{font-size:.7rem;font-weight:700;color:var(--color-text-primary)}.dream-opt-cost{font-family:Bebas Neue,sans-serif;font-size:.9rem;color:var(--color-gold)}.dream-opt-income{font-size:.55rem;color:var(--color-success, #4ade80);font-weight:600}.dream-opt-expense{font-size:.55rem;color:var(--color-danger, #f87171);font-weight:600}.dream-opt-desc{font-size:.55rem;color:var(--color-text-secondary);font-style:italic}.dream-confirm-btn{display:block;margin:12px auto 0;min-width:200px;flex-shrink:0}.activity-log-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.activity-log-header .activity-log-title{margin:0}.history-toggle-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:6px;color:#ccc;font-size:.85rem;cursor:pointer;padding:2px 7px;transition:background .2s,color .2s}.history-toggle-btn:hover{background:#ffffff2e;color:#fff}.history-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;z-index:9000;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.history-modal{background:#1a1d24;border:1px solid rgba(255,255,255,.1);border-radius:12px;width:90vw;max-width:900px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0009}.history-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.history-modal-header h3{margin:0;font-size:1.1rem;color:#e0e0e0}.history-modal-actions{display:flex;gap:10px;align-items:center}.history-download-btn{background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff;border:none;border-radius:6px;padding:6px 14px;font-size:.75rem;font-weight:600;cursor:pointer;transition:opacity .2s}.history-download-btn:hover{opacity:.85}.history-close-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:6px;color:#ccc;font-size:1rem;cursor:pointer;padding:4px 10px;transition:background .2s}.history-close-btn:hover{background:#fff3}.history-table-wrap{overflow-y:auto;padding:12px 20px 20px;flex:1}.history-empty{text-align:center;color:#888;padding:40px 0;font-size:.9rem}.history-table{width:100%;border-collapse:collapse;font-size:.78rem}.history-table th{text-align:left;padding:8px 6px;font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:#888;border-bottom:1px solid rgba(255,255,255,.1);position:sticky;top:0;background:#1a1d24}.history-table td{padding:6px;color:#ccc;border-bottom:1px solid rgba(255,255,255,.04);white-space:nowrap}.history-table tr:hover td{background:#ffffff08}.history-action-cell{font-family:SF Mono,Consolas,monospace;font-size:.72rem;color:#a0a0a0}.history-result-cell{white-space:normal!important;max-width:260px;word-break:break-word}.history-cash-cell{font-family:SF Mono,Consolas,monospace;text-align:right;color:#2ecc71}@media(max-width:768px){.history-modal{width:95vw;max-height:85vh;border-radius:10px}.history-table{font-size:.7rem}.history-result-cell{max-width:150px}}.landing-footer{display:flex;align-items:center;justify-content:center;gap:10px;padding:24px 16px 32px;font-size:.75rem;color:#ffffff59}.landing-footer-link{background:none;border:none;color:#ffffff80;font-size:.75rem;cursor:pointer;text-decoration:underline;text-underline-offset:2px;transition:color .15s}.landing-footer-link:hover{color:var(--color-gold, #d4af37)}.landing-footer-sep{opacity:.4}.landing-footer-copy{letter-spacing:.02em}
