*{margin:0;padding:0;box-sizing:border-box}:root{--ink-950: #0d0918;--ink-900: #140e22;--gold: #ffd166;--gold-soft: #ffe9b3;--violet: #8f6bff;--violet-deep: #4a2f8f;--text: #f3eeff;--text-dim: #b9aede;--paper: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.045 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}html,body,#root{height:100%;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}@supports (height: 100dvh){html,body,#root{height:100dvh}}body{background:#140e22;color:#f3eeff;font-family:Jua,Apple SD Gothic Neo,Malgun Gothic,sans-serif}.app{position:relative;height:100%}.app.force-cw,.app.force-ccw{position:fixed;top:0;left:0;width:100vh;height:100vw;width:100dvh;height:100dvw;transform-origin:top left}.app.force-cw{transform:translate(100vw) rotate(90deg);transform:translate(100dvw) rotate(90deg)}.app.force-ccw{transform:translateY(100vh) rotate(-90deg);transform:translateY(100dvh) rotate(-90deg)}.app.force-cw .screen,.app.force-ccw .screen{touch-action:pan-x pan-y}.canvas{position:absolute!important;top:0;right:0;bottom:0;left:0}.hud{position:absolute;top:max(10px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));display:flex;align-items:center;gap:10px;pointer-events:none;z-index:50}.hud-chip{background:#140c28b8;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:6px 14px;font-size:17px;white-space:nowrap;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:inset 0 1px #ffffff14,0 2px 8px #00000040}.mute-btn{font-family:inherit;color:#f3eeff;cursor:pointer;pointer-events:auto}.title-mute{position:absolute;top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right))}.title-gfx{position:absolute;top:max(12px,env(safe-area-inset-top));right:calc(max(12px,env(safe-area-inset-right)) + 52px)}.hp-wrap{position:relative;flex:1;height:22px;background:#140c28b8;border:1px solid rgba(255,255,255,.14);border-radius:999px;overflow:hidden}.hp-ghost{position:absolute;left:0;top:0;bottom:0;background:#ffe08a8c;transition:width .55s ease .28s}.hp-bar{position:relative;height:100%;background:linear-gradient(90deg,#ff5d7e,#ff8a5c);box-shadow:inset 0 1px #ffffff59;transition:width .15s ease-out}.hp-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:13px;text-shadow:0 1px 2px rgba(0,0,0,.6)}.hit-flash{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,transparent 55%,rgba(255,60,80,.55) 100%);pointer-events:none;animation:flashFade .35s ease-out forwards;z-index:60}.hit-flash.gold{background:radial-gradient(ellipse at center,#ffd16640,#ffb02080);animation-duration:.6s}.mini-map{position:absolute;top:calc(max(10px,env(safe-area-inset-top)) + 78px);right:max(12px,env(safe-area-inset-right));z-index:20;background:#140c288c;border:1px solid rgba(255,255,255,.16);border-radius:12px;pointer-events:none;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:inset 0 1px #ffffff12,0 4px 14px #0000004d}.combo-chip{position:absolute;bottom:max(56px,calc(env(safe-area-inset-bottom) + 48px));left:50%;transform:translate(-50%);z-index:40;pointer-events:none;background:#28100ad1;border:1px solid rgba(255,154,61,.75);border-radius:999px;padding:5px 16px;font-size:16px;color:#ffcf8a;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.6);box-shadow:0 0 16px #ff7a2859;animation:comboPop .28s cubic-bezier(.2,1.6,.4,1)}@keyframes comboPop{0%{transform:translate(-50%) scale(.6);opacity:0}to{transform:translate(-50%) scale(1);opacity:1}}.dex-screen{background:var(--paper),radial-gradient(ellipse at 50% 20%,#3d2f1e,#150f08 75%)}.dex-sec{font-size:15px;color:#d8b98a;margin-top:4px}.dex-grid{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;max-width:680px}.dex-entry{display:flex;flex-direction:column;align-items:center;gap:2px;width:96px;padding:7px 4px;background:#140e088c;border:1px solid rgba(255,255,255,.1);border-radius:10px}.dex-entry.found{background:#281c0eb3;border-color:#ffd16673}.dex-icon{font-size:22px;filter:grayscale(1) opacity(.5)}.dex-entry.found .dex-icon{filter:none}.dex-name{font-size:11px;color:#7d6f56;text-align:center}.dex-entry.found .dex-name{color:#ffe9b3}.dex-milestones{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.gfx-notice{position:absolute;top:calc(max(10px,env(safe-area-inset-top)) + 46px);left:50%;transform:translate(-50%);z-index:55;pointer-events:none;background:#140c28e6;border:1px solid rgba(255,209,102,.5);border-radius:999px;padding:8px 18px;font-size:14px;color:#ffe9b3;white-space:nowrap;max-width:94vw;overflow:hidden;text-overflow:ellipsis;animation:gfxNotice 5s ease-in-out forwards}@keyframes gfxNotice{0%{opacity:0;transform:translate(-50%,-8px)}8%,80%{opacity:1;transform:translate(-50%)}to{opacity:0}}.coach-chip{position:absolute;top:calc(max(10px,env(safe-area-inset-top)) + 88px);left:50%;transform:translate(-50%);z-index:55;pointer-events:none;background:#140c28e6;border:1px solid rgba(201,180,255,.55);border-radius:999px;padding:9px 20px;font-size:15px;color:#e8defc;white-space:nowrap;max-width:94vw;overflow:hidden;text-overflow:ellipsis;box-shadow:0 0 18px #8f6bff59;animation:gfxNotice 9s ease-in-out forwards}.build-row{position:absolute;bottom:max(10px,env(safe-area-inset-bottom));left:max(12px,env(safe-area-inset-left));display:flex;gap:6px;pointer-events:none}.build-chip{background:#140c28b8;border:1px solid rgba(255,209,102,.35);border-radius:10px;padding:4px 8px;font-size:18px}.build-chip em{font-style:normal;font-size:12px;color:#ffd166;margin-left:2px}@keyframes flashFade{0%{opacity:1}to{opacity:0}}.screen{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;justify-content:safe center;gap:14px;padding:24px;padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right));padding-bottom:max(24px,env(safe-area-inset-bottom));text-align:center;z-index:30;animation:screenIn .22s ease-out;overflow-y:auto;touch-action:pan-y}@keyframes screenIn{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}.ink-wipe{position:absolute;top:0;right:0;bottom:0;left:0;z-index:45;pointer-events:none;overflow:hidden}.ink-wipe:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 46%,var(--ink-950) 30%,rgba(13,9,24,.94) 62%,rgba(13,9,24,.78) 100%);opacity:0;animation:inkFade .5s ease-in-out forwards}@keyframes inkFade{0%{opacity:0}30%{opacity:1}62%{opacity:1}to{opacity:0}}.debug-screen{z-index:70}.demo-caption{position:absolute;left:50%;bottom:max(64px,calc(env(safe-area-inset-bottom) + 56px));transform:translate(-50%);max-width:min(92vw,560px);padding:10px 18px;background:#140e22e0;border:1px solid #8f6bff;border-radius:14px;color:#ffe9b3;font-size:16px;text-align:center;z-index:75;pointer-events:none;animation:demoCap .35s ease-out}@keyframes demoCap{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.demo-exit{position:absolute;right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));z-index:75;background:#140e22b3;border:1px solid #5a4a86;color:#cbbcf2;border-radius:10px;padding:6px 12px;font-size:13px;font-family:inherit;cursor:pointer}.demo-end{z-index:65;background:radial-gradient(ellipse at 50% 30%,#2c2050,#140e22 70%)}.demo-start{border-color:#8f6bff}.demo-note{color:#8de0a0;font-size:14px}.title-screen{background:radial-gradient(ellipse at 50% 30%,#2c2050,#140e22 70%)}.draft-screen,.over-screen,.quiz-screen{background:var(--paper),#0a0614c7;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.quiz-sub{font-size:16px;color:#b9aede}.story-screen{background:radial-gradient(ellipse at 50% 20%,#241a44,#0d0918 75%);cursor:pointer;justify-content:center;gap:22px}.story-icon{font-size:72px;filter:drop-shadow(0 6px 18px rgba(143,107,255,.45))}.story-text{white-space:pre-line;font-size:clamp(17px,4.6vw,22px);line-height:1.65;color:#e8e1ff;max-width:560px}.story-btns{display:flex;align-items:center;gap:14px}.skip-btn{font-family:inherit;font-size:15px;color:#9c8fc4;background:none;border:1px solid rgba(156,143,196,.4);border-radius:999px;padding:8px 16px;cursor:pointer}.story-page{font-size:13px;color:#7d71a6}.town-screen{background:linear-gradient(180deg,#1b1340,#2c2050 55%,#3b2d63);justify-content:flex-end;padding-bottom:max(20px,env(safe-area-inset-bottom));cursor:default}.town-sky{position:absolute;top:8%;right:12%;font-size:52px;filter:drop-shadow(0 0 24px rgba(255,245,200,.5))}.town-scape{position:absolute;bottom:34%;left:0;right:0;font-size:clamp(40px,9vw,64px);letter-spacing:.4em;text-align:center;opacity:.95}.dialog-box{width:min(94vw,620px);background:var(--paper),linear-gradient(180deg,#1a1230f0,#0d091af0);border:1px solid rgba(143,107,255,.55);border-radius:18px;padding:18px 20px 14px;text-align:left;cursor:pointer;box-shadow:0 0 0 1px #ffffff0d,inset 0 0 0 1px #ffffff0a,inset 0 1px #ffffff17,0 14px 40px #0000008c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.dialog-speaker{display:inline-block;font-size:15px;color:#ffd166;background:#ffd1661f;border-radius:8px;padding:3px 10px;margin-bottom:8px}.dialog-icon{font-size:18px}.dialog-text{white-space:pre-line;font-size:clamp(16px,4.4vw,19px);line-height:1.6;color:#f0eaff}.dialog-next{display:block;margin-top:10px;font-size:12px;color:#8d7fc0;text-align:right;animation:hintPulse 1.4s ease-in-out infinite}.dialog-choices{display:flex;flex-direction:column;gap:10px;margin-top:12px;width:100%;align-items:stretch}.choice-btn{font-family:inherit;font-size:17px;color:#fff;text-align:left;background:linear-gradient(180deg,#4b3a8c,#37296b);border:2px solid #8f6bff;border-radius:14px;padding:12px 16px;cursor:pointer;transition:transform .12s ease,border-color .15s ease,box-shadow .15s ease;box-shadow:inset 0 1px #ffffff1f,0 3px 10px #0000004d}@media (hover: hover){.choice-btn:hover:not(:disabled){transform:translateY(-1px)}}.choice-btn:active{transform:scale(.98);background:linear-gradient(180deg,#5b48a5,#443480)}.choice-btn:disabled{opacity:.45;cursor:default}.choice-btn.focused{border-color:#ffd166;background:linear-gradient(180deg,#5b48a5,#443480);box-shadow:0 0 0 2px #ffd1664d,0 0 18px #ffd16640}.card.focused{border-color:#ffd166;transform:translateY(-5px);box-shadow:0 0 22px #ffd16666}.big-btn.focused{box-shadow:0 6px #4a2f8f,0 0 0 3px #ffd1668c,0 0 22px #ffd1664d}.big-btn.focused:active{box-shadow:0 3px #4a2f8f,0 0 0 3px #ffd1668c}.menu-col{display:flex;flex-direction:column;align-items:center;gap:14px}.big-btn.daily-btn{font-size:18px;padding:10px 30px;background:linear-gradient(180deg,#3f6b52,#2c4f3a);box-shadow:0 6px #1d3427}.big-btn.daily-btn:active{box-shadow:0 3px #1d3427}.big-btn.daily-btn.focused{box-shadow:0 6px #1d3427,0 0 0 3px #ffd1668c,0 0 22px #ffd1664d}.daily-hint{max-width:440px;font-size:13px}.quiz-screen .dialog-choices{max-width:420px}.debug-screen{background:#080510e6}.debug-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;width:min(92vw,420px)}.debug-jump{text-align:center;padding:10px 4px}.debug-row{display:flex;gap:8px;align-items:stretch}.debug-input{font-family:inherit;font-size:17px;width:120px;color:#f3eeff;background:#ffffff14;border:2px solid #6a4fd0;border-radius:12px;padding:8px 12px;text-align:center}.shop-coins{margin-top:8px;font-size:17px;color:#ffd166}.shop-item{display:flex;flex-direction:column;gap:2px}.shop-item:disabled{opacity:.45;cursor:default}.shop-cost{font-size:13px;color:#c9bfe8}.over-lore{white-space:pre-line;font-size:clamp(15px,4.2vw,18px);line-height:1.65;color:#d9ccff;max-width:520px;text-shadow:0 0 12px rgba(143,107,255,.3)}.boss-bar-wrap{position:absolute;top:calc(max(10px,env(safe-area-inset-top)) + 42px);left:50%;transform:translate(-50%);width:min(78vw,420px);text-align:center;pointer-events:none}.boss-label{font-size:14px;color:#e0b3ff;text-shadow:0 1px 3px rgba(0,0,0,.7)}.boss-bar-outer{margin-top:4px;height:12px;background:#140c28bf;border:1px solid rgba(224,179,255,.4);border-radius:999px;overflow:hidden}.boss-bar{height:100%;background:linear-gradient(90deg,#c06bff,#ff3d5e);transition:width .12s ease-out}.low-hp{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 52%,rgba(120,0,20,.5) 100%);animation:lowHpPulse 1s ease-in-out infinite}@keyframes lowHpPulse{0%,to{opacity:.55}50%{opacity:1}}.story-quiz-q{font-size:clamp(36px,9vw,56px);color:#ffd166}.story-quiz-choices{max-width:340px}.ending-screen{background:radial-gradient(ellipse at 50% 30%,#3d3418,#120e08 75%);cursor:pointer}.ending-title{color:#ffd166;font-size:clamp(40px,9vw,64px);text-shadow:0 4px 0 #6b5312,0 8px 24px rgba(0,0,0,.5)}.memory-screen{background:radial-gradient(ellipse at 50% 30%,#4a3a2a,#17110c 75%)}.memory-label{font-size:15px;color:#d8b98a}.memory-icon{font-size:64px;filter:drop-shadow(0 0 22px rgba(255,209,102,.55));animation:memGlow 2.4s ease-in-out infinite}@keyframes memGlow{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.memory-title{color:#ffd166;font-size:clamp(24px,6vw,32px)}.memory-text{white-space:pre-line;font-size:clamp(16px,4.4vw,20px);line-height:1.7;color:#f4e8d2;max-width:540px}.memory-count{font-size:13px;color:#a98f68}.memory-count b{color:#ffd166}.memory-set{font-size:14px;color:#d8b98a;letter-spacing:.02em}.set-row{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;max-width:560px}.set-chip{display:inline-flex;align-items:center;gap:5px;background:#140c28b8;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:4px 11px;font-size:13px;color:#d8cff2}.set-chip em{font-style:normal;font-size:11px;color:#9c8fc4}.set-chip.done{border-color:#ffd16699;color:#ffe9b3;box-shadow:0 0 12px #ffd1662e}.set-chip.done em{color:#ffd166}.set-chip b{font-size:14px}.memset-screen{background:radial-gradient(ellipse at 50% 32%,#5a4326,#17110c 74%)}.power-card{display:flex;flex-direction:column;align-items:center;gap:6px;background:#140e22db;border:2px solid #ffd166;border-radius:16px;padding:14px 22px;box-shadow:0 0 26px #ffd16652;animation:rewardPop .5s cubic-bezier(.2,1.6,.4,1);max-width:460px}.power-icon{font-size:38px}.power-name{font-size:20px;color:#ffd166}.power-desc{font-size:14px;color:#e8dcc0;line-height:1.5}.ghost-mark{color:#b9aede;opacity:.9}.ghost-mark.beaten{color:#ffd166;text-shadow:0 0 8px rgba(255,209,102,.6)}.ghost-banner{position:absolute;top:calc(max(10px,env(safe-area-inset-top)) + 46px);left:50%;transform:translate(-50%);z-index:55;pointer-events:none;background:#140c28eb;border:1px solid rgba(255,209,102,.7);border-radius:999px;padding:9px 20px;font-size:15px;color:#ffe9b3;white-space:nowrap;max-width:94vw;overflow:hidden;text-overflow:ellipsis;box-shadow:0 0 22px #ffd16673;animation:gfxNotice 4.2s ease-in-out forwards}.ghost-line{font-size:14px;color:#b9aede}.ghost-line.win{color:#ffd166;text-shadow:0 0 10px rgba(255,209,102,.4)}.revive-banner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#140c28e6;border:2px solid #ffd166;border-radius:16px;padding:14px 26px;font-size:clamp(15px,4vw,19px);color:#ffe9b3;text-align:center;z-index:55;pointer-events:none;box-shadow:0 0 30px #ffd16666;animation:reviveFade 2.6s ease-out forwards}@keyframes reviveFade{0%{opacity:0;transform:translate(-50%,-40%) scale(.85)}14%{opacity:1;transform:translate(-50%,-50%) scale(1)}75%{opacity:1}to{opacity:0}}.lore-screen{background:radial-gradient(ellipse at 50% 40%,rgba(60,48,90,.5) 0%,transparent 70%),linear-gradient(180deg,#171126,#0d0918)}.lore-label{font-size:15px;color:#9c8fc4}.lore-text{white-space:pre-line;font-size:clamp(17px,4.8vw,22px);line-height:1.75;color:#d9ccff;max-width:560px;text-shadow:0 0 14px rgba(143,107,255,.35)}.town-floor-chip{position:absolute;top:max(12px,env(safe-area-inset-top));left:50%;transform:translate(-50%);background:#140c28cc;border:1px solid rgba(255,209,102,.4);border-radius:999px;padding:6px 16px;font-size:14px;color:#ffe9b3}.dialog-gift{margin-top:8px;font-size:16px;color:#ffd166;animation:rewardPop .45s cubic-bezier(.2,1.6,.4,1)}.doorrun-hint{position:absolute;bottom:max(18px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);background:#140c28c7;border:1px solid rgba(255,209,102,.4);border-radius:999px;padding:8px 18px;font-size:15px;color:#ffe9b3;white-space:nowrap;max-width:94vw;overflow:hidden;text-overflow:ellipsis;pointer-events:none;animation:hintPulse 1.6s ease-in-out infinite}@keyframes hintPulse{0%,to{opacity:1}50%{opacity:.55}}.hud-spacer{flex:1}.village-hint{position:absolute;top:calc(max(10px,env(safe-area-inset-top)) + 46px);left:50%;transform:translate(-50%);background:#140c28b8;border:1px solid rgba(154,107,255,.4);border-radius:999px;padding:6px 16px;font-size:13px;color:#d8cff2;max-width:92vw;text-align:center;pointer-events:none;z-index:40}.village-action{position:absolute;bottom:max(24px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:40;font-family:inherit;font-size:17px;color:#fff;background:linear-gradient(180deg,#6a4fd0,#4a2f8f);border:2px solid #9a6bff;border-radius:999px;padding:12px 26px;box-shadow:0 8px 24px #7a4dff80;cursor:pointer;animation:villagePulse 1.3s ease-in-out infinite}@keyframes villagePulse{0%,to{transform:translate(-50%) scale(1)}50%{transform:translate(-50%) scale(1.06)}}.village-talk{justify-content:flex-end;padding-bottom:max(24px,env(safe-area-inset-bottom));background:none}.reward-pop{animation:rewardPop .45s cubic-bezier(.2,1.6,.4,1);border-color:#ffd166;box-shadow:0 0 28px #ffd16673}@keyframes rewardPop{0%{transform:scale(.3) rotate(-6deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}h1{font-size:clamp(44px,10vw,72px);color:#c9b4ff;text-shadow:0 4px 0 #4a2f8f,0 8px 24px rgba(0,0,0,.5)}.title-screen h1{background:linear-gradient(180deg,#f2ecff,#c9b4ff 46%,#9a78ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;filter:drop-shadow(0 4px 0 #4a2f8f) drop-shadow(0 12px 30px rgba(143,107,255,.55));animation:titleFloat 4.2s ease-in-out infinite}@keyframes titleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.title-fx{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}h2{font-size:clamp(24px,6vw,36px)}.tagline{font-size:18px;color:#b9aede}.howto{display:flex;flex-direction:column;gap:6px;background:#ffffff0f;border-radius:14px;padding:14px 20px;font-size:16px;color:#d8cff2}.best{color:#ffd166;font-size:17px}.big-btn{font-family:inherit;font-size:22px;color:#fff;background:linear-gradient(180deg,#8f6bff,#6a3ee8);border:none;border-radius:16px;padding:14px 44px;cursor:pointer;box-shadow:0 6px #4a2f8f,inset 0 1px #ffffff40;transition:filter .15s ease}@media (hover: hover){.big-btn:hover{filter:brightness(1.08)}}.big-btn:active{transform:translateY(3px);box-shadow:0 3px #4a2f8f}.cards{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.card{font-family:inherit;display:flex;flex-direction:column;align-items:center;gap:8px;width:min(30vw,150px);min-width:108px;padding:18px 10px;color:#f3eeff;background:var(--paper),linear-gradient(180deg,#322558,#241a40);border:2px solid #6a4fd0;border-radius:16px;cursor:pointer;position:relative;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;box-shadow:inset 0 1px #ffffff17,0 6px 18px #00000059;animation:cardIn .32s cubic-bezier(.2,1.4,.4,1) backwards}.card:nth-child(2){animation-delay:.07s}.card:nth-child(3){animation-delay:.14s}@keyframes cardIn{0%{opacity:0;transform:translateY(16px) scale(.93)}}@media (hover: hover){.card:hover{transform:translateY(-3px)}}.card:active{transform:scale(.97)}.card-icon{font-size:34px}.card-name{font-size:17px;color:#ffd166}.card-desc{font-size:13px;color:#c9bfe8}.card.rarity-rare{border-color:#6ba8ff}.card.rarity-legendary{border-color:#ffd166;box-shadow:0 0 16px #ffd16659}.card.evo{border-color:transparent;background:var(--paper),linear-gradient(180deg,#3d2a4a,#2a1c38) padding-box,linear-gradient(135deg,#ffd166,#ff9ec4,#ffd166) border-box;box-shadow:0 0 22px #ffd16680,0 0 40px #ff9ec440;animation:cardIn .32s cubic-bezier(.2,1.4,.4,1) backwards,evoGlow 1.6s ease-in-out infinite}.card.evo .card-name{background:linear-gradient(90deg,#ffd166,#ffb3d1);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.card.evo .card-tag{color:#ffd166;border-color:#ffd166b3}@keyframes evoGlow{0%,to{box-shadow:0 0 22px #ffd16680,0 0 40px #ff9ec440}50%{box-shadow:0 0 30px #ffd166bf,0 0 56px #ff9ec466}}.card.rarity-legendary:after{content:"";position:absolute;top:-30%;right:-30%;bottom:-30%;left:-30%;background:linear-gradient(115deg,transparent 40%,rgba(255,233,179,.28) 50%,transparent 60%);animation:cardShimmer 2.8s ease-in-out infinite;pointer-events:none}@keyframes cardShimmer{0%{transform:translate(-70%)}45%,to{transform:translate(70%)}}.card-tag{font-size:11px;color:#9c8fc4;border:1px solid rgba(156,143,196,.45);border-radius:999px;padding:1px 8px}.evo-hint{font-size:11px;color:#d9b3ff;border:1px dashed rgba(217,179,255,.5);border-radius:999px;padding:1px 8px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.evo-hint.ready{color:#ffd166;border:1px solid rgba(255,209,102,.8);background:#ffd1661f;animation:evoHintPulse 1.1s ease-in-out infinite}@keyframes evoHintPulse{0%,to{box-shadow:0 0 6px #ffd1664d}50%{box-shadow:0 0 14px #ffd166b3}}.expire-hint{font-size:11px;color:#ffb066;border:1px dashed rgba(255,176,102,.55);border-radius:999px;padding:1px 8px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vstick{position:fixed;width:116px;height:116px;margin:-58px 0 0 -58px;border-radius:50%;border:2px solid rgba(255,209,102,.4);background:radial-gradient(circle,#140c282e 40%,#140c287a);box-shadow:inset 0 0 18px #00000040;z-index:25;pointer-events:none;opacity:0;transition:opacity .12s ease}.vstick.on{opacity:1}.vstick-knob{position:absolute;left:50%;top:50%;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffe9b3f2,#ffd166b3 55%,#c98f1ebf);box-shadow:0 2px 10px #0006,inset 0 1px #ffffff73}.steer-zone{position:fixed;bottom:max(96px,22%);width:62px;height:62px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:2px solid rgba(154,107,255,.45);background:#140c2866;color:#cbbcf2;font-size:24px;z-index:25;pointer-events:none;opacity:.55;transition:opacity .1s ease}.steer-zone.left{left:max(18px,env(safe-area-inset-left))}.steer-zone.right{right:max(18px,env(safe-area-inset-right))}.steer-zone.active{opacity:1;border-color:#ffd166;color:#ffe9b3;background:#4a2f8f8c;box-shadow:0 0 18px #ffd16659}:root.low-h .screen{gap:8px;padding-top:12px;padding-bottom:max(12px,env(safe-area-inset-bottom))}:root.low-h h1{font-size:clamp(28px,10vh,44px)}:root.low-h h2{font-size:clamp(18px,6vh,26px)}:root.low-h .howto{font-size:13px;padding:8px 14px;gap:2px}:root.low-h .menu-col{gap:8px}:root.low-h .big-btn{font-size:18px;padding:10px 34px}:root.low-h .story-icon,:root.low-h .memory-icon{font-size:40px}:root.low-h .story-text,:root.low-h .lore-text,:root.low-h .memory-text,:root.low-h .over-lore{font-size:15px;line-height:1.5}:root.low-h .card{padding:12px 8px;gap:5px}:root.low-h .dialog-box{padding:12px 16px 10px}:root.low-h .dialog-text{font-size:15px}:root.low-h .dialog-choices{gap:6px}:root.low-h .choice-btn{font-size:15px;padding:9px 14px}.rush-label{color:#ffb38a}.rush-bar{background:linear-gradient(90deg,#ffa03d,#ff3d2e);transition:width .1s linear}.rush-vignette{position:absolute;top:0;right:0;bottom:0;left:0;z-index:25;pointer-events:none;background:radial-gradient(ellipse at center,transparent 44%,rgba(150,40,0,.55) 100%);animation:rushPulse .85s ease-in-out infinite}@keyframes rushPulse{0%,to{opacity:.5}50%{opacity:.9}}.arena-buff-screen h2{color:#8de0ff}.card.temp{border-color:#8de0ff99;box-shadow:0 0 14px #5aa0ff38}.card.temp .card-tag{background:#143c5ab3;color:#8de0ff}.charge-btn{position:fixed;right:max(18px,calc(env(safe-area-inset-right) + 14px));bottom:max(84px,calc(env(safe-area-inset-bottom) + 76px));z-index:45;width:68px;height:68px;border-radius:50%;border:2px solid rgba(141,224,255,.55);background:#1428466b;color:#8de0ff;font-size:26px;line-height:1;touch-action:none;-webkit-user-select:none;user-select:none;transition:transform .08s ease-out,background .08s ease-out}.charge-btn:active{transform:scale(.92);background:#3c82c88c}@media (hover: hover) and (pointer: fine){.charge-btn{opacity:.45}}.freeze-btn{position:fixed;right:max(18px,calc(env(safe-area-inset-right) + 14px));bottom:max(164px,calc(env(safe-area-inset-bottom) + 156px));z-index:45;width:56px;height:56px;border-radius:50%;border:2px solid rgba(191,243,255,.35);background:#14284652;color:#bff3ff;font-size:13px;font-weight:700;line-height:1.1;touch-action:none;-webkit-user-select:none;user-select:none;opacity:.5;transition:opacity .2s ease-out,transform .08s ease-out,box-shadow .2s ease-out}.freeze-btn.ready{opacity:1;font-size:24px;border-color:#bff3ff;background:#286ea08c;animation:freezePulse 1.1s ease-in-out infinite}.freeze-btn:active{transform:scale(.9)}@keyframes freezePulse{0%,to{box-shadow:0 0 10px #8de0ff80}50%{box-shadow:0 0 24px #8de0fff2}}@media (hover: hover) and (pointer: fine){.freeze-btn:not(.ready){opacity:.35}}.resolve-btn{position:fixed;right:max(18px,calc(env(safe-area-inset-right) + 14px));bottom:max(244px,calc(env(safe-area-inset-bottom) + 236px));z-index:45;width:56px;height:56px;border-radius:50%;border:2px solid rgba(255,209,102,.35);background:#46321452;color:#ffd166;font-size:13px;font-weight:700;line-height:1.1;touch-action:none;-webkit-user-select:none;user-select:none;opacity:.5;transition:opacity .2s ease-out,transform .08s ease-out,box-shadow .2s ease-out}.resolve-btn.ready{opacity:1;font-size:24px;border-color:#ffd166;background:#a06e1e8c;animation:resolvePulse .9s ease-in-out infinite}.resolve-btn:active{transform:scale(.9)}@keyframes resolvePulse{0%,to{box-shadow:0 0 10px #ffd16680}50%{box-shadow:0 0 24px #ffd166f2}}@media (hover: hover) and (pointer: fine){.resolve-btn:not(.ready){opacity:.35}}.surge-banner{position:absolute;top:calc(max(10px,env(safe-area-inset-top)) + 42px);left:50%;transform:translate(-50%);z-index:45;pointer-events:none;white-space:nowrap;padding:6px 18px;border-radius:999px;background:#3c0814d1;border:1px solid rgba(255,61,94,.8);color:#ffb3c0;font-size:15px;text-shadow:0 1px 3px rgba(0,0,0,.7);animation:surgePulse .7s ease-in-out infinite}.surge-vignette{position:absolute;top:0;right:0;bottom:0;left:0;z-index:24;pointer-events:none;background:radial-gradient(ellipse at center,transparent 38%,rgba(120,0,30,.6) 100%);animation:surgePulse .7s ease-in-out infinite}@keyframes surgePulse{0%,to{opacity:.55}50%{opacity:1}}
