.guess-main{width:min(1240px,calc(100% - 32px));position:relative;z-index:1;margin-bottom:40px}.guess-header{margin-top:48px;margin-bottom:20px}.guess-logo{height:150px;width:150px;object-fit:contain;margin-bottom:8px}.guess-header h1{font-size:1.8rem;letter-spacing:2px}.rules-button{position:fixed;top:18px;right:18px;z-index:5}.auth-panel{margin:auto;max-width:560px;padding:24px}.auth-panel h2{margin-bottom:20px}.auth-panel #enter{width:100%;margin-top:16px}.rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.match-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding:14px 18px}#players{display:flex;gap:20px;flex-wrap:wrap}.player.is-me{color:var(--accent-gold)}.guess-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.board-panel{padding:20px}.board-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.board-heading h2{font-size:1.3rem}.subtle{font-size:.82rem;line-height:1.5;color:#bab6af;margin:10px 0 16px}.hero-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.hero-card{position:relative;padding:0;overflow:hidden;text-transform:none;letter-spacing:0;min-width:0;border-radius:5px;background:#101215;font-family:var(--font-body);font-size:.7rem;text-align:center}.hero-card img{display:block;width:100%;aspect-ratio:1.55;object-fit:cover}.hero-card span{display:block;padding:6px 3px;line-height:1.2;min-height:2.9em}.hero-card.is-excluded img{filter:grayscale(1);opacity:.24}.hero-card.is-excluded:after{content:'×';position:absolute;top:10%;left:0;right:0;font:400 2.5rem/1 var(--font-body);color:#b9afa1;pointer-events:none}.hero-card.is-excluded span{color:#777}.hero-card:hover{border-color:var(--accent-gold)}.sidebar{display:flex;flex-direction:column;gap:16px}.sidebar .panel{padding:18px}.sidebar h2,.sidebar h3{font-size:1.12rem}.sidebar label{display:block;color:var(--accent-gold);font-size:.8rem;margin:14px 0 5px}.sidebar select{width:100%;padding:8px;font-family:var(--font-body);color:#dedad2;background:#111;border:1px solid var(--border-color)}.action-stack{display:grid;gap:10px}.action-stack button{width:100%}.question-input{width:100%;min-height:84px;padding:10px;background:#0a0808;border:1px solid var(--border-color);color:#eee;font:400 .9rem/1.4 var(--font-body)}.secret-card{display:flex;align-items:center;gap:12px;margin:14px 0}.secret-card img{width:96px;border-radius:5px}.secret-card span{font-size:.88rem}.history{list-style:none;max-height:280px;overflow:auto;font-size:.8rem;line-height:1.45}.history li{padding:10px 0;border-bottom:1px solid #29231e}.history strong{color:var(--accent-gold);display:block;font-weight:400}.answer-buttons{display:flex;gap:6px}.answer-buttons button{padding:9px 6px}.pending-question{padding:12px;background:#191512;border-left:2px solid var(--accent-gold);font-size:.9rem;line-height:1.4;margin:12px 0;overflow-wrap:anywhere}.modal-content{max-width:480px}.modal-content p{line-height:1.55;margin:14px 0;font-size:.9rem}.modal-content select{width:100%;padding:10px;background:#151111;color:#eee;border:1px solid var(--border-color);font-family:var(--font-body)}.modal-buttons{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}#status{padding:12px 0;min-height:2em;font-size:.85rem;color:#d3c8b7}#status.is-error{color:#ffb0a7}[hidden]{display:none!important}
@media(max-width:900px){.guess-layout{grid-template-columns:minmax(0,1fr)}.sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar>section:last-child{grid-column:1/-1}}
@media(max-width:520px){.guess-header{margin-top:66px}.guess-header h1{font-size:1.2rem;letter-spacing:1px}.guess-logo{height:100px;width:100px}.guess-main{width:calc(100% - 20px)}.hero-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.board-panel{padding:12px}.sidebar{display:flex}.match-bar{align-items:flex-start;flex-direction:column}.board-heading{align-items:flex-start}.board-heading h2{font-size:1.1rem}.hero-card{font-size:.73rem}.rooms-grid{grid-template-columns:1fr}.rules-button{font-size:.7rem;padding:8px 12px}}

/* Portrait-first board: compact controls leave the space to the heroes. */
.guess-main{width:min(1460px,calc(100% - 24px))}.guess-layout{grid-template-columns:minmax(0,1fr) 240px;gap:14px}.board-panel{padding:16px}.hero-grid{gap:10px}.hero-card{border:1px solid #383633;border-radius:5px}.hero-card img{aspect-ratio:1.35;min-height:64px}.hero-card:hover{border-color:#c9a75d;box-shadow:0 0 0 1px rgba(201,167,93,.35)}.hero-card:focus-visible{outline:2px solid #d3ad5f;outline-offset:3px}.hero-card.is-mine{border:2px solid #67bc7e;box-shadow:0 0 0 1px rgba(103,188,126,.35),0 0 14px rgba(55,143,76,.18)}.hero-card.is-mine:hover{border-color:#8fe7a6}.hero-card .own-marker{position:absolute;top:5px;right:5px;display:grid;place-items:center;width:22px;height:22px;min-height:0;padding:0;border-radius:50%;background:#285d38;border:1px solid #87d19a;color:#dcffe4;font:400 .9rem/1 var(--font-body)}.hero-card.is-excluded:after{top:50%;transform:translateY(-50%);font-size:2.7rem;color:#d1c7b8;text-shadow:0 1px 5px #000}.hero-card.is-excluded{border-color:#302b27}.hero-card.is-excluded.is-mine{border-color:#67bc7e}.sidebar .panel{padding:14px}.sidebar{gap:12px}.sidebar h2,.sidebar h3{font-size:1rem}.sidebar .subtle{font-size:.75rem;margin:8px 0 12px}.sidebar label{font-size:.75rem;margin-top:11px}.sidebar select{padding:7px;font-size:.8rem}.sidebar button{font-size:.85rem;padding:7px 14px}.question-input{min-height:68px;font-size:.8rem}.secret-card img{width:72px}.secret-card span{font-size:.8rem}.match-bar{padding:10px 14px;margin-bottom:14px;font-size:.85rem}.match-bar button{font-size:.85rem;padding:7px 14px}.guess-header{margin-bottom:16px}.guess-logo{height:125px;width:125px}.guess-header h1{font-size:1.55rem}.guess-header p{font-size:.85rem}.auth-panel .rooms-grid{gap:9px;margin:14px 0;scrollbar-gutter:auto}.auth-panel button.room-card{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;gap:16px;font-family:var(--font-body);font-size:.94rem;text-transform:none;letter-spacing:0;border-radius:5px}.auth-panel .room-name{white-space:nowrap}.auth-panel .room-seats{flex-shrink:0;padding:3px 8px;border:1px solid #3a342b;border-radius:4px;color:#b5b0a5;font-size:.78rem;font-variant-numeric:tabular-nums}.auth-panel button.room-card.selected{border-color:#b99c61;box-shadow:inset 3px 0 #b99c61;background:rgba(155,128,73,.09)}.auth-panel .room-card.selected .room-seats{border-color:#706044;color:#e0c994}
@media(max-width:900px){.guess-layout{grid-template-columns:minmax(0,1fr)}.sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar>section:last-child{grid-column:1/-1}}
@media(max-width:520px){.guess-main{width:calc(100% - 20px)}.hero-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sidebar{display:flex}.guess-logo{width:100px;height:100px}.guess-header h1{font-size:1.2rem}.hero-card img{min-height:70px}.auth-panel{padding:18px}.auth-panel button.room-card{padding:12px 14px}.board-panel{padding:12px}}

.auth-panel .rooms-grid{display:grid}

/* Match the established game headers and controls. */
.guess-header{margin:10px auto 8px;padding:0 15px;display:flex;flex-direction:column;align-items:center}
.guess-logo{width:min(230px,56vw);height:auto;aspect-ratio:639/760;object-fit:contain;margin-bottom:4px}
.guess-header h1{font-size:1.9rem;letter-spacing:4px}
.guess-header p{font-size:.85rem}
.auth-panel{max-width:600px;margin:20px auto 0;text-align:center;padding:20px}
.auth-panel h2{color:var(--accent-gold)}
.auth-panel button.room-card{font-size:1rem;padding:12px;border-radius:6px}
.auth-panel button.room-card.selected{border-color:var(--btn-slate-border-hover);background:rgba(102,116,130,.12);box-shadow:0 0 10px rgba(102,116,130,.4),inset 0 1px 0 rgba(255,255,255,.06)}
.auth-panel .room-card.selected .room-seats{border-color:var(--btn-slate-border-hover);color:var(--btn-text)}
.rules-button{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:50px;font-size:.75rem;box-shadow:0 4px 14px rgba(0,0,0,.7)}
.rules-button:hover{border-color:var(--accent-gold);box-shadow:0 0 14px var(--gold-glow)}
.sidebar button.round-start:not(:disabled){background:linear-gradient(to bottom,var(--btn-red-1),var(--btn-red-2));border-color:var(--btn-red-border);border-top-color:var(--btn-red-border-top);color:#fff;box-shadow:0 0 16px var(--red-glow),inset 0 1px 0 rgba(255,255,255,.06)}
.sidebar button.round-start:not(:disabled):hover{background:linear-gradient(to bottom,#611a1c,#2c090b);border-color:var(--btn-red-border-hover);box-shadow:0 0 12px rgba(127,42,46,.3),inset 0 1px 0 rgba(255,255,255,.1)}
@media(max-width:720px){.guess-header h1{font-size:1.6rem;letter-spacing:2px}.rules-button{top:10px;right:10px;padding:0;width:44px;height:44px;justify-content:center}.rules-button .rules-label{display:none}}
@media(max-width:520px){.guess-header{margin-top:58px;margin-bottom:12px}.guess-logo{width:100px;height:100px;aspect-ratio:1;margin-bottom:8px}.guess-header h1{font-size:1.5rem;letter-spacing:1px}.guess-header p{font-size:.8rem}.auth-panel{margin-top:0;padding:18px}.auth-panel button.room-card{padding:10px 12px}}

.guess-header .title-two{display:inline-block;font-size:1.5em;line-height:1;vertical-align:baseline;color:var(--accent-gold)}
.auth-panel button.room-card{background:rgba(10,5,5,.7);border-color:var(--border-color)}
.auth-panel button.room-card:hover{border-color:var(--btn-slate-border-hover)}
.auth-panel .room-seats{border:0;padding:0;color:var(--accent-gold);font-size:.85rem}
.auth-panel .room-card.selected .room-seats{color:var(--accent-gold)}

/* Duel seats: public identity and score, never the secret hero. */
.match-bar{padding:12px;gap:18px}.match-bar #players{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;flex:1;min-width:0}.duelist{display:flex;align-items:center;gap:12px;min-width:0;padding:12px 16px;background:rgba(18,22,26,.8);border:1px solid #38414a;border-radius:6px;position:relative}.duelist.is-me{border-left:3px solid #78a27d}.duelist.is-turn{border-color:var(--accent-gold);box-shadow:inset 0 0 18px rgba(205,168,83,.06)}.duelist-avatar{display:grid;place-items:center;flex:0 0 42px;height:42px;border:1px solid #57616a;border-radius:50%;color:#ddd5c4;background:linear-gradient(145deg,#283039,#111619);font:400 1.25rem var(--font-heading,var(--font-body))}.duelist.is-me .duelist-avatar{color:#b7d6b7;border-color:#65816a}.duelist-details{min-width:0;flex:1}.duelist-name{display:block;color:#e4ddcf;font-size:1rem;overflow-wrap:anywhere;line-height:1.3}.duelist-badges{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:6px}.duelist-badge{font:400 .7rem/1.3 var(--font-body);padding:2px 7px;border:1px solid #41474b;border-radius:3px}.badge-me{color:#b7d6b7;border-color:#4d6852;background:rgba(80,112,84,.12)}.badge-host{color:var(--accent-gold);border-color:#726039;background:rgba(183,147,63,.08)}.badge-turn{color:#e9d8ac;border-color:#726039}.duelist-role{font-size:.75rem;color:#aaa9a3}.duelist-score{border-left:1px solid #34383a;padding-left:16px;text-align:center;flex-shrink:0}.duelist-score-value{display:block;font-size:1.55rem;line-height:1.1;color:var(--accent-gold);font-variant-numeric:tabular-nums}.duelist-score-label{display:block;font-size:.7rem;color:#aaa9a3;margin-top:3px}.duelist.is-empty{border-style:dashed;background:rgba(10,12,14,.4)}.duelist.is-empty .duelist-avatar{border-style:dashed;color:#858a8d;background:none}.duelist.is-empty .duelist-name{color:#b3b2ac}.match-bar #leave{flex-shrink:0}
@media(max-width:900px){.match-bar{flex-wrap:wrap}.match-bar #players{flex-basis:100%}.match-bar #leave{margin-left:auto}}
@media(max-width:520px){.match-bar #players{grid-template-columns:1fr;width:100%}.duelist{padding:10px 12px}.match-bar #leave{width:100%;margin:0}.duelist-name{font-size:.95rem}}

/* Keep volume control clear of the wider Rules button. */
@media(min-width:721px){body.in-game .sfx-vol{right:160px}}

.global-exit-btn {
    position: fixed;
    top: 18px;
    right: 18px;
    z-index: 60;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: radial-gradient(circle at 35% 30%, rgba(200,60,40,0.22), rgba(10,5,5,0.9));
    border: 2px solid var(--accent-red);
    color: #ff8b7d;
    cursor: pointer;
    box-shadow: 0 0 16px var(--red-glow), inset 0 0 10px rgba(0,0,0,0.6);
    transition: all 0.2s;
}

.global-exit-btn:hover {
    color: #fff;
    background: radial-gradient(circle at 35% 30%, rgba(232,80,63,0.5), rgba(20,5,5,0.95));
    box-shadow: 0 0 26px var(--red-glow), inset 0 0 10px rgba(0,0,0,0.6);
    transform: scale(1.06);
}


body.in-game .rules-button{display:none}body.in-game .sfx-vol{right:80px}.match-bar{display:block}.match-bar #players{width:100%}.room-presence .presence-label{font-size:.75rem;color:#aaa9a3;margin:12px 0 5px}.presence-person{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 8px;background:rgba(255,255,255,.04);border-radius:4px;margin-top:3px;font-size:.82rem}.presence-person.is-me .presence-name{color:var(--accent-gold)}.presence-name{overflow-wrap:anywhere;min-width:0}.presence-empty{font-size:.78rem;color:#92999d}.room-presence h3 span{color:#aaa9a3;font-size:.85rem}.global-exit-btn svg{pointer-events:none}
@media(max-width:720px){.global-exit-btn{top:10px;right:10px;width:44px;height:44px}body.in-game .sfx-vol{right:62px}}
