:root{--bg-color: #050508;--wood-border: #230c04;--wood-dark: #3a1608;--wood-mid: #5c2410;--wood-light: #7c2d12;--wood-bevel: #170702;--parchment-top: #f59e0b;--parchment-mid: #d97706;--parchment-bot: #b45309;--parchment-border: #78350f;--ribbon-top: #475569;--ribbon-mid: #334155;--ribbon-bot: #1e293b;--ribbon-shadow: #0f172a;--btn-green-top: #86efac;--btn-green-mid: #22c55e;--btn-green-bot: #16a34a;--btn-green-bevel: #14532d;--btn-amber-top: #fef08a;--btn-amber-mid: #f59e0b;--btn-amber-bot: #d97706;--btn-amber-bevel: #78350f;--accent-cyan: #00e5ff;--accent-gold: #fbbf24;--text-primary: #ffffff}*{margin:0;padding:0;box-sizing:border-box;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}html,body{width:100%;height:100%;overflow:hidden;background-color:var(--bg-color);color:var(--text-primary);font-family:Fredoka,Noto Sans Malayalam,system-ui,-apple-system,sans-serif;touch-action:none}#app{position:relative;width:100%;height:100%;display:flex;flex-direction:column}#game-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.ui-layer{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between}.top-hud{display:flex;align-items:center;justify-content:space-between;padding:8px 14px 2px;background:linear-gradient(180deg,#050508f2,#05050800);pointer-events:auto}.brand-badge{display:flex;align-items:center;gap:6px;font-family:Lilita One,cursive;font-size:15px;letter-spacing:.5px;color:#fef08a;text-shadow:0 2px 0 #78350f,0 3px 6px rgba(0,0,0,.6);cursor:pointer;background:linear-gradient(180deg,#5c2410,#3a1608);border:2px solid #230c04;border-bottom:3.5px solid #170702;border-radius:12px;padding:4px 10px;box-shadow:inset 0 1px #ffffff40,0 4px 8px #00000080;transition:transform .1s ease}.brand-badge:active{transform:translateY(2px);border-bottom-width:1.5px}.brand-badge .icon,.brand-icon-svg{width:15px;height:15px;flex-shrink:0;display:inline-block;filter:drop-shadow(0 0 4px rgba(255,184,48,.8))}.btn-icon{width:22px;height:22px;flex-shrink:0;display:inline-block;filter:drop-shadow(0 2px 2px rgba(0,0,0,.5));object-fit:contain}.candle-icon-img{width:38px;height:38px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.45));margin:-5px 0}.badge-icon-svg{width:15px;height:15px;flex-shrink:0;display:inline-block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}.hud-actions{display:flex;align-items:center;gap:8px}.hud-btn{background:linear-gradient(180deg,#3a1608,#230c04);border:2px solid #170702;border-bottom:3.5px solid #0f0401;color:var(--text-primary);padding:5px 10px;border-radius:12px;font-family:Lilita One,cursive;font-size:13px;letter-spacing:.3px;cursor:pointer;display:flex;align-items:center;gap:5px;box-shadow:inset 0 1px #fff3,0 4px 8px #0006;transition:all .15s ease}.hud-btn:active{transform:translateY(2px);border-bottom-width:1.5px}.battery-pill{color:#4ade80;text-shadow:0 1px 2px rgba(0,0,0,.8)}.battery-pill .bat-icon{font-size:12px}.modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#050508e0;z-index:100;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:opacity .3s ease,visibility .3s ease}.modal-overlay.hidden{display:none!important;opacity:0;visibility:hidden;pointer-events:none}.modal-card{position:relative;width:100%;max-width:370px;background:linear-gradient(180deg,var(--wood-mid) 0%,var(--wood-dark) 100%);border:4px solid var(--wood-border);border-bottom:8px solid var(--wood-bevel);border-radius:26px;padding:24px 16px 18px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 12px 0 var(--wood-bevel),0 24px 50px #000000e6,inset 0 2px #fff3;margin-top:14px}.modal-card:before,.modal-card:after{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fef08a,#ca8a04 60%,#713f12);box-shadow:0 1px 3px #000c,inset 0 1px #ffffffb3;z-index:4}.modal-card:before{top:8px;left:10px}.modal-card:after{top:8px;right:10px}.ribbon-banner{position:relative;display:inline-flex;align-items:center;justify-content:center;margin-top:-46px;margin-bottom:14px;z-index:10}.ribbon-text{background:linear-gradient(180deg,var(--ribbon-top) 0%,var(--ribbon-mid) 45%,var(--ribbon-bot) 100%);border:2.5px solid var(--ribbon-shadow);border-bottom:4px solid var(--ribbon-shadow);border-radius:12px;padding:8px 24px;font-family:Lilita One,cursive;font-size:22px;letter-spacing:1px;color:#fff;text-shadow:0 2px 0 var(--ribbon-shadow),0 4px 6px rgba(0,0,0,.6);box-shadow:inset 0 2px #fff6,0 6px 14px #00000080;position:relative;z-index:2;white-space:nowrap}.ribbon-tail{position:absolute;top:8px;width:18px;height:28px;background:linear-gradient(180deg,#1e293b,#0f172a);border:2px solid var(--ribbon-shadow);z-index:1}.ribbon-tail.left{left:-12px;clip-path:polygon(100% 0,100% 100%,0 50%)}.ribbon-tail.right{right:-12px;clip-path:polygon(0 0,0 100%,100% 50%)}.ribbon-gameover .ribbon-text{background:linear-gradient(180deg,#ef4444,#b91c1c 45%,#7f1d1d);border-color:#450a0a;text-shadow:0 2px 0 #450a0a,0 4px 6px rgba(0,0,0,.6)}.ribbon-gold .ribbon-text{background:linear-gradient(180deg,#fef08a,#eab308 45%,#a16207);border-color:#422006;color:#fff;text-shadow:0 2px 0 #422006,0 4px 6px rgba(0,0,0,.6)}.ribbon-revive .ribbon-text{background:linear-gradient(180deg,#38bdf8,#0284c7 45%,#0369a1);border-color:#082f49;color:#fff;text-shadow:0 2px 0 #082f49,0 4px 6px rgba(0,0,0,.6)}.plaque-inner{width:100%;background:linear-gradient(180deg,var(--parchment-top) 0%,var(--parchment-mid) 60%,var(--parchment-bot) 100%);border:3px solid var(--parchment-border);border-radius:18px;padding:16px 14px 14px;box-shadow:inset 0 4px 8px #00000059,inset 0 -2px #ffffff40,0 3px #ffffff1f;display:flex;flex-direction:column;align-items:center}.modal-malayalam{font-family:Lilita One,Noto Sans Malayalam,sans-serif;font-size:16.5px;color:#fff;text-shadow:0 2px 0 #78350f,0 3px 6px rgba(0,0,0,.5);margin-bottom:8px;letter-spacing:.3px}.modal-desc{font-size:13.5px;font-weight:500;line-height:1.45;color:#fef3c7;text-shadow:0 1px 2px rgba(69,26,3,.7);margin-bottom:14px}.oled-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:12px;background:linear-gradient(180deg,#1e293b,#0f172a);border:1.5px solid #334155;border-bottom:2.5px solid #020617;color:#4ade80;font-size:11px;font-weight:600;margin-bottom:12px;box-shadow:inset 0 1px #fff3,0 2px 4px #0006}.player-badge{display:inline-flex;align-items:center;gap:7px;padding:5px 14px;border-radius:14px;background:linear-gradient(180deg,#78350f,#451a03);border:2px solid #290e03;border-bottom:3.5px solid #190802;color:#fef08a;font-family:Lilita One,cursive;font-size:13.5px;letter-spacing:.5px;text-shadow:0 1px 0 #190802;margin-bottom:10px;cursor:pointer;box-shadow:inset 0 1px #ffffff40,0 3px 6px #0006;transition:transform .1s ease}.player-badge:active{transform:translateY(2px);border-bottom-width:1.5px}.player-badge .edit-icon{font-size:11px;opacity:.85}.highscore-tag{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:14px;background:linear-gradient(180deg,#ca8a04,#854d0e);border:2px solid #422006;border-bottom:3.5px solid #291403;color:#fef9c3;font-family:Lilita One,cursive;font-size:13px;letter-spacing:.5px;text-shadow:0 1px 0 #291403;margin-bottom:14px;box-shadow:inset 0 1px #fff6,0 3px 6px #0006;cursor:pointer}.highscore-tag:active{transform:translateY(2px)}.menu-buttons{display:flex;flex-direction:column;gap:10px;width:100%}.btn-primary{width:100%;background:linear-gradient(180deg,var(--btn-green-top) 0%,var(--btn-green-mid) 38%,var(--btn-green-bot) 100%);border:2.5px solid var(--btn-green-bevel);border-bottom:6px solid var(--btn-green-bevel);border-radius:18px;color:#fff;font-family:Lilita One,cursive;font-size:18px;letter-spacing:.6px;padding:13px 18px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;text-shadow:0 2px 0 var(--btn-green-bevel),0 3px 3px rgba(0,0,0,.5);box-shadow:inset 0 3px #ffffffb3,0 8px 16px #00000073;transition:transform .08s ease,border-bottom .08s ease,filter .15s ease}.btn-primary:hover{filter:brightness(1.04)}.btn-primary:active{transform:translateY(4px);border-bottom:2px solid var(--btn-green-bevel);box-shadow:inset 0 2px #ffffff80,0 3px 8px #0000004d}.btn-secondary{width:100%;background:linear-gradient(180deg,var(--btn-amber-top) 0%,var(--btn-amber-mid) 38%,var(--btn-amber-bot) 100%);border:2.5px solid var(--btn-amber-bevel);border-bottom:5px solid var(--btn-amber-bevel);border-radius:18px;color:#fff;font-family:Lilita One,cursive;font-size:16px;letter-spacing:.5px;padding:12px 18px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;text-shadow:0 2px 0 var(--btn-amber-bevel),0 3px 3px rgba(0,0,0,.5);box-shadow:inset 0 3px #fffc,0 6px 14px #00000059;transition:transform .08s ease,border-bottom .08s ease}.btn-secondary:hover{filter:brightness(1.04)}.btn-secondary:active{transform:translateY(3px);border-bottom:2px solid var(--btn-amber-bevel);box-shadow:inset 0 2px #fff9,0 2px 4px #0000004d}.btn-whatsapp{width:100%;background:linear-gradient(180deg,#4ade80,#22c55e 38%,#16a34a);border:2.5px solid #14532d;border-bottom:6px solid #14532d;border-radius:18px;color:#fff;font-family:Lilita One,cursive;font-size:17px;letter-spacing:.6px;padding:13px 18px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;text-shadow:0 2px 0 #14532d,0 3px 3px rgba(0,0,0,.5);box-shadow:inset 0 3px #ffffffb3,0 8px 16px #00000073;transition:transform .08s ease,border-bottom .08s ease,filter .15s ease}.btn-whatsapp:hover{filter:brightness(1.05)}.btn-whatsapp:active{transform:translateY(4px);border-bottom:2px solid #14532d;box-shadow:inset 0 2px #ffffff80,0 3px 8px #0000004d}.revive-card{max-width:360px}.revive-box{background:#00000061;border:2px dashed #ca8a04;border-radius:14px;padding:12px 14px;margin:6px 0 16px;width:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:6px}.revive-instruction{font-size:14px;line-height:1.45;color:#fef08a;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.8);margin:0}.revive-badge-limit{display:inline-block;font-size:11px;font-family:Lilita One,cursive;color:#f87171;background:#ef44442e;border:1px solid rgba(239,68,68,.4);padding:3px 8px;border-radius:8px;letter-spacing:.3px}.username-card{max-width:340px}.username-form{width:100%;display:flex;flex-direction:column;gap:12px}.username-input{width:100%;background:linear-gradient(180deg,#2a0f05,#1a0802);border:2.5px solid #4a1908;border-radius:14px;padding:12px 16px;font-family:Lilita One,Noto Sans Malayalam,cursive;font-size:17px;letter-spacing:.5px;color:#fef08a;text-align:center;outline:none;box-shadow:inset 0 3px 6px #000c,0 1px #ffffff26;transition:border-color .2s,box-shadow .2s}.username-input:focus{border-color:#fbbf24;box-shadow:inset 0 3px 6px #000c,0 0 12px #fbbf2466}.username-input::placeholder{color:#fef08a73;font-family:Fredoka,sans-serif;font-size:14px}.leaderboard-card{max-width:375px;max-height:90vh}.leaderboard-player-banner{width:100%;background:linear-gradient(180deg,#301205,#1c0903);border:2px solid #ca8a04;border-bottom:3.5px solid #854d0e;border-radius:14px;padding:8px 12px;margin-bottom:9px;box-shadow:inset 0 1px #ffffff2e,0 4px 8px #00000073;display:flex;flex-direction:column;gap:6px}.player-banner-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(202,138,4,.25);padding-bottom:4px}.player-banner-tag{font-size:11px;font-family:Lilita One,Noto Sans Malayalam,sans-serif;color:#fef08a;letter-spacing:.4px;text-shadow:0 1px 2px rgba(0,0,0,.8);display:flex;align-items:center;gap:5px}.player-banner-name-wrap{display:flex;align-items:center;gap:5px;background:#0000004d;padding:2px 7px;border-radius:8px;border:1px solid rgba(254,240,138,.2);cursor:pointer;transition:background .15s,transform .1s}.player-banner-name-wrap:hover{background:#00000073;border-color:#fef08a66}.player-banner-name-wrap:active{transform:translateY(1px)}.player-banner-name{font-family:Lilita One,Noto Sans Malayalam,sans-serif;font-size:12px;color:#38bdf8;letter-spacing:.3px;text-shadow:0 1px 2px rgba(0,0,0,.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px}.edit-pencil-svg{opacity:.75;color:#fef08a;flex-shrink:0}.player-banner-body{display:flex;align-items:center;justify-content:space-around}.player-banner-stat{display:flex;flex-direction:column;align-items:center;flex:1}.player-stat-label{font-size:10px;font-weight:600;color:#cbd5e1;text-shadow:0 1px 2px rgba(0,0,0,.8);letter-spacing:.4px;margin-bottom:2px;white-space:nowrap}.player-stat-val{font-family:Lilita One,cursive;font-size:17px;letter-spacing:.5px;display:flex;align-items:center;gap:3px}.player-stat-val.rank-val{color:#fbbf24;text-shadow:0 1px 2px rgba(0,0,0,.8)}.player-stat-val.score-val{color:#4ade80;text-shadow:0 0 10px rgba(74,222,128,.3),0 1px 2px rgba(0,0,0,.8)}.player-banner-divider{width:1.5px;height:26px;background:linear-gradient(180deg,#ca8a041a,#ca8a0499,#ca8a041a);margin:0 6px}.leaderboard-container{width:100%;min-height:140px;max-height:min(270px,44vh);overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#78350f transparent;display:flex;flex-direction:column;padding-right:2px}.leaderboard-loading,.leaderboard-empty{margin:auto;font-size:13.5px;color:#fef3c7;text-shadow:0 1px 2px rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;gap:8px;padding:24px 10px}.leaderboard-loading .spinner,.leaderboard-loading .spinner-svg{display:inline-block;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.leaderboard-list{display:flex;flex-direction:column;gap:6px;width:100%}.leaderboard-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:linear-gradient(180deg,#451a03,#2e1002);border:2px solid #1a0802;border-bottom:3.5px solid #140501;border-radius:12px;box-shadow:inset 0 1px #ffffff2e,0 3px 6px #0006;transition:transform .1s}.leaderboard-row.rank-1{background:linear-gradient(180deg,#fef08a,#eab308 40%,#ca8a04);border:2px solid #713f12;border-bottom:4px solid #422006;box-shadow:inset 0 2px #ffffffb3,0 4px 8px #00000080}.leaderboard-row.rank-1 .player-name{color:#422006;text-shadow:0 1px 0 rgba(255,255,255,.5)}.leaderboard-row.rank-1 .player-lvl{color:#713f12}.leaderboard-row.rank-1 .score-display{color:#422006;text-shadow:0 1px 0 rgba(255,255,255,.5)}.leaderboard-row.rank-2{background:linear-gradient(180deg,#f1f5f9,#cbd5e1 40%,#94a3b8);border:2px solid #334155;border-bottom:4px solid #1e293b;box-shadow:inset 0 2px #ffffffb3,0 4px 8px #00000080}.leaderboard-row.rank-2 .player-name{color:#0f172a;text-shadow:0 1px 0 rgba(255,255,255,.5)}.leaderboard-row.rank-2 .player-lvl{color:#334155}.leaderboard-row.rank-2 .score-display{color:#0f172a;text-shadow:0 1px 0 rgba(255,255,255,.5)}.leaderboard-row.rank-3{background:linear-gradient(180deg,#fed7aa,#f97316 40%,#c2410c);border:2px solid #431407;border-bottom:4px solid #270b04;box-shadow:inset 0 2px #fff9,0 4px 8px #00000080}.leaderboard-row.rank-3 .player-name{color:#fff;text-shadow:0 1px 0 #431407}.leaderboard-row.rank-3 .player-lvl{color:#ffedd5}.leaderboard-row.rank-3 .score-display{color:#fff;text-shadow:0 1px 0 #431407}.leaderboard-row.is-current-user{border-color:#00e5ff!important;box-shadow:0 0 12px #00e5ff66,inset 0 1px #fff6!important}.leaderboard-left{display:flex;align-items:center;gap:10px;overflow:hidden}.rank-badge{font-family:Lilita One,cursive;font-size:15px;min-width:24px;text-align:center;color:#fbbf24;text-shadow:0 1px 2px rgba(0,0,0,.8)}.rank-1 .rank-badge{color:#422006;font-size:18px;text-shadow:none}.rank-2 .rank-badge{color:#0f172a;font-size:18px;text-shadow:none}.rank-3 .rank-badge{color:#fff;font-size:18px;text-shadow:0 1px 0 #431407}.player-info{display:flex;flex-direction:column;align-items:flex-start;text-align:left;overflow:hidden}.player-name{font-family:Lilita One,cursive;font-size:14.5px;letter-spacing:.3px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.player-lvl{font-size:11px;color:#38bdf8;font-weight:600}.score-display{font-family:Lilita One,cursive;font-size:15px;letter-spacing:.3px;color:#fbbf24;text-shadow:0 1px 2px rgba(0,0,0,.8);display:flex;align-items:center;gap:3px}@keyframes pulse{0%{transform:scale(1);opacity:.8}to{transform:scale(1.1);opacity:1}}.pwa-update-toast{position:fixed;top:18px;left:50%;transform:translate(-50%);z-index:9999;background:linear-gradient(180deg,#1e293b,#0f172a);border:2px solid #00e5ff;border-radius:30px;padding:8px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 8px 24px #00e5ff59,0 4px 10px #0009;font-family:Lilita One,Noto Sans Malayalam,sans-serif;font-size:13px;color:#fff;animation:slideDownToast .35s cubic-bezier(.175,.885,.32,1.275)}.update-reload-btn{background:linear-gradient(180deg,#22c55e,#16a34a);border:1px solid #14532d;color:#fff;font-family:Lilita One,sans-serif;font-size:12px;padding:4px 12px;border-radius:14px;cursor:pointer;box-shadow:0 2px 6px #0006;transition:transform .1s ease}.update-reload-btn:active{transform:scale(.95)}@keyframes slideDownToast{0%{transform:translate(-50%,-40px);opacity:0}to{transform:translate(-50%);opacity:1}}
