/* Zombie Survival: lightweight native-style presentation. Animations run only on menu overlays. */
#start{background:radial-gradient(ellipse at 50% 18%,#244b3aeb,#0b1925f2 62%,#08121df8)}
#start:before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(165deg,transparent 0 48px,#abf7c006 49px 50px),radial-gradient(circle at 12% 14%,#b3ff7a18 0 3px,transparent 4px),radial-gradient(circle at 86% 78%,#78f1b018 0 5px,transparent 6px);animation:zappFloat 14s ease-in-out infinite alternate}
#start .panel{position:relative;border:1px solid #a8f5b646;border-radius:24px;background:linear-gradient(145deg,#142d31f4,#0b1a27f5);box-shadow:0 0 0 5px #0d292640,0 28px 90px #031018ca,inset 0 1px #c9ffbd22;padding:clamp(20px,4vw,34px);width:min(94vw,475px);max-height:calc(100dvh - 18px);overflow:auto;touch-action:pan-y}
#start .panel:before{content:"ZONE 01 / INCOMING HORDE";display:block;text-align:left;color:#a4f7bd;font-size:10px;letter-spacing:2.2px;font-weight:900;border-bottom:1px solid #b1f9b12b;padding-bottom:12px;margin-bottom:14px}
#start .eyebrow{letter-spacing:3.5px;color:#78e6c7;font-weight:900}
#start h1{font-size:clamp(42px,9vw,66px);line-height:.91;letter-spacing:-2.5px;text-shadow:0 0 38px #88eaa644;margin:14px 0 18px}
#start h1:first-letter{color:#c9ff82}
#start .panel>p{font-size:13px;line-height:1.52;color:#d4e6df;max-width:370px;margin:0 auto 16px}
#start .primary{background:linear-gradient(110deg,#c7ff82,#6ff0b9);border:1px solid #e5ffca;color:#09281d;border-radius:14px;box-shadow:0 6px 0 #346749,0 12px 25px #040d1266;letter-spacing:1.4px;font-weight:1000;min-height:53px;transition:transform .15s,box-shadow .15s}
#start .primary:active{transform:translateY(4px);box-shadow:0 2px 0 #346749,0 5px 14px #040d1266}
.zapp-progress{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px auto 16px;max-width:400px;text-align:left}
.zapp-stat{border:1px solid #7ec7a43d;border-radius:12px;background:#0a1d23bd;padding:9px 12px}
.zapp-stat small{display:block;color:#a3c9bf;font:800 9px system-ui;letter-spacing:1.1px;margin-bottom:3px}
.zapp-stat strong{color:#d9ffba;font-size:19px;letter-spacing:.3px}
.zapp-achievements{margin:10px 0;border-top:1px solid #b1f9b128;padding-top:12px}
.zapp-achievements h3{display:flex;justify-content:space-between;align-items:center;color:#e9ffe2;font:900 11px system-ui;letter-spacing:1px;margin:0 0 9px;text-transform:uppercase}
.zapp-achievements h3 span{color:#99dbb0}
.zapp-medals{display:flex;gap:6px;justify-content:center;flex-wrap:wrap}
.zapp-medal{font:700 10px system-ui;color:#b5c7ba;border:1px solid #70837a45;border-radius:10px;background:#13242a;padding:7px 9px;opacity:.62}
.zapp-medal.unlocked{color:#dcffbc;background:#28503a;border-color:#a0ff9b8c;opacity:1}
.zapp-achievement-toast{position:fixed;z-index:80;top:calc(174px + env(safe-area-inset-top));left:50%;transform:translateX(-50%) translateY(-12px);opacity:0;pointer-events:none;min-width:210px;max-width:85vw;padding:12px 17px;color:#ebffda;background:#15392e;border:1px solid #bafa85;border-radius:13px;box-shadow:0 8px 32px #020b0cc7;text-align:center;font:900 13px system-ui;letter-spacing:.2px;transition:opacity .24s,transform .24s}
.zapp-achievement-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.zapp-achievement-toast small{display:block;color:#9ff3bd;letter-spacing:1.5px;font-size:9px;margin-bottom:4px}
#upgrade .panel,#cleared .panel,#end .panel,#paused .panel{border:1px solid #78cfad64;border-radius:22px;background:linear-gradient(145deg,#172b31ef,#0b1724f5);box-shadow:0 20px 65px #000a;padding:clamp(20px,4vw,30px)}
#upgrade .choice{transition:transform .12s,border-color .12s}
#upgrade .choice:active{transform:scale(.98)}
@keyframes zappFloat{from{transform:translateY(-9px)}to{transform:translateY(8px)}}
@media(prefers-reduced-motion:reduce){#start:before,.zapp-achievement-toast{animation:none;transition:none}}
@media(max-height:700px){#start .panel{padding:15px}#start h1{font-size:clamp(33px,8vh,51px);margin:8px 0}#start .panel>p{font-size:11px;line-height:1.3;margin-bottom:8px}.zapp-progress{margin:8px auto}.zapp-stat{padding:7px 10px}.zapp-achievements{margin:6px 0;padding-top:7px}.zapp-medal{padding:5px 7px}}
