/* Loaded by Chomp only; the joystick/view helpers can be reused later. */
.play-toolbar{display:none}.chomp-page canvas:focus-visible{outline:2px solid #ffe86f;outline-offset:-3px}
.chomp-page .maze-touch{gap:20px;justify-content:space-around;padding:16px 24px;touch-action:manipulation}
.joystick-unit{display:flex;flex:0 0 auto;flex-direction:column;align-items:center;gap:8px;--stick-size:clamp(120px,37vw,154px)}
.arcade-joystick{position:relative;width:var(--stick-size);height:var(--stick-size);border:2px solid #9fa9ff88;border-radius:50%;background:radial-gradient(circle,#293c7b 0 37%,#202a61 38% 62%,#394582 63% 65%,#1c2855 66%);box-shadow:inset 0 4px 18px #0c113e99,0 0 0 5px #99a8ff0d,0 5px 20px #090b2f55;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;outline:none;cursor:grab}
.arcade-joystick:focus-visible{outline:3px solid #ffec85;outline-offset:5px}.arcade-joystick[aria-disabled="true"]{opacity:.45;cursor:default}.arcade-joystick.is-held{border-color:#73f8ed;box-shadow:inset 0 4px 18px #0c113e99,0 0 0 5px #69f2e41a,0 0 28px #46d7f121;cursor:grabbing}
.joystick-knob{position:absolute;left:50%;top:50%;width:44%;height:44%;border:2px solid #fff3ac;border-radius:50%;background:radial-gradient(circle at 32% 23%,#fff6b4,#ffda54 46%,#eda02d 100%);box-shadow:0 7px 10px #07103980,inset 0 3px 4px #fff6d199;transform:translate(-50%,-50%) translate(var(--stick-x,0px),var(--stick-y,0px));transition:transform .1s ease-out;pointer-events:none;will-change:transform;display:grid;place-items:center}.is-held .joystick-knob{transition:none}.joystick-knob i{width:39%;height:39%;border-radius:50%;border:2px solid #bc7c344a;background:radial-gradient(circle,#ffe483,#f1bc4d);box-shadow:inset 0 1px 3px #d19c3550}
.stick-mark{position:absolute;font-size:9px;color:#a8bce47a;pointer-events:none;line-height:1}.stick-up{top:9px;left:50%;transform:translateX(-50%)}.stick-right{right:9px;top:50%;transform:translateY(-50%)}.stick-down{bottom:9px;left:50%;transform:translateX(-50%)}.stick-left{left:9px;top:50%;transform:translateY(-50%)}
[data-direction="up"] .stick-up,[data-direction="down"] .stick-down,[data-direction="left"] .stick-left,[data-direction="right"] .stick-right{color:#9dfff5;text-shadow:0 0 9px #43fff1}
.joystick-direction{font:700 8px ui-monospace,monospace;letter-spacing:.12em;color:#bcccf4;min-height:10px}.touch-panel{flex:0 1 175px;min-width:0}.touch-panel>b{font-size:12px;color:#fff0b7;font-weight:650}.touch-panel p{font-size:10px;line-height:1.7;color:#c5d1f0;margin:7px 0 12px}.touch-actions{display:flex;gap:8px;flex-wrap:wrap}.chomp-page .arcade .maze-touch .touch-actions button{font-size:11px;min-height:44px;min-width:64px;padding:9px 12px;border:1px solid #8799f088;background:#33458a;color:#eff5ff;flex:1;border-radius:8px;touch-action:manipulation}.chomp-page .arcade .maze-touch #touch-pause{background:#4e3f8e;border-color:#c394ed77}
@media(any-pointer:coarse),(max-width:760px){.chomp-page .maze-touch{display:flex}.chomp-page .touch-tip{display:block!important}.chomp-page .control-strip,.chomp-page .start-controls{display:none}}
@media(max-width:440px){.chomp-page .top-actions{gap:5px}.chomp-page .top-actions .quiet{font-size:10px;padding:8px 9px;min-height:42px}.chomp-page .maze-touch{padding:14px 18px;gap:20px}.touch-panel>b{font-size:11px}.touch-panel p{font-size:9px}.chomp-page .arcade .maze-touch .touch-actions button{font-size:10px;min-width:62px;padding:8px}}

html.arcade-play-lock{overflow:hidden;overscroll-behavior:none;height:100%}
body.chomp-page.arcade-play-lock{position:fixed;top:var(--arcade-scroll-y,0px);left:0;right:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none}
.chomp-page .arcade #chomp-console.is-play-view{position:fixed;z-index:1000;top:var(--play-top,0px);left:var(--play-left,0px);width:var(--play-width,100vw);height:var(--play-height,100dvh);max-width:none;max-height:none;margin:0;border:0;border-radius:0;box-shadow:none;background:#111738;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:44px minmax(0,1fr) 26px auto;grid-template-areas:"toolbar" "stage" "status" "controls";padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);overflow:hidden;overscroll-behavior:none;touch-action:manipulation}
.chomp-page .arcade #chomp-console.is-play-view[data-mode="playing"]{touch-action:none}
.is-play-view .play-toolbar{grid-area:toolbar;position:relative;z-index:40;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:0 14px;background:#1d2452;border-bottom:1px solid #7585be40}.play-toolbar>span{font-size:12px;letter-spacing:.1em;font-weight:750;color:#fff3b9}.play-toolbar b{color:#64f5ec}.play-toolbar small{display:inline-block;font-size:7px;letter-spacing:.12em;color:#a8bde8;margin-left:12px}.chomp-page .arcade .play-toolbar .quiet{min-height:40px;border:0;background:transparent;color:#e9edff;font-size:11px;padding:8px 10px}
.chomp-page .is-play-view .stage{grid-area:stage;z-index:1;height:100%;min-height:0;max-height:none;width:100%;align-self:stretch}
.chomp-page .is-play-view .hud-top{padding:9px 13px 10px;gap:6px;background:linear-gradient(#0b112af5,#0b112a90,transparent)}.chomp-page .is-play-view .score{font-size:20px;line-height:1.1;letter-spacing:0}.chomp-page .is-play-view .eyebrow{font-size:7px;letter-spacing:.08em}.chomp-page .is-play-view .livesbox{min-width:86px}.chomp-page .is-play-view .livesbox b{margin-left:4px}.chomp-page .is-play-view .lives{gap:4px;margin-top:6px}.chomp-page .is-play-view .lives span{width:9px;height:9px}.chomp-page .is-play-view .sector{display:none}
.chomp-page .is-play-view .maze-status{grid-area:status;padding:4px 12px;font-size:6px;letter-spacing:.02em;gap:8px;background:#151c40;min-width:0}.chomp-page .is-play-view .maze-status>span{white-space:nowrap;max-width:none}.chomp-page .is-play-view .maze-status>span:last-child{overflow:hidden;text-overflow:ellipsis}
.chomp-page .is-play-view .maze-touch{grid-area:controls;display:flex;min-height:0;padding:12px 24px 10px;gap:22px;justify-content:space-around;align-items:center;background:linear-gradient(135deg,#26295a,#242c61);border-top:1px solid #7084cc66}.is-play-view .joystick-unit{--stick-size:clamp(112px,calc(var(--play-height,100dvh) * .2),154px)}.is-play-view .control-strip{display:none}
.chomp-page .is-play-view .veil{position:fixed;z-index:30;inset:auto;top:calc(var(--play-top,0px) + 44px + env(safe-area-inset-top,0px));left:var(--play-left,0px);width:var(--play-width,100vw);height:calc(var(--play-height,100dvh) - 44px - env(safe-area-inset-top,0px));overflow-y:auto;overscroll-behavior:contain;align-items:safe center;padding:18px 20px calc(18px + env(safe-area-inset-bottom,0px));touch-action:pan-y;background:#0b1039d9}
.chomp-page .is-play-view .launch-panel{max-width:410px;padding:22px 24px;flex-shrink:0}.chomp-page .is-play-view .launch-panel h1{font-size:29px}.chomp-page .is-play-view .launch-panel p{font-size:12px;line-height:1.6;margin:12px 0 16px}.chomp-page .is-play-view .sound-note{margin-top:12px}.chomp-page .is-play-view .touch-tip{font-size:10px!important;margin:12px 0 0!important}.is-play-view .start-controls{display:none}.chomp-page .is-play-view .notice{top:48%;font-size:9px}
.chomp-page .arcade #chomp-console.is-play-view[data-orientation="landscape"]{grid-template-columns:minmax(122px,1fr) minmax(0,calc((var(--play-height,100dvh) - 122px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)) * .913 + 16px)) minmax(122px,1fr);grid-template-rows:44px minmax(0,1fr) 24px;grid-template-areas:"toolbar toolbar toolbar" "stick stage actions" "stick status actions"}
.chomp-page .is-play-view[data-orientation="landscape"] .maze-touch{display:contents}.is-play-view[data-orientation="landscape"] .joystick-unit{grid-area:stick;align-self:end;justify-self:center;margin:12px 10px 22px;--stick-size:clamp(100px,calc(var(--play-height,100dvh) * .39),154px)}.is-play-view[data-orientation="landscape"] .touch-panel{grid-area:actions;align-self:end;justify-self:center;margin:12px 14px 26px;max-width:170px}.is-play-view[data-orientation="landscape"] .touch-actions{flex-direction:column}.chomp-page .is-play-view[data-orientation="landscape"] .maze-status{font-size:5px;padding:4px 5px}.is-play-view[data-orientation="landscape"] .maze-status>span:last-child{display:none}.is-play-view[data-orientation="landscape"] .touch-panel p{font-size:9px}.chomp-page .is-play-view[data-orientation="landscape"] .launch-panel{padding:18px 23px}.chomp-page .is-play-view[data-orientation="landscape"] .sound-note{display:none}
@media(max-width:370px){.play-toolbar small{display:none}.chomp-page .is-play-view .maze-touch{padding:10px 16px;gap:16px}.is-play-view .joystick-unit{--stick-size:clamp(108px,calc(var(--play-height,100dvh) * .2),132px)}.is-play-view .touch-panel>b{font-size:11px}.chomp-page .is-play-view .launch-panel{padding:20px}.chomp-page .is-play-view .launch-panel h1{font-size:26px}}
@media(prefers-reduced-motion:reduce){.joystick-knob{transition:none}}
