@import"https://fonts.googleapis.com/css2?family=Kanit:wght@300;400;500;600;700&display=swap";:root{--spirit-ink:#080f24;--spirit-panel:rgba(14,24,48,.94);--spirit-gold:#ebc47a;--spirit-border:#967452;--spirit-ice:#72e6cd;--spirit-rose:#f391b5}#app:has(#selection:not(.hidden)) #ui{opacity:0;visibility:hidden;pointer-events:none}#app #selection.modal{isolation:isolate;background:radial-gradient(ellipse at 52% 68%,#753c8270,transparent 47%),linear-gradient(180deg,#050b1c6e,#080f25ad 47%,#030711ee),url(/assets/loading/spirit-gate.svg) center center/cover no-repeat}#app #selection.modal:before{content:"";position:absolute;inset:3px;pointer-events:none;border:1px solid #d1a46b40;box-shadow:inset 0 0 110px 15px #09071eae}#app #selection .panel{width:min(1110px,calc(100vw - 26px));max-height:calc(100dvh - 20px);overflow:auto;background:linear-gradient(145deg,#17223fe8 1%,#0b1428f4 50%,#18182df0);border:1px solid #ebcc91;border-radius:10px;padding:clamp(14px,2.2vw,27px);box-shadow:0 0 0 3px #352942,0 28px 65px #000b,inset 0 0 0 1px #e0af625c,inset 0 -35px 70px #100b21a8;position:relative}#app #selection .panel:before,#app #selection .panel:after{content:"✦";position:absolute;top:8px;color:#ffe8a4;font-size:18px;text-shadow:0 0 15px #ffc681;pointer-events:none}#app #selection .panel:before{left:13px}#app #selection .panel:after{right:13px}#app #selection .eyebrow{color:#d9b6dd;letter-spacing:.38em;font-size:clamp(10px,1vw,13px)}#app #selection h1{font-family:Georgia,Kanit,serif;font-size:clamp(38px,5.5vw,73px);font-weight:800;letter-spacing:.06em;background:linear-gradient(#fff9db,#ffd58a 52%,#bd7961);color:transparent;background-clip:text;-webkit-background-clip:text;filter:drop-shadow(0 3px 8px #000e);text-shadow:none}#app #selection h1 em{font-family:Kanit,system-ui,sans-serif;font-size:clamp(14px,1.7vw,24px);letter-spacing:.18em;color:#e2cfb1;background:none;-webkit-text-fill-color:#e2cfb1;margin-top:-8px;text-shadow:0 3px 13px #13152d}#app #selection .panel>p{max-width:760px;color:#c4d3e8;font-size:clamp(11px,1.1vw,14px);margin:10px auto 17px;line-height:1.45}#app #selection #heroGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(7px,1vw,13px)}#app #selection .hero-card{min-width:0;min-height:202px;padding:11px 8px 10px;border-radius:8px;border:1px solid #bb9864;background:radial-gradient(ellipse at 50% 29%,color-mix(in srgb,var(--accent),transparent 71%) 0%,transparent 61%),linear-gradient(175deg,#26354fe6,#121a30f9 53%,#100e24);box-shadow:inset 0 0 0 1px #e5c89b40,inset 0 -26px 38px #070912cc,0 6px 13px #0007;color:#fce7c4;position:relative;display:flex;align-items:center;flex-direction:column;justify-content:flex-end;transition:transform .15s ease,filter .15s ease,box-shadow .15s ease}#app #selection .hero-card:before{content:"◆";position:absolute;top:4px;left:7px;color:#e0c08a;opacity:.8;font-size:10px}#app #selection .hero-card:hover,#app #selection .hero-card:focus-visible{transform:translateY(-3px);border-color:#ffe7a6;box-shadow:0 0 0 2px #ffdc9c82,0 0 22px #d9b26a6b,inset 0 0 25px #dec59a1a;outline:none}#app #selection .hero-card img{height:clamp(95px,12vw,145px);width:100%;max-height:none;flex:1;min-height:0;object-fit:contain;filter:drop-shadow(0 6px 8px #000c) drop-shadow(0 0 9px color-mix(in srgb,var(--accent),transparent 58%))}#app #selection .hero-card div{max-width:100%;min-width:0}#app #selection .hero-card b{font-size:clamp(13px,1.25vw,16px);line-height:1.2;color:#fff0d0}#app #selection .hero-card small{font-size:11px;color:#dfb9d4}#app #selection .hero-card .play-pill{border:1px solid #ffdc9d;border-radius:5px;padding:4px 23px;background:linear-gradient(#fff1b3,#d29b58);box-shadow:0 3px 9px #0008;color:#2d2034;font-size:11px}#app #selection .foot{color:#b7a9c4;font-size:11px}#app #topbar{height:58px;min-height:58px;padding:6px 16px;background:linear-gradient(180deg,#070f27ee,#08172ab3 75%,#08172a25);border-bottom:1px solid #ae845254;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}#app #topbar .brand{color:#f7d59b;font-family:Georgia,Kanit,serif;font-size:23px;letter-spacing:.03em;text-shadow:0 2px 10px #000}#app #topbar .brand small{font-family:Kanit,sans-serif;color:#e6cad1;font-size:10px;letter-spacing:.08em}#app #topbar #score{color:#f1e4ca;text-shadow:0 2px 9px #000;font-weight:700}#app #topbar #timer{font-variant-numeric:tabular-nums;color:#f7e6ce}#app #shopBtn,#app #viewControls button{background:linear-gradient(#243450e8,#131c38e8);border:1px solid #b39165;border-radius:7px;box-shadow:inset 0 1px #f9e6bd20,0 3px 10px #0009;color:#ffe1ab}#app #shopBtn:focus-visible,#app #viewControls button:focus-visible,#app #hud button:focus-visible{outline:2px solid #fff2a5;outline-offset:2px}#app #hud{background:linear-gradient(160deg,#172642ef,#11172ced 74%,#090e20f7);border:1px solid #c3a06a;border-radius:9px;box-shadow:inset 0 1px #ffebbd51,inset 0 0 0 2px #392e43,0 10px 26px #000c;padding:7px 11px;gap:12px;width:min(760px,calc(100vw - 360px));min-height:106px}#app #hud .avatar{border:1px solid #e9bb77;border-radius:5px;background:radial-gradient(circle at 50% 20%,#66547a,#152443 85%);box-shadow:inset 0 0 13px #080a25}#app #hud #heroName{color:#ffdfab}#app #hud #statsText{color:#c2c9e1}#app #hud .ability{background:radial-gradient(circle at 50% 28%,#515784a9,#171e38 88%);border:1px solid #aa8f70;border-radius:8px;min-height:74px;box-shadow:inset 0 1px #e4d9f345,0 3px 8px #0008}#app #hud .ability b{background:#11162deb;border:1px solid #99836d;color:#ffe1a7}#app #hud .ability small{color:#e9cfad}#app #hud .gold{color:#f9d183}#app #minimap{top:72px;left:16px;bottom:auto!important;border:2px solid #cfac75;border-radius:7px;background:#101e34;box-shadow:0 0 0 2px #17273d,0 6px 20px #000a}#app #notices .toast{background:#121a37eb;border:1px solid #c29b76;border-radius:7px;color:#f3e8d1}#app #shop .panel,#app #finish .panel{background:linear-gradient(148deg,#202743f8,#0c152df8);border:1px solid #deb77d;border-radius:9px;box-shadow:0 0 0 3px #36243e,0 15px 60px #000c}#app #shop .item{background:linear-gradient(#283451,#171f38);border:1px solid #987a6a;border-radius:8px}#app #shop .item:focus-visible{outline:2px solid #ffdb92}#app #finish h1{color:#ffda98}@media(min-width:651px)and (max-width:1024px)and (orientation:landscape){#app #topbar{height:48px;min-height:48px;padding:3px 8px}#app #topbar .brand{font-size:15px}#app #topbar .brand small{font-size:8px}#app #minimap{top:55px;bottom:auto!important;left:7px}#app #mini{width:100px;height:75px}#app #hud{right:7px;left:auto;transform:none;bottom:7px;width:min(620px,calc(100vw - 126px));height:82px;min-height:82px;padding:5px 7px;gap:7px}#app #hud .avatar{width:43px;height:52px}#app #hud #stats{width:78px;min-width:73px}#app #hud .ability{min-height:60px;min-width:44px;max-width:66px;padding:3px 2px}#app #hud .ability>span{font-size:21px}#app #hud .ability small{font-size:8px}#app .mobile-control{right:9px;bottom:98px;gap:7px}#app .mobile-control button{width:45px;height:45px;background:#172742ed;border:1px solid #dcad75}#app .attack-move-status{top:57px;left:50%;bottom:auto}#app #selection .panel{width:calc(100vw - 25px);max-height:calc(100dvh - 14px);padding:11px 17px}#app #selection h1{font-size:clamp(29px,4.8vw,43px)}#app #selection h1 em{font-size:13px;margin-top:-5px}#app #selection .eyebrow{font-size:10px}#app #selection .panel>p{font-size:10px;margin:4px auto 7px}#app #selection #heroGrid{grid-template-columns:repeat(8,minmax(0,1fr));gap:5px}#app #selection .hero-card{min-height:128px;padding:4px 2px 6px}#app #selection .hero-card img{height:69px;min-height:0}#app #selection .hero-card b{font-size:10px}#app #selection .hero-card small{font-size:9px}#app #selection .hero-card .play-pill{padding:2px 8px;font-size:9px}#app #selection .foot{padding:8px 0 0;font-size:10px}}@media(min-width:1025px){#app #minimap{width:auto}#app #hud{bottom:16px}#app .mobile-control{bottom:132px}}@media(max-width:650px)and (orientation:portrait){#app #topbar{height:52px;min-height:52px}#app #topbar .brand{font-size:15px}#app #minimap{top:62px;left:8px;bottom:auto!important}#app #ui{visibility:hidden}#app #rotationGuard{z-index:55;background:linear-gradient(#09122edb,#0b0d24f7),url(/assets/loading/spirit-gate.svg) center/cover;color:#ffdfac}#app #rotationGuard button{border:1px solid #d8b479;border-radius:7px;background:#d0a56b;color:#181932}#app #selection .panel{width:calc(100vw - 18px);max-height:calc(100dvh - 14px);padding:15px 10px}#app #selection h1{font-size:43px}#app #selection h1 em{font-size:14px;margin-top:-4px;letter-spacing:.05em}#app #selection .panel>p{font-size:11px;margin:7px auto 12px}#app #selection #heroGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#app #selection .hero-card{min-height:142px;padding:6px 4px}#app #selection .hero-card img{height:82px}#app #selection .hero-card b{font-size:12px}#app #selection .hero-card small{font-size:10px}#app #selection .hero-card .play-pill{font-size:10px;padding:2px 18px}#app #selection .foot{font-size:10px}}@media(prefers-reduced-motion:reduce){#app #selection .hero-card{transition:none}#app #selection .hero-card:hover{transform:none}}@media(min-width:1025px){#app #selection .hero-card{height:clamp(190px,27vh,244px);min-height:0}#app #selection .hero-card img{height:clamp(104px,15vh,140px);max-height:140px;flex:0 0 auto}}@media(min-width:651px)and (max-width:1024px)and (orientation:landscape){#app #selection .hero-card{height:130px;min-height:0}#app #selection .hero-card img{height:69px;max-height:69px;flex:0 0 auto}}@media(max-width:650px)and (orientation:portrait){#app #selection .hero-card{height:144px;min-height:0}#app #selection .hero-card img{height:77px;max-height:77px;flex:0 0 auto}#app #selection .foot{display:none}#app #keyboardSettingsPreGame{top:auto;bottom:7px;right:8px;min-height:38px}}@media(min-width:1025px)and (min-height:700px){#app #selection .panel{max-height:calc(100dvh - 36px)}#app #selection .hero-card{height:228px;min-height:0}#app #selection .hero-card img{height:145px;max-height:145px;flex:0 0 auto}}@media(min-width:651px)and (max-width:1024px)and (orientation:landscape){#app #selection .hero-card{height:128px;min-height:0}#app #selection .hero-card img{height:69px;max-height:69px;flex:0 0 auto}}@media(max-width:650px)and (orientation:portrait){#app #selection .panel{padding-top:54px;scrollbar-width:thin;scrollbar-color:#cda66f #11162b}#app #selection .hero-card{height:190px;min-height:0}#app #selection .hero-card img{height:117px;max-height:117px;flex:0 0 auto}#app #keyboardSettingsPreGame{top:8px;right:9px;min-height:44px}}@media(max-width:650px)and (orientation:portrait){#app #keyboardSettingsPreGame{position:fixed;top:2px;right:10px;bottom:auto;min-height:36px;padding:4px 9px}}:root{font-family:Kanit,system-ui,sans-serif;color:#f8eccd;background:#102e37}*{box-sizing:border-box}body{margin:0;overflow:hidden}button{font:inherit;cursor:pointer;color:inherit}#game{position:absolute;inset:0}#game canvas{display:block}#ui{position:absolute;inset:0;pointer-events:none}#topbar{position:absolute;top:0;left:0;right:0;height:68px;background:linear-gradient(#092630df,#09263044);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:7px 22px}.brand{font-size:25px;font-weight:700;color:#ffe3a4;text-shadow:0 2px 2px #000}.brand small{display:block;font-size:11px;letter-spacing:1px;color:#e6eee2;font-weight:300;margin-top:-9px}.brand:first-letter{color:#a6ecbe}#timer,#score{font-size:18px;font-weight:600;letter-spacing:1px}#shopBtn{pointer-events:auto;border:1px solid #cfad69;border-radius:12px;background:#264a48;padding:9px 17px;box-shadow:0 3px 14px #0008}#hud{position:absolute;bottom:17px;left:50%;transform:translate(-50%);width:min(690px,calc(100% - 200px));min-height:114px;display:flex;align-items:center;gap:16px;background:linear-gradient(125deg,#153b45ed,#11303cf2);border:2px solid #b8a26a;border-radius:18px;box-shadow:0 10px 25px #041923aa;pointer-events:auto;padding:9px 14px}.avatar{width:76px;height:86px;display:grid;place-items:center;background:#34585b;border:1px solid #d7bd83;border-radius:12px;flex-shrink:0;overflow:hidden}.avatar img{height:100%;width:100%;object-fit:contain}#stats{width:140px;min-width:108px}#heroName{display:block;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#level{font-size:12px;color:#e5c88b}.bar{height:10px;border-radius:6px;background:#0b2431;border:1px solid #40616b;margin:5px 0;overflow:hidden}.bar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#22894f,#7bea79);transition:width .1s}.bar.blue i{background:linear-gradient(90deg,#3287d8,#7ce5fb)}#statsText{font-size:11px;color:#beced1}#abilities{display:flex;justify-content:center;gap:7px;flex:1}.ability{position:relative;min-width:58px;max-width:88px;flex:1;background:linear-gradient(145deg,#355b62,#203b47);border:1px solid #98a29b;border-radius:10px;min-height:80px;padding:6px 4px;display:grid;justify-items:center;gap:0;overflow:hidden}.ability>span{font-size:28px}.ability b{position:absolute;top:4px;left:5px;font-size:10px;border-radius:4px;background:#06191b;padding:1px 5px}.ability small{font-size:10px;color:#fae5b6;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.cool{position:absolute;inset:0;background:#10212de0;display:none;place-items:center;font-size:23px;font-style:normal;color:#fff}.gold{font-size:18px;color:#ffe28b;white-space:nowrap;align-self:center;font-weight:700}#minimap{position:absolute;bottom:18px;left:18px;border:3px solid #b2a071;border-radius:12px;background:#1b4348;box-shadow:0 8px 20px #04191fbb;overflow:hidden}#mini{display:block;width:170px;height:125px}#notices{position:absolute;top:80px;left:50%;transform:translate(-50%);width:min(440px,85%);display:grid;gap:8px}.toast{background:#123740f0;border:1px solid #caad71;border-radius:12px;padding:8px 16px;box-shadow:0 5px 15px #0007;animation:toastin .2s ease;text-align:center;font-size:14px}@keyframes toastin{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}.mobile-control{position:absolute;right:18px;bottom:145px;pointer-events:auto;display:flex;gap:7px}.mobile-control button{width:51px;height:51px;border-radius:50%;background:#214854dd;border:1px solid #d3c08a;box-shadow:0 5px 16px #0006;font-size:22px}.modal{position:absolute;inset:0;background:radial-gradient(circle at 48% 30%,#4a756082,#08191ce8);z-index:50;display:flex;align-items:center;justify-content:center;padding:14px;overflow-y:auto}.hidden{display:none!important}.panel{position:relative;width:min(850px,100%);background:linear-gradient(140deg,#244e54f8,#163443f8);border:2px solid #bfab75;border-radius:24px;padding:28px 33px;box-shadow:0 20px 70px #031419db;text-align:center}.eyebrow{font-size:12px;letter-spacing:5px;color:#f3ca82}.panel h1{font-size:clamp(36px,6vw,66px);color:#f4d999;margin:0;line-height:1.3;text-shadow:0 4px #173138}.panel h1 em{font-style:normal;font-size:.53em;display:block;color:#b6f0d1;margin-top:-12px}.panel p{color:#cfdee0;font-size:15px;margin:8px auto 20px}#heroGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.hero-card{position:relative;background:linear-gradient(#376574,#1f4246);border:2px solid var(--accent);border-radius:17px;padding:6px 5px 14px;display:flex;flex-direction:column;align-items:center;gap:5px;transition:transform .15s;min-height:245px}.hero-card:hover{transform:translateY(-5px);box-shadow:0 0 18px color-mix(in srgb,var(--accent),transparent 60%)}.hero-card img{width:100%;max-height:165px;object-fit:contain;filter:drop-shadow(0 7px 7px #082328aa)}.hero-card b{font-size:16px;display:block}.hero-card small{color:#f0d6ae;font-size:12px}.play-pill{background:#e9cb86;color:#18393b;padding:3px 24px;border-radius:40px;font-size:12px;font-weight:700;margin-top:auto}.foot{padding:18px 0 0;color:#b8cdd0;font-size:12px}#shop .panel,#finish .panel{width:min(590px,95%)}#closeShop{position:absolute;right:15px;top:12px;background:transparent;border:none;font-size:22px}.panel h2{margin:0 0 24px;color:#ffe2a4}#shopItems{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.item{display:grid;justify-items:center;align-content:center;gap:3px;padding:12px 3px;border:1px solid #7fab9a;border-radius:13px;background:#2a5260}.item span{font-size:27px}.item small{font-size:12px;color:#f2d798}#restart{border:none;padding:14px 35px;border-radius:14px;background:#e7c47e;color:#1e3a3e;font-weight:700;font-size:18px}@media(max-width:1024px){#topbar{height:48px;padding:3px 8px;gap:5px}.brand{font-size:16px}.brand small{font-size:9px}.brand small{margin-top:-7px}#timer,#score{font-size:12px}#shopBtn{padding:5px;font-size:11px}#hud{bottom:4px;width:calc(100% - 10px);min-height:65px;padding:3px 5px;gap:5px;border-radius:10px}.avatar{width:45px;height:57px;border-radius:6px}#stats{width:80px;min-width:75px}#heroName{font-size:10px}#statsText,#level{font-size:9px}.bar{height:6px;margin:3px 0}.ability{min-width:36px;min-height:56px;max-width:55px;padding:2px}.ability>span{font-size:19px}.ability small{font-size:7px}.ability b{font-size:8px;padding:1px 3px}.gold{font-size:12px}#minimap{left:5px;bottom:75px;border-width:2px}#mini{width:100px;height:75px}.mobile-control{right:6px;bottom:75px}.mobile-control button{width:40px;height:40px;font-size:17px}.panel{padding:13px}.hero-card{min-height:130px;padding:2px}.hero-card img{height:87px}.hero-card b{font-size:10px}.hero-card small{font-size:9px}.play-pill{font-size:9px;padding:1px 12px}#heroGrid{gap:5px}.foot{font-size:10px;padding-top:6px}.panel p{font-size:12px;margin:4px auto 9px}#notices{top:52px}}@media(max-width:480px)and (orientation:portrait){#heroGrid{grid-template-columns:repeat(2,1fr)}.hero-card{min-height:145px}.hero-card img{height:90px}#hud{width:calc(100% - 8px)}#hudPortrait{display:none}.ability{min-width:30px}.gold{font-size:10px}#minimap{bottom:86px}}#viewControls{display:flex;gap:5px;pointer-events:auto;align-items:center}#viewControls button{background:#1b4a53e8;border:1px solid #baa779;border-radius:9px;padding:6px 9px;font-size:18px;min-height:36px;box-shadow:0 3px 14px #061a1c55}#viewControls button span{font-size:11px;margin-left:3px}.tutorial-panel{max-width:670px}.tutorial-steps{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;text-align:left;margin:12px auto 18px}.tutorial-steps>div{display:grid;grid-template-columns:30px 1fr;gap:0 8px;align-items:center;background:#183740;border:1px solid #587e78;border-radius:11px;padding:9px}.tutorial-steps b{font-size:14px}.tutorial-steps small{grid-column:2;color:#c9e5df;font-size:12px}.close-tutorial{position:absolute;right:12px;top:10px;border:none;background:#2d565b;padding:3px 10px;border-radius:7px;font-size:21px}#gotIt{border:none;font-size:17px;padding:9px 35px;display:inline-block}#rotationGuard{display:none}@media(max-width:950px){#viewControls button span{display:none}#viewControls button{min-height:33px;padding:3px 7px;font-size:15px}#topbar{gap:4px}#heroGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-height:560px){#selection .panel{padding:8px 15px}#selection .panel h1{font-size:28px}#selection .panel h1 em{margin-top:-7px}#selection .panel p{margin:3px auto 6px;font-size:11px}#heroGrid{grid-template-columns:repeat(8,minmax(0,1fr));gap:4px}#heroGrid .hero-card{min-height:112px;padding:2px}#heroGrid .hero-card img{max-height:60px;height:60px}#heroGrid .hero-card b{font-size:10px}#heroGrid .hero-card small{font-size:9px}#heroGrid .play-pill{padding:1px 10px;font-size:9px}#selection .foot{font-size:10px;padding:4px 0 0}}@media(max-width:650px)and (orientation:portrait){#rotationGuard{position:absolute;inset:0;z-index:45;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#102c39f7;color:#f8e6ad;padding:20px}#rotationGuard .rotate-emoji{font-size:55px}#rotationGuard h2{font-size:22px;margin:8px auto}#rotationGuard p{color:#bfe0d5}#rotationGuard button{background:#e9d19b;border:none;padding:10px 14px;border-radius:10px;color:#193a3a}#selection:not(.hidden)~#rotationGuard{display:none}}@media(max-width:440px){.tutorial-steps{grid-template-columns:1fr}}@media(min-width:651px)and (max-width:1024px)and (orientation:landscape){#viewControls button{min-width:44px;min-height:44px;padding:3px}#topbar{min-height:49px;height:49px}.ability{min-width:48px;max-width:62px;min-height:60px}.mobile-control button{width:48px;height:48px}#notices{left:auto;right:8px;top:56px;transform:none;width:210px;gap:4px}.toast{font-size:11px;padding:5px 8px;opacity:.9;line-height:1.2}}@media(max-width:650px)and (orientation:portrait){#topbar{height:52px;min-height:52px;padding:2px 4px;gap:3px}#score{display:none}#viewControls{gap:2px;flex-shrink:0}#viewControls button{width:44px;min-width:44px;height:44px;min-height:44px;padding:2px;font-size:19px}#shopBtn{min-height:44px;padding:5px 6px}#rotationGuard button{min-height:48px;padding:10px 18px}}.gold .lh-count{display:block;text-align:right;font-size:11px;color:#c8efd5;font-weight:600;letter-spacing:.01em}@media(max-width:1024px){.gold .lh-count{font-size:9px}}#loadingScreen .loading-overline{display:block;font-size:clamp(9px,1.2vw,12px);letter-spacing:.46em;color:#b9cce2;text-shadow:0 2px 10px #000;opacity:.85}#loadingScreen .loading-heading h1{background:linear-gradient(180deg,#fff5d6 2%,#ffdda0 40%,#d88e63 80%,#9b5b62);color:transparent;background-clip:text;-webkit-background-clip:text;-webkit-text-stroke:1px #9f5f50;filter:drop-shadow(0 8px 10px #0a0b1f)}#loadingScreen .loading-heading p{text-shadow:0 3px 12px #080b20}#loadingScreen .loading-sigil{position:absolute;z-index:2;top:44%;left:50%;transform:translate(-50%,-50%);color:#ffecb8;text-shadow:0 0 14px #ddaa7b,0 0 40px #b59ce8;font-size:clamp(25px,5vw,46px);animation:loading-spirits 4s ease-in-out infinite;pointer-events:none}#loadingScreen .loading-footer{padding:clamp(10px,2vw,22px) clamp(13px,2vw,27px);border:1px solid #e7c18d6e;border-radius:15px;background:linear-gradient(180deg,#14243b55,#0b1c32d9);box-shadow:0 7px 35px #010719aa,0 0 0 1px #041021aa inset;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}#loadingScreen .loading-divider{color:#e9c58f;font-size:clamp(11px,1.35vw,15px);letter-spacing:.15em;margin-bottom:10px;text-shadow:0 2px 10px #000}#loadingScreen .loading-divider span{color:#67e0d1;padding:0 10px}#loadingScreen .loading-topline{display:flex;justify-content:space-between;gap:10px;align-items:center;color:#e6f0ee;font-size:clamp(11px,1.4vw,15px);text-align:left;margin-bottom:8px}#loadingScreen .loading-state-mark{color:#79f3dc;text-shadow:0 0 11px #7af4d7}#loadingScreen progress{flex:1;min-width:0;appearance:none;-webkit-appearance:none;border-radius:9px;border:2px solid #d7ad78;background:#17283b;overflow:hidden;height:17px;box-shadow:0 0 9px #9fe2ce55,0 2px 9px #030a14 inset}#loadingScreen progress::-webkit-progress-bar{background:#17283b;border-radius:8px}#loadingScreen progress::-webkit-progress-value{border-radius:8px;background:linear-gradient(90deg,#3cb6bf,#70edd0,#e0d69c);box-shadow:0 0 17px #7df9d6}#loadingScreen progress::-moz-progress-bar{background:linear-gradient(90deg,#3cb6bf,#70edd0,#e0d69c);border-radius:8px}#loadingScreen output{min-width:52px;text-align:right;font:700 clamp(16px,2.3vw,21px)/1 system-ui,sans-serif;color:#f4ddb0;font-variant-numeric:tabular-nums;text-shadow:0 2px 8px #030914}#loadingScreen #loadingDetail{min-height:1.3em;font-size:clamp(10px,1.24vw,13px);margin:10px 0 0;color:#c3d9df;text-shadow:0 1px 9px #000}#loadingScreen .loading-tip{margin:8px 0 0;color:#f1d6ad;font-size:clamp(9px,1.2vw,12px);opacity:.86}#loadingScreen .loading-retry{display:inline-block;margin-top:10px;min-height:44px;min-width:140px;border:1px solid #f0cf96;border-radius:10px;background:#a16b4a;color:#fff5d8;font-weight:700;box-shadow:0 4px 14px #0008}#loadingScreen[data-phase=error] .loading-footer{border-color:#ffa58e}#loadingScreen[data-phase=error] .loading-state-mark{color:#ffa9a0}@keyframes loading-spirits{0%,to{opacity:.6;filter:drop-shadow(0 0 5px #f1deaa)}50%{opacity:1;filter:drop-shadow(0 0 16px #baf9f3)}}@media(max-height:560px){#loadingScreen .loading-heading{top:5%}#loadingScreen .loading-heading h1{font-size:clamp(39px,7.3vw,62px)}#loadingScreen .loading-heading p{font-size:clamp(11px,2vw,16px);margin:0}#loadingScreen .loading-overline{font-size:9px}#loadingScreen .loading-footer{bottom:3%;padding:10px 14px}#loadingScreen .loading-divider{margin-bottom:5px}#loadingScreen .loading-tip{display:none}#loadingScreen .loading-sigil{top:48%;font-size:26px}}@media(max-width:650px)and (orientation:portrait){#loadingScreen{background-position:56% center}#loadingScreen .loading-heading{top:18%}#loadingScreen .loading-heading h1{font-size:clamp(48px,15vw,74px)}#loadingScreen .loading-heading p{letter-spacing:.08em}#loadingScreen .loading-sigil{top:49%}#loadingScreen .loading-footer{bottom:7%}}@media(prefers-reduced-motion:reduce){#loadingScreen .loading-sigil{animation:none}}.attack-move-status{position:absolute;left:50%;bottom:148px;transform:translate(-50%);max-width:calc(100vw - 24px);padding:5px 14px;border:1px solid #d8b2ee;border-radius:12px;background:#182a49e8;color:#f8dcff;font-size:13px;font-weight:600;white-space:nowrap;text-align:center;pointer-events:none;box-shadow:0 4px 12px #0006}.attack-move-status[hidden]{display:none}#attackMoveBtn[aria-pressed=true]{background:#633d7c;border-color:#f3c9ff;box-shadow:0 0 0 2px #edc7ff66}@media(max-width:1024px){.attack-move-status{top:54px;bottom:auto;font-size:11px;padding:4px 9px}}#keyboardSettingsModal{z-index:85;pointer-events:auto;background:#071421dd}#keyboardSettingsModal .keyboard-settings-panel{width:min(590px,calc(100vw - 24px));max-height:calc(100dvh - 20px);overflow-y:auto;padding:18px 22px;background:#183a4b;border:2px solid #d5b56b}.keyboard-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;text-align:left}.keyboard-settings-grid label{display:flex;flex-direction:column;gap:3px}.keyboard-settings-grid select{width:100%;min-height:44px;background:#102a38;color:#fff5da;border:1px solid #bfa66c;border-radius:8px;padding:7px 9px}.keyboard-settings-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin-top:12px}.keyboard-settings-actions button{min-height:44px;padding:8px 15px;border-radius:10px;border:1px solid #d2b875;background:#285359;color:#fff3d5}#keyboardSettingsSave{background:#35765e}#keyboardSettingsStatus{min-height:22px;color:#ffe3a3}#keyboardSettingsBtn{pointer-events:auto}@media(max-width:900px){#keyboardSettingsBtn span{display:none}}@media(max-width:560px){.keyboard-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.keyboard-settings-panel h2{font-size:20px}}#keyboardSettingsPreGame{position:absolute;top:9px;right:10px;min-height:44px;padding:5px 11px;border:1px solid #c9ad73;border-radius:9px;background:#244e54;color:#ffe6ac;pointer-events:auto;z-index:3}@media(max-height:560px){#keyboardSettingsPreGame{top:2px;right:3px;padding:4px 7px;font-size:12px}}
