:root{--primary-color: #3c2415;--secondary-color: #2c5aa0;--accent-color: #b8860b;--success-color: #2d5016;--warning-color: #cd853f;--danger-color: #8b2635;--bg-primary: #f4f1e8;--bg-secondary: #ede7d3;--card-bg: #faf8f3;--text-primary: #3c2415;--text-secondary: #5d4e37;--text-muted: #8b7355;--border-color: #d4c4a8;--border-light: #e8dcc0;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .1), 0 10px 10px rgba(0, 0, 0, .04);--border-radius-sm: 6px;--border-radius: 12px;--border-radius-lg: 16px;--transition: all .2s cubic-bezier(.4, 0, .2, 1);--font-heading: "Poppins", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif}[data-theme=dark]{--primary-color: #f4f1e8;--secondary-color: #4a7bc8;--accent-color: #daa520;--success-color: #4a7c59;--warning-color: #daa520;--danger-color: #cd5c5c;--bg-primary: #2c1810;--bg-secondary: #3c2415;--card-bg: #3c2415;--text-primary: #f4f1e8;--text-secondary: #d4c4a8;--text-muted: #a0956b;--border-color: #5d4e37;--border-light: #3c2415;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 6px rgba(0, 0, 0, .3), 0 2px 4px rgba(0, 0, 0, .2);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .3), 0 4px 6px rgba(0, 0, 0, .2);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .3), 0 10px 10px rgba(0, 0, 0, .2)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);color:var(--text-primary);line-height:1.6;min-height:100vh;transition:var(--transition)}.theme-toggle{position:fixed;top:20px;right:20px;z-index:1000}.theme-toggle-btn{background:var(--card-bg);border:1px solid var(--border-color);border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-md);transition:var(--transition);font-size:1.2rem}.theme-toggle-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.container{max-width:1400px;margin:0 auto;padding:16px}.header{text-align:center;background:var(--card-bg);padding:32px 24px;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);margin-bottom:24px;border:2px solid var(--border-color);background:linear-gradient(135deg,var(--card-bg) 0%,var(--bg-secondary) 100%)}.header h1{font-family:var(--font-heading);font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:8px;letter-spacing:-.025em}.header-subtitle{color:var(--text-secondary);font-size:1rem;font-weight:400;max-width:600px;margin:0 auto}.player-management{background:var(--card-bg);padding:24px;border-radius:var(--border-radius);box-shadow:var(--shadow-md);margin-bottom:24px;border:1px solid var(--border-light)}.add-player-form{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}#playerNameInput{flex:1;min-width:240px;padding:12px 14px;border:2px solid var(--border-color);border-radius:var(--border-radius-sm);font-size:.9rem;font-family:var(--font-body);background:var(--card-bg);color:var(--text-primary);transition:var(--transition)}#playerNameInput:focus{outline:none;border-color:var(--secondary-color);box-shadow:0 0 0 3px #4299e11a}#playerNameInput::placeholder{color:var(--text-muted)}#addPlayerBtn{padding:12px 24px;background:var(--secondary-color);color:#fff;border:none;border-radius:var(--border-radius-sm);cursor:pointer;font-size:.9rem;font-weight:600;font-family:var(--font-body);transition:var(--transition);box-shadow:var(--shadow-sm)}#addPlayerBtn:hover{background:#3182ce;transform:translateY(-1px);box-shadow:var(--shadow-md)}.player-count{font-weight:600;color:var(--text-secondary);font-size:1rem}.game-area{display:grid;grid-template-columns:2fr 1fr;gap:24px;align-items:start}@media (max-width: 1024px){.game-area{grid-template-columns:1fr}}.players-container{display:flex;flex-direction:column;gap:16px}.player-card{background:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow-md);overflow:hidden;transition:var(--transition);animation:slideIn .4s cubic-bezier(.4,0,.2,1);border:1px solid var(--border-light)}.player-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}@keyframes slideIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.player-header{background:linear-gradient(135deg,var(--primary-color),#5d4e37);color:var(--card-bg);padding:20px 24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.player-name{font-family:var(--font-heading);font-size:1.25rem;font-weight:600;letter-spacing:-.025em}.player-total{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;letter-spacing:-.025em;text-shadow:0 1px 2px rgba(0,0,0,.1)}.remove-player-btn{background:var(--danger-color);color:#fff;border:none;padding:6px 12px;border-radius:var(--border-radius-sm);cursor:pointer;font-size:.8rem;font-weight:500;font-family:var(--font-body);transition:var(--transition);box-shadow:var(--shadow-sm)}.remove-player-btn:hover{background:#e53e3e;transform:translateY(-1px);box-shadow:var(--shadow-md)}.player-form{padding:24px}.scoring-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.score-category{background:var(--bg-secondary);padding:18px;border-radius:var(--border-radius);border-left:4px solid var(--secondary-color);transition:var(--transition);border:1px solid var(--border-light)}.score-category:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.score-category.military{border-left-color:var(--danger-color)}.score-category.treasury{border-left-color:var(--warning-color)}.score-category.wonder{border-left-color:#8b4513}.score-category.civic{border-left-color:var(--secondary-color)}.score-category.commercial{border-left-color:var(--accent-color)}.score-category.guilds{border-left-color:#639}.score-category.science{border-left-color:var(--success-color)}.category-title{font-family:var(--font-heading);font-size:1rem;font-weight:600;margin-bottom:6px;color:var(--text-primary);letter-spacing:-.025em}.category-subtitle{font-size:.8rem;color:var(--text-muted);margin-bottom:12px;line-height:1.5}.score-input{width:100%;padding:10px 12px;border:2px solid var(--border-color);border-radius:var(--border-radius-sm);font-size:.9rem;font-family:var(--font-body);background:var(--card-bg);color:var(--text-primary);transition:var(--transition)}.score-input:focus{outline:none;border-color:var(--secondary-color);box-shadow:0 0 0 3px #4299e11a}.calculated-score{margin-top:10px;font-weight:600;color:var(--primary-color);font-size:.8rem;padding:6px 10px;background:var(--warning-color);color:var(--card-bg);border-radius:var(--border-radius-sm);border:1px solid var(--border-color)}.science-inputs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.science-input-group{text-align:center}.science-input-group label{display:block;font-size:.8rem;font-weight:600;margin-bottom:6px;color:var(--text-primary);font-family:var(--font-body)}.science-input{width:100%;padding:8px 10px;border:2px solid var(--border-color);border-radius:var(--border-radius-sm);text-align:center;font-size:.9rem;font-family:var(--font-body);background:var(--card-bg);color:var(--text-primary);transition:var(--transition)}.science-input:focus{outline:none;border-color:var(--success-color);box-shadow:0 0 0 3px #48bb781a}.leaderboard{background:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow-md);padding:24px;position:sticky;top:16px;border:1px solid var(--border-light)}.leaderboard h2{font-family:var(--font-heading);text-align:center;margin-bottom:16px;color:var(--text-primary);font-size:1.25rem;font-weight:600;letter-spacing:-.025em}.leaderboard-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;margin-bottom:8px;background:var(--bg-secondary);border-radius:var(--border-radius-sm);transition:var(--transition);border:1px solid var(--border-light)}.leaderboard-item:hover{background:var(--border-color);transform:translate(4px);box-shadow:var(--shadow-sm)}.leaderboard-item.winner{background:linear-gradient(135deg,var(--warning-color),#daa520);color:var(--primary-color);font-weight:700;border:2px solid var(--warning-color);box-shadow:var(--shadow-md)}.leaderboard-item.winner:hover{transform:translate(4px) translateY(-1px);box-shadow:var(--shadow-lg)}.leaderboard-rank{font-family:var(--font-heading);font-weight:700;font-size:1rem;color:var(--text-primary);min-width:28px}.leaderboard-item.winner .leaderboard-rank{color:var(--primary-color)}.leaderboard-name{flex:1;margin-left:12px;font-weight:600;font-family:var(--font-body);font-size:.9rem}.leaderboard-score{font-family:var(--font-heading);font-weight:700;font-size:1.1rem;color:var(--success-color);letter-spacing:-.025em}.leaderboard-item.winner .leaderboard-score{color:var(--primary-color)}.reset-btn{width:100%;padding:12px 16px;background:var(--danger-color);color:#fff;border:none;border-radius:var(--border-radius-sm);cursor:pointer;font-size:.9rem;font-weight:600;font-family:var(--font-body);margin-top:16px;transition:var(--transition);box-shadow:var(--shadow-sm)}.reset-btn:hover{background:#e53e3e;transform:translateY(-1px);box-shadow:var(--shadow-md)}@media (max-width: 768px){.container{padding:12px}.header{padding:24px 20px}.header h1{font-size:2rem}.add-player-form{flex-direction:column}#playerNameInput{min-width:unset}.scoring-grid{grid-template-columns:1fr}.science-inputs{grid-template-columns:1fr;gap:16px}.player-header{flex-direction:column;gap:8px;text-align:center;padding:16px 20px}.player-form,.leaderboard{padding:20px}.theme-toggle{top:16px;right:16px}.theme-toggle-btn{width:44px;height:44px}}@media (max-width: 480px){.header{padding:20px 16px}.header h1{font-size:1.75rem}.player-form,.leaderboard{padding:16px}.player-management{padding:20px}}.player-card.removing{animation:slideOut .3s cubic-bezier(.4,0,1,1) forwards}@keyframes slideOut{to{opacity:0;transform:translate(-100%) scale(.9)}}button:focus-visible,input:focus-visible{outline:2px solid var(--secondary-color);outline-offset:2px}html{scroll-behavior:smooth}.loading{opacity:.7;pointer-events:none}.empty-state{text-align:center;color:var(--text-muted);font-style:italic;padding:32px 20px;background:var(--bg-secondary);border-radius:var(--border-radius);border:2px dashed var(--border-color);margin:16px 0}.empty-state p{font-size:1rem;margin-bottom:6px}.empty-state small{font-size:.8rem;opacity:.8}
