/* A floating close button used to shorten the celebration's content column. */
#help-content{position:relative;min-width:0;width:100%}
#help .help-close{float:none;position:absolute;right:0;top:0;margin:0;z-index:10;width:36px;height:36px}
dialog[data-sheet=celebration] .festive-panel{display:flex;flex-direction:column;align-items:center;width:100%;padding:0 4px}
.festive-panel .victory-symbol,.festive-panel .victory-eyebrow,.festive-panel .help-title,.festive-panel>p{width:100%;text-align:center}
.festive-panel .victory-podium{width:100%;justify-content:center}
.festive-panel>.button{width:100%;flex-shrink:0}
.festive-panel>.button.soft{background:#fff9ec;border-color:#d9c89e;box-shadow:0 3px 0 #d9c89e;margin-top:12px}
.replay-note{display:block;font-size:10px;color:#8d7950;margin:3px 0 9px;text-align:center}
.game-navigation{display:flex;align-items:center;gap:8px}
.game-navigation button{font-size:12px;font-weight:600;min-height:38px;padding:8px 12px;border:1px solid #d9e2ce;background:#f2f3e5;border-radius:9px;white-space:nowrap}
.game-navigation button:first-child{background:#e3f0d9;border-color:#c8dabc}
.navigation-choices{display:grid;gap:12px;margin-top:22px}
.navigation-choices .button{width:100%;min-height:48px}
.navigation-choices .small-link{min-height:38px;font-size:12px}
.endgame-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;margin-top:14px}
.result-box .endgame-actions .button{width:100%;margin:0;font-size:14px;min-height:46px;padding:11px 8px;white-space:nowrap}
.result-box>div:not(.endgame-actions){margin-top:14px}
.result-box>div:not(.endgame-actions)>.button{margin:0;min-height:46px;width:100%}
.presentation-controls{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;color:#71816b;font-size:12px}
.presentation-controls .small-link{font-size:11px;min-height:38px;padding:5px}
.reveal-status{background:#fff0c9;border-color:#e6d7a4}
.winning-panel{padding:18px 2px 0;text-align:center}
.winning-eyebrow{font-size:9px;letter-spacing:1.8px;font-weight:700;color:#7b9574;margin:4px 0 12px}
.winning-panel .help-title{font-size:28px;letter-spacing:-.8px;line-height:1.12;padding:0 14px;margin:0 auto 22px;max-width:400px}
.winning-hands{display:grid;gap:14px;margin-bottom:20px}
.winning-hand{background:#f3f5e7;border:1px solid #dce4ce;border-radius:16px;padding:16px}
.winning-player{display:flex;align-items:center;gap:10px;text-align:left;margin-bottom:16px}
.winning-player svg{width:45px;height:45px;flex-shrink:0}
.winning-player>div{min-width:0;flex:1}
.winning-player strong{font-size:12px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.winning-player span{display:block;font-family:Outfit;font-size:19px;font-weight:600;margin-top:3px;line-height:1.1}
.winning-player b{font-size:13px;white-space:nowrap;color:#3d7b4c}
.winning-cards{display:flex;justify-content:center;gap:7px}
.winning-cards .card{width:44px;height:62px;padding:6px;border-radius:7px}
.winning-cards .rank{font-size:18px}
.winning-cards .suit{font-size:25px}
.winning-hand>p{font-size:10px;line-height:1.6;color:var(--muted);margin:12px 0 0}
.winning-panel>.button{width:100%;min-height:48px;font-size:15px}
.winning-panel>.small-link{display:block;margin:9px auto 0;min-height:36px;font-size:12px}
.card.newly-dealt{animation:card-arrival .42s cubic-bezier(.2,.8,.3,1) both;transform-origin:center}
@keyframes card-arrival{from{transform:translateY(-7px) rotateY(85deg);opacity:.2}to{transform:translateY(0) rotateY(0);opacity:1}}
html[data-layout=phone] body[data-screen=game] .game-help{display:none}
html[data-layout=phone] body[data-screen=game] .top-right{gap:0}
html[data-layout=phone] .game-navigation{gap:6px}
html[data-layout=phone] .game-navigation button{min-height:38px;font-size:11px;padding:7px 9px;border-radius:8px}
html[data-layout=phone] .result-box .endgame-actions{margin:0;gap:7px}
html[data-layout=phone] .result-box .endgame-actions .button{font-size:12px;min-height:46px;padding:9px 6px}
html[data-layout=phone] .result-box>div:not(.endgame-actions){margin:0}
html[data-layout=phone] .presentation-controls{flex-direction:row;align-items:center;justify-content:space-between;font-size:11px}
html[data-layout=phone] .winning-panel .help-title{font-size:26px;padding:0 14px}
html[data-layout=phone] .winning-hand{padding:13px}
html[data-layout=phone] .winning-player{gap:8px}
html[data-layout=phone] .winning-player svg{width:39px;height:39px}
html[data-layout=phone] .winning-player span{font-size:18px}
html[data-layout=phone] .winning-player b{font-size:12px}
html[data-layout=phone] .winning-cards{gap:5px}
html[data-layout=phone] .winning-cards .card{width:40px;height:57px;padding:5px}
html[data-layout=phone] .winning-cards .rank{font-size:17px}
html[data-layout=phone] .winning-cards .suit{font-size:23px}
html[data-layout=phone][data-phone-narrow=true] .game-navigation button{padding:6px 7px;font-size:10px}
html[data-layout=phone][data-phone-narrow=true] .winning-cards .card{width:35px;height:51px}
