.bighead-board{display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:auto repeat(5,1fr);gap:8px;height:100%;width:100%;box-sizing:border-box;background-color:var(--color-board-bg);overflow:hidden}.loading{text-align:center;font-size:24px;margin:40px;color:var(--color-gold)}.category{display:grid;grid-template-rows:subgrid;grid-row:span 6}.category-title{background-color:var(--color-category-bg);color:var(--color-parchment);padding:10px 5px;text-align:center;font-weight:700;font-family:var(--font-game-display);text-transform:uppercase;letter-spacing:.08em;display:flex;align-items:center;justify-content:center;box-sizing:border-box;word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;border:1px solid var(--color-border);box-shadow:inset 0 1px 0 var(--color-inset-light),inset 0 -2px 0 var(--color-inset-dark)}.question{background-color:var(--color-cell-bg);color:var(--color-gold);padding:10px 5px;text-align:center;font-size:clamp(16px,2vw,24px);font-weight:700;font-family:var(--font-game-display);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;height:100%;box-sizing:border-box;border:1px solid var(--color-border);box-shadow:inset 0 1px 0 var(--color-inset-light),inset 0 -1px 0 var(--color-inset-dark)}.question:hover:not(.used){transform:translateY(-2px);box-shadow:inset 0 1px #ffffff14,0 4px 12px #0006,0 0 20px var(--color-highlight-glow);border-color:var(--color-gold);background-color:var(--color-cell-hover-bg)}.question.used{background-color:var(--color-cell-used);color:var(--color-cell-used-text);border-color:var(--color-cell-border-used);box-shadow:none;cursor:not-allowed}.category.placeholder{opacity:.8}.category.placeholder .category-title{background-color:var(--color-category-bg);color:var(--color-parchment);animation:pulse 1.5s infinite}.category.revealing{animation:reveal 1s ease-in-out}.question.placeholder{background-color:var(--color-category-bg);color:var(--color-parchment);cursor:default;animation:pulse 1.5s infinite}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}@keyframes reveal{0%{transform:rotateY(90deg);opacity:0}to{transform:rotateY(0);opacity:1}}.bighead-board.generating .category:not(.placeholder):not(.revealing){opacity:.7}.category.revealing .question:nth-child(2){animation-delay:.1s}.category.revealing .question:nth-child(3){animation-delay:.2s}.category.revealing .question:nth-child(4){animation-delay:.3s}.category.revealing .question:nth-child(5){animation-delay:.4s}.category.revealing .question:nth-child(6){animation-delay:.5s}.generating-overlay{position:absolute;top:10px;right:10px;background-color:#2c2519f2;color:var(--color-parchment);padding:15px;border-radius:5px;z-index:10;max-width:300px;box-shadow:0 0 20px #c9a84c33;border:1px solid var(--color-gold)}.generating-message h3{margin:0 0 10px;color:var(--color-gold);text-align:center}.generating-progress{display:flex;flex-direction:column;align-items:center}.progress-bar{width:100%;height:12px;background-color:var(--color-border);border-radius:6px;overflow:hidden;margin-bottom:5px}.progress-fill{height:100%;background-color:var(--color-gold);transition:width .5s ease}.progress-text{font-size:14px;color:var(--color-gold)}@media (max-width: 768px){.bighead-board{gap:4px;padding:4px}.category-title{padding:6px 3px;font-size:clamp(10px,2.5vw,14px);letter-spacing:0}.question{padding:6px 3px;font-size:clamp(12px,3vw,18px)}.generating-overlay{top:5px;right:5px;max-width:200px;padding:10px;font-size:.8rem}}@media (max-width: 480px){.bighead-board{gap:2px;padding:2px}.category-title{padding:4px 2px;font-size:clamp(8px,2.5vw,11px)}.question{padding:4px 2px;font-size:clamp(11px,3.5vw,16px)}}.modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--color-overlay);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background-color:var(--color-cell-bg);padding:3rem;width:100%;height:100%;text-align:center;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-light-text)}.modal-content h2{color:var(--color-gold);font-family:var(--font-game-display);font-size:1.8rem;margin-bottom:1rem}.modal-content p{color:var(--color-parchment);font-size:1.1rem;line-height:1.5}.modal-content .question-text{font-size:2.2rem;color:var(--color-bright-text);font-family:var(--font-game-display);line-height:1.6;margin:1.5rem 0}.modal-content .controls{margin-top:2rem}.modal-content button{background-color:var(--color-accent);color:var(--color-light-text);border:none;padding:1rem 2rem;font-size:1.2rem;border-radius:4px;cursor:pointer;transition:all .2s ease}.modal-content button:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--color-panel-overlay);background-color:var(--color-accent-hover)}.player-name-input,.player-preferences-input{padding:1rem;font-size:1.2rem;border-radius:4px;border:2px solid var(--color-border);background:var(--color-panel);color:var(--color-parchment);width:60%;margin-bottom:10px}.modal-content form{display:flex;flex-direction:column;justify-content:center;align-items:center;margin-top:1.5rem}.join-game-button{margin-top:10px;width:60%}.buzzer-status{margin-top:2rem;padding:1rem;border-radius:4px;font-size:1.5rem;color:var(--color-parchment)}.buzzer-status.active{background-color:var(--color-success);animation:pulse 2s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.buzzer-control{padding:1rem 2rem;margin:1rem 0;font-size:1.2em;border-radius:4px;border:none;cursor:pointer;transition:all .2s ease}.buzzer-control:not(.active){background-color:var(--color-accent);color:var(--color-light-text)}.buzzer-control.active{background-color:var(--color-success);color:var(--color-light-text)}.player-buzzer{padding:2rem;margin:1rem 0;text-align:center;font-size:1.5em;font-weight:700;border-radius:8px;transition:all .2s ease}.player-buzzer:not(.active){background-color:var(--color-accent);color:var(--color-light-text)}.player-buzzer.active{background-color:var(--color-success);color:var(--color-light-text);animation:pulse 1s infinite}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--color-cell-bg);display:flex;align-items:center;justify-content:center;z-index:1000}.double-big-head-banner{background-color:var(--color-gold);color:var(--color-board-bg);padding:5px 10px;border-radius:4px;font-weight:700;text-align:center;animation:pulse 1.5s infinite}.double-big-head h2{color:var(--color-gold);font-size:32px;animation:pulse 1.5s infinite;text-align:center}.double-big-head form{display:flex;flex-direction:column;gap:10px;margin-top:15px;max-width:400px;margin-left:auto;margin-right:auto}.double-big-head select,.double-big-head input{padding:8px 12px;border-radius:4px;border:1px solid var(--color-border);background-color:var(--color-panel);color:var(--color-parchment);font-size:16px}.double-big-head input[type=number]{width:100%}.double-big-head form button{background-color:var(--color-gold);color:var(--color-board-bg);font-weight:700;border:none;padding:10px;border-radius:4px;cursor:pointer;transition:all .2s ease;margin-top:10px}.double-big-head form button:hover{background-color:var(--color-gold-hover);transform:translateY(-1px);box-shadow:0 4px 12px var(--color-panel-overlay)}.show-question-btn{background-color:var(--color-gold)!important;color:var(--color-board-bg)!important;font-weight:700;font-size:18px;padding:12px 20px!important;margin-top:15px;animation:pulse 1.5s infinite;border:none!important;border-radius:4px;cursor:pointer;transition:all .2s ease}.show-question-btn:hover{background-color:var(--color-gold-hover)!important;transform:translateY(-1px);box-shadow:0 4px 12px var(--color-panel-overlay)}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.admin-controls form{display:flex;flex-direction:column;gap:10px;margin-top:15px}.admin-controls select,.admin-controls input{padding:8px;font-size:16px;border:1px solid var(--color-border);border-radius:4px}.admin-controls form button{padding:10px;background-color:var(--color-category-bg);color:var(--color-parchment);border:none;border-radius:4px;font-size:16px;font-weight:700;cursor:pointer}.admin-controls form button:hover{background-color:var(--color-border)}.timer-container{position:absolute;bottom:0;left:0;width:100%;height:10px;background-color:var(--color-panel-overlay);overflow:hidden}.timer-bar{height:100%;background-color:var(--color-gold);transition:width .05s linear}.player-answering{background-color:#0000001a;padding:1rem;margin:1rem 0;border-radius:8px;text-align:center}.player-answering p{margin:5px 0;font-size:1.2em}.answer-prompt{color:var(--color-gold);font-weight:700;font-size:1.3em!important;animation:pulse 1.5s infinite}.bet-input-container{display:flex;flex-direction:column;align-items:center;gap:15px;margin-top:20px}.bet-controls{display:flex;align-items:center;gap:10px}.bet-input{width:150px;padding:12px 15px;font-size:24px;text-align:center;border:2px solid var(--color-gold);border-radius:8px;background-color:var(--color-panel);color:var(--color-gold);font-weight:700}.bet-input:focus{outline:none;border-color:var(--color-parchment)}.bet-range{color:var(--color-parchment);font-size:14px}.bet-submit-btn{background-color:var(--color-gold)!important;color:var(--color-board-bg)!important;font-weight:700;font-size:18px;padding:15px 40px!important;border:none!important;border-radius:8px;cursor:pointer;transition:all .2s ease}.bet-submit-btn:hover{background-color:var(--color-gold-hover)!important;transform:translateY(-1px);box-shadow:0 4px 12px var(--color-panel-overlay)}.waiting-message{color:var(--color-parchment);font-size:18px;font-style:italic;margin-top:20px}.buzzed-in-message{color:var(--color-gold);font-size:1.4em;font-weight:700;margin-top:20px;animation:pulse 1.5s infinite}.answer-input-container{display:flex;gap:10px;justify-content:center;margin-top:20px}.answer-input{flex:1;max-width:400px;padding:12px 15px;font-size:20px;border:2px solid var(--color-gold);border-radius:8px;background-color:var(--color-panel);color:var(--color-parchment)}.answer-input:focus{outline:none;border-color:var(--color-parchment)}.answer-submit-btn{background-color:var(--color-gold)!important;color:var(--color-board-bg)!important;font-weight:700;font-size:18px;padding:12px 24px!important;border:none!important;border-radius:8px;cursor:pointer}.answer-submitted-text{color:var(--color-gold);font-size:18px;font-style:italic;margin-top:20px}@media (max-width: 768px){.modal-content{padding:1.5rem}.modal-content .question-text{font-size:1.4rem}.modal-content h2{font-size:1.3rem}.player-name-input,.player-preferences-input,.join-game-button{width:90%}.player-buzzer{padding:1.5rem;font-size:1.2em}.bet-input{width:120px;font-size:20px}.answer-input-container{flex-direction:column;align-items:center}.answer-input{max-width:90%;width:100%}}@media (max-width: 480px){.modal-content{padding:1rem}.modal-content .question-text{font-size:1.1rem;margin:1rem 0}.modal-content button{padding:.75rem 1.5rem;font-size:1rem}}.score-board{display:flex;flex-direction:column;min-height:0;overflow-y:auto;padding:15px}.score-board h2{text-align:center;color:var(--color-gold);margin-bottom:20px;border-bottom:1px solid var(--color-border);padding-bottom:10px;flex-shrink:0;font-family:var(--font-game-display)}.player-scores{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.player-score{display:flex;justify-content:space-between;align-items:center;background-color:var(--color-subtle-highlight);padding:15px;border-radius:5px}.player-name{font-weight:700;font-size:1.2rem;color:var(--color-parchment)}.score{font-family:var(--font-game-display);font-size:1.5rem;color:var(--color-gold);font-weight:700}.chat-section{margin-top:auto;display:flex;flex-direction:column}@media (max-width: 768px){.score-board{padding:10px;flex-shrink:0;overflow-y:auto;max-height:40%}.score-board h2{margin-bottom:10px;font-size:1rem}.player-scores{gap:8px;margin-bottom:10px}.player-score{padding:10px}.player-name{font-size:1rem}.score{font-size:1.2rem}}.chat-window{display:flex;flex-direction:column;flex:1;min-height:200px;background-color:var(--color-panel-overlay);overflow:hidden;margin:10px;border:1px solid var(--color-border)}.chat-header{background-color:var(--color-category-bg);padding:10px;border-bottom:1px solid var(--color-border)}.chat-header h3{margin:0;color:var(--color-gold);text-align:center;font-size:1rem}.chat-messages{flex:1;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:8px}.chat-message{background-color:var(--color-subtle-highlight);padding:8px;border-radius:4px;max-width:100%}.empty-chat-message{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-muted-alt);font-style:italic;text-align:center}.message-header{display:flex;justify-content:space-between;margin-bottom:5px;font-size:.8rem}.message-user{font-weight:700;color:var(--color-gold)}.message-time{color:var(--color-muted-alt)}.message-text{word-break:break-word;color:var(--color-parchment)}.chat-input{display:flex;border-top:1px solid var(--color-border);background-color:var(--color-panel);padding:8px}.chat-input input{flex:1;padding:8px;border:1px solid var(--color-border);border-radius:4px 0 0 4px;background-color:var(--color-category-bg);color:var(--color-parchment)}.chat-input input::placeholder{color:var(--color-muted-alt)}.chat-input button{background-color:var(--color-accent);color:var(--color-light-text);border:none;border-radius:0 4px 4px 0;padding:0 15px;font-weight:700;cursor:pointer}.chat-input button:hover{background-color:var(--color-accent-hover)}@media (max-width: 768px){.chat-window{min-height:0;flex:1;margin:5px;overflow:hidden}.chat-header{padding:8px;flex-shrink:0}.chat-header h3{font-size:.875rem}.chat-messages{padding:8px;min-height:0;flex:1;overflow-y:auto}.chat-input{flex-shrink:0}}.theme-selector{display:flex;gap:8px;justify-content:center;margin-top:16px}.theme-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--color-border);border-radius:20px;background:transparent;color:var(--color-muted);cursor:pointer;font-size:.75rem;transition:all .2s ease}.theme-btn:hover{border-color:var(--color-gold);color:var(--color-parchment)}.theme-btn.active{border-color:var(--color-gold);color:var(--color-gold);background:var(--color-subtle-bg)}.theme-swatch{width:14px;height:14px;border-radius:50%;border:1px solid rgba(255,255,255,.2)}.theme-swatch--ancient-map{background:linear-gradient(135deg,#2c2519 50%,#c9a84c 50%)}.theme-swatch--classic{background:linear-gradient(135deg,#060ce9 50%,#d4a843 50%)}.theme-swatch--midnight{background:linear-gradient(135deg,#121212 50%,#bb86fc 50%)}.theme-label{white-space:nowrap}.voice-selector{margin-top:8px}.voice-label{display:block;font-size:1rem;color:var(--color-gold);font-weight:600;margin-bottom:8px}.voice-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.voice-option{display:flex;flex-direction:column;align-items:center;padding:10px 8px;background:var(--color-subtle-bg, rgba(212, 197, 169, .05));border:2px solid var(--color-border);border-radius:8px;color:var(--color-parchment);cursor:pointer;transition:all .2s ease;text-align:center}.voice-option:hover:not(:disabled){border-color:var(--color-gold);background:#c9a84c1a}.voice-option.active{border-color:var(--color-gold);background:#c9a84c26}.voice-option:disabled{opacity:.6;cursor:not-allowed}.voice-name{font-weight:700;font-size:.95rem}.voice-desc{font-size:.75rem;color:var(--color-muted);margin-top:2px;line-height:1.2}@media (max-width: 480px){.voice-options{grid-template-columns:1fr 1fr;gap:6px}.voice-option{padding:8px 6px}.voice-name{font-size:.85rem}}.home-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;background:var(--color-board-bg);padding:20px}.home-container{background:var(--color-cell-bg);border:2px solid var(--color-border);border-radius:8px;padding:40px;max-width:400px;width:100%;box-shadow:0 8px 40px #0006,0 0 60px var(--color-highlight-glow-lg)}.home-title{text-align:center;color:var(--color-gold);font-size:2.5rem;font-weight:700;font-family:var(--font-game-display);margin-bottom:40px;letter-spacing:2px}.home-section{margin-bottom:24px}.home-divider{display:flex;align-items:center;margin:30px 0;color:var(--color-muted)}.home-divider:before,.home-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.home-divider span{padding:0 16px;font-size:.875rem}.home-button{width:100%;padding:16px 24px;font-size:1.125rem;font-weight:700;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:1px}.home-button:disabled{opacity:.7;cursor:not-allowed}.create-button{background:var(--color-accent);color:var(--color-light-text)}.create-button:hover:not(:disabled){background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px var(--color-accent-subtle-border)}.join-button{background:#d4c5a91a;color:var(--color-parchment);border:2px solid var(--color-border)}.join-button:hover:not(:disabled){background:var(--color-border);transform:translateY(-2px);box-shadow:0 4px 12px var(--color-panel-overlay)}.join-form{display:flex;flex-direction:column;gap:16px}.input-group{display:flex;flex-direction:column;gap:8px}.input-group label{color:var(--color-parchment);font-size:.875rem}.home-input{width:100%;padding:12px 16px;font-size:1rem;border:2px solid var(--color-border);border-radius:8px;background:var(--color-input-bg);color:var(--color-parchment);transition:border-color .2s ease}.home-input:focus{outline:none;border-color:var(--color-gold)}.home-input::placeholder{color:#d4c5a966}.home-input:disabled{opacity:.7}.home-textarea{resize:vertical;min-height:80px;max-height:200px;font-family:inherit;line-height:1.5}.preferences-group label{font-size:1rem!important;color:var(--color-gold)!important;font-weight:600}.back-button{background:transparent;color:var(--color-muted);border:1px solid var(--color-border)}.back-button:hover:not(:disabled){color:var(--color-parchment);border-color:var(--color-muted)}.home-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:var(--color-border);outline:none;cursor:pointer}.home-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--color-gold);cursor:pointer}.home-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--color-gold);border:none;cursor:pointer}.home-slider:disabled{opacity:.7;cursor:not-allowed}.checkbox-label{display:flex;align-items:center;gap:10px;color:var(--color-parchment);font-size:.875rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-gold);cursor:pointer}@media (max-width: 480px){.home-container{padding:24px 16px}.home-title{font-size:2rem;margin-bottom:24px}.home-button{padding:14px 20px;font-size:1rem}}.home-footer{position:fixed;bottom:16px;right:20px;display:flex;gap:10px}.floating-btn{display:flex;align-items:center;gap:8px;padding:10px 18px;background:var(--color-cell-bg);color:var(--color-parchment);text-decoration:none;border-radius:8px;font-size:14px;font-weight:500;box-shadow:0 4px 6px -1px #0003,0 2px 4px -1px #0000001a;border:1px solid var(--color-border);transition:all .2s;white-space:nowrap}.floating-btn:hover{box-shadow:0 10px 15px -3px #0003,0 4px 6px -2px #0000001a;transform:translateY(-2px)}.floating-btn:active{transform:translateY(0)}.floating-btn svg{flex-shrink:0}.github-btn:hover{background:var(--color-border)}.deploy-btn{background:var(--color-accent);color:var(--color-light-text);border-color:var(--color-accent)}.deploy-btn:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}@media (max-width: 480px){.floating-btn span{display:none}.floating-btn{padding:12px;border-radius:50%;width:44px;height:44px;justify-content:center}}.lobby-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;background:var(--color-board-bg);padding:20px}.lobby-container{background:var(--color-cell-bg);border:2px solid var(--color-border);border-radius:8px;padding:40px;max-width:500px;width:100%;box-shadow:0 8px 40px #0006,0 0 60px var(--color-highlight-glow-lg)}.lobby-title{text-align:center;color:var(--color-gold);font-size:2rem;font-weight:700;font-family:var(--font-game-display);margin-bottom:30px;letter-spacing:2px}.game-code-section{text-align:center;margin-bottom:30px;padding:20px;background:var(--color-subtle-bg);border-radius:8px}.game-code-label{display:block;color:var(--color-muted);font-size:.875rem;margin-bottom:8px}.game-code-display{display:flex;align-items:center;justify-content:center;gap:12px}.game-code{font-size:2.5rem;font-weight:700;color:var(--color-gold);letter-spacing:8px;font-family:monospace}.copy-button{padding:8px 16px;font-size:.875rem;background:#c9a84c26;border:1px solid var(--color-gold);border-radius:4px;color:var(--color-gold);cursor:pointer;transition:all .2s ease}.copy-button:hover{background:#c9a84c40}.game-code-hint{color:var(--color-muted);font-size:.75rem;margin-top:12px}.players-section{margin-bottom:30px}.players-title{color:var(--color-parchment);font-size:1.125rem;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--color-border)}.players-list{list-style:none;padding:0;margin:0}.player-item{display:flex;flex-direction:column;padding:12px 16px;background:var(--color-subtle-bg);border-radius:8px;margin-bottom:8px;color:var(--color-parchment)}.player-item.empty{color:var(--color-muted);font-style:italic;justify-content:center}.player-info{display:flex;align-items:center;gap:8px}.player-item .player-name{font-weight:500;color:var(--color-light-text)}.player-preferences{font-size:.85em;color:var(--color-muted);font-style:italic;margin-top:4px}.host-badge{font-size:.75rem;padding:4px 8px;background:var(--color-gold);color:var(--color-board-bg);border-radius:4px;font-weight:700}.host-controls{margin-top:20px}.start-button{width:100%;padding:16px 24px;font-size:1.25rem;font-weight:700;background:var(--color-accent);color:var(--color-light-text);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:1px}.start-button:hover:not(:disabled){background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px var(--color-accent-subtle-border)}.start-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.start-hint{text-align:center;color:var(--color-muted);font-size:.875rem;margin-top:8px}.waiting-message{text-align:center;color:var(--color-parchment);font-style:italic;padding:20px}.loading{text-align:center;color:var(--color-parchment);font-size:1.125rem;padding:40px}.error-message{margin-top:20px;padding:12px 16px;background:var(--color-accent-subtle);border:1px solid var(--color-accent-subtle-border);border-radius:8px;color:var(--color-accent);text-align:center;font-size:.875rem}.lobby-button{margin-top:20px;width:100%;padding:12px 24px;font-size:1rem;background:#d4c5a91a;border:1px solid var(--color-border);border-radius:8px;color:var(--color-parchment);cursor:pointer;transition:all .2s ease}.lobby-button:hover{background:var(--color-border)}@media (max-width: 480px){.lobby-container{padding:24px 16px}.lobby-title{font-size:1.5rem;margin-bottom:20px}.game-code{font-size:2rem;letter-spacing:4px}.start-button{padding:14px 20px;font-size:1.1rem}}.end-game-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;background:var(--color-board-bg);padding:20px}.end-game-container{background:var(--color-cell-bg);border:2px solid var(--color-border);border-radius:8px;padding:40px;max-width:500px;width:100%;box-shadow:0 8px 40px #0006,0 0 60px var(--color-highlight-glow-lg);text-align:center}.end-game-title{color:var(--color-gold);font-size:2rem;font-weight:700;font-family:var(--font-game-display);margin-bottom:8px;letter-spacing:2px}.end-game-winner{color:var(--color-gold);font-size:1.5rem;font-family:var(--font-game-display);margin-bottom:30px;animation:winner-glow 2s ease-in-out infinite}@keyframes winner-glow{0%,to{text-shadow:0 0 10px rgba(201,168,76,.3)}50%{text-shadow:0 0 20px rgba(201,168,76,.6),0 0 40px rgba(201,168,76,.2)}}.end-game-scoreboard{margin-bottom:30px}.end-game-scoreboard h3{color:var(--color-parchment);font-size:1.125rem;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--color-border)}.end-game-scores{list-style:none;padding:0;margin:0}.end-game-score-row{display:flex;align-items:center;padding:12px 16px;background:var(--color-subtle-bg);border-radius:8px;margin-bottom:8px;color:var(--color-parchment);font-size:1rem;animation:score-slide-in .4s ease-out both}.end-game-score-row:nth-child(1){animation-delay:.1s}.end-game-score-row:nth-child(2){animation-delay:.2s}.end-game-score-row:nth-child(3){animation-delay:.3s}.end-game-score-row:nth-child(4){animation-delay:.4s}.end-game-score-row:nth-child(5){animation-delay:.5s}@keyframes score-slide-in{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.end-game-score-row.winner{background:#c9a84c26;border:1px solid var(--color-gold);color:var(--color-gold);font-weight:700}.end-game-rank{width:2rem;text-align:center;font-weight:700;opacity:.6}.end-game-name{flex:1;text-align:left}.end-game-score{font-family:var(--font-game-display);min-width:5rem;text-align:right}.end-game-actions{display:flex;flex-direction:column;gap:12px}.end-game-play-again{width:100%;padding:16px 24px;font-size:1.25rem;font-weight:700;background:var(--color-accent);color:var(--color-light-text);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:1px}.end-game-play-again:hover{background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px var(--color-accent-subtle-border)}.end-game-play-again:disabled{opacity:.6;cursor:not-allowed;transform:none}.end-game-share{width:100%;padding:12px 24px;font-size:1rem;background:#d4c5a91a;border:1px solid var(--color-border);border-radius:8px;color:var(--color-parchment);cursor:pointer;transition:all .2s ease}.end-game-share:hover{background:var(--color-border)}.end-game-home{width:100%;padding:12px 24px;font-size:1rem;background:transparent;border:1px solid var(--color-border);border-radius:8px;color:var(--color-muted);cursor:pointer;transition:all .2s ease}.end-game-home:hover{color:var(--color-parchment);border-color:var(--color-muted)}@media (max-width: 480px){.end-game-container{padding:24px 16px}.end-game-title{font-size:1.5rem}.end-game-winner{font-size:1.2rem}.end-game-play-again{padding:14px 20px;font-size:1.1rem}}:root,[data-theme=ancient-map]{--color-board-bg: #2C2519;--color-cell-bg: #3E3328;--color-cell-text: #C9A84C;--color-cell-value: #C9A84C;--color-cell-used: rgba(44, 37, 25, .4);--color-cell-used-text: rgba(201, 168, 76, .2);--color-category-bg: #4A3F30;--color-category-text: #D4C5A9;--color-gold: #C9A84C;--color-gold-hover: #D4B85C;--color-parchment: #D4C5A9;--color-light-text: #EFE6D8;--color-bright-text: #F5F0E8;--color-border: #5C4833;--color-panel: #38322B;--color-muted: #7A756D;--color-muted-alt: #8A8078;--color-accent: #A33E3E;--color-accent-hover: #8B3535;--color-success: #2F4F3E;--color-success-hover: #264033;--color-error: #A33E3E;--color-overlay: rgba(20, 17, 12, .92);--color-panel-overlay: rgba(0, 0, 0, .3);--color-cell-hover-bg: #463A2D;--color-cell-border-used: rgba(92, 72, 51, .25);--color-highlight-glow: rgba(201, 168, 76, .12);--color-highlight-glow-lg: rgba(201, 168, 76, .06);--color-highlight-glow-md: rgba(201, 168, 76, .08);--color-subtle-bg: rgba(92, 72, 51, .3);--color-subtle-highlight: rgba(74, 63, 48, .3);--color-accent-subtle: rgba(163, 62, 62, .15);--color-accent-subtle-border: rgba(163, 62, 62, .4);--color-input-bg: rgba(212, 197, 169, .12);--color-inset-light: rgba(255, 255, 255, .06);--color-inset-dark: rgba(0, 0, 0, .15);--color-chat-input-bg: rgba(255, 255, 255, .9);--color-chat-input-text: #2B2B2B;--font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", Oxygen, Ubuntu, sans-serif;--font-game-display: Georgia, "Times New Roman", Times, serif;--font-size-small: .875rem;--font-size-base: 1rem;--font-size-medium: 1.25rem;--font-size-large: 1.5rem;--font-size-xlarge: 2rem;--font-size-xxlarge: 2.5rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 12px;--shadow-sm: 0 1px 3px rgba(43, 43, 43, .1);--shadow-md: 0 4px 6px rgba(43, 43, 43, .1);--shadow-lg: 0 10px 20px rgba(43, 43, 43, .15)}[data-theme=classic]{--color-board-bg: #060CE9;--color-cell-bg: #0A11A8;--color-cell-text: #D4A843;--color-cell-value: #D4A843;--color-cell-used: rgba(6, 12, 120, .4);--color-cell-used-text: rgba(212, 168, 67, .2);--color-category-bg: #0D14C0;--color-category-text: #FFFFFF;--color-gold: #D4A843;--color-gold-hover: #E0B94F;--color-parchment: #E0D5C0;--color-light-text: #FFFFFF;--color-bright-text: #FFFFFF;--color-border: #1A22D4;--color-panel: #050BA0;--color-muted: #8888CC;--color-muted-alt: #9999BB;--color-accent: #C23030;--color-accent-hover: #A02828;--color-success: #2E7D32;--color-success-hover: #1B5E20;--color-error: #C23030;--color-overlay: rgba(3, 5, 80, .94);--color-panel-overlay: rgba(0, 0, 40, .3);--color-cell-hover-bg: #0E18B8;--color-cell-border-used: rgba(26, 34, 212, .25);--color-highlight-glow: rgba(212, 168, 67, .15);--color-highlight-glow-lg: rgba(212, 168, 67, .06);--color-highlight-glow-md: rgba(212, 168, 67, .08);--color-subtle-bg: rgba(13, 20, 192, .4);--color-subtle-highlight: rgba(10, 17, 168, .4);--color-accent-subtle: rgba(194, 48, 48, .15);--color-accent-subtle-border: rgba(194, 48, 48, .4);--color-input-bg: rgba(255, 255, 255, .12);--color-inset-light: rgba(255, 255, 255, .1);--color-inset-dark: rgba(0, 0, 0, .2);--color-chat-input-bg: rgba(255, 255, 255, .9);--color-chat-input-text: #1A1A3E}[data-theme=midnight]{--color-board-bg: #121212;--color-cell-bg: #1E1E1E;--color-cell-text: #BB86FC;--color-cell-value: #BB86FC;--color-cell-used: rgba(18, 18, 18, .5);--color-cell-used-text: rgba(187, 134, 252, .2);--color-category-bg: #2A2A2A;--color-category-text: #E0E0E0;--color-gold: #BB86FC;--color-gold-hover: #D1A3FF;--color-parchment: #CCCCCC;--color-light-text: #E0E0E0;--color-bright-text: #F0F0F0;--color-border: #333333;--color-panel: #181818;--color-muted: #666666;--color-muted-alt: #777777;--color-accent: #CF6679;--color-accent-hover: #B05060;--color-success: #03DAC6;--color-success-hover: #018786;--color-error: #CF6679;--color-overlay: rgba(0, 0, 0, .94);--color-panel-overlay: rgba(0, 0, 0, .4);--color-cell-hover-bg: #2A2A2A;--color-cell-border-used: rgba(51, 51, 51, .3);--color-highlight-glow: rgba(187, 134, 252, .12);--color-highlight-glow-lg: rgba(187, 134, 252, .06);--color-highlight-glow-md: rgba(187, 134, 252, .08);--color-subtle-bg: rgba(42, 42, 42, .5);--color-subtle-highlight: rgba(30, 30, 30, .5);--color-accent-subtle: rgba(207, 102, 121, .15);--color-accent-subtle-border: rgba(207, 102, 121, .4);--color-input-bg: rgba(255, 255, 255, .08);--color-inset-light: rgba(255, 255, 255, .04);--color-inset-dark: rgba(0, 0, 0, .2);--color-chat-input-bg: rgba(255, 255, 255, .9);--color-chat-input-text: #121212}.app{display:flex;flex-direction:column;height:100vh;height:100dvh;background-color:var(--color-board-bg);color:var(--color-light-text)}.admin-bar{background-color:var(--color-panel);padding:10px;border-bottom:2px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.admin-bar .admin-controls{flex:1;background:transparent;padding:.5rem}.admin-indicator{background-color:var(--color-gold);color:var(--color-board-bg);padding:5px 10px;border-radius:4px;font-weight:700}.main-content{display:flex;flex:1;overflow:hidden;height:calc(100vh - 50px);height:calc(100dvh - 50px)}.board-container{flex:3;position:relative;display:flex;align-items:stretch;justify-content:stretch;background-color:var(--color-board-bg);height:100%;width:100%;overflow:hidden;padding:0;margin:0;box-sizing:border-box}.score-container{flex:1;min-width:250px;max-width:300px;background-color:var(--color-panel);border-left:2px solid var(--color-border);display:flex;flex-direction:column;height:100%;overflow:hidden}.waiting-screen{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;text-align:center;padding:20px;margin:0 auto;width:100%;max-width:800px}.waiting-screen h2{color:var(--color-gold);margin-bottom:20px;width:100%;text-align:center}.waiting-screen p{text-align:center;width:100%;color:var(--color-parchment)}.current-players{margin-top:30px;background-color:var(--color-subtle-highlight);padding:20px;border-radius:8px;width:100%;max-width:500px;margin-left:auto;margin-right:auto}.current-players h3{color:var(--color-gold);margin-bottom:15px}.current-players ul{list-style:none;padding:0}.current-players li{background-color:var(--color-category-bg);color:var(--color-parchment);margin:8px 0;padding:10px;border-radius:4px}.modal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:var(--color-overlay);display:flex;align-items:center;justify-content:center;z-index:1000}@media (max-width: 768px){.main-content{flex-direction:column;overflow:hidden;height:calc(100vh - 50px);height:calc(100dvh - 50px)}.board-container{flex:none;height:auto;min-height:60vw;overflow:auto}.score-container{flex:1;min-width:0;max-width:none;width:100%;border-left:none;border-top:2px solid var(--color-border);min-height:0;overflow:hidden;display:flex;flex-direction:column}.admin-bar{flex-wrap:wrap;gap:8px}.modal-overlay{position:fixed}}@media (max-width: 480px){.board-container{min-height:70vw}}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-board-bg);color:var(--color-light-text);overflow:hidden}*{box-sizing:border-box}#root{height:100vh;height:100dvh}.app-container{padding:20px}.game-header{text-align:center;margin-bottom:20px}.modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--color-overlay);display:flex;align-items:center;justify-content:center}.modal-content{background-color:var(--color-cell-bg);padding:3rem;border-radius:10px;max-width:80%;text-align:center;border:2px solid var(--color-border);box-shadow:0 8px 40px #00000080,0 0 60px var(--color-highlight-glow-md);color:var(--color-light-text)}
