@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cinzel-latin-400-normal-DnUIPmzd.woff2) format("woff2"),url(/assets/cinzel-latin-400-normal-C8jUSQqm.woff) format("woff")}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-600-normal-Dd5YO2UX.woff2) format("woff2"),url(/assets/cinzel-latin-600-normal-CH_LB4su.woff) format("woff")}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cinzel-latin-700-normal-Dkw14w9r.woff2) format("woff2"),url(/assets/cinzel-latin-700-normal-C-gK7hA8.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-normal-B-1hWBU7.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-400-normal-B7YtguxJ.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-italic-Dc_OZ8oc.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-400-italic-BLh7T8o8.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-600-normal-Co1r35X9.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-600-normal-2CBVLo0M.woff) format("woff")}:root{--gold:#c9a96a;--ink:#e8e0d0;--dim:#a99b85;--vw1:1vw;--vh1:1vh}#app{position:fixed;top:0;left:0;width:100%;height:100%;overflow:hidden}body.rot #app{transform-origin:top left;transform:rotate(-90deg) translate(-100%)}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background:#05070a;color:var(--ink);font-family:Cormorant Garamond,serif}html,body{overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}#game canvas{display:block;cursor:crosshair;touch-action:none}.hidden{display:none!important}.screen{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10;padding:16px}#title{background:radial-gradient(ellipse at 50% 45%,#05070a0d 30%,#05070a99),linear-gradient(to bottom,#05070a40,#05070a00 35% 60%,#05070acc)}#demo-vs{position:absolute;left:0;right:0;bottom:calc(14px + env(safe-area-inset-bottom,0px));padding-inline:16px;text-align:center;font-family:Cinzel;font-size:clamp(11px,1.8vmin,14px);letter-spacing:.08em;color:#cfc4b0;text-shadow:0 2px 6px #000;transition:opacity .6s}#demo-vs i{font-family:Cormorant Garamond,serif;color:var(--dim);letter-spacing:0;font-size:1.1em}#demo-vs .vs{color:var(--gold);margin:0 .8em}#title h1{font-family:Cinzel;font-weight:700;font-size:clamp(34px,calc(var(--vw1)*6.8),96px);text-wrap:balance;letter-spacing:.14em;color:#ece0c4;text-shadow:0 0 34px rgba(140,90,255,.5),0 4px 14px #000;text-align:center}#title .sub{font-style:italic;font-size:clamp(18px,calc(var(--vw1)*2.3),28px);color:#c4b69c;margin:.3em 0 2.6em;text-shadow:0 2px 6px #000;text-align:center}.btn{font-family:Cinzel;font-size:clamp(13px,2.2vmin,17px);letter-spacing:.2em;color:#e8dcc4;background:#0a080ea6;border:1px solid rgba(201,169,106,.5);padding:.75em 2.2em;cursor:pointer;transition:.2s;margin:6px}.btn:hover{background:#3c2850b3;border-color:var(--gold);box-shadow:0 0 18px #a06eff59}.blink{animation:blink 2.4s infinite}@keyframes blink{50%{opacity:.5}}#select{background:radial-gradient(ellipse at center,#0a08108c,#030406ed);overflow:hidden;gap:clamp(6px,calc(var(--vh1)*1.5),16px);padding:clamp(8px,calc(var(--vh1)*2),24px) 16px}#select h2{font-family:Cinzel;letter-spacing:.25em;font-weight:400;font-size:clamp(15px,3.2vmin,30px);color:#d9ccb0;text-align:center}.sel-main{display:flex;flex-direction:column;align-items:center;gap:clamp(6px,calc(var(--vh1)*1.5),14px);width:100%;max-width:1180px;min-height:0}.cards{display:flex;gap:clamp(6px,calc(var(--vw1)*1),14px);justify-content:center;width:100%;max-width:820px;min-height:0}.card{flex:1 1 0;min-width:0;max-width:160px;display:flex;flex-direction:column;border:1px solid rgba(201,169,106,.25);background:#0c0a10e6;cursor:pointer;transition:.25s}.card:hover{border-color:#c9a96a99}.carousel{position:relative;align-items:center;gap:8px;--tw:clamp(72px,calc(var(--vh1)*17),180px)}.car-track{position:relative;flex:1;min-width:0;height:calc(var(--tw)*1.2 + 2.2em);touch-action:pan-y}#cartrack .card{position:absolute;left:50%;top:0;width:var(--tw);max-width:none;margin-left:calc(var(--tw)/-2);transition:transform .45s cubic-bezier(.2,.7,.2,1),opacity .45s,filter .45s,border-color .25s,box-shadow .25s}#cartrack .portrait{height:calc(var(--tw)*1.2)}#cartrack .card.sel .portrait{background-image:radial-gradient(circle at 50% 45%,#2c2336,#0c0a10)!important}.prevcanvas{position:absolute;inset:0;width:100%;height:100%;display:block}.car-arrow{flex:none;width:36px;height:36px;border-radius:50%;border:1px solid rgba(201,169,106,.45);background:#0a080ea6;color:#eadfc6;font-size:22px;line-height:1;cursor:pointer;z-index:12}.car-arrow:hover{border-color:var(--gold);background:#3c285099}.car-arrow:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media(prefers-reduced-motion:reduce){#cartrack .card{transition:none}}.card.sel{border-color:var(--gold);box-shadow:0 10px 40px #0009,0 0 26px #9664ff4d}.portrait{height:clamp(54px,calc(var(--vh1)*17),230px);flex:none;background-color:#0c0a10;background-repeat:no-repeat;background-size:contain;background-position:50% 100%;position:relative}.portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#0c0a1000 55%,#0c0a10),radial-gradient(ellipse at 50% 45%,#0000 45%,#0c0a108c)}.card .cname{font-family:Cinzel;font-size:clamp(11px,1.7vmin,14px);color:#eadfc6;text-align:center;padding:.35em .2em .45em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#charinfo{max-width:620px;width:100%;text-align:center;font-size:clamp(11.5px,1.8vmin,15px);line-height:1.32;color:#cfc4b0}#charinfo .sname{font-family:Cinzel;color:#eadfc6;font-size:clamp(12px,2vmin,16px);margin-bottom:.15em}#charinfo .sname i{font-family:Cormorant Garamond,serif;color:var(--dim)}#charinfo b{font-family:Cinzel;font-size:.8em;color:var(--gold);font-weight:600;margin-right:.3em}.card h3{font-family:Cinzel;font-size:clamp(13px,2.3vmin,20px);color:#eadfc6;letter-spacing:.05em;line-height:1.2}.card .role{font-style:italic;font-size:clamp(12px,1.9vmin,16px);color:var(--dim);margin-bottom:.3em;line-height:1.2}.card ul{list-style:none;font-size:clamp(11.5px,1.85vmin,15.5px);line-height:1.25;color:#cfc4b0;display:flex;flex-direction:column;gap:.3em}.card li b{color:#d8b878;font-weight:600}.card .tag{font-family:Cinzel;font-size:.72em;letter-spacing:.1em;color:var(--dim);text-transform:uppercase}.sel-label{font-family:Cinzel;font-size:clamp(11px,1.7vmin,13px);letter-spacing:.2em;color:#d9ccb0;text-align:center}.sel-label span{font-family:Cormorant Garamond,serif;font-style:italic;letter-spacing:0;color:var(--dim);font-size:1.1em}.staves{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;max-width:760px}.stf{display:inline-flex;align-items:center;gap:6px;font-family:Cinzel;font-size:clamp(11px,1.7vmin,13.5px);letter-spacing:.04em;color:#cfc4b0;background:#0a080e99;border:1px solid rgba(201,169,106,.25);padding:.38em .7em;cursor:pointer}.stf:hover{border-color:#c9a96a99}.stf.sel{border-color:var(--gold);color:#f4e6c4;background:#3c28508c;box-shadow:0 0 14px #9664ff40}.stf .gem{width:12px;height:12px;border-radius:50%;flex:none}.stf .sig{color:var(--gold);font-size:.85em}#staffinfo{max-width:620px;width:100%;text-align:center;font-size:clamp(11.5px,1.8vmin,15px);line-height:1.32;color:#cfc4b0}#staffinfo .sname{font-family:Cinzel;color:#eadfc6;font-size:clamp(12px,2vmin,16px);margin-bottom:.15em}#staffinfo .sname i{font-family:Cormorant Garamond,serif;color:var(--dim)}#staffinfo b{font-family:Cinzel;font-size:.8em;color:var(--gold);font-weight:600;margin-right:.3em}.diffrow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:center;font-family:Cinzel;font-size:clamp(11px,1.8vmin,14px);letter-spacing:.12em;color:var(--dim)}.dbtn{font-family:Cinzel;font-size:clamp(12px,1.8vmin,14px);letter-spacing:.12em;color:#cfc4b0;background:#0a080e99;border:1px solid rgba(201,169,106,.25);padding:.5em 1.2em;cursor:pointer}.arenas{display:flex;flex-direction:column;align-items:center;gap:clamp(4px,calc(var(--vh1)*.9),8px);width:100%;max-width:520px}.alabel{font-family:Cinzel;font-size:clamp(11px,1.7vmin,13px);letter-spacing:.2em;color:#d9ccb0;text-align:center}.arena-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(6px,calc(var(--vw1)*.8),10px);width:100%}.arena{font-family:Cormorant Garamond,serif;position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15em;padding:clamp(6px,calc(var(--vh1)*1.4),12px) 6px;border:1px solid rgba(201,169,106,.22);color:#eadfc6;cursor:pointer;transition:border-color .2s,box-shadow .2s,filter .2s;filter:saturate(.6) brightness(.75);overflow:hidden}.arena.storm{background:radial-gradient(ellipse at 70% 0%,rgba(120,90,220,.35),transparent 60%),linear-gradient(165deg,#22324e,#0b0f18)}.arena.hell{background:radial-gradient(ellipse at 50% 120%,rgba(255,110,30,.55),transparent 65%),linear-gradient(165deg,#3a120a,#120404)}.arena.rand{background:linear-gradient(120deg,#1d2a42,#141824 49.5%,#2c0e08 50.5%,#120404)}.arena svg{width:clamp(14px,2.4vmin,20px);height:clamp(14px,2.4vmin,20px);fill:currentColor;opacity:.85}.arena.storm svg{color:#b9c8ff}.arena.hell svg{color:#ff9a50}.arena.rand svg{color:#d9ccb0}.arena .an{font-family:Cinzel;font-weight:600;font-size:clamp(11.5px,1.8vmin,14px);letter-spacing:.1em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.arena .ad{font-style:italic;font-size:clamp(11px,1.6vmin,13.5px);color:#cbbfa8;line-height:1.15;text-align:center}.arena:hover{border-color:#c9a96a99;filter:saturate(.85) brightness(.9)}.arena:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.arena.sel{border-color:var(--gold);filter:none;box-shadow:0 0 0 1px #c9a96a59 inset,0 0 18px #c9a96a40}body.short .arena .ad{display:none}.dbtn.sel{border-color:var(--gold);color:#f0e2c0;background:#3c28508c}.controls{max-width:820px;text-align:center;color:var(--dim);font-size:clamp(11.5px,1.8vmin,15px);line-height:1.4}.controls b{color:#d8c8a0;font-weight:600}.ctl-touch{display:none}body.touch .ctl-touch{display:inline}body.touch .ctl-keys{display:none}#select .btn{margin:0}.sel-main>.cards{order:1}#charinfo{order:2}.sel-label{order:3}.staves{order:4}#staffinfo{order:5}.arenas,.diffrow{order:6}.controls{order:7}#btn-fight{order:8}body.short .card .role{display:none}body.land .sel-main{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);column-gap:clamp(14px,calc(var(--vw1)*3),40px);row-gap:clamp(5px,calc(var(--vh1)*1.4),12px);align-items:center;justify-items:center;grid-template-areas:"cards label" "cards staves" "cinfo info" "arena diff" "ctl btn"}body.land .arenas{grid-area:arena}body.land #charinfo{grid-area:cinfo}body.land .sel-main>.cards{grid-area:cards}body.land .sel-label{grid-area:label}body.land .staves{grid-area:staves}body.land #staffinfo{grid-area:info}body.land .diffrow{grid-area:diff}body.land .controls{grid-area:ctl}body.land #btn-fight{grid-area:btn}body.land .portrait{height:clamp(50px,calc(var(--vh1)*20),230px)}body.short .controls{display:none}body.short.land .sel-main{grid-template-areas:"cards label" "cards staves" "cinfo info" "arena diff" "arena fight"}body.short.land #btn-fight{grid-area:fight}body.short .diffrow{gap:6px}body.short .dbtn{padding:.4em .9em}#hud{position:fixed;inset:0;pointer-events:none;z-index:5}#pbars{position:absolute;left:28px;top:24px;width:min(420px,calc(var(--vw1)*44))}.bar{height:10px;background:#000000a6;border:1px solid rgba(180,160,120,.45);position:relative;margin-bottom:6px;overflow:hidden}.bar .fill,.bar .lag{position:absolute;left:0;top:0;bottom:0;width:100%}.bar.hp{height:13px}.bar.hp .fill{background:linear-gradient(#c22d31,#6e1214)}.bar .lag{background:#d6b45c}.bar.fp{width:72%}.bar.fp .fill{background:linear-gradient(#4566d6,#1c2f70)}.bar.st{width:84%}.bar.st .fill{background:linear-gradient(#45a54d,#1b4f22)}#pname{font-family:Cinzel;font-size:14px;letter-spacing:.08em;color:#d8ccb4;margin-bottom:5px;text-shadow:0 2px 4px #000}#ebar{position:absolute;width:130px;transform:translate(-50%,-100%);text-align:center}#ebar .name{font-family:Cinzel;font-size:12px;letter-spacing:.06em;margin-bottom:3px;white-space:nowrap;text-shadow:0 1px 3px #000,0 0 2px #000}#ebar .bar{height:7px;margin:0}#ebar .sub{font-size:11.5px;font-style:italic;color:var(--dim);margin:-2px 0 3px;white-space:nowrap;text-shadow:0 1px 3px #000}#pstaff{font-size:13px;font-style:italic;color:var(--dim);margin:-3px 0 5px;text-shadow:0 2px 4px #000}.chips{display:flex;gap:4px;flex-wrap:wrap;min-height:0}#ebar .chips{justify-content:center;margin-bottom:3px}.chip{font-family:Cinzel;font-size:10px;letter-spacing:.05em;padding:1px 6px;border:1px solid rgba(201,169,106,.45);background:#0009;color:#eadfc6}#dmgnum{position:absolute;left:100%;bottom:-4px;margin-left:6px;font-family:Cinzel;font-size:15px;color:#f0e6d0;text-shadow:0 2px 4px #000}#slots{position:absolute;left:28px;bottom:26px;display:flex;gap:8px;align-items:flex-end}.slot{width:78px;height:80px;border:1px solid rgba(201,169,106,.45);background:#08060cb8;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-align:center;font-size:12.5px;line-height:1.05;padding:4px 3px 6px;color:#ddd2bc}.slot .k{position:absolute;top:3px;left:5px;font-family:Cinzel;font-size:10px;color:var(--gold)}.slot .ico{width:26px;height:26px;border-radius:50%;margin-bottom:6px}.slot .cnt{position:absolute;top:2px;right:6px;font-family:Cinzel;font-size:15px}.slot.off{opacity:.35}#fury{position:absolute;width:120px;transform:translate(-50%,-100%);text-align:center}#fury .fname{font-family:Cinzel;font-weight:700;font-size:11.5px;letter-spacing:.1em;color:#ff8a40;white-space:nowrap;text-shadow:0 0 8px rgba(255,90,20,.7),0 1px 3px #000;margin-bottom:3px}#fury .fbar{height:5px;background:#000000a6;border:1px solid rgba(255,120,60,.55);overflow:hidden}#fury .fill{height:100%;background:linear-gradient(90deg,#ff3a10,#ffb040)}#fury.calm .fname{color:#b08a70;text-shadow:0 1px 3px #000}#fury.calm .fbar{opacity:.35}#lock{position:absolute;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid rgba(255,255,255,.9);border-radius:50%;box-shadow:0 0 10px #fffc}.slot .cd{position:absolute;inset:0;pointer-events:none}.slot .cdn{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding-bottom:20px;font-family:Cinzel;font-size:19px;color:#f2e8d2;text-shadow:0 2px 4px #000}.slot.ready{animation:ready .5s ease-out}@keyframes ready{0%{border-color:#fff3d0;box-shadow:0 0 #ffe6aa00}35%{border-color:#fff3d0;box-shadow:0 0 20px #ffe6aae6}to{box-shadow:0 0 #ffe6aa00}}#timer{position:absolute;top:18px;left:50%;transform:translate(-50%);font-family:Cinzel;font-size:28px;letter-spacing:.1em;color:var(--ink);text-shadow:0 2px 6px #000;font-variant-numeric:tabular-nums;white-space:nowrap}#timer.low{color:#e0604e}#timer.hunt{color:#8af0b0;font-size:20px;animation:blink 1.2s infinite}#hint{position:absolute;right:18px;bottom:18px;font-size:14px;color:var(--dim);text-align:right;line-height:1.5;background:#00000059;padding:8px 12px}#touch{display:none;position:absolute;inset:0;pointer-events:none}body.touch #touch{display:block}body.touch #slots,body.touch #hint{display:none}.tbtn{position:absolute;pointer-events:auto;touch-action:none;width:var(--s);height:var(--s);right:var(--r);bottom:calc(var(--b) + env(safe-area-inset-bottom,0px));border-radius:50%;border:1.5px solid rgba(201,169,106,.55);background:#0a080e8c;color:#eadfc6;font-family:Cinzel;font-size:10.5px;letter-spacing:.04em;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden}.tbtn .ico{width:38%;height:38%;border-radius:50%;margin-bottom:2px}.tbtn.down,.tbtn.pressing{background:#5a3c78bf;border-color:#f0dca8}.tbtn.off{opacity:.4}.tbtn .cd{position:absolute;inset:0;border-radius:50%;pointer-events:none}.tbtn .cdn{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:17px;text-shadow:0 2px 4px #000}.tbtn .cnt{position:absolute;top:4px;right:9px;font-size:12px}.tbtn.ready{animation:ready .5s ease-out}#t-pause{right:12px;top:calc(10px + env(safe-area-inset-top,0px));bottom:auto;font-size:15px}#t-fs{right:60px;top:calc(10px + env(safe-area-inset-top,0px));bottom:auto}#t-fs svg{width:16px;height:16px;fill:none;stroke:#eadfc6;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}#t-fs .fs-out,#t-fs.on .fs-in{display:none}#t-fs.on .fs-out{display:inline}#joy{position:absolute;width:120px;height:120px;margin:-60px 0 0 -60px;border-radius:50%;border:2px solid rgba(201,169,106,.4);background:#0a080e4d;display:none}#joyk{position:absolute;left:50%;top:50%;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:#c9a96a73;border:2px solid rgba(240,220,170,.7)}body.touch #pbars{left:12px;top:calc(10px + env(safe-area-inset-top,0px));width:min(320px,calc(var(--vw1)*40))}body.touch #pname{font-size:12px}body.touch .bar{height:8px;margin-bottom:4px}body.touch .bar.hp{height:10px}body.touch #timer{left:auto;right:110px;transform:none;top:calc(14px + env(safe-area-inset-top,0px));font-size:20px}body.touch #timer.hunt{font-size:13px}#banner{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;pointer-events:none;z-index:8}#banner:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,#0000 30%,#000000b8);opacity:0;transition:opacity 1.4s}#banner.show:before{opacity:1}#banner .band{position:relative;width:100%;padding:20px 16px;text-align:center;opacity:0;transition:opacity 1s}#banner .txt{font-family:Cinzel,serif;font-weight:700;font-size:clamp(26px,calc(var(--vw1)*6.2),88px);line-height:1.1;letter-spacing:.1em;text-wrap:balance;display:inline-block;text-shadow:0 0 28px color-mix(in srgb,currentColor 55%,transparent),0 0 30px rgba(0,0,0,.95),0 3px 0 rgba(0,0,0,.7);transform:translateY(12px);filter:blur(6px);transition:transform 1.6s cubic-bezier(.2,.7,.2,1),filter 1.2s}#banner.show .band{opacity:1}#banner.show .txt{transform:none;filter:none}#banner .rule{width:min(460px,calc(var(--vw1)*70));height:1px;margin:.6em auto .5em;background:linear-gradient(to right,transparent,currentColor 30%,currentColor 70%,transparent);opacity:.55}#banner .bsub{font-family:Cormorant Garamond,serif;font-style:italic;font-size:clamp(15px,calc(var(--vw1)*2.3),24px);color:#cbbfa8;text-shadow:0 2px 6px #000;opacity:0;transition:opacity 1.4s .7s}#banner.show .bsub{opacity:1}@media(prefers-reduced-motion:reduce){#banner .txt{transform:none;filter:none;transition:none}}#langbar{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));right:12px;z-index:20;display:flex;gap:6px}body.playing #langbar{display:none}.flag{width:34px;height:23px;padding:0;border:1px solid rgba(201,169,106,.35);background:none;cursor:pointer;opacity:.5;filter:saturate(.5);transition:.2s}.flag svg{width:100%;height:100%;display:block}.flag:hover{opacity:.85}.flag.sel{opacity:1;filter:none;border-color:var(--gold);box-shadow:0 0 10px #c9a96a73}.flag:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.helpbtn{width:23px;height:23px;padding:0;border:1px solid rgba(201,169,106,.5);border-radius:50%;background:#0a080ea6;color:#eadfc6;font-family:Cinzel;font-weight:700;font-size:14px;line-height:1;cursor:pointer;transition:.2s}.helpbtn:hover{border-color:var(--gold);background:#3c2850b3}.helpbtn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}#btn-music{position:relative;font-size:13px}#btn-music.off{opacity:.5}#btn-fs svg{width:11px;height:11px;display:block;margin:auto;fill:none;stroke:#eadfc6;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}#btn-fs .fs-out,#btn-fs.on .fs-in{display:none}#btn-fs.on .fs-out{display:inline}#btn-music.off:after{content:"";position:absolute;left:3px;right:3px;top:50%;height:1.5px;background:#eadfc6;transform:rotate(-45deg)}#help{z-index:30;background:#030406d1}#help .panel{position:relative;width:100%;max-width:1000px;max-height:100%;overflow:auto;background:#0c0a10f2;border:1px solid rgba(201,169,106,.4);box-shadow:0 0 40px #000000b3;padding:clamp(12px,calc(var(--vh1)*3),28px) clamp(14px,calc(var(--vw1)*3),32px);display:flex;flex-direction:column;gap:clamp(8px,calc(var(--vh1)*2),18px)}#help h2{font-family:Cinzel;font-weight:400;letter-spacing:.25em;font-size:clamp(15px,3vmin,26px);color:#d9ccb0;text-align:center}.help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:clamp(10px,calc(var(--vh1)*2),22px) clamp(14px,calc(var(--vw1)*2.4),30px)}.help-grid section{min-width:0}.help-grid h3{font-family:Cinzel;font-weight:600;font-size:clamp(11px,1.7vmin,13px);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:.45em}.help-grid p,.help-grid li{font-size:clamp(12px,1.9vmin,16px);line-height:1.35;color:#cfc4b0}.help-grid ul{list-style:none;display:flex;flex-direction:column;gap:.3em}.help-grid p+ul{margin-top:.4em}.help-grid ul.ctl-touch,body.touch .help-grid ul.ctl-keys{display:none}body.touch .help-grid ul.ctl-touch{display:flex}.help-grid b{color:#e4d6b4;font-weight:600}#help-close{align-self:center;margin:0}#endmenu{pointer-events:auto;text-align:center;padding-inline:16px}#score{font-family:Cinzel;letter-spacing:.15em;color:var(--dim);margin-bottom:10px}#pause{background:#030406bf;z-index:11}#pause h2{font-family:Cinzel;font-weight:400;letter-spacing:.3em;margin-bottom:20px}#pwa-toast{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:40;display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center;padding:10px 14px;background:#0c0a10f2;border:1px solid rgba(201,169,106,.5);box-shadow:0 0 24px #000000b3;font-size:clamp(13px,2vmin,16px);color:#e8dcc4;max-width:calc(100% - 32px)}#pwa-toast .btn{padding:.45em 1.2em;margin:0}#btn-install{margin-top:4px}#ios-hint{margin-top:10px;font-style:italic;font-size:clamp(12px,1.8vmin,15px);color:#cbbfa8;text-shadow:0 2px 6px #000;text-align:center}body.installed #ios-hint{display:none}.arenas{max-width:640px}.arena-row{grid-template-columns:repeat(5,minmax(0,1fr))}.arena.frost{background:radial-gradient(ellipse at 30% 0%,rgba(120,220,255,.4),transparent 60%),linear-gradient(165deg,#3a5a78,#0e1a26)}.arena.swamp{background:radial-gradient(ellipse at 50% 110%,rgba(120,200,60,.45),transparent 65%),linear-gradient(165deg,#23321c,#0a1008)}.arena.frost svg{color:#cfefff}.arena.swamp svg{color:#b0f070}.arena.rand{background:linear-gradient(120deg,#1d2a42,#141824 24.5%,#2c0e08 25.5%,#120404 49.5%,#2a4256 50.5%,#0e1a26 74.5%,#1a2a14 75.5%,#0a1008)}.gear{display:flex;flex-direction:column;align-items:center;gap:3px;width:100%;max-width:640px}.gear-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}.gear-label{font-family:Cinzel;font-size:clamp(10.5px,1.6vmin,12.5px);letter-spacing:.16em;color:#d9ccb0;white-space:nowrap}.gear-label span{font-family:Cormorant Garamond,serif;font-style:italic;letter-spacing:0;color:var(--dim);font-size:1.08em}.picks{display:flex;flex-wrap:wrap;gap:4px;justify-content:center}.pk{display:inline-flex;align-items:center;gap:5px;font-family:Cinzel;font-size:clamp(10.5px,1.55vmin,12.5px);color:#cfc4b0;background:#0a080e99;border:1px solid rgba(201,169,106,.25);padding:.3em .6em;cursor:pointer}.pk:hover{border-color:#c9a96a99}.pk.sel{border-color:var(--gold);color:#f4e6c4;background:#3c28508c;box-shadow:0 0 12px #9664ff40}.pk .gem{width:10px;height:10px;border-radius:50%;flex:none}.gear-info{font-size:clamp(11px,1.65vmin,14px);color:#cfc4b0;text-align:center;line-height:1.2;min-height:1.2em}.gear-info b{font-family:Cinzel;font-size:.8em;color:var(--gold);font-weight:600;margin-right:.3em}body.short .gear-info{display:none}.fightbtns{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.btn.alt{border-color:#78c8ff80}.btn.alt:hover{box-shadow:0 0 18px #6ebeff66}#select{overflow-y:auto;justify-content:flex-start}#select>h2{margin-top:auto}.sel-main{margin-bottom:auto}.gear{order:6}.arenas,.diffrow{order:7}.controls{order:8}.fightbtns{order:9}body.land .sel-main{grid-template-areas:"cards label" "cards staves" "cinfo info" "arena gear" "diff gear" "ctl btn"}body.land .gear{grid-area:gear}body.land .fightbtns{grid-area:btn}body.short.land .sel-main{grid-template-areas:"cards label" "cards staves" "cinfo info" "arena gear" "diff btn"}body.short.land .fightbtns{grid-area:btn}body.land #btn-fight,body.short.land #btn-fight{grid-area:auto}.fightbtns .btn{margin:0}#lobby{z-index:25;background:#030406d1}.lobby-panel{position:relative;width:100%;max-width:520px;background:#0c0a10f2;border:1px solid rgba(201,169,106,.4);box-shadow:0 0 40px #000000b3;padding:22px;display:flex;flex-direction:column;align-items:center;gap:12px}.lobby-panel h2{font-family:Cinzel;font-weight:400;letter-spacing:.25em;font-size:clamp(15px,3vmin,24px);color:#d9ccb0}.lobby-hint{font-style:italic;color:var(--dim);text-align:center;font-size:15px}.lobby-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.lobby-row .btn{margin:0}.lobby-panel input{font-family:Cinzel;font-size:15px;letter-spacing:.12em;color:#eadfc6;background:#00000080;border:1px solid rgba(201,169,106,.4);padding:.55em .8em;text-align:center;width:200px;-webkit-user-select:text;user-select:text}#lobby-code{width:130px;text-transform:uppercase}#lobby-status{min-height:1.4em;color:#cfc4b0;text-align:center;font-size:16px}#lobby-status b{font-family:Cinzel;color:var(--gold);letter-spacing:.2em;font-size:1.2em}#netinfo{position:absolute;top:52px;left:50%;transform:translate(-50%);font-family:Cinzel;font-size:11px;letter-spacing:.08em;color:var(--dim);text-shadow:0 1px 3px #000}.petbar{position:absolute;width:46px;height:5px;margin-left:-23px;background:#000000a6;border:1px solid rgba(255,140,120,.5);transform:translateY(-100%)}.petbar .fill{height:100%;background:linear-gradient(#e05050,#802020)}.petbar.mine{border-color:#8cc8ff99}.petbar.mine .fill{background:linear-gradient(#60b0ff,#2050a0)}.chip.shield{border-color:#ffd870cc;color:#ffe8a0}body.touch #s-wand{display:none}.slot .ico{flex:none}body.short #staffinfo div:not(.sname),body.short #charinfo div:not(.sname){display:none}body.short #select{gap:4px;padding-top:6px;padding-bottom:6px}body.short #select h2{font-size:clamp(13px,2.6vmin,20px)}body.short .gear{gap:1px}body.short .pk{padding:.22em .5em}.arenas{max-width:700px}.arena.crypt{background:radial-gradient(ellipse at 50% 0%,rgba(110,200,255,.3),transparent 60%),linear-gradient(165deg,#1e2230,#08090e)}.arena.desert{background:radial-gradient(ellipse at 75% 10%,rgba(255,190,80,.5),transparent 60%),linear-gradient(165deg,#5a3a1a,#1a0e06)}.arena.forest{background:radial-gradient(ellipse at 50% 110%,rgba(90,170,70,.4),transparent 65%),linear-gradient(165deg,#1a2a1e,#060c08)}.arena.abyss{background:radial-gradient(ellipse at 40% 20%,rgba(170,100,255,.45),transparent 60%),linear-gradient(165deg,#1c1030,#05030c)}.arena.crypt svg{color:#bfe6ff}.arena.desert svg{color:#ffd080}.arena.forest svg{color:#a0e080}.arena.abyss svg{color:#d0a8ff}body.short .arena{padding-block:5px}.petbar.creature{border-color:#ffbe5a99;width:52px;margin-left:-26px}.petbar.creature .fill{background:linear-gradient(#f0a040,#904010)}.equip-open{border-color:#c9a96a8c}#equipsum{min-height:0}#equipsum .gem{display:inline-block;width:9px;height:9px;border-radius:50%;vertical-align:middle}#equip{z-index:26;background:#030406d6}.equip-panel{position:relative;width:100%;max-width:980px;max-height:100%;overflow:auto;background:#0c0a10f5;border:1px solid rgba(201,169,106,.4);box-shadow:0 0 40px #000000b3;padding:clamp(10px,calc(var(--vh1)*2.4),24px) clamp(12px,calc(var(--vw1)*2.4),28px);display:flex;flex-direction:column;align-items:center;gap:clamp(6px,calc(var(--vh1)*1.6),14px)}.equip-panel h2{font-family:Cinzel;font-weight:400;letter-spacing:.25em;font-size:clamp(15px,3vmin,24px);color:#d9ccb0}.equip-body{display:flex;gap:clamp(10px,calc(var(--vw1)*2.4),28px);width:100%;align-items:stretch}.equip-left{flex:0 0 clamp(150px,calc(var(--vw1)*22),240px);display:flex;flex-direction:column;align-items:center;gap:6px}.equip-preview{position:relative;width:100%;aspect-ratio:240/288;max-height:calc(var(--vh1)*40);border:1px solid rgba(201,169,106,.3);background:radial-gradient(circle at 50% 45%,#2c2336,#0c0a10)}.equip-who{font-family:Cinzel;font-size:clamp(11px,1.7vmin,14px);color:#eadfc6;text-align:center}.equip-who i{font-family:Cormorant Garamond,serif;color:var(--dim)}.equip-total{font-size:clamp(12px,1.8vmin,15px);line-height:1.35;color:#cfc4b0;text-align:center}.equip-total b{color:var(--gold);font-weight:600}.equip-slots{flex:1;min-width:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:clamp(8px,calc(var(--vh1)*1.6),16px);align-content:start}.eslot{border:1px solid rgba(201,169,106,.2);background:#0a080e80;padding:8px 10px;display:flex;flex-direction:column;gap:6px}.eslot h3{font-family:Cinzel;font-weight:600;font-size:clamp(11px,1.7vmin,13px);letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}.eslot .picks{justify-content:flex-start}.eslot .gear-info{text-align:left;min-height:2.4em}body.short .eslot .gear-info{display:block}@media(max-width:640px),(max-height:420px){.equip-left{flex-basis:130px}.equip-slots{grid-template-columns:1fr 1fr}}.emotebubble{position:absolute;z-index:6;transform:translate(-50%,-100%);pointer-events:none;white-space:nowrap;font-family:Cinzel;font-size:13px;letter-spacing:.04em;color:#f2e8d2;background:#0a080ed1;border:1px solid rgba(255,140,120,.55);padding:3px 10px 4px;border-radius:12px;text-shadow:0 1px 2px #000}.emotebubble.mine{border-color:#8cc8ffa6}.emotebubble:after{content:"";position:absolute;left:50%;bottom:-6px;margin-left:-5px;border:5px solid transparent;border-top-color:#0a080ed1;border-bottom:0}.emotebubble .ei{font-size:16px;margin-right:5px;vertical-align:-2px}#t-emote{right:auto;left:12px;top:auto;bottom:calc(14px + env(safe-area-inset-bottom,0px));font-size:20px}#emotewheel{position:absolute;left:12px;bottom:calc(64px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:repeat(3,auto);gap:6px;pointer-events:auto;z-index:7}.emo{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:64px;padding:6px 8px;font-family:Cinzel;font-size:10.5px;color:#eadfc6;background:#0a080ed1;border:1px solid rgba(201,169,106,.5);border-radius:10px;cursor:pointer;touch-action:none}.emo .ei{font-size:22px;line-height:1}.emo:hover{border-color:var(--gold);background:#3c2850bf}
