#game .top{gap:24px;align-items:center;padding-bottom:22px}
#game .top .brand{font-size:clamp(14px,1.8vw,21px);max-width:760px;color:var(--tavern-lime);text-shadow:2px 2px #050407,4px 4px #050407,6px 7px #0008}
#game .tools{flex-shrink:0;gap:8px}#game .tools button{font-size:11px}#end-night{background:transparent}
.game-turn{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0}.turn-current{display:flex;align-items:center;gap:14px;min-width:0}.turn-current strong{color:var(--tavern-purple);font-size:16px;overflow-wrap:anywhere}.turn-current .role-portrait{width:48px;height:52px;object-fit:contain}#turn-next{font-size:11px;color:var(--tavern-gold);text-align:right}
#game .play-layout{grid-template-columns:minmax(250px,310px) minmax(0,1fr);gap:26px}#game .play-layout.timers-off{grid-template-columns:minmax(0,1fr)}#game .timer-zone,#game .deck-zone{min-width:0}
.timer-title{font-size:12px;color:var(--tavern-gold);margin:0 0 14px}#game .players{grid-template-columns:minmax(0,1fr);max-height:650px;padding:0 6px 6px 0;gap:14px}
#game .players .card{min-height:225px;padding:18px}#game .players .card-head{display:flex;flex-wrap:wrap;gap:8px}#game .players .name{font-size:14px;width:100%;letter-spacing:0}#game .players .badge{font-size:8px;padding:5px 8px;margin:0}#game .players .reveal{min-height:80px;flex-direction:row;gap:12px}#game .players .number{font-size:48px;letter-spacing:0}#game .players .unit{font-size:12px;line-height:1.6}#game .players .hint{font-size:9px;line-height:1.9;min-height:0}#game .players .card-bottom{font-size:9px;line-height:1.8;gap:8px;flex-wrap:wrap}#game .players .skip{font-size:9px}
#game .deck-card{min-height:340px;padding:28px}#game .deck-prompt{font-size:clamp(18px,2.1vw,27px);line-height:1.8;margin:26px 0 30px}#game .deck-meta{font-size:10px;line-height:1.8;gap:10px}#game .deck-actions button{font-size:13px;line-height:1.7;padding:16px 20px}#game .deck-actions .draw{min-width:210px}
.game-progress{margin:22px 0 0;display:flex;justify-content:flex-end;font-size:10px;color:var(--tavern-gold)}#game #campaign-strip{margin:18px 0 0;font-size:11px}#game #inventory{margin:20px 0 0;padding:18px;font-size:12px}#game #inventory summary{cursor:pointer}
.game-menu{width:min(580px,94vw)}.menu-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.menu-controls button{font-size:11px!important;padding:15px!important;line-height:1.8}.game-help{border-top:1px solid #655071;padding:18px 0}.game-help summary{cursor:pointer;color:var(--tavern-gold)}.menu-status{font-size:10px;color:#c9bdce;margin-bottom:20px}.menu-status>*{display:block;margin:8px 0}
@media(max-width:850px){#game .top{flex-wrap:wrap}#game .play-layout{grid-template-columns:minmax(0,1fr)}#game .timer-zone{order:2}#game .players{grid-template-columns:repeat(2,minmax(0,1fr));max-height:420px}#game .deck-card{min-height:300px}}
@media(max-width:480px){.game-turn{align-items:start;flex-direction:column;gap:10px}.turn-current strong{font-size:13px}#game .deck-card{padding:20px 16px}#game .deck-prompt{font-size:18px}#game .players{grid-template-columns:minmax(0,1fr)}#game .deck-actions button{width:100%;min-width:0!important}.menu-controls{grid-template-columns:1fr}#game .top .brand{font-size:15px}}
.player-editor{width:min(640px,94vw);max-height:90svh;overflow:auto}.player-editor h2{font-size:19px;color:var(--tavern-lime)}.player-editor p{font-size:11px;line-height:2}#player-editor-fields{display:grid;gap:18px;margin:24px 0}#player-editor-fields label{font-size:11px;color:var(--tavern-gold);line-height:1.8}#player-editor-fields input{display:block;margin-top:8px;font-size:13px}.player-editor .bonus-actions button{font-size:11px;line-height:1.8}#player-editor-error{color:#ffc19b}
.timer-cheers{display:block;align-self:center;width:72px;height:58px;object-fit:contain;image-rendering:pixelated;margin:2px auto 10px}
.editor-player{border-bottom:1px solid #655071;padding-bottom:18px}.editor-role{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;gap:12px;margin-top:16px}.editor-role button{padding:10px 0}.editor-role-preview{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.editor-role-preview strong{font-size:12px}.editor-role-preview span{font-size:10px;color:var(--tavern-gold)}#editor-add-player{font-size:11px}
/* Compact timer tiles expand with the party instead of trapping players in a scroll pane. */
#game .players{max-height:none;overflow:visible;padding:0;gap:10px}
#game .players .card{min-height:130px;padding:14px;border-radius:14px}
#game .players .reveal{min-height:50px;gap:10px}
#game .players .number{font-size:32px}
#game .players .unit{font-size:10px}
#game .players .hint{display:none}
#game .players .card-bottom{margin-top:8px;padding-top:8px;font-size:8px}
#game .players .name{font-size:12px}
#game .players .card.ready .hint{display:block;margin-top:6px}
#game .players .timer-cheers{width:40px;height:32px;margin:0 auto 4px}
#game .play-layout:has(.players.many):not(.timers-off){grid-template-columns:minmax(340px,400px) minmax(0,1fr)}
#game .players.many{grid-template-columns:repeat(2,minmax(0,1fr))}
#game .players.many .card{min-height:100px;padding:12px;gap:4px}
#game .players.many .card-head{gap:4px}
#game .players.many .name{font-size:10px}
#game .players.many .badge{font-size:7px;padding:3px 5px}
#game .players.many .reveal{min-height:30px;gap:7px}
#game .players.many .number{font-size:25px}
#game .players.many .unit{font-size:8px}
#game .players.many .card:not(.ready) .card-bottom{display:none}
#game .players.many .hint{font-size:8px}
@media(max-width:1000px) and (min-width:851px){#game .play-layout:has(.players.many):not(.timers-off){grid-template-columns:300px minmax(0,1fr)}}
@media(max-width:850px){#game .play-layout:has(.players.many):not(.timers-off){grid-template-columns:minmax(0,1fr)}#game .players{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Prompt feedback stays immediately above the active card. */
.card-feedback{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 14px}
.feedback-buttons{display:flex;gap:8px}
.card-feedback .small{font-size:10px;padding:12px;line-height:1.5}
#feedback-status{font-size:9px;line-height:1.7;color:#c9becf}
#feedback-report{margin-left:auto}
#feedback-like[aria-pressed=true]{border-color:#dfff00;color:#dfff00;background:#30351c}
#feedback-dislike[aria-pressed=true]{border-color:#de9ea8;color:#ffd3db;background:#412b36}
.feedback-dialog{max-height:85vh;overflow:auto}
#feedback-list{list-style:none;padding:0}
#feedback-list li{border-top:1px solid #514459;padding:16px 0}
#feedback-list strong{color:#d8b56c;font-size:10px;line-height:1.8}
#feedback-list p{font-size:12px;line-height:1.9;overflow-wrap:anywhere}
@media(max-width:550px){#feedback-status{order:3;width:100%}.card-feedback .small{font-size:8px;padding:10px}}
.game-paused{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 22px;padding:18px;border:1px solid #bda35f;border-radius:14px;background:#30283b}
.game-paused[hidden]{display:none}
.game-paused p{margin:0;font-size:11px;line-height:1.9;color:#f3e8c8}
.game-paused button{font-size:11px;line-height:1.8;padding:14px 18px;flex-shrink:0}
@media(max-width:700px){.game-paused{align-items:stretch;flex-direction:column}.game-paused button{width:100%}}
