@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fredoka-hebrew-500-normal-DdMTjgiE.woff2)format("woff2"),url(/assets/fredoka-hebrew-500-normal-BtShCMVp.woff)format("woff");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fredoka-latin-ext-500-normal-0PZPWlWP.woff2)format("woff2"),url(/assets/fredoka-latin-ext-500-normal-CA82fdYH.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fredoka-latin-500-normal-B0JifZgm.woff2)format("woff2"),url(/assets/fredoka-latin-500-normal-BL692wg7.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fredoka-hebrew-600-normal-CTBxhdlE.woff2)format("woff2"),url(/assets/fredoka-hebrew-600-normal-BiVDObXj.woff)format("woff");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fredoka-latin-ext-600-normal-GoyidTAB.woff2)format("woff2"),url(/assets/fredoka-latin-ext-600-normal-BExgZzUO.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fredoka-latin-600-normal-C4zohCW5.woff2)format("woff2"),url(/assets/fredoka-latin-600-normal-CcrEjrB4.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fredoka-hebrew-700-normal-DBqnFHCe.woff2)format("woff2"),url(/assets/fredoka-hebrew-700-normal-DiqR04Vd.woff)format("woff");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fredoka-latin-ext-700-normal--a2O67AJ.woff2)format("woff2"),url(/assets/fredoka-latin-ext-700-normal-DBnuyHy7.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fredoka-latin-700-normal-BOIZVyIN.woff2)format("woff2"),url(/assets/fredoka-latin-700-normal-C8FeHd3X.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-cyrillic-ext-600-normal-CWPPjBOD.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-600-normal-vnfu4DTE.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-cyrillic-600-normal-DJGQ2h05.woff2)format("woff2"),url(/assets/nunito-cyrillic-600-normal-BUjmtIuu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-vietnamese-600-normal-BY8O6Cug.woff2)format("woff2"),url(/assets/nunito-vietnamese-600-normal-DO1RqFw5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-ext-600-normal-Dd9Zuxh1.woff2)format("woff2"),url(/assets/nunito-latin-ext-600-normal-BKUpuB78.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-600-normal-Br8yIETf.woff2)format("woff2"),url(/assets/nunito-latin-600-normal-Cd0eNu1l.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-ext-700-normal-BuR0mlCG.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-700-normal-DfoqN4Gs.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-700-normal-DP36NgGt.woff2)format("woff2"),url(/assets/nunito-cyrillic-700-normal-DfHRUDv-.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-vietnamese-700-normal-Ch8EUCfz.woff2)format("woff2"),url(/assets/nunito-vietnamese-700-normal-C9SQsXvj.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-ext-700-normal-BWeMsAzO.woff2)format("woff2"),url(/assets/nunito-latin-ext-700-normal-D4woHhbd.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(/assets/nunito-latin-700-normal-OcDqTBcA.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-ext-800-normal-B-cvGohL.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-800-normal-pjRatrRO.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-800-normal-D3igD7Kl.woff2)format("woff2"),url(/assets/nunito-cyrillic-800-normal-DymMgApb.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-vietnamese-800-normal-D_CZYdm9.woff2)format("woff2"),url(/assets/nunito-vietnamese-800-normal-Dz0hZPb5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-ext-800-normal-CtU8tJOV.woff2)format("woff2"),url(/assets/nunito-latin-ext-800-normal-CDcxIxx8.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(/assets/nunito-latin-800-normal-D-J0wlBY.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--glass:#0c1222b8;--glass-2:#141c32d1;--line:#ffffff24;--txt:#f8fafc;--muted:#a5b4c8;--blue:#3b82f6;--gold:#fbbf24;--green:#22c55e;--red:#ef4444;--display:"Fredoka", "Nunito", system-ui, sans-serif;--body:"Nunito", system-ui, sans-serif;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;color:var(--txt);font-family:var(--body);-webkit-font-smoothing:antialiased;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;background:#0b1220;margin:0;overflow:hidden}#app{position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}#game{width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}button{color:inherit;cursor:pointer;font-family:inherit}.hidden{display:none!important}#vignette{pointer-events:none;background:radial-gradient(#0000 55%,#00000047 100%);position:absolute;top:0;bottom:0;left:0;right:0}#fx-layer{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.pop{font-family:var(--display);color:#fff;white-space:nowrap;letter-spacing:.02em;text-shadow:0 2px #00000059,0 0 12px #00000040;font-size:clamp(14px,2.2vw,22px);font-weight:700;animation:1.1s cubic-bezier(.2,.9,.3,1) forwards pop-up;position:absolute;transform:translate(-50%,-50%)}.pop-defeat{color:#fde68a;-webkit-text-stroke:1px #78350f80}.pop-hurt{color:#fecaca}.pop-heal{color:#fda4af}.pop-save{color:#86efac}.pop-warn{color:#fca5a5}.pop-check{color:#fde68a}.pop-small{color:#bae6fd;font-size:clamp(12px,1.6vw,16px)}.pop-big{color:#fff;font-size:clamp(22px,4vw,40px)}@keyframes pop-up{0%{opacity:0;transform:translate(-50%,-30%)scale(.6)}15%{opacity:1;transform:translate(-50%,-70%)scale(1.12)}30%{transform:translate(-50%,-80%)scale(1)}to{opacity:0;transform:translate(-50%,-190%)scale(1)}}#hud{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.hud-left{left:calc(14px + var(--safe-l));top:calc(12px + var(--safe-t));flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:absolute}.hud-row{align-items:center;gap:10px;display:flex}.hud-right{right:calc(14px + var(--safe-r));top:calc(12px + var(--safe-t));pointer-events:auto;align-items:center;gap:8px;display:flex;position:absolute}.chip{background:var(--glass);-webkit-backdrop-filter:blur(10px);border:1px solid var(--line);font-family:var(--display);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:16px;font-weight:600;display:flex;box-shadow:0 6px 20px #00000040}.checks .ck{color:var(--gold);font-weight:700}.checks.bump{animation:.25s bump}@keyframes bump{50%{transform:scale(1.12)}}.timer{font-variant-numeric:tabular-nums;justify-content:center;min-width:64px}.icon-btn{background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);border-radius:999px;place-items:center;width:40px;height:40px;display:grid;box-shadow:0 6px 20px #00000040}.icon-btn svg{fill:#fff;width:18px;height:18px}.icon-btn:active{transform:scale(.94)}.hearts{background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);border-radius:999px;gap:4px;padding:6px 10px;display:flex;box-shadow:0 6px 20px #00000040}.heart{width:24px;height:22px;transition:transform .2s}.heart svg{width:100%;height:100%;display:block}.heart .fill{fill:#fb7185;transition:fill .2s}.heart.empty .fill{fill:#ffffff24}.heart.lost{animation:.5s heart-lost}.heart.gain{animation:.3s bump}@keyframes heart-lost{30%{transform:scale(1.4)rotate(-12deg)}60%{transform:scale(.8)rotate(8deg)}}.packet-bar{pointer-events:auto;background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);border-radius:14px;align-items:center;gap:5px;padding:6px 8px;display:flex;box-shadow:0 6px 20px #00000040}.packet-bar .pk-title{font-family:var(--display);color:var(--muted);letter-spacing:.08em;writing-mode:horizontal-tb;margin-right:2px;font-size:11px;font-weight:600}.pk{width:30px;height:36px;font-family:var(--display);color:#ffffff59;background:#ffffff0f;border:1px dashed #ffffff38;border-radius:6px;place-items:center;font-size:11px;font-weight:700;transition:all .3s;display:grid;position:relative}.pk.got{color:var(--c);box-shadow:0 0 0 2px color-mix(in srgb, var(--c) 40%, transparent), 0 4px 10px #00000040;background:#fff;border:1px solid #fff}.pk.got:before{content:"";background:var(--c);border-radius:5px 5px 0 0;height:6px;position:absolute;top:0;left:0;right:0}.pk.new{animation:.8s pk-new}@keyframes pk-new{0%{transform:scale(.4)rotate(-20deg)}60%{transform:scale(1.3)rotate(6deg)}to{transform:scale(1)}}.pk .pg{color:#fff;background:#f59e0b;border:1.5px solid #0b1220;border-radius:999px;padding:1px 4px;font-size:9px;position:absolute;bottom:-6px;right:-6px}.session{top:calc(70px + var(--safe-t));text-align:center;background:#7f1d1dd9;border:1px solid #fecaca66;border-radius:16px;padding:8px 18px;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #7f1d1d66}.session-label{font-family:var(--display);letter-spacing:.14em;color:#fecaca;font-size:11px}.session-time{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:30px;font-weight:700;line-height:1}.session.urgent{animation:.5s infinite alternate urgent}@keyframes urgent{to{background:#dc2626f2;transform:translate(-50%)scale(1.08)}}.boss{bottom:calc(22px + var(--safe-b));text-align:center;width:min(520px,60vw);position:absolute;left:50%;transform:translate(-50%)}.boss-name{font-family:var(--display);letter-spacing:.1em;text-shadow:0 2px 8px #0009;margin-bottom:6px;font-size:14px;font-weight:700}.boss-name span{color:#d8b4fe;letter-spacing:.04em;font-weight:500}.boss-track{background:#0f172abf;border:1px solid #fff3;border-radius:999px;height:14px;overflow:hidden}.boss-fill{background:linear-gradient(90deg,#a855f7,#ec4899);border-radius:999px;width:100%;height:100%;transition:width .5s cubic-bezier(.3,1.4,.5,1)}#scene-dim{pointer-events:auto;background:linear-gradient(#0206171a,#0206178c);position:absolute;top:0;bottom:0;left:0;right:0}.call{left:50%;top:calc(12px + var(--safe-t));-webkit-backdrop-filter:blur(14px)saturate(1.3);pointer-events:auto;cursor:pointer;background:linear-gradient(135deg,#0f172ae0,#1e293bd6);border:1px solid #ffffff29;border-radius:22px;align-items:center;gap:14px;width:min(620px,100vw - 360px);min-width:min(420px,94vw);padding:12px 16px 12px 12px;animation:.35s cubic-bezier(.2,1.3,.4,1) call-in;display:flex;position:absolute;transform:translate(-50%);box-shadow:0 18px 50px #0006,inset 0 1px #ffffff14}@keyframes call-in{0%{opacity:0;transform:translate(-50%,-30px)scale(.92)}}.call.out{animation:.25s forwards call-out}@keyframes call-out{to{opacity:0;transform:translate(-50%,-24px)scale(.95)}}.call-portrait{flex:none;width:64px;height:64px;position:relative}.call-face{border:3px solid var(--accent,#3b82f6);background:#fff;border-radius:50%;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.call-face svg{width:100%;height:100%;display:block}.call-face.swap{animation:.3s swap}@keyframes swap{0%{opacity:.3;transform:scale(.7)rotate(-10deg)}to{opacity:1;transform:none}}.call-ring{border:2px solid var(--accent,#3b82f6);opacity:0;border-radius:50%;position:absolute;top:-6px;bottom:-6px;left:-6px;right:-6px}.call.ringing .call-ring{animation:.7s ease-out infinite ring}.call.talking .call-face{animation:.28s ease-in-out infinite alternate talk}@keyframes talk{to{transform:translateY(-1.5px)scale(1.02)}}@keyframes ring{0%{opacity:.9;transform:scale(.9)}to{opacity:0;transform:scale(1.35)}}.call-body{flex:1;min-width:0}.call-head{flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:3px;display:flex}.call-name{font-family:var(--display);color:var(--accent,#93c5fd);filter:brightness(1.35);font-size:17px;font-weight:700}.call-role{color:var(--muted);font-size:12px;font-weight:600}.call-live{font-family:var(--display);letter-spacing:.12em;color:#86efac;align-items:center;gap:5px;margin-left:auto;font-size:10px;display:flex}.call-live i{background:#22c55e;border-radius:50%;width:7px;height:7px;animation:1.2s infinite blink;box-shadow:0 0 8px #22c55e}.call.ringing .call-live{color:#fde68a}.call.ringing .call-live i{background:#fbbf24;animation-duration:.35s;box-shadow:0 0 8px #fbbf24}@keyframes blink{50%{opacity:.25}}.call-text{color:#f1f5f9;min-height:44px;font-size:16px;font-weight:600;line-height:1.38}.call-text b{color:#fde68a;font-weight:800}.call-next{color:var(--muted);opacity:0;align-self:flex-end;font-size:18px;transition:opacity .2s}.call.ready .call-next{opacity:1;animation:.8s infinite nudge}@keyframes nudge{50%{transform:translate(3px)}}.call.scene{top:auto;bottom:calc(22px + var(--safe-b));width:min(760px,94vw);padding:16px 20px 16px 16px;animation:.35s cubic-bezier(.2,1.3,.4,1) scene-in}@keyframes scene-in{0%{opacity:0;transform:translate(-50%,30px)scale(.95)}}.call.scene .call-portrait{width:88px;height:88px}.call.scene .call-name{font-size:20px}.call.scene .call-text{min-height:52px;font-size:18px}.call.scene .call-next:after{content:" tap";font-size:11px;font-family:var(--display);letter-spacing:.08em}.toast{color:#0f172a;pointer-events:none;box-shadow:0 20px 60px #00000059, 0 0 0 4px color-mix(in srgb, var(--c) 45%, transparent);background:linear-gradient(135deg,#fff,#f1f5f9);border-radius:20px;align-items:center;gap:14px;max-width:92vw;padding:14px 22px 14px 14px;animation:2.8s cubic-bezier(.2,1.2,.3,1) forwards toast;display:flex;position:absolute;top:26%;left:50%;transform:translate(-50%,-50%)}.toast .t-doc{width:54px;height:64px;font-family:var(--display);color:var(--c);background:#fff;border-radius:8px;flex:none;place-items:center;font-size:18px;font-weight:700;display:grid;position:relative;box-shadow:0 4px 14px #0000002e}.toast .t-doc:before{content:"";background:var(--c);border-radius:8px 8px 0 0;height:12px;position:absolute;top:0;left:0;right:0}.toast .t-kicker{font-family:var(--display);letter-spacing:.16em;color:var(--c);font-size:12px;font-weight:700}.toast .t-title{font-family:var(--display);font-size:22px;font-weight:700;line-height:1.1}.toast .t-detail{color:#475569;margin-top:2px;font-size:13px;font-weight:700}@keyframes toast{0%{opacity:0;transform:translate(-50%,-30%)scale(.7)}10%{opacity:1;transform:translate(-50%,-50%)scale(1.04)}16%{transform:translate(-50%,-50%)scale(1)}85%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-70%)scale(.96)}}.hint{left:50%;bottom:calc(26px + var(--safe-b));background:var(--glass-2);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);pointer-events:none;border-radius:16px;flex-wrap:wrap;justify-content:center;gap:16px;max-width:94vw;padding:10px 16px;font-size:14px;font-weight:700;animation:.4s fade-in;display:flex;position:absolute;transform:translate(-50%)}.hint kbd{font-family:var(--display);color:#0f172a;background:#fff;border-radius:6px;margin:0 2px;padding:1px 7px;font-size:13px;box-shadow:0 2px #94a3b8}@keyframes fade-in{0%{opacity:0}}.touch{pointer-events:none;transition:opacity .2s;position:absolute;top:0;bottom:0;left:0;right:0}body.in-scene .touch{opacity:0;pointer-events:none}body.in-scene .touch *{pointer-events:none!important}.t-dpad{left:calc(18px + var(--safe-l));bottom:calc(18px + var(--safe-b));pointer-events:auto;touch-action:none;-webkit-backdrop-filter:blur(6px);background:#0f172a59;border:1.5px solid #ffffff38;border-radius:42px;width:176px;height:84px;display:flex;position:absolute}.t-arrow{border-radius:42px;flex:1;place-items:center;transition:background 80ms;display:grid}.t-arrow svg{fill:none;stroke:#ffffffe6;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:34px;height:34px}.t-arrow.on{background:#ffffff38}.t-actions{right:calc(18px + var(--safe-r));bottom:calc(18px + var(--safe-b));pointer-events:auto;align-items:flex-end;gap:14px;display:flex;position:absolute}.t-btn{touch-action:none;-webkit-backdrop-filter:blur(6px);border:1.5px solid #ffffff59;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:1px;width:78px;height:78px;transition:transform 60ms,background 80ms;display:flex}.t-jump{background:#3b82f68c;width:90px;height:90px;margin-bottom:26px}.t-stamp{background:#ef444480}.t-btn.on{filter:brightness(1.3);transform:scale(.92)}.t-ico svg{fill:#fff;width:30px;height:30px}.t-lbl{font-family:var(--display);letter-spacing:.1em;font-size:10px;font-weight:700}#screens{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.screen{pointer-events:auto;padding:calc(16px + var(--safe-t)) calc(16px + var(--safe-r)) calc(16px + var(--safe-b)) calc(16px + var(--safe-l));justify-content:center;align-items:center;animation:.35s fade-in;display:flex;position:absolute;top:0;bottom:0;left:0;right:0;overflow-y:auto}.screen.out{animation:.3s forwards fade-out}@keyframes fade-out{to{opacity:0}}.dim{-webkit-backdrop-filter:blur(6px);background:#0206179e}.panel{background:linear-gradient(160deg,#1e293bf0,#0f172af5);border:1px solid #ffffff24;border-radius:26px;width:min(520px,100%);max-height:100%;padding:26px;animation:.4s cubic-bezier(.2,1.3,.4,1) panel-in;overflow-y:auto;box-shadow:0 30px 80px #00000080,inset 0 1px #ffffff14}@keyframes panel-in{0%{opacity:0;transform:translateY(20px)scale(.96)}}.panel h2{font-family:var(--display);letter-spacing:.01em;margin:0 0 14px;font-size:30px}.panel p{color:#cbd5e1;font-weight:600;line-height:1.5}.btn{width:100%;font-family:var(--display);background:#ffffff12;border:1px solid #ffffff24;border-radius:16px;justify-content:center;align-items:center;gap:10px;margin-top:10px;padding:14px 20px;font-size:18px;font-weight:600;transition:transform .12s,background .15s,box-shadow .15s;display:flex}.btn:hover,.btn.sel{background:#ffffff24;outline:none;transform:translateY(-1px)}.btn:focus-visible{background:#ffffff24;outline:none;transform:translateY(-1px)}.btn:active{transform:scale(.97)}.btn.primary{background:linear-gradient(#60a5fa,#2563eb);border-color:#bfdbfe99;padding:16px 22px;font-size:21px;box-shadow:0 10px 30px #2563eb73,inset 0 1px #ffffff59}.btn.primary:hover,.btn.primary.sel{box-shadow:0 14px 36px #2563eb99,inset 0 1px #ffffff59}.btn.small{padding:10px 14px;font-size:15px}.btn-row{gap:10px;display:flex}.btn-row .btn{flex:1}.title-screen{padding-left:calc(7vw + var(--safe-l));background:linear-gradient(90deg,#0f0a3273,#0f0a3200 60%);flex-direction:column;justify-content:center;align-items:flex-start;gap:5vh}.logo-wrap{text-align:left;animation:.9s cubic-bezier(.2,1.4,.4,1) logo-in}@keyframes logo-in{0%{opacity:0;transform:translateY(-40px)scale(.9)}}.logo{font-family:var(--display);letter-spacing:.01em;color:#fff;text-shadow:0 3px #bfdbfe,0 6px #60a5fa,0 9px #2563eb,0 14px #1e3a8a,0 22px 40px #00000073;margin:0;font-size:clamp(54px,11vw,132px);font-weight:700;line-height:.9}.logo .dot{color:#fbbf24}.tagline{font-family:var(--display);letter-spacing:.18em;color:#ef4444;background:#ffffffeb;border:3px solid #ef4444;border-radius:8px;margin-top:16px;padding:5px 14px;font-size:clamp(12px,1.8vw,17px);font-weight:700;display:inline-block;transform:rotate(-3deg);box-shadow:0 8px 24px #00000040}.title-menu{width:min(380px,90vw);animation:.6s cubic-bezier(.2,1.3,.4,1) .2s both panel-in}@media (orientation:portrait){.title-screen{padding:calc(8vh + var(--safe-t)) 16px calc(6vh + var(--safe-b));background:0 0;justify-content:space-between;align-items:center}.logo-wrap{text-align:center}}.title-foot{bottom:calc(10px + var(--safe-b));text-align:center;color:#e2e8f0bf;text-shadow:0 1px 4px #0009;font-size:12px;font-weight:700;position:absolute;left:0;right:0}.card-screen{background:radial-gradient(circle at 30% 20%, color-mix(in srgb, var(--c) 45%, #0b1220), #0b1220 70%)}.stage-card{text-align:left;width:min(640px,100%);animation:.5s cubic-bezier(.2,1.3,.4,1) panel-in}.stage-num{font-family:var(--display);letter-spacing:.3em;color:var(--c);font-size:14px;font-weight:700}.stage-title{font-family:var(--display);margin:6px 0 4px;font-size:clamp(40px,7vw,72px);font-weight:700;line-height:1}.stage-goal{color:#cbd5e1;margin-bottom:18px;font-size:20px;font-weight:700}.stage-obj{gap:8px;margin:0 0 18px;padding:0;list-style:none;display:grid}.stage-obj li{align-items:center;gap:10px;font-size:16px;font-weight:700;display:flex}.stage-obj li:before{content:"";border:2px solid var(--c);border-radius:5px;flex:none;width:18px;height:18px}.stage-tip{color:#cbd5e1;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:14px;padding:12px 14px;font-size:14px;font-weight:600;line-height:1.45}.stage-tip b{color:var(--c);font-family:var(--display);letter-spacing:.08em;margin-bottom:2px;font-size:12px;display:block}.press{font-family:var(--display);color:#fff;opacity:0;margin-top:18px;font-weight:600;animation:.4s .8s forwards fade-in,1.4s 1.2s infinite pulse}@keyframes pulse{50%{opacity:.45}}.receipt{color:#1f2937;transform-origin:top;background:#fffdf7;border-radius:4px;width:min(360px,88vw);padding:22px 22px 30px;font-family:Courier New,ui-monospace,monospace;font-size:14px;line-height:1.5;animation:1.4s steps(14,end) both print;position:relative;box-shadow:0 30px 80px #00000080;-webkit-mask:linear-gradient(#000 0 0) top/100% calc(100% - 10px) no-repeat,radial-gradient(circle at 8px 100%,#0000 7px,#000 7.5px) 0 100%/16px 11px repeat-x;mask:linear-gradient(#000 0 0) top/100% calc(100% - 10px) no-repeat,radial-gradient(circle at 8px 100%,#0000 7px,#000 7.5px) 0 100%/16px 11px repeat-x}@keyframes print{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}.receipt h3{text-align:center;letter-spacing:.1em;margin:0 0 6px;font-size:16px}.receipt hr{border:none;border-top:2px dashed #9ca3af;margin:10px 0}.receipt .row{justify-content:space-between;gap:10px;display:flex}.receipt .rej{text-align:center;color:#b91c1c;letter-spacing:.08em;margin-top:12px;font-size:18px;font-weight:700}.receipt .code{text-align:center;font-weight:700}.receipt-stamp{font-family:var(--display);color:#dc2626;opacity:0;letter-spacing:.06em;white-space:nowrap;mix-blend-mode:multiply;border:5px solid #dc2626;border-radius:10px;padding:2px 14px;font-size:34px;font-weight:700;animation:.35s cubic-bezier(.3,1.8,.5,1) 1.9s forwards stamp-in;position:absolute;top:58%;left:50%;transform:translate(-50%,-50%)rotate(-14deg)}@keyframes stamp-in{0%{opacity:0;transform:translate(-50%,-50%)rotate(-14deg)scale(2.4)}to{opacity:.88;transform:translate(-50%,-50%)rotate(-14deg)scale(1)}}.receipt-caption{bottom:calc(24px + var(--safe-b));text-align:center;color:#cbd5e1;font-weight:700;animation:.6s 2.4s both fade-in;position:absolute;left:0;right:0}.packet-list{gap:8px;margin:6px 0 4px;display:grid}.packet-item{background:#ffffff0a;border:1px solid #ffffff14;border-radius:14px;align-items:center;gap:12px;padding:10px 12px;display:flex}.packet-item .pi-ico{width:38px;height:46px;font-family:var(--display);color:#ffffff4d;background:#ffffff0f;border:1px dashed #ffffff40;border-radius:7px;flex:none;place-items:center;font-size:12px;font-weight:700;display:grid;position:relative}.packet-item.got .pi-ico{color:var(--c);background:#fff;border:none}.packet-item.got .pi-ico:before{content:"";background:var(--c);border-radius:7px 7px 0 0;height:8px;position:absolute;top:0;left:0;right:0}.pi-label{font-family:var(--display);font-size:16px;font-weight:600}.pi-detail{color:var(--muted);margin-top:1px;font-size:13px;font-weight:700}.packet-item:not(.got) .pi-detail{opacity:.7;font-style:italic}.pi-state{margin-left:auto;font-size:18px}.set-row{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-weight:700;display:flex}.set-row input[type=range]{accent-color:#60a5fa;width:50%}.seg{background:#ffffff14;border-radius:12px;padding:3px;display:flex}.seg button{font-weight:800;font-family:var(--body);background:0 0;border:none;border-radius:9px;padding:7px 12px}.seg button.on{background:#3b82f6}.chapters{gap:8px;display:grid}.chapter{text-align:left;font-weight:700;font-family:var(--body);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;align-items:center;gap:12px;padding:12px 14px;display:flex}.chapter:hover{background:#ffffff1f;outline:none}.chapter:focus-visible{background:#ffffff1f;outline:none}.chapter .ch-n{width:36px;height:36px;font-family:var(--display);background:var(--c);color:#fff;border-radius:10px;flex:none;place-items:center;font-weight:700;display:grid}.chapter .ch-t{font-family:var(--display);font-size:17px;font-weight:600}.chapter .ch-g{color:var(--muted);font-size:13px}.howto-grid{grid-template-columns:auto 1fr;align-items:center;gap:10px 16px;font-weight:700;display:grid}.howto-grid kbd{font-family:var(--display);color:#0f172a;white-space:nowrap;background:#fff;border-radius:7px;margin:2px;padding:2px 8px;font-size:14px;display:inline-block;box-shadow:0 2px #94a3b8}.down-screen{background:#0206178c;flex-direction:column}.big-stamp{font-family:var(--display);letter-spacing:.04em;white-space:nowrap;background:#ffffff0a;border:8px solid;border-radius:16px;padding:6px 26px;font-size:clamp(34px,8vw,80px);font-weight:700;animation:.45s cubic-bezier(.3,1.8,.5,1) both big-stamp;transform:rotate(-10deg)}.big-stamp.red{color:#f87171}.big-stamp.green{color:#4ade80;text-shadow:0 0 30px #4ade8080;box-shadow:0 0 60px #4ade8059,inset 0 0 40px #4ade8033}@keyframes big-stamp{0%{opacity:0;transform:rotate(-10deg)scale(3)}to{opacity:1;transform:rotate(-10deg)scale(1)}}.down-sub{color:#e2e8f0;margin-top:26px;font-weight:700;animation:.5s .5s both fade-in}.clear-card{text-align:center}.clear-kicker{font-family:var(--display);color:#86efac;letter-spacing:.3em;font-size:14px;font-weight:700}.stats{grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0 8px;display:grid}.stat{background:#ffffff0f;border:1px solid #ffffff14;border-radius:16px;padding:12px 8px}.stat .v{font-family:var(--display);font-size:26px;font-weight:700}.stat .k{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.stats.four{grid-template-columns:repeat(2,1fr)}.ending-screen{background:radial-gradient(circle at 50% 40%,#22c55e2e,#0206178c 70%);flex-direction:column}.ending-panel{text-align:center;width:min(600px,100%)}.credits{color:var(--muted);margin-top:12px;font-size:13px;font-weight:700;line-height:1.7}.credits b{color:#e2e8f0}#fade{pointer-events:none;opacity:0;background:#0b1220;transition:opacity .45s;position:absolute;top:0;bottom:0;left:0;right:0}#fade.on{opacity:1;pointer-events:auto}#fade.white{background:#fff}#rotate-tip{top:calc(64px + var(--safe-t));background:var(--glass-2);border:1px solid var(--line);pointer-events:none;white-space:nowrap;border-radius:999px;padding:8px 16px;font-size:13px;font-weight:800;animation:.4s fade-in;position:absolute;left:50%;transform:translate(-50%)}@media (max-width:900px),(max-height:520px){.call{border-radius:18px;gap:10px;width:min(560px,100vw - 24px);min-width:0;padding:8px 12px 8px 8px}.call-portrait{width:48px;height:48px}.call-text{min-height:38px;font-size:14px}.call-name{font-size:15px}.call-role{display:none}.call.scene .call-portrait{width:64px;height:64px}.call.scene .call-text{font-size:15px}.heart{width:20px;height:18px}.chip{padding:5px 10px;font-size:14px}.pk{width:24px;height:30px;font-size:9px}.packet-bar .pk-title{display:none}.toast .t-title{font-size:18px}.toast{padding:10px 16px 10px 10px}.toast .t-doc{width:42px;height:50px;font-size:14px}}@media (max-height:520px) and (min-width:600px){.call{top:calc(8px + var(--safe-t));width:min(460px,100vw - 420px);min-width:300px}.hud-left,.hud-right{top:calc(8px + var(--safe-t))}.hud-left{left:calc(10px + var(--safe-l))}.hud-right{right:calc(10px + var(--safe-r))}.t-btn{width:68px;height:68px}.t-jump{width:80px;height:80px;margin-bottom:18px}.t-dpad{width:160px;height:74px}.panel{padding:18px}.panel h2{margin-bottom:8px;font-size:24px}.btn{margin-top:7px;padding:10px 16px;font-size:16px}.btn.primary{padding:12px 18px;font-size:18px}.logo{font-size:clamp(40px,13vh,90px)}.title-screen{gap:3vh}.stage-title{font-size:40px}.stage-goal{margin-bottom:8px;font-size:16px}.stage-obj{gap:4px;margin-bottom:10px}.stage-obj li{font-size:14px}}@media (max-width:600px) and (orientation:portrait){.call{top:calc(98px + var(--safe-t))}.t-dpad{width:150px;height:72px}.t-btn{width:66px;height:66px}.t-jump{width:76px;height:76px}.stats{grid-template-columns:repeat(2,1fr)}}
