/* Shared spatial contract: a real viewport, one HUD, and one generous surface.
   Episode art and game mechanics stay in the episode adapters. */
body.rrdd-adventure{
 --adv-shell-gutter:12px;--adv-shell-gap:6px;--adv-shell-bottom:8px;
 --adv-hud-height:74px;--adv-hud-centre:115px;--adv-pane-gap:12px;
 --adv-pane-radius:24px;--adv-media-board:var(--adv-rail,#dff2f4);
 font-family:'Trebuchet MS',Arial,sans-serif;
}
body.rrdd-adventure[data-adventure-theme=spooky]{--adv-media-board:#cdb6e7}
body.rrdd-adventure[data-adventure-theme=sky]{--adv-media-board:#c9eaf0}
body.rrdd-adventure.rrdd-game-shell[data-adventure-theme] :is(main#app,main){
 display:grid!important;grid-template-columns:minmax(0,1fr)!important;
 grid-template-rows:var(--adv-hud-height) minmax(0,1fr)!important;
 width:100%!important;max-width:none!important;height:calc(100dvh - 52px)!important;
 min-height:0!important;margin:0!important;padding:0 var(--adv-shell-gutter) var(--adv-shell-bottom)!important;
 gap:var(--adv-shell-gap)!important;overflow:hidden!important;box-sizing:border-box;flex:none!important;
}
body.rrdd-adventure.rrdd-game-shell[data-adventure-theme] :is(main#app,main)>.journey-score{
 grid-row:1;height:var(--adv-hud-height)!important;min-height:var(--adv-hud-height)!important;
 grid-template-rows:var(--adv-hud-height)!important;
 grid-template-columns:repeat(5,minmax(0,1fr)) var(--adv-hud-centre) repeat(5,minmax(0,1fr))!important;
}
body.rrdd-adventure.rrdd-game-shell[data-adventure-theme] :is(main#app,main)>:is(.view,.thread-view):not([hidden]){
 grid-row:2;align-self:stretch;width:100%!important;max-width:none!important;height:100%!important;
 min-height:0!important;max-height:none!important;margin:0!important;box-sizing:border-box;
}
body.rrdd-adventure.rrdd-game-shell[data-adventure-theme] :is(main#app,main)>.audio-status{position:fixed;bottom:4px;left:12px;right:12px;margin:0;z-index:90}
body.rrdd-adventure .rrdd-game-footer,body.rrdd-adventure>footer{display:none!important}
body.rrdd-adventure :is(#audioRecovery.adv-recovery,#audioRecovery.audio-recovery){top:calc(52px + var(--adv-hud-height) + 8px)!important}
body.rrdd-adventure :is(.memory-heading,.album-heading,#memory>.mini-header) h2{font:clamp(22px,2.4vw,32px)/1.12 Froople,'Trebuchet MS',sans-serif!important;margin:0!important}

/* One exact portrait player inside a slot; spare space never becomes black video. */
body.rrdd-adventure.rrdd-game-shell :is(#watch,#watchScreen):not([hidden]){display:block!important;max-width:none!important;padding:0!important}
body.rrdd-adventure.rrdd-game-shell :is(#watch,#watchScreen) .adv-watch-layout{
 display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
 grid-template-rows:minmax(0,1fr)!important;align-items:stretch!important;
 width:100%!important;max-width:none!important;height:100%!important;min-height:0!important;
 margin:0!important;padding:0 clamp(0px,1.2vw,16px)!important;gap:clamp(12px,2.5vw,32px)!important;
 background:none!important;box-shadow:none!important;border:0!important;border-radius:0!important;
}
body.rrdd-adventure.rrdd-game-shell .adv-film-slot{display:grid!important;place-items:center;width:100%;height:100%;min-width:0;min-height:0;container-type:size}
body.rrdd-adventure.rrdd-game-shell .adv-film-slot>:is(.film,.film-frame){
 position:relative;display:block!important;flex:none;width:min(100cqw,calc(100cqh * .5625))!important;
 height:auto!important;aspect-ratio:9/16!important;min-width:0!important;min-height:0!important;
 max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;
 border:0!important;border-radius:var(--adv-pane-radius)!important;overflow:hidden;box-shadow:none!important;
}
body.rrdd-adventure.rrdd-game-shell .adv-film-slot :is(#player,#storyFilm,iframe){position:absolute;inset:0;display:block;width:100%!important;height:100%!important;border:0}
body.rrdd-adventure.rrdd-game-shell .adv-watch-copy{
 display:flex!important;flex-direction:column;justify-content:center;align-items:flex-start;
 min-width:0;max-width:none!important;margin:0!important;padding:clamp(12px,2vw,28px)!important;
 gap:14px!important;text-align:left!important;background:none!important;border:0!important;box-shadow:none!important;
}
body.rrdd-adventure.rrdd-game-shell .adv-watch-copy :is(h1,h2){font:clamp(30px,3.5vw,50px)/1.12 Froople,'Trebuchet MS',sans-serif!important;margin:0!important}
body.rrdd-adventure.rrdd-game-shell .adv-watch-copy :is(p,small){margin:0!important;font-size:16px;line-height:1.4}
body.rrdd-adventure.rrdd-game-shell .adv-watch-copy :is(.small,.quiet-note,small){font-size:13px}
body.rrdd-adventure.rrdd-game-shell .adv-watch-copy .watch-reward{margin:0!important;gap:8px}
body.rrdd-adventure.rrdd-game-shell .adv-watch-copy button{min-height:48px;font:800 16px/1.2 'Trebuchet MS',sans-serif!important;padding:10px 18px!important;border-radius:16px!important}

/* Shared reading proportions. Full photographs retain the complete characters. */
body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen,.scene-layout).adv-reading-layout:not([hidden]):not(.game-open .adv-reading-layout){
 display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
 grid-template-rows:minmax(0,1fr)!important;gap:var(--adv-pane-gap)!important;
 width:100%!important;max-width:none!important;height:100%!important;min-height:0!important;
 padding:0!important;align-content:stretch!important;
}
body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen,.scene-layout).adv-reading-layout:not([hidden]):not(.game-open .adv-reading-layout)>figure{
 position:relative;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;
 margin:0!important;padding:0;border:0!important;border-radius:var(--adv-pane-radius)!important;
 background:var(--adv-media-board)!important;overflow:hidden;
}
body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen,.scene-layout).adv-reading-layout:not([hidden]):not(.game-open .adv-reading-layout)>figure picture{display:block;width:100%;height:100%;min-height:0}
body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen,.scene-layout).adv-reading-layout:not([hidden]):not(.game-open .adv-reading-layout)>figure img{
 display:block;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;
 object-fit:contain!important;object-position:center!important;
}
body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen,.scene-layout).adv-reading-layout:not([hidden]):not(.game-open .adv-reading-layout)>figure figcaption{display:none!important}
body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen,.scene-layout).adv-reading-layout:not([hidden]):not(.game-open .adv-reading-layout) .adv-reading-copy{
 display:flex!important;flex-direction:column;align-items:flex-start;justify-content:flex-start;
 width:100%;height:100%;min-width:0;min-height:0!important;max-height:none!important;
 padding:clamp(14px,2vw,28px)!important;gap:10px!important;border-radius:var(--adv-pane-radius)!important;
 background:#fffaf2;box-shadow:none!important;overflow:hidden!important;text-align:left;
}
body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(#sentence,#readingSentence,#pictureText){font:900 clamp(24px,2.6vw,38px)/1.22 'Trebuchet MS',Arial,sans-serif!important;margin:0!important}
body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(.word-card,.reading-word-card){width:100%;box-sizing:border-box;margin:0!important;padding:12px!important;border-radius:18px!important}
body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(#word,#readingWord){font:900 clamp(24px,2.5vw,32px)/1.2 'Trebuchet MS',sans-serif!important;min-height:44px;min-width:0;max-width:100%;padding:0!important;text-align:left}
body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(#meaning,#readingMeaning){font-size:15px!important;line-height:1.35!important;margin:0!important}
body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy>:is(button,.card-nav button){min-height:44px;font-family:'Trebuchet MS',sans-serif}

/* Original tactile games use the same full playfield + compact action strip as
   the other adventures. Their reading material stays on the preceding page. */
body.thread-adventure.rrdd-game-shell #playScreen:not([hidden]){display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;gap:6px}
body.thread-adventure.rrdd-game-shell #playScreen .play-top{display:flex;justify-content:space-between;align-items:center;min-height:44px;padding:0!important;gap:8px}
body.thread-adventure.rrdd-game-shell #playScreen .play-top h2{font:clamp(22px,2.4vw,34px)/1.12 Froople,'Trebuchet MS',sans-serif!important;margin:0}
body.thread-adventure.rrdd-game-shell #playScreen .play-top>div{flex:1;text-align:center}
body.thread-adventure.rrdd-game-shell #playScreen .game-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr) auto!important;gap:6px;min-height:0}
body.thread-adventure.rrdd-game-shell #playScreen .scene-frame{max-width:none!important;min-width:0;width:100%!important;height:100%!important;aspect-ratio:auto!important;border-radius:var(--adv-pane-radius)!important}
body.thread-adventure.rrdd-game-shell #playScreen .mission-card{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto;min-height:0!important;padding:6px 12px!important;gap:4px 12px!important;align-items:center;border-radius:18px}
body.thread-adventure.rrdd-game-shell #playScreen .mission-card>:is(#missionStep,#missionTitle,#missionDescription,#listenButton,#sentenceArea){display:none!important}
body.thread-adventure.rrdd-game-shell #playScreen #missionAction{grid-column:1;grid-row:1;min-width:0;margin:0!important;min-height:0!important}
body.thread-adventure.rrdd-game-shell #playScreen #feedback{grid-column:1;grid-row:2;font-size:14px;line-height:1.3}
body.thread-adventure.rrdd-game-shell #playScreen :is(#missionAction,#feedback):empty{display:none!important}
body.thread-adventure.rrdd-game-shell #playScreen .mission-footer{grid-column:2;grid-row:1/3;display:flex;flex-direction:row;gap:8px;margin:0!important;align-self:center}
body.thread-adventure.rrdd-game-shell #playScreen .mission-footer button{width:auto!important;min-height:44px;padding:8px 14px!important;font-size:14px}
body.thread-adventure.rrdd-game-shell #playScreen .board-direction-words{display:none!important}
/* Keep the completed game visible for its star/voice, without a second card. */
body.thread-adventure.rrdd-game-shell #playScreen[data-complete="true"] .game-grid{grid-template-rows:minmax(0,1fr)!important;gap:0!important}
body.thread-adventure.rrdd-game-shell #playScreen[data-complete="true"] .mission-card{display:none!important}
body.thread-adventure.rrdd-game-shell #playScreen .board-world{left:50%!important;right:auto!important;width:min(100%,calc(100cqh * 1.2))!important;translate:-50% 0}

/* Keep navigation in the play heading, leaving the scene for the game. */
body.halloween-game.rrdd-game-shell #play{padding:0!important}
body.halloween-game.rrdd-game-shell #play .mini-header{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px!important;grid-template-rows:auto auto;gap:2px 8px;min-height:44px}
body.halloween-game.rrdd-game-shell #play #miniProgress{grid-column:1;grid-row:1;margin:0;font-size:10px;line-height:1.2;text-align:center}
body.halloween-game.rrdd-game-shell #play #miniProgress:empty{display:none}
body.halloween-game.rrdd-game-shell #play #miniTitle{grid-column:1;grid-row:2;margin:0;font:clamp(22px,2.4vw,34px)/1.12 Froople,'Trebuchet MS',sans-serif;text-align:center}
body.halloween-game.rrdd-game-shell #play #backStory,body.halloween-game.rrdd-game-shell #play #hearMini{grid-row:1/3;align-self:center;width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;margin:0!important;font-size:0!important}
body.halloween-game.rrdd-game-shell #play #backStory{grid-column:2}
body.halloween-game.rrdd-game-shell #play #hearMini{grid-column:3}
body.halloween-game.rrdd-game-shell #play #backStory::after{content:'←';font-size:22px}
body.halloween-game.rrdd-game-shell #play #hearMini::after{content:'🔊';font-size:22px}
body.halloween-game.rrdd-game-shell #play .play-actions{min-height:0!important;margin:0;padding:0}
body.halloween-game.rrdd-game-shell #play .play-actions:has(#dragNote[hidden]),body.halloween-game.rrdd-game-shell #play .play-actions:has(#dragNote:empty){display:none!important}
body.halloween-game.rrdd-game-shell #play #dragNote{font-size:12px;line-height:1.2;margin:0}

/* Physical targets never shrink with decorative pulsing or a narrow palette. */
body.chimelong-game #recall.frame-memory #hearRecall{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;transform:none!important;scale:1!important;animation:adv-speaker-glow 2.4s ease-in-out infinite!important}
@keyframes adv-speaker-glow{50%{box-shadow:0 0 0 4px #fff0a86b}}
body.halloween-game .tidy-field .tidy-dock{min-height:44px!important}
body.halloween-game .claw-slider{top:0!important;height:44px!important;min-height:44px!important}
body.halloween-game #memory .photo-tray .photo{min-height:44px!important}
body.halloween-game .wrapper-sound{min-width:44px!important;min-height:44px!important;flex:none}
@media(max-width:360px) and (orientation:portrait){
 body.chimelong-game #read.orca-colour .orca-paint-tray{display:grid!important;grid-template-columns:repeat(3,minmax(44px,1fr));grid-template-rows:repeat(2,minmax(44px,auto));gap:4px!important;width:100%;padding:4px!important;box-sizing:border-box}
 body.chimelong-game #read.orca-colour .orca-paint-pot{min-width:44px!important;min-height:44px!important;padding:2px!important}
}
@media(max-width:700px) and (orientation:portrait){
 body.halloween-game #board[data-kind=ghost]{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(90px,1fr) 54px 146px!important;gap:4px!important;padding:4px!important}
 body.halloween-game #board[data-kind=ghost] .costume-stage{grid-column:1;grid-row:1;min-height:0}
 body.halloween-game #board[data-kind=ghost] .costume-actions{grid-column:1;grid-row:2}
 body.halloween-game #board[data-kind=ghost] .costume-wardrobe{grid-column:1;grid-row:3;display:grid;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:repeat(3,minmax(44px,1fr));gap:4px!important;padding:0!important;min-height:0}
 body.halloween-game #board[data-kind=ghost] .costume-carousel{min-height:44px!important;height:100%;flex:none}
 body.halloween-game #board[data-kind=ghost] .costume-current{min-height:44px!important;height:100%;box-sizing:border-box}
 body.halloween-game #board[data-kind=ghost] .camera-finish{min-height:44px!important;padding:2px 8px!important}
 body.halloween-game #board[data-kind=ghost] .story-camera{width:70px;height:44px}
 body.halloween-game #board[data-kind=ghost] .camera-prompt{font-size:14px}
}

@media(max-width:700px) and (orientation:portrait){
 body.rrdd-adventure{--adv-shell-gutter:8px;--adv-shell-gap:4px;--adv-shell-bottom:6px;--adv-hud-height:52px;--adv-hud-centre:72px;--adv-pane-gap:6px;--adv-pane-radius:20px}
}
@media(orientation:portrait) and (max-width:900px){
 body.rrdd-adventure.rrdd-game-shell :is(#watch,#watchScreen) .adv-watch-layout{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr) auto!important;padding:0!important;gap:6px!important}
 body.rrdd-adventure.rrdd-game-shell .adv-watch-copy{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:center;justify-items:center;align-items:center;padding:0!important;gap:6px!important;text-align:center!important}
 body.rrdd-adventure.rrdd-game-shell .adv-watch-copy>:is(h1,h2,.eyebrow,.quiet-note,.small,small),body.rrdd-adventure.rrdd-game-shell .adv-watch-copy>p:not(#watchStatus){display:none!important}
 body.rrdd-adventure.rrdd-game-shell .adv-watch-copy .watch-reward{display:contents!important}
 body.rrdd-adventure.rrdd-game-shell .adv-watch-copy .watch-reward-star{display:none!important}
 body.rrdd-adventure.rrdd-game-shell .adv-watch-copy #watchStatus{display:none!important;grid-column:1/-1;width:100%;font-size:14px;line-height:1.25}
 body.rrdd-adventure.rrdd-game-shell .adv-watch-copy button{min-height:44px;width:100%;font-size:14px!important;padding:7px 8px!important;margin:0!important}
 body.rrdd-adventure:not(.thread-adventure) .adv-watch-copy #beginRead{grid-column:1/-1;width:min(100%,260px)}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen,.scene-layout).adv-reading-layout:not([hidden]):not(.game-open .adv-reading-layout){grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr) auto!important;gap:6px!important}
 body.thread-adventure.rrdd-game-shell #playScreen .play-top h2{font-size:22px!important}
 body.thread-adventure.rrdd-game-shell #playScreen .mission-card{padding:5px 8px!important;gap:3px 8px!important}
 body.thread-adventure.rrdd-game-shell #playScreen #feedback{font-size:12px}
}
@media(orientation:portrait) and (max-width:900px), (orientation:landscape) and (max-height:500px){
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen,.scene-layout).adv-reading-layout:not([hidden]):not(.game-open .adv-reading-layout) .adv-reading-copy{display:grid!important;grid-template-columns:minmax(0,1fr) 44px!important;grid-template-rows:auto auto auto auto!important;height:auto!important;padding:10px!important;gap:6px!important}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(#sentence,#readingSentence,#pictureText){grid-column:1;grid-row:1;font-size:clamp(21px,3.2vw,28px)!important;align-self:center}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(#listen,#readAgain,#pictureAgain){grid-column:2;grid-row:1;width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;margin:0!important;font-size:0!important;align-self:center}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(#listen,#readAgain,#pictureAgain)::after{content:'🔊';font-size:22px}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(.word-card,.reading-word-card){grid-column:1/-1;grid-row:2;display:grid!important;grid-template-columns:minmax(100px,.8fr) minmax(0,1.2fr);align-items:center;gap:4px 8px!important;padding:6px 8px!important}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(.word-card,.reading-word-card) .eyebrow{display:none!important}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(#word,#readingWord){font-size:23px!important}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(#meaning,#readingMeaning){font-size:13px!important;line-height:1.25!important}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(#openMini,#openDiscovery,#pictureNext){grid-row:3;grid-column:1/-1;min-height:44px;margin:0!important;padding:7px 10px!important;font-size:14px}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(.eyebrow,#discoveryGoal){display:none!important}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(#readingStatus,.feedback){grid-column:1/-1;grid-row:4;font-size:12px;line-height:1.25;margin:0!important}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy .card-nav{grid-column:2;grid-row:3;margin:0!important;min-height:44px}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy:has(.card-nav) #openMini{grid-column:1}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy #backRead{width:44px!important;min-height:44px!important;padding:0!important;font-size:0!important}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy #backRead::after{content:'←';font-size:20px}
 body.rrdd-adventure.rrdd-game-shell #pictureBack{grid-column:1/-1;grid-row:4}
}
@media(orientation:landscape) and (max-height:500px){
 body.rrdd-adventure{--adv-shell-gutter:8px;--adv-shell-gap:4px;--adv-shell-bottom:6px;--adv-hud-height:48px;--adv-hud-centre:72px;--adv-pane-gap:8px;--adv-pane-radius:18px}
 body.rrdd-adventure.rrdd-game-shell .adv-watch-copy{gap:7px!important;padding:6px 12px!important}
 body.rrdd-adventure.rrdd-game-shell .adv-watch-copy :is(h1,h2){font-size:26px!important}
 body.rrdd-adventure.rrdd-game-shell .adv-watch-copy :is(.eyebrow,.small,.quiet-note,small),body.rrdd-adventure.rrdd-game-shell .adv-watch-copy>p:not(#watchStatus){display:none!important}
 body.rrdd-adventure.rrdd-game-shell .adv-watch-copy #watchStatus{font-size:12px}
 body.rrdd-adventure.rrdd-game-shell .adv-watch-copy button{min-height:44px;font-size:13px!important;padding:6px 10px!important}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen,.scene-layout).adv-reading-layout:not([hidden]):not(.game-open .adv-reading-layout) .adv-reading-copy{padding:8px!important;gap:5px!important}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(#sentence,#readingSentence,#pictureText){font-size:21px!important}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(.word-card,.reading-word-card){padding:5px 8px!important}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(#meaning,#readingMeaning){font-size:12px!important}
 body.rrdd-adventure.rrdd-game-shell :is(#read:not(.game-open),#readingScreen,#pictureScreen,#endingScreen) .adv-reading-copy :is(#word,#readingWord){font-size:23px!important}
 body.thread-adventure.rrdd-game-shell #playScreen .play-top h2{font-size:21px!important}
 body.thread-adventure.rrdd-game-shell #playScreen .mission-card{padding:3px 8px!important}
 body.thread-adventure.rrdd-game-shell #playScreen #feedback{font-size:11px}
 body.thread-adventure.rrdd-game-shell #playScreen .board-world{width:min(100%,calc(100cqh * 2.5))!important}
 body.thread-adventure.rrdd-game-shell #playScreen .board-rig{top:46%;height:22%}
 body.thread-adventure.rrdd-game-shell #playScreen .board-character{top:26%}
 body.thread-adventure.rrdd-game-shell #playScreen :is(.board-ray,.board-dodu){height:42%}
 body.halloween-game #play .mini-header{gap:0 6px}
 body.halloween-game #play #miniTitle{font-size:21px}
 body.halloween-game #board[data-kind=truck] .paint-pots .prop{min-height:44px!important;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;padding:4px 6px!important}
 body.halloween-game #board[data-kind=truck] .paint-pots{gap:4px!important}
 body.halloween-game #board[data-kind=truck] .paint-pots i{width:24px;height:24px;margin:0}
 body.halloween-game #board[data-kind=ghost]{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)!important;grid-template-rows:minmax(0,1fr) 50px!important;gap:4px!important;padding:4px!important}
 body.halloween-game #board[data-kind=ghost] .costume-stage{grid-column:1;grid-row:1;min-height:0}
 body.halloween-game #board[data-kind=ghost] .costume-actions{grid-column:1;grid-row:2}
 body.halloween-game #board[data-kind=ghost] .costume-wardrobe{grid-column:2;grid-row:1/3;display:grid;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:repeat(3,minmax(44px,1fr));gap:3px!important;padding:1px!important;min-height:0}
 body.halloween-game #board[data-kind=ghost] .costume-wardrobe h3{display:none}
 body.halloween-game #board[data-kind=ghost] .costume-carousel{min-height:44px!important;height:100%;flex:none}
 body.halloween-game #board[data-kind=ghost] .costume-current{min-height:44px!important;height:100%;box-sizing:border-box;grid-template-columns:55px minmax(0,1fr) auto;grid-template-rows:1fr;padding:2px 5px}
 body.halloween-game #board[data-kind=ghost] .costume-current-art{grid-column:1;grid-row:1;height:40px}
 body.halloween-game #board[data-kind=ghost] .costume-current strong{grid-column:2;grid-row:1;font-size:12px}
 body.halloween-game #board[data-kind=ghost] .costume-choice-count{grid-column:3;grid-row:1;font-size:10px}
 body.halloween-game #board[data-kind=ghost] .costume-slot-name{display:none}
 body.halloween-game #board[data-kind=ghost] .camera-finish{min-height:44px!important;padding:2px 6px!important}
 body.halloween-game #board[data-kind=ghost] .story-camera{width:64px;height:40px}
 body.halloween-game #board[data-kind=ghost] .camera-prompt{font-size:12px}
 body.halloween-game #board .wrapper-factory{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)!important;grid-template-rows:44px minmax(0,1fr) 44px!important;gap:4px!important;padding:6px!important}
 body.halloween-game #board .wrapper-order{grid-column:1;grid-row:1;min-height:0;padding:3px 5px;gap:4px;font-size:14px}
 body.halloween-game #board .wrapper-order strong{font-size:14px}
 body.halloween-game #board .wrapper-workbench{grid-column:1;grid-row:2/4;min-width:0;min-height:0;height:100%}
 body.halloween-game #board .wrapper-tabs{grid-column:2;grid-row:1;min-width:0;height:44px;gap:3px}
 body.halloween-game #board .wrapper-tab{min-width:0!important;min-height:44px!important;padding:2px!important;font-size:11px}
 body.halloween-game #board .wrapper-palette{grid-column:2;grid-row:2;min-width:0;min-height:0;margin:0!important;gap:4px!important;align-self:center}
 body.halloween-game #board .wrapper-choice{min-height:44px!important;min-width:44px!important;padding:3px!important}
 body.halloween-game #board .wrapper-actions{grid-column:2;grid-row:3;min-width:0;min-height:44px;margin:0;gap:4px}
 body.halloween-game #board .wrapper-step-guide{font-size:10px;padding:2px 4px}
 body.halloween-game #board .wrapper-hint{display:none}
 body.halloween-game #board .wrapper-gallery{position:absolute;bottom:4px;left:6px;max-width:55%;margin:0;gap:4px}
 body.halloween-game #board .wrapper-gallery:empty{display:none}
}

body.rrdd-adventure.rrdd-game-shell #read:not(.game-open) #backRead{min-height:44px!important;min-width:44px!important}
body.chimelong-game.reduce-motion #recall.frame-memory #hearRecall{animation:none!important}
@media(prefers-reduced-motion:reduce){body.chimelong-game #recall.frame-memory #hearRecall{animation:none!important}}

body.halloween-game.rrdd-game-shell #play #hearMini::before{content:none!important}

/* A single story action remains after removing the picture-story shortcut. */
@media(orientation:portrait) and (max-width:900px){body.thread-adventure.rrdd-game-shell .adv-watch-copy #followButton{grid-column:1/-1;width:min(100%,260px)}}
