:root{--bg:#050914;--panel:#09152a;--line:rgba(255,255,255,.17);--text:#f8fbff;--muted:#aeb9cf;--red:#ff2851;--cyan:#44edff;--yellow:#ffd86b;--green:#54ff88}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:radial-gradient(circle at 25% 8%,rgba(255,40,81,.22),transparent 28%),radial-gradient(circle at 85% 20%,rgba(68,237,255,.18),transparent 30%),linear-gradient(135deg,#050914,#0e2040 58%,#04050b);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;touch-action:none}.cam-machine{height:100svh;display:flex;flex-direction:column;position:relative;isolation:isolate}.cam-machine:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.045) 0,rgba(255,255,255,.045) 1px,transparent 1px,transparent 5px);mix-blend-mode:screen;pointer-events:none;z-index:5}.cam-marquee{height:68px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px clamp(12px,3vw,28px);border-bottom:1px solid var(--line);background:rgba(3,6,14,.72);backdrop-filter:blur(14px);position:relative;z-index:10}.cam-title{text-align:center;text-transform:uppercase;line-height:.85;font-weight:1000;letter-spacing:-.06em;text-shadow:3px 3px 0 var(--red),-3px -3px 0 var(--cyan)}.cam-title span,.cam-title b{font-size:clamp(28px,4vw,52px)}.cam-title em{display:block;font-style:normal;font-size:10px;letter-spacing:.28em;color:var(--yellow);text-shadow:none;margin-top:8px}.cam-pill,.cam-big-btn{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff;text-decoration:none;font-weight:1000;padding:12px 15px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 22px rgba(68,237,255,.12);cursor:pointer}.cam-pill.is-on{background:var(--red)}.cam-screen{flex:1;min-height:0;display:grid;grid-template-columns:minmax(180px,360px) minmax(0,760px);gap:clamp(20px,5vw,70px);align-items:center;justify-content:center;padding:clamp(18px,4vw,52px);position:relative}.is-hidden{display:none!important}.cam-poster img{width:min(330px,30vw);max-height:70svh;display:block;box-shadow:0 34px 90px rgba(0,0,0,.6),0 0 54px rgba(255,40,81,.22);transform:rotate(-2deg)}.cam-kicker{color:var(--red);font-size:13px;letter-spacing:.22em;text-transform:uppercase;font-weight:1000}.cam-intro-copy h1,.cam-gameover h2{font-size:clamp(36px,6vw,82px);line-height:.92;margin:10px 0 18px;letter-spacing:-.07em}.cam-intro-copy p,.cam-gameover p{font-size:clamp(16px,2vw,24px);line-height:1.4;color:var(--muted);max-width:760px}.cam-meta{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.cam-meta span{padding:10px 13px;background:rgba(255,255,255,.08);border:1px solid var(--line);font-weight:900}.cam-big-btn{background:var(--red);border-color:transparent;min-height:56px;padding:0 24px;font-size:20px;box-shadow:0 0 36px rgba(255,40,81,.35)}.cam-screen-loader{grid-template-columns:180px minmax(0,520px)}.cam-screen-loader img{width:180px;box-shadow:0 24px 80px rgba(0,0,0,.6)}.cam-screen-loader h2{font-size:clamp(36px,6vw,64px);margin:8px 0;text-transform:uppercase;text-shadow:3px 3px 0 var(--red),-3px -3px 0 var(--cyan)}.cam-loadbar{height:12px;background:rgba(255,255,255,.1);border:1px solid var(--line);overflow:hidden;margin-top:18px}.cam-loadbar span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--cyan),var(--yellow),var(--red));animation:camLoad 2.1s linear forwards}@keyframes camLoad{to{width:100%}}.cam-play{flex:1;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:8px;padding:10px clamp(8px,2vw,18px) 12px;position:relative}.cam-hud{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;position:relative;z-index:8}.cam-hud div{background:rgba(255,255,255,.08);border:1px solid var(--line);padding:8px 10px;min-width:0}.cam-hud small{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;font-weight:1000;letter-spacing:.12em}.cam-hud b{font-size:clamp(18px,3vw,28px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cam-stage-wrap{min-height:0;display:grid;place-items:center;position:relative}.cam-stage-wrap canvas{display:block;max-width:min(100%,calc((100svh - 192px)*.895));max-height:calc(100svh - 192px);width:auto;height:auto;aspect-ratio:17/19;background:#020610;border:10px solid #0e1830;box-shadow:0 0 0 1px rgba(255,255,255,.15),0 24px 80px rgba(0,0,0,.55),0 0 48px rgba(68,237,255,.14);touch-action:none}.cam-mobile-controls{display:grid;grid-template-columns:64px 64px 64px;grid-template-areas:". up ." "left down right";justify-content:center;gap:7px;position:relative;z-index:20}.cam-mobile-controls button{width:64px;height:44px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.1);color:#fff;font-size:20px;font-weight:1000;border-radius:0}.cam-mobile-controls [data-dir="up"]{grid-area:up}.cam-mobile-controls [data-dir="left"]{grid-area:left}.cam-mobile-controls [data-dir="down"]{grid-area:down}.cam-mobile-controls [data-dir="right"]{grid-area:right}.cam-help{text-align:center;color:var(--muted);font-size:12px;font-weight:800}.cam-gameover{max-width:860px;margin:auto;text-align:center}.cam-final-score{font-size:clamp(62px,14vw,132px);font-weight:1000;line-height:.85;color:#fff;text-shadow:5px 5px 0 var(--red),-5px -5px 0 var(--cyan)}.cam-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:20px 0}.cam-scores{max-width:680px;margin:0 auto;display:grid;gap:6px}.cam-score-row{display:grid;grid-template-columns:44px minmax(0,1fr) 90px 84px;gap:8px;align-items:center;text-align:left;background:rgba(255,255,255,.08);border:1px solid var(--line);padding:8px 10px}.cam-score-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cam-score-row small{color:var(--muted)}@media(max-width:760px){.cam-marquee{height:58px;padding:8px}.cam-title span,.cam-title b{font-size:29px}.cam-title em{display:none}.cam-pill{padding:8px 10px;min-height:38px}.cam-screen{grid-template-columns:1fr;text-align:center;padding:14px 14px 24px}.cam-poster{display:none}.cam-intro-copy h1{font-size:clamp(32px,12vw,54px)}.cam-meta{justify-content:center}.cam-play{padding:8px 8px 8px;gap:6px}.cam-hud{gap:5px}.cam-hud div{padding:6px}.cam-hud small{font-size:9px}.cam-hud b{font-size:16px}.cam-stage-wrap canvas{border-width:6px;max-height:calc(100svh - 196px);max-width:min(100%,calc((100svh - 196px)*.895))}.cam-mobile-controls{grid-template-columns:54px 54px 54px;gap:5px}.cam-mobile-controls button{width:54px;height:39px;font-size:17px}.cam-help{display:none}.cam-score-row{grid-template-columns:36px minmax(0,1fr) 70px;}.cam-score-row small:last-child{display:none}}@media(max-height:680px){.cam-marquee{height:50px}.cam-title span,.cam-title b{font-size:24px}.cam-play{gap:4px}.cam-stage-wrap canvas{max-height:calc(100svh - 170px);max-width:min(100%,calc((100svh - 170px)*.895))}.cam-mobile-controls button{height:34px}.cam-help{display:none}.cam-screen{padding:10px}.cam-screen-loader{grid-template-columns:90px 1fr}.cam-screen-loader img{width:90px}}


/* v31: Leben-Hinweis und getrennte Arcade-Audio-Schalter */
.cam-audio-panel{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.cam-audio-panel .cam-pill{padding:10px 12px;min-height:40px;font-size:14px}.cam-audio-panel .cam-pill.is-on{background:var(--red);border-color:transparent;box-shadow:0 0 24px rgba(255,40,81,.36)}.cam-stage-wrap{position:relative}.cam-life-message{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.94);z-index:30;min-width:min(460px,86vw);padding:20px 24px;background:rgba(3,6,18,.92);border:2px solid var(--red);box-shadow:0 0 40px rgba(255,40,81,.4),0 24px 90px rgba(0,0,0,.6);text-align:center;font-weight:1000;font-size:clamp(24px,6vw,54px);line-height:1;text-transform:uppercase;letter-spacing:-.05em;color:#fff;text-shadow:3px 3px 0 var(--red),-3px -3px 0 var(--cyan);opacity:0;visibility:hidden;pointer-events:none;transition:.15s ease}.cam-life-message small{display:block;margin-top:10px;font-size:clamp(12px,3vw,18px);letter-spacing:.18em;color:var(--yellow);text-shadow:none}.cam-life-message.is-active{opacity:1;visibility:visible;transform:translate(-50%,-50%) scale(1)}
@media(max-width:720px){.cam-marquee{height:auto;min-height:64px;align-items:center}.cam-title em{display:none}.cam-audio-panel{gap:5px}.cam-audio-panel .cam-pill{font-size:12px;padding:8px 9px;min-height:34px}.cam-pill{padding:9px 11px}.cam-title span,.cam-title b{font-size:clamp(24px,7vw,36px)}}
@media(max-width:460px){.cam-audio-panel{position:absolute;right:8px;bottom:-42px;z-index:15}.cam-play{padding-top:46px}.cam-stage-wrap canvas{max-height:calc(100svh - 236px)}}


/* v33: Power-/Leben-Meldungen als kompakter HUD-Toast statt Bildschirmblocker. */
.cam-life-message{left:50%!important;top:10px!important;bottom:auto!important;transform:translate(-50%,-12px) scale(.98)!important;min-width:0!important;width:auto!important;max-width:min(420px,calc(100% - 24px))!important;padding:10px 16px!important;border-width:1px!important;border-color:rgba(255,216,107,.82)!important;background:rgba(3,6,18,.82)!important;box-shadow:0 0 24px rgba(255,216,107,.26),0 12px 38px rgba(0,0,0,.48)!important;font-size:clamp(15px,3.4vw,22px)!important;line-height:1.05!important;letter-spacing:.02em!important;text-shadow:2px 2px 0 rgba(255,40,81,.75),-2px -2px 0 rgba(68,237,255,.55)!important;white-space:nowrap;}
.cam-life-message small{margin-top:4px!important;font-size:clamp(9px,2.4vw,12px)!important;letter-spacing:.14em!important;color:var(--yellow)!important;white-space:nowrap;}
.cam-life-message.is-active{transform:translate(-50%,0) scale(1)!important;}
@media(max-width:520px){.cam-life-message{top:6px!important;max-width:calc(100% - 16px)!important;padding:8px 10px!important;font-size:14px!important}.cam-life-message small{font-size:9px!important}}
