/* Shared child surface. Text can grow and scroll; essential controls never clip. */
.game-first #gameShell {
  width: min(1120px, 100%); min-height: 0; margin: auto;
  padding: max(12px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));
  display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr);
  grid-template-rows: auto 1fr auto auto auto;
  grid-template-areas: "header header" "scene phrases" "scene action" "agency agency" "sensory sensory" "adult adult";
  gap: 12px 20px;
}
.game-first #gameShell .top-bar { grid-area: header; min-height: 48px; display: flex; flex-wrap: nowrap; gap: 12px; align-items: center; }
.game-first #gameShell h1 { font-size: clamp(1.1rem, 3vw, 1.8rem); letter-spacing: -.03em; line-height: 1.15; }
.game-first #gameShell .eyebrow { font-size: .65rem; margin: 0 0 2px; }
.game-first #gameShell .top-controls { display: flex; width: auto; margin-left: auto; flex-wrap: nowrap; gap: 6px; }
.game-first #gameShell .control-button, .game-first #gamesDialog .control-button { min-width: 44px; min-height: 44px; padding: 8px 10px; border-radius: 13px; font-size: .78rem; }
.game-first #gameShell #gamesButton { display: flex; flex-direction: column; align-items: center; gap: 3px; min-width: 102px; min-height: 76px; background: #dcece3; color: #235f59; }
.game-first .games-collage { display: flex; align-items: center; justify-content: center; gap: 2px; height: 38px; }
.game-first .games-collage img { width: 24px; height: 36px; object-fit: contain; }
.game-first #gamesButton .games-collage svg { width: 28px; height: 32px; fill: #ffd76c; stroke: #956f20; stroke-width: 2px; }
.game-first .games-collage img.moon-choice { width: 32px; height: 32px; object-fit: cover; border-radius: 50%; }
.game-first #gameShell #previousGameButton { display: flex; align-items: center; gap: 5px; min-height: 76px; background: #eee8dc; }
.game-first #previousGameButton small { display: block; max-width: 80px; margin-top: 3px; font-size: .65rem; }
.game-first .navigation-picture { display: grid; place-items: center; width: 30px; height: 36px; }
.game-first .navigation-picture img,.game-first .navigation-picture svg { max-width: 30px; max-height: 36px; }
.game-first .previous-arrow { font: 700 20px system-ui,sans-serif; }
@media(max-width:580px) {
  .game-first #gameShell .top-bar { flex-wrap: wrap; }
  .game-first #gameShell .top-controls { gap: 8px; }
  .game-first #gameShell.has-previous-game .top-controls { width: 100%; margin-left: 0; }
  .game-first #gameShell.has-previous-game .top-controls > button { flex: 1; }
}
.game-first #gameShell .grown-ups-button { background: transparent; color: #546675; font-size: .7rem; }
.game-first #gameShell .stage { grid-area: scene; height: 420px; min-height: 0; }
.game-first #gameShell .scene-art { height: 100%; min-height: 0; border-radius: 24px; }
.game-first #gameShell .phrase-panel { display: contents; }
.game-first #gameShell .prompt { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.game-first #phraseGrid { grid-area: phrases; height: auto; display: grid; grid-template-columns: 1fr; grid-template-rows: repeat(3, 1fr); gap: 10px; }
.game-first #phraseGrid .phrase-button { min-height: 88px; height: auto; padding: 8px 12px; display: grid; grid-template-columns: 70px 1fr; gap: 8px; font-size: 1.05rem; }
.game-first #phraseGrid .phrase-icon { min-height: 0; height: 70px; width: 70px; }
.game-first #phraseGrid .phrase-label { min-height: 0; line-height: 1.2; }
.game-first #gameShell .phrase-repeat-cue, .game-first #gameShell .pad-lights { display: none; }
.game-first #actionRow { grid-area: action; height: auto; min-height: 48px; margin: 0; gap: 8px; }
.game-first #actionRow button { min-width: 44px; min-height: 48px; padding: 8px 12px; font-size: 1rem; border-radius: 14px; }
.game-first #regulationRow { grid-area: agency; display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; padding: 0; gap: 8px; border: 0; }
.game-first #regulationRow .regulation-button { display: flex; flex-direction: row; justify-content: center; min-width: 44px; min-height: 54px; padding: 5px; gap: 7px; font-size: .88rem; border: 1px solid #e3dfd3; border-radius: 14px; background: #f6f0e5; box-shadow: none; }
.game-first #regulationRow .phrase-icon { width: 30px; height: 30px; min-width: 30px; min-height: 0; }
.game-first #regulationRow .phrase-picture { width: 26px; height: 26px; }
.game-first #gameShell .sensory-controls { grid-area: sensory; display: flex; justify-content: center; gap: 8px; }
.game-first #gameShell .adult-details { grid-area: adult; margin-top: 8px; font-size: .85rem; color: #546675; }
.game-first #gameShell .adult-details > summary { min-height: 44px; padding: 12px; cursor: pointer; text-align: center; }
.game-first #gameShell .adult-details[open] { padding: 12px; border-radius: 18px; background: #f0eadf; }
.game-first #gameShell .adult-details .progress-strip { display: flex; flex-wrap: wrap; margin: 12px 0; }
.game-first #gameShell .adult-details .remix-strip { display: block; margin: 12px 0; }
.game-first #gameShell .adult-details .sensory-help { max-width: none; }
.game-first #gameShell .adult-details a { display: inline-flex; align-items: center; min-height: 44px; padding: 6px; }
.game-first #gamesDialog { width: min(760px, calc(100% - 24px)); max-height: calc(100svh - 32px); padding: 18px; border: 0; border-radius: 24px; color: #17324d; background: #fff9ee; }
.game-first #gamesDialog::backdrop { background: #152b4666; }
.game-first #gamesDialog header { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 14px; }
.game-first #gamesDialog h2 { font-size: 1.25rem; }
.game-first #sceneNav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.game-first #sceneNav .scene-tab { display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; min-width: 0; padding: 6px; gap: 5px; border: 2px solid transparent; background: #eee8dc; color: #17324d; border-radius: 17px; font-size: .85rem; }
.game-first #sceneNav .scene-tab[aria-pressed="true"] { border-color: #367e7a; background: #dcece3; }
.game-first #sceneNav .game-picture { height: 90px; display: grid; place-items: center; border-radius: 12px; background: #e4ddcd; overflow: hidden; }
.game-first #sceneNav .game-picture > svg { height: 85px; max-width: 100%; }
.game-first #sceneNav .game-picture > img { height: 76px; max-width: 90%; object-fit: contain; }
.game-first #scene-option-rocket-launch .game-picture { background: #27384a url('../assets/rocket/moon-launch-world.webp') center/cover; }
.game-first #scene-option-moon-landing .game-picture { background: #27384a url('../assets/moon/soft-landing-world.webp') center/cover; }
.game-first #scene-option-moon-landing .game-picture > img { height: 50px; transform: rotate(-12deg); }
.game-first #sceneNav .game-lock { color: #5b6872; font-size: .7rem; }
.game-first [hidden] { display: none !important; }
@media (max-width: 760px) {
  .game-first #gameShell { padding-left: max(10px, env(safe-area-inset-left)); padding-right: max(10px, env(safe-area-inset-right)); grid-template-columns: minmax(0, 1fr); grid-template-rows: auto auto auto auto auto auto auto; grid-template-areas: "header" "scene" "phrases" "action" "agency" "sensory" "adult"; gap: 8px; }
  .game-first #gameShell .top-bar { gap: 4px; }
  .game-first #gameShell .top-controls { gap: 2px; }
  .game-first #gameShell .stage { height: clamp(150px, calc(100svh - 365px - env(safe-area-inset-top) - env(safe-area-inset-bottom)), 410px); }
  .game-first #phraseGrid { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: auto; gap: 7px; }
  .game-first #phraseGrid .phrase-button { display: flex; flex-direction: column; min-height: 94px; height: auto; padding: 5px 3px 7px; gap: 3px; font-size: .85rem; }
  .game-first #phraseGrid .phrase-icon, .game-first #phraseGrid .rocket-card-art, .game-first #phraseGrid .rocket-card-art .phrase-picture { width: 58px; height: 56px; max-height: 56px; flex: 0 0 56px; }
  .game-first #actionRow { min-height: 44px; }
  .game-first #actionRow button { min-height: 44px; }
  .game-first #regulationRow { gap: 5px; }
  .game-first #regulationRow .regulation-button { flex-direction: column; gap: 2px; min-height: 54px; font-size: .72rem; }
  .game-first #regulationRow .phrase-icon { width: 26px; height: 26px; min-width: 26px; }
  .game-first #gameShell .phrase-bubble { font-size: 1rem; padding: 7px 13px; }
  .game-first #sceneNav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* One game board: goal, world and controls belong to the same activity. */
.game-first #gameShell { display:block; padding-top:max(12px,env(safe-area-inset-top)); }
.game-first #gameShell .top-bar { margin-bottom:12px; }
.game-first .playboard { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(0,1fr); grid-template-areas:"scene phrases" "scene action" "agency agency"; gap:14px 18px; padding:16px; border:1px solid #e1dbc9; border-radius:30px; background:#f6f0e3; box-shadow:0 6px 0 #e7dfcd; }
.game-first #gameShell .stage { display:flex; flex-direction:column; gap:10px; height:480px; }
.game-first #gameShell .scene-art { flex:1; height:auto; }
.game-first .mission { display:flex; align-items:center; gap:10px; min-height:58px; color:#23464e; }
.game-first .mission strong { display:block; font-size:1.12rem; line-height:1.15; }
.game-first .mission span#missionHint { display:block; margin-top:5px; font-family:system-ui,sans-serif; font-size:.83rem; line-height:1.3; color:#536866; }
.game-first .mission-picture { display:grid; place-items:center; width:46px; height:50px; flex:0 0 46px; }
.game-first .mission-picture img,.game-first .mission-picture svg { max-width:46px; max-height:48px; }
.game-first #actionRow { flex-wrap:wrap; align-content:center; }
.game-first #actionRow button { flex:1; }
.game-first #nextButton { display:flex; align-items:center; justify-content:center; gap:6px; background:#dcece3; color:#235f59; }
.game-first #nextButton small { display:block; margin-top:3px; font-size:.72rem; }
.game-first .next-picture { width:34px; height:40px; display:grid; place-items:center; }
.game-first .next-picture img,.game-first .next-picture svg { width:34px; max-height:40px; }
.game-first #gameShell .adult-details { margin-top:16px; }
.game-first #gameShell .adult-details .sensory-controls { margin:12px 0; }
.game-first #gameShell .adult-details .grown-ups-button { background:#dcece3; font-size:.9rem; }
.game-first .help-target { outline:4px solid #edb957!important; outline-offset:5px; }
.game-first [data-help="true"] .mission { border-radius:14px; background:#fff0c5; }
.game-first .rocket-tap-cue { display:inline-flex; align-items:center; gap:4px; }
.game-first .rocket-tap-cue::before { content:""; display:inline-block; width:18px; height:22px; background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M15 31V13q0-6 5-4v12l3-4 9 4-4 14H16L8 27q-3-6 2-5Z' fill='%23fff8e5' stroke='%234f817b' stroke-width='2'/%3E%3Cpath d='M12 6 9 2m16 4 4-3M7 13H2' stroke='%234f817b' stroke-width='2'/%3E%3C/svg%3E"); }
@media(max-width:760px) {
 .game-first .playboard { padding:10px; grid-template-columns:minmax(0,1fr); grid-template-areas:"scene" "phrases" "action" "agency"; gap:10px; border-radius:24px; }
 .game-first #gameShell .stage { height:clamp(235px,calc(100svh - 345px),490px); gap:8px; }
 .game-first .mission { min-height:58px; gap:7px; }
 .game-first .mission strong { font-size:1rem; }
 .game-first .mission span#missionHint { font-size:.76rem; }
 .game-first #phraseGrid .phrase-button { font-size:.8rem; min-height:90px; }
 .game-first #actionRow button { font-size:.9rem; padding:7px 9px; }
 .game-first #regulationRow .regulation-button { font-size:.65rem; }
}

.game-first.moon-exemplar #phraseGrid { grid-template-rows:repeat(2,1fr); }
.game-first [data-help="true"] .rocket-wrap { animation-play-state:paused!important; }
@media(max-width:760px) {
 .game-first.moon-exemplar #phraseGrid { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:auto; }
}

.game-first [data-rocket-phase='flying'] .rocket-tap-cue,
.game-first [data-rocket-phase='arrived'] .rocket-tap-cue,
.game-first [data-chase-motion='moving'] .rocket-tap-cue,
.game-first [data-chase-caught='true'] .rocket-tap-cue { display:none; }

/* A pictured destination stays in the world before and after the action. */
.rocket-route { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
.rocket-route path { fill:none; stroke:#f5d69b; stroke-width:1; stroke-dasharray:2 3; }
.rocket-destination { position:absolute; left:57%; top:11%; width:30%; height:48%; border:3px dashed #ead59a; border-radius:50%; display:grid; place-items:center; background:#17334c66; pointer-events:none; }
.rocket-destination img { width:70%; height:80%; object-fit:contain; opacity:.22; transform:rotate(14deg); }
.rocket-destination > svg { position:absolute; right:-8%; top:4%; width:30%; height:30%; }
.game-first [data-rocket-phase='arrived'] .rocket-destination { border-style:solid; background:#f6d58922; }
.game-first [data-rocket-phase='arrived'] .rocket-destination img,
.game-first [data-rocket-phase='arrived'] .rocket-route { opacity:0; }
.game-first [data-rocket-phase='paused'] .illustrated-rocket { animation:none; }
.game-first [data-rocket-phase='arrived'] .rocket-world { transform:none; }
.game-first .arrival-note { display:none!important; }


.game-first #actionRow { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.game-first #actionRow button { grid-column:auto; display:flex; align-items:center; justify-content:center; gap:8px; min-height:76px; padding:8px; }
.game-first #actionRow #actionButton { grid-column:1/-1; }
.game-first.cookie-exemplar #actionButton:disabled { display:none; }
.game-first.cookie-exemplar #actionRow.empty-action-row { display:none; }
@media(max-width:760px) {
 /* Serving games need room for both phrase choices and the extra action row. */
 .game-first #gameShell.has-serving-action .stage { height:clamp(235px,calc(100svh - 421px),414px); }
}
.game-first .replay-picture { position:relative; display:grid; place-items:center; width:62px; height:62px; flex:0 0 62px; }
.game-first .replay-picture > img,.game-first .replay-picture > svg:not(:last-child) { width:36px; height:40px; object-fit:contain; }
.game-first .replay-picture > svg:last-child { position:absolute; inset:0; width:100%; height:100%; fill:none; stroke:#3e776b; stroke-width:5; stroke-linecap:round; stroke-linejoin:round; }
.game-first #nextButton .next-picture { width:56px; height:56px; flex:0 0 56px; }
.game-first #nextButton .next-picture img,.game-first #nextButton .next-picture svg { width:50px; max-height:56px; fill:#619c8b; }
:is(.cookie-serve-target,.juice-serve-target) { position:absolute; right:3%; bottom:3%; width:26%; height:38%; min-width:44px; min-height:44px; padding:0; border:3px dashed #548c77; border-radius:50%; background:#fff8dd25; box-shadow:none; }
:is(.cookie-serve-target,.juice-serve-target)[hidden] { display:none; }
:is(.cookie-serve-target,.juice-serve-target) svg { position:absolute; top:-46%; left:-30%; width:75%; height:90%; fill:none; stroke:#447b68; stroke-width:6; stroke-linecap:round; stroke-linejoin:round; pointer-events:none; }
:is(.cookie-serve-target,.juice-serve-target) span { position:absolute; left:50%; bottom:-2%; transform:translateX(-50%); white-space:nowrap; background:#fff8e9; border-radius:12px; padding:4px 8px; font-size:.72rem; }
:is(.cookie-serve-target,.juice-serve-target):focus-visible { outline:4px solid #285f57; outline-offset:4px; }
.cookie-plate-invitation { opacity:.18; }
[data-cookie-delivered='true'] .cookie-plate-invitation { opacity:0; }
.station-cab { bottom:18%; height:25%; min-width:88px; min-height:64px; }
.station-cab span { position:absolute; right:1%; bottom:-6px; padding:2px; width:30px; height:30px; border:2px solid #528672; border-radius:50%; }
.station-cab svg { width:100%; height:100%; fill:none; stroke:#3f7567; stroke-width:5; stroke-linecap:round; stroke-linejoin:round; }
.station-cab[data-direction='0'] svg { transform:scaleX(-1); }
[data-station-motion='moving'] .station-cab span { visibility:hidden; }
.popped-picture { display:none; width:min(100%,160px); aspect-ratio:1; pointer-events:none; }
[data-popped='true'] .popped-picture { display:block; }
.popped-picture svg { width:100%; height:100%; fill:none; stroke:#648f88; stroke-width:3; stroke-linecap:round; }
.popped-picture circle { stroke-dasharray:3 6; }
@media(max-width:760px) {
 .game-first #actionRow button { min-height:64px; gap:6px; }
 .game-first .replay-picture { width:46px; height:46px; flex-basis:46px; }
 .game-first #nextButton .next-picture { width:42px; height:46px; flex-basis:42px; }
 .game-first #nextButton .next-picture img,.game-first #nextButton .next-picture svg { width:38px; max-height:46px; }
}

/* Existing world art remains the next-action cue at every size. */
.game-first .juice-new-cup {display:flex;align-items:center;gap:5px;}
.game-first .juice-new-cup svg {width:40px;height:40px;}
.game-first .tunnel-canvas {aspect-ratio:20/7;bottom:8%;}
.game-first .tunnel-tap-target {top:66%;width:28%;height:42%;}
.game-first .tunnel-state {bottom:-12%;}
.game-first .optional-mission-step > svg {width:42px;height:36px;}
.game-first .mission-continue-picture > svg {max-width:54px;max-height:48px;}
#optionalMissionContinue[data-direction='left'] .mission-continue-picture {transform:scaleX(-1);}
@media(max-width:380px) {
 .game-first .optional-mission-step > svg {width:32px;height:28px;}
}

.garden-popped {position:absolute;transform:translate(-50%,-50%);width:70px;height:70px;pointer-events:none;}
[data-size='1'] .garden-popped {width:100px;height:100px;}
.garden-popped svg {width:100%;height:100%;stroke:#56877f;stroke-width:3;fill:none;stroke-linecap:round;}
.game-first .garden-result {top:auto;bottom:8%;font-size:.85rem;}

body[data-optional-mission='bubble-garden'] .optional-mission-steps {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;}
body[data-optional-mission='bubble-garden'] .optional-mission-step {min-width:0;padding:3px 0 3px 4px;}
body[data-optional-mission='bubble-garden'] .optional-mission-step.is-visited::after {top:3px;right:0;transform:none;}

body[data-optional-mission='star-picture'] .optional-mission-steps {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;}
body[data-optional-mission='star-picture'] .optional-mission-step {min-width:0;gap:2px;padding-left:0;padding-right:16px;}
body[data-optional-mission='star-picture'] .optional-mission-step .mission-marker {width:20px;height:24px;}

/* Rocket support cues. World layout lives in rocket-world.css. */
.rocket-help-example { position:absolute; top:14px; left:50%; transform:translateX(-50%); width:min(250px,calc(100% - 24px)); display:flex; align-items:center; justify-content:center; gap:18px; padding:12px; border-radius:20px; background:#fff5d9; border:2px solid #ecc572; color:#17324d; z-index:6; pointer-events:none; }
.rocket-help-example .example-step { position:relative; display:grid; justify-items:center; gap:4px; }
.rocket-help-example img { width:38px; height:52px; object-fit:contain; }
.rocket-help-example .example-arrival img { transform:rotate(35deg); }
.example-arrow { font-size:28px; }
.example-hand { position:absolute; left:-17px; top:20px; font-size:28px; color:#235f59; }
.example-star { position:absolute; right:-20px; top:-5px; color:#aa6a06; font-size:30px; }
.rocket-quiet-status { display:none; position:absolute; bottom:10px; right:10px; border-radius:12px; background:#fff9eedb; color:#17324d; padding:7px 10px; font:600 .76rem system-ui,sans-serif; pointer-events:none; }
.quiet-mode .rocket-quiet-status { display:block; }
.requested-activity { display:flex; align-items:center; gap:14px; margin-bottom:14px; font-size:1.1rem; font-weight:750; }
.requested-activity > span:first-child { width:68px; height:68px; display:grid; place-items:center; background:#e4efe5; border-radius:18px; }
.requested-activity img,.requested-activity svg { max-width:58px; max-height:58px; }
.handoff-explanation { font:400 .95rem/1.5 system-ui,sans-serif; margin:14px 0; }
.summary-dialog { width:min(620px,calc(100% - 24px)); max-height:calc(100dvh - 32px); border:0; border-radius:22px; padding:22px; color:#17324d; background:#fffaf0; overflow:auto; font:400 1rem/1.5 system-ui,sans-serif; }
.summary-dialog::backdrop { background:#152b4680; }
.summary-dialog header { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.summary-dialog h2 { margin:0; font-size:1.35rem; }
.summary-dialog button { min-width:44px; min-height:44px; padding:9px 12px; border:1px solid #c7d9cc; border-radius:12px; color:#17324d; background:#e4efe5; font:600 .95rem system-ui,sans-serif; }
.summary-dialog button:disabled { opacity:.55; }
.summary-dialog input,.summary-dialog textarea { width:100%; min-height:44px; padding:10px; font:inherit; color:inherit; background:#fff; border:1px solid #9aaba7; border-radius:8px; box-sizing:border-box; }
.summary-dialog form,.summary-actions,.summary-range { display:flex; flex-wrap:wrap; gap:12px; }
.summary-dialog form { flex-direction:column; }
.summary-range { margin:20px 0; }.summary-range label { flex:1; min-width:120px; }
.summary-entry { border-top:1px solid #ddd6c8; padding:12px 0; }.summary-entry h3 { margin:0; font-size:1rem; }
.summary-entry p { margin:7px 0; }.summary-status { font-weight:700;color:#235f59; }
#summaryExportArea { margin-top:18px; } #summaryExportArea button { margin:8px 6px 0 0; }
.summary-dialog { box-sizing:border-box; position:fixed; inset:auto; top:50%; left:50%; transform:translate(-50%,-50%); margin:0; height:fit-content; }
.summary-dialog header { position:sticky; top:-22px; background:#fffaf0; padding:8px 0; z-index:1; }
.summary-explanation { border-top:1px solid #ddd6c8; margin-top:20px; padding-top:12px; }
.summary-explanation summary { min-height:44px; padding:10px 0; cursor:pointer; font-weight:650; }

/* Short landscape keyboards need the question and action in the same row. */
.summary-dialog[data-compact-gate="true"] { padding:8px 14px; }
.summary-dialog[data-compact-gate="true"] header { position:static; padding:0; min-height:44px; }
.summary-dialog[data-compact-gate="true"] h2 { font-size:1rem; }
.summary-dialog[data-compact-gate="true"] .summary-gate-intro { display:none; }
.summary-dialog[data-compact-gate="true"] form { display:grid; grid-template-columns:1fr auto; gap:4px 12px; }
.summary-dialog[data-compact-gate="true"] form label { grid-column:1 / -1; font-size:.85rem; }
.summary-dialog[data-compact-gate="true"] #summaryGateMessage:empty { display:none; }
.summary-dialog[data-compact-gate="true"] #summaryGateMessage:not(:empty) { grid-column:1 / -1; grid-row:3; margin:0; }
.summary-dialog[data-compact-gate="true"] form button[type="submit"] { grid-column:2; grid-row:2; }

.summary-dialog { --summary-safe-top:env(safe-area-inset-top,0px); --summary-safe-bottom:env(safe-area-inset-bottom,0px); }
.summary-range input { min-width:0; max-width:100%; }
@media(max-width:480px) { .summary-range { flex-direction:column; } .summary-range label { width:100%; } }
