:root{--ink:#8a5cf6;--gold:#ffe36e;--green:#39d98a}*{box-sizing:border-box;margin:0;padding:0}html,body{color:#fff;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:none;background:#16121f;width:100%;height:100%;font-family:Trebuchet MS,system-ui,sans-serif;overflow:hidden}#app canvas{display:block}#hud,#overlay{pointer-events:none;position:fixed;inset:0}#overlay{pointer-events:auto;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:radial-gradient(#140e1e59,#0a0710b3);justify-content:center;align-items:center;display:none}#overlay .card.menuCard{background:linear-gradient(160deg,#241b38db,#171022e6)}#topbar{align-items:center;gap:14px;display:none;position:absolute;top:14px;left:50%;transform:translate(-50%)}.stat{background:#0006;border:1px solid #ffffff1f;border-radius:12px;flex-direction:column;align-items:center;min-width:70px;padding:6px 14px;display:flex}.stat .k{letter-spacing:2px;opacity:.6;font-size:10px}.stat span:last-child{font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}#alarmWrap{background:#00000080;border:1px solid #ffffff1f;border-radius:12px;width:160px;height:30px;position:relative;overflow:hidden}#alarmFill{background:var(--gold);width:0%;height:100%;transition:width .1s linear}.alarmLabel{letter-spacing:3px;text-shadow:0 1px 2px #000;place-items:center;font-size:12px;display:grid;position:absolute;inset:0}#toast{letter-spacing:1px;opacity:0;text-align:center;color:var(--gold);text-shadow:0 3px 12px #0009;font-size:30px;font-weight:800;position:absolute;top:22%;left:50%;transform:translate(-50%)scale(.8)}#toast.show{animation:1.6s forwards pop}@keyframes pop{0%{opacity:0;transform:translate(-50%,10px)scale(.7)}15%{opacity:1;transform:translate(-50%)scale(1.1)}30%{transform:translate(-50%)scale(1)}80%{opacity:1}to{opacity:0}}#escape{border:1px solid var(--green);color:var(--green);letter-spacing:2px;opacity:0;background:#39d98a26;border-radius:20px;padding:5px 16px;font-size:13px;font-weight:800;transition:opacity .3s,transform .3s;position:absolute;top:96px;left:50%;transform:translate(-50%)translateY(-6px)}#escape.show{opacity:1;animation:1s infinite escapePulse;transform:translate(-50%)translateY(0)}@keyframes escapePulse{50%{background:#39d98a4d}}#escape.greedy{color:#ff8a8a;border-color:#ff6b6b;animation:.6s infinite greedPulse}@keyframes greedPulse{50%{background:#ff6b6b47;transform:translate(-50%)scale(1.04)}}#dogBubble{text-shadow:0 2px 6px #000;pointer-events:none;font-size:30px;font-weight:900;display:none;position:absolute;transform:translate(-50%,-50%)}#dogBubble.alert{color:#ffe36e}#dogBubble.chase{color:#ff3b3b;animation:.3s bpop}@keyframes bpop{0%{transform:translate(-50%,-50%)scale(1.8)}}#coachTip{background:linear-gradient(135deg, var(--ink), #b98cff);color:#fff;opacity:0;text-align:center;border-radius:24px;padding:12px 24px;font-size:18px;font-weight:800;transition:opacity .3s,transform .3s;position:absolute;bottom:60px;left:50%;transform:translate(-50%)scale(.9);box-shadow:0 8px 30px #8a5cf680}#coachTip.show{opacity:1;animation:1.4s ease-in-out infinite coachBob;transform:translate(-50%)scale(1)}@keyframes coachBob{50%{transform:translate(-50%)translateY(-5px)scale(1)}}#alarmVignette{pointer-events:none;opacity:0;background:radial-gradient(#f000 55%,#ff000040 100%);transition:opacity .15s;position:absolute;inset:0;box-shadow:inset 0 0 160px 30px #ff1414bf}#touch,#hint{display:none}#hud.playing #touch,#hud.playing #hint{display:block}#touch{pointer-events:none;position:absolute;bottom:96px;right:16px}#inkBtn{pointer-events:auto;color:#fff;touch-action:manipulation;background:radial-gradient(circle at 35% 30%,#4a3d6b,#221833);border:2px solid #9d6bff99;border-radius:50%;place-items:center;width:62px;height:62px;padding:0;font-size:26px;display:grid;position:relative;box-shadow:0 6px 20px #00000080}#inkBtn:active{background:radial-gradient(circle at 35% 30%,#6a5a8f,#2c2044);transform:scale(.92)}#inkBtn.empty{opacity:.35}#inkCount{color:var(--gold);font-size:15px;font-weight:900;position:absolute;bottom:6px;right:10px}#inkFlash{pointer-events:none;opacity:0;background:radial-gradient(#0a041800 30%,#060210f5 75%);position:absolute;inset:0}#inkFlash.show{animation:1.6s forwards inkPuff}@keyframes inkPuff{0%{opacity:0}8%{opacity:1}60%{opacity:.9}to{opacity:0}}#hint{text-align:center;background:#00000073;border-radius:20px;padding:8px 18px;font-size:14px;transition:opacity .6s;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}#hint b{color:var(--gold)}.card{text-align:center;background:linear-gradient(160deg,#241b38,#171022);border:1px solid #ffffff1a;border-radius:24px;max-width:90vw;padding:40px 46px;animation:.35s rise;box-shadow:0 30px 80px #0009}@keyframes rise{0%{opacity:0;transform:translateY(20px)scale(.96)}}.card h1{letter-spacing:2px;font-size:54px;font-weight:900}.card h1 span{color:var(--ink)}.card.win h1{color:var(--green)}.card.lose h1{color:#ff6b6b}.tag{opacity:.8;margin:10px 0 6px;font-size:17px}.sub{opacity:.5;margin-top:18px;font-size:13px;line-height:1.6}.stars{color:var(--gold);letter-spacing:6px;margin:8px 0;font-size:44px}.results{justify-content:center;gap:22px;margin:20px 0;display:flex}.results div{flex-direction:column;display:flex}.results span{letter-spacing:2px;opacity:.5;font-size:11px}.results b{font-size:26px}button{pointer-events:auto;cursor:pointer;letter-spacing:1px;color:#fff;background:#37304e;border:none;border-radius:14px;margin:6px;padding:14px 28px;font-family:inherit;font-size:18px;font-weight:800;transition:transform .1s,background .2s}button:hover{background:#453b63;transform:translateY(-2px)}button.primary,#play{background:linear-gradient(135deg, var(--ink), #b98cff)}#play{margin-top:16px;padding:18px 40px;font-size:22px}.btns{flex-wrap:wrap;justify-content:center;display:flex}.wings{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:6px;display:flex}.wing{opacity:.85;background:#2c2542;border:1px solid #ffffff1f;margin:0;padding:8px 14px;font-size:13px;font-weight:700}.wing:hover{opacity:1;background:#382f52}#shareCanvas{border:1px solid #ffffff26;border-radius:14px;width:300px;max-width:78vw;height:auto;margin:6px 0 14px;box-shadow:0 12px 40px #00000080}button kbd{opacity:.6;border:1px solid #ffffff4d;border-radius:4px;margin-left:4px;padding:0 4px;font-size:11px}#share,#clip{background:#2a7d55}#share:hover,#clip:hover{background:#339366}#clip:disabled{opacity:.6;cursor:default}.pb{color:var(--gold);letter-spacing:1px;margin:-6px 0 6px;font-size:15px;font-weight:800}.rank{opacity:.92;margin:2px 0 4px;font-size:16px}.rank b{color:var(--green);font-size:19px}
