@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(./cinzel-latin-600-normal-Dd5YO2UX.woff2)format("woff2"),url(./cinzel-latin-600-normal-CH_LB4su.woff)format("woff")}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(./barlow-semi-condensed-latin-500-normal-G0uxJNrM.woff2)format("woff2"),url(./barlow-semi-condensed-latin-500-normal-CFOoVYFH.woff)format("woff")}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(./barlow-semi-condensed-latin-600-normal-BkLiAYu4.woff2)format("woff2"),url(./barlow-semi-condensed-latin-600-normal-DyOfdMBA.woff)format("woff")}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(./barlow-semi-condensed-latin-700-normal-BpqDG8I9.woff2)format("woff2"),url(./barlow-semi-condensed-latin-700-normal-BMyZXq_9.woff)format("woff")}:root{--ink:#f3ead6;--muted:#cbc3b2;--gold:#f1c76e;--gold-deep:#8a5a1c;--bronze:#b98a46;--teal:#5cffd0;--teal-deep:#1d6b5c;--red:#d4566c;--slate:#0f161e;--slate-2:#18232f;--well:#070b10cc;--panel-border:#b98a4666;--frame:url(./frame-BpOm42cY.png);--fill:url(./panel_fill-CstfGfyL.png);--font:"Barlow Semi Condensed", "Segoe UI", system-ui, sans-serif;--font-copy:var(--font);--font-title:"Cinzel", Georgia, serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;font-family:var(--font);color:var(--ink);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;touch-action:manipulation;background:#0b1116;margin:0;font-size:clamp(13px,.55vw + .6vh + 3px,18px);font-weight:500;overflow:hidden}#game{position:fixed;inset:0}#game canvas{display:block}.scene-loading{border:1px solid var(--bronze);color:var(--ink);font-family:var(--font-title);letter-spacing:.06em;pointer-events:none;background:#0d151cee;border-radius:999px;padding:.8rem 1.4rem;position:absolute;top:53%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 18px #5cffd033}.preview-tip{max-width:19rem;color:var(--muted);margin:0 0 .45rem;font-size:.85rem}#ui{pointer-events:none;z-index:10;position:fixed;inset:0}#ui *{pointer-events:auto}#ui .passthrough,#ui .passthrough *{pointer-events:none}.txt{color:var(--ink);text-shadow:0 1px 2px #000e,0 0 6px #0009;letter-spacing:.015em}h1,h2,h3,.banner-header{font-family:var(--font-title);letter-spacing:.04em;font-weight:600}h3{color:var(--gold)}.currency,.wave-chip,.bar,.resource-stock,.speed-row,table.rates{font-variant-numeric:tabular-nums}.panel{isolation:isolate;border:28px solid #0000;border-image:var(--frame) 96 / 28px stretch;color:var(--ink);filter:drop-shadow(0 8px 12px #000b);padding:.15rem .3rem;position:relative}.panel:before{content:"";z-index:-1;background:linear-gradient(180deg, #1d2b38cc, #0a1016ee), var(--fill) 0 0 / 384px repeat;position:absolute;inset:-16px;box-shadow:inset 0 0 22px #000d,inset 0 1px #ffffff14}.panel-content{min-width:0;position:relative}.panel.slim{border-width:20px;border-image-width:20px}.panel.slim:before{inset:-12px}.well{background:var(--well);border:1px solid var(--panel-border);border-radius:999px;box-shadow:inset 0 2px 6px #000c,0 1px #ffffff10}.banner-header{color:var(--gold);text-shadow:0 2px 2px #000,0 0 10px #f1c76e40;border:0 solid #0000;border-width:0 30px;border-image:url(./plate-CZu--AdQ.png) 0 100 fill/0 30px;margin:0;padding:.35rem .6rem;display:inline-block}.btn{--face-top:#24434a;--face-bottom:#102328;--label:#f3ead6;font:600 max(14px, .96rem)/1.2 var(--font-copy);color:var(--label);cursor:pointer;background:linear-gradient(180deg, var(--face-top), var(--face-bottom)) padding-box;text-shadow:0 1px 2px #000c;letter-spacing:.04em;white-space:nowrap;border:8px solid #0000;border-image:url(./button-DJvxYQBr.png) 20/8px;border-radius:6px;min-width:44px;min-height:44px;padding:.25rem .75rem;transition:transform .1s,box-shadow .15s,filter .15s;box-shadow:inset 0 1px #ffffff1f,inset 0 -6px 10px #0005,0 3px 6px #0008}.btn:not(:disabled):hover{filter:brightness(1.18);box-shadow:inset 0 1px #ffffff2a,inset 0 -6px 10px #0005,0 0 12px #5cffd040,0 3px 6px #0008}.btn:not(:disabled):active{transform:translateY(1px);box-shadow:inset 0 3px 6px #000a}.btn.gold{--face-top:#8a5f22;--face-bottom:#46290a;--label:#fff1c8}.btn.red{--face-top:#7c2638;--face-bottom:#3e0f1a;--label:#ffeef0}.btn.blue{--face-top:#284a68;--face-bottom:#132536}.btn.wood{--face-top:#2e3a48;--face-bottom:#151c25}.btn[aria-pressed=true]{--face-top:#2f7a6c;--face-bottom:#133f37;box-shadow:inset 0 0 10px #5cffd055,0 0 10px #5cffd040}.btn.gold[aria-pressed=true]{--face-top:#a8742a;--face-bottom:#5a360c;box-shadow:inset 0 0 10px #ffd36a66,0 0 10px #f1c76e55}.btn:disabled{--face-top:#2a2e33;--face-bottom:#1b1e22;--label:#a9a49b;cursor:not-allowed;filter:grayscale(.9)brightness(.85)}.btn.small{padding:.15rem .5rem;font-size:max(13px,.86rem)}.btn:focus-visible,.toggle:focus-visible,summary:focus-visible,:is(input,select,textarea):focus-visible{outline:3px solid var(--teal);outline-offset:3px}.btn.icon{min-width:44px;min-height:44px;padding:0}.btn.icon.menu-btn{box-shadow:none;background:0 0;border:0;border-image:;grid-template-rows:62px 16px;justify-items:center;gap:2px;width:72px;height:auto;display:grid}.menu-art{background:url(./ring-BE4iVsER.png) 50%/100% no-repeat,radial-gradient(circle,#1f3842 0 52%,#0b141a 66%,#0000 67%);border-radius:50%;place-items:center;width:62px;height:62px;transition:box-shadow .15s,filter .15s,transform .15s;display:grid}.menu-art :is(img,svg.slot-img){filter:drop-shadow(0 2px 2px #000c);width:44px;height:44px}.menu-btn:hover .menu-art{filter:brightness(1.15);transform:translateY(-1px)}.menu-btn[aria-pressed=true] .menu-art{box-shadow:0 0 0 2px #5cffd0aa,0 0 16px #5cffd088}.menu-btn .label{color:var(--ink);font:600 12px/16px var(--font-copy);letter-spacing:.03em;white-space:nowrap;text-shadow:0 1px 2px #000,0 0 4px #000}.menu-btn[aria-pressed=true] .label{color:var(--teal)}.hud-tl{align-items:stretch;gap:.6rem;display:flex;position:absolute;top:.8rem;left:.8rem}.hud-tr{flex-wrap:wrap;justify-content:flex-end;gap:.15rem;max-width:50vw;display:flex;position:absolute;top:.6rem;right:.6rem}.hud-br{flex-direction:column;align-items:flex-end;gap:.35rem;display:flex;position:absolute;bottom:.8rem;right:.8rem}.hud-tc{flex-direction:column;align-items:center;gap:.3rem;display:flex;position:absolute;top:.8rem;left:50%;transform:translate(-50%)}.currency{align-items:center;gap:.4rem;min-width:8.5rem;margin:.12rem 0;padding:.15rem .9rem .15rem .2rem;font-size:1.2rem;font-weight:700;display:flex}.currency :is(img,svg.slot-img){filter:drop-shadow(0 2px 2px #000a);width:2.1rem;height:2.1rem;margin:-.3rem 0 -.3rem -.4rem}.wallet .panel-content{flex-direction:column;gap:.15rem;display:flex}.bar{border:1px solid var(--bronze);background:#070b0f;border-radius:999px;height:1.25rem;position:relative;overflow:hidden;box-shadow:inset 0 2px 4px #000c}.bar>i{background:linear-gradient(180deg, #a6fff0, var(--teal) 40%, var(--teal-deep));border-radius:999px;transition:width .15s;position:absolute;inset:0 auto 0 0;box-shadow:0 0 10px #5cffd066}.bar.gold>i{background:linear-gradient(180deg, #ffe7a8, var(--gold) 45%, var(--gold-deep));box-shadow:0 0 10px #f1c76e55}.bar.red>i{background:linear-gradient(180deg, #ff9aa8, var(--red) 45%, #6e1527);box-shadow:0 0 10px #d4566c66}.bar>span{color:#fff8ea;font:700 max(12px, .8rem)/1 var(--font-copy);text-shadow:0 1px 2px #000,0 0 3px #000;place-items:center;display:grid;position:absolute;inset:0}.controls{width:17.5rem}.toggle-row{justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.toggle{cursor:pointer;border:1px solid var(--teal);color:#e9fff8;min-height:40px;font:700 max(12px, .8rem)/1.2 var(--font-copy);letter-spacing:.1em;background:linear-gradient(#1f5a50,#0e2b26);border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.3rem .8rem;display:flex;box-shadow:0 0 10px #5cffd033}.toggle.off{border-color:var(--bronze);color:#f6e2bd;box-shadow:none;background:linear-gradient(#4a3a22,#241a0e)}.wave-chip{font-size:1.15rem}.wave-chip>.panel-content{font-family:var(--font-title);align-items:center;gap:.9rem;display:flex}.wave-chip .best{font:600 .85rem var(--font-copy);color:var(--gold)}.wave-chip .lives{font:700 1rem var(--font-copy);align-items:center;gap:.15rem;display:flex}.wave-chip .lives :is(img,svg.slot-img){width:1.7rem;height:1.7rem;margin:-.3rem 0}.block-info{text-align:center;max-width:min(31rem,75vw);font:500 max(13px, .85rem)/1.45 var(--font-copy);color:var(--muted)}.block-info .affinity-badge{color:var(--ink);margin-right:.5rem}.boss-bar{width:min(34rem,60vw)}.boss-bar .bar{height:1.3rem}.farm{color:var(--gold);font-size:.85rem}.banner{text-align:center;pointer-events:none;animation:2.2s ease-out forwards banner;position:absolute;top:32%;left:50%;transform:translate(-50%,-50%)}.banner h1{color:var(--gold);text-shadow:0 3px #2a1806,0 0 24px #f1c76e66,0 0 2px #000;margin:0;font-size:3.6rem}.banner p{font-size:1.4rem;font-family:var(--font-title);margin:0}.banner.boss h1{color:#ff6d82;text-shadow:0 3px #3a0610,0 0 30px #d4566c99;font-size:4.6rem}.banner.miniboss h1{color:#ffae6a}.banner.defeat h1{color:var(--red)}@keyframes banner{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}12%{opacity:1;transform:translate(-50%,-50%)scale(1.08)}20%{transform:translate(-50%,-50%)scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-60%)scale(1)}}.toasts{pointer-events:none;flex-direction:column;align-items:center;gap:.2rem;display:flex;position:absolute;bottom:7rem;left:50%;transform:translate(-50%)}.toast{border-width:20px;text-align:center;border-image-width:20px;max-width:80vw;font-size:1rem;animation:.25s ease-out toast}.toast:before{inset:-12px}.toast.good{color:#c8fff0}.toast.bad{color:#ffc3cc}.toast.gem{color:#ffd0d8}@keyframes toast{0%{opacity:0;transform:translateY(10px)}}.popup{z-index:2;flex-direction:column;width:min(23rem,100vw - 1.6rem);max-height:calc(100dvh - 1.6rem);display:flex;position:absolute}.popup>.panel-content,.modal>.panel-content{min-height:0;overflow-y:auto}.popup h3,.modal h2{margin:0 0 .4rem}.popup .row{align-items:center;gap:.6rem;display:flex}.popup .row :is(img,svg.slot-img){object-fit:contain;border:1px solid var(--bronze);background:radial-gradient(circle,#24404a,#0b141a 70%);border-radius:50%;width:3.4rem;height:3.4rem}.popup p,.modal p{border-left:2px solid var(--bronze);font-family:var(--font-copy);color:var(--muted);background:#05090dcc;border-radius:2px;margin:.25rem 0 .5rem;padding:.4rem .6rem;font-size:max(13px,.9rem);line-height:1.45}.popup p strong,.modal p strong{color:var(--ink)}.modal :is(ul,ol){color:var(--muted);font:max(13px, .9rem)/1.5 var(--font-copy);background:#05090dcc;border-radius:2px;margin:.5rem 0;padding:.5rem .7rem .5rem 1.8rem}.modal li+li{margin-top:.35rem}.popup .actions{gap:.4rem;margin-top:.5rem;display:flex}.popup .actions .btn{flex:1;justify-content:center;align-items:center;gap:.25rem;display:flex}.popup .actions :is(img,svg.slot-img){width:1.4rem;height:1.4rem;margin:-.2rem 0}.popup .hint{opacity:.85;font-size:.8rem}.backdrop{z-index:20;background:radial-gradient(circle at 50% 40%,#0a141acc,#020506ee);place-items:center;padding:.8rem;animation:.15s fade;display:grid;position:absolute;inset:0}@keyframes fade{0%{opacity:0}}.modal{flex-direction:column;width:min(48rem,96vw);max-height:92vh;display:flex}.modal header{justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.6rem;display:flex}.modal h2{font-size:1.45rem}.grid{grid-template-columns:repeat(auto-fill,minmax(min(12rem,100%),1fr));gap:.6rem;padding:2px;display:grid}.card{border-width:20px;text-align:center;border-image-width:20px;flex-direction:column;align-items:center;gap:.3rem;min-width:0;display:flex}.card:before{inset:-12px}.card>.panel-content{flex-direction:column;align-items:center;gap:.3rem;width:100%;display:flex}.card :is(img,svg.slot-img).big{object-fit:contain;filter:drop-shadow(0 6px 8px #000c);width:7rem;height:8.4rem}.card.locked{filter:grayscale(.8)brightness(.75)}.card .btn{white-space:normal;overflow-wrap:anywhere;max-width:100%}table.rates{border-collapse:collapse;width:100%;font-family:var(--font-copy);background:#05090dcc;border-radius:2px;font-size:max(13px,.95rem)}table.rates td{overflow-wrap:anywhere;border-bottom:1px solid #b98a4633;padding:.45rem .5rem}.swatch{vertical-align:-.1rem;border:1px solid #000;border-radius:50%;width:.9rem;height:.9rem;margin-right:.35rem;display:inline-block}textarea.save{border:1px solid var(--bronze);width:100%;height:6rem;color:var(--ink);background:#070b10;border-radius:3px;padding:.6rem;font-family:monospace;font-size:.8rem}svg.slot-img{flex-shrink:0;overflow:hidden}.affinity-badge{align-items:center;gap:.3rem;font-weight:600;display:inline-flex}.affinity-badge .slot-img{width:1.8rem;height:1.8rem;margin:-.2rem 0}.speed-row{flex-wrap:wrap;gap:.3rem;margin-bottom:.4rem;display:flex}.wave-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem;display:grid}.wave-grid .btn{white-space:normal;flex-direction:column;padding:.45rem .2rem;display:flex}.wave-grid strong{font-size:1.3rem;font-family:var(--font-title)}.wave-grid small{font:500 max(13px, .78rem)/1.3 var(--font-copy)}.wave-jump{align-items:center;gap:.4rem;display:flex}.wave-jump input{width:6rem}.wave-pagination{justify-content:space-between;align-items:center;margin-top:.7rem}.wave-preview{border-radius:6px;margin-top:.7rem;padding:.7rem 1rem}.wave-preview h3{margin:0 0 .4rem}.option{color:var(--ink);font:500 max(13px, .9rem)/1.3 var(--font-copy);text-shadow:0 1px 3px #000;align-items:center;gap:.4rem;margin:.45rem 0;display:flex}input[type=checkbox]{accent-color:#3fd7b0;width:18px;height:18px;margin:0 .3rem 0 0}.modal label.txt,.modal .option{min-height:44px;font-family:var(--font-copy);background:#05090dcc;border-radius:2px;align-items:center;padding:.3rem .5rem;font-size:max(13px,.9rem);display:flex}.assignment-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-bottom:.6rem;display:grid}.assignment-grid label{gap:.4rem;display:grid}.text-input,select{border:1px solid var(--bronze);min-width:0;max-width:100%;min-height:44px;color:var(--ink);font:500 max(13px, .95rem) var(--font-copy);background:#070b10;border-radius:3px;margin:.3rem 0;padding:.5rem}.card .text-input{width:100%}.resource-stock{flex-wrap:wrap;gap:.7rem;margin:.6rem 0;display:flex}.resource-stock>span{align-items:center;gap:.3rem;display:flex}.resource-stock .slot-img{width:2.2rem;height:2.2rem}.resource-fight{text-align:center}.boss-art{object-fit:contain;transform-origin:50% 100%;filter:drop-shadow(0 8px 10px #000c);width:14rem;max-width:100%;height:12rem;margin:auto;transition:filter .6s,opacity .6s;display:block}.boss-art.running{animation:1.8s ease-in-out infinite boss-breathe}.boss-art.victory{filter:grayscale()brightness(.55);opacity:.7}@keyframes boss-breathe{0%,to{transform:scale(1)rotate(0)}50%{transform:scale(1.03,.98)rotate(-1.5deg)}}.scene-error{text-align:center;z-index:5;width:min(26rem,100vw - 32px);position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.evolution-preview{border-top:1px solid var(--panel-border);font-size:.85rem}.pity-progress{gap:.2rem;display:grid}details{margin:.6rem 0}summary{cursor:pointer;font-weight:600}.modal summary{min-height:44px;color:var(--ink);font:600 max(13px, .9rem)/1.4 var(--font-copy);background:#05090dcc;border-radius:2px;padding:.6rem .5rem}.rotate-hint{opacity:.85;white-space:nowrap;font-size:.8rem;display:none;position:absolute;top:14.5rem;left:50%;transform:translate(-50%)}.high-contrast{--ink:#fff;--muted:#fff;--panel-border:#f1c76e;--well:#000e}.high-contrast .panel:before{background:linear-gradient(#000000e0, #000000e0), var(--fill) 0 0 / 384px repeat}.high-contrast :is(.popup,.modal) p,.high-contrast .rates td{background:#000e;color:#fff!important}.high-contrast .btn{--label:#fff;outline:1px solid var(--gold);outline-offset:-2px}.high-contrast .btn:disabled{--label:#ded9d0;outline-color:#7d7466}.high-contrast .btn:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.high-contrast .txt{text-shadow:0 1px 2px #000,0 0 3px #000}.reduced-motion *,.reduced-motion :before,.reduced-motion :after{transition:none!important;animation:none!important}@media (prefers-reduced-motion:reduce){.banner,.toast,.popup{animation:none}}@media (max-width:1380px){.hud-tr{max-width:46vw}.btn.icon.menu-btn{grid-template-rows:54px 16px;width:62px}.menu-art{width:54px;height:54px}.menu-art :is(img,svg.slot-img){width:38px;height:38px}}@media (max-width:760px),(max-height:520px){.controls{width:14rem}.banner h1{font-size:2.6rem}.banner.boss h1{font-size:3.2rem}}@media (orientation:portrait){.hud-tr{max-width:100vw;top:.6rem}.hud-tc{top:12rem}.toasts{bottom:45vh}.rotate-hint{display:block}}@media (max-width:700px){.assignment-grid{grid-template-columns:1fr}.hud-tc{top:8.6rem}.block-info{max-width:90vw;font-size:13px}.hud-tr{top:5.5rem}}@media (max-width:600px) and (orientation:portrait){html{font-size:13px}.panel{border-width:20px;border-image-width:20px}.panel:before{inset:-12px}.hud-tl{top:8px;left:8px;right:8px}.wallet{width:100%}.wallet .panel-content{flex-direction:row;justify-content:center;gap:.6rem}.wallet .currency{min-width:0}.hud-tc{width:calc(100vw - 16px);top:64px}.hud-tr{grid-template-columns:repeat(4,minmax(0,1fr));justify-items:center;gap:4px;display:grid;top:196px;left:8px;right:8px}.rotate-hint{font-size:13px;top:360px}.hud-br{bottom:8px;left:8px;right:8px}.controls{width:100%}.controls .panel-content{grid-template-columns:1fr 1fr;gap:.35rem;display:grid}.controls .preview-tip,.controls .speed-row,.controls .bar{grid-column:1/-1}.controls .speed-row{gap:.3rem;margin:0}.controls .speed-row .btn{flex:1}.controls .btn{font-size:13px}.controls .option{margin:.2rem 0;font-size:13px}.wave-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.banner-header{border-width:0 20px;border-image-width:0 20px;font-size:1.1rem}}@media (max-height:520px) and (orientation:landscape){.hud-br{bottom:8px;right:8px}.controls{width:min(31rem,55vw)}.controls .panel-content{grid-template-columns:1fr 1fr;gap:.3rem;display:grid}.controls .speed-row,.controls .bar,.controls .preview-tip{grid-column:1/-1}.controls .speed-row{flex-wrap:nowrap;margin:0}.controls .speed-row .btn{flex:1}.controls .option{margin:0;font-size:13px}}
