/* v5: preserve the v4.3 neon carnival, use one full-screen cabinet coordinate system. */
.gp-app{display:block;padding:0;width:100%!important;height:var(--game-height,100dvh);background:#060726;overflow:hidden}
.gp-bg{display:none}
.gp-gameplay{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;isolation:isolate;background:url('./assets/game-cabinet-pc.webp') center/100% 100% no-repeat}
.gp-cabinet-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:10;pointer-events:none}
.gp-gameplay .gp-hud,.gp-gameplay .gp-footer{position:absolute;inset:0;display:block!important;width:100%;height:100%;min-height:0;padding:0;margin:0;border:0;background:none;box-shadow:none;pointer-events:none;z-index:30}
.gp-gameplay .gp-hud>*{position:absolute}
.gp-gameplay #gp-pause,.gp-gameplay #gp-sound{top:2%;width:5%;height:7%;min-width:44px;min-height:44px;padding:0;border:0;border-radius:12px;background:#060b2d99;box-shadow:none;font-size:clamp(18px,2vw,32px);pointer-events:auto}
.gp-gameplay #gp-pause{left:3%}.gp-gameplay #gp-sound{right:5%}
.gp-gameplay .gp-logo{left:10%;top:1.7%;width:14%;height:8%;padding:0;background:none;display:flex;align-items:center;justify-content:center}
.gp-logo img{width:100%;height:100%;object-fit:contain}
.gp-gameplay .gp-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0;padding:0;gap:1px;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none}
.gp-gameplay .gp-time{top:1.6%;left:27%;width:15.5%;height:7.8%}
.gp-gameplay .gp-score-stat{top:1.6%;left:44.5%;width:15%;height:7.8%}
.gp-gameplay .gp-combo-stat{top:1.6%;left:61%;width:12.2%;height:7.8%}
.gp-gameplay .gp-stat span{font:700 clamp(9px,.85vw,15px)/1 Arial,sans-serif;letter-spacing:.12em}
.gp-gameplay .gp-stat strong{font:900 clamp(23px,2.7vw,48px)/1.05 Arial,sans-serif;font-variant-numeric:tabular-nums}
.gp-gameplay .gp-score-stat strong{color:#ffe6a4}
.gp-gameplay .gp-fever{position:absolute;left:28.1%;top:12.45%;width:43.7%;height:3.25%;z-index:30;display:block;margin:0;padding:0;border:0;background:none;box-shadow:none}
.gp-gameplay .gp-fever>span{position:absolute;inset:0;display:grid;place-items:center;z-index:2;font:900 clamp(10px,1vw,18px)/1 Arial,sans-serif;letter-spacing:.16em;text-shadow:0 1px 4px #000}
.gp-gameplay .gp-fever-track{position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:0;border:0;border-radius:100px;background:#030823;overflow:hidden}
.gp-gameplay #gp-fever-fill{height:100%;background:linear-gradient(90deg,#54e7ff,#fb4acf,#ffe35e);box-shadow:none}
#gp-board{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;gap:0;border:0;border-radius:0;background:none;box-shadow:none;transform:none;z-index:20;pointer-events:none}
#gp-board::before,#gp-board::after,#gp-board .gp-hole::before,#gp-board .gp-hole::after{display:none!important}
#gp-board .gp-hole:nth-child(n){position:absolute;aspect-ratio:auto;margin:0;padding:0;border:0;border-radius:45%;background:none;box-shadow:none;transform:none!important;filter:none;outline:none;overflow:visible;pointer-events:auto;touch-action:none}
#gp-board .gp-target-stage{display:none}
.gp-gameplay .gp-message{position:absolute;left:30%;top:88%;width:39%;height:7%;min-width:0;display:grid;place-items:center;font:900 italic clamp(25px,3.1vw,58px)/1 Arial,sans-serif;white-space:nowrap;text-shadow:0 0 16px #ff39c8}
.gp-gameplay .gp-lives{position:absolute;left:76%;top:89%;width:13%;height:6%;display:flex;align-items:center;justify-content:center;font-size:clamp(17px,2vw,34px);letter-spacing:0;white-space:nowrap}
.gp-overlay{overflow:hidden}
.gp-gameplay.is-paused{filter:saturate(.7)}
/* The familiar neon frame stays; only its contents are rearranged. */
#gp-start-screen{padding:14px 20px;backdrop-filter:none}
#gp-start-screen .gp-start-panel{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:96vw;max-width:none;height:96%;max-height:100%;padding:26px 28px;border-radius:28px}
#gp-start-screen .gp-start-copy{display:flex;flex-direction:column;align-items:center;gap:5px;width:100%;min-height:0}
#gp-start-screen .gp-title-mark{width:min(65vw,66vh);height:auto;max-width:100%;margin:0;padding:0;border:0;background:none;box-shadow:none;border-radius:0;transform:none}
.gp-title-mark img{display:block;width:100%;height:auto;filter:drop-shadow(0 3px 12px #28dcff44)}
#gp-start-screen .gp-catch{margin:0;font-size:clamp(11px,1.6vh,18px)}
#gp-start-screen .gp-start-hero{display:flex;align-items:end;justify-content:center;gap:18px;width:min(65vw,760px);height:23vh;min-height:0;margin:0;padding:0;flex-shrink:0}
#gp-start-screen .gp-start-hero img{position:relative;inset:auto;width:27%;height:85%;max-width:none;max-height:100%;object-fit:contain;object-position:center;padding:8px 5px 0;transform:none!important;animation:none}
#gp-start-screen .gp-start-hero .gp-start-monster{width:34%;height:100%;z-index:2}
#gp-start-screen .gp-rules{width:min(65vw,760px);margin:3px 0 0;gap:12px}
#gp-start-screen .gp-rules>div{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:8px;padding:5px 10px;border-radius:12px}
#gp-start-screen .gp-rule-icon{grid-row:1/3;width:38px;height:38px;aspect-ratio:1}
#gp-start-screen .gp-rules strong,#gp-start-screen .gp-rules small{justify-self:start;align-self:center}
#gp-start-screen .gp-rules strong{font-size:12px}#gp-start-screen .gp-rules small{font-size:10px}
#gp-start-screen .gp-rules>div:nth-child(1){border-color:#39e8ff;box-shadow:0 0 12px #22dcff55}
#gp-start-screen .gp-rules>div:nth-child(2){border-color:#ff526f;box-shadow:0 0 12px #ff385855}
#gp-start-screen .gp-start-controls{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:min(65vw,760px);margin:0;padding:8px 16px 2px;flex-shrink:0}
#gp-start-screen .gp-select-label{margin:0;font-size:11px}
#gp-start-screen .gp-difficulty{width:min(620px,100%);gap:10px}
#gp-start-screen .gp-difficulty button{min-height:40px;font-size:13px;padding:6px}
#gp-start-screen .gp-best{margin:0;font-size:12px;line-height:1.2}#gp-start-screen .gp-best strong{font-size:21px}
#gp-start-screen .gp-main-button{width:min(620px,100%);min-height:52px;margin:3px 0;font-size:23px}
#gp-start-screen .gp-help,#gp-start-screen .gp-credit{margin:0;font-size:10px;line-height:1.3}
#gp-start-screen .gp-games-link{width:auto;min-height:28px;margin:0;padding:5px 20px;font-size:12px;background:none;border:0;box-shadow:none}
.gp-debug{position:fixed;bottom:0;left:0;z-index:2147483646;background:#030923e8;padding:4px;display:flex;gap:4px}.gp-debug button{font-size:11px;padding:5px}
@media(max-width:720px),(orientation:portrait){
 .gp-gameplay{background-image:url('./assets/game-cabinet-mobile.webp')}
 .gp-gameplay #gp-pause,.gp-gameplay #gp-sound{top:5%;width:10%;height:5%;min-width:40px;min-height:44px;font-size:20px}
 .gp-gameplay #gp-pause{left:0}.gp-gameplay #gp-sound{right:0}
 .gp-gameplay .gp-logo{left:13%;top:5.65%;width:17.5%;height:4.25%}
 .gp-gameplay .gp-time{left:34%;top:5.5%;width:15%;height:4.5%}
 .gp-gameplay .gp-score-stat{left:52%;top:5.5%;width:17%;height:4.5%}
 .gp-gameplay .gp-combo-stat{left:73%;top:5.5%;width:15%;height:4.5%}
 .gp-gameplay .gp-stat span{font-size:clamp(8px,2.3vw,13px)}
 .gp-gameplay .gp-stat strong{font-size:clamp(15px,4.7vw,28px)}
 .gp-gameplay .gp-score-stat strong{font-size:clamp(13px,3.8vw,25px);letter-spacing:0}
 .gp-gameplay .gp-fever{left:12%;top:12.5%;width:75%;height:1.8%}
 .gp-gameplay .gp-fever>span{font-size:clamp(9px,2.4vw,14px)}
 .gp-gameplay .gp-message{left:10%;top:86%;width:53%;height:5%;font-size:clamp(21px,6vw,38px)}
 .gp-gameplay .gp-lives{left:74%;top:86.4%;width:18%;height:4%;font-size:clamp(13px,4vw,23px)}
 #gp-start-screen{padding:max(10px,env(safe-area-inset-top)) 8px max(10px,env(safe-area-inset-bottom))}
 #gp-start-screen .gp-start-panel{width:100%;height:100%;padding:24px 12px 16px;gap:14px;border-radius:20px}
 #gp-start-screen .gp-start-copy{gap:12px}
 #gp-start-screen .gp-title-mark{width:96%;max-width:520px}
 #gp-start-screen .gp-catch{font-size:12px}
 #gp-start-screen .gp-start-hero{width:100%;height:22vh;gap:6px}
 #gp-start-screen .gp-start-hero img{width:28%;height:80%;padding:6px 2px 0}
 #gp-start-screen .gp-start-hero .gp-start-monster{width:36%;height:100%}
 #gp-start-screen .gp-rules{width:100%;gap:5px}
 #gp-start-screen .gp-rules>div{display:flex;flex-direction:column;gap:4px;padding:8px 1px}
 #gp-start-screen .gp-rule-icon{display:none}
 #gp-start-screen .gp-rules strong{font-size:10px}#gp-start-screen .gp-rules small{font-size:9px;white-space:nowrap}
 #gp-start-screen .gp-start-controls{width:100%;padding:10px 5px 0;gap:6px}
 #gp-start-screen .gp-difficulty{gap:6px}#gp-start-screen .gp-difficulty button{min-height:44px;font-size:12px}
 #gp-start-screen .gp-main-button{min-height:56px;font-size:23px}
 #gp-start-screen .gp-games-link{min-height:36px;padding:9px}
}
@media(max-height:700px){#gp-start-screen .gp-start-panel{gap:5px;padding-top:20px;padding-bottom:14px}#gp-start-screen .gp-start-copy{gap:4px}#gp-start-screen .gp-start-hero{height:18vh}#gp-start-screen .gp-start-controls{gap:2px}#gp-start-screen .gp-main-button{min-height:44px}}
@media(max-height:500px) and (orientation:landscape){#gp-start-screen .gp-start-panel{display:grid;grid-template-columns:1.1fr 1fr;padding:20px;gap:20px}#gp-start-screen .gp-title-mark{width:min(40vw,58vh)}#gp-start-screen .gp-start-hero{width:95%;height:25vh}#gp-start-screen .gp-rules{width:95%}#gp-start-screen .gp-rule-icon{display:none}#gp-start-screen .gp-rules>div{display:flex;flex-direction:column;padding:4px}#gp-start-screen .gp-rules small{font-size:8px}#gp-start-screen .gp-start-controls{width:100%}}
@media(prefers-reduced-motion:reduce){.gp-app *{animation:none!important;transition:none!important}}
/* v5.1 — bilingual arcade menus and restrained motion. */
#gp-start-screen .gp-catch{position:relative;top:-8px;margin:0;font-size:clamp(16px,2.4vh,25px);font-weight:900;line-height:1.35;letter-spacing:.08em;color:#fff4a6;text-shadow:0 2px 2px #26092b,0 0 12px #ff4ea8,0 0 24px #ff4ea866}
@media(max-width:720px),(orientation:portrait){#gp-start-screen .gp-catch{top:-5px;font-size:clamp(15px,4.2vw,20px);letter-spacing:.04em}}
.gp-logo picture{display:block;width:100%;height:100%}
#gp-start-screen .gp-start-hero img{object-fit:contain;object-position:center;aspect-ratio:1;height:auto;border-radius:28px;padding:0;animation:gp-idle 3s ease-in-out infinite!important}
#gp-start-screen .gp-start-hero .gp-start-monster{height:auto}
#gp-start-screen .gp-start-hero .gp-start-monster{animation-delay:-1s!important}
#gp-start-screen .gp-start-hero .gp-start-bomb{animation-delay:-2s!important}
#gp-start-screen #gp-start{animation:gp-start-glow 2.5s ease-in-out infinite}
#gp-start-screen .gp-start-panel{animation:gp-frame-glow 5s linear infinite}
@keyframes gp-idle{50%{translate:0 -5px}}
@keyframes gp-start-glow{50%{box-shadow:0 0 28px #ff46d088, inset 0 0 15px #fff4}}
@keyframes gp-frame-glow{0%,100%{border-color:#ff48bd;box-shadow:0 0 22px #ff48bd77}50%{border-color:#46e9ff;box-shadow:0 0 22px #46e9ff77}}
#gp-pause-screen,#gp-result-screen{background:#02051bd9;backdrop-filter:blur(5px);padding:18px;overflow:auto}
#gp-pause-screen .gp-panel,#gp-result-screen .gp-panel{width:min(460px,100%);max-height:100%;overflow:auto;padding:26px 30px;border:2px solid #68edff;border-radius:24px;background:linear-gradient(155deg,#17234b,#100d2c 65%);box-shadow:0 0 0 5px #04081bcc,0 0 32px #30dfff44,inset 0 0 30px #6b36ac33;display:flex;flex-direction:column;align-items:stretch;gap:10px;text-align:center}
#gp-pause-screen h2,.gp-result-label{margin:0;font:900 italic clamp(30px,6vw,44px)/1.1 Arial;letter-spacing:.1em;color:#fff6bf;text-shadow:3px 3px #df329e,0 0 20px #ff51bd88}
.gp-menu-caption{margin:0 0 8px;color:#cce3fc;font-size:13px}
#gp-pause-screen button,#gp-result-screen button{width:100%;min-height:52px;margin:0;font-size:19px;letter-spacing:.03em;border-radius:12px}
#gp-pause-screen small,#gp-result-screen small{font:700 10px/1.2 Arial;letter-spacing:.09em;opacity:.75;margin-left:7px}
#gp-pause-screen .gp-sub-button,#gp-result-screen .gp-sub-button{background:#15213f;border:1px solid #6174a8;color:#eef4ff}
#gp-pause-screen .gp-games-link,#gp-result-screen .gp-games-link{margin:0;min-height:38px;padding:9px;font-size:13px;background:transparent;box-shadow:none;border:0;color:#9fc6e9}
.gp-menu-help{font-size:11px;color:#b1c4dc;margin:5px 0 0}
.gp-overlay button:focus-visible,.gp-overlay a:focus-visible,.gp-overlay .is-controller-focus{outline:3px solid #fff49c!important;outline-offset:3px;box-shadow:0 0 19px #ffe87266!important}
#gp-result-screen .gp-rank{font:900 italic 74px/1 Arial;margin:3px 0;color:#ffe888;text-shadow:3px 3px #ff4fad;transform:rotate(-8deg)}
#gp-result-screen.gp-overlay--visible .gp-rank{animation:gp-rank-stamp .4s ease-out both}
@keyframes gp-rank-stamp{from{transform:scale(1.8) rotate(-18deg);opacity:0}to{transform:scale(1) rotate(-8deg);opacity:1}}
#gp-result-screen .gp-result-list{margin:0 0 8px;display:grid;gap:5px}
#gp-result-screen .gp-result-list>div{padding:9px 12px;background:#030a2099;border:1px solid #3c527e;border-radius:9px;display:flex;align-items:center;justify-content:space-between}
#gp-result-screen dt{font-size:13px;color:#bbd4eb}#gp-result-screen dd{margin:0;font:900 25px/1 Arial;color:#ffedb3;font-variant-numeric:tabular-nums}
#gp-new-best{margin:0;color:#ffeb8a;font:bold 12px Arial;letter-spacing:.08em;text-shadow:0 0 15px #ffb333}
.is-fever .gp-gameplay{box-shadow:inset 0 0 35px 8px #ffd84899}
.is-paused .gp-gameplay{filter:saturate(.7)}
.is-paused *{animation-play-state:paused!important}
@media(max-width:720px),(orientation:portrait){.gp-gameplay #gp-pause,.gp-gameplay #gp-sound{top:calc(5% - 3px)}.gp-gameplay #gp-pause{left:3px}.gp-gameplay #gp-sound{right:3px}}
@media(max-height:650px){#gp-pause-screen .gp-panel,#gp-result-screen .gp-panel{padding:16px;gap:7px}#gp-result-screen .gp-rank{font-size:48px}#gp-pause-screen button,#gp-result-screen button{min-height:44px}}
@media(prefers-reduced-motion:reduce){#gp-start-screen .gp-start-hero img,.gp-app *{animation:none!important;transition:none!important}}
.gp-gameplay #gp-pause,.gp-gameplay #gp-sound{display:grid;place-items:center;line-height:1}
.gp-icon-button svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round}
.gp-icon-button .gp-note-head{fill:currentColor;stroke:none}
.gp-mute-slash{display:none}.is-muted .gp-mute-slash{display:block;stroke:#ff91b8}.is-muted .gp-note,.is-muted .gp-note-head{opacity:.35}
@media(max-width:720px),(orientation:portrait){
 .gp-gameplay #gp-pause,.gp-gameplay #gp-sound{top:calc(7.177% - 22px);width:44px;height:44px;min-width:44px;min-height:44px;background:none;border-radius:8px}
 .gp-gameplay #gp-pause{left:calc(5.845% - 22px)}
 .gp-gameplay #gp-sound{right:calc(5.951% - 22px)}
 .gp-icon-button svg{width:20px;height:20px}
}

.gp-audio-settings{width:100%;max-width:420px;margin:3px auto;color:#d5ebff;font:12px/1.4 Arial,sans-serif;letter-spacing:0}
.gp-audio-settings summary{cursor:pointer;text-align:center;padding:5px;color:#bceeff}
.gp-audio-settings label{display:grid;grid-template-columns:76px 1fr 36px;gap:8px;align-items:center;padding:5px 8px;background:#071127cc;border-radius:7px;margin-top:4px;text-align:left}
.gp-audio-settings input{width:100%;min-width:0;accent-color:#4fe5ff;height:24px;touch-action:auto}
.gp-audio-settings output{text-align:right;font-size:11px}
#gp-pause-screen .gp-games-link,#gp-result-screen .gp-games-link{display:flex;align-items:center;justify-content:center;align-self:center;width:100%;text-align:center}
#gp-start-screen .gp-start-panel{overflow:auto}

/* Approved wide-screen carnival cabinet. Mobile retains its compact layout. */
.gp-title-cameo{display:none}
@media(min-width:900px) and (orientation:landscape) and (min-height:501px){
 #gp-start-screen{padding:3vh 0;background:#070e2c url('./assets/title-cabinet-v6-framed.png') center/100% 100% no-repeat}
 #gp-start-screen .gp-start-panel{position:relative;z-index:2;width:54%;height:94vh;max-height:94vh;padding:1vh 1vw;gap:.6vh;border:0;outline:0;border-radius:0;background:linear-gradient(180deg,#03092333,#03092366);backdrop-filter:none;box-shadow:none;animation:none;overflow:auto}
 #gp-start-screen .gp-start-panel::before,#gp-start-screen .gp-start-panel::after{display:none}
 #gp-start-screen .gp-start-copy{gap:.5vh}
 #gp-start-screen .gp-title-mark{width:min(50vw,78vh);max-width:100%}
 #gp-start-screen .gp-catch{top:0;font-size:clamp(17px,2.6vh,30px);margin:0 0 .6vh}
 #gp-start-screen .gp-start-hero{width:94%;height:24vh;gap:1vw}
 #gp-start-screen .gp-start-hero img{width:27%;height:85%;object-fit:contain;border:0;background:none;box-shadow:none;filter:drop-shadow(0 0 9px #39e7ff66)}
 #gp-start-screen .gp-start-hero .gp-start-monster{width:36%;height:100%;scale:1.16;filter:drop-shadow(0 0 10px #ff416988)}
 #gp-start-screen .gp-rules{width:94%;gap:1vw;margin:0}
 #gp-start-screen .gp-rules>div{display:flex;flex-direction:column;gap:2px;padding:4px 2px;background:#050d28cc;text-align:center}
 #gp-start-screen .gp-rule-icon{display:none}
 #gp-start-screen .gp-rules strong{font-size:clamp(12px,1.5vh,18px)}
 #gp-start-screen .gp-rules small{font-size:clamp(9px,1.1vh,13px)}
 #gp-start-screen .gp-start-controls{width:94%;padding:1vh 0 0;gap:.4vh;border:0;background:none;box-shadow:none}
 #gp-start-screen .gp-difficulty{width:90%;max-width:620px}
 #gp-start-screen .gp-difficulty button{min-height:34px;height:4.5vh}
 #gp-start-screen .gp-main-button{width:94%;max-width:680px;min-height:44px;height:6.5vh;font-size:clamp(24px,3.3vh,38px)}
 #gp-start-screen .gp-title-cameo{display:block;position:absolute;z-index:1;bottom:4%;width:16%;height:23%;overflow:hidden;pointer-events:none;mask-image:linear-gradient(#000 85%,transparent)}
 .gp-title-cameo--friend{left:0}.gp-title-cameo--monster{right:0}
 .gp-title-cameo img{width:100%;height:100%;object-fit:contain;animation:gp-cameo-peek 7s ease-in-out infinite}
 .gp-title-cameo--monster img{animation-delay:-3.5s}
 @keyframes gp-cameo-peek{0%,18%,100%{transform:translateY(60%)}35%,70%{transform:translateY(0)}80%{transform:translateY(8%)}}
}
@media(prefers-reduced-motion:reduce){.gp-title-cameo img{animation:none!important}}

@media(min-width:900px) and (orientation:landscape) and (min-height:501px){
 #gp-start-screen .gp-start-panel{width:58%;padding:1vh 2vw;border:1px solid #7497cf44;border-radius:12px;background:linear-gradient(180deg,#030923bb,#030923cc);box-sizing:border-box;overflow-x:hidden}
 #gp-start-screen .gp-title-mark{max-width:94%}
 #gp-start-screen .gp-rules{box-sizing:border-box;max-width:94%;grid-template-columns:repeat(3,minmax(0,1fr))}
 #gp-start-screen .gp-rules>div{min-width:0;box-sizing:border-box}
}

/* Symmetric perspective panel: straight diagonal edges, with safe content inset. */
@media(min-width:900px) and (orientation:landscape) and (min-height:501px){
 #gp-start-screen .gp-start-panel{border:0;border-radius:0;background:none;isolation:isolate}
 #gp-start-screen .gp-start-panel::before,#gp-start-screen .gp-start-panel::after{content:"";display:block;position:absolute;pointer-events:none;border:0;border-radius:0;box-shadow:none;clip-path:polygon(6% 0,94% 0,100% 100%,0 100%)}
 #gp-start-screen .gp-start-panel::before{inset:0;z-index:-2;background:#7b91b744}
 #gp-start-screen .gp-start-panel::after{inset:1px;z-index:-1;background:linear-gradient(180deg,#030923bb,#030923cc)}
 #gp-start-screen .gp-title-mark{max-width:86%}
}

@media(min-width:900px) and (orientation:landscape) and (min-height:501px){
 #gp-start-screen .gp-start-panel{height:86vh;max-height:86vh;background:none;border:0;outline:0;box-shadow:none}
 #gp-start-screen .gp-start-panel::before,#gp-start-screen .gp-start-panel::after{display:none}
 #gp-start-screen .gp-title-mark{width:min(46vw,70vh)}
 #gp-start-screen .gp-start-hero{height:21vh}
}

/* iPhone Safari: never shrink the copy below its visible children. */
@media(max-width:720px),(orientation:portrait){
 #gp-start-screen .gp-start-panel{justify-content:flex-start;overflow-y:auto;overflow-x:hidden;touch-action:pan-y;overscroll-behavior:contain;gap:12px;padding-top:22px;padding-bottom:22px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
 #gp-start-screen .gp-start-copy{flex:0 0 auto;min-height:auto;gap:10px}
 #gp-start-screen .gp-start-copy>*{flex-shrink:0}
 #gp-start-screen .gp-start-hero{height:min(34vw,calc(var(--game-height,100svh) * .19));align-items:flex-end}
 #gp-start-screen .gp-start-hero img{max-height:100%;height:90%;width:28%;object-fit:contain}
 #gp-start-screen .gp-start-hero .gp-start-monster{width:36%;height:100%}
 #gp-start-screen .gp-rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));height:auto;min-height:50px;flex:none;gap:5px;margin:4px 0 0}
 #gp-start-screen .gp-rules>div{min-width:0;height:auto;padding:7px 2px;box-sizing:border-box;justify-content:center}
 #gp-start-screen .gp-rules strong{line-height:1.3}
 #gp-start-screen .gp-rules small{white-space:normal;overflow-wrap:anywhere;line-height:1.4;text-align:center}
 #gp-start-screen .gp-start-controls{flex:0 0 auto;min-height:auto;margin:0;padding:8px 5px 0}
 #gp-start-screen button,#gp-start-screen a,.gp-audio-settings summary{touch-action:manipulation}
}
