.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:var(--spacing-md);position:relative;z-index:1}.auth-container{background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:8px;padding:var(--spacing-xl);width:100%;max-width:400px;box-shadow:var(--glow-cyan);position:relative;z-index:10}.auth-title{font-family:var(--font-display);font-size:2.5rem;text-align:center;color:var(--color-accent-cyan);text-shadow:var(--glow-cyan);margin-bottom:var(--spacing-sm)}.auth-subtitle{text-align:center;color:var(--color-text-secondary);margin-bottom:var(--spacing-xl);font-size:.9rem}.auth-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{color:var(--color-text-secondary);font-size:.9rem}.form-group input{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:4px;padding:var(--spacing-sm);color:var(--color-text-primary);font-family:var(--font-mono);font-size:1rem}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{width:100%;padding-right:40px}.password-toggle{position:absolute;right:8px;background:transparent;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:color .2s ease}.password-toggle:hover{color:var(--color-accent-cyan)}.password-toggle:focus{outline:none;color:var(--color-accent-cyan)}.password-toggle svg{width:20px;height:20px;stroke:currentColor}.form-group input:focus{outline:none;border-color:var(--color-accent-cyan);box-shadow:var(--glow-cyan)}.auth-button{background:var(--color-accent-cyan);color:var(--color-bg-primary);border:none;border-radius:4px;padding:var(--spacing-md);font-family:var(--font-mono);font-size:1rem;font-weight:700;cursor:pointer;margin-top:var(--spacing-md);transition:all .3s}.auth-button:hover:not(:disabled){background:var(--color-accent-magenta);box-shadow:var(--glow-magenta)}.auth-button:disabled{opacity:.6;cursor:not-allowed}.error-message{color:#f44;background:#ff44441a;border:1px solid #ff4444;border-radius:4px;padding:var(--spacing-sm);font-size:.9rem}.auth-footer{text-align:center;margin-top:var(--spacing-lg);color:var(--color-text-secondary);font-size:.9rem}.auth-footer a{color:var(--color-accent-cyan);text-decoration:none}.auth-footer a:hover{color:var(--color-accent-magenta);text-decoration:underline}.oauth-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;border-radius:4px;padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-mono);font-size:.95rem;font-weight:700;cursor:pointer;margin-bottom:var(--spacing-sm)}.oauth-button.google{background:#fff;color:#1f1f1f;border:1px solid var(--color-border)}.oauth-button.apple{background:#000;color:#fff;border:1px solid #000}.auth-divider{text-align:center;color:var(--color-text-secondary);font-size:.85rem;margin:var(--spacing-md) 0 var(--spacing-sm)}.auth-text-button{background:none;border:none;color:var(--color-accent-cyan);font-family:var(--font-mono);font-size:.9rem;cursor:pointer;padding:var(--spacing-sm) 0;width:100%;text-align:center}.auth-text-button:hover{color:var(--color-accent-magenta)}.auth-description{text-align:center;color:var(--color-text-secondary);margin-bottom:var(--spacing-md);font-size:.95rem}.auth-description strong{color:var(--color-accent-cyan)}.success-message{text-align:center;color:var(--color-accent-green);background:#00ff001a;border:1px solid var(--color-accent-green);border-radius:4px;padding:var(--spacing-md);margin-top:var(--spacing-md)}.success-message p{margin:var(--spacing-xs) 0}.form-group input[type=text]{text-align:center;font-size:1.5rem;letter-spacing:.5rem;font-weight:700}.remember-me-group{margin-top:calc(var(--spacing-xs) * -1);margin-bottom:0}.remember-me-label{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;color:var(--color-text-secondary);font-size:.9rem;-webkit-user-select:none;user-select:none}.remember-me-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent-cyan);margin:0}.remember-me-checkbox:checked{accent-color:var(--color-accent-cyan)}.remember-me-label:hover{color:var(--color-text-primary)}.lunar-level-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#0a0a1a;overflow:hidden}.lunar-canvas{width:100%;height:100%;object-fit:cover}.level-card{background:#141e28cc;border:2px solid var(--color-border);border-radius:12px;overflow:hidden;transition:all .3s ease;position:relative;cursor:default}.level-card.unlocked{cursor:pointer;border-color:var(--color-accent-cyan);box-shadow:0 0 15px #00ffaa4d}.level-card.unlocked:hover{transform:translateY(-4px);box-shadow:0 0 25px #00ffaa80;border-color:var(--color-accent-magenta)}.level-card.locked{opacity:.5;filter:grayscale(.8);cursor:not-allowed}.level-image{position:relative;width:100%;height:200px;background:linear-gradient(135deg,#001428e6,#00283ce6);display:flex;align-items:center;justify-content:center;overflow:hidden}.level-img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.level-card.unlocked:hover .level-img{transform:scale(1.1)}.lock-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center}.lock-overlay svg{width:60px;height:60px;color:var(--color-text-secondary);opacity:.6}.level-info{padding:1.5rem}.level-name{font-family:var(--font-display);font-size:1.5rem;color:var(--color-accent-cyan);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.1em}.level-description{font-family:var(--font-mono);font-size:.9rem;color:var(--color-text-secondary);line-height:1.5;margin-bottom:1rem}.level-status{display:inline-block;padding:.5rem 1rem;background:#f053;border:1px solid var(--color-accent-magenta);border-radius:6px;font-family:var(--font-mono);font-size:.85rem;color:var(--color-accent-magenta);text-transform:uppercase;letter-spacing:.05em}@media (max-width: 768px){.level-image{height:150px}.level-name{font-size:1.2rem}.level-description{font-size:.85rem}}.level-selection-page{min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg-primary)}.level-header{background:var(--color-bg-secondary);border-bottom:2px solid var(--color-border);padding:var(--spacing-md) var(--spacing-xl);display:flex;justify-content:space-between;align-items:center}.level-header h1{font-family:var(--font-display);color:var(--color-accent-cyan);text-shadow:var(--glow-cyan)}.user-info{display:flex;align-items:center;gap:var(--spacing-md);color:var(--color-text-secondary)}.sign-out-button{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);padding:var(--spacing-sm) var(--spacing-md);border-radius:4px;cursor:pointer;font-family:var(--font-mono);transition:all .3s}.sign-out-button:hover{border-color:var(--color-accent-cyan);color:var(--color-accent-cyan)}.level-main{flex:1;padding:var(--spacing-xl);display:flex;flex-direction:column;align-items:center}.level-container{width:100%;max-width:1400px}.page-title{font-family:var(--font-display);font-size:2.5rem;color:var(--color-accent-cyan);text-align:center;margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:.1em;text-shadow:var(--glow-cyan)}.page-subtitle{font-family:var(--font-mono);font-size:1.1rem;color:var(--color-text-secondary);text-align:center;margin-bottom:var(--spacing-xl)}.level-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;padding:1rem}@media (max-width: 768px){.level-grid{grid-template-columns:1fr;gap:1.5rem}.page-title{font-size:2rem}.page-subtitle{font-size:1rem}.level-main{padding:var(--spacing-md)}}@media (min-width: 769px) and (max-width: 1200px){.level-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1201px){.level-grid{grid-template-columns:repeat(3,1fr)}}.game-setup-page{min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg-primary)}.setup-header{background:var(--color-bg-secondary);border-bottom:2px solid var(--color-border);padding:var(--spacing-md) var(--spacing-xl);display:flex;justify-content:space-between;align-items:center}.setup-header h1{font-family:var(--font-display);color:var(--color-accent-cyan);text-shadow:var(--glow-cyan)}.setup-main{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl)}.setup-container{background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:12px;padding:var(--spacing-xl);width:100%;max-width:600px;box-shadow:0 0 20px #0fa3}.back-button{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);padding:var(--spacing-sm) var(--spacing-md);border-radius:6px;cursor:pointer;font-family:var(--font-mono);font-size:.9rem;margin-bottom:var(--spacing-lg);transition:all .3s ease}.back-button:hover{border-color:var(--color-accent-cyan);color:var(--color-accent-cyan);transform:translate(-2px)}.setup-title{font-family:var(--font-display);font-size:2rem;color:var(--color-accent-cyan);text-align:center;margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.1em;text-shadow:var(--glow-cyan)}.setup-subtitle{font-family:var(--font-mono);font-size:1rem;color:var(--color-text-secondary);text-align:center;margin-bottom:var(--spacing-xl)}.game-config{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.config-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.config-group label{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:.95rem;text-transform:uppercase;letter-spacing:.05em}.config-group.checkbox-group label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;text-transform:none}.config-group input[type=checkbox]{width:20px;height:20px;cursor:pointer}.player-select{background:var(--color-bg-primary);border:2px solid var(--color-border);border-radius:6px;padding:var(--spacing-md);color:var(--color-text-primary);font-family:var(--font-mono);font-size:1rem;cursor:pointer;transition:all .3s}.player-select:hover{border-color:var(--color-accent-cyan)}.player-select:focus{outline:none;border-color:var(--color-accent-cyan);box-shadow:0 0 10px #00ffaa4d}.invite-button{width:100%;background:#6464644d;color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:8px;padding:var(--spacing-md);font-family:var(--font-mono);font-size:.95rem;margin-bottom:var(--spacing-md);cursor:not-allowed;opacity:.5}.create-game-button{width:100%;background:linear-gradient(135deg,var(--color-accent-cyan),#00cc88);color:#000;border:2px solid var(--color-accent-cyan);border-radius:8px;padding:var(--spacing-lg);font-family:var(--font-display);font-size:1.25rem;font-weight:700;cursor:pointer;transition:all .3s;text-transform:uppercase;letter-spacing:.1em;box-shadow:0 0 20px #0fa6}.create-game-button:hover:not(:disabled){background:linear-gradient(135deg,#00cc88,var(--color-accent-cyan));transform:translateY(-2px);box-shadow:0 0 30px #0fa9}.create-game-button:disabled{opacity:.6;cursor:not-allowed;background:#64646480;border-color:var(--color-border);box-shadow:none}.constructing-game{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);min-height:300px}.constructing-game h2{font-family:var(--font-display);font-size:2rem;color:var(--color-accent-cyan);margin:var(--spacing-lg) 0 var(--spacing-sm);text-transform:uppercase;letter-spacing:.1em;text-shadow:var(--glow-cyan)}.constructing-game p{font-family:var(--font-mono);font-size:1rem;color:var(--color-text-secondary)}.constructing-game .spinner{width:80px;height:80px;border:4px solid rgba(0,255,170,.1);border-top:4px solid var(--color-accent-cyan);border-radius:50%;animation:spin 1s linear infinite;box-shadow:0 0 20px #00ffaa4d}@media (max-width: 768px){.setup-container{padding:var(--spacing-md)}.setup-title{font-size:1.5rem}.setup-subtitle{font-size:.9rem}.create-game-button{font-size:1rem;padding:var(--spacing-md)}}.name-selection{border:2px solid var(--color-accent-cyan);border-radius:8px;padding:var(--spacing-md);background:#00ffaa0d}.name-selector{display:flex;gap:var(--spacing-sm);align-items:center}.name-select{flex:1;background:var(--color-bg-primary);border:2px solid var(--color-border);border-radius:6px;padding:var(--spacing-md);color:var(--color-text-primary);font-family:var(--font-mono);font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s}.name-select:hover{border-color:var(--color-accent-cyan)}.name-select:focus{outline:none;border-color:var(--color-accent-cyan);box-shadow:0 0 10px #00ffaa4d}.regenerate-button{background:var(--color-bg-primary);border:2px solid var(--color-border);border-radius:6px;padding:var(--spacing-md);font-size:1.5rem;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;min-width:48px;height:48px}.regenerate-button:hover{border-color:var(--color-accent-cyan);transform:rotate(180deg);box-shadow:0 0 10px #0fa6}.regenerate-button:active{transform:rotate(180deg) scale(.95)}.name-hint{font-family:var(--font-mono);font-size:.85rem;color:var(--color-text-secondary);margin-top:var(--spacing-xs);margin-bottom:0;font-style:italic}.avatar-card{background:#141e28cc;border:2px solid;border-radius:8px;padding:1rem;transition:all .3s ease;position:relative;cursor:default;max-width:220px}.avatar-card.available{cursor:pointer;border-color:#0fa;box-shadow:0 0 15px #00ffaa4d}.avatar-card.available:hover{transform:translateY(-4px);box-shadow:0 0 25px #00ffaa80;background:#00ffaa1a}.avatar-card.selected-by-you{border-color:#0fa;background:#00ffaa26;box-shadow:0 0 20px #0fa9}.avatar-card.selected-by-other{border-color:#f05;background:#ff00551a;opacity:.7;cursor:not-allowed}.avatar-card.disabled{opacity:.5;cursor:not-allowed;filter:grayscale(.5)}.avatar-color-indicator{position:absolute;top:0;left:0;right:0;height:4px;background:currentColor;border-radius:10px 10px 0 0}.avatar-name{font-family:Orbitron,Courier New,monospace;font-size:.9rem;font-weight:700;text-align:center;margin-bottom:.25rem;letter-spacing:.05em;text-transform:uppercase}.avatar-header{text-align:center;margin-bottom:.75rem}.avatar-username{font-family:Courier New,monospace;font-size:.7rem;color:#888;text-align:center;margin-top:.1rem;font-style:italic}.avatar-name-placeholder{opacity:.5;font-style:italic;text-transform:none}.avatar-icon{display:flex;justify-content:center;align-items:center;margin-bottom:1rem}.avatar-icon-square{width:60px;height:60px;border:2px solid currentColor;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.65rem;text-align:center;padding:.4rem;background:#0000004d;box-shadow:0 0 8px currentColor;overflow:hidden}.avatar-image{width:100%;height:100%;object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges}.avatar-skills{margin-bottom:.75rem}.skill-row{display:grid;grid-template-columns:60px 1fr 30px;align-items:center;gap:.4rem;margin-bottom:.4rem}.skill-label{font-family:Courier New,monospace;font-size:.65rem;text-transform:uppercase;letter-spacing:.05em}.skill-bar{height:10px;background:#00000080;border-radius:5px;overflow:hidden;border:1px solid rgba(255,255,255,.2)}.skill-bar-fill{height:100%;transition:width .3s ease;box-shadow:0 0 8px currentColor}.skill-mining{background:linear-gradient(90deg,#888,#ccc)}.skill-farming{background:linear-gradient(90deg,#0a0,#0f0)}.skill-solar{background:linear-gradient(90deg,#f80,#ff0)}.skill-chemist{background:linear-gradient(90deg,#08f,#0cf)}.skill-luck{background:linear-gradient(90deg,#f0f,#f6f)}.skill-value{font-family:Courier New,monospace;font-size:.75rem;font-weight:700;text-align:right}.avatar-status{text-align:center;margin-top:.75rem}.status-badge{padding:.4rem .75rem;border-radius:6px;font-family:Orbitron,Courier New,monospace;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.status-yours{background:#0fa3;border:2px solid #00ffaa;color:#0fa;text-shadow:0 0 10px #00ffaa}.status-taken{background:#f053;border:2px solid #ff0055;color:#f05;font-size:.65rem}.status-loading{background:#64646433;border:2px solid #888;color:#ccc;font-size:.65rem}.color-cyan{color:#0fa}.color-magenta{color:#f0a}.color-yellow{color:#ff0}.color-green{color:#0f0}.color-orange{color:#f80}.color-purple{color:#a0f}.avatar-selection-container{width:100%;max-width:1400px;margin:0 auto}.selection-status{text-align:center;margin-bottom:2rem;padding:1rem;background:#141e2899;border-radius:8px;border:1px solid rgba(0,255,170,.3)}.status-text{font-family:Orbitron,Courier New,monospace;font-size:1.5rem;font-weight:700;margin-bottom:.5rem;color:#0fa;text-shadow:0 0 10px rgba(0,255,170,.5)}.status-complete{color:#0fa;animation:pulse-glow 1s ease-in-out infinite alternate}@keyframes pulse-glow{0%{text-shadow:0 0 10px rgba(0,255,170,.5)}to{text-shadow:0 0 20px rgba(0,255,170,1)}}.status-waiting{font-family:Courier New,monospace;font-size:.95rem;color:#ff0;opacity:.8}.avatar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,220px));gap:.5rem;padding:1rem;justify-content:center}@media (max-width: 768px){.avatar-grid{grid-template-columns:repeat(auto-fit,minmax(200px,220px));gap:.4rem}.status-text{font-size:1.2rem}.status-waiting{font-size:.85rem}}@media (min-width: 769px) and (max-width: 1200px){.avatar-grid{grid-template-columns:repeat(auto-fit,minmax(220px,220px));gap:.5rem}}@media (min-width: 1201px){.avatar-grid{grid-template-columns:repeat(auto-fit,minmax(220px,220px));gap:.5rem}}.selection-timer{padding:1rem;border-radius:8px;border:2px solid;text-align:center;transition:all .3s ease;margin-bottom:1.5rem}.timer-safe{background:#00ffaa1a;border-color:#0fa;box-shadow:0 0 10px #00ffaa4d}.timer-warning{background:#ffff001a;border-color:#ff0;box-shadow:0 0 10px #ffff004d}.timer-danger{background:#ff00551a;border-color:#f05;box-shadow:0 0 10px #ff00554d}.timer-pulse{animation:pulse .5s ease-in-out infinite alternate}@keyframes pulse{0%{transform:scale(1)}to{transform:scale(1.03)}}.timer-label{font-family:Orbitron,Courier New,monospace;font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem;opacity:.8}.timer-display{font-family:Orbitron,Courier New,monospace;font-size:2.5rem;font-weight:700;letter-spacing:.1em;margin-bottom:.75rem;text-shadow:0 0 10px currentColor}.timer-bar{width:100%;height:8px;background:#0000004d;border-radius:4px;overflow:hidden;position:relative}.timer-bar-fill{height:100%;background:currentColor;transition:width .3s ease-out;box-shadow:0 0 10px currentColor}.timer-safe .timer-bar-fill{background:#0fa}.timer-warning .timer-bar-fill{background:#ff0}.timer-danger .timer-bar-fill{background:#f05}.speed-indicator{color:#fa0;font-size:.75rem;font-weight:700;margin-left:.5rem;animation:speedPulse .5s ease-in-out infinite alternate}@keyframes speedPulse{0%{opacity:.7}to{opacity:1}}.timer-speed-2x{animation:speedBoost .3s ease-in-out infinite alternate}.timer-speed-3x{animation:speedBoost .2s ease-in-out infinite alternate}@keyframes speedBoost{0%{transform:scale(1)}to{transform:scale(1.02)}}.avatar-selection-page{min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg-primary)}.avatar-header{background:var(--color-bg-secondary);border-bottom:2px solid var(--color-border);padding:var(--spacing-md) var(--spacing-xl);display:flex;justify-content:space-between;align-items:center}.avatar-header h1{font-family:var(--font-display);color:var(--color-accent-cyan);text-shadow:var(--glow-cyan)}.avatar-main{flex:1;padding:var(--spacing-xl);display:flex;justify-content:center}.avatar-container{width:100%;max-width:1600px}.generating-phase{text-align:center;padding:var(--spacing-xl) 0}.generating-phase h2{font-family:var(--font-display);font-size:2rem;color:var(--color-accent-cyan);margin:var(--spacing-lg) 0;text-shadow:var(--glow-cyan)}.generating-phase p{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:1.1rem}.spinner{width:60px;height:60px;margin:0 auto;border:4px solid rgba(0,255,170,.2);border-top-color:var(--color-accent-cyan);border-radius:50%;animation:spin 1s linear infinite}.avatar-title{font-family:var(--font-display);font-size:2.5rem;color:var(--color-accent-cyan);text-align:center;margin-bottom:var(--spacing-xl);text-transform:uppercase;letter-spacing:.1em;text-shadow:var(--glow-cyan)}.all-ready-message{width:100%;max-width:500px;margin:var(--spacing-xl) auto 0;text-align:center;background:linear-gradient(135deg,#00ffaa26,#00cc8826);border:2px solid var(--color-accent-cyan);border-radius:8px;padding:var(--spacing-lg);animation:pulse-glow 2s ease-in-out infinite;box-shadow:0 0 25px #0fa6}.all-ready-message h3{font-family:var(--font-display);font-size:1.8rem;color:var(--color-accent-cyan);margin:0 0 var(--spacing-sm) 0;text-transform:uppercase;letter-spacing:.1em;text-shadow:var(--glow-cyan)}.all-ready-message p{font-family:var(--font-mono);font-size:1rem;color:var(--color-text-secondary);margin:0}@keyframes pulse-glow{0%,to{box-shadow:0 0 25px #0fa6}50%{box-shadow:0 0 40px #00ffaab3}}.error-message{margin-top:var(--spacing-md);padding:var(--spacing-md);background:#ff00001a;border:1px solid #ff0000;border-radius:6px;color:red;font-family:var(--font-mono);font-size:.9rem;text-align:center}@media (max-width: 768px){.avatar-title{font-size:1.8rem}.all-ready-message h3{font-size:1.4rem}.all-ready-message,.avatar-main{padding:var(--spacing-md)}}.hex-grid-container{position:relative;display:inline-block;width:100%;height:100%}.hex-grid-canvas{display:block;width:100%;height:100%;cursor:default}.hex-grid-canvas.can-pan{cursor:grab}.hex-grid-canvas.can-pan.dragging{cursor:grabbing}.zoom-controls{position:absolute;top:12px;right:12px;display:flex;flex-direction:column;gap:8px;z-index:100}.zoom-button{width:40px;height:40px;background:var(--color-bg-secondary);border:2px solid var(--color-accent-cyan);border-radius:4px;color:var(--color-accent-cyan);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 2px 8px #00000080,0 0 8px #0ff3}.zoom-button:hover:not(:disabled){background:#00ffff1a;box-shadow:0 2px 12px #0009,0 0 12px #0ff6;transform:scale(1.05)}.zoom-button:active:not(:disabled){transform:scale(.95)}.zoom-button:disabled{opacity:.4;cursor:not-allowed;border-color:var(--color-border);color:var(--color-text-secondary)}.zoom-button svg{width:20px;height:20px}.store-panel{background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:8px;padding:var(--spacing-md);font-family:var(--font-mono);color:var(--color-text-primary)}.store-panel-title{color:var(--color-accent-cyan);font-size:1rem;font-weight:700;margin:0 0 var(--spacing-md) 0;text-align:center;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-xs)}.store-inventory{display:flex;flex-direction:column;gap:var(--spacing-sm)}.store-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:4px;position:relative}.store-item.store-money{border:2px solid var(--color-accent-yellow);background:#ffff001a;margin-top:var(--spacing-xs)}.store-icon-small{width:20px;height:20px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;flex-shrink:0}.store-icon-fallback{font-size:18px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.store-info{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex:1}.store-value{color:var(--color-text-primary);font-size:.9rem;font-weight:700;font-family:var(--font-mono);line-height:1}.store-price{color:var(--color-accent-cyan);font-size:.75rem;font-family:var(--font-mono);line-height:1;opacity:.8}.store-item[data-tooltip]:hover:before{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:4px;padding:6px 10px;background:var(--color-bg-secondary);border:1px solid var(--color-accent-cyan);border-radius:4px;color:var(--color-text-primary);font-size:.7rem;font-family:var(--font-mono);white-space:nowrap;z-index:1000;pointer-events:none;box-shadow:0 2px 8px #00000080,0 0 8px #00ffff4d}.store-item[data-tooltip]:hover:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:-1px;border:4px solid transparent;border-top-color:var(--color-accent-cyan);z-index:1001;pointer-events:none}.player-panel{background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:8px;padding:var(--spacing-md);font-family:var(--font-mono);color:var(--color-text-primary);min-width:280px}.player-panel-title{color:var(--color-accent-cyan);font-size:1rem;font-weight:700;margin:0 0 var(--spacing-md) 0;text-align:center;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-xs)}.player-slot{display:flex;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:4px;align-items:flex-start;min-height:100px;position:relative}.player-slot.current{border:2px solid var(--color-accent-cyan);background:#00ffff1a;box-shadow:0 0 8px #00ffff4d}.player-slot.active-turn{border:2px solid var(--color-accent-yellow);background:#ffff0026;box-shadow:0 0 12px #ff06;position:relative}.player-slot.active-turn.current{border:2px solid var(--color-accent-yellow);background:linear-gradient(135deg,#00ffff1a,#ffff0026);box-shadow:0 0 12px #ff06,0 0 8px #00ffff4d}.player-slot.empty{opacity:.5;border-style:dashed}.player-icon-container{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:4px}.player-icon{width:100%;height:100%;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.player-icon-placeholder{font-size:1.5rem;font-weight:700;color:var(--color-text-secondary)}.player-info{flex:1;display:flex;flex-direction:column;gap:var(--spacing-sm);min-width:0}.player-name{font-size:.9rem;font-weight:700;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-you{color:var(--color-accent-cyan);font-weight:700;margin-left:4px}.player-turn-badge{display:inline-block;background:var(--color-accent-yellow);color:#000;font-size:.7rem;font-weight:700;padding:2px 6px;border-radius:3px;margin-left:6px;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #ffff004d}.player-resources{display:flex;flex-direction:column;gap:var(--spacing-xs);font-size:.75rem}.resource-row{display:flex;gap:var(--spacing-sm);align-items:center;flex-wrap:wrap}.resource-item{display:flex;align-items:center;gap:4px;flex-shrink:0}.resource-icon-small{width:16px;height:16px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;flex-shrink:0}.resource-icon-fallback{font-size:14px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.resource-value{color:var(--color-text-primary);font-weight:700;font-family:var(--font-mono);font-size:.75rem;white-space:nowrap}.resource-value.money{color:var(--color-accent-yellow)}.player-net-worth{margin-top:var(--spacing-xs);padding-top:var(--spacing-xs);border-top:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.net-worth-label{color:var(--color-text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}.net-worth-value{color:var(--color-accent-yellow);font-size:.9rem;font-weight:700;font-family:var(--font-mono)}.resource-item{position:relative}.resource-item[data-tooltip]:hover:before,.resource-value[data-tooltip]:hover:before{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:4px;padding:4px 8px;background:var(--color-bg-secondary);border:1px solid var(--color-accent-cyan);border-radius:4px;color:var(--color-text-primary);font-size:.7rem;font-family:var(--font-mono);white-space:nowrap;z-index:1000;pointer-events:none;box-shadow:0 2px 8px #00000080,0 0 8px #00ffff4d}.resource-item[data-tooltip]:hover:after,.resource-value[data-tooltip]:hover:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:-1px;border:4px solid transparent;border-top-color:var(--color-accent-cyan);z-index:1001;pointer-events:none}.resource-item[data-tooltip]:hover .resource-value[data-tooltip]:hover:before,.resource-item[data-tooltip]:hover .resource-value[data-tooltip]:hover:after{display:none}.player-icon-container{position:relative}.player-icon-container[data-tooltip]:hover:before{content:attr(data-tooltip);position:absolute;right:calc(100% + 8px);top:0;padding:8px 12px;background:var(--color-bg-secondary);border:1px solid var(--color-accent-cyan);border-radius:4px;color:var(--color-text-primary);font-size:.7rem;font-family:var(--font-mono);white-space:pre-line;z-index:2000;pointer-events:none;box-shadow:0 2px 8px #00000080,0 0 8px #00ffff4d;min-width:150px;max-width:200px;line-height:1.4}.player-icon-container[data-tooltip]:hover:after{content:"";position:absolute;right:calc(100% + 4px);top:12px;border:4px solid transparent;border-left-color:var(--color-accent-cyan);z-index:2001;pointer-events:none}.game-status-panel{background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:8px;padding:var(--spacing-md);font-family:var(--font-mono);color:var(--color-text-primary);min-width:200px;position:relative}.game-status-title{color:var(--color-accent-cyan);font-size:1rem;font-weight:700;margin:0 0 var(--spacing-md) 0;text-align:center;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-xs)}.game-status-content{display:flex;flex-direction:column;gap:var(--spacing-md)}.status-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.status-label{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.status-value{font-size:1rem;font-weight:700;color:var(--color-text-primary)}.phase-control{display:flex;align-items:center;gap:var(--spacing-sm)}.phase-name{flex:1;text-align:center}.phase-nav-button{background:var(--color-bg-primary);border:1px solid var(--color-border);color:var(--color-text-primary);font-size:1.2rem;font-weight:700;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:4px;transition:all .2s ease;padding:0}.phase-nav-button:hover:not(:disabled){background:var(--color-bg-tertiary);border-color:var(--color-accent-cyan);color:var(--color-accent-cyan);box-shadow:0 0 8px #00ffff4d}.phase-nav-button:active:not(:disabled){transform:scale(.95)}.phase-nav-button:disabled{opacity:.3;cursor:not-allowed}.debug-indicator{margin-top:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:#ffff001a;border:1px solid var(--color-accent-yellow);border-radius:4px;display:flex;flex-direction:column;gap:var(--spacing-xs)}.debug-badge{font-size:.7rem;font-weight:700;color:var(--color-accent-yellow);text-transform:uppercase;letter-spacing:.5px}.debug-hint{font-size:.65rem;color:var(--color-text-secondary);font-style:italic}.phase-waiting-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0d1b2af2;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);z-index:10}.phase-waiting-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-accent-cyan);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.phase-waiting-message{font-size:.85rem;color:var(--color-accent-cyan);text-align:center;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.moon-image-3d{display:block;border-radius:50%;cursor:grab;transition:transform .2s ease;flex-shrink:0}.moon-image-3d.dragging{cursor:grabbing}.moon-image-3d:hover{transform:scale(1.02)}.moon-image-3d:active{transform:scale(.98)}.moon-image-3d:focus{outline:2px solid var(--color-accent-cyan);outline-offset:4px}.moon-image-small{width:80px;height:80px}.moon-image-large{width:500px;height:500px;max-width:80vw;max-height:70vh}@media (max-width: 768px){.moon-image-small{width:60px;height:60px}.moon-image-large{width:90vw;height:90vw;max-height:60vh}}.moon-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .3s ease}.moon-modal-content{background:var(--color-bg-secondary);border:3px solid var(--color-accent-cyan);border-radius:12px;padding:var(--spacing-xl);max-width:90vw;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 0 50px #00ffff80,inset 0 0 30px #00b4c81a;animation:slideIn .3s ease;background-image:linear-gradient(135deg,rgba(0,180,200,.05) 0%,transparent 50%),radial-gradient(circle at top right,rgba(0,180,200,.08) 0%,transparent 60%)}@keyframes slideIn{0%{transform:scale(.9) translateY(-20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.moon-modal-close{position:absolute;top:var(--spacing-md);right:var(--spacing-md);background:transparent;border:none;color:var(--color-accent-cyan);font-size:32px;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,color .2s ease;z-index:1}.moon-modal-close:hover{transform:rotate(90deg);color:var(--color-accent-yellow)}.moon-modal-body{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg)}.moon-modal-info{width:100%;font-family:var(--font-mono);color:var(--color-text-primary)}.moon-modal-info h2{color:var(--color-accent-cyan);font-size:28px;margin:0 0 var(--spacing-md) 0;text-transform:uppercase;letter-spacing:3px;text-align:center;text-shadow:0 0 10px rgba(0,255,255,.5)}.moon-modal-details{background:var(--color-bg-tertiary);border:2px solid var(--color-accent-cyan);border-radius:8px;padding:var(--spacing-md);box-shadow:0 4px 12px #0000004d,inset 0 1px #00b4c833;position:relative}.moon-modal-details:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(0,180,200,.4) 20%,rgba(0,180,200,.6) 50%,rgba(0,180,200,.4) 80%,transparent 100%)}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0;border-bottom:1px solid rgba(0,180,200,.15);position:relative;transition:background .2s ease}.detail-row:hover{background:#00b4c80d;padding-left:var(--spacing-sm);padding-right:var(--spacing-sm);margin:0 calc(-1 * var(--spacing-sm));border-radius:4px}.detail-row:after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:#00c8dc80;transition:width .3s ease}.detail-row:hover:after{width:100%}.detail-row:last-of-type{border-bottom:none}.detail-label{font-weight:700;color:var(--color-accent-cyan);text-transform:uppercase;font-size:14px;letter-spacing:1px}.detail-value{color:var(--color-text-primary);font-size:16px}.moon-modal-description{margin-top:var(--spacing-md);padding:var(--spacing-md);background:#00b4c814;border-left:3px solid rgba(0,180,200,.6);border-radius:4px;font-style:italic;color:var(--color-text-secondary);line-height:1.6;position:relative;box-shadow:0 2px 8px #00b4c81a}.moon-modal-description:before{content:'"';position:absolute;top:-10px;left:8px;font-size:48px;color:#00b4c833;font-family:Georgia,serif;line-height:1}.moon-modal-close-button{margin-top:var(--spacing-lg);width:100%;padding:var(--spacing-md);background:linear-gradient(180deg,var(--color-bg-tertiary) 0%,rgba(0,180,200,.1) 100%);border:2px solid rgba(0,180,200,.8);color:var(--color-accent-cyan);font-family:var(--font-mono);font-size:18px;text-transform:uppercase;letter-spacing:2px;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.moon-modal-close-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:radial-gradient(circle,rgba(0,200,220,.3) 0%,transparent 70%);border-radius:50%;transform:translate(-50%,-50%);transition:width .4s ease,height .4s ease}.moon-modal-close-button:hover:before{width:300px;height:300px}.moon-modal-close-button:hover{background:linear-gradient(180deg,rgba(0,200,220,.2) 0%,var(--color-accent-cyan) 100%);color:var(--color-bg-primary);box-shadow:0 0 15px #00ffff80,inset 0 0 20px #00b4c84d;transform:translateY(-2px);border-color:var(--color-accent-cyan)}.moon-modal-close-button:active{transform:translateY(0);box-shadow:0 0 10px #00ffff4d,inset 0 0 15px #00b4c833}@media (max-width: 768px){.moon-modal-content{padding:var(--spacing-lg);max-width:95vw}.moon-modal-info h2{font-size:22px}.moon-modal-body{gap:var(--spacing-md)}.detail-row{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}}.moon-modal-overlay:focus{outline:none}.moon-modal-content:focus{outline:2px solid var(--color-accent-cyan);outline-offset:4px}.start-game-animation-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:transparent;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:all;transition:opacity .1s ease-out}.start-game-animation-overlay[data-phase^=moon],.start-game-animation-overlay[data-phase^=camera],.start-game-animation-overlay[data-phase^=orbital]{background:#001}.start-game-animation-overlay[style*="opacity: 0"]{pointer-events:none}.start-game-animation-canvas{width:100%;height:100%;max-width:1200px;max-height:800px;border:2px solid #00ffff;box-shadow:0 0 20px #00ffff80;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.start-game-animation-overlay[data-phase^=map_] .start-game-animation-canvas{border:none;box-shadow:none}.start-game-animation-info{margin-top:20px;color:#0ff;font-family:Courier New,monospace;text-align:center}.start-game-animation-info p{margin:0 0 10px;font-size:18px;text-transform:uppercase;letter-spacing:2px}.animation-progress-bar{width:300px;height:4px;background:#033;border:1px solid #00ffff;margin:0 auto;overflow:hidden}.animation-progress-fill{height:100%;background:#0ff;transition:width .1s linear;box-shadow:0 0 10px #0ffc}.debug-panel{position:fixed;bottom:0;left:0;right:0;background:#000000f2;border-top:2px solid var(--color-accent-cyan);color:var(--color-text-primary);font-family:var(--font-mono);font-size:12px;z-index:9999;transition:transform .3s ease}.debug-panel.collapsed{transform:translateY(calc(100% - 32px))}.debug-panel.expanded{transform:translateY(0);max-height:60vh;overflow-y:auto}.debug-header{padding:8px 16px;background:#00ffff1a;cursor:pointer;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none}.debug-header:hover{background:#0ff3}.debug-title{font-weight:700;color:var(--color-accent-cyan)}.debug-toggle{color:var(--color-accent-cyan);font-size:10px}.debug-content{padding:16px}.debug-tabs{display:flex;gap:8px;margin-bottom:16px;border-bottom:1px solid rgba(255,255,255,.1)}.debug-tab{background:none;border:none;color:#fff9;padding:8px 16px;cursor:pointer;font-family:var(--font-mono);font-size:12px;border-bottom:2px solid transparent;transition:all .2s}.debug-tab:hover{color:#fffc;background:#ffffff0d}.debug-tab.active{color:var(--color-accent-cyan);border-bottom-color:var(--color-accent-cyan)}.debug-tab-content{min-height:200px;max-height:calc(60vh - 100px);overflow-y:auto}.debug-avatars-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.debug-avatar-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:4px;padding:12px}.avatar-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.avatar-color-badge{width:32px;height:32px;border-radius:4px;border:2px solid rgba(255,255,255,.3)}.avatar-info{flex:1}.avatar-id{font-size:10px;color:#ffffff80}.avatar-name{font-size:14px;font-weight:700;color:var(--color-accent-cyan)}.avatar-appearance{margin-bottom:12px;padding:8px;background:#0000004d;border-radius:2px}.appearance-label{font-size:10px;color:#ffffff80;margin-bottom:4px}.appearance-value{font-size:11px;color:#fffc}.avatar-skills{margin-bottom:12px}.skill-row{display:grid;grid-template-columns:60px 30px 1fr;align-items:center;gap:8px;margin-bottom:6px}.skill-label{font-size:10px;color:#fff9}.skill-value{font-size:11px;font-weight:700;color:var(--color-accent-cyan);text-align:right}.skill-bar{height:8px;background:#ffffff1a;border-radius:2px;overflow:hidden}.skill-fill{height:100%;transition:width .3s ease}.skill-fill.mining{background:linear-gradient(90deg,#f80,#fa0)}.skill-fill.farming{background:linear-gradient(90deg,#0f0,#8f0)}.skill-fill.solar{background:linear-gradient(90deg,#ff0,#ff8)}.skill-fill.chemist{background:linear-gradient(90deg,#0ff,#0af)}.skill-fill.luck{background:linear-gradient(90deg,#f0f,#f8f)}.luck-row{border-top:1px solid rgba(255,255,255,.1);padding-top:6px;margin-top:4px}.avatar-selection{padding-top:8px;border-top:1px solid rgba(255,255,255,.1);font-size:10px}.selected-by{color:var(--color-accent-green)}.not-selected{color:#fff6}.debug-empty{padding:32px;text-align:center;color:#fff6}.debug-players-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.debug-player-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:4px;padding:12px}.player-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}.player-number{background:var(--color-accent-cyan);color:#000;padding:4px 8px;border-radius:2px;font-weight:700;font-size:11px}.player-id{flex:1;font-size:11px;color:#fffc}.ai-badge{background:var(--color-accent-magenta);color:#fff;padding:2px 6px;border-radius:2px;font-size:9px;font-weight:700}.player-details{display:flex;flex-direction:column;gap:6px}.detail-row{display:flex;justify-content:space-between;font-size:11px}.detail-label{color:#ffffff80}.detail-value{color:#ffffffe6;font-weight:700}.debug-map-info{display:flex;flex-direction:column;gap:16px}.info-section{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:4px;padding:12px}.info-section h4{margin:0 0 12px;color:var(--color-accent-cyan);font-size:13px;font-weight:700}.info-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:11px}.info-label{color:#ffffff80}.info-value{color:#ffffffe6;font-weight:700}.landmark-details{margin-top:8px}.landmark-description{margin-top:12px;padding:8px;background:#0000004d;border-left:2px solid var(--color-accent-cyan);font-size:10px;line-height:1.4;color:#ffffffb3}.debug-state-json{background:#00000080;border:1px solid rgba(255,255,255,.1);border-radius:4px;overflow:hidden}.json-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1)}.json-header span{font-size:11px;color:#ffffffb3}.copy-button{background:var(--color-accent-cyan);color:#000;border:none;padding:4px 12px;border-radius:2px;font-family:var(--font-mono);font-size:10px;font-weight:700;cursor:pointer;transition:opacity .2s}.copy-button:hover{opacity:.8}.json-content{padding:12px;margin:0;font-size:10px;line-height:1.6;color:#fffc;overflow-x:auto;max-height:400px;overflow-y:auto}.debug-panel::-webkit-scrollbar,.debug-tab-content::-webkit-scrollbar,.json-content::-webkit-scrollbar{width:8px;height:8px}.debug-panel::-webkit-scrollbar-track,.debug-tab-content::-webkit-scrollbar-track,.json-content::-webkit-scrollbar-track{background:#0000004d}.debug-panel::-webkit-scrollbar-thumb,.debug-tab-content::-webkit-scrollbar-thumb,.json-content::-webkit-scrollbar-thumb{background:#00ffff4d;border-radius:4px}.debug-panel::-webkit-scrollbar-thumb:hover,.debug-tab-content::-webkit-scrollbar-thumb:hover,.json-content::-webkit-scrollbar-thumb:hover{background:#00ffff80}.debug-network{display:flex;flex-direction:column;height:100%}.network-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:8px}.network-header span{font-size:11px;color:#ffffffb3}.network-header-buttons{display:flex;gap:8px}.clear-button{background:#ff00004d;color:#fff;border:1px solid rgba(255,0,0,.5);padding:4px 12px;border-radius:2px;font-family:var(--font-mono);font-size:10px;cursor:pointer;transition:background .2s}.clear-button:hover{background:#ff000080}.network-list{display:flex;flex-direction:column;gap:4px;max-height:calc(60vh - 150px);overflow-y:auto}.network-entry{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:4px;padding:8px;font-size:10px;font-family:var(--font-mono)}.network-entry-request{border-left:3px solid #2196f3}.network-entry-response{border-left:3px solid #4caf50}.network-entry-error{border-left:3px solid #f44336;background:#f443361a}.network-entry-sse{border-left:3px solid #ff9800}.network-entry-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.network-type-icon{font-size:12px}.network-timestamp{color:#ffffff80;font-size:9px;min-width:80px}.network-method{font-weight:700;min-width:50px;font-size:10px}.network-url{flex:1;color:#fffc;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:200px}.network-status{font-weight:700;min-width:80px;font-size:10px}.network-duration{color:#ffffff80;font-size:9px;min-width:60px}.network-sse-type{color:#ff9800;font-weight:700;font-size:10px}.network-details{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1)}.network-details summary{cursor:pointer;color:var(--color-accent-cyan);font-size:10px;-webkit-user-select:none;user-select:none;margin-bottom:8px}.network-details summary:hover{text-decoration:underline}.network-body{display:flex;flex-direction:column;gap:8px;padding:8px;background:#0000004d;border-radius:2px}.network-error{color:#f44336;font-size:10px}.network-request,.network-response,.network-sse{font-size:10px}.network-request strong,.network-response strong,.network-sse strong{color:var(--color-accent-cyan);display:block;margin-bottom:4px}.network-request pre,.network-response pre,.network-sse pre{margin:0;padding:8px;background:#00000080;border-radius:2px;overflow-x:auto;font-size:9px;line-height:1.4;color:#fffc;max-height:200px;overflow-y:auto}.rover-debug-overlay{position:fixed;bottom:80px;left:20px;background:#000000f2;border:3px solid #FF6600;border-radius:8px;padding:15px;font-family:"Press Start 2P",Courier New,monospace;font-size:10px;color:#0f0;max-width:400px;z-index:999998;box-shadow:0 4px 12px #ff660080;line-height:1.6}.rover-debug-header{font-size:12px;color:#f60;text-align:center;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #FF6600}.rover-debug-section{margin-bottom:12px;padding:8px;background:#ff66001a;border-radius:4px}.rover-debug-title{color:#fa0;font-size:10px;margin-bottom:5px;font-weight:700}.rover-debug-value{color:#0f0;font-size:9px;margin-left:10px;margin-bottom:3px}.rover-debug-hint{color:#0cf;font-size:8px;margin-left:10px;margin-top:5px;font-style:italic}.rover-debug-instructions{margin-top:15px;padding-top:15px;border-top:2px solid #FF6600}.rover-debug-instructions ol{margin:10px 0 0 15px;padding:0}.rover-debug-instructions li{color:#fff;font-size:8px;margin-bottom:5px;line-height:1.4}.rover-placement-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-in-out}.rover-placement-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border:3px solid #4a90e2;border-radius:12px;box-shadow:0 0 30px #4a90e280;max-width:900px;width:90%;max-height:80vh;overflow-y:auto;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:2px solid #4a90e2;background:linear-gradient(90deg,#1a1a2e,#0f3460)}.modal-header h2{margin:0;font-size:28px;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.5)}.close-button{background:transparent;border:none;color:#fff;font-size:36px;cursor:pointer;line-height:1;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:color .2s}.close-button:hover{color:#ff6b6b}.modal-content{padding:25px}.modal-info{background:#0000004d;border-radius:8px;padding:15px;margin-bottom:25px}.info-row{display:flex;justify-content:space-between;padding:8px 0;font-size:16px;color:#ccc}.info-row strong{color:#4a90e2;font-weight:700}.warning-message{background:#ff6b6b33;border:2px solid #ff6b6b;border-radius:8px;padding:20px;text-align:center;font-size:18px;color:#ff6b6b}.rover-types-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px;margin-bottom:25px}.rover-type-card{background:linear-gradient(135deg,#0f3460,#16213e);border:2px solid #4a90e2;border-radius:8px;padding:15px;cursor:pointer;transition:all .3s ease;text-align:center;position:relative}.rover-type-card:hover:not(.disabled){transform:translateY(-5px);box-shadow:0 5px 20px #4a90e299;border-color:#60b8ff}.rover-type-card.selected{border-color:#0f8;box-shadow:0 0 20px #00ff8880;background:linear-gradient(135deg,#0f4630,#16213e)}.rover-type-card.disabled{opacity:.5;cursor:not-allowed;border-color:#666}.rover-icon{width:60px;height:60px;margin:0 auto 10px;background:#4a90e233;border:2px solid #4a90e2;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;color:#4a90e2}.rover-type-card.selected .rover-icon{border-color:#0f8;color:#0f8;background:#0f83}.rover-type-card h3{margin:10px 0 8px;font-size:18px;color:#fff}.rover-description{font-size:13px;color:#aaa;margin:8px 0;min-height:40px}.rover-cost,.rover-produces{font-size:14px;color:#ccc;margin:5px 0}.rover-cost strong,.rover-produces strong{color:#4a90e2;font-weight:700}.unsuitable-label{background:#ffc10733;border:1px solid #ffc107;border-radius:4px;padding:4px 8px;margin-top:8px;font-size:12px;color:#ffc107}.unaffordable-label{background:#ff6b6b33;border:1px solid #ff6b6b;border-radius:4px;padding:4px 8px;margin-top:8px;font-size:12px;color:#ff6b6b}.modal-actions{display:flex;gap:15px;justify-content:flex-end}.cancel-btn,.confirm-btn{padding:12px 30px;font-size:16px;font-weight:700;border-radius:8px;cursor:pointer;transition:all .2s ease;border:2px solid}.cancel-btn{background:transparent;border-color:#666;color:#ccc}.cancel-btn:hover{background:#ffffff1a;border-color:#999}.confirm-btn{background:linear-gradient(135deg,#0f8,#00cc6a);border-color:#0f8;color:#000}.confirm-btn:hover:not(:disabled){background:linear-gradient(135deg,#00cc6a,#095);box-shadow:0 0 15px #00ff8880}.confirm-btn:disabled{opacity:.5;cursor:not-allowed;background:#333;border-color:#666;color:#999}.store-lobby{display:flex;flex-direction:column;gap:30px;animation:fadeIn .4s ease-in-out}.shopkeeper-section{display:flex;align-items:center;gap:25px;padding:20px;background:#0006;border:2px solid #4a90e2;border-radius:8px}.shopkeeper-sprite{flex-shrink:0}.shopkeeper-placeholder{font-size:64px;width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:#4a90e233;border:2px solid #4a90e2;border-radius:8px;animation:bounce 2s ease-in-out infinite}.shopkeeper-dialogue{flex:1}.dialogue-box{background:#00ff881a;border:2px solid #00ff88;border-radius:8px;padding:15px 20px;position:relative}.dialogue-box:before{content:"";position:absolute;left:-10px;top:50%;transform:translateY(-50%);width:0;height:0;border-top:10px solid transparent;border-bottom:10px solid transparent;border-right:10px solid #00ff88}.dialogue-box p{margin:5px 0;color:#0f8;font-size:16px;line-height:1.5}.store-status-panel{background:#0006;border:2px solid #4a90e2;border-radius:8px;padding:20px}.store-status-panel h3{margin:0 0 15px;color:#4a90e2;font-size:20px;letter-spacing:1px}.status-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.status-item{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background:#4a90e21a;border:1px solid #4a90e2;border-radius:4px}.status-label{color:#ccc;font-size:14px}.status-value{font-size:18px;font-weight:700;color:#fff}.status-value.highlight{color:#0f8;text-shadow:0 0 5px rgba(0,255,136,.5)}.status-value.money{color:#ffc107;text-shadow:0 0 5px rgba(255,193,7,.5)}.lobby-navigation{display:flex;flex-direction:column;gap:15px}.lobby-navigation h3,.lobby-navigation h4{margin:10px 0 5px;color:#4a90e2;font-size:18px;letter-spacing:1px}.outfitting-section{display:flex;flex-direction:column;gap:10px;padding:15px;background:#00ff880d;border:2px solid #00ff88;border-radius:8px}.nav-button{display:flex;align-items:center;gap:15px;padding:15px 20px;background:linear-gradient(90deg,#4a90e233,#4a90e21a);border:2px solid #4a90e2;border-radius:8px;cursor:pointer;transition:all .3s ease;color:#fff;font-family:Courier New,monospace;font-size:14px}.nav-button:hover{background:linear-gradient(90deg,#4a90e266,#4a90e233);border-color:#60b8ff;transform:translate(5px);box-shadow:0 0 15px #4a90e280}.nav-button.outfit{border-color:#0f8;background:linear-gradient(90deg,#0f83,#00ff881a)}.nav-button.outfit:hover{border-color:#0f8;background:linear-gradient(90deg,#0f86,#0f83);box-shadow:0 0 15px #00ff8880}.nav-button.exit{border-color:#ff6b6b;background:linear-gradient(90deg,#ff6b6b33,#ff6b6b1a)}.nav-button.exit:hover{border-color:#ff6b6b;background:linear-gradient(90deg,#ff6b6b66,#ff6b6b33);box-shadow:0 0 15px #ff6b6b80}.nav-icon{font-size:32px;flex-shrink:0}.nav-content{flex:1;text-align:left}.nav-title{font-size:16px;font-weight:700;color:#fff;margin-bottom:3px;letter-spacing:1px}.nav-description{font-size:13px;color:#aaa}.nav-arrow{font-size:24px;flex-shrink:0;transition:transform .3s ease}.nav-button:hover .nav-arrow{transform:translate(5px)}@media (max-width: 768px){.shopkeeper-section{flex-direction:column;text-align:center}.dialogue-box:before{display:none}.status-grid{grid-template-columns:1fr}.nav-button{padding:12px 15px}.nav-icon{font-size:28px}.nav-title{font-size:14px}.nav-description{font-size:12px}}.rover-sales-room{animation:fadeIn .4s ease-in-out}.room-title{display:flex;align-items:center;gap:10px;margin:0 0 25px;color:#4a90e2;font-size:28px;letter-spacing:2px;padding-bottom:15px;border-bottom:3px solid #4a90e2}.room-icon{font-size:36px}.room-content{display:flex;flex-direction:column;gap:25px}.rover-display{background:#0006;border:2px solid #4a90e2;border-radius:8px;padding:20px}.rover-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:15px}.rover-for-sale{display:flex;flex-direction:column;align-items:center;gap:10px;padding:15px;background:#4a90e233;border:2px solid #4a90e2;border-radius:8px;transition:all .3s ease}.rover-for-sale:hover{transform:translateY(-5px);box-shadow:0 5px 20px #4a90e280}.rover-sprite-placeholder{font-size:64px;animation:bounce 2s ease-in-out infinite}.for-sale-tag{background:#0f8;color:#000;padding:4px 12px;border-radius:4px;font-weight:700;font-size:12px;letter-spacing:1px}.no-rovers{grid-column:1 / -1;text-align:center;padding:40px;color:#ff6b6b}.no-rovers p{margin:5px 0;font-size:18px}.no-rovers .small{font-size:14px;color:#aaa}.purchase-section{background:#0006;border:2px solid #4a90e2;border-radius:8px;padding:20px;display:flex;flex-direction:column;gap:15px}.price-info,.inventory-info{display:flex;justify-content:space-between;padding:10px 15px;background:#4a90e21a;border:1px solid #4a90e2;border-radius:4px}.label{color:#ccc;font-size:16px}.value{font-size:18px;font-weight:700;color:#fff}.value.highlight{color:#0f8}.purchase-button{padding:15px 30px;font-size:18px;font-weight:700;background:linear-gradient(135deg,#0f8,#00cc6a);border:2px solid #00ff88;border-radius:8px;color:#000;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px}.purchase-button:hover:not(:disabled){background:linear-gradient(135deg,#00cc6a,#095);box-shadow:0 0 20px #0f89;transform:scale(1.05)}.purchase-button:disabled{background:#333;border-color:#666;color:#999;cursor:not-allowed;opacity:.5}.status-message{padding:15px;border-radius:8px;text-align:center;font-size:16px;font-weight:700}.status-message.success{background:#0f83;border:2px solid #00ff88;color:#0f8}.construction-status{background:#0006;border:2px solid #4a90e2;border-radius:8px;padding:20px}.construction-status h3{margin:0 0 15px;color:#4a90e2;font-size:20px}.status-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:15px}.status-item{display:flex;justify-content:space-between;padding:10px 15px;background:#4a90e21a;border:1px solid #4a90e2;border-radius:4px}.status-item.full-width{grid-column:1 / -1}.info-box{background:#ffc1071a;border:2px solid #ffc107;border-radius:8px;padding:15px}.info-box p{margin:5px 0;color:#ffc107;font-size:14px}.info-box .small{font-size:12px;color:#aaa}.back-button{margin-top:20px;padding:12px 25px;background:transparent;border:2px solid #666;border-radius:8px;color:#ccc;font-size:16px;cursor:pointer;transition:all .3s ease}.back-button:hover{background:#ffffff1a;border-color:#999}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.store-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .3s ease-in-out}.store-modal{background:linear-gradient(135deg,#0a0e27,#16213e);border:4px solid #4a90e2;border-radius:0;box-shadow:0 0 40px #4a90e299,inset 0 0 20px #00000080;width:90%;max-width:900px;height:80vh;max-height:700px;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .4s ease-out;font-family:Courier New,monospace}@keyframes slideUp{0%{transform:translateY(100px);opacity:0}to{transform:translateY(0);opacity:1}}.store-header{background:linear-gradient(90deg,#0f3460,#16213e);border-bottom:3px solid #4a90e2;padding:20px 25px;display:flex;justify-content:space-between;align-items:center}.store-title{font-size:24px;font-weight:700;color:#0f8;text-shadow:0 0 10px rgba(0,255,136,.5);letter-spacing:2px;display:flex;align-items:center;gap:10px}.store-icon{font-size:28px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.store-status{display:flex;align-items:center;gap:20px;font-size:18px}.money{color:#ffc107;font-weight:700;text-shadow:0 0 5px rgba(255,193,7,.5)}.rover-indicator{color:#0f8;padding:5px 15px;background:#0f83;border:2px solid #00ff88;border-radius:4px;animation:blink 1.5s ease-in-out infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.7}}.store-content{flex:1;padding:30px;overflow-y:auto;position:relative;background:linear-gradient(180deg,#0a0e27cc,#16213ecc)}.store-content.transitioning{opacity:0;transition:opacity .3s ease-in-out}.room-transition{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#0f8;font-size:20px;font-weight:700}.loading-spinner{font-size:48px;animation:spin 1s linear infinite}.store-content::-webkit-scrollbar{width:12px}.store-content::-webkit-scrollbar-track{background:#0a0e27;border:1px solid #4a90e2}.store-content::-webkit-scrollbar-thumb{background:#4a90e2;border:1px solid #00ff88}.store-content::-webkit-scrollbar-thumb:hover{background:#60b8ff}.store-modal:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.15) 0px,transparent 1px,transparent 2px,rgba(0,0,0,.15) 3px);pointer-events:none;z-index:1;animation:scanline 8s linear infinite}@keyframes scanline{0%{transform:translateY(0)}to{transform:translateY(4px)}}@media (max-width: 768px){.store-modal{width:95%;height:90vh}.store-header{flex-direction:column;gap:10px;padding:15px}.store-title{font-size:20px}.store-status{font-size:16px;gap:10px}.store-content{padding:20px}}.store-map-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#000000f2;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:10000;animation:fadeIn .3s ease-in-out}.ai-spectate-banner{display:flex;align-items:center;gap:15px;background:linear-gradient(135deg,#2a1a4e,#1a0f3a);border:2px solid #9D4EDD;border-radius:8px;padding:12px 24px;margin-bottom:15px;color:#fff;font-family:Monaco,monospace;animation:pulseBorder 2s ease-in-out infinite;box-shadow:0 0 20px #9d4edd66}.ai-spectate-icon{font-size:28px;animation:bounce 1s ease-in-out infinite}.ai-spectate-text{font-size:16px;color:#e0b0ff}.ai-spectate-text strong{color:#0f8}.ai-spectate-action{font-size:14px;color:#ffc107;background-color:#ffc10726;padding:4px 12px;border-radius:4px;animation:fadeInOut 2s ease-in-out infinite}@keyframes pulseBorder{0%,to{border-color:#9d4edd;box-shadow:0 0 20px #9d4edd66}50%{border-color:#e040fb;box-shadow:0 0 30px #e040fb99}}@keyframes fadeInOut{0%,to{opacity:1}50%{opacity:.7}}.store-map-canvas{border:3px solid #4A90E2;border-radius:8px;box-shadow:0 0 30px #4a90e280;background-color:#0a0e27;cursor:default}.store-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#000000d9;display:flex;justify-content:center;align-items:center;z-index:20000;animation:fadeIn .2s ease-in-out}.store-modal-content{background:linear-gradient(135deg,#1a2a4e,#0f1b3a);border:3px solid #4A90E2;border-radius:12px;padding:30px;max-width:500px;width:90%;box-shadow:0 0 40px #4a90e299;animation:slideIn .3s ease-out;color:#fff}.store-modal-content h2{margin:0 0 15px;font-size:24px;color:#0f8;text-align:center;font-family:Monaco,monospace}.store-modal-description{font-size:16px;margin-bottom:20px;text-align:center;color:silver}.store-modal-warning{font-size:14px;margin-bottom:15px;padding:10px;background-color:#ff980033;border:2px solid #FF9800;border-radius:6px;text-align:center;color:#ffc107}.store-modal-price{display:flex;justify-content:space-between;align-items:center;padding:15px;background-color:#4a90e233;border-radius:6px;margin-bottom:15px;font-size:18px;font-weight:700}.price-label{color:silver}.price-value{color:#ffc107;font-size:22px}.store-modal-balance{display:flex;justify-content:space-between;align-items:center;padding:10px;margin-bottom:20px;font-size:16px}.balance-ok{color:#0f8;font-weight:700}.balance-low{color:#ff6b6b;font-weight:700}.store-modal-actions{display:flex;gap:15px;justify-content:center}.btn-purchase,.btn-cancel{padding:12px 30px;font-size:16px;font-weight:700;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;font-family:Monaco,monospace;text-transform:uppercase}.btn-purchase{background:linear-gradient(135deg,#0f8,#00cc6a);color:#0a0e27;flex:1}.btn-purchase:hover:not(:disabled){transform:scale(1.05);box-shadow:0 0 20px #00ff8880}.btn-purchase:disabled{background:#555;color:#888;cursor:not-allowed;opacity:.5}.btn-cancel{background:linear-gradient(135deg,#ff6b6b,#c55);color:#fff;flex:.6}.btn-cancel:hover{transform:scale(1.05);box-shadow:0 0 20px #ff6b6b80}.btn-sell{padding:12px 30px;font-size:16px;font-weight:700;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;font-family:Monaco,monospace;text-transform:uppercase;background:linear-gradient(135deg,gold,orange);color:#0a0e27;flex:1}.btn-sell:hover{transform:scale(1.05);box-shadow:0 0 20px #ffd70080}.sell-price{color:gold!important}.store-modal-info{color:#a0a0a0;font-size:13px;margin-top:10px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translateY(-30px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 768px){.store-map-canvas{max-width:100vw;max-height:100vh;width:auto;height:auto}.store-modal-content{padding:20px;width:85%}.store-modal-content h2{font-size:20px}.btn-purchase,.btn-cancel{padding:10px 20px;font-size:14px}}.development-overlay{position:fixed;top:100px;left:50%;transform:translate(-50%);z-index:100;pointer-events:none}.development-banner{display:flex;align-items:center;gap:20px;padding:12px 24px;background:linear-gradient(135deg,#0a0e27f2,#162142f2);border:2px solid #00FFFF;border-radius:12px;box-shadow:0 4px 20px #00ffff4d,inset 0 0 20px #00ffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:600px}.turn-indicator{display:flex;flex-direction:column;gap:2px}.turn-label{font-size:10px;font-weight:600;text-transform:uppercase;color:#0ff;letter-spacing:2px}.turn-progress{font-size:14px;font-weight:500;color:#8892b0}.current-player-info{flex:1;display:flex;align-items:center;justify-content:center}.your-turn-indicator{display:flex;align-items:center;gap:10px;animation:pulse-glow 1.5s ease-in-out infinite}@keyframes pulse-glow{0%,to{text-shadow:0 0 10px #00FF88,0 0 20px #00FF88}50%{text-shadow:0 0 20px #00FF88,0 0 40px #00FF88,0 0 60px #00FF88}}.your-turn-icon{font-size:24px}.your-turn-text{font-size:24px;font-weight:700;color:#0f8;text-transform:uppercase;letter-spacing:3px}.other-player-turn{display:flex;align-items:center;gap:12px}.player-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#0a0e27;border:2px solid rgba(255,255,255,.3)}.player-details{display:flex;flex-direction:column;gap:2px}.player-name{font-size:16px;font-weight:600;color:#fff}.player-type{font-size:12px;color:#8892b0}.ai-action-status{font-size:13px;color:#0f8;font-weight:500;animation:ai-action-pulse 1s ease-in-out infinite}@keyframes ai-action-pulse{0%,to{opacity:1}50%{opacity:.7}}.timer-display{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#0000004d;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.timer-display.low-time{background:#f443;border-color:#f44;animation:timer-pulse .5s ease-in-out infinite}@keyframes timer-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.timer-icon{font-size:16px}.timer-value{font-size:20px;font-weight:700;color:#fff;font-family:Monaco,Menlo,monospace;min-width:40px;text-align:center}.timer-display.low-time .timer-value{color:#f44}.turn-progress-dots{display:flex;gap:8px;padding-left:16px;border-left:1px solid rgba(255,255,255,.1)}.progress-dot{width:20px;height:20px;border-radius:50%;border:2px solid #666;display:flex;align-items:center;justify-content:center;font-size:10px;transition:all .3s ease;position:relative}.progress-dot.completed{opacity:.6}.progress-dot.current{transform:scale(1.2);box-shadow:0 0 10px currentColor;animation:dot-pulse 1s ease-in-out infinite}@keyframes dot-pulse{0%,to{box-shadow:0 0 10px currentColor}50%{box-shadow:0 0 20px currentColor,0 0 30px currentColor}}.progress-dot .ai-indicator{font-size:10px;position:absolute}.turn-instructions{margin-top:12px;padding:10px 20px;background:#00ff881a;border:1px solid rgba(0,255,136,.3);border-radius:8px;text-align:center;pointer-events:auto}.turn-instructions p{margin:0;font-size:14px;color:#fff}.turn-instructions strong{color:#0f8}@media (max-width: 768px){.development-banner{min-width:auto;flex-wrap:wrap;justify-content:center;padding:10px 16px;gap:12px}.turn-indicator{text-align:center;width:100%}.your-turn-text{font-size:18px}.turn-progress-dots{border-left:none;padding-left:0;padding-top:8px;border-top:1px solid rgba(255,255,255,.1);width:100%;justify-content:center}}.game-page{min-height:100vh;display:flex;flex-direction:column}.game-header{background:var(--color-bg-secondary);border-bottom:2px solid var(--color-border);padding:var(--spacing-md) var(--spacing-xl);display:flex;justify-content:flex-start;align-items:center;gap:var(--spacing-lg);flex-wrap:nowrap;position:relative;max-width:1600px;margin:0 auto;width:100%}.game-header-moon{flex-shrink:0}.game-header-title{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.game-header h1{font-family:var(--font-mono);color:var(--color-accent-cyan);margin:0;font-size:28px;text-transform:uppercase;letter-spacing:3px;text-shadow:0 0 10px rgba(0,255,255,.5)}.game-id-subtitle{font-family:var(--font-mono);font-size:12px;color:var(--color-text-secondary);opacity:.6}.quit-game-button{font-family:var(--font-mono);background:var(--color-bg-primary);border:2px solid #FF0033;color:#f03;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;font-size:.9rem;text-transform:uppercase;letter-spacing:1px;transition:all .2s ease;box-shadow:0 0 8px #ff00334d;position:absolute;right:calc(280px + var(--spacing-lg));top:50%;transform:translateY(-50%);min-width:120px}@media (max-width: 1024px){.quit-game-button{right:var(--spacing-xl)}}.quit-game-button:hover:not(:disabled){background:#ff00331a;box-shadow:0 0 12px #ff003380;border-color:#f36;color:#f36}.quit-game-button:disabled{opacity:.6;cursor:not-allowed}.quit-confirm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0a0e27e6;display:flex;align-items:center;justify-content:center;z-index:10000}.quit-confirm-dialog{background:var(--color-bg-secondary);border:3px solid #FF0033;border-radius:0;padding:var(--spacing-xl);max-width:400px;width:90%;box-shadow:0 0 32px #ff003380;font-family:var(--font-mono)}.quit-confirm-dialog h2{color:#f03;margin:0 0 var(--spacing-md) 0;font-size:1.5rem;text-transform:uppercase;letter-spacing:2px}.quit-confirm-dialog p{color:var(--color-text-primary);margin:0 0 var(--spacing-lg) 0;line-height:1.6}.quit-confirm-buttons{display:flex;gap:var(--spacing-md);justify-content:flex-end}.quit-confirm-cancel,.quit-confirm-quit{font-family:var(--font-mono);padding:var(--spacing-sm) var(--spacing-lg);border:2px solid;cursor:pointer;font-size:.9rem;text-transform:uppercase;letter-spacing:1px;transition:all .2s ease;background:var(--color-bg-primary)}.quit-confirm-cancel{border-color:var(--color-accent-cyan);color:var(--color-accent-cyan)}.quit-confirm-cancel:hover:not(:disabled){background:#00ffff1a;box-shadow:0 0 12px #00ffff4d}.quit-confirm-quit{border-color:#f03;color:#f03}.quit-confirm-quit:hover:not(:disabled){background:#ff00331a;box-shadow:0 0 12px #ff003380}.quit-confirm-cancel:disabled,.quit-confirm-quit:disabled{opacity:.6;cursor:not-allowed}.game-main{flex:1;padding:var(--spacing-xl)}.game-layout{display:grid;grid-template-columns:220px 1fr 280px;gap:var(--spacing-lg);max-width:1600px;margin:0 auto}.game-sidebar{display:flex;flex-direction:column;gap:var(--spacing-md)}.game-board{background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:8px;padding:var(--spacing-xl);min-height:400px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-text-secondary);position:relative}@media (max-width: 1400px){.game-layout{grid-template-columns:200px 1fr 260px;gap:var(--spacing-md)}}@media (max-width: 1024px){.game-layout{grid-template-columns:1fr}.game-sidebar-left{order:2}.game-board{order:1}.game-sidebar-right{order:3}}.loading{display:flex;align-items:center;justify-content:center;min-height:100vh;color:var(--color-accent-cyan);font-family:var(--font-mono)}.plot-info{position:absolute;top:20px;left:20px;background:var(--color-bg-secondary);border:2px solid var(--color-accent-cyan);border-radius:8px;padding:var(--spacing-md);font-family:var(--font-mono);color:var(--color-text-primary);box-shadow:0 0 10px #00ffff4d;z-index:10}.plot-info p{margin:var(--spacing-xs) 0;font-size:.9rem}.plot-info .plot-claimable{color:var(--color-accent-green);font-weight:700;margin-top:var(--spacing-sm)}.claim-error{position:absolute;top:80px;left:20px;background:var(--color-error);border:2px solid var(--color-accent-red);border-radius:8px;padding:var(--spacing-md);font-family:var(--font-mono);color:var(--color-text-primary);box-shadow:0 0 10px #ff00004d;z-index:10;max-width:300px;animation:slideIn .3s ease-out}.claim-loading{position:absolute;top:80px;left:20px;background:var(--color-bg-secondary);border:2px solid var(--color-accent-cyan);border-radius:8px;padding:var(--spacing-md);font-family:var(--font-mono);color:var(--color-accent-cyan);box-shadow:0 0 10px #00ffff4d;z-index:10;animation:pulse 1.5s ease-in-out infinite}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.game-board{position:relative}.phase-instructions{background:var(--color-bg-secondary);border-bottom:2px solid var(--color-accent-cyan);padding:var(--spacing-md) var(--spacing-xl);margin:0 auto;max-width:1600px;width:100%}.phase-instructions-content{display:flex;flex-direction:column;gap:var(--spacing-xs)}.phase-instructions-content h3{font-family:var(--font-mono);color:var(--color-accent-cyan);margin:0;font-size:18px;text-transform:uppercase;letter-spacing:2px;text-shadow:0 0 10px rgba(0,255,255,.5)}.phase-instructions-content p{font-family:var(--font-mono);color:var(--color-text-secondary);margin:0;font-size:14px;line-height:1.5}.phase-instructions-content .highlight-timer{color:var(--color-accent-cyan);font-weight:700;font-size:16px;text-shadow:0 0 10px rgba(0,255,255,.5);animation:pulse 1s ease-in-out infinite}.rover-deployment-overlay{position:fixed;top:0;left:0;right:0;z-index:100;pointer-events:none}.rover-deployment-banner{background:linear-gradient(180deg,#003250f2,#001e32e6);border-bottom:3px solid var(--color-accent-cyan);padding:20px 40px;text-align:center;box-shadow:0 4px 20px #00ffff4d;pointer-events:auto;animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.rover-deployment-banner h2{font-family:var(--font-mono);color:var(--color-accent-cyan);margin:0 0 10px;font-size:24px;text-transform:uppercase;letter-spacing:3px;text-shadow:0 0 15px rgba(0,255,255,.7)}.rover-deployment-banner p{font-family:var(--font-mono);color:var(--color-text-secondary);margin:5px 0;font-size:14px}.rover-deployment-banner p strong{color:var(--color-accent-orange);font-size:16px}.owned-plot-highlight{color:#0f8;font-weight:700;text-shadow:0 0 10px rgba(0,255,136,.5)}.cancel-deployment-btn{margin-top:15px;padding:10px 25px;background:transparent;border:2px solid var(--color-accent-orange);color:var(--color-accent-orange);font-family:var(--font-mono);font-size:14px;text-transform:uppercase;letter-spacing:2px;cursor:pointer;transition:all .2s ease}.cancel-deployment-btn:hover{background:var(--color-accent-orange);color:var(--color-bg-primary);box-shadow:0 0 15px #ff880080}.rover-deployment-banner .warning-text{color:#ff6b6b;font-size:12px;margin-top:10px;text-shadow:0 0 8px rgba(255,107,107,.4)}.rover-runaway-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:1000;pointer-events:none}.rover-runaway-sprite{font-size:64px;animation-duration:1.5s;animation-timing-function:ease-in;animation-fill-mode:forwards}.rover-runaway-sprite.runaway-up{animation-name:runaway-up}.rover-runaway-sprite.runaway-down{animation-name:runaway-down}.rover-runaway-sprite.runaway-left{animation-name:runaway-left}.rover-runaway-sprite.runaway-right{animation-name:runaway-right}@keyframes runaway-up{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(-100vh) scale(.3);opacity:0}}@keyframes runaway-down{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(100vh) scale(.3);opacity:0}}@keyframes runaway-left{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(-100vw) scale(.3);opacity:0}}@keyframes runaway-right{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(100vw) scale(.3);opacity:0}}.rover-runaway-text{font-family:var(--font-mono);font-size:24px;color:#ff6b6b;text-transform:uppercase;letter-spacing:3px;margin-top:20px;text-shadow:0 0 15px rgba(255,107,107,.7);animation:pulse-text .5s ease-in-out infinite alternate}@keyframes pulse-text{0%{opacity:.7;transform:scale(1)}to{opacity:1;transform:scale(1.05)}}.rover-deploy-animation-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;pointer-events:none}.rover-deploy-animation{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;background:linear-gradient(135deg,#003250f2,#001e32f2);border:3px solid var(--color-accent-cyan);border-radius:16px;box-shadow:0 0 40px #0ff6}.deploy-spinner,.deploy-transform,.deploy-complete{display:flex;flex-direction:column;align-items:center;gap:20px}.deploy-rover-icon{font-size:80px;animation:spin-deploy .5s linear infinite}.transform-icon{font-size:80px;animation:sparkle .3s ease-in-out infinite alternate}.complete-icon{font-size:100px;animation:pop-in .3s ease-out}.deploy-text{font-family:var(--font-mono);font-size:20px;color:var(--color-accent-cyan);text-transform:uppercase;letter-spacing:2px;text-shadow:0 0 15px rgba(0,255,255,.7)}@keyframes spin-deploy{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.1)}to{transform:rotate(360deg) scale(1)}}@keyframes sparkle{0%{transform:scale(1) rotate(-5deg);filter:brightness(1)}to{transform:scale(1.2) rotate(5deg);filter:brightness(1.5)}}@keyframes pop-in{0%{transform:scale(0);opacity:0}50%{transform:scale(1.3)}to{transform:scale(1);opacity:1}}.rover-deploy-spinning{animation:glow-pulse .5s ease-in-out infinite alternate}.rover-deploy-transforming{animation:glow-pulse .2s ease-in-out infinite alternate}.rover-deploy-complete{border-color:#0f0;box-shadow:0 0 40px #00ff0080}@keyframes glow-pulse{0%{box-shadow:0 0 20px #00ffff4d}to{box-shadow:0 0 50px #00ffffb3}}.auction-arena{flex:1;display:flex;flex-direction:column;background:#0000004d;border:2px solid rgba(255,255,255,.2);border-radius:12px;overflow:hidden;min-height:400px}.auction-canvas{width:100%;height:100%;cursor:pointer;transition:filter .2s ease}.auction-canvas:hover{filter:brightness(1.05)}.price-scale{position:absolute;left:0;top:0;bottom:0;width:60px;display:flex;flex-direction:column;justify-content:space-between;padding:60px 0;background:#00000080;border-right:1px solid rgba(255,255,255,.1)}.price-label{font-family:var(--font-mono);font-size:11px;color:#888;text-align:right;padding-right:8px}.store-line{position:absolute;left:60px;right:0;height:3px;pointer-events:none}.store-line-sell{background:linear-gradient(90deg,#ff6b6b,#ff6b6b00)}.store-line-buy{background:linear-gradient(90deg,#51e980,#51e98000)}.store-line-label{position:absolute;left:10px;top:-20px;font-family:var(--font-mono);font-size:11px;font-weight:700;white-space:nowrap}.store-line-sell .store-line-label{color:#ff6b6b}.store-line-buy .store-line-label{color:#51e980}.zone-label{position:absolute;left:50%;transform:translate(-50%);font-family:var(--font-mono);font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:2px;opacity:.5}.zone-label-sellers{top:20px;color:#ff6b6b}.zone-label-buyers{bottom:20px;color:#51e980}.auction-player{position:absolute;display:flex;flex-direction:column;align-items:center;transition:top .3s ease;cursor:pointer}.auction-player-avatar{width:48px;height:48px;border-radius:50%;border:3px solid currentColor;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;background:#0009;transition:all .2s ease}.auction-player.is-current .auction-player-avatar{border-width:4px;box-shadow:0 0 20px currentColor}.auction-player.is-seller{color:#ff6b6b}.auction-player.is-buyer{color:#51e980}.auction-player-name{font-family:var(--font-mono);font-size:11px;margin-top:4px;white-space:nowrap;max-width:80px;overflow:hidden;text-overflow:ellipsis}.auction-player-price{font-family:var(--font-mono);font-size:12px;font-weight:700;color:gold;margin-top:2px}.auction-player-quantity{font-family:var(--font-mono);font-size:10px;color:var(--color-accent-cyan)}.auction-player.is-walking .auction-player-avatar{animation:walking-bounce .3s ease-in-out infinite}@keyframes walking-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.trade-match{position:absolute;left:50%;transform:translate(-50%);background:#ffd700e6;color:#000;padding:8px 16px;border-radius:8px;font-family:var(--font-mono);font-weight:700;font-size:14px;animation:trade-flash .5s ease-out;pointer-events:none}@keyframes trade-flash{0%{opacity:0;transform:translate(-50%) scale(.5)}50%{opacity:1;transform:translate(-50%) scale(1.2)}to{opacity:1;transform:translate(-50%) scale(1)}}.click-hint{position:absolute;bottom:10px;left:50%;transform:translate(-50%);font-family:var(--font-mono);font-size:11px;color:#fff6}.auction-player-panel{display:flex;flex-direction:column;gap:var(--spacing-md)}.panel-title{font-size:1rem;color:var(--color-accent-cyan);text-transform:uppercase;letter-spacing:2px;margin:0;padding-bottom:var(--spacing-sm);border-bottom:1px solid rgba(0,255,255,.3)}.player-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.player-card{display:grid;grid-template-columns:48px 1fr auto auto;gap:var(--spacing-sm);align-items:center;padding:var(--spacing-sm);background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-left:4px solid var(--player-color, #888);border-radius:8px;transition:all .2s ease}.player-card:hover{background:#ffffff14}.player-card.is-current{background:#00ffff1a;border-color:var(--color-accent-cyan);box-shadow:0 0 15px #0ff3}.player-card.is-ai{opacity:.85}.player-avatar{position:relative;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#0006;border-radius:50%;border:2px solid var(--player-color, #888);overflow:hidden}.avatar-icon{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.avatar-placeholder{font-size:.9rem;font-weight:700;color:var(--color-text-primary)}.avatar-emoji{font-size:1.4rem}.ai-badge{position:absolute;bottom:-4px;right:-4px;font-size:.6rem;background:#ff6b6b;color:#000;padding:1px 4px;border-radius:4px;font-weight:700}.player-info{display:flex;flex-direction:column;gap:2px;min-width:0}.player-name{font-size:.85rem;font-weight:700;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:var(--spacing-xs)}.you-badge{font-size:.65rem;background:var(--color-accent-cyan);color:#000;padding:1px 4px;border-radius:4px;font-weight:700}.player-money{font-size:.75rem;color:gold}.player-resource-status{display:flex;align-items:center;gap:4px;font-size:.75rem}.resource-icon{font-size:.9rem}.resource-count{font-weight:700;color:var(--color-text-primary)}.status-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.5px}.status-critical .status-label{color:#f44;animation:pulse-critical 1s ease-in-out infinite}.status-low .status-label{color:#f84}.status-surplus .status-label{color:#51e980}@keyframes pulse-critical{0%,to{opacity:1}50%{opacity:.5}}.player-role{width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:1rem;background:#0006;border-radius:6px}.player-role.role-seller{background:#ff6b6b33}.player-role.role-buyer{background:#51e98033}.player-price{font-family:var(--font-mono);font-size:.9rem;font-weight:700;color:gold;min-width:50px;text-align:right}.resource-summary{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1)}.resource-summary h4{font-size:.8rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:1px;margin:0 0 var(--spacing-sm) 0}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-xs)}.resource-item{display:flex;align-items:center;justify-content:center;gap:4px;padding:var(--spacing-xs);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:.8rem}.resource-item.active{background:#00ffff26;border-color:var(--color-accent-cyan)}.resource-item .resource-emoji{font-size:1rem}.resource-item .resource-amount{font-weight:700;color:var(--color-text-primary)}.auction-trade-history{display:flex;flex-direction:column;gap:var(--spacing-md)}.panel-title{font-size:1rem;color:var(--color-accent-orange);text-transform:uppercase;letter-spacing:2px;margin:0;padding-bottom:var(--spacing-sm);border-bottom:1px solid rgba(255,165,0,.3)}.trade-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-xs)}.stat-item{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-xs);background:#ffffff0d;border-radius:6px}.stat-label{font-size:.65rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:.95rem;font-weight:700;color:var(--color-text-primary)}.stat-value.high{color:#51e980}.stat-value.low{color:#ff6b6b}.trade-list{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs);overflow-y:auto;max-height:300px}.no-trades{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--color-text-secondary);text-align:center;gap:var(--spacing-sm)}.no-trades-icon{font-size:2rem;opacity:.5}.no-trades-hint{font-size:.75rem;opacity:.6}.trade-item{display:flex;flex-direction:column;gap:4px;padding:var(--spacing-sm);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;animation:trade-slide-in .3s ease-out}@keyframes trade-slide-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.trade-item.store-trade{border-color:#ffa5004d;background:#ffa5001a}.trade-header{display:flex;justify-content:space-between;align-items:center}.trade-time{font-size:.7rem;color:var(--color-text-secondary);font-family:var(--font-mono)}.trade-price{font-size:.95rem;font-weight:700;color:gold}.trade-details{display:flex;align-items:center;gap:var(--spacing-xs)}.trade-quantity{font-size:.8rem;font-weight:700;color:var(--color-accent-cyan);min-width:30px}.trade-arrow{font-size:.9rem}.trade-parties{flex:1;display:flex;flex-direction:column;gap:2px;font-size:.7rem}.trade-buyer{color:#51e980}.trade-seller{color:#ff6b6b}.market-info{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1)}.market-info h4{font-size:.8rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:1px;margin:0 0 var(--spacing-sm) 0}.market-item{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:.8rem}.market-label{color:var(--color-text-secondary)}.market-value{color:var(--color-text-primary);font-weight:700}.market-item.spoilage,.market-item.spoilage .market-label,.market-item.spoilage .market-value{color:#f84}.auction-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,#0a0e27,#1a1a2e,#0a0e27);color:var(--color-text-primary);font-family:var(--font-mono)}.auction-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;font-size:1.5rem;color:var(--color-accent-cyan);gap:var(--spacing-md)}.auction-loading .loading-spinner{font-size:3rem;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auction-loading p{margin:0;font-family:var(--font-mono);letter-spacing:2px}.auction-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-xl);background:#0006;border-bottom:2px solid var(--color-accent-orange);box-shadow:0 4px 20px #ffa50033}.auction-title-section{display:flex;flex-direction:column;gap:var(--spacing-xs)}.auction-header h1{font-size:1.8rem;color:var(--color-accent-orange);text-transform:uppercase;letter-spacing:4px;text-shadow:0 0 20px rgba(255,165,0,.5);margin:0}.auction-phase-info{display:flex;flex-direction:column;gap:2px}.phase-title{font-size:1rem;font-weight:700;color:gold;text-transform:uppercase;letter-spacing:2px}.phase-subtitle{font-size:.75rem;color:var(--color-text-secondary)}.auction-timer{display:flex;align-items:center;gap:var(--spacing-sm);font-size:1.5rem;color:var(--color-accent-cyan);background:#00ffff1a;padding:var(--spacing-sm) var(--spacing-lg);border:2px solid var(--color-accent-cyan);border-radius:8px}.timer-icon{font-size:1.2rem}.timer-value{font-weight:700;min-width:50px;text-align:center}.auction-skip-button{font-family:var(--font-mono);background:transparent;border:2px solid #666;color:#888;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;font-size:.9rem;text-transform:uppercase;letter-spacing:1px;transition:all .2s ease}.auction-skip-button:hover{border-color:var(--color-accent-orange);color:var(--color-accent-orange);box-shadow:0 0 10px #ffa5004d}.auction-resource-tabs{display:flex;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:#0000004d;border-bottom:1px solid rgba(255,255,255,.1)}.resource-tab{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:#ffffff0d;border:2px solid rgba(255,255,255,.2);border-radius:8px;color:var(--color-text-secondary);cursor:pointer;font-family:var(--font-mono);font-size:.9rem;transition:all .2s ease}.resource-tab:hover{background:#ffffff1a;border-color:#fff6;color:var(--color-text-primary)}.resource-tab.active{background:#00ffff26;border-color:var(--color-accent-cyan);color:var(--color-accent-cyan);box-shadow:0 0 15px #00ffff4d}.resource-tab.completed{background:#51e9801a;border-color:#51e98080;color:#51e980;opacity:.7}.resource-tab.upcoming{opacity:.5;cursor:not-allowed}.resource-tab:disabled{cursor:default}.completed-check{color:#51e980;font-weight:700}.resource-emoji{font-size:1.2rem}.resource-name{font-weight:700;text-transform:uppercase;letter-spacing:1px}.resource-amount{background:#0006;padding:2px 8px;border-radius:4px;font-size:.8rem;color:var(--color-accent-orange)}.auction-main{flex:1;display:grid;grid-template-columns:280px 1fr 280px;gap:var(--spacing-lg);padding:var(--spacing-lg);max-width:1600px;margin:0 auto;width:100%}.auction-sidebar{background:#0006;border:2px solid rgba(255,255,255,.1);border-radius:12px;padding:var(--spacing-md);overflow-y:auto;max-height:calc(100vh - 250px)}.auction-sidebar-left{border-color:#00ffff4d}.auction-sidebar-right{border-color:#ffa5004d}.auction-arena-container{display:flex;flex-direction:column;gap:var(--spacing-md)}.auction-controls{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xl);padding:var(--spacing-md);background:#0006;border:2px solid rgba(255,255,255,.1);border-radius:12px}.auction-role-toggle{display:flex;gap:var(--spacing-sm)}.role-button{font-family:var(--font-mono);padding:var(--spacing-sm) var(--spacing-lg);background:#ffffff0d;border:2px solid rgba(255,255,255,.2);border-radius:8px;color:var(--color-text-secondary);cursor:pointer;font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;transition:all .2s ease}.role-button:hover{background:#ffffff1a;border-color:#fff6}.role-button.active{background:#0ff3;border-color:var(--color-accent-cyan);color:var(--color-accent-cyan);box-shadow:0 0 15px #00ffff4d}.auction-quantity{display:flex;align-items:center;gap:var(--spacing-sm)}.quantity-button{width:36px;height:36px;background:#ffffff1a;border:2px solid rgba(255,255,255,.3);border-radius:8px;color:var(--color-text-primary);font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .2s ease}.quantity-button:hover:not(:disabled){background:#fff3;border-color:var(--color-accent-orange);color:var(--color-accent-orange)}.quantity-button:disabled{opacity:.4;cursor:not-allowed}.quantity-value{font-size:1.2rem;font-weight:700;min-width:50px;text-align:center;color:var(--color-accent-orange)}.auction-player-info{display:flex;gap:var(--spacing-lg);font-size:1.1rem}.player-money{color:gold}.player-resource{color:var(--color-accent-cyan)}.role-selection-hint{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:#0009;border:2px solid rgba(255,215,0,.5);border-radius:12px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 0 10px #ffd7004d}50%{box-shadow:0 0 25px #ffd70099}}.hint-seller,.hint-buyer{display:flex;align-items:center;gap:var(--spacing-sm);font-size:1.1rem;font-weight:700}.hint-seller{color:#ff6b6b}.hint-buyer{color:#51e980}.hint-arrow{font-size:1.5rem;animation:bounce 1s ease-in-out infinite}.hint-seller .hint-arrow{animation-direction:normal}.hint-buyer .hint-arrow{animation-direction:reverse}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.hint-divider{color:var(--color-text-muted);font-size:.9rem}.auction-player-bar{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:#0006;border:2px solid rgba(255,255,255,.1);border-radius:12px}.player-role-display{display:flex;align-items:center;gap:var(--spacing-md)}.role-label{color:var(--color-text-secondary);font-size:.9rem}.role-value{font-size:1.1rem;font-weight:700;padding:var(--spacing-xs) var(--spacing-md);border-radius:6px}.role-value.role-seller{color:#ff6b6b;background:#ff6b6b33;border:1px solid rgba(255,107,107,.5)}.role-value.role-buyer{color:#51e980;background:#51e98033;border:1px solid rgba(81,233,128,.5)}.role-value.role-undecided{color:#888;background:#8883;border:1px solid rgba(136,136,136,.5)}.player-stats{display:flex;gap:var(--spacing-lg);font-size:1.1rem}@media (max-width: 1200px){.auction-main{grid-template-columns:1fr}.auction-sidebar{display:none}}@media (max-width: 768px){.auction-header h1{font-size:1.2rem;letter-spacing:2px}.auction-resource-tabs{flex-wrap:wrap}.resource-tab{padding:var(--spacing-xs) var(--spacing-sm);font-size:.8rem}.resource-name{display:none}.auction-controls{flex-wrap:wrap;gap:var(--spacing-md)}}.debug-panel{position:fixed;top:10px;right:10px;z-index:9999999!important;font-family:"Press Start 2P",Courier New,monospace;pointer-events:auto}.debug-toggle{background:#f60;color:#fff;border:3px solid #000;padding:14px 20px;font-weight:700;cursor:pointer;font-family:"Press Start 2P",monospace;font-size:14px;box-shadow:4px 4px #0000004d;transition:all .1s;position:relative;z-index:9999999}.debug-toggle:hover{background:#f80;transform:translate(-2px,-2px);box-shadow:6px 6px #0000004d}.debug-toggle:active{transform:translate(2px,2px);box-shadow:2px 2px #0000004d}.debug-content{position:absolute;top:65px;right:0;background:#000000fa;color:#0f0;border:3px solid #FF6600;padding:0;min-width:450px;max-width:500px;font-size:13px;box-shadow:8px 8px #00000080;max-height:calc(100vh - 80px);overflow-y:auto;display:block;visibility:visible;opacity:1;z-index:9999999;pointer-events:auto}.debug-header{display:flex;justify-content:space-between;align-items:center;background:#f60;color:#fff;padding:12px 16px;border-bottom:3px solid #000}.debug-header h3{margin:0;font-size:15px}.debug-close{background:transparent;border:none;color:#fff;font-size:24px;line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.debug-close:hover{color:#000}.debug-error{background:#8b0000;color:#fff;padding:12px 16px;margin:0;border-bottom:2px solid #000;font-size:11px;line-height:1.5}.debug-section{padding:16px;border-bottom:2px solid #333}.debug-section:last-child{border-bottom:none}.debug-section h4{color:#f60;margin:0 0 12px;font-size:14px}.debug-help{color:#888;margin:0 0 12px;font-size:11px;line-height:1.6}.debug-button{display:block;width:100%;margin-bottom:8px;padding:14px 16px;background:#000;color:#0f0;border:2px solid #00FF00;cursor:pointer;font-family:"Press Start 2P",monospace;font-size:12px;transition:all .1s;text-align:left;line-height:1.5}.debug-button:hover:not(:disabled){background:#0f0;color:#000;transform:translate(-2px,-2px);box-shadow:4px 4px #00ff004d}.debug-button:active:not(:disabled){transform:translate(0);box-shadow:none}.debug-button:disabled{opacity:.5;cursor:not-allowed;border-color:#666;color:#666}.debug-button.primary,.debug-button.active{background:#f60;border-color:#f60;color:#fff}.debug-button.primary:hover:not(:disabled),.debug-button.active:hover:not(:disabled){background:#f80;border-color:#f80;color:#fff}.debug-button.secondary{background:#1a1a2e;border-color:#00bfff;color:#00bfff}.debug-button.secondary:hover:not(:disabled){background:#00bfff;border-color:#00bfff;color:#000}.debug-button:last-child{margin-bottom:0}.debug-info{background:#111;border:2px solid #333;padding:12px}.debug-info-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:11px}.debug-info-row:last-child{margin-bottom:0}.debug-label{color:#888}.debug-value{color:#0f0;font-weight:700;word-break:break-all}.debug-checkbox{display:flex;align-items:center;margin-bottom:10px;cursor:pointer;font-size:12px}.debug-checkbox:last-child{margin-bottom:0}.debug-checkbox input[type=checkbox]{margin-right:10px;width:16px;height:16px;cursor:pointer}.debug-checkbox span{color:#0f0}.debug-checkbox input[type=checkbox]:checked+span{color:#0f0}.debug-checkbox input[type=checkbox]:not(:checked)+span{color:#666}.debug-footer{background:#111}.debug-note{color:#666;margin:0 0 8px;font-size:10px;line-height:1.5}.debug-note:last-child{margin-bottom:0}.debug-note code{background:#222;color:#f60;padding:2px 4px;border:1px solid #333}.debug-content::-webkit-scrollbar{width:8px}.debug-content::-webkit-scrollbar-track{background:#000}.debug-content::-webkit-scrollbar-thumb{background:#f60;border:1px solid #000}.debug-content::-webkit-scrollbar-thumb:hover{background:#f80}@media (max-width: 768px){.debug-panel{top:5px;right:5px}.debug-toggle{padding:8px 12px;font-size:8px}.debug-content{min-width:280px;max-width:calc(100vw - 20px);font-size:9px}.debug-header h3{font-size:10px}.debug-button{font-size:8px;padding:8px 10px}}.app{min-height:100vh;display:flex;flex-direction:column}.app:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(0,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,0,255,.1) 0%,transparent 50%);pointer-events:none;z-index:0}.app>*{position:relative;z-index:1}*{margin:0;padding:0;box-sizing:border-box}:root{--color-bg-primary: #0a0a0a;--color-bg-secondary: #1a1a2e;--color-bg-tertiary: #16213e;--color-accent-cyan: #00ffff;--color-accent-magenta: #ff00ff;--color-accent-yellow: #ffff00;--color-accent-green: #00ff00;--color-text-primary: #ffffff;--color-text-secondary: #cccccc;--color-text-muted: #888888;--color-border: #333333;--color-border-glow: #00ffff;--font-mono: "Courier New", monospace;--font-display: "Orbitron", sans-serif;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--glow-cyan: 0 0 10px rgba(0, 255, 255, .5);--glow-magenta: 0 0 10px rgba(255, 0, 255, .5)}body{font-family:var(--font-mono);background:var(--color-bg-primary);color:var(--color-text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;display:flex;flex-direction:column}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-accent-cyan);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-accent-magenta)}
