body{padding-bottom:8rem}.game-header .fiction-logo{width:210px;height:auto}.header-actions{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.live-list{display:grid;gap:1rem}.live-card{border:1px solid #3d5668;border-radius:.8rem;background:#10212d;padding:1rem}.live-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin:.7rem 0}.live-pill{display:inline-block;padding:.2rem .6rem;border-radius:.4rem;background:#143a3d;color:#8effdd;font-size:.875rem;font-weight:bold}.rehearsal-stamp{background:#ffe078;color:#20180b;padding:.5rem .8rem;border-radius:.4rem;font-weight:bold}.live-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.live-dialog{color:var(--text);background:#10212e;border:1px solid #708493;border-radius:1rem;width:min(1080px,calc(100% - 1rem));max-height:calc(100dvh - 1rem);padding:0}.live-dialog::backdrop{background:#000b}.live-dialog>header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#10212ef5;padding:1rem;border-bottom:1px solid #446273;z-index:2}.live-dialog #host-panel,.live-dialog #result-content{padding:1rem}.live-dialog-bottom{position:sticky;bottom:0;background:#10212ef5;padding:1rem;display:flex;gap:1rem;flex-wrap:wrap}.live-dialog header button{font-size:1.5rem}.live-dialog input{width:100%}.live-dialog .inline-form input{width:auto}.live-dialog details{padding:.7rem 0}#live-dock{position:fixed;bottom:0;left:0;right:0;z-index:50;display:flex;flex-direction:column;align-items:center;gap:.5rem;pointer-events:none;padding:.6rem;padding-bottom:max(.6rem,env(safe-area-inset-bottom))}#live-dock>*{pointer-events:auto;box-shadow:0 5px 24px #000b}.current-story{font-weight:bold;background:#ffe078;color:#211b12;border-color:#ffe078}#countdown,.dialog-timer{background:#0a363e;border:2px solid #5be3dd;border-radius:.5rem;padding:.65rem 1.5rem;font-weight:bold;text-align:center;font-variant-numeric:tabular-nums}.dialog-timer:empty{display:none}.urgent{background:#641f29!important;border-color:#ff8a8a!important;color:white}.live-status[data-error=false]{color:#80ffac;font-weight:bold}.live-status[data-error=true]{color:#ffb5b5;font-weight:bold}.live-callout{background:#ffe078;color:#291c08;padding:.8rem;border-radius:.5rem}.live-card label{margin-top:.8rem}.live-card textarea{display:block;width:100%;font:inherit;background:#06121b;color:white;min-height:6rem;padding:.6rem;border:1px solid #496075}.live-setup{border-left:3px solid #d4ad59;padding-left:1rem}.live-excerpt{white-space:pre-wrap;font-size:var(--reading-size,1.15rem);line-height:1.7}.live-excerpt.collapsed{max-height:8.5em;overflow:hidden;mask-image:linear-gradient(#000 75%,#0003)}.live-number{font-size:2rem!important;color:#80ffde}.live-winner{border:2px solid #d4ad59;background:linear-gradient(135deg,#30291c,#10212d);padding:1.25rem;border-radius:1rem}.live-winner h2{color:#ffe098}.live-history>details{border:1px solid #395566;padding:1rem;margin:.6rem 0;border-radius:.6rem}.live-history summary{cursor:pointer}.live-mail{overflow-wrap:anywhere}.live-mail td{font-size:.875rem}.live-locked{color:#80ffac;font-weight:bold}#countdown[hidden]{display:none}#registration{max-width:520px}.live-counts{display:flex;gap:1rem;flex-wrap:wrap}.live-counts strong{color:#80ffde}#episode-heading{margin-bottom:.5rem}#episode-heading h1{font-size:1.5rem}.live-story-controls{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin:.6rem 0}.live-badge{width:min(100%,600px);height:auto}#game-workspace .author-spotlight{margin-top:.5rem}#story h2.story-title{font-size:1.5rem}@media(max-width:650px){.live-grid{grid-template-columns:1fr}.game-header .fiction-logo{width:160px}.live-dialog #result-content{padding:.65rem}.live-actions>*{flex:1 1 auto}.live-mail{display:block;overflow-x:auto}.live-dialog-bottom{gap:.5rem}}

/* Keep the signed-in name and its edit control visible in the shared live header. */
.game-header #identity.live-player-identity{display:flex;flex-wrap:wrap;gap:.65rem;max-width:100%;padding:.5rem .75rem;background:#183644;border:1px solid #6aa5b5;border-radius:.75rem;font-size:1rem;color:#fff}
.game-header #identity .live-player-name{display:flex;flex-direction:column;min-width:0;flex:1 1 auto;line-height:1.3;overflow-wrap:anywhere}
.game-header #identity .live-player-label{font-size:1rem;color:#ddf4fa}
.game-header #identity .live-player-name strong{font-size:1.25rem;color:#fff;font-weight:700}
.game-header #identity.live-player-identity .avatar{width:40px;height:40px;flex:none}
.game-header #identity #edit-name{min-height:44px;font-size:1rem;font-weight:700;background:#ffe078;border-color:#ffe078;color:#241c08;white-space:nowrap}
.game-header #identity #edit-name:hover{background:#ffecaa;border-color:#fff1bc}
.game-header #identity #sign-out{min-height:44px;font-size:1rem;white-space:nowrap}
@media(max-width:700px){.game-header .header-actions:has(.live-player-identity){width:100%;margin-left:0;justify-content:flex-start}.game-header #identity.live-player-identity{width:100%;gap:.5rem;padding:.5rem}.game-header #identity .live-player-name{flex:1 1 8rem}}

.winner-score{display:grid;grid-template-columns:minmax(170px,1fr) minmax(240px,2fr);gap:1.5rem;align-items:center;margin:1rem 0 1.25rem;padding:1rem;background:#10212dcc;border:1px solid #786747;border-radius:.75rem}.winner-score-total>span{font-weight:700}.winner-score-total>strong{display:block;font-size:2rem;line-height:1.3;color:#ffe098;margin:.35rem 0}.winner-score-total>strong span{font-size:1rem}.winner-score-total p{margin:.4rem 0}.winner-distribution h3{margin:0 0 .6rem;font-size:1.125rem}.winner-rating-row{display:grid;grid-template-columns:6.5rem minmax(2rem,1fr) 2.5rem;gap:.6rem;align-items:center;margin:.5rem 0;font-variant-numeric:tabular-nums}.winner-rating-row>span,.winner-rating-row>strong{font-size:1rem}.winner-rating-row>strong{text-align:right}.winner-rating-track{height:.8rem;background:#344957;border-radius:1rem;overflow:hidden}.winner-rating-fill{display:block;height:100%;background:#ffe078;border-radius:inherit}.winner-rating-fill.level-0{background:#abb7c0}.winner-rating-fill.level-1{background:#83c5ed}.winner-rating-fill.level-2{background:#64e0ca}.winner-rating-fill.level-3{background:#ffe078}.winner-distribution .muted{font-size:1rem;margin:.7rem 0 0}@media(max-width:650px){.winner-score{grid-template-columns:1fr;gap:.8rem;padding:.85rem}}

.episode-title-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin:.6rem 0}
.episode-title-row h1{margin:0}
#episode-start-countdown{display:inline-block;padding:.35rem .75rem;border:1px solid #427180;border-radius:.5rem;background:#14313c;color:#8effdd;font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}

/* Shared broadcast setup guide: exact screenshot, labels remain readable on phones. */
.watch-dialog{width:min(1080px,calc(100% - 1rem));overflow:auto}
.watch-dialog h2{font-size:1.5rem;margin:0}
.watch-dialog header button{min-width:44px;min-height:44px}
#watch-content{padding:0 1rem}
#watch-content>p{line-height:1.5}
.watch-layout{margin:1rem 0;border:1px solid #496878;border-radius:.65rem;overflow:hidden;background:#06141d}
.watch-labels{display:grid;grid-template-columns:1fr 1fr;text-align:center}
.watch-labels strong{padding:.6rem .4rem;background:#68300e;color:#fff0e4;font-size:1.125rem;line-height:1.3}
.watch-labels strong+strong{background:#124b4b;color:#d5fff5;border-left:2px solid #8effdd}
.watch-labels span{display:block;margin-top:.25rem;font-size:1rem;font-weight:400}
.watch-layout img{display:block;width:100%;height:auto}
.watch-layout figcaption{padding:.65rem .8rem;font-size:1rem;line-height:1.4}
.watch-small-screen{border-left:3px solid #ffe078;padding:.1rem .8rem;margin:1rem 0}
.watch-small-screen h3{font-size:1.125rem;margin:.25rem 0}
.watch-small-screen p{margin:.35rem 0;line-height:1.5}
.watch-launch{padding:1rem;border-top:1px solid #446273;background:#10212e;text-align:center}
.watch-launch #open-broadcast{display:block;width:100%;padding:.95rem;font-size:1.125rem;font-weight:700;background:#ffe078;border-color:#ffe078;color:#241c08;text-align:center}
.watch-launch #open-broadcast:hover{background:#ffecaa}
.watch-launch p{margin:.65rem auto;max-width:42rem;font-size:1rem;line-height:1.4;color:#c6d5df}
.watch-launch>button{min-height:44px}
@media(max-width:600px){.watch-labels strong{font-size:1rem}.watch-labels span{font-size:1rem}.watch-dialog>header{gap:.6rem}#watch-content{padding:0 .75rem}}

/* Numbered gameplay guide uses the actual icon sprite and readable text examples. */
.help-dialog{width:min(960px,calc(100% - 1rem));overflow:auto}
.help-dialog h2{font:700 1.5rem/1.25 Arial,sans-serif;margin:0}
.help-dialog header button{min-width:44px;min-height:44px}
#help-content{padding:1rem 1.25rem}
.game-help{font-size:1.125rem;line-height:1.5}
.help-steps{list-style:none;counter-reset:help-step;margin:0;padding:0}
.help-steps>li{counter-increment:help-step;position:relative;padding:0 0 1rem 3.2rem;margin:0 0 1rem;border-bottom:1px solid #365362}
.help-steps>li::before{content:counter(help-step);position:absolute;left:0;top:0;width:2.25rem;height:2.25rem;display:grid;place-items:center;border-radius:.5rem;background:#ffe078;color:#211b12;font-size:1.25rem;font-weight:700}
.help-steps h3{font:700 1.25rem/1.4 Arial,sans-serif;margin:0 0 .25rem}
.help-steps p{margin:.35rem 0}
.help-emotis{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:.4rem;margin:.75rem 0}
.help-emoti{display:flex;flex-direction:column;align-items:center;text-align:center;padding:.3rem .15rem;border:1px solid #3e5969;border-radius:.5rem;background:#081820;min-width:0;font-size:1rem;line-height:1.3}
.help-emoti .goati{width:3.5rem;max-width:100%;margin:0 auto .25rem}
.help-emoti>span:last-child{margin-top:.25rem;color:#d4dfeb;overflow-wrap:anywhere}
.help-ratings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin:.7rem 0}
.help-rating{display:flex;flex-direction:column;text-align:center;padding:.55rem .3rem;border:1px solid #9875af;border-radius:.5rem;background:#2d2037;font-size:1rem}
.help-rating span{color:#e4d9ec}
.help-scoring{padding:.7rem .8rem;border-left:3px solid #80ffde;background:#14333d;border-radius:.2rem}
.help-note{color:#d4dfeb}
.help-dialog .live-dialog-bottom{justify-content:flex-end;border-top:1px solid #446273}
.help-dialog .live-dialog-bottom button{font-size:1.125rem;min-height:48px}
@media(max-width:750px){.help-emotis{grid-template-columns:repeat(4,minmax(0,1fr))}.help-ratings{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){#help-content{padding:1rem .75rem}.help-steps>li{padding-left:2.6rem}.help-steps>li::before{width:2rem;height:2rem}.help-emotis{grid-template-columns:repeat(2,minmax(0,1fr))}.help-dialog .live-dialog-bottom button{width:100%}}

.help-scoring{padding-left:2rem;margin:.65rem 0}
.help-scoring>li{margin:.35rem 0;padding-left:.15rem}
.help-steps>li:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}

.waiting-judges{margin:1rem 0}
.waiting-judges h2{font-size:1.25rem;margin:0 0 .65rem}
.waiting-judges ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;list-style:none;margin:0;padding:0}
.waiting-judges li{display:flex;align-items:center;justify-content:space-between;gap:.65rem;padding:.75rem;border:1px solid #426373;border-radius:.6rem;background:#102632;min-width:0}
.waiting-judges li>div{min-width:0}
.waiting-judges li>div>a{font-size:1.125rem;font-weight:700;color:#f3f3ff;text-underline-offset:.2rem;overflow-wrap:anywhere}
.waiting-judges li>div>span{display:block;font-size:1rem;color:#c4d9df;margin-top:.2rem}
.waiting-judges .button{flex:none;background:#ffe078;border-color:#ffe078;color:#241c08;font-weight:700;min-height:44px;padding:.5rem .6rem}
.waiting-judges .button:hover{background:#ffecaa}
@media(max-width:950px){.waiting-judges ul{grid-template-columns:1fr}}

.waiting-authors{margin:1rem 0 .5rem}
.waiting-authors h2{font-size:1.25rem;margin:0 0 .35rem}
.waiting-authors p{font-size:1rem;margin:0;color:#c4d9df}

.episode-start-note{flex:1 1 20rem;font-size:1rem;line-height:1.4;color:#d9e8ee;max-width:38rem}
.episode-start-note strong{color:#8effdd}

.registered-player-count{display:inline-block;padding:.45rem .7rem;border:1px solid #427180;border-radius:.5rem;background:#14313c;color:#8effdd;font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}

/* Name banner is a keyboard-accessible disclosure; polling preserves its DOM. */
.game-header #identity.live-player-identity{display:block;padding:0}
#identity-menu>summary{display:flex;align-items:center;gap:.65rem;padding:.5rem .75rem;cursor:pointer;list-style:none;min-height:60px}
#identity-menu>summary::-webkit-details-marker{display:none}
#identity-menu>summary:focus-visible{outline:3px solid var(--cyan);outline-offset:3px;border-radius:.65rem}
#identity-menu .identity-chevron{font-size:1.125rem;color:#8effdd}
#identity-menu[open] .identity-chevron{transform:rotate(180deg)}
#identity-menu .identity-options{display:flex;gap:.5rem;flex-wrap:wrap;padding:.5rem .75rem .75rem;border-top:1px solid #426373}
#identity-menu:not([open]) .identity-options{display:none}
