@font-face{font-family:'Graduate';src:url('assets/fonts/Graduate-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--bg:#030b08;--panel:#081b13;--green:#2ed88b;--gold:#e7c37d;--ink:#f1f5ec;--muted:#abbfb3;--line:#294638;--display:Graduate,Georgia,serif;--body:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:radial-gradient(ellipse at 50% -20%,#16392a,transparent 55%),var(--bg);color:var(--ink);font:14px/1.5 var(--body)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:4px}button:disabled{cursor:wait;opacity:.6}[hidden]{display:none!important}.app{width:min(1520px,calc(100% - 36px));margin:0 auto;padding:15px 0 0}.hero{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:65px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none}.brand img{height:62px;width:62px;object-fit:contain}.brand small{display:block;font-size:10px;letter-spacing:.12em;color:var(--muted);margin-bottom:4px}.brand strong{font:clamp(17px,2vw,26px) var(--display)}.brand i{color:var(--green);font-style:normal}.development{border:1px solid #665737;border-radius:30px;padding:5px 10px;font-size:9px;letter-spacing:.1em;color:var(--gold);white-space:nowrap}
.toolbar{display:flex;align-items:center;justify-content:space-between;margin:14px 0;gap:14px}.equipment{display:flex;align-items:center;gap:8px}.equipment>span{font-size:10px;color:var(--muted);padding-left:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;border:1px solid #3c5446;border-radius:8px;padding:10px 17px;background:linear-gradient(#102d20,#092015);color:#e5f0e9;font:bold 11px/1.3 var(--body);letter-spacing:.025em;transition:background .18s,box-shadow .18s,transform .18s}.button:hover{background:#194b34;box-shadow:0 0 14px #26a96e25}.button:active{transform:translateY(1px)}.button.primary{background:linear-gradient(#259363,#116844);border-color:#52c795;box-shadow:inset 0 1px 0 #e7ffcf25}.button.gold{color:#251d0f;background:linear-gradient(#f6deb0,#d6ad60);border-color:#f6d494;box-shadow:inset 0 1px 0 #fff4d5}.button.quiet{background:transparent;border-color:#304237;color:#becbc2}.button[aria-pressed=true]{border-color:var(--gold);box-shadow:0 0 0 1px #e7c37d35}
.score-card{border:1px solid var(--line);border-radius:12px 12px 0 0;background:linear-gradient(100deg,#092317,#06160f);padding:10px 16px 9px}.score-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.eyebrow{display:block;font-size:9px;font-weight:bold;letter-spacing:.14em;color:var(--gold)}.score-heading strong{font-size:12px;font-weight:normal;color:#cfdcd4}.score-total{display:flex;align-items:center;gap:9px}.score-total small{font-size:9px;color:var(--muted)}.score-total b{font:32px/.9 var(--display);color:var(--gold)}.frames{display:grid;grid-template-columns:repeat(9,1fr) 1.22fr;gap:0;overflow-x:auto;scrollbar-width:thin}.frame{position:relative;min-width:47px;display:flex;align-items:center;flex-direction:column;border-right:1px solid #2a4435;padding:3px 7px;border-radius:3px}.frame:last-child{border-right:none}.frame.active{background:#0b5837;border:1px solid #45b97f;box-shadow:inset 0 -8px 20px #102e1980}.n{font-size:9px;color:#9fbdac}.rolls{display:flex;justify-content:flex-end;width:100%;height:17px;font-size:12px;font-weight:bold}.rolls>span{min-width:16px;text-align:center;border-right:1px solid #4c684f;border-bottom:1px solid #4c684f}.rolls>span:first-child{border-bottom:none}.ftotal{font-size:12px;color:#efdab0}
.game-card{border:1px solid var(--line);border-top:none;border-radius:0 0 12px 12px;overflow:hidden;background:#06120d}.stage{height:clamp(390px,54vw,610px);max-height:68vh;min-height:350px;position:relative;overflow:hidden;background:#06140e;touch-action:none;isolation:isolate;user-select:none}.stage canvas{display:block;width:100%;height:100%;position:absolute;inset:0}.world-label{position:absolute;top:24px;left:25px;display:flex;align-items:center;gap:13px;pointer-events:none;text-shadow:0 2px 12px #000,0 0 6px #000}.world-label>span{font-size:10px;letter-spacing:.04em;border:1px solid #d8b87755;border-radius:7px;padding:11px 9px;background:#07160f9c;color:var(--gold)}.world-label small{font-size:8px;letter-spacing:.19em;color:#f0d7a7}.world-label h1{font:clamp(16px,1.6vw,23px)/1.3 var(--display);margin:3px 0;color:#fff7e7}.fullscreen{position:absolute;right:20px;top:20px;font-size:24px!important;min-width:44px;background:#06160fa6!important}.shot-hud{position:absolute;left:24px;bottom:23px;display:flex;gap:20px;padding:13px 18px;border-radius:10px;background:#05160fec;border:1px solid #69805970;box-shadow:0 8px 30px #0004;pointer-events:none}.meter{width:73px}.meter span{font-size:8px;display:block;letter-spacing:.10em;color:#bcd3c2}.meter b{display:block;font:14px/1.7 var(--display);white-space:nowrap;color:#fbebc3}.meter i{display:block;height:3px;background:#274433;border-radius:8px;overflow:hidden}.meter em{height:100%;background:var(--green);display:block;width:0}.meter em.hot{background:#ffb052}.energy-state{position:absolute;bottom:31px;right:25px;font-size:9px;letter-spacing:.045em;background:#06150edb;border:1px solid #426752;border-radius:6px;padding:10px 13px;color:#ccdecf;pointer-events:none}.energy-state.charged{color:#ffe5ab;border-color:#dca24b;box-shadow:0 0 22px #ff901b44}.callout{position:absolute;top:33%;left:50%;transform:translate(-50%,-12px) scale(.98);pointer-events:none;opacity:0;font:clamp(22px,4.5vw,56px) var(--display);color:#fff6d3;white-space:nowrap;text-shadow:0 3px 8px #000,0 0 30px #fbbc4b80;transition:opacity .12s,transform .2s}.callout.show{opacity:1;transform:translate(-50%,0) scale(1)}.callout.power{color:#ffcb75;text-shadow:0 2px 12px #000,0 0 30px #e87d1a}.boot,.error-overlay{position:absolute;inset:0;background:radial-gradient(ellipse,#123827,#020906 70%);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;text-align:center;padding:25px;z-index:5}.boot strong{font:15px var(--display);color:var(--gold)}.boot span{font-size:12px;color:var(--muted)}.loader{width:28px;height:28px;border:2px solid #2c4939;border-top-color:var(--green);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-overlay>div{max-width:510px}.error-overlay h2{font:23px/1.35 var(--display)}.error-overlay p{color:var(--muted)}.game-bottom{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:10px 20px;border-top:1px solid var(--line)}.game-bottom p{margin:0;font-size:11px}.game-bottom b{display:block;font-weight:normal;color:#f3e4c1}.game-bottom p span{display:block;font-size:9px;color:#9fb5a7;margin-top:3px}.performance{font:9px monospace;white-space:nowrap;color:#8ea697}.hud{display:grid;grid-template-columns:repeat(6,1fr);border-block:1px solid var(--line);background:#081d13}.hud>span{padding:6px 10px;display:flex;justify-content:center;align-items:center;gap:9px;font-size:8px;letter-spacing:.06em;color:#a9bcb0;border-right:1px solid #274633}.hud b{font:14px var(--display);color:#ecf4e8}.hud .daily b{color:var(--gold)}.actions{display:flex;gap:8px;padding:11px 18px}.actions .button{flex:1;min-height:44px}
.settings{margin:14px 0 24px;border:1px solid var(--line);border-radius:9px;background:#091a11}.settings summary{padding:13px 18px;cursor:pointer;font-size:10px;font-weight:bold;letter-spacing:.06em}.settings summary span{float:right;color:var(--muted);font-size:9px}.settings-content{padding:0 18px 13px;color:var(--muted);font-size:11px;max-width:940px}.quality-buttons{display:flex;gap:8px}.dev-note,#fontStatus{color:#d6b471}.community{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.card{background:linear-gradient(140deg,#0b2519,#07170f);border:1px solid var(--line);border-radius:10px;padding:22px}.card h2{font:15px/1.4 var(--display);margin:12px 0}.card p,.empty{color:var(--muted);font-size:12px}.leader-row,.hall-row{display:flex;align-items:center;gap:13px;border-bottom:1px solid #294332;padding:8px 0}.leader-row>span,.hall-row>span{color:var(--gold)}.leader-row>div,.hall-row>div{flex:1}.leader-row small,.hall-row small{display:block;font-size:10px;color:var(--muted)}footer{display:flex;align-items:center;gap:12px;margin-top:25px;padding:18px 0;border-top:1px solid #223a2b;font-size:10px;color:#ccd8ce}footer img{width:45px;height:45px;object-fit:contain}footer small{letter-spacing:.09em;font-size:8px;color:#97ac9d}footer a{margin-left:auto;font-size:10px;color:var(--gold)}
.modal{position:fixed;inset:0;background:#000b;backdrop-filter:blur(10px);z-index:20;display:flex;align-items:center;justify-content:center;padding:24px;touch-action:pan-y}.selection-dialog{width:min(1280px,100%);max-height:93dvh;overflow-y:auto;border:1px solid #516445;border-radius:17px;background:radial-gradient(ellipse at 30% -20%,#19442e,#07170f 65%);box-shadow:0 30px 110px #0008}.selection-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:26px 30px 18px}.selection-dialog h2{font:clamp(20px,2.5vw,31px)/1.3 var(--display);margin:7px 0 0}.close{font-size:27px;line-height:1;min-width:44px;padding:6px}.tabs{display:flex;align-items:center;gap:8px;border-bottom:1px solid #31523b;padding:0 30px}.tabs button{min-height:44px;padding:9px 18px;background:none;color:#98b6a3;border:0;border-bottom:2px solid transparent;font:bold 11px Arial}.tabs button[aria-selected=true]{color:#f3dbac;border-bottom-color:#dfbc78}.tabs small{font:10px Arial;background:#274834;color:#cde2d1;padding:3px 6px;border-radius:12px;margin-left:5px}.tabs>span{margin-left:auto;color:#94bca3;font-size:9px;letter-spacing:.08em}.selection-intro{margin:17px 30px;color:#b4c9b9;font-size:12px}.world-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:0 30px 22px}.world-card{padding:0;text-align:left;background:#081a11;border:1px solid #31513b;border-radius:11px;overflow:hidden;color:var(--ink);transition:transform .18s,border-color .18s;position:relative}.world-card:hover{transform:translateY(-3px);border-color:var(--accent)}.world-card.active{border-color:var(--gold);box-shadow:0 0 0 1px #e7c37d55}.world-card.active .select-mark{color:var(--gold)}.world-card.active .select-mark::after{content:' ✓'}.world-art{height:116px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 60% 30%,var(--accent),transparent 78%),var(--sky)}.world-art:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 50%,#06150d88);pointer-events:none}.world-art img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;z-index:1}.world-number{position:absolute;z-index:3;top:10px;left:10px;background:#011009b5;border:1px solid #ddeccc40;border-radius:5px;color:#fff3d2;padding:2px 6px;font:10px var(--display)}.world-art i{position:absolute;inset:25% 28%;border:1px solid var(--second);border-radius:50%;transform:rotate(-30deg);box-shadow:0 0 25px var(--accent)}.world-art.world-neon i{border-radius:0;transform:rotate(45deg)}.world-art.world-ice i{border-radius:0;transform:rotate(35deg) skew(12deg);background:#fff3}.world-art.world-volcano i{border-radius:0;clip-path:polygon(50% 0,100% 100%,0 100%);background:var(--second)}.world-art.world-forest i{border-radius:50% 0;background:#1a5b32;transform:rotate(-38deg)}.world-caption{padding:12px}.world-caption>small{font-size:7px;letter-spacing:.06em;color:#adc8b6}.world-caption h3{font:13px/1.3 var(--display);margin:6px 0;color:#f3e8c9}.world-caption p{font-size:10px;line-height:1.55;color:#b5c7ba;min-height:47px;margin:8px 0}.select-mark{font-size:8px;font-weight:bold;letter-spacing:.05em;color:#86a891}.preview-status{font-size:10px;color:#91b99f;margin:0 30px 22px}.ball-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;padding:0 30px 28px}.skin-card{padding:18px 8px 15px;display:flex;flex-direction:column;align-items:center;background:linear-gradient(#133221,#07160e);border:1px solid #32553b;border-radius:11px;color:#eef2e7}.skin-card.active{border-color:var(--gold);box-shadow:0 0 0 1px #e7c37d44}.skin-art{position:relative;width:106px;height:106px;border-radius:50%;background-size:210% 105%;background-position:37% center;box-shadow:inset -16px -22px 27px #000b,inset 8px 7px 14px #fff6,0 12px 16px #0006}.skin-art:after{content:'';position:absolute;top:15%;left:18%;width:27%;height:13%;border-radius:50%;transform:rotate(-36deg);background:#fff7;filter:blur(3px)}.skin-art i,.skin-art i:before,.skin-art i:after{position:absolute;width:8px;height:10px;border-radius:50%;background:#010806;box-shadow:inset 0 1px 2px #000,0 1px 1px #eee4;z-index:2}.skin-art i{left:53%;top:24%;transform:rotate(-20deg)}.skin-art i:before,.skin-art i:after{content:'';top:14px;left:-9px}.skin-art i:after{left:8px}.skin-card h3{font:12px var(--display);margin:17px 0 7px}.skin-card small{color:#a1bdaa;font-size:10px}.result-dialog{position:relative;text-align:center;max-width:560px;width:100%;max-height:94dvh;overflow:auto;padding:32px;border:1px solid #9d8850;border-radius:18px;background:radial-gradient(ellipse at top,#19442e,#06140d 70%)}.result-dialog>.close{position:absolute;right:14px;top:14px}.result-logo{width:80px;height:80px;object-fit:contain}.result-dialog h2{font:26px var(--display);margin:15px 0}.result-score{font:84px/1.3 var(--display);color:var(--gold);text-shadow:0 0 35px #e2b15c35}.result-dialog p{color:#c6d3c7}.name-row{display:flex;gap:7px;margin:9px 0}.name-row input{background:#05130c;border:1px solid #426d4e;border-radius:7px;padding:10px 13px;color:white;width:100%;min-width:0}.result-dialog label{display:block;text-align:left;font-size:11px;color:var(--muted)}#nameStatus{min-height:24px;font-size:11px}.modal-actions{display:flex;justify-content:center;gap:8px;margin-top:17px}.stage:fullscreen{width:100vw;height:100vh;min-height:100vh;max-height:none}.stage:fullscreen .world-label{top:26px;left:26px}
@media(min-width:900px) and (max-height:900px){.app{padding-top:6px}.hero{min-height:54px}.brand img{height:47px;width:47px}.toolbar{margin:8px 0}.score-card{padding-top:7px;padding-bottom:6px}.score-heading{margin-bottom:3px}.stage{height:calc(100dvh - 320px);min-height:350px;max-height:560px}.world-label{top:19px}.actions{padding-top:8px;padding-bottom:8px}.game-bottom{padding:8px 15px}}
@media(max-width:1150px){.equipment>span{display:none}.community{grid-template-columns:1fr 1fr}.community>.card:last-child{grid-column:1/-1}.world-grid{grid-template-columns:repeat(4,1fr)}.world-caption h3{font-size:12px}.world-caption p{min-height:49px}.ball-grid{grid-template-columns:repeat(5,1fr)}}
@media(max-width:800px){.app{width:calc(100% - 18px);padding-top:6px}.brand small{font-size:7px}.brand strong{font-size:16px}.brand img{width:45px;height:45px}.development{font-size:7px;padding:4px 6px}.toolbar{gap:7px}.equipment{gap:6px}.button{padding:9px 12px;font-size:10px}.toolbar .button{padding:9px 10px}.stage{height:470px;min-height:360px;max-height:69dvh}.world-label{top:15px;left:14px;gap:8px}.world-label h1{font-size:17px}.world-label small{font-size:7px}.world-label>span{padding:8px 7px;font-size:9px}.fullscreen{top:13px;right:12px}.shot-hud{left:12px;bottom:14px;gap:12px;padding:9px 12px}.meter{width:61px}.meter b{font-size:12px}.energy-state{right:12px;bottom:91px;font-size:8px;padding:7px 9px}.game-bottom{padding:9px 12px;display:block}.game-bottom p{font-size:10px}.game-bottom p span{font-size:9px}.performance{display:block;margin-top:5px}.hud>span{flex-direction:column;gap:2px;padding:5px 2px;font-size:7px}.hud b{font-size:12px}.actions{padding:9px;gap:6px;flex-wrap:wrap}.actions .button{flex:1 1 42%;font-size:10px}.community{grid-template-columns:1fr}.community>.card:last-child{grid-column:auto}.modal{padding:9px}.selection-dialog{max-height:97dvh}.selection-dialog>header{padding:20px 16px 13px}.selection-dialog h2{font-size:21px}.tabs{padding:0 16px}.tabs>span{font-size:7px}.selection-intro{margin:14px 16px;font-size:11px}.world-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 16px 18px}.world-art{height:120px}.world-caption{padding:12px}.world-caption p{min-height:32px;font-size:11px}.world-caption h3{font-size:13px}.world-caption>small{font-size:8px}.ball-grid{grid-template-columns:repeat(2,1fr);padding:0 16px 20px}.skin-art{width:110px;height:110px}.skin-card h3{font-size:13px}.skin-card small{font-size:10px}.result-dialog{padding:24px 18px}.result-score{font-size:70px}.modal-actions{flex-direction:column}.preview-status{margin:0 16px 18px}.quality-buttons{flex-wrap:wrap}}
@media(max-height:540px) and (orientation:landscape){.stage{height:380px;max-height:none}.world-grid{grid-template-columns:repeat(4,1fr)}.selection-dialog{max-height:96dvh}.selection-dialog>header{padding:12px 20px}.selection-dialog h2{font-size:20px}.selection-intro{margin:10px 20px}.skin-art{width:80px;height:80px}.ball-grid{grid-template-columns:repeat(5,1fr)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}}

/* PRE3 UI iteration after the real (non-3D) tablet layout inspection. */
.world-caption>small{font-size:9px}.world-caption h3{font-size:15px}.world-caption p{font-size:12px;line-height:1.5;min-height:56px}.select-mark{font-size:10px}.skin-card h3{font-size:14px}.skin-card small{font-size:11px}.selection-intro{font-size:13px}.tabs button{font-size:12px}.world-caption{padding:14px}
@media(min-width:900px) and (max-height:900px){.stage{height:calc(100dvh - 380px)}}

/* V26 PRE3 — tablet-first immersion & preview responsiveness. */
.stage{overscroll-behavior:contain}
.world-art img{transition:opacity .18s ease}.world-card:active{transform:translateY(0) scale(.995)}
.preview-status{min-height:18px;font-variant-numeric:tabular-nums}
@media(min-width:900px) and (max-height:900px){
 .app{padding-top:4px}.hero{min-height:48px}.brand img{width:43px;height:43px}.brand small{margin-bottom:2px}.toolbar{margin:6px 0}.score-card{padding:6px 14px 5px}.score-heading{margin-bottom:2px}.score-total b{font-size:27px}
 .stage{height:calc(100dvh - 370px);min-height:420px;max-height:560px}.game-bottom{padding:7px 15px}.hud>span{padding-block:5px}.actions{padding-block:7px}
}
@media(min-width:900px) and (max-width:1350px) and (orientation:landscape){
 .world-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.world-art{height:104px}.world-caption{padding:11px}.world-caption h3{font-size:12px}.world-caption p{font-size:10px;min-height:46px}.select-mark{font-size:8px}
 .selection-dialog>header{padding:18px 24px 12px}.selection-intro{margin:12px 24px}.world-grid,.ball-grid{padding-left:24px;padding-right:24px}.preview-status{margin-left:24px}
}
@media(max-width:800px){.performance{white-space:normal;line-height:1.35}.stage{overscroll-behavior:none}}

/* PRE5: readable shared HUD; scene stays consistent across ten worlds. */
.meter{width:90px}.meter small{font-size:11px}.meter b{font-size:17px}.shot-hud{background:#06170fed;gap:20px;padding:13px 20px}.energy-state{font-size:11px;background:#06170fed}.hud b{font-size:17px}.hud>span{font-size:11px}.button{min-height:44px}.world-label h1{font-size:24px}.world-label small{font-size:10px}
.skin-art{width:126px;height:126px}.skin-card small{font-size:12px;line-height:1.5;text-align:center}.skin-card .profile-label{color:#f0d39a;font-weight:700}
@media(min-width:900px){.stage{height:590px;min-height:440px;max-height:66dvh}}
@media(min-width:900px) and (max-height:900px){.stage{height:470px;max-height:none}.hero{min-height:48px}.world-label h1{font-size:22px}.meter{width:77px}.shot-hud{gap:15px;padding:10px 15px}.world-caption h3{font-size:13px}.world-caption p{font-size:11px}}
@media(max-width:800px){.meter{width:68px}.meter b{font-size:15px}.meter small{font-size:10px}.energy-state{font-size:10px}.hud b{font-size:15px}.hud>span{font-size:9px}.world-label h1{font-size:18px}.shot-hud{gap:12px;padding:10px}}

.world-art:has(img[hidden]) i{display:none}.world-art:has(img[hidden])::before{content:'3D-Vorschau lädt …';position:absolute;inset:40% 5% auto;text-align:center;font:12px Arial;color:#fff;z-index:2}.world-art:has(img[hidden]){background:#132c22}

.skin-art.rendered{border-radius:50%;box-shadow:0 12px 20px #0005}.skin-art.rendered:after,.skin-art.rendered i{display:none}
/* PRE6 power state: let the 3D trail carry the spectacle; keep the label secondary. */
.callout.power{font-size:clamp(17px,2vw,27px);top:25%;letter-spacing:.055em;color:#ffd58a;text-shadow:0 2px 9px #000,0 0 18px #e87d1a99}

/* PRE8 visual-final pass: appearance only; no layout/interaction changes. */
#stage{box-shadow:inset 0 0 0 1px rgba(215,183,103,.13),0 18px 48px rgba(0,0,0,.28)}
#stage::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:4;background:radial-gradient(ellipse at 50% 74%,rgba(69,184,128,.028),transparent 48%),linear-gradient(180deg,rgba(255,214,132,.018),transparent 25%,rgba(0,0,0,.055));box-shadow:inset 0 0 70px rgba(0,0,0,.13)}
#stage canvas{position:relative;z-index:1}
.world-label,.hud-card,.throw-help{backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);box-shadow:0 10px 24px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.035)}
#callout{box-shadow:0 10px 30px rgba(0,0,0,.30),inset 0 0 0 1px rgba(222,183,87,.16);letter-spacing:.035em}
#callout.power{box-shadow:0 0 28px rgba(255,150,42,.16),0 10px 30px rgba(0,0,0,.3)}
.button,.game-card{box-shadow:0 8px 20px rgba(0,0,0,.14)}
@media(max-width:900px){#stage::after{box-shadow:inset 0 0 42px rgba(0,0,0,.10)}}


/* PRE9 graphic-final pass — appearance only. */
.hero,.toolbar,.score-card,.game-card,.community .card,.settings{border-color:rgba(205,171,92,.20)}
.hero{background:linear-gradient(180deg,rgba(8,35,24,.88),rgba(3,16,11,.78));box-shadow:inset 0 -1px rgba(210,180,104,.10)}
.development{font-family:var(--display);letter-spacing:.085em;color:#eedaa4;background:linear-gradient(135deg,#183c2d,#081a13);border-color:#b8954f66}
.world-label>span{font-family:var(--display);color:#f1d89b;border-color:#b8944f77;background:linear-gradient(160deg,#102d21e8,#05130ee8)}
.world-label h1,.score-heading strong,.card h2,.result-dialog h2,.selection-dialog h2{font-family:var(--display);font-weight:400;letter-spacing:.035em}
.shot-hud,.energy-state{border:1px solid rgba(197,167,94,.18);background:linear-gradient(145deg,rgba(4,26,17,.91),rgba(3,14,10,.86));box-shadow:0 12px 30px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.045)}
.meter i{background:linear-gradient(90deg,#07170f,#0e2c1d);box-shadow:inset 0 0 0 1px rgba(232,203,130,.09)}
.meter em{box-shadow:0 0 12px rgba(53,225,144,.28)}
#callout{font-family:var(--display);font-weight:400;letter-spacing:.06em;border:1px solid rgba(227,192,103,.16);background:linear-gradient(135deg,rgba(7,27,18,.88),rgba(6,13,10,.70));backdrop-filter:blur(7px)}
#callout.gold{font-size:clamp(22px,3vw,40px);animation:none;color:#ffe5a4;text-shadow:0 3px 9px #000,0 0 20px rgba(226,180,72,.36);padding:12px 22px}
#callout.power{font-size:clamp(17px,2vw,25px);color:#ffdda0;text-shadow:0 2px 8px #000,0 0 18px rgba(255,116,20,.48);background:linear-gradient(135deg,rgba(39,14,4,.72),rgba(8,16,10,.74))}
.button{border-color:rgba(190,159,83,.26);background:linear-gradient(180deg,rgba(17,48,35,.92),rgba(6,24,16,.95));box-shadow:inset 0 1px rgba(255,255,255,.045),0 8px 18px rgba(0,0,0,.18)}
.button.primary{background:linear-gradient(180deg,#1f7f56,#0d5b3c);border-color:#53d99b66}
.button.gold{background:linear-gradient(180deg,#896927,#5c4316);border-color:#e5bd6177;color:#fff0c8}
#stage{background:#050b08;box-shadow:inset 0 0 0 1px rgba(221,189,102,.16),0 24px 64px rgba(0,0,0,.34)}
#stage::after{background:radial-gradient(ellipse at 50% 70%,rgba(66,211,144,.025),transparent 42%),linear-gradient(180deg,rgba(255,225,160,.018),transparent 24%,transparent 77%,rgba(0,0,0,.075));box-shadow:inset 0 0 80px rgba(0,0,0,.16)}
.game-bottom,.hud{border-color:rgba(200,171,101,.17)}
.hud span{background:linear-gradient(180deg,rgba(15,42,30,.68),rgba(6,22,15,.62));border-color:rgba(181,153,82,.15)}
footer{border-top-color:rgba(212,180,96,.18)}
@media(max-width:800px){.world-label h1{font-size:20px}.world-label small{font-size:10px}.shot-hud{padding:9px 10px;gap:9px}.meter{width:70px}.button{min-height:46px}.hud{gap:6px}.hud span{padding:7px 6px}#stage::after{box-shadow:inset 0 0 46px rgba(0,0,0,.12)}}


/* V26 release UI */
.toolbar-slim{justify-content:flex-end;margin:8px 0}
.equipment-bottom{display:flex;align-items:center;gap:8px;padding:11px 18px;border-top:1px solid var(--line);background:linear-gradient(180deg,rgba(8,29,19,.92),rgba(5,19,13,.96))}
.equipment-bottom .button{flex:0 0 auto;min-width:150px}
.equipment-bottom>span{flex:1;text-align:right;font-size:10px;color:var(--muted);padding-left:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hud{grid-template-columns:repeat(5,1fr)}
.fullscreen{z-index:8;border-color:#d8b87766!important;background:rgba(4,20,13,.82)!important;backdrop-filter:blur(7px);box-shadow:0 8px 22px rgba(0,0,0,.35)!important}
.throw-charge{position:absolute;z-index:8;top:18px;left:50%;transform:translateX(-50%);width:min(360px,48%);padding:10px 13px;border:1px solid rgba(215,183,103,.55);border-radius:9px;background:linear-gradient(145deg,rgba(5,24,16,.94),rgba(3,12,8,.92));box-shadow:0 10px 26px rgba(0,0,0,.38);pointer-events:none}
.throw-charge span{display:inline-block;font-size:8px;letter-spacing:.12em;color:#c6d9cc}.throw-charge b{float:right;font:13px var(--display);color:#f7e6bd}.throw-charge i{display:block;clear:both;height:7px;margin-top:6px;border-radius:7px;overflow:hidden;background:#183426;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}.throw-charge em{display:block;height:100%;width:0;background:linear-gradient(90deg,#28c77d,#5fe7a5);box-shadow:0 0 14px rgba(69,224,145,.45);transition:width .035s linear}.throw-charge.ready{border-color:#f0b95f;box-shadow:0 0 26px rgba(255,145,31,.24),0 10px 26px rgba(0,0,0,.38)}.throw-charge.ready em{background:linear-gradient(90deg,#ff9b2f,#ffd477);box-shadow:0 0 18px rgba(255,151,37,.65)}.throw-charge.ready b{color:#ffd88b}
.play-area:fullscreen,.play-area.pseudo-fullscreen{background:#030b08;display:flex;flex-direction:column;overflow:hidden}
.play-area:fullscreen{width:100vw;height:100vh}.play-area.pseudo-fullscreen{position:fixed;inset:0;z-index:10000;width:100vw;height:100dvh}
.play-area:fullscreen .score-card,.play-area.pseudo-fullscreen .score-card{flex:0 0 auto;border-radius:0;padding-top:max(8px,env(safe-area-inset-top));z-index:2}
.play-area:fullscreen .game-card,.play-area.pseudo-fullscreen .game-card{flex:1 1 auto;min-height:0;border-radius:0;display:flex;flex-direction:column;border:0}
.play-area:fullscreen .stage,.play-area.pseudo-fullscreen .stage{flex:1 1 auto;height:auto!important;min-height:0!important;max-height:none!important}
.play-area:fullscreen .game-bottom,.play-area.pseudo-fullscreen .game-bottom,.play-area:fullscreen .hud,.play-area.pseudo-fullscreen .hud,.play-area:fullscreen .actions,.play-area.pseudo-fullscreen .actions,.play-area:fullscreen .equipment-bottom,.play-area.pseudo-fullscreen .equipment-bottom{flex:0 0 auto}
html.game-fullscreen,html.game-fullscreen body{overflow:hidden!important;overscroll-behavior:none}
@media(max-width:800px){.toolbar-slim{margin:5px 0}.equipment-bottom{padding:9px;gap:6px;flex-wrap:wrap}.equipment-bottom .button{flex:1 1 46%;min-width:0}.equipment-bottom>span{order:3;flex:1 0 100%;text-align:center;padding:2px 0 0}.throw-charge{top:12px;width:min(320px,56%);padding:8px 10px}.throw-charge span{font-size:7px}.throw-charge b{font-size:12px}.play-area:fullscreen .game-bottom,.play-area.pseudo-fullscreen .game-bottom{display:none}.play-area:fullscreen .equipment-bottom,.play-area.pseudo-fullscreen .equipment-bottom,.play-area:fullscreen .actions,.play-area.pseudo-fullscreen .actions,.play-area:fullscreen .hud,.play-area.pseudo-fullscreen .hud{display:none}.play-area:fullscreen .score-card,.play-area.pseudo-fullscreen .score-card{padding:6px 8px}.play-area:fullscreen .frames,.play-area.pseudo-fullscreen .frames{overflow-x:auto}.play-area:fullscreen .fullscreen,.play-area.pseudo-fullscreen .fullscreen{top:10px;right:10px}}

/* PRE9 corrective input/charge pass */
.throw-charge{top:auto!important;bottom:27%!important;width:min(260px,50%)!important;padding:5px 9px!important;background:rgba(3,14,9,.58)!important;border-color:rgba(80,204,139,.40)!important;box-shadow:0 7px 18px rgba(0,0,0,.24)!important;backdrop-filter:blur(4px)}
.throw-charge i{height:5px!important;margin-top:4px!important;background:rgba(16,47,32,.88)!important}.throw-charge em{background:linear-gradient(90deg,#25bb76,#58e19a)!important}.throw-charge.mid em{background:linear-gradient(90deg,#39cb7f,#e8d254,#ff9f35)!important;box-shadow:0 0 12px rgba(255,178,55,.42)!important}.throw-charge.ready{border-color:#f36d36!important;box-shadow:0 0 18px rgba(255,84,29,.26),0 7px 18px rgba(0,0,0,.24)!important}.throw-charge.ready em{background:linear-gradient(90deg,#ff9b31,#ff5b20)!important;box-shadow:0 0 16px rgba(255,74,22,.62)!important}.throw-charge.full{border-color:#ff3929!important}.throw-charge.full em{background:#ff2c1d!important;box-shadow:0 0 20px rgba(255,48,26,.9)!important}.throw-charge.full b{color:#ffb08b!important;text-shadow:0 0 10px rgba(255,52,26,.72)}
@media(max-width:520px) and (orientation:portrait){.throw-charge{bottom:27%!important;width:min(250px,60%)!important}.stage{touch-action:none!important;overscroll-behavior:none!important}}
