/* The race and cards share the viewport; the utility drawers never resize it. */
:root{--fg-ink:#173c32;--fg-paper:#f0e2c4;--fg-gold:#efc36f}
body{background:#173c32!important;color:var(--fg-paper)}
body[data-playing=yes]{overflow:hidden}
body[data-playing=yes] #app{height:100dvh;display:grid;grid-template-rows:58px minmax(0,1fr)}
#app>header{position:relative!important;inset:auto!important;height:58px!important;min-height:0!important;margin:0!important;padding:4px 18px!important;background:#173c32!important;border:0!important;box-shadow:none!important;z-index:40}
#app>header .brand{min-width:0;width:auto!important;flex:0 1 auto}
#app>header .game-logo{height:46px!important;width:130px!important;object-fit:contain}
#app>header .brand small{display:none!important}
#app>header nav{gap:8px!important;flex-wrap:nowrap!important;margin-left:auto}
#app>header nav .icon, #app>header summary{min-height:40px!important;min-width:40px!important;padding:6px!important;border-radius:9px!important;background:#2c5647!important;color:#f8edcf!important;border:1px solid #718b65!important}
#app>header .volume-control{position:static!important;order:initial!important;background:transparent!important;box-shadow:none!important;display:flex;align-items:center;gap:5px;max-width:190px}
#app>header input#volume{width:90px!important}
#app>header .audio-popover{width:270px!important;right:0;left:auto;padding:16px!important;background:#254c3d!important;color:#f7eacb!important}
#app>header #music-volume{width:100%;accent-color:var(--fg-gold);min-height:30px}
#app .game.field-game{height:100%!important;min-height:0!important;max-height:none!important;width:100%!important;max-width:none!important;padding:0 12px 12px!important;margin:0!important;display:grid!important;grid-template-rows:48px minmax(0,1fr)!important;gap:8px!important;overflow:visible!important}
.fg-crew{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
#app .game.field-game .crew-ribbon{position:static!important;inset:auto!important;background:none!important;border:0!important;display:flex!important;flex:1;min-width:0;margin:0!important;padding:0!important;height:46px!important;gap:8px!important;overflow:hidden!important;box-shadow:none!important}
#app .game.field-game .ribbon-player{min-width:0!important;flex:0 1 160px!important;min-height:44px!important;height:44px!important;max-height:44px!important;background:#294f40!important;border:1px solid #718b65!important;box-shadow:none!important;border-radius:10px!important;padding:3px 8px!important;display:flex!important;align-items:center;gap:7px;animation:none!important;transform:none!important}
#app .game.field-game .ribbon-player.active{border:2px solid var(--fg-gold)!important;background:#3d5d42!important}
#app .game.field-game .ribbon-player b{font-size:13px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;max-width:110px}
#app .game.field-game .ribbon-player strong{font-size:12px!important;color:#f2dca2!important}
#app .game.field-game .ribbon-avatar{height:36px!important;width:30px!important;min-width:30px!important}
#app .game.field-game .ribbon-player .ribbon-pulse{display:none!important}
.fg-online{font-size:11px;color:#eedbbb;white-space:nowrap;background:#173c32;padding:5px 8px;border-radius:6px}
#app .game.field-game .field-table{display:grid;grid-template-columns:minmax(0,1fr) clamp(290px,26vw,390px);gap:12px;min-height:0;min-width:0}
#app .game.field-game .fg-stage{position:relative!important;min-height:0!important;height:100%!important;width:100%!important;margin:0!important;padding:0!important;border-radius:18px!important;overflow:hidden!important;background:#395c3d url('/assets/stadium-cinematic.webp') center/cover!important;border:0!important;box-shadow:0 4px 12px #0004!important;display:grid!important;grid-template-rows:45px minmax(0,1fr) 60px 25px!important;gap:0!important;perspective:none!important;transform:none!important}
body[data-scene='2'] #app .game.field-game .fg-stage{background-image:url('/assets/safari.webp')!important}
body[data-scene='3'] #app .game.field-game .fg-stage{background-image:url('/assets/crochet-volcano.webp')!important}
.fg-heading{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:#173c32ed;color:#ffedc3;font-size:15px;position:relative;z-index:2}
.fg-heading b{font-family:Georgia,serif;font-size:19px}
.fg-track{position:relative;min-width:0;min-height:0;isolation:isolate;container-type:size;display:grid;place-items:center;background:#244b39}
.fg-map{position:relative;width:min(100cqw,calc(100cqh * 5 / 3));aspect-ratio:5 / 3;isolation:isolate;container-type:size}
.fg-map-art{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}
#app .game.field-game .fg-map .fg-runner{height:clamp(66px,28cqh,150px)!important;width:clamp(33px,14cqh,75px)!important;transform:translate(-50%,-75%)!important}
.fg-track>svg{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 4px 2px #0004)}
#app .fg-runner{position:absolute;z-index:4;width:clamp(72px,7vw,120px);height:clamp(110px,15vh,175px);margin:0;padding:0;min-width:0;min-height:0;border:0;background:none!important;box-shadow:none!important;border-radius:0;transform:translate(-50%,-92%);transition:left .65s cubic-bezier(.2,.75,.25,1),top .65s cubic-bezier(.2,.75,.25,1);overflow:visible;cursor:pointer;animation:none}
.fg-character{position:absolute;inset:0;background:url('/assets/toy-racers-fixed.webp') center/500% 100% no-repeat;filter:drop-shadow(0 4px 2px #0005)}
.fg-character[data-sprite='0']{background-size:477.831% 100%;background-position:0 center}
.fg-character[data-sprite='1']{background-size:519.11% 100%;background-position:25.609% center}
.fg-character[data-sprite='2']{background-size:483.659% 100%;background-position:50.223% center}
.fg-character[data-sprite='3']{background-size:507.161% 100%;background-position:75% center}
.fg-character[data-sprite='4']{background-size:499.496% 100%;background-position:100% center}
body[data-scene='3'] .fg-character{background-image:url('/assets/crochet-racers-fixed.webp')}
body[data-scene='3'] .fg-character[data-sprite='0']{background-size:502.025% 100%}
body[data-scene='3'] .fg-character[data-sprite='1']{background-size:533.065% 100%;background-position:25.45% center}
body[data-scene='3'] .fg-character[data-sprite='2']{background-size:472.143% 100%;background-position:50.16% center}
body[data-scene='3'] .fg-character[data-sprite='3']{background-size:508.462% 100%;background-position:75.957% center}
body[data-scene='3'] .fg-character[data-sprite='4']{background-size:512.403% 100%}
.fg-runner.hopping .fg-character{animation:fg-stride .65s ease}
.fg-runner.pet .fg-character{animation:fg-pet .45s ease}
@keyframes fg-stride{25%,65%{translate:0 -5px;rotate:-2deg}45%,85%{translate:0 0;rotate:2deg}}
@keyframes fg-pet{50%{translate:0 -8px;rotate:3deg}}
.fg-dust{position:absolute;left:15%;bottom:24%;width:70px;height:20px;opacity:0}
.fg-dust b{position:absolute;left:calc(var(--p)*-14px);bottom:calc(var(--p)*1px);width:calc(15px + var(--p)*3px);height:calc(10px + var(--p)*2px);border-radius:50%;background:#efdfbcbf}
.fg-runner.hopping .fg-dust{animation:fg-dust .8s ease-out}
@keyframes fg-dust{15%{opacity:1}100%{opacity:0;translate:-30px 0}}
.fg-finish{position:absolute;left:93%;top:12%;bottom:16%;width:12px;background:repeating-conic-gradient(#fff0d1 0% 25%,#1e392b 0% 50%) 0/12px 12px;transform:rotate(-1deg);border-radius:3px}
.fg-distances{position:absolute;left:0;right:0;bottom:0;height:25px;color:#fff0d0;font-size:12px}
.fg-distances span{position:absolute;translate:-50% 0;background:#173c32d9;border-radius:4px;padding:2px 5px}
.fg-checkpoints{display:flex;align-items:center;justify-content:center;gap:7px;padding:5px 12px;background:#173c32e8;min-width:0}
.fg-checkpoints>small{font-size:11px}
#app .fg-checkpoints .checkpoint{position:relative!important;inset:auto!important;width:33px!important;height:45px!important;min-width:0!important;min-height:0!important;padding:0!important;flex:0 1 33px;transform:none!important;perspective:none!important;background:#f0e1bf!important;border:1px solid #b39a68!important;box-shadow:0 2px 3px #0004!important;border-radius:5px!important;overflow:hidden}
#app .fg-checkpoints .checkpoint-art{display:grid;place-items:center;width:100%!important;height:100%!important;position:static!important;inset:auto!important;transform:none!important;backface-visibility:visible!important;font-weight:bold;font-size:14px;color:#173c32;background-color:#eeddb6}
.fg-foot{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:4px 12px;background:#173c32f2;font-size:10px;color:#e9d9b7}
.field-rail{min-width:0;min-height:0;display:grid;grid-template-rows:68px 88px minmax(0,1fr);gap:8px;background:#254b3c;padding:10px;border-radius:16px}
#app .game.field-game .turn-banner{position:relative!important;inset:auto!important;margin:0!important;padding:8px 10px!important;min-height:0!important;max-height:68px!important;border:1px solid #82916b!important;border-radius:9px!important;background:#315641!important;display:flex!important;gap:8px!important;box-shadow:none!important;transform:none!important;animation:none!important}
#app .game.field-game .turn-banner.your-turn{border-color:var(--fg-gold)!important;background:#4e5b37!important}
#app .game.field-game .turn-avatar,#app .game.field-game .up-next{display:none!important}
#app .game.field-game .turn-copy{min-width:0}
#app .game.field-game .turn-label{font-size:10px!important;letter-spacing:0!important;line-height:1.2!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block}
#app .game.field-game .turn-copy strong{font-size:17px!important;line-height:1.2!important;display:block!important;margin:2px 0!important}
#app .game.field-game .turn-copy small{font-size:10px!important;line-height:1.3!important;display:block!important;margin:0!important}
#app .game.field-game .pocket-collection{position:static!important;margin:0!important;inset:auto!important;height:auto!important;padding:7px 8px!important;border:0!important;background:#efe0bd!important;color:#173c32!important;border-radius:9px!important;box-shadow:none!important;min-width:0;display:block!important;max-width:none!important}
#app .game.field-game .pocket-collection h2{display:flex;justify-content:space-between;align-items:center;margin:0!important;font:700 14px Georgia!important;line-height:1.2!important}
#app .game.field-game .pocket-collection h2 button{width:24px!important;height:22px!important;min-height:0!important;min-width:0!important;padding:0!important;background:transparent!important;border:0!important;font-size:18px!important;color:#173c32!important}
#app .game.field-game .pocket-collection>div{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:3px!important}
#app .game.field-game .pocket-collection>div button{display:flex!important;align-items:center;justify-content:center;gap:3px;padding:1px!important;height:32px!important;min-height:0!important;width:auto!important;min-width:0!important;background:none!important;border:0!important;box-shadow:none!important;color:#173c32!important}
#app .game.field-game .pocket-collection img{width:27px!important;height:28px!important;object-fit:contain!important}
#app .game.field-game .pocket-collection b{font-size:13px!important;position:static!important}
#app .game.field-game .pocket-collection>small{font-size:9px!important;margin:1px 0 0!important;display:block;color:#2c4938!important;white-space:normal!important}
#app .game.field-game .market{position:static!important;min-height:0!important;width:auto!important;max-width:none!important;max-height:none!important;display:grid!important;grid-template-rows:25px minmax(0,1fr)!important;gap:5px!important;padding:0!important;margin:0!important;background:none!important;border:0!important;box-shadow:none!important;overflow:visible!important}
#app .game.field-game .market .section-head{display:flex!important;gap:5px!important;justify-content:space-between!important;margin:0!important;padding:0!important;min-height:0!important;position:static!important;align-items:center!important}
#app .game.field-game .market h2{display:none!important}
#app .game.field-game .market-guidance{font-size:13px!important;color:#f5e6c4!important;display:block!important;white-space:normal!important;letter-spacing:0!important;animation:none!important}
#app .game.field-game .market .section-head>small{font-size:10px!important;color:#edd9b1!important}
#app .game.field-game .market-tray{min-height:0!important;display:flex!important;flex-direction:column!important;gap:6px!important;padding:0!important;overflow:visible!important;align-items:stretch!important}
#app .game.field-game .market-cards{min-width:0!important;min-height:0!important;flex:1!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:repeat(var(--card-count),minmax(0,1fr))!important;gap:6px!important;padding:0!important;margin:0!important;overflow:visible!important;align-content:stretch!important;align-items:stretch!important;perspective:none!important}
#app .game.field-game .race-card{position:relative!important;inset:auto!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:100%!important;min-width:0!important;max-width:none!important;height:100%!important;min-height:0!important;max-height:none!important;padding:3px 8px!important;border:2px solid #b39a6a!important;border-radius:8px!important;background:#f0e2c4!important;color:#1d3d31!important;transform:none!important;animation:none!important;box-shadow:0 2px 3px #0003!important;overflow:visible!important;transition:translate .15s,border-color .15s!important;aspect-ratio:auto!important}
#app .game.field-game .race-card img{height:100%!important;width:auto!important;max-width:70%!important;min-width:0!important;min-height:0!important;object-fit:contain!important;aspect-ratio:auto!important;border:0!important;filter:none!important;transform:none!important;border-radius:3px!important;flex:1 1 auto!important}
#app .game.field-game .race-card .card-name{position:static!important;inset:auto!important;display:block!important;min-width:68px;font-size:13px!important;max-width:90px;background:none!important;box-shadow:none!important;text-shadow:none!important;color:#173c32!important;padding:0!important;text-align:left!important;white-space:normal!important;letter-spacing:0!important;font-family:system-ui!important;transform:none!important}
.card-name b{display:block}.card-name small{display:block;font-size:9px;margin-top:3px}
#app .game.field-game .race-card.pickable:not(:disabled){border-color:#f2ce7b!important}
#app .game.field-game .race-card.pickable:not(:disabled):hover{translate:-4px 0!important;border-color:#fff3bb!important;box-shadow:0 4px 7px #0005!important;z-index:5}
#app .game.field-game .race-card:disabled{opacity:1!important;cursor:default!important}
#app .game.field-game .reveal-deck{position:static!important;order:2!important;flex:0 0 48px!important;width:100%!important;min-width:0!important;min-height:48px!important;height:48px!important;max-height:48px!important;padding:5px 8px!important;border:1px solid #d7af56!important;border-bottom:3px solid #a47931!important;background:#eec36f!important;border-radius:9px!important;box-shadow:0 3px 4px #0003!important;transform:none!important;animation:none!important;display:flex!important;align-items:center;justify-content:center;gap:8px;color:#173c32!important;cursor:pointer;overflow:hidden}
#app .game.field-game .reveal-deck:disabled{background:#4b6950!important;color:#f1e6c7!important;border-color:#779074!important;box-shadow:none!important;opacity:1!important;cursor:default}
#app .game.field-game .reveal-deck .deck-symbol{display:none!important}
#app .game.field-game .reveal-deck strong{font-size:15px!important;color:inherit!important}
#app .game.field-game .reveal-deck small{font-size:10px!important;color:inherit!important}
#app .game.field-game .empty-table{min-height:0!important;display:grid!important;place-content:center;text-align:center;font-size:14px!important;color:#ebd7b1!important;height:100%;border:1px dashed #8ca17e;border-radius:10px}
#app .game.field-game .empty-table span{font-size:35px!important}
#app .game.field-game .side-tools{position:fixed!important;bottom:14px!important;left:24px!important;right:auto!important;top:auto!important;display:flex!important;gap:5px;z-index:20}
#app .game.field-game .side-tools button{height:36px!important;width:36px!important;min-height:0!important;min-width:0!important;font-size:17px!important;padding:3px!important;background:#1c4033!important;border:1px solid #95a47c!important;color:#f3e4c0!important;border-radius:8px!important}
#app .game.field-game .results{position:static!important;margin:0!important;padding:8px!important;min-height:0;overflow:auto;background:#efe1c2!important;color:#173c32!important;border-radius:10px;border:0!important}
#app .game.field-game .results h2{font:700 21px Georgia!important;margin:3px 0 8px!important;color:#173c32!important}
#app .game.field-game .results .podium{display:flex!important;gap:6px;padding:0!important;justify-content:center}
#app .game.field-game .results .podium img{width:70px!important;height:50px!important;object-fit:contain!important}
#app .game.field-game .results .podium>div{width:33%!important;min-width:0!important;padding:0!important;transform:none!important;height:auto!important;background:none!important;border:0!important;display:grid!important;justify-items:center}
#app .game.field-game .results .podium b{font-size:10px!important;color:#173c32!important}
#app .game.field-game .score-summary{display:block!important;margin:8px 0!important}
.fg-score{border-bottom:1px solid #ae9872;padding:5px 0;font-size:13px}.fg-score summary{cursor:pointer;display:flex;justify-content:space-between}.fg-score>div{display:flex;gap:6px;align-items:center;font-size:11px;padding:3px}.fg-score img{height:25px;width:30px;object-fit:contain}.fg-score>div b{margin-left:auto}
.fg-card-flight{display:flex;align-items:center;background:#f0e2c4;border-radius:8px;border:2px solid #efc36f;overflow:hidden}.fg-card-flight img{max-width:75%;height:100%;object-fit:contain}.fg-card-flight .card-name{font-size:12px;color:#173c32}
#race-event{pointer-events:none!important;max-width:420px!important}
button:focus-visible,summary:focus-visible{outline:3px solid #ffe3a0!important;outline-offset:2px!important}
body[data-chat-open=yes] #app .game.field-game{padding-right:12px!important}
.campfire.is-open{position:fixed!important;inset:70px 18px 18px auto!important;width:min(350px,calc(100vw - 36px))!important;height:auto!important;z-index:80!important}
@media(max-height:690px) and (min-width:901px){
 body[data-playing=yes] #app{grid-template-rows:50px minmax(0,1fr)}#app>header{height:50px!important}
 #app .game.field-game{grid-template-rows:40px minmax(0,1fr)!important;gap:5px!important;padding:0 8px 8px!important}
 #app .game.field-game .field-table{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 178px;gap:6px}
 .field-rail{grid-template-columns:155px minmax(0,1fr);grid-template-rows:57px minmax(0,1fr);gap:5px;padding:7px}
 #app .game.field-game .turn-banner{grid-column:1;grid-row:1;max-height:57px!important;padding:5px!important}
 #app .game.field-game .turn-label{display:none!important}#app .game.field-game .turn-copy strong{font-size:14px!important}
 #app .game.field-game .pocket-collection{grid-column:1;grid-row:2;padding:6px!important}#app .game.field-game .pocket-collection>div{grid-template-columns:repeat(3,1fr)!important}#app .game.field-game .pocket-collection>small{display:none!important}
 #app .game.field-game .market{grid-column:2;grid-row:1/-1;grid-template-rows:18px minmax(0,1fr)!important}
 #app .game.field-game .market-tray{flex-direction:row!important}#app .game.field-game .market-cards{grid-template-columns:repeat(var(--card-count),minmax(0,1fr))!important;grid-template-rows:1fr!important}
 #app .game.field-game .race-card{flex-direction:column!important;gap:2px!important;padding:4px!important}#app .game.field-game .race-card img{height:calc(100% - 28px)!important;max-width:100%!important;width:100%!important;flex:1 1 0!important}
 #app .game.field-game .race-card .card-name{min-width:0;max-width:none;text-align:center!important;font-size:11px!important}.card-name small{font-size:8px;margin-top:0}
 #app .game.field-game .reveal-deck{height:auto!important;max-height:none!important;width:126px!important;min-width:126px!important;flex:0 0 126px!important;flex-direction:column!important}
 #app .game.field-game .results{grid-column:2;grid-row:1/-1}#app .game.field-game .fg-stage{grid-template-rows:33px minmax(0,1fr) 45px 20px!important}
 .fg-heading b{font-size:15px}.fg-heading{padding:4px 12px}.fg-foot{font-size:9px}.fg-checkpoints{padding:3px 8px}
 #app .fg-checkpoints .checkpoint{height:35px!important;width:26px!important}.fg-runner{height:100px!important;width:66px!important}.fg-distances{height:18px;font-size:10px}
 #app .game.field-game .side-tools{bottom:195px!important;left:16px!important}
}

@media(max-width:550px){
 #app>header{padding:4px 6px!important}#app>header .game-logo{width:74px!important}
 #app>header nav .icon,#app>header summary{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
 #app>header nav{gap:2px!important}#app .game.field-game .side-tools button{width:44px!important;height:44px!important;min-height:44px!important}
 #app .fg-runner{width:40px;height:66px}.fg-inspector button{min-height:44px!important}
}
@media(max-width:900px){
 body[data-playing=yes] #app{grid-template-rows:52px minmax(0,1fr)}#app>header{height:52px!important;padding:4px 10px!important}#app>header .game-logo{width:105px!important;height:42px!important}
 #app>header .volume-control{display:none!important}#app>header nav{gap:4px!important}#app>header nav .icon,#app>header summary{min-width:34px!important;min-height:36px!important;width:34px!important;height:36px!important}
 #app .game.field-game{padding:0 7px 7px!important;grid-template-rows:44px minmax(0,1fr)!important;gap:5px!important}
 .fg-online{display:none}#app .game.field-game .crew-ribbon{gap:4px!important;height:40px!important}#app .game.field-game .ribbon-player{flex:1!important;height:39px!important;min-height:39px!important;padding:2px 5px!important;gap:3px!important}#app .game.field-game .ribbon-player b{font-size:10px!important;max-width:95px}#app .game.field-game .ribbon-player strong{font-size:10px!important}#app .game.field-game .ribbon-avatar{width:22px!important;min-width:22px!important;height:30px!important}
 #app .game.field-game .field-table{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 270px;gap:6px}
 .field-rail{grid-template-columns:1fr;grid-template-rows:43px 62px minmax(0,1fr);padding:6px;gap:5px}
 #app .game.field-game .turn-banner{padding:4px 8px!important;max-height:43px!important}#app .game.field-game .turn-copy{display:flex;align-items:center;gap:7px;flex-wrap:wrap}#app .game.field-game .turn-label{display:none!important}#app .game.field-game .turn-copy strong{font-size:14px!important}#app .game.field-game .turn-copy small{font-size:9px!important;flex:1;min-width:90px}
 #app .game.field-game .pocket-collection{padding:4px 8px!important}#app .game.field-game .pocket-collection h2{font-size:12px!important}#app .game.field-game .pocket-collection>small{display:none!important}
 #app .game.field-game .market{grid-template-rows:17px minmax(0,1fr)!important;gap:3px!important}#app .game.field-game .market-tray{flex-direction:row!important;gap:5px!important}#app .game.field-game .market-cards{grid-template-columns:repeat(var(--card-count),minmax(0,1fr))!important;grid-template-rows:1fr!important;gap:4px!important}
 #app .game.field-game .race-card{flex-direction:column!important;padding:3px!important;gap:1px!important}#app .game.field-game .race-card img{height:calc(100% - 27px)!important;width:100%!important;max-width:100%!important;flex:1 1 0!important}#app .game.field-game .race-card .card-name{text-align:center!important;min-width:0;max-width:100%;font-size:10px!important}.card-name small{font-size:8px;margin-top:0}
 #app .game.field-game .reveal-deck{flex:0 0 90px!important;min-width:90px!important;width:90px!important;height:auto!important;max-height:none!important;flex-direction:column!important;padding:4px!important}#app .game.field-game .reveal-deck strong{font-size:12px!important}#app .game.field-game .reveal-deck small{font-size:9px!important}
 #app .game.field-game .fg-stage{grid-template-rows:32px minmax(0,1fr) 43px 20px!important;border-radius:12px!important}.fg-heading{font-size:11px;padding:4px 9px}.fg-heading b{font-size:14px}.fg-foot{font-size:8px;padding:3px 8px}.fg-checkpoints{padding:3px 7px;gap:4px}.fg-checkpoints>small{font-size:9px}#app .fg-checkpoints .checkpoint{height:34px!important;flex:0 1 24px;width:24px!important}
 #app .fg-runner{height:95px;width:60px}.fg-distances{font-size:9px;height:18px}.fg-finish{width:8px;background-size:8px 8px}
 #app .game.field-game .side-tools{bottom:282px!important;left:12px!important;gap:3px!important}#app .game.field-game .side-tools button{height:28px!important;width:28px!important;font-size:13px!important}
 .your-turn-notice{display:none!important}
}
@media(max-width:550px){
 #app>header .game-logo{width:88px!important}#app>header nav .icon,#app>header summary{min-width:30px!important;width:30px!important;padding:2px!important}#app>header nav{gap:3px!important}
 #app .game.field-game .ribbon-avatar{display:none!important}#app .game.field-game .ribbon-player b{max-width:58px}
 #app .game.field-game .field-table{grid-template-rows:minmax(0,1fr) 310px}.field-rail{grid-template-rows:40px 61px minmax(0,1fr)}
 #app .game.field-game .market-cards{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;grid-auto-flow:row;gap:4px!important}
 #app .game.field-game .market-cards:has(.race-card:nth-child(4)):not(:has(.race-card:nth-child(7))){grid-template-rows:repeat(2,minmax(0,1fr))!important}
 #app .game.field-game .market-cards:not(:has(.race-card:nth-child(4))){grid-template-rows:1fr!important}
 #app .game.field-game .race-card img{height:calc(100% - 16px)!important}#app .game.field-game .race-card .card-name{font-size:9px!important;line-height:1.1!important}.card-name small{display:none}
 #app .game.field-game .reveal-deck{flex-basis:76px!important;min-width:76px!important;width:76px!important}#app .game.field-game .reveal-deck strong{font-size:11px!important}
 #app .game.field-game .side-tools{bottom:322px!important}.fg-foot span:last-child{display:none}.fg-heading b{font-size:13px}#app .fg-runner{width:50px;height:85px}
 #app .game.field-game .results .podium img{height:35px!important;width:50px!important}#app .game.field-game .results h2{font-size:17px!important}
}
@media(max-height:540px) and (max-width:900px){body[data-playing=yes]{overflow:auto}body[data-playing=yes] #app{min-height:600px;height:auto}#app .game.field-game{min-height:548px!important}}
@media(prefers-reduced-motion:reduce){.fg-runner,.fg-character,.fg-dust,.race-card{animation:none!important;transition:none!important}.fg-dust{display:none}}
.field-board{display:grid;grid-template-rows:minmax(0,1fr) 104px;gap:8px;min-width:0;min-height:0}
#app .game.field-game .field-board{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:none!important;grid-auto-rows:auto!important;align-content:stretch!important;position:static!important}
#app .game.field-game .field-board>.fg-stage{grid-area:1 / 1!important;align-self:stretch!important}
#app .game.field-game .field-board>.fg-inspector{grid-area:2 / 1!important;align-self:stretch!important}
#app .game.field-game .field-rail{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:none!important;grid-auto-rows:auto!important;position:static!important;align-content:stretch!important}
#app .game.field-game .field-rail>.turn-banner{grid-area:1 / 1!important;align-self:stretch!important}
#app .game.field-game .field-rail>.pocket-collection{grid-area:2 / 1!important;align-self:stretch!important}
#app .game.field-game .field-rail>.market,#app .game.field-game .field-rail>.results{grid-area:3 / 1!important;align-self:stretch!important}
#app .game.field-game .market-tray,#app .game.field-game .market-cards,#app .game.field-game .market .section-head{grid-area:auto!important;position:static!important}
#app .game.field-game .race-card:before,#app .game.field-game .race-card:after,#app .game.field-game .market:before,#app .game.field-game .market:after,#app .game.field-game .pocket-collection:before{display:none!important}
#app .game.field-game .fg-stage:before,#app .game.field-game .fg-stage:after{display:none!important}
.fg-inspector{display:flex;gap:12px;align-items:center;min-width:0;min-height:0;background:#efdfbc;color:#173c32;border-radius:10px;padding:7px 14px;overflow:hidden}
.fg-inspector>img{height:100%;width:145px;object-fit:contain;flex:0 0 145px}
.fg-inspector>div{min-width:0;flex:1}.fg-inspector b{display:block;font:700 21px Georgia}.fg-inspector span,.fg-inspector small{display:block;font-size:12px;margin-top:4px}
.fg-inspector button{border:1px solid #365b43;background:#315c43;color:#fff3d5;border-radius:8px;padding:8px 12px;min-height:40px;font:inherit;font-size:12px}
#app .game.field-game .race-card.pickable:not(:disabled):hover{translate:none!important;transform:none!important}
.fg-related .fg-character{filter:drop-shadow(0 0 4px #ffdf8d) drop-shadow(0 4px 2px #0005)}
#app .fg-runner{width:clamp(56px,5.1vw,86px);height:clamp(112px,15vh,172px)}
body[data-calm=yes] *,body[data-calm=yes] *:before,body[data-calm=yes] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
body[data-calm=yes] .fg-dust{display:none}
#app .lobby-card{background:#f0e3c7!important;color:#173c32!important}#app .lobby-card h1,#app .lobby-card strong,#app .lobby-card .options b{color:#173c32!important}#app .lobby-card .crew-member{background:#e8dabc!important;color:#173c32!important}
body[data-playing=no] .landing{color:#fff0d0!important}
@media(max-height:690px) and (min-width:901px){.field-board{grid-template-rows:minmax(0,1fr) 68px;gap:5px}.fg-inspector{padding:4px 10px;gap:10px}.fg-inspector>img{width:90px;flex-basis:90px}.fg-inspector b{font-size:16px}.fg-inspector span,.fg-inspector small{font-size:10px;margin-top:2px}#app .game.field-game .side-tools{bottom:270px!important}.fg-inspector button{min-height:34px;padding:5px 9px}}
@media(max-width:900px){.field-board{grid-template-rows:minmax(0,1fr) 72px;gap:5px}.fg-inspector{padding:4px 8px;gap:8px}.fg-inspector>img{width:95px;flex-basis:95px}.fg-inspector b{font-size:17px}.fg-inspector span,.fg-inspector small{font-size:10px;margin-top:2px}.fg-inspector button{padding:4px 8px;min-height:36px;font-size:10px}#app .game.field-game .side-tools{bottom:359px!important}}
@media(max-width:550px){.field-board{grid-template-rows:minmax(0,1fr) 65px}.fg-inspector>img{width:75px;flex-basis:75px}.fg-inspector b{font-size:15px}.fg-inspector span,.fg-inspector small{font-size:9px}.fg-inspector button{width:55px;min-width:55px;font-size:9px;padding:3px}#app .game.field-game .side-tools{bottom:394px!important}}
#app .game.field-game .race-card,#app .game.field-game .market-tray,#app .game.field-game .market-cards{rotate:none!important;scale:none!important;translate:none!important;filter:none!important;outline:none!important}
#app .game.field-game .race-card .card-name{opacity:1!important;visibility:visible!important}
#app .game.field-game .turn-banner{width:100%!important;height:100%!important;color:#f8e8c3!important}
#app .game.field-game .turn-copy{display:block!important;color:#f8e8c3!important}
#app .game.field-game .turn-copy strong,#app .game.field-game .turn-copy small,#app .game.field-game .turn-label{color:#f8e8c3!important;text-shadow:none!important}
#app .game.field-game .fg-inspector{grid-template-columns:none!important;max-height:none!important}
#app .game.field-game .side-tools{position:static!important;inset:auto!important;flex:0 0 auto;order:2;margin:0!important;align-items:center!important;flex-direction:row!important;flex-wrap:nowrap!important;align-self:center!important;height:36px!important}
.fg-online{order:3}
.direct-flags{display:flex;gap:4px;align-items:center}.direct-flags button{padding:5px;background:#244e3c;border:1px solid #829471;border-radius:7px;width:40px;height:40px}.direct-flags svg{display:block;width:100%;height:100%}.direct-flags button[aria-pressed=true]{border:2px solid #ffdc8a;background:#4a6040}
#app>header .audio-settings{position:relative}#app>header .audio-popover[hidden]{display:none!important}#app>header .audio-popover:not([hidden]){display:flex!important;flex-direction:column;gap:7px;position:absolute;top:46px;right:0;z-index:100;padding:14px!important;border:1px solid #b9bc89;border-radius:9px;box-shadow:0 4px 12px #0006}
#app>header #effects-volume{width:100%;accent-color:var(--fg-gold);min-height:30px}
@media(max-width:550px){#app>header nav>[data-do=music]{display:none!important}.direct-flags button{width:44px;height:44px;min-width:44px!important;padding:5px!important}.direct-flags{gap:2px}}
@media(max-width:550px){#app .game.field-game .side-tools button{width:44px!important;height:44px!important}#app .game.field-game .side-tools{gap:2px!important;height:44px!important}#app .game.field-game .ribbon-player b{max-width:42px!important}}
@media(max-height:690px) and (min-width:901px){
 #app .game.field-game .field-rail{grid-template-columns:155px minmax(0,1fr)!important}
 #app .game.field-game .field-rail>.market,#app .game.field-game .field-rail>.results{grid-area:1 / 2 / 3 / 3!important}
 #app .game.field-game .turn-copy strong{font-size:12px!important}#app .game.field-game .turn-copy small{font-size:9px!important}
}

/* One menu keeps utilities apart from the current game action. */
#app .game.field-game .side-tools{position:relative!important;display:block!important;inset:auto!important;width:44px!important;height:44px!important;z-index:30}
#app .game.field-game .side-tools>summary{list-style:none;display:grid;place-items:center;width:44px;height:44px;cursor:pointer;border-radius:9px;border:1px solid #789581;background:#f3e5c4;color:#21483a;font-size:21px}
.side-tools>summary::-webkit-details-marker{display:none}
#app .game.field-game .side-tools[open]>summary{background:#286b63;color:#f3e5c4}
.fg-tool-menu{position:absolute;right:0;top:50px;width:220px;padding:7px;display:grid;gap:5px;background:#f3e5c4;border:1px solid #789581;border-radius:10px;box-shadow:0 5px 15px #0004}
#app .game.field-game .fg-tool-menu button{width:100%!important;height:44px!important;padding:8px 12px!important;text-align:left!important;font-size:14px!important;background:#f3e5c4!important;color:#21483a!important;border:1px solid #789581!important}
#app>header nav .icon{background:#f3e5c4!important;color:#21483a!important;border-color:#789581!important}
#app>header nav .icon[aria-pressed=true],#app>header nav .icon[aria-expanded=true]{background:#286b63!important;color:#f3e5c4!important}
#app .game.field-game .fg-inspector button{background:#f3e5c4!important;color:#21483a!important;border:1px solid #789581!important}
#app .game.field-game .primary,#app .game.field-game .reveal-deck:not(:disabled){background:#f2c66d!important;color:#183b32!important;border-color:#b0893f!important}
#app .game.field-game .primary:disabled,#app .game.field-game .reveal-deck:disabled{background:#d0d5ca!important;color:#4d5a4d!important;opacity:1!important}
#app .game.field-game[data-phase=draft] .reveal-deck{display:none!important}
body:has(.field-game) .your-turn-notice{display:none!important}
body.attention-needed .field-game .turn-banner{outline:3px solid #f2c66d!important;outline-offset:-3px}
@keyframes fg-action-nudge{
 0%,70%,100%{opacity:0}
 30%{opacity:.7}
}
#app .game.field-game .your-draft .race-card.pickable:not(:disabled),
#app .game.field-game .your-reveal .reveal-deck:not(:disabled){animation:none!important;position:relative!important}
#app .game.field-game .your-draft .race-card.pickable:not(:disabled)::after,
#app .game.field-game .your-reveal .reveal-deck:not(:disabled)::after{content:'';display:block!important;position:absolute;inset:0;border-radius:inherit;pointer-events:none;border:2px solid #f2c66d;box-shadow:inset 0 0 7px #f2c66d70;opacity:0;animation:fg-action-nudge 4.5s ease-in-out infinite!important}
#app .game.field-game .your-reveal .reveal-deck::before{display:none!important}
#app .game.field-game .your-draft .race-card.pickable:is(:hover,:focus-visible),
#app .game.field-game .your-reveal .reveal-deck:is(:hover,:focus-visible){outline:2px solid #f2c66d!important;outline-offset:-2px}
#app .game.field-game .your-draft .race-card.pickable:not(:disabled):is(:hover,:focus-visible)::after,
#app .game.field-game .your-reveal .reveal-deck:not(:disabled):is(:hover,:focus-visible)::after,
body[data-calm=yes] #app .game.field-game .your-draft .race-card.pickable:not(:disabled)::after,
body[data-calm=yes] #app .game.field-game .your-reveal .reveal-deck:not(:disabled)::after{animation:none!important;opacity:0!important}
@media(prefers-reduced-motion:reduce){
 #app .game.field-game .your-draft .race-card.pickable:not(:disabled)::after,
 #app .game.field-game .your-reveal .reveal-deck:not(:disabled)::after{animation:none!important;opacity:0!important}
}
@media(max-width:550px){
 #app .game.field-game{grid-template-rows:88px minmax(0,1fr)!important}
 #app .game.field-game .crew-ribbon{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:40px;height:84px!important;overflow:visible!important;align-content:center}
 #app .game.field-game .ribbon-player{width:100%!important;max-width:none!important;height:40px!important;min-height:40px!important}
 #app .game.field-game .ribbon-player b{max-width:62px!important}
 #app .game.field-game .fg-inspector span,#app .game.field-game .fg-inspector small{font-size:11px!important;line-height:1.25!important}
 #app .game.field-game .fg-inspector button{width:64px!important;min-width:64px!important;min-height:44px!important;font-size:10px!important}
 .fg-tool-menu{width:210px;right:0}
}

/* Solid control surfaces prevent inherited light-on-light labels in overlays. */
#app .game-side-panel button,#app .collection-overlay button,#app .chat-drawer button,
#app .audio-popover button,#app .lobby-card button,#app .join-box button,
#app .victory-screen button:not(.toy-dino),#app .score-cinematic button,dialog#help button{
 background:#f3e5c4!important;color:#21483a!important;border:1px solid #21483a!important;
 opacity:1!important;text-shadow:none!important;font-weight:700;
}
#app .game-side-panel button:hover:not(:disabled),#app .chat-drawer button:hover:not(:disabled),
#app .audio-popover button:hover:not(:disabled),dialog#help button:hover:not(:disabled){background:#e1d0a8!important;color:#173c32!important}
#app .game-side-panel button[aria-pressed=true],#app .audio-popover button[aria-pressed=true]{background:#286b63!important;color:#f3e5c4!important}
#app .game-side-panel .close-side,#app .collection-overlay .close-side,
#app .chat-heading button[data-chat-toggle]{background:#21483a!important;color:#fff3d6!important;border:2px solid #21483a!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;font-size:25px!important;line-height:1!important;padding:0!important;display:grid;place-items:center}
#app .game-side-panel .close-side:hover,#app .chat-heading button[data-chat-toggle]:hover{background:#173c32!important;color:#fff3d6!important}
#app .lobby-card button.primary,#app .join-box button.primary,#app .victory-screen button.primary,
#app .score-cinematic button,dialog#help button.primary{background:#f2c66d!important;color:#183b32!important;border-color:#183b32!important}
#app .game-side-panel button:disabled,#app .lobby-card button:disabled,
#app .victory-screen button:not(.toy-dino):disabled,dialog#help button:disabled{background:#d0d5ca!important;color:#4d5a4d!important;opacity:1!important}
#app .game.field-game .fg-checkpoints .checkpoint,#app .game.field-game .fg-checkpoints .checkpoint-art{color:#173c32!important}
#app .game.field-game .turn-banner>small{color:#fff3d6!important;opacity:1!important;font-size:11px!important}
#app .game.field-game .turn-banner:has(>strong){flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:3px!important}
#app .game-side-panel button:focus-visible,#app .chat-drawer button:focus-visible,
#app .audio-popover button:focus-visible,dialog#help button:focus-visible{outline:3px solid #173c32!important;outline-offset:3px!important}

#app .game.field-game .fg-stage{grid-template-rows:45px minmax(0,1fr) 86px 25px!important;background:#244b39!important}
.fg-map .fg-finish{transform:translateX(-50%);top:12%;bottom:13%}
#app .game.field-game .fg-checkpoints{display:block;margin:0 auto;padding:4px 0;background:#173c32;width:100%;max-width:100%}
.fg-guide-grid{display:grid;width:80%;margin:0 10%;height:100%;align-items:center}
.fg-guide-slot{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}
.fg-step-number{color:#fff3d6;background:#173c32;font-size:12px;line-height:1.2;text-align:center;white-space:nowrap}
.fg-end-marker{display:grid;place-items:center;height:49px;font-size:22px}
#app .game.field-game .fg-guide-slot .checkpoint{width:36px!important;height:49px!important;flex:none!important}
@media(max-width:900px){#app .game.field-game .fg-stage{grid-template-rows:32px minmax(0,1fr) 66px 20px!important}.fg-step-number{font-size:10px}#app .game.field-game .fg-guide-slot .checkpoint{width:25px!important;height:34px!important}.fg-end-marker{height:34px;font-size:16px}}
@media(max-width:550px){#app .game.field-game .field-table{grid-template-rows:minmax(0,1fr) 280px!important}.fg-step-number{font-size:9px}#app .game.field-game .fg-guide-slot .checkpoint{width:21px!important;height:30px!important}}

#app .game.field-game .fg-stage{grid-template-rows:45px minmax(0,1fr) 25px!important}
.fg-track:before{content:'';position:absolute;inset:-15px;background:var(--race-art) center/cover;filter:blur(12px) brightness(.55);pointer-events:none;z-index:-1}
#app .game.field-game .fg-map .fg-checkpoints{position:absolute;left:0;right:0;bottom:1%;z-index:6;width:100%;height:clamp(44px,12cqh,80px);padding:0;background:transparent}
.fg-map .fg-guide-slot{gap:2px}
.fg-map .fg-step-number{padding:2px 4px;border-radius:4px;font-size:clamp(9px,2.3cqh,12px)}
#app .game.field-game .fg-map .fg-guide-slot .checkpoint{width:clamp(18px,5.7cqh,36px)!important;height:clamp(25px,8cqh,49px)!important}
.fg-map .fg-end-marker{height:clamp(25px,8cqh,49px);font-size:18px}
@media(max-width:900px){#app .game.field-game .fg-stage{grid-template-rows:32px minmax(0,1fr) 20px!important}}

.fg-restored-roads{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.fg-restored-roads polyline{fill:none;stroke:#dec18c;stroke-width:5.8;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 0 #365347)}
.fg-scenery{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:2}
.fg-scenery i{position:absolute;left:calc(5% + var(--i)*17%);top:calc(6% + var(--i)*1%);width:5px;height:5px;border-radius:50%;background:#ffe493;box-shadow:0 0 7px #ffe493;animation:fg-scenery-drift 8s ease-in-out infinite;animation-delay:calc(var(--i)*-1.3s);opacity:.5}
[data-race="2"] .fg-scenery i{top:91%;width:34px;height:9px;background:#efd3a3;box-shadow:none;opacity:.25;animation-duration:12s}
[data-race="3"] .fg-scenery{inset:auto 0 0;height:9%;background:repeating-linear-gradient(110deg,#b63e29 0 20px,#f38637 22px 36px,#ffd078 39px 43px,#b63e29 46px 65px);border-radius:45% 50% 0 0;animation:fg-lava-flow 9s ease-in-out infinite;opacity:.8}
[data-race="3"] .fg-scenery i{top:18%;background:#ffdf98}
@keyframes fg-scenery-drift{0%,100%{transform:translate(0,0);opacity:.25}50%{transform:translate(12px,-7px);opacity:.65}}
@keyframes fg-lava-flow{0%,100%{transform:translateY(4px);background-position:0 0}50%{transform:translateY(0);background-position:35px 0}}
body[data-calm="yes"] .fg-scenery,body[data-calm="yes"] .fg-scenery i{animation:none!important}
@media(prefers-reduced-motion:reduce){.fg-scenery,.fg-scenery i{animation:none!important}}
/* Restore the original stage renderer, roads, and advancing lava. */
#app .game.field-game .cinematic-stage{grid-area:auto!important;display:flex!important;flex-direction:column!important;height:100%!important;min-height:0!important;padding:8px!important;border-radius:18px!important;overflow:hidden!important;background:#395c3d url('/assets/stadium-cinematic.webp') center/cover!important}
body[data-scene='2'] #app .game.field-game .cinematic-stage{background-image:url('/assets/safari.webp')!important}
body[data-scene='3'] #app .game.field-game .cinematic-stage{background-image:url('/assets/crochet-volcano.webp')!important}
#app .game.field-game .cinematic-stage .track{flex:1!important;min-height:0!important}
body[data-calm='yes'] .lava-chase,body[data-calm='yes'] .lava-chase i{animation:none!important}
/* The turn prompt and reveal action share one stable location. */
#app .game.field-game .turn-hud{flex-wrap:wrap!important;gap:8px!important}
#app .game.field-game .turn-hud .turn-copy{flex:1 1 130px!important;min-width:0!important}
#app .game.field-game .turn-hud .up-next{display:none!important}
#app .game.field-game .turn-hud .turn-reveal{display:flex!important;flex-direction:column!important;flex:0 0 auto!important;width:auto!important;min-width:112px!important;height:54px!important;max-height:none!important;padding:8px 12px!important;position:relative!important;border-radius:12px!important}
#app .game.field-game .turn-reveal strong{font-size:14px!important;white-space:normal!important}
#app .game.field-game .turn-reveal small{font-size:11px!important}
#app .game.field-game .turn-reveal:not(:disabled){animation:dino-turn-color 3.2s ease-in-out infinite!important}
body[data-scene='1']{--turn-cue-a:#f2c66d;--turn-cue-b:#9ed694}
body[data-scene='2']{--turn-cue-a:#f2c66d;--turn-cue-b:#f4a960}
body[data-scene='3']{--turn-cue-a:#ffd079;--turn-cue-b:#ff9b65}
@keyframes dino-turn-color{0%,100%{background:var(--turn-cue-a);box-shadow:0 0 0 0 transparent}50%{background:var(--turn-cue-b);box-shadow:0 0 0 4px #fff0bb80}}
body[data-calm='yes'] #app .game.field-game .turn-reveal{animation:none!important}
@media(prefers-reduced-motion:reduce){#app .game.field-game .turn-reveal{animation:none!important}}
@media(max-width:600px){#app .game.field-game .turn-hud .turn-avatar{display:none!important}#app .game.field-game .turn-hud .turn-copy{flex-basis:100px!important}#app .game.field-game .turn-hud .turn-reveal{min-width:98px!important;height:46px!important;padding:5px 8px!important}}
#app .game.field-game .turn-reveal:not(:disabled)::before{content:''!important;display:block!important;position:absolute!important;inset:0!important;border-radius:inherit!important;background:var(--turn-cue-b)!important;pointer-events:none!important;animation:dino-turn-tint 3.2s ease-in-out infinite!important}
#app .game.field-game .turn-reveal>strong,#app .game.field-game .turn-reveal>small{position:relative;z-index:1;color:#183b32!important}
@keyframes dino-turn-tint{0%,100%{opacity:0}50%{opacity:1}}
body[data-calm='yes'] #app .game.field-game .turn-reveal::before{animation:none!important;opacity:0!important}
@media(prefers-reduced-motion:reduce){#app .game.field-game .turn-reveal::before{animation:none!important;opacity:0!important}}
/* One actionable turn prompt, rather than a prompt plus a separate button. */
#app .game.field-game button.merged-reveal{width:100%!important;display:flex!important;text-align:left!important;position:relative!important;overflow:hidden!important;background:#f2c66d!important;color:#183b32!important;border:2px solid #b0893f!important;cursor:pointer;min-height:88px!important}
#app .game.field-game button.merged-reveal .turn-copy{position:relative;z-index:1}
#app .game.field-game button.merged-reveal .turn-copy>*{color:#183b32!important;text-shadow:none!important}
#app .game.field-game button.merged-reveal .turn-avatar{position:relative;z-index:1}
#app .game.field-game button.merged-reveal:not(:disabled)::before{content:'';position:absolute;inset:0;background:var(--turn-cue-b);pointer-events:none;animation:dino-turn-tint 3.2s ease-in-out infinite}
#app .game.field-game button.merged-reveal:disabled{background:#d0d5ca!important;color:#4d5a4d!important;opacity:1!important;cursor:default}
#app .game.field-game button.merged-reveal:focus-visible{outline:3px solid #fff3d6!important;outline-offset:3px}
body[data-calm='yes'] #app .game.field-game button.merged-reveal::before{animation:none!important;opacity:0!important}
@media(prefers-reduced-motion:reduce){#app .game.field-game button.merged-reveal::before{animation:none!important;opacity:0!important}}
@media(max-width:600px){#app .game.field-game button.merged-reveal{min-height:65px!important}}
/* Reserve real space for the merged prompt and preserve portrait proportions. */
#app .game.field-game .field-rail{grid-template-rows:88px 88px minmax(0,1fr)!important}
#app .game.field-game .turn-banner,#app .game.field-game button.merged-reveal{height:88px!important;min-height:0!important;max-height:88px!important;box-sizing:border-box!important;flex-wrap:nowrap!important;overflow:hidden!important}
#app .game.field-game .turn-copy{width:100%!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;min-width:0!important}
#app .game.field-game .turn-copy strong,#app .game.field-game .turn-copy small,#app .game.field-game .turn-label{position:static!important;inset:auto!important;margin:0!important;white-space:normal!important;line-height:1.25!important;overflow-wrap:anywhere!important}
#app .game.field-game .crew-ribbon{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;height:52px!important;gap:6px!important;overflow:visible!important}
#app .game.field-game .ribbon-player{height:52px!important;min-height:52px!important;max-height:52px!important;display:flex!important;gap:7px!important;padding:4px 7px!important;overflow:hidden!important}
#app .game.field-game .ribbon-avatar{display:block!important;width:25px!important;min-width:25px!important;flex:0 0 25px!important;height:44px!important;aspect-ratio:1/2!important;transform:none!important;scale:none!important}
#app .game.field-game .ribbon-player>div{min-width:0!important;flex:1!important}
#app .game.field-game .ribbon-player b{max-width:100%!important;font-size:12px!important;line-height:1.2!important;white-space:normal!important;overflow-wrap:anywhere!important}
#app .game.field-game .ribbon-player strong{font-size:11px!important;line-height:1.2!important}
#app .game.field-game{grid-template-rows:56px minmax(0,1fr)!important}
@media(max-width:700px){#app .game.field-game{grid-template-rows:110px minmax(0,1fr)!important}#app .game.field-game .crew-ribbon{height:108px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(2,52px)!important}#app .game.field-game .field-rail{grid-template-rows:72px 76px minmax(0,1fr)!important}#app .game.field-game .turn-banner,#app .game.field-game button.merged-reveal{height:72px!important;max-height:72px!important}}
