@import url(https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700&family=Cinzel+Decorative:wght@400;700&family=Crimson+Text:ital,wght@0,400;0,600;1,400&display=swap);:root{--bg-dark:#111120;--bg-card:#19192a;--bg-card2:#1f1f35;--accent-red:#8b0000;--accent-red-hover:#a80000;--accent-gold:#c9a84c;--accent-silver:#b0b0c8;--text-primary:#e0d4c0;--text-muted:#7a7a8a;--border-red:rgba(139,0,0,.45);--border-gold:rgba(201,168,76,.4);--shadow-dark:0 4px 24px rgba(0,0,0,.8)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#111120;background-color:var(--bg-dark);background-image:radial-gradient(ellipse at top,#1e1e48 0,transparent 55%),radial-gradient(ellipse at bottom right,#2a1010 0,transparent 50%);color:#e0d4c0;color:var(--text-primary);font-family:Crimson Text,Georgia,serif;font-size:1.1rem;line-height:1.6;min-height:100vh}h1,h2,h3,h4{font-family:Cinzel,serif;letter-spacing:.04em}a{color:#c9a84c;color:var(--accent-gold);text-decoration:none;transition:color .2s}a:hover,button{color:#e0d4c0;color:var(--text-primary)}button{background:#8b0000;background:var(--accent-red);border:1px solid rgba(180,0,0,.5);border-radius:4px;cursor:pointer;font-family:Cinzel,serif;font-size:.82rem;letter-spacing:.06em;margin:4px;padding:8px 18px;transition:background .2s,box-shadow .2s,border-color .2s}button:hover{background:#a80000;background:var(--accent-red-hover);border-color:rgba(200,0,0,.7);box-shadow:0 0 14px rgba(139,0,0,.5)}button.btn-secondary{background:transparent;border:1px solid #7a7a8a;border:1px solid var(--text-muted);color:#7a7a8a;color:var(--text-muted)}button.btn-danger{border:1px solid rgba(200,60,60,.7);color:rgba(220,80,80,.9)}button.btn-danger:hover{background:rgba(200,60,60,.12);border-color:rgba(220,80,80,.9)}button.btn-secondary:hover{background:hsla(0,0%,100%,.04);border-color:#e0d4c0;border-color:var(--text-primary);box-shadow:none;color:#e0d4c0;color:var(--text-primary)}button.btn-danger{background:transparent;border:1px solid #c0392b;color:#c0392b}button.btn-danger:hover{background:rgba(192,57,43,.12);border-color:#e74c3c;box-shadow:none;color:#e74c3c}.navbar{align-items:center;border-bottom:1px solid rgba(139,0,0,.45);border-bottom:1px solid var(--border-red);display:flex;margin:0 auto;max-width:1100px;padding:16px 28px;position:relative}.navbar h1{color:#8b0000;color:var(--accent-red);font-family:Cinzel Decorative,Cinzel,serif;font-size:1.3rem;text-shadow:0 0 24px rgba(139,0,0,.6)}.navbar .links{align-items:center;display:flex;gap:4px;margin-left:auto}.navbar .lang-switcher{gap:4px;margin-left:16px}.navbar .lang-btn{border-radius:6px;font-size:1rem;line-height:1;padding:3px 8px}.navbar a{color:#e0d4c0;color:var(--text-primary);font-family:Cinzel,serif;font-size:.82rem;letter-spacing:.06em;margin-left:20px;opacity:.85;padding:4px 6px}.navbar a:hover{color:#c9a84c;color:var(--accent-gold);opacity:1}.navbar-hamburger{border:none;cursor:pointer;display:none;flex-direction:column;gap:5px;justify-content:center;margin:0 0 0 auto;padding:6px}.navbar-hamburger,.navbar-hamburger:hover{background:transparent;box-shadow:none}.navbar-hamburger span{background:#e0d4c0;background:var(--text-primary);border-radius:2px;display:block;height:2px;transition:opacity .2s,-webkit-transform .2s;transition:transform .2s,opacity .2s;transition:transform .2s,opacity .2s,-webkit-transform .2s;width:22px}.content{margin:40px auto;max-width:1100px;padding:0 24px}.games-page h2{color:#c9a84c;color:var(--accent-gold);font-size:1rem;letter-spacing:.1em;margin:28px 0 12px;text-transform:uppercase}.games-list{margin-top:8px}.games-preview{background:#19192a;background:var(--bg-card);border:1px solid rgba(139,0,0,.45);border:1px solid var(--border-red);border-radius:6px;margin:8px 0;padding:14px 20px;transition:border-color .2s,box-shadow .2s}.games-preview:hover{border-color:rgba(139,0,0,.8);box-shadow:0 0 18px rgba(139,0,0,.18)}.games-preview p{color:#e0d4c0;color:var(--text-primary);font-family:Cinzel,serif;font-size:.95rem}.games-preview a:hover p{color:#c9a84c;color:var(--accent-gold)}.game-details article{background:#19192a;background:var(--bg-card);border:1px solid rgba(139,0,0,.45);border:1px solid var(--border-red);border-radius:8px;box-shadow:0 4px 24px rgba(0,0,0,.8);box-shadow:var(--shadow-dark);margin-bottom:16px;padding:28px}.game-details h2{color:#c9a84c;color:var(--accent-gold);font-family:Cinzel Decorative,Cinzel,serif;font-size:1.5rem;margin-bottom:20px;text-shadow:0 0 24px rgba(201,168,76,.25)}.phase-banner{border-radius:6px;font-family:Cinzel,serif;font-size:1.05rem;font-weight:600;letter-spacing:.08em;margin-bottom:18px;padding:10px 20px;text-align:center}.phase-banner.night{background:linear-gradient(135deg,#08082a,#14144a);border:1px solid rgba(100,100,220,.25);color:#b8c4f0;text-shadow:0 0 12px rgba(150,160,255,.4)}.phase-banner.day{background:linear-gradient(135deg,#1e1206,#2e1c0a);border:1px solid rgba(200,140,40,.35);color:#f0c870;text-shadow:0 0 12px hsla(43,82%,67%,.35)}.phase-banner.ended{background:#1f1f35;background:var(--bg-card2);border:1px solid rgba(139,0,0,.45);border:1px solid var(--border-red)}.phase-banner.ended,.privacy-toggle{color:#7a7a8a;color:var(--text-muted)}.privacy-toggle{background:transparent;border:1px solid var(--border);border-radius:6px;cursor:pointer;display:block;font-size:.85rem;margin-bottom:10px;padding:8px 14px;text-align:center;width:100%}.privacy-toggle:hover{border-color:#c9a84c;border-color:var(--accent-gold);color:#c9a84c;color:var(--accent-gold)}.privacy-placeholder{align-items:center;border:1px dashed var(--border);border-radius:6px;color:#7a7a8a;color:var(--text-muted);display:flex;flex-direction:column;gap:10px;margin:10px 0;padding:28px 18px;text-align:center}.privacy-placeholder p{font-size:.95rem;margin:0}.my-role-card{background:rgba(201,168,76,.04);border:1px solid rgba(201,168,76,.4);border:1px solid var(--border-gold);border-radius:6px;margin:14px 0;padding:14px 18px}.my-role-card .role-name{color:#c9a84c;color:var(--accent-gold);font-family:Cinzel,serif;font-size:1.05rem}.my-role-card .role-desc{color:#7a7a8a;color:var(--text-muted);font-size:.95rem;margin-top:4px}.eliminated-badge{color:#c33;font-size:.9rem;margin-left:10px}.gm-panel{background:rgba(201,168,76,.03);border:1px solid rgba(201,168,76,.4);border:1px solid var(--border-gold);border-radius:6px;margin-bottom:18px;padding:18px}.gm-panel h3{color:#c9a84c;color:var(--accent-gold);font-size:.95rem;letter-spacing:.1em;margin:0 0 14px;text-transform:uppercase}.gm-panel .btn-row{display:flex;flex-wrap:wrap;gap:8px}.gm-panel .gm-roles{color:#7a7a8a;color:var(--text-muted);font-size:.9rem;margin-top:14px}.gm-panel .gm-roles strong{color:#e0d4c0;color:var(--text-primary);font-family:Cinzel,serif;font-size:.85rem;letter-spacing:.05em}.gm-panel ul{margin:6px 0;padding-left:20px}.gm-panel li.dead{color:#7a7a8a;color:var(--text-muted);opacity:.55}.resolution-box{border-left:3px solid #8b0000;border-left:3px solid var(--accent-red);border-radius:6px;font-size:1rem}.recap-box,.resolution-box{background:#1f1f35;background:var(--bg-card2);margin:14px 0;padding:14px 18px}.recap-box{border-left:3px solid #c9a84c;border-left:3px solid var(--accent-gold);border-radius:8px}.recap-title{color:#7a7a8a;color:var(--text-muted);font-size:.9rem;font-weight:700;letter-spacing:.05em;margin:0 0 8px;text-transform:uppercase}.recap-entry{font-size:.95rem;margin:4px 0}.recap-dead{color:#e67e7e}.recap-turned{color:#a29bfe}.recap-seer{color:#74b9ff}.recap-role{color:#7a7a8a;color:var(--text-muted);cursor:default;font-size:.85em;position:relative}.recap-role:hover .role-chip-popover{display:block}.lovers-card{background:#1f1f35;background:var(--bg-card2);border-left:3px solid #fd79a8;border-radius:8px;color:#fd79a8;font-size:.95rem;margin:10px 0;padding:10px 14px}.cupid-selected{color:#7a7a8a;color:var(--text-muted);font-size:.9rem;margin-bottom:8px}.cupid-name{color:#fd79a8;margin-left:8px}.end-screen{background:#1f1f35;background:var(--bg-card2);border:1px solid rgba(201,168,76,.4);border:1px solid var(--border-gold);border-radius:8px;margin:14px 0;padding:36px;text-align:center}.end-screen h2{color:#c9a84c;color:var(--accent-gold);margin-bottom:8px}.end-screen h3{color:#7a7a8a;color:var(--text-muted);font-size:.9rem;letter-spacing:.08em;margin-bottom:12px;text-transform:uppercase}.end-screen ul{list-style:none;margin:12px 0;padding:0}.end-screen li{margin:6px 0}.end-screen li.dead{opacity:.65}.end-screen li.dead,.lobby-info{color:#7a7a8a;color:var(--text-muted)}.lobby-info{font-size:1rem;margin-bottom:12px}.lobby-players{list-style:none;margin:10px 0;padding:0}.lobby-players li{border-bottom:1px solid hsla(0,0%,100%,.04);color:#e0d4c0;color:var(--text-primary);font-family:Cinzel,serif;font-size:.9rem;padding:6px 4px}.wolf-panel h3{color:#c33;font-size:1.05rem;margin-bottom:14px}.vote-list,.wolf-panel ul{list-style:none;padding:0}.vote-list li,.wolf-panel li{align-items:center;border-bottom:1px solid hsla(0,0%,100%,.04);display:flex;padding:9px 4px}.vote-list .player-name,.wolf-panel .player-name{flex:1 1}.village-sleep{color:#7a7a8a;color:var(--text-muted);padding:36px;text-align:center}.village-sleep .sleep-text{color:#8090c0;font-family:Cinzel,serif;font-size:1.4rem;margin-bottom:8px}.day-phase h3{color:#f0c870;font-size:1.05rem;margin-bottom:14px}.game-layout{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:200px 1fr}@media (max-width:700px){.game-layout{grid-template-columns:1fr}.history-panel{order:2;position:static}.game-main{order:1}}.game-main{min-width:0}.history-panel{background:#111120;background:var(--bg-dark);border:1px solid hsla(0,0%,100%,.06);border-radius:6px;padding:14px 12px;position:-webkit-sticky;position:sticky;top:20px}.history-panel h4{color:#7a7a8a;color:var(--text-muted);font-family:Cinzel,serif;font-size:.78rem;letter-spacing:.1em;margin-bottom:10px;text-transform:uppercase}.history-round-list{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.history-round-btn{background:transparent;border:1px solid hsla(0,0%,100%,.07);border-radius:4px;color:#7a7a8a;color:var(--text-muted);font-size:.78rem;margin:0;padding:5px 10px;text-align:left;transition:all .15s}.history-round-btn:hover{background:hsla(0,0%,100%,.04);box-shadow:none;color:#e0d4c0;color:var(--text-primary)}.history-round-btn.active{background:rgba(201,168,76,.08);border-color:rgba(201,168,76,.4);border-color:var(--border-gold);box-shadow:none;color:#c9a84c;color:var(--accent-gold)}.history-votes{border-top:1px solid hsla(0,0%,100%,.05);padding-top:10px}.history-vote-row{align-items:center;border-bottom:1px solid hsla(0,0%,100%,.03);display:flex;font-size:.82rem;gap:5px;padding:4px 0}.hv-voter{color:#e0d4c0;color:var(--text-primary);flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hv-arrow{color:#8b0000;color:var(--accent-red);flex-shrink:0}.hv-target{color:#c44;flex:1 1;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.history-empty{font-size:.82rem}.history-empty,.vote-count-hint{color:#7a7a8a;color:var(--text-muted);font-style:italic}.vote-count-hint{font-size:.88rem;margin-top:10px}.current-vote{color:#e0d4c0;color:var(--text-primary);font-size:.95rem;margin-bottom:10px}.change-hint{color:#7a7a8a;color:var(--text-muted);font-size:.85rem;font-style:italic}.vote-list li.voted,.wolf-panel li.voted{background:rgba(139,0,0,.08);border-radius:4px}.vote-list li.voted .player-name,.wolf-panel li.voted .player-name{color:#c9a84c;color:var(--accent-gold)}.wolf-message-section{border-top:1px solid hsla(0,0%,100%,.07);margin-top:18px;padding-top:14px}.wolf-message-label{color:#7a7a8a;color:var(--text-muted);font-size:.9rem;margin-bottom:8px}.wolf-msg-compose{display:flex;flex-direction:column;gap:6px}.wolf-msg-input{background:#19192a;background:var(--bg-card);border:1px solid rgba(180,60,60,.4);border-radius:4px;box-sizing:border-box;color:#e0d4c0;color:var(--text-primary);font-family:Crimson Text,serif;font-size:.95rem;padding:8px 10px;resize:vertical;width:100%}.wolf-msg-input:focus{border-color:rgba(180,60,60,.8);outline:none}.wolf-msg-footer{align-items:center;display:flex;justify-content:space-between}.char-count{font-size:.78rem}.char-count,.recap-wolf-message{color:#7a7a8a;color:var(--text-muted)}.recap-wolf-label{color:#e0d4c0;color:var(--text-primary);font-style:normal;font-weight:600}.vote-tally{color:#7a7a8a;color:var(--text-muted);font-size:.9rem;margin-top:18px}.vote-tally strong{color:#e0d4c0;color:var(--text-primary);font-family:Cinzel,serif;font-size:.85rem}.vote-tally ul{margin-top:6px;padding-left:20px}.players-list-section{border-top:1px solid hsla(0,0%,100%,.05);margin-top:24px;padding-top:16px}.players-list-section strong{color:#7a7a8a;color:var(--text-muted);font-family:Cinzel,serif;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.players-list-section ul{margin-top:10px;padding-left:20px}.players-list-section li{margin:4px 0}.players-list-section li.dead{color:#7a7a8a;color:var(--text-muted);opacity:.55}.players-list-section li.you{color:#c9a84c;color:var(--accent-gold)}.status-waiting{font-style:italic;padding:4px 0}.status-waiting,.wolves-info{color:#7a7a8a;color:var(--text-muted)}.wolves-info{font-size:.85rem;margin-top:14px}.role-modal-overlay{align-items:center;background:rgba(0,0,0,.92);display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.role-modal-card{background:#19192a;background:var(--bg-card);border:1px solid rgba(201,168,76,.4);border:1px solid var(--border-gold);border-radius:10px;box-shadow:0 0 60px rgba(201,168,76,.12),0 4px 24px rgba(0,0,0,.8);box-shadow:0 0 60px rgba(201,168,76,.12),var(--shadow-dark);max-width:400px;padding:44px 40px;text-align:center;width:90%}.role-modal-card .modal-label{color:#7a7a8a;color:var(--text-muted);font-family:Cinzel,serif;font-size:.8rem;letter-spacing:.2em;margin-bottom:18px;text-transform:uppercase}.role-modal-card .role-title{color:#c9a84c;color:var(--accent-gold);font-family:Cinzel Decorative,Cinzel,serif;font-size:2rem;margin:4px 0 18px;text-shadow:0 0 24px rgba(201,168,76,.4)}.role-modal-card .role-desc{color:#7a7a8a;color:var(--text-muted);font-size:1rem;line-height:1.65;margin-bottom:24px}.chat-section{border-top:1px solid hsla(0,0%,100%,.06);margin-top:28px;padding-top:20px}.chat-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:12px}.chat-collapse-toggle{color:#7a7a8a;color:var(--text-muted);font-size:.85rem}.chat-day-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.chat-day-tab{background:none;border:1px solid #444;border-radius:4px;color:#7a7a8a;color:var(--text-muted);cursor:pointer;font-size:.8rem;padding:2px 10px}.chat-day-tab.active{border-color:#f0c870;color:#f0c870}.chat-readonly-label{color:#7a7a8a;color:var(--text-muted);font-size:.78rem;font-style:italic;margin:0 0 6px}.chat-section h3{color:#f0c870;font-size:1rem;letter-spacing:.08em;margin-bottom:12px}.chat-section.wolf-chat h3{color:#c33}.chat-messages{background:#111120;background:var(--bg-dark);border:1px solid hsla(0,0%,100%,.06);border-radius:6px;display:flex;flex-direction:column;gap:8px;margin-bottom:10px;max-height:260px;min-height:120px;overflow-y:auto;padding:12px}.chat-empty{color:#7a7a8a;color:var(--text-muted);font-size:.9rem;font-style:italic;margin-top:20px;text-align:center}.chat-msg{align-items:baseline;display:flex;font-size:.97rem;gap:8px}.chat-msg.mine .chat-author{color:#c9a84c;color:var(--accent-gold)}.chat-author{color:#b0b0c8;color:var(--accent-silver);flex-shrink:0;font-family:Cinzel,serif;font-size:.78rem;white-space:nowrap}.chat-author:after{content:":"}.chat-text{color:#e0d4c0;color:var(--text-primary);word-break:break-word}.chat-time{flex-shrink:0;margin-left:auto;opacity:.7;white-space:nowrap}.chat-date-separator,.chat-time{color:#7a7a8a;color:var(--text-muted);font-size:.7rem}.chat-date-separator{align-items:center;display:flex;gap:8px;margin:4px 0 2px}.chat-date-separator:after,.chat-date-separator:before{background:hsla(0,0%,100%,.1);content:"";flex:1 1;height:1px}.chat-input-row{display:flex;gap:8px}.chat-input-row input{background:#111120;background:var(--bg-dark);border:1px solid rgba(139,0,0,.45);border:1px solid var(--border-red);border-radius:4px;color:#e0d4c0;color:var(--text-primary);flex:1 1;font-family:Crimson Text,serif;font-size:1rem;padding:8px 12px}.chat-input-row input:focus{border-color:rgba(139,0,0,.8);outline:none}.chat-input-row button{flex-shrink:0;margin:0}.wolf-chat .chat-input-row input{border-color:rgba(139,0,0,.5)}.dead-role{color:#7a7a8a;color:var(--text-muted);cursor:default;font-size:.88rem;font-style:italic;position:relative}.dead-role:hover .role-chip-popover{display:block}.tab-switcher{border-bottom:1px solid hsla(0,0%,100%,.06);display:flex;gap:4px;margin:16px 0;padding-bottom:0}.tab-btn{border:none;border-bottom:2px solid transparent;border-radius:0;color:#7a7a8a;color:var(--text-muted);cursor:pointer;font-family:Cinzel,serif;font-size:.82rem;letter-spacing:.06em;margin:0;padding:8px 18px;transition:color .2s,border-color .2s}.tab-btn,.tab-btn:hover{background:transparent;box-shadow:none}.tab-btn:hover{border-bottom-color:#7a7a8a;border-bottom-color:var(--text-muted);color:#e0d4c0;color:var(--text-primary)}.tab-btn.active{background:transparent;border-bottom-color:#c9a84c;border-bottom-color:var(--accent-gold);box-shadow:none;color:#c9a84c;color:var(--accent-gold)}.admin-tab{padding-top:8px}.admin-controls{margin-bottom:20px}.admin-controls h3{color:#c9a84c;color:var(--accent-gold);font-size:.9rem;letter-spacing:.1em;margin-bottom:10px;text-transform:uppercase}.admin-roles-section{border-top:1px solid hsla(0,0%,100%,.05);margin-top:20px;padding-top:16px}.admin-roles-header{align-items:center;display:flex;margin-bottom:12px}.admin-roles-header strong{color:#7a7a8a;color:var(--text-muted);font-family:Cinzel,serif;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.admin-player-list{list-style:none;padding:0}.admin-player-list li{align-items:center;border-bottom:1px solid hsla(0,0%,100%,.04);display:flex;padding:8px 4px}.admin-player-list li.dead{opacity:.5}.admin-player-list .player-name{flex:1 1}.player-role-badge{background:rgba(201,168,76,.08);border:1px solid rgba(201,168,76,.4);border:1px solid var(--border-gold);border-radius:3px;font-family:Cinzel,serif;font-size:.78rem;margin-left:8px;padding:2px 10px}.admin-page h2,.player-role-badge{color:#c9a84c;color:var(--accent-gold)}.admin-page h2{margin-bottom:8px}.admin-subtitle{color:#7a7a8a;color:var(--text-muted);font-size:.95rem;margin-bottom:16px}.admin-game-list{display:flex;flex-direction:column;gap:12px}.admin-game-card{background:#19192a;background:var(--bg-card);border:1px solid rgba(139,0,0,.45);border:1px solid var(--border-red);border-radius:6px;padding:16px 20px;transition:border-color .2s}.admin-game-card:hover{border-color:rgba(139,0,0,.7)}.admin-game-card.deleted{border-style:dashed;opacity:.5}.admin-game-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.admin-game-title{flex:1 1;font-family:Cinzel,serif;font-size:1rem}.admin-phase-tag{border-radius:3px;font-family:Cinzel,serif;font-size:.75rem;letter-spacing:.05em;padding:3px 10px}.admin-phase-tag.night{background:rgba(80,80,180,.15);border:1px solid rgba(100,100,200,.2);color:#b8c4f0}.admin-phase-tag.day{background:rgba(200,140,40,.12);border:1px solid rgba(200,140,40,.25);color:#f0c870}.admin-phase-tag.lobby{background:rgba(201,168,76,.08);border:1px solid rgba(201,168,76,.4);border:1px solid var(--border-gold);color:#c9a84c;color:var(--accent-gold)}.admin-phase-tag.ended{background:hsla(0,0%,39%,.1);border:1px solid hsla(0,0%,39%,.2);color:#7a7a8a;color:var(--text-muted)}.deleted-tag{border:1px solid rgba(200,50,50,.3);border-radius:3px;color:#c33;font-size:.75rem;padding:2px 8px}.admin-game-actions{display:flex;gap:8px}.admin-game-actions a{text-decoration:none}.home{text-align:center}.home img{border:2px solid rgba(139,0,0,.5);border-radius:50%;box-shadow:0 0 40px rgba(139,0,0,.55),0 0 80px rgba(139,0,0,.2);max-width:280px}.home h3{color:#7a7a8a;color:var(--text-muted);font-style:italic;text-align:center}.profile{margin:0 auto;max-width:400px;text-align:center}.profile label{color:#7a7a8a;color:var(--text-muted);display:block;font-size:.9rem;margin-top:8px;text-align:left}.profile h2{color:#c9a84c;color:var(--accent-gold);margin-bottom:24px}.profile input,.profile select,.profile textarea{background:#19192a;background:var(--bg-card);border:1px solid rgba(139,0,0,.45);border:1px solid var(--border-red);border-radius:4px;box-sizing:border-box;color:#e0d4c0;color:var(--text-primary);display:block;font-family:Crimson Text,serif;font-size:1rem;margin:6px 0;padding:8px 12px;width:100%}.loginForm{margin:0 auto;max-width:400px;text-align:center}.loginForm input{background:#19192a;background:var(--bg-card);border:1px solid rgba(139,0,0,.45);border:1px solid var(--border-red);border-radius:4px;box-sizing:border-box;color:#e0d4c0;color:var(--text-primary);display:block;font-family:Crimson Text,serif;font-size:1rem;margin:6px 0;padding:8px 12px;width:100%}.loading-text{color:#7a7a8a;color:var(--text-muted);font-style:italic;padding:20px 0;text-align:center}.error-text{color:#c33;font-size:.95rem}.configured-roles{background:#1f1f35;background:var(--bg-card2);border-left:3px solid var(--gold);border-radius:8px;margin:12px 0;padding:12px 16px}.configured-roles strong{color:var(--gold);display:block;margin-bottom:8px}.configured-roles-list{display:flex;flex-wrap:wrap;gap:6px}.role-chip{background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.3);border-radius:20px;color:var(--text-secondary);cursor:default;font-size:.82rem;padding:3px 10px;position:relative}.role-chip-popover{background:#1f1f35;background:var(--bg-card2);border:1px solid rgba(201,168,76,.4);border-radius:6px;bottom:calc(100% + 6px);color:var(--text-secondary);display:none;font-size:.78rem;left:50%;line-height:1.4;padding:8px 10px;pointer-events:none;position:absolute;text-align:left;-webkit-transform:translateX(-50%);transform:translateX(-50%);white-space:normal;width:200px;z-index:10}.role-chip:hover .role-chip-popover{display:block}.role-chip.wolf{background:rgba(139,0,0,.18);border-color:rgba(139,0,0,.4);color:#c87070}.lives-tag,.mutant-tag{font-size:.8rem;margin-left:8px;opacity:.8}.mutant-badge{background:rgba(80,200,80,.1);border:1px solid rgba(80,200,80,.3);border-radius:6px;color:#80c880;font-size:.9rem;margin-top:8px;padding:6px 10px}.lobby-warning{color:var(--gold);font-size:.9rem;opacity:.8}.night-role-panel{background:#1f1f35;background:var(--bg-card2);border-left:3px solid var(--gold);border-radius:10px;margin-bottom:16px;padding:16px}.night-role-panel h3{margin:0 0 12px}.seer-panel{border-left-color:#7b9fd4}.witch-panel{border-left-color:#b07ad4}button.btn-skip{background:transparent;border:1px dashed #7a7a8a;border:1px dashed var(--text-muted);color:#7a7a8a;color:var(--text-muted);font-size:.78rem;margin-top:10px}button.btn-skip:hover{border-color:#e0d4c0;border-color:var(--text-primary);box-shadow:none;color:#e0d4c0;color:var(--text-primary)}button.btn-undo{background:transparent;border:1px solid #e67e7e;color:#e67e7e;font-size:.78rem;margin-left:10px}button.btn-undo:hover{background:hsla(0,68%,70%,.1);box-shadow:none}.action-committed{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.action-skipped{display:flex;gap:10px}.action-skipped,.action-skipped-inline{align-items:center;color:#7a7a8a;color:var(--text-muted);font-style:italic}.action-skipped-inline{display:inline-flex;gap:8px}.protector-panel{border-left-color:#5ab57a}.barber-panel{border-left-color:#d4a45a}.reveal-result{color:var(--gold)}.witch-victim{color:#c87070;font-size:.95rem}.witch-action{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}.potion-used{color:#7a7a8a;color:var(--text-muted);font-size:.85rem;font-style:italic}.action-done{color:#80c880;font-size:.9rem}.role-hint{color:#7a7a8a;color:var(--text-muted);font-size:.85rem;font-style:italic;margin-bottom:8px}.compact-list{list-style:none;margin:4px 0;padding:0}.compact-list li{align-items:center;display:flex;gap:8px;padding:3px 0}button.selected-target{background:rgba(212,175,55,.1);border-color:var(--gold);color:var(--gold)}.role-config-section{background:#1f1f35;background:var(--bg-card2);border-radius:10px;margin-bottom:20px;padding:16px}.role-config-header{align-items:center;display:flex;margin-bottom:12px}.role-config-header strong{color:var(--gold)}.config-empty{color:#7a7a8a;color:var(--text-muted);font-size:.9rem;font-style:italic}.role-config-display{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.role-config-row{align-items:center;background:rgba(201,168,76,.1);border:1px solid rgba(201,168,76,.25);border-radius:20px;display:flex;font-size:.85rem;gap:6px;padding:4px 12px}.role-config-row.wolf{background:rgba(139,0,0,.15);border-color:rgba(139,0,0,.35)}.rc-count{color:var(--gold);font-weight:700}.role-config-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-top:8px;max-height:420px;overflow-y:auto;padding-right:4px}.role-config-item{background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.07);border-radius:8px;padding:8px 12px;transition:background .2s}.role-config-item.selected{background:rgba(201,168,76,.08);border-color:rgba(201,168,76,.3)}.role-config-item.wolf.selected{background:rgba(139,0,0,.1);border-color:rgba(139,0,0,.3)}.role-config-item label{align-items:center;cursor:pointer;display:flex;gap:8px;margin-bottom:4px}.role-config-item label input[type=checkbox]{accent-color:var(--gold)}.wolf-tag{background:rgba(139,0,0,.2);border-radius:10px;color:#c87070;font-size:.7rem;padding:1px 6px}.rc-desc{color:#7a7a8a;color:var(--text-muted);font-size:.75rem;line-height:1.4;margin:0}.rc-count-input{background:#111120;background:var(--bg-dark);border:1px solid var(--gold);border-radius:4px;color:#e0d4c0;color:var(--text-primary);font-size:.85rem;margin-top:4px;padding:2px 6px;width:50px}.rc-count-row{flex-wrap:wrap;gap:6px;margin-top:4px}.rc-count-row,.rc-range-toggle{align-items:center;display:flex}.rc-range-toggle{cursor:pointer;gap:4px}.rc-range-inputs{align-items:center;display:flex;gap:2px}.roles-page{margin:0 auto;max-width:1100px;padding:0 0 40px}.roles-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.roles-header h2{margin:0}.lang-switcher{display:flex;gap:6px}.lang-btn{background:transparent;border:1px solid rgba(201,168,76,.25);border-radius:20px;color:#7a7a8a;color:var(--text-muted);cursor:pointer;font-family:Cinzel,serif;font-size:.85rem;padding:6px 16px;transition:background .2s,color .2s,border-color .2s}.lang-btn:hover{border-color:rgba(201,168,76,.5);color:var(--text-secondary)}.lang-btn.active{background:rgba(201,168,76,.15);border-color:var(--gold);color:var(--gold)}.roles-section{margin-bottom:32px}.roles-team-title{border-bottom:1px solid hsla(0,0%,100%,.1);font-family:Cinzel,serif;font-size:1rem;letter-spacing:.08em;margin:0 0 12px;padding-bottom:6px;text-transform:uppercase}.roles-village .roles-team-title{color:#8ab87a}.roles-wolf .roles-team-title{color:#c87070}.roles-neutral .roles-team-title{color:#a0a0c0}.roles-mutant .roles-team-title{color:#80c8a0}.roles-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.role-card{background:#1f1f35;background:var(--bg-card2);border-left:3px solid hsla(0,0%,100%,.1);border-radius:8px;padding:12px 14px;transition:-webkit-transform .15s;transition:transform .15s;transition:transform .15s,-webkit-transform .15s}.role-card:hover{-webkit-transform:translateY(-2px);transform:translateY(-2px)}.role-card.village{border-left-color:#5a8a4a}.role-card.wolf{border-left-color:#8b0000}.role-card.neutral{border-left-color:#6060a0}.role-card.mutant{border-left-color:#40a070}.role-card-name{color:var(--gold);font-family:Cinzel,serif;font-size:.9rem;margin-bottom:6px}.role-card-desc{color:var(--text-secondary);font-size:.85rem;line-height:1.5}.game-history-box{background:#1f1f35;background:var(--bg-card2);border:1px solid rgba(201,168,76,.4);border:1px solid var(--border-gold);border-radius:10px;margin-top:24px;padding:16px 20px}.game-history-box h3{color:#c9a84c;color:var(--accent-gold);font-family:Cinzel,serif;font-size:1rem;margin-bottom:12px}.game-history-scroll{display:flex;flex-direction:column;gap:16px;max-height:420px;overflow-y:auto;padding-right:4px}.history-entry{border-left:3px solid rgba(139,0,0,.45);border-left:3px solid var(--border-red);padding-left:12px}.history-entry-title{color:#b0b0c8;color:var(--accent-silver);font-family:Cinzel,serif;font-size:.85rem;margin-bottom:6px}.history-entry ul{display:flex;flex-direction:column;gap:4px;list-style:none;margin:0;padding:0}.history-entry li{color:#e0d4c0;color:var(--text-primary);font-size:.88rem;line-height:1.5}.suggestions-page h2{color:#c9a84c;color:var(--accent-gold);margin-bottom:20px}.sugg-form{background:#19192a;background:var(--bg-card);border:1px solid rgba(139,0,0,.45);border:1px solid var(--border-red);border-radius:8px;margin-bottom:24px;padding:20px}.sugg-form-field{margin-bottom:10px}.sugg-edit-form input[type=text],.sugg-edit-form textarea,.sugg-form input[type=text],.sugg-form textarea{background:#111120;background:var(--bg-dark);border:1px solid rgba(139,0,0,.45);border:1px solid var(--border-red);border-radius:4px;box-sizing:border-box;color:#e0d4c0;color:var(--text-primary);font-family:Crimson Text,serif;font-size:1rem;padding:8px 12px;resize:vertical;width:100%}.sugg-edit-form input[type=text]:focus,.sugg-edit-form textarea:focus,.sugg-form input[type=text]:focus,.sugg-form textarea:focus{border-color:rgba(139,0,0,.8);outline:none}.sugg-chars{float:right;font-size:.78rem;margin-top:2px}.sugg-chars,.sugg-limit-msg{color:#7a7a8a;color:var(--text-muted)}.sugg-limit-msg{font-size:.9rem;font-style:italic;margin-top:6px}.sugg-list{display:flex;flex-direction:column;gap:12px;list-style:none;padding:0}.sugg-card{background:#19192a;background:var(--bg-card);border:1px solid rgba(139,0,0,.45);border:1px solid var(--border-red);border-radius:8px;padding:16px 20px;transition:border-color .2s}.sugg-card:hover{border-color:rgba(139,0,0,.7)}.sugg-card-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:8px}.sugg-card-title{color:#e0d4c0;color:var(--text-primary);flex:1 1;font-family:Cinzel,serif;font-size:.95rem}.sugg-status{border-radius:20px;font-family:Cinzel,serif;font-size:.72rem;letter-spacing:.05em;padding:2px 10px;white-space:nowrap}.sugg-status--unread{background:hsla(0,0%,39%,.12);border:1px solid hsla(0,0%,39%,.25);color:#7a7a8a;color:var(--text-muted)}.sugg-status--considering{background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.4);border:1px solid var(--border-gold);color:#c9a84c;color:var(--accent-gold)}.sugg-status--rejected{background:rgba(139,0,0,.12);border:1px solid rgba(139,0,0,.3);color:#c87070}.sugg-status--implemented{background:rgba(80,180,80,.12);border:1px solid rgba(80,180,80,.3);color:#80c880}.sugg-card-content{color:#e0d4c0;color:var(--text-primary);font-size:1rem;line-height:1.55;margin-bottom:10px;white-space:pre-wrap;word-break:break-word}.sugg-card-meta{color:#7a7a8a;color:var(--text-muted);display:flex;flex-wrap:wrap;font-size:.8rem;gap:14px;margin-bottom:10px}.sugg-card-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.sugg-vote-btn{background:transparent;border:1px solid hsla(0,0%,100%,.15);border-radius:20px;color:#7a7a8a;color:var(--text-muted);font-family:Cinzel,serif;font-size:.85rem;margin:0;padding:4px 12px;transition:border-color .2s,color .2s,background .2s}.sugg-vote-btn:hover{background:rgba(201,168,76,.07);box-shadow:none}.sugg-vote-btn.voted,.sugg-vote-btn:hover{border-color:#c9a84c;border-color:var(--accent-gold);color:#c9a84c;color:var(--accent-gold)}.sugg-vote-btn.voted{background:rgba(201,168,76,.12)}.sugg-status-select{background:#111120;background:var(--bg-dark);border:1px solid rgba(139,0,0,.45);border:1px solid var(--border-red);border-radius:4px;color:#e0d4c0;color:var(--text-primary);cursor:pointer;font-family:Cinzel,serif;font-size:.75rem;padding:3px 8px}.sugg-edit-form{flex-direction:column}.sugg-edit-btns,.sugg-edit-form{display:flex;gap:8px}@media (max-width:600px){.navbar{flex-wrap:wrap;padding:12px 16px}.navbar-hamburger{display:flex}.navbar .links{align-items:flex-start;border-top:1px solid rgba(139,0,0,.45);border-top:1px solid var(--border-red);display:none;flex-direction:column;gap:0;margin-left:0;margin-top:10px;padding:8px 0 4px;width:100%}.navbar--open .links{display:flex}.navbar .links a{border-bottom:1px solid hsla(0,0%,100%,.04);font-size:.9rem;margin-left:0;padding:10px 4px;width:100%}.navbar .lang-switcher{margin-left:0;padding:10px 0 4px}.content{margin:20px auto;padding:0 14px}.game-details article{padding:16px}.game-details h2{font-size:1.2rem}.phase-banner{font-size:.9rem;padding:8px 14px}.end-screen,.village-sleep{padding:20px 14px}.tab-btn{font-size:.75rem;letter-spacing:.02em;padding:8px 10px}.role-modal-card{padding:28px 20px;width:94%}.role-modal-card .role-title{font-size:1.5rem}.role-config-grid{grid-template-columns:1fr}.btn-row{flex-wrap:wrap}.games-preview{padding:10px 14px}.role-config-section{padding:12px}.home img{max-width:180px}.roles-grid{grid-template-columns:1fr!important}.admin-game-header{flex-wrap:wrap}.sugg-form{padding:14px}.sugg-card{padding:12px 14px}}