:root{--amber: #ffb547;--amber-hot: #ffd98a;--teal: #2dd4bf;--cyan: #5eead4;--pink: #f472b6;--purple: #c084fc;--indigo: #818cf8;--green: #4ade80;--red: #ff5470;--gold: #ffd700;--bg-dark: #05070f;--panel-bg: rgba(8, 12, 24, .82);--panel-border: rgba(45, 212, 191, .35);--ink: #eafff9}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:var(--bg-dark);color:var(--ink);font-family:Orbitron,sans-serif;cursor:default;user-select:none;-webkit-user-select:none}#game-container{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}canvas{display:block;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.hidden{opacity:0!important;visibility:hidden!important;pointer-events:none!important}#hud{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;transition:opacity .4s ease;padding:22px 30px}.hud-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.hud-section{display:flex;flex-direction:column;gap:6px}.hud-center{align-items:center}.hud-right{align-items:flex-end}.hud-label{font-family:"Press Start 2P",monospace;font-size:9px;letter-spacing:2px;color:var(--cyan);text-shadow:0 0 8px rgba(94,234,212,.6);opacity:.85}.hud-value{font-weight:900;letter-spacing:1px}.dino-name{font-size:22px;color:var(--amber);text-shadow:-1.5px -1.5px 0 rgba(0,0,0,.9),1.5px -1.5px 0 rgba(0,0,0,.9),-1.5px 1.5px 0 rgba(0,0,0,.9),1.5px 1.5px 0 rgba(0,0,0,.9),0 0 14px rgba(0,0,0,.55);transition:color .3s}.score-val{font-size:38px;color:var(--ink);text-shadow:0 0 12px rgba(234,255,249,.5);font-variant-numeric:tabular-nums}.hud-sub{font-family:"Press Start 2P",monospace;font-size:8px;letter-spacing:1px;color:#eafff999}.hearts{display:flex;gap:5px;margin-top:2px}.heart{width:16px;height:16px;background:var(--red);clip-path:polygon(50% 100%,8% 45%,8% 25%,28% 8%,50% 22%,72% 8%,92% 25%,92% 45%);box-shadow:0 0 10px #ff5470cc;transition:transform .2s,opacity .3s,filter .3s}.heart.lost{filter:grayscale(1) brightness(.4);box-shadow:none;opacity:.5;transform:scale(.8)}.combo-panel{display:flex;align-items:baseline;gap:6px;margin-top:2px;transition:opacity .2s,transform .2s}.combo-count{font-size:20px;font-weight:900;color:var(--pink);text-shadow:0 0 12px rgba(244,114,182,.8)}.combo-tag{font-family:"Press Start 2P",monospace;font-size:8px;color:#f472b6b3;letter-spacing:1px}.combo-pop{animation:comboPop .3s ease}@keyframes comboPop{0%{transform:scale(1.6)}to{transform:scale(1)}}.evo-track{width:150px;height:10px;background:#2dd4bf1f;border:1px solid rgba(45,212,191,.3);border-radius:6px;overflow:hidden}.evo-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--teal),var(--amber));box-shadow:0 0 10px #2dd4bfb3;transition:width .3s ease}.powerup-tray{position:absolute;bottom:26px;left:50%;transform:translate(-50%);display:flex;gap:12px}.powerup-chip{display:flex;align-items:center;gap:8px;padding:7px 14px;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:20px;font-family:"Press Start 2P",monospace;font-size:9px;letter-spacing:1px;box-shadow:0 0 16px #2dd4bf40}.powerup-chip .chip-icon{font-size:16px;line-height:1}.powerup-chip .chip-time{width:42px;height:5px;border-radius:3px;background:#ffffff26;overflow:hidden}.powerup-chip .chip-time>i{display:block;height:100%;background:var(--amber-hot);box-shadow:0 0 8px var(--amber)}.banner{position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);font-family:"Press Start 2P",monospace;font-size:30px;letter-spacing:3px;color:var(--amber-hot);-webkit-text-stroke:2px rgba(6,8,16,.92);paint-order:stroke fill;text-align:center;pointer-events:none;transition:opacity .25s ease}.banner.show{animation:bannerPop .5s cubic-bezier(.2,1.4,.4,1) both}@keyframes bannerPop{0%{transform:translate(-50%,-50%) scale(.4);opacity:0}60%{transform:translate(-50%,-50%) scale(1.12);opacity:1}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#08101c8c,#03050ceb 80%);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:opacity .5s ease,visibility .5s ease}.overlay-content{position:relative;z-index:2;max-width:560px;width:90%;padding:40px 44px;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:16px;box-shadow:0 0 40px #2dd4bf38,inset 0 0 24px #2dd4bf0f;text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px}.overlay-content.compact{gap:22px;padding:36px 40px}.logo-container{display:flex;flex-direction:column;align-items:center;gap:2px}.logo-kicker{font-family:"Press Start 2P",monospace;font-size:16px;letter-spacing:6px;margin-bottom:8px;color:var(--amber-hot);text-shadow:0 0 10px var(--amber),0 0 24px rgba(255,181,71,.5)}.logo-main{font-size:58px;font-weight:900;letter-spacing:6px;line-height:.95;color:var(--cyan);text-shadow:0 0 12px var(--teal),0 0 30px rgba(45,212,191,.6),0 4px 0 rgba(0,0,0,.3)}.logo-main.logo-accent{color:var(--amber);text-shadow:0 0 12px var(--amber),0 0 30px rgba(255,181,71,.6),0 4px 0 rgba(0,0,0,.3)}.logo-sub{font-family:"Press Start 2P",monospace;font-size:12px;letter-spacing:4px;margin-top:10px;color:var(--pink);text-shadow:0 0 12px rgba(244,114,182,.7)}.game-teaser{font-family:"Press Start 2P",monospace;font-size:9px;letter-spacing:2px;color:#eafff9b3}.best-score-panel,.best-score-line{font-family:"Press Start 2P",monospace;font-size:10px;color:var(--gold);text-shadow:0 0 10px rgba(255,215,0,.5);letter-spacing:1px}.arcade-btn{font-family:"Press Start 2P",monospace;font-size:15px;letter-spacing:2px;padding:16px 30px;color:var(--teal);background:transparent;border:3px solid var(--teal);border-radius:8px;cursor:pointer;pointer-events:auto;text-shadow:0 0 8px rgba(45,212,191,.6);box-shadow:0 0 16px #2dd4bf40,inset 0 0 12px #2dd4bf14;transition:all .15s ease}.arcade-btn:hover,.arcade-btn.gamepad-focus{background:var(--teal);color:#04121a;text-shadow:none;box-shadow:0 0 28px #2dd4bfb3;transform:translateY(-2px)}.sound-toggle{font-size:11px;padding:10px 20px;border-color:var(--amber);color:var(--amber);box-shadow:0 0 14px #ffb54740}.sound-toggle:hover{background:var(--amber);color:#1a0e02;box-shadow:0 0 24px #ffb547b3}.btn-red{border-color:var(--red);color:var(--red);box-shadow:0 0 16px #ff54704d}.btn-red:hover{background:var(--red);color:#1a0008;box-shadow:0 0 28px #ff5470b3}.menu-btn-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.credits-toggle{font-size:11px;padding:10px 20px;border-color:var(--pink);color:var(--pink);box-shadow:0 0 14px #f472b640}.credits-toggle:hover{background:var(--pink);color:#1a0010;box-shadow:0 0 24px #f472b6b3}.credits-body{display:flex;flex-direction:column;align-items:center;gap:4px}.credits-head{font-family:"Press Start 2P",monospace;font-size:9px;letter-spacing:2px;color:var(--cyan);text-shadow:0 0 8px rgba(94,234,212,.5);margin-bottom:4px}.credits-head-2{margin-top:16px}.credits-name{font-size:24px;font-weight:900;letter-spacing:1px;color:var(--amber);text-shadow:0 0 12px rgba(255,181,71,.6)}.credits-sub{font-size:13px;color:#eafff9cc;letter-spacing:1px}.credits-link{font-size:12px;color:var(--teal);letter-spacing:.5px}.credits-license{font-family:"Press Start 2P",monospace;font-size:7px;line-height:1.7;color:#eafff980;letter-spacing:1px;margin-top:8px}.controls-panel{width:100%;margin-top:4px}.controls-grid{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;text-align:left;font-size:11px}.control-key{font-family:"Press Start 2P",monospace;font-size:8px;color:var(--amber);text-align:right;letter-spacing:1px}.control-desc{color:#eafff9bf;font-size:12px}.music-credit{font-family:"Press Start 2P",monospace;font-size:7px;color:#eafff959;letter-spacing:1px;line-height:1.6}.screen-title{font-size:44px;font-weight:900;letter-spacing:5px;color:var(--cyan);text-shadow:0 0 14px var(--teal),0 0 32px rgba(45,212,191,.5)}.text-red{color:var(--red);text-shadow:0 0 14px var(--red),0 0 32px rgba(255,84,112,.5)}.results-panel{display:flex;flex-direction:column;gap:12px;align-items:center;width:100%}.results-panel p{font-family:"Press Start 2P",monospace;font-size:10px;color:#eafff9b3;letter-spacing:1px}.final-form{font-family:"Press Start 2P",monospace;font-size:11px;color:var(--amber);letter-spacing:1px}.final-score{font-size:30px;font-weight:900;color:var(--ink);letter-spacing:2px;text-shadow:0 0 12px rgba(234,255,249,.4)}.new-record{font-family:"Press Start 2P",monospace;font-size:13px;color:var(--gold);text-shadow:0 0 14px var(--gold);letter-spacing:2px;animation:recordPulse .8s ease-in-out infinite alternate}@keyframes recordPulse{0%{opacity:.6}to{opacity:1}}.result-stats{display:flex;gap:26px;margin-top:4px}.result-stat{display:flex;flex-direction:column;gap:5px}.result-stat-label{font-family:"Press Start 2P",monospace;font-size:7px;color:var(--cyan);letter-spacing:1px}.result-stat-val{font-size:17px;font-weight:700;color:var(--ink)}.scanlines{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:linear-gradient(#08101000 50%,#0000002e 50%);background-size:100% 4px;opacity:.5;mix-blend-mode:multiply}.vignette{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.6) 100%)}#game-container.hit-flash{animation:hitFlash .3s ease}@keyframes hitFlash{0%{filter:none}25%{filter:brightness(1.4) saturate(1.6) drop-shadow(0 0 30px var(--red))}to{filter:none}}.screen-shake{animation:shake .3s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translate3d(-2px,0,0)}20%,80%{transform:translate3d(4px,0,0)}30%,50%,70%{transform:translate3d(-7px,0,0)}40%,60%{transform:translate3d(7px,0,0)}}@media (max-width: 768px){.logo-main{font-size:38px}.screen-title{font-size:30px}.overlay-content{padding:28px 22px}.controls-panel{display:none}#hud{padding:12px 14px}.hud-label{display:none}.hud-top{gap:10px;align-items:center}.hud-left,.hud-right{gap:4px}.dino-name{font-size:13px}.score-val{font-size:24px}.hud-sub{font-size:7px}.hearts{gap:4px;margin-top:0}.heart{width:13px;height:13px}.combo-count{font-size:16px}.evo-track{position:fixed;top:0;left:0;width:100%;height:4px;border:none;border-radius:0;background:#2dd4bf26}.evo-fill{border-radius:0}}
