:root{
 --green:#9cff25;--green2:#45ff55;--pink:#ff2aa3;--gold:#ffd633;
 --bg:#020503;--panel:rgba(6,12,8,.86);--text:#f6fff2;--muted:#93a099;
}
*{box-sizing:border-box}
html,body,#app{margin:0;width:100%;height:100%;min-height:100dvh;overflow:hidden;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
body{touch-action:none;-webkit-user-select:none;user-select:none}
.screen{display:none;position:absolute;inset:0;min-height:100dvh}
.screen.active{display:block}
.intro-bg,.forest-bg{position:absolute;inset:0;background:url('/assets/forest.jpg') center/cover no-repeat;transform:scale(1.03)}
.intro-bg{filter:saturate(1.18) contrast(1.06)}
.shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.25) 38%,rgba(1,4,2,.92) 86%,#010302)}
.intro-content{position:absolute;left:18px;right:18px;bottom:max(18px,env(safe-area-inset-bottom));text-align:center;display:flex;flex-direction:column;align-items:center;text-shadow:0 3px 16px #000}
.tag{font-weight:900;letter-spacing:.22em;font-size:10px;color:var(--green);text-transform:uppercase}
h1{font-size:clamp(40px,12vw,70px);line-height:.82;margin:10px 0 7px;font-style:italic;font-weight:1000;letter-spacing:-.065em}
h1 span{color:var(--pink);text-shadow:0 0 22px rgba(255,42,163,.55)}
.lead{font-size:16px;line-height:1.3;margin:4px 0 13px}
.feature-row{width:min(100%,430px);display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:0 0 10px}
.feature-row>div{border:1px solid rgba(156,255,37,.23);background:rgba(3,8,5,.77);border-radius:12px;padding:8px}
.feature-row b{display:block;color:var(--green);font-size:17px}.feature-row small{font-size:7px;letter-spacing:.13em;color:var(--muted)}
.auth-box{width:min(100%,430px);min-height:34px;margin:0 0 8px;padding:8px 12px;border-radius:10px;background:rgba(3,8,5,.77);border:1px solid rgba(255,255,255,.08);font-size:11px;color:#dbe8dd}
.auth-box.ok{border-color:rgba(156,255,37,.35);color:#cfffbd}.auth-box.err{border-color:rgba(255,42,163,.45);color:#ffc5e6}
.primary,.ghost{width:min(100%,430px);height:54px;border-radius:14px;font-weight:1000;letter-spacing:.09em;font-size:15px}
.primary{border:0;color:#071006;background:linear-gradient(#c0ff3d,#78ef1c);box-shadow:0 0 30px rgba(156,255,37,.26),inset 0 -3px rgba(0,0,0,.18)}
.primary:disabled{opacity:.45;filter:grayscale(.5)}
.ghost{height:46px;margin-top:8px;color:#e9ffe2;background:rgba(4,9,6,.85);border:1px solid rgba(156,255,37,.22)}
.hidden{display:none!important}.micro{margin-top:8px;font-size:8px;color:#7f8b82;max-width:420px}

#gameScreen{background:#020503}
#arena{position:absolute;inset:0;overflow:hidden}
.forest-bg{filter:saturate(1.22) contrast(1.05) brightness(.68)}
.forest-overlay{position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,transparent 10%,rgba(0,0,0,.05) 50%,rgba(0,0,0,.63) 100%),linear-gradient(180deg,rgba(1,7,3,.12),rgba(0,0,0,.16))}
#game{position:absolute;inset:0;width:100%;height:100%;display:block}
.hud{position:absolute;z-index:5;left:0;right:0;top:0;padding:max(10px,env(safe-area-inset-top)) 10px 8px;display:grid;grid-template-columns:78px 1fr 78px;gap:8px;background:linear-gradient(#010302 0,rgba(1,3,2,.72) 70%,transparent)}
.hud-card{height:52px;background:rgba(4,10,6,.84);border:1px solid rgba(156,255,37,.34);border-radius:12px;padding:6px 8px;box-shadow:0 0 18px rgba(75,255,80,.08)}
.hud-card.right{text-align:right}.hud-card small{display:block;font-size:8px;letter-spacing:.14em;color:#92a098}.hud-card strong{font-size:24px;line-height:1}
.hud-mid{display:flex;flex-direction:column;justify-content:center;gap:7px}.combo{text-align:center;color:var(--pink);font-weight:1000;font-size:12px;letter-spacing:.07em;text-shadow:0 0 12px rgba(255,42,163,.35)}
.bar{height:7px;background:#121a13;border-radius:9px;overflow:hidden;border:1px solid rgba(255,255,255,.06)}.bar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,var(--pink),var(--green));transform-origin:left}
.bottom-hud{position:absolute;z-index:5;left:10px;right:10px;bottom:max(8px,env(safe-area-inset-bottom));display:flex;justify-content:space-between;gap:8px;font-size:9px;font-weight:900;letter-spacing:.07em;color:#c8d7cb;text-shadow:0 2px 8px #000}
.flash{position:absolute;z-index:6;left:50%;top:48%;transform:translate(-50%,-50%);font-size:30px;font-weight:1000;opacity:0;text-shadow:0 3px 18px #000;pointer-events:none}
.flash.show{animation:pop .55s ease-out}@keyframes pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.18)}100%{opacity:0;transform:translate(-50%,-70%) scale(.95)}}

.result-screen{background:radial-gradient(circle at 50% 10%,#183d1a,#030604 58%);overflow:auto;padding:calc(12px + env(safe-area-inset-top)) 16px calc(18px + env(safe-area-inset-bottom))}
.result-card{min-height:100%;max-width:500px;margin:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.bird{width:min(42vw,180px);height:min(42vw,180px);object-fit:contain;filter:drop-shadow(0 0 20px rgba(156,255,37,.38))}
h2{font-size:34px;margin:5px 0 13px;font-weight:1000;letter-spacing:-.055em}
.score-big{font-size:64px;line-height:.8;font-weight:1000;color:var(--green);text-shadow:0 0 22px rgba(156,255,37,.32)}
.score-big small{display:block;margin-top:15px;font-size:8px;letter-spacing:.25em;color:var(--muted)}
.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;width:min(100%,420px);margin:22px 0 10px}.result-grid>div{padding:10px 5px;border-radius:12px;background:#09100b;border:1px solid rgba(156,255,37,.16)}.result-grid b{display:block;font-size:22px}.result-grid small{display:block;margin-top:3px;font-size:7px;letter-spacing:.1em;color:#87948a}
.reward-box,.best-box{width:min(100%,420px);border-radius:12px;padding:11px;margin:5px 0;font-size:12px;background:#09100b;border:1px solid rgba(255,255,255,.07)}.reward-box{color:#dfffcf;border-color:rgba(156,255,37,.24)}.best-box{color:#ffc6e6;border-color:rgba(255,42,163,.2)}
@media(min-width:720px){.intro-content{bottom:32px}.hud{padding-left:24px;padding-right:24px}}
