/* Shared presentation tokens. Host units are authored at1920x1080. */
body{--game-primary:#31558a;--game-secondary:#d9ae4d;--game-accent:#d9ae4d;--game-background:#edf5ff;--game-ink:#17335c}
body.theme-sketch{--game-primary:#287c87;--game-secondary:#e5ac58;--game-accent:#e5ac58;--game-background:#fff2dc;--game-ink:#384a43}
body.theme-hbt{--game-primary:#6f4565;--game-secondary:#d6a85a;--game-accent:#d6a85a;--game-background:#fff1de;--game-ink:#503e43}
body.theme-letters{--game-primary:#346f79;--game-secondary:#d5a151;--game-accent:#d5a151;--game-background:#f6f2e5;--game-ink:#254c55}
body.theme-campfire{--game-primary:#263e67;--game-secondary:#edb451;--game-accent:#df793c;--game-background:#fff0d5;--game-ink:#243650}
body.theme-pitch{--game-primary:#365d75;--game-secondary:#e5ad54;--game-accent:#e5ad54;--game-background:#fff2d9;--game-ink:#244251}
body #count{display:none!important}
body #open-join.code-box{background:var(--game-primary)!important;color:#fff7dc!important;border:2px solid var(--game-secondary)!important;box-shadow:0 4px 0 #152a4933}
body #open-join :is(small,strong){color:#fff7dc!important;text-shadow:none}
body :is(.character-plaque,.lobby-scene-plaque){background:var(--game-background);color:var(--game-ink);opacity:1;border-radius:14px}
.host .lobby-scene-name{font-size:20px}.host .lobby-scene-status{font-size:13px}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .question-panel{background:none!important;box-shadow:none!important;border:0!important}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .question-panel::before,body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .question-panel::after{display:none!important}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .solomon-theatre{background:none!important}
body.host.theme-solomon .round-copy,body.host.theme-solomon.phase-instructions .question-panel,body.host.theme-solomon.phase-instructions #people-panel{background:var(--game-background);color:var(--game-ink);border-radius:22px}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .round-copy{background:none}
body.host.theme-solomon.phase-intro-ready #status{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);width:max-content;max-width:90%;text-align:center;font-size:32px;line-height:1.25;font-weight:800;background:var(--game-background);color:var(--game-ink);padding:14px 26px;border-radius:18px;z-index:35}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .layout{padding-bottom:80px}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .solomon-phone-tutorial>.tutorial-phone,body.theme-solomon .join-artifact{background:url('/assets/solomon-writing-tablet-v074.png') center/100% 100% no-repeat!important;border:0!important;border-radius:0!important;box-shadow:none!important;aspect-ratio:2/3;padding:14% 13% 15%!important}
body.theme-solomon .join-artifact::before,body.theme-solomon .join-artifact::after,body.theme-solomon .tutorial-phone::before,body.theme-solomon .tutorial-phone::after{display:none!important}
body.theme-solomon .join-face{inset:14% 14% 15%}
body.host.theme-solomon .solomon-phone-tutorial .tutorial-screen{background:none}
body.host.theme-solomon .solomon-phone-tutorial .tutorial-screen h3{font-size:24px}
body.host.phase-reveal .reveal-footer .answer-reactions{display:flex!important;flex-wrap:wrap;align-items:stretch;justify-content:center;gap:12px;width:100%}
body.host.phase-reveal .answer-reactions>.character-spotlight{flex:0 0 calc(100% / min(var(--stage-count),6) - 12px);height:100%;min-width:0}
body.host.phase-reveal .answer-reactions:is([data-count="7"],[data-count="8"],[data-count="9"],[data-count="10"],[data-count="11"],[data-count="12"])>.character-spotlight{height:calc(50% - 6px)}
body.host.phase-reveal .answer-reactions :is(.character-name,.player-answer){font-size:22px!important}
/* One continuous score-height lineup on the TV; compact phone grid. */
body .ranked-podium.character-stage{display:block!important;position:relative!important;width:100%!important;height:100%!important;flex:1!important;min-height:0!important;max-height:none!important;padding:0!important;margin:0!important;overflow:visible!important}
body .ranked-podium>.podium-card{position:absolute!important;left:calc(var(--podium-slot) * 100% / var(--podium-count))!important;bottom:calc(var(--rank-lift) * var(--podium-lift-range,0px))!important;width:calc(100% / var(--podium-count) - 8px)!important;height:var(--podium-card-height,220px)!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-end!important;min-width:0;min-height:0;gap:4px!important;background:none!important;border:0!important;padding:0!important}
body .ranked-podium .character-art{flex:none!important;position:relative!important;left:auto!important;bottom:auto!important;transform:none!important;aspect-ratio:var(--character-ratio)!important}
body .ranked-podium .podium-block{width:100%;min-height:78px;flex:none;background:var(--game-background);border:2px solid var(--game-primary);border-top:7px solid var(--game-secondary);border-radius:10px 10px 4px 4px;box-shadow:0 5px 0 #0a223b30;color:var(--game-ink);text-align:center;padding:4px;display:flex;flex-direction:column;justify-content:center;align-items:center}
body .ranked-podium .podium-rank{font-size:26px;line-height:1.05;color:var(--game-primary)}
body .ranked-podium .character-plaque{display:flex!important;flex-direction:column!important;gap:0!important;background:none!important;box-shadow:none!important;border:0!important;position:static!important;transform:none!important;width:auto!important;max-width:100%!important;padding:0!important}
body .ranked-podium :is(.character-name,.character-points){font-size:20px!important;line-height:1.15;white-space:normal;overflow-wrap:anywhere;color:var(--game-ink)!important}
body .ranked-podium .winning-spotlight .podium-block{border-color:var(--game-secondary)}
body :is(.question-panel,.hbt-panel,.pitch-panel,.letters-panel,.census-panel):has(>.ranked-podium){display:flex!important;flex-direction:column!important;min-height:0!important;gap:8px!important}
body.host :is(.question-panel,.hbt-panel,.pitch-panel,.letters-panel,.census-panel):has(>.ranked-podium)>:is(h2,p){flex:none;margin:4px 0}
body.host :is(.question-panel,.hbt-panel,.pitch-panel,.letters-panel,.census-panel):has(>.ranked-podium)>h2{font-size:36px}
body.phone :is(.question-panel,.hbt-panel,.pitch-panel,.letters-panel,.census-panel):has(>.ranked-podium){height:calc(100dvh - 160px)!important}
body .ranked-podium.compact-podium{display:grid!important;grid-template-columns:repeat(var(--phone-podium-columns),minmax(0,1fr))!important;grid-template-rows:repeat(var(--phone-podium-rows),minmax(0,1fr))!important;gap:8px!important}
body .ranked-podium.compact-podium>.podium-card{position:relative!important;left:auto!important;bottom:auto!important;width:100%!important;height:100%!important;grid-column:var(--phone-podium-column);grid-row:var(--phone-podium-row)}
body.phone .ranked-podium .podium-block{min-height:58px;border-top-width:4px;padding:2px}
body.phone .ranked-podium :is(.character-name,.character-points){font-size:13px!important}
body.phone .ranked-podium .podium-rank{font-size:18px}
body.host.theme-solomon .question-panel,body.host.theme-solomon.phase-instructions #players .player-card{background:var(--game-background)!important}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .question-panel{background:none!important}
body.host.theme-solomon.phase-instructions #people-panel{background:none!important;border:0!important;box-shadow:none!important;padding:0!important}
body.host .character-plaque .character-name{font-size:22px}
body.theme-solomon .character-plaque{background:var(--game-background)!important}
body.theme-solomon #join-dialog .join-artifact{width:min(100cqw,calc(100cqh * 2/3))!important;height:min(100cqh,calc(100cqw * 3/2))!important;padding:0!important}
body #open-join.code-box{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;padding:10px 16px!important;overflow:hidden!important;height:auto!important;min-height:100px!important}
body #open-join.code-box small{display:block!important;font-size:15px!important;line-height:1!important;letter-spacing:.16em!important}
body #open-join.code-box strong{display:block!important;font-size:42px!important;line-height:1.1!important;letter-spacing:.12em!important;max-width:100%!important}
body.phone #open-join.code-box{min-height:64px!important;min-width:96px!important;padding:6px 10px!important}
body.phone #open-join.code-box small{font-size:11px!important}body.phone #open-join.code-box strong{font-size:26px!important}
body.host.lobby #status:empty{display:none!important}
body.host.lobby #status{bottom:auto!important;height:auto!important}
/* Solomon's tutorial uses a generous two-column stage and an inset writing area. */
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .solomon-theatre{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important;gap:28px;align-items:center}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .solomon-theatre>.announcer{justify-self:center;align-self:center;max-height:88%;object-fit:contain}
body.host.theme-solomon.phase-intro .layout{padding-bottom:0}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .solomon-phone-tutorial>.tutorial-phone{width:min(100cqw,calc(100cqh * 2/3))!important;height:min(100cqh,calc(100cqw * 3/2))!important;max-height:100%;padding:0!important;position:relative;flex:none;container-type:inline-size}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .solomon-phone-tutorial :is(.tutorial-screen,.tutorial-phone-idle){position:absolute!important;inset:14% 13% 15%!important;width:auto!important;height:auto!important;min-height:0;padding:0!important;gap:12px;overflow:hidden}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .solomon-phone-tutorial .tutorial-screen h3{font-size:32px!important;line-height:1.15;margin:0}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .solomon-phone-tutorial .answer-tile{font-size:28px!important;line-height:1.12;padding:8px!important;min-height:46px;gap:10px}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .solomon-phone-tutorial .option-letter{width:32px;height:32px;font-size:21px;flex:none}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .solomon-phone-tutorial .tutorial-lock{font-size:27px;padding:10px}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .solomon-phone-tutorial :is(.tutorial-label,.micro){font-size:22px!important;line-height:1.15;margin:0;text-align:center}
body.host.theme-solomon:is(.phase-intro,.phase-intro-ready) .solomon-phone-tutorial .character-art{height:220px!important;max-height:45%!important;width:auto!important;aspect-ratio:var(--character-ratio);flex:none;align-self:center}
.lobby-scene-contact-shadow{position:absolute;left:50%;top:96%;width:70%;height:5%;transform:translateX(-50%);background:#563d27;opacity:.2;border-radius:50%;filter:blur(4px);pointer-events:none;z-index:-1}

/* v086: a common gameplay masthead across all six worlds. */
body.host.playing:not(.lobby) .room-heading{height:116px!important;min-height:116px!important;flex:none;position:relative;margin:0!important}
body.host.playing:not(.lobby) #room-title{position:fixed!important;inset:18px 28px auto auto!important;transform:none!important;margin:0!important;width:240px!important;height:96px!important;max-width:240px!important;max-height:96px!important;display:flex!important;align-items:center;justify-content:center;z-index:30}
body.host.playing:not(.lobby) #room-title img{width:240px!important;height:96px!important;max-width:240px!important;max-height:96px!important;object-fit:contain}
body.host.playing:not(.lobby) #open-join.code-box{position:fixed!important;inset:18px auto auto 28px!important;transform:none!important;width:155px!important;z-index:31}
/* Full-height podium bases remain behind the result controls. */
body.host :is(.question-panel,.hbt-panel,.pitch-panel,.letters-panel,.census-panel,.arks2-panel):has(>.ranked-podium){overflow:visible!important}
body .ranked-podium .podium-block{position:relative;border-bottom:0;border-radius:10px 10px 0 0;box-shadow:none}
body .ranked-podium .podium-block::after{content:'';position:absolute;top:100%;left:-2px;right:-2px;height:var(--podium-extension,0px);background:var(--game-background);border-left:2px solid var(--game-primary);border-right:2px solid var(--game-primary);pointer-events:none}
body .ranked-podium .winning-spotlight .podium-block::after{border-color:var(--game-secondary)}
body:has(.ranked-podium) #controls{position:relative;z-index:40}
body #join-dialog[data-game="2"] .join-artifact{width:min(550px,100cqw,calc(100cqh * 2/3));max-width:100%;height:auto}
body:has(.ranked-podium) :is(#gameplay,.layout){overflow:visible!important}
body.phone :is(.question-panel,.hbt-panel,.pitch-panel,.letters-panel,.census-panel,.arks2-panel):has(>.ranked-podium){overflow:visible!important}

/* v087: setting-specific materials retain the approved full-height podium geometry. */
body.theme-solomon{--podium-edge:#777f9b;--podium-cap:#cda34c;--podium-surface:repeating-linear-gradient(90deg,#ffffff16 0 10px,#173c6612 11px 14px,transparent 15px 36px),linear-gradient(110deg,#dce3ed,#b8c8dc 48%,#e4e8ee)}
body.theme-sketch{--podium-edge:#87502e;--podium-cap:#ba733a;--podium-surface:repeating-linear-gradient(0deg,transparent 0 71px,#70412466 72px 74px,#ffd49d66 75px 77px,transparent 78px 144px),repeating-linear-gradient(92deg,#f2b46b 0 3px,#db9a51 4px 8px,#e8a760 9px 18px)}
body.theme-hbt{--podium-edge:#965b35;--podium-cap:#b8763c;--podium-surface:repeating-linear-gradient(91deg,#edbf7c 0 5px,#e1ad66 6px 9px,#edc587 10px 19px,#e6b774 20px 23px)}
body.theme-letters{--podium-edge:#936e42;--podium-cap:#387783;--podium-surface:linear-gradient(90deg,transparent 0 43%,#9a734c44 44% 46%,#f7e1af 47% 54%,#9a734c44 55% 57%,transparent 58%),repeating-linear-gradient(0deg,#cfac76 0 91px,#8c694b 92px 94px,#e7cd9b 95px 98px,#c9a574 99px 190px)}
body.theme-campfire{--podium-edge:#615d64;--podium-cap:#d49a4c;--podium-surface:repeating-linear-gradient(0deg,transparent 0 83px,#695a4d55 84px 87px,#fff2cb30 88px 90px,transparent 91px 170px),linear-gradient(115deg,#c9b495,#a79174 55%,#c5ad8e)}
body.theme-pitch{--podium-edge:#416d79;--podium-cap:#cb9550;--podium-surface:repeating-linear-gradient(90deg,#ffffff18 0 5px,transparent 6px 19px),repeating-linear-gradient(0deg,#8cb1b6 0 69px,#456f7b 70px 72px,#c3d5cd 73px 76px,#9bbdc0 77px 145px)}
body .ranked-podium .podium-block{background:var(--podium-surface);background-attachment:fixed;border-color:var(--podium-edge);border-top-color:var(--podium-cap);border-top-width:10px;box-shadow:inset 5px 0 0 #fff3,inset -5px 0 0 #35251922,0 -3px 0 var(--podium-edge);border-radius:9px 9px 0 0;padding:8px 7px;gap:5px}
body .ranked-podium .podium-block::after{background:var(--podium-surface);background-attachment:fixed;border-color:var(--podium-edge);box-shadow:inset 5px 0 0 #fff3,inset -5px 0 0 #35251922}
body .ranked-podium .winning-spotlight .podium-block{border-color:var(--podium-edge);border-top-color:#edc970;box-shadow:inset 5px 0 0 #fff4,inset -5px 0 0 #35251922,0 -4px 0 #976b2d}
body .ranked-podium .winning-spotlight .podium-block::after{border-color:var(--podium-edge)}
body .ranked-podium .podium-rank{color:var(--game-ink);background:var(--game-background);border:1px solid var(--podium-cap);border-radius:50%;padding:3px 9px;min-width:46px;box-shadow:0 2px 0 #3f291b22}
body .ranked-podium .winning-spotlight .podium-rank{background:#f7dda0;color:#60441c;border-color:#997337}
body .ranked-podium .character-plaque{background:var(--game-background)!important;border:1px solid var(--podium-cap)!important;border-radius:7px;box-shadow:0 2px 0 #35251922!important;padding:5px 6px!important;width:100%!important}
body.theme-sketch .ranked-podium .character-plaque{border-radius:3px;transform:rotate(-1deg)!important}
body.theme-letters .ranked-podium .character-plaque{border-style:dashed!important}
body.theme-hbt .ranked-podium .podium-block{border-radius:20px 20px 0 0}
body.theme-campfire .ranked-podium .podium-block{border-radius:7px 12px 0 0}
body.phone .ranked-podium .podium-block{padding:3px;gap:2px;border-top-width:6px}
body.phone .ranked-podium .podium-rank{min-width:28px;padding:1px 4px}
body.phone .ranked-podium .character-plaque{padding:2px!important}
body.host.playing:not(.lobby) #open-join.code-box{width:230px!important}

/* v088: round introductions focus on the round and the players. */
.host.phase-instructions .round-scene{display:flex;justify-content:center}
.host.phase-instructions .round-copy{width:100%;text-align:center;align-items:center}
.host:is(.phase-instructions,.phase-sketch-round,.phase-census-round,.phase-pitch-round,.phase-hbt-round,.phase-letters-stop) :is(.announcer,.arks-cast,.arks-paper-puppet,.census-speaker,.postal-speaker,.hbt-host){display:none!important}
/* Only the victory heading has a rounded pale version of the primary colour. */
body.theme-solomon{--victory-paper:#e2eaf8}body.theme-sketch{--victory-paper:#deeeeb}body.theme-hbt{--victory-paper:#eee2ec}body.theme-letters{--victory-paper:#e0edeb}body.theme-campfire{--victory-paper:#e0e6f0}body.theme-pitch{--victory-paper:#e0ebf0}
body :is(.question-panel,.arks2-panel,.hbt-panel,.pitch-panel,.letters-panel,.census-panel):has(>.ranked-podium){background:transparent!important;border:0!important;box-shadow:none!important;align-items:center}
body :is(.question-panel,.arks2-panel,.hbt-panel,.pitch-panel,.letters-panel,.census-panel):has(>.ranked-podium)::before,body :is(.question-panel,.arks2-panel,.hbt-panel,.pitch-panel,.letters-panel,.census-panel):has(>.ranked-podium)::after{display:none!important}
body .victory-heading{flex:none;width:min(100%,1400px);border-radius:24px;background:var(--victory-paper);color:var(--game-ink);padding:14px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:5px;box-shadow:0 3px 0 #182c3c22}
body .victory-heading :is(h2,p){margin:0!important;max-width:100%;height:auto!important;position:static!important}
body.host .victory-heading h2{font-size:36px!important;line-height:1.1}
body.host .victory-heading p{font-size:24px;line-height:1.2}
body.phone .victory-heading{padding:10px 12px;border-radius:18px}
body.phone .victory-heading h2{font-size:24px!important}body.phone .victory-heading p{font-size:16px!important}
/* One continuous painted column, including the portion below its score plaque. */
body.theme-solomon{--podium-art:url('/assets/podium-solomon-v089.png')}
body.theme-sketch{--podium-art:url('/assets/podium-sketch-v089.png')}
body.theme-hbt{--podium-art:url('/assets/podium-hbt-v089.png')}
body.theme-letters{--podium-art:url('/assets/podium-letters-v089.png')}
body.theme-campfire{--podium-art:url('/assets/podium-campfire-v089.png')}
body.theme-pitch{--podium-art:url('/assets/podium-pitch-v089.png')}
body .ranked-podium .podium-block,body .ranked-podium .winning-spotlight .podium-block{background:none;border:0;box-shadow:none;border-radius:0;padding:18px 8px 6px;isolation:isolate}
body .ranked-podium .podium-block::before{content:'';position:absolute;z-index:-1;inset:0 0 auto;height:calc(100% + var(--podium-extension,0px));background-image:var(--podium-art);background-size:100% 100%;background-repeat:no-repeat;pointer-events:none}
body .ranked-podium .podium-block::after{display:none}
body .ranked-podium .character-plaque{transform:none!important}
body.phone .ranked-podium .podium-block{padding:10px 3px 3px}
body #gameplay>section:has(>.ranked-podium){background:transparent!important;border:0!important;box-shadow:none!important}
body #gameplay>section:has(>.ranked-podium)::before,body #gameplay>section:has(>.ranked-podium)::after{display:none!important}
/* Keep victory copy inside gameplay, clear of the app's fixed page-header rules. */
body #gameplay .victory-heading{position:static!important;inset:auto!important;transform:none!important;width:min(100%,1400px)!important;max-width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;flex:none!important;display:flex!important;flex-direction:column;align-items:center;gap:5px;margin:0!important;padding:14px 24px!important;border:0!important;border-radius:24px;background:var(--victory-paper)!important;color:var(--game-ink);z-index:auto!important;text-align:center}
body #gameplay .victory-heading :is(h2,p){width:auto!important;position:static!important;max-width:100%;white-space:normal}
body.phone #gameplay .victory-heading{padding:10px 12px!important;border-radius:18px}

/* v089: fixed name bands keep avatar baselines stable for long player names. */
body.host.theme-solomon:not(.phase-results) .character-name{--name-font-max:22;--name-line:28px}
body.host.theme-solomon.playing #players .player-name{--name-font-max:17;--name-line:22px}
body.host.theme-solomon.phase-instructions #players .player-name{--name-font-max:40;--name-line:46px}
body .ranked-podium :is(.character-name,.character-points){--name-font-max:20;--name-line:24px}
body.phone .ranked-podium :is(.character-name,.character-points){--name-font-max:13;--name-line:16px}
body.host.theme-solomon:not(.phase-results) .character-name,body.host.theme-solomon.playing #players .player-name,body .ranked-podium :is(.character-name,.character-points){display:block!important;width:100%!important;min-width:0;max-width:100%!important;height:var(--name-line)!important;min-height:var(--name-line)!important;line-height:var(--name-line)!important;white-space:nowrap!important;overflow:hidden;text-align:center;font-size:var(--fitted-name-font,calc(var(--name-font-max) * 1px))!important;font-variant-numeric:tabular-nums}
body .ranked-podium .character-plaque{min-width:0;align-self:stretch}
/* Fit each podium window proportionally; crop excess below the visible edge. */
body .ranked-podium .podium-block::before{background-size:100% auto!important;background-position:top center;background-repeat:no-repeat}

/* v090: enlarge the board's actual QR area, keeping the full object on screen. */
body #join-dialog[data-game="2"] .join-artifact{width:min(100cqw,calc(100cqh * 2/3));max-width:none;max-height:none}
body.theme-hbt .join-layout{--join-object-width:min(calc((100dvh - 24px)*2/3),55vw)}
body #join-dialog[data-game="2"] .join-face{inset:22% 11% 13%}
body #join-dialog[data-game="2"] .join-qr-paper{width:min(100cqw,calc(100cqh - 36px));max-width:none}

/* v091: full-width, proportionate artwork with an unstretched repeating body. */
body .ranked-podium .podium-paint{position:absolute;left:0;top:0;width:100%;max-width:none;max-height:none;z-index:-1;pointer-events:none}
body .ranked-podium .podium-block.podium-painted::before{display:none}

/* v093: centered nameplates leave the podium's painted sides visible. */
body .ranked-podium .character-plaque{width:min(84%,220px)!important;max-width:84%!important;align-self:center}
body.phone .ranked-podium .character-plaque{width:min(84%,160px)!important}


/* Fit names and complete score/answer ticks independently on a single line. */
body.host.theme-solomon.playing #players .player-plaque{min-width:0;width:100%}
body.host.theme-solomon.playing #players :is(.player-name,.badge){--name-font-max:22;display:block!important;box-sizing:border-box;width:100%!important;min-width:0;max-width:100%;white-space:nowrap!important;overflow-wrap:normal!important;word-break:normal!important;overflow:hidden;height:auto!important;min-height:0!important;line-height:1.15!important;font-size:var(--fitted-name-font,22px)!important}
body.host.theme-solomon.phase-instructions #players .player-name{--name-font-max:40}
/* Horizontal plates fit their text while the podium artwork keeps its full width. */
body.host .ranked-podium.horizontal-podium .character-plaque{width:max-content!important;max-width:calc(100% - 12px)!important;align-self:center;transform:none!important;padding:5px 8px!important;box-sizing:border-box;gap:2px!important}
body.host .horizontal-podium :is(.character-name,.character-points){width:auto!important;height:auto!important;min-height:0!important;line-height:1.12!important;writing-mode:horizontal-tb;white-space:nowrap!important;font-size:var(--fitted-name-font,32px)!important}
body.host .horizontal-podium .character-name{--name-font-max:32}
body.host .horizontal-podium .character-points{--name-font-max:24}
/* Phone results are one winner-first, scrollable list: portrait/name/points/place. */
body.phone:has(.phone-results-list){overflow-y:auto!important}
body.phone:has(.phone-results-list) :is(.layout,#gameplay){height:auto!important;max-height:none!important;overflow:visible!important}
body.phone :is(.question-panel,.arks2-panel,.hbt-panel,.pitch-panel,.letters-panel,.census-panel):has(>.phone-results-list){height:auto!important;max-height:none!important;overflow:visible!important;flex:none!important}
body.phone .ranked-podium.phone-results-list{display:flex!important;flex-direction:column!important;align-items:center;gap:16px!important;height:auto!important;flex:none!important;padding:8px 0 24px!important}
body.phone .ranked-podium.phone-results-list>.podium-card{position:static!important;inset:auto!important;transform:none!important;width:min(100%,320px)!important;height:auto!important;gap:6px!important;flex:none}
body.phone .phone-results-list .portrait{width:86px!important;height:86px!important;border-radius:50%;overflow:hidden;flex:none}
body.phone .phone-results-list .podium-block{width:100%!important;min-height:0!important;padding:8px!important;background:var(--game-background)!important;border-radius:12px!important;gap:5px}
body.phone .phone-results-list .podium-block::before,body.phone .phone-results-list .podium-block::after{display:none!important}
body.phone .phone-results-list .character-plaque{padding:0!important;gap:4px!important;background:none!important;border:0!important;box-shadow:none!important}
body.phone .phone-results-list :is(.character-name,.character-points){--name-font-max:24;--name-line:28px;font-size:var(--fitted-name-font,24px)!important}
body.phone .phone-results-list .podium-rank{font-size:20px}
body.phone:has(.phone-results-list) :is(.layout,#gameplay){min-width:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box}
body.phone :is(.question-panel,.arks2-panel,.hbt-panel,.pitch-panel,.letters-panel,.census-panel):has(>.phone-results-list){min-width:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box}
body.phone #gameplay:has(.phone-results-list) .victory-heading{min-width:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box}
body.phone #gameplay:has(.phone-results-list) .victory-heading h2{min-width:0!important;max-width:100%!important;font-size:24px!important;white-space:normal!important;overflow-wrap:anywhere}


/* Preserve full-width, floor-reaching podium artwork behind the fitted plates. */
body.host .ranked-podium.horizontal-podium .podium-block{width:100%!important}
/* Controller results are horizontal cards stacked in winner-first order. */
body.phone .ranked-podium.phone-results-list>.podium-card{flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;padding:10px!important;background:var(--game-background)!important;border-radius:14px!important;box-sizing:border-box}
body.phone .phone-results-list .portrait{width:72px!important;height:72px!important}
body.phone .phone-results-list .podium-block{width:auto!important;flex:1!important;min-width:0!important;padding:0!important;align-items:flex-start!important;text-align:left}
body.phone .phone-results-list .character-plaque{width:100%!important;max-width:100%!important;align-items:flex-start!important}
body.phone .phone-results-list :is(.character-name,.character-points){text-align:left!important}
