/* One desktop setup row, directly below the preview. */
@media(min-width:901px){
 body[data-view=home] .game-dock{grid-template-columns:minmax(330px,1.2fr) minmax(175px,.9fr) auto;gap:16px;padding:14px 16px;align-items:center}
 body[data-view=home] .game-dock>.character-select{grid-column:1;grid-row:1;grid-template-columns:auto auto;gap:18px;width:auto;padding:0;border:0}
 body[data-view=home] .game-dock>.action-wrap{grid-column:2;grid-row:1}
 body[data-view=home] .game-dock>.best-block{grid-column:3;grid-row:1}
 body[data-view=home] .game-dock .character-select h2{font-size:13px;white-space:nowrap}
 body[data-view=home] .game-dock .difficulty-button{padding:8px 10px;min-height:44px;font-size:11px}
 body[data-view=home] .game-dock .main-action{min-height:66px;padding:10px;gap:8px}
 body[data-view=home] .game-dock .main-action strong{font-size:18px}
 body[data-view=home] .game-dock .main-action small{white-space:normal;font-size:10px;line-height:1.4}
 body[data-view=home] .game-dock .button-candy{display:none}
 body[data-view=home] .game-dock .best-block{min-width:60px}.game-dock .best-block .dock-label{white-space:nowrap}
 body[data-view=home][data-mode=online] .game-dock{display:flex;justify-content:center}
}
/* Room voice belongs to the room card, never below the play area. */
.game-card>#voice-bar{display:flex;align-items:center;gap:12px;margin:0;padding:12px 16px;max-width:none;width:100%;border:0;border-bottom:2px solid #352b42;border-radius:0;background:#eee3f6;box-shadow:none}
#voice-bar .voice-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
#voice-bar .voice-copy strong{display:block;font-size:13px;line-height:1.35;letter-spacing:.2px}
#voice-bar .voice-copy>#voice-status{font-size:11px;line-height:1.4;white-space:normal}
#voice-bar .voice-emblem{width:34px;height:34px;flex:none}
#voice-bar .voice-actions{display:flex;align-items:center;gap:8px;flex:none}
#voice-bar .voice-button{min-height:44px;min-width:92px;padding:9px 14px;font-size:12px;white-space:nowrap}
#voice-bar #voice-leave{min-height:44px;margin:0;padding:8px 10px;border:1px solid #b79ac8;border-radius:8px;background:#fff9ef;color:#644778;font-size:11px}
#voice-bar .room-sync-line{min-height:0;font-size:10px;line-height:1.3}
@media(max-width:700px){
 .game-card>#voice-bar{padding:10px 12px;gap:8px;flex-wrap:wrap}
 #voice-bar .voice-emblem{display:none}
 #voice-bar .voice-copy{flex-basis:calc(100% - 110px)}
 #voice-bar .voice-actions{margin-left:auto;flex-wrap:wrap;justify-content:flex-end;gap:5px}
 #voice-bar .voice-actions:has(#voice-leave:not([hidden])){width:100%;justify-content:flex-start}
 #voice-bar .voice-button{flex:1;min-width:98px}
 body[data-view=home][data-mode=solo] .action-wrap{position:static;left:auto;right:auto;bottom:auto;box-shadow:none;padding:0}
 body[data-view=home][data-mode=solo]{padding-bottom:0}
 body[data-view=home][data-mode=solo] .game-dock>.action-wrap{grid-column:1;grid-row:2}
 body[data-view=home][data-mode=solo] .game-dock>.best-block{grid-column:2;grid-row:2;align-self:center}
 body[data-view=home][data-mode=solo] .game-dock{grid-template-columns:minmax(0,1fr) auto;gap:14px}
 body[data-view=home][data-mode=solo] .main-action{min-height:64px;gap:8px;padding:9px 12px}
 body[data-view=home][data-mode=solo] .main-action .button-candy{display:none}
 body[data-view=home][data-mode=solo] .main-action strong{font-size:17px}
 body[data-view=home][data-mode=solo] .main-action small{font-size:10px;line-height:1.4;white-space:normal}
}
@media(min-width:701px) and (max-height:500px){
 body:is([data-view=playing],[data-view=countdown]) .game-card>#voice-bar{grid-column:1/-1;grid-row:1}
 body:is([data-view=playing],[data-view=countdown]) .game-card:has(>#voice-bar:not([hidden]))>.stage,
 body:is([data-view=playing],[data-view=countdown]) .game-card:has(>#voice-bar:not([hidden]))>.game-dock{grid-row:2}
}
/* Informational content is part of the home page only. */
body:not([data-view=home]) .home-info{display:none!important}
.home-info{max-width:1100px;margin:40px auto 0;padding-bottom:40px;scroll-margin-top:20px}
.home-jump{display:flex;justify-content:center;gap:10px 28px;flex-wrap:wrap;padding:22px 10px;margin-bottom:32px;border-block:1px dashed #bea68b}
.home-jump a{font:800 13px Nunito,sans-serif;color:#644778;padding:8px 4px}
.home-jump a:hover{text-decoration:underline;text-underline-offset:5px}
.home-info section[id]{scroll-margin-top:20px}
.home-section-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}
.home-info h2{font:600 30px/1.15 Fredoka,Nunito,sans-serif;letter-spacing:0;margin:0 0 9px;color:#352b42}
.home-section-title p{font:500 14px/1.6 Nunito,sans-serif;color:#746173;margin:0}
.home-info .small-button{min-height:44px;padding:10px 18px;white-space:nowrap}
.home-info .guide-phases{gap:18px}.home-info .guide-picture{height:138px}.home-info .guide-picture .guide-character{width:88px;height:94px}
.home-info .guide-step-copy{padding:18px}.home-info .guide-step-copy h3{font-size:21px}
.home-info .guide-step-copy p{font:500 14px/1.7 Nunito,sans-serif;margin:0;color:#655167}
.home-faq{margin-top:46px}.home-faq h2{margin-bottom:18px}
.home-faq details{border:1.5px solid #cfb99e;border-radius:12px;background:#fff9e9;margin-top:10px;overflow:hidden}
.home-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:18px;font:800 15px/1.5 Nunito,sans-serif;padding:17px 20px;cursor:pointer}
.home-faq summary::-webkit-details-marker{display:none}.home-faq summary::after{content:'+';font:500 24px/1 Fredoka,sans-serif;color:#7141d9;flex:none}
.home-faq details[open] summary{background:#eee2f8}.home-faq details[open] summary::after{content:'−'}
.home-faq details p{padding:14px 20px 18px;margin:0;font-size:14px;line-height:1.75;color:#655167}
.home-faq summary:focus-visible{outline:3px solid #7141d9;outline-offset:-4px}
.home-policies{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:46px;padding-top:30px;border-top:1px dashed #bea68b}
.home-policies h2{font-size:25px}.home-policies h3{font:800 13px/1.4 Nunito,sans-serif;margin:20px 0 7px}
.home-policies p{font-size:12px;line-height:1.8;color:#746173;margin:0}.home-policies .policy-date{font-size:10px;margin:0 0 20px}
.provider-links{display:flex;flex-wrap:wrap;gap:8px 20px;padding-top:15px}.provider-links a{color:#644778;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){
 .home-info{margin-top:25px;padding-bottom:25px}.home-jump{gap:5px 22px;margin-bottom:26px;padding:14px 0}.home-jump a{font-size:12px}
 .home-section-title{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:16px}.home-info h2{font-size:27px}
 .home-info .guide-phases{grid-template-columns:1fr;gap:12px}.home-info .guide-picture{height:100%;min-height:142px}.home-info .guide-picture .guide-character{width:68px;height:76px}
 .home-info .guide-step-copy{padding:14px 12px}.home-info .guide-step-copy h3{font-size:19px}.home-info .guide-step-copy p{font-size:12px;line-height:1.65}
 .home-faq{margin-top:30px}.home-faq summary{font-size:13px;padding:14px}.home-faq details p{font-size:12px;padding:12px 14px 16px}
 .home-policies{grid-template-columns:1fr;gap:26px;margin-top:32px;padding-top:24px}
}

@media(max-width:700px){body:is([data-view=playing],[data-view=countdown]) .topbar{min-height:64px;padding-block:6px;flex-wrap:nowrap}}
