:root{--bg:#0b0816;--ink:#f4efff;--muted:#a99fc6;--N:#9aa4b8;--R:#4cb2ff;--SR:#c77dff;--SSR:#ffc93c;--UR:#ff7af0;--font:ui-rounded, "SF Pro Rounded", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;overflow-x:clip}body{min-height:100dvh;font-family:var(--font);color:var(--ink);background:radial-gradient(1200px 600px at 50% -10%, #3a1a7a 0%, transparent 60%), radial-gradient(800px 500px at 100% 100%, #0b3b5a 0%, transparent 60%), var(--bg);-webkit-tap-highlight-color:transparent;overflow-x:hidden}body.flash-SSR:after,body.flash-UR:after{content:"";pointer-events:none;z-index:50;animation:.7s ease-out forwards flash;position:fixed;inset:0}body.flash-SSR:after{background:radial-gradient(circle,#ffe9a0cc,#0000 70%)}body.flash-UR:after{background:conic-gradient(#ff4fd8aa,#00e5ffaa,#ffe066aa,#7cff6baa,#ff4fd8aa)}@keyframes flash{0%{opacity:1}to{opacity:0}}#app{max-width:560px;margin:0 auto;padding:14px 16px 40px}.hidden{display:none!important}.top{justify-content:space-between;align-items:center;gap:12px;display:flex}.logo{letter-spacing:2px;font-size:26px;font-weight:900}.logo span{background:linear-gradient(90deg,#ff4fd8,#ffc93c,#00e5ff);color:#0000;-webkit-background-clip:text;background-clip:text;margin-left:4px}.pulls{color:var(--muted);white-space:nowrap;background:#ffffff10;border-radius:99px;padding:6px 12px;font-size:14px}.pulls b{color:#fff;font-size:16px}.banner{background:linear-gradient(90deg,#ff4fd833,#00e5ff22);border:1px solid #fff2;border-radius:14px;margin-top:12px;padding:10px 14px;font-size:14px}.stage{perspective:1400px;width:min(100%,420px);margin:18px auto 10px;position:relative}.card3d{aspect-ratio:600/840;cursor:pointer;width:100%;position:relative}.flipper{transform-style:preserve-3d;transition:transform .6s cubic-bezier(.2,.9,.25,1.15);position:absolute;inset:0}.flipped .flipper{transform:rotateY(180deg)}.face{backface-visibility:hidden;border-radius:5.6%/4%;position:absolute;inset:0;overflow:hidden}.face.front{transform:rotateY(180deg)}.face.front svg{width:100%;height:100%;display:block}.face.back{background:repeating-linear-gradient(45deg,#ffffff08 0 12px,#0000 12px 24px),linear-gradient(160deg,#2b1760,#0f0a24);border:3px solid #ffffff2a;place-items:center;display:grid}.back-inner{text-align:center}.back-sigil{aspect-ratio:1;color:#fff;text-shadow:0 0 24px #b27dff;background:radial-gradient(circle at 35% 30%,#ffffff30,#ffffff06);border:3px solid #ffffff35;border-radius:50%;place-items:center;width:44%;margin:0 auto;font-size:clamp(48px,18vw,110px);font-weight:900;display:grid}.card3d .back-sigil{width:160px}.back-text{letter-spacing:6px;color:var(--muted);margin-top:16px;font-weight:800}.card3d.idle .flipper{animation:3s ease-in-out infinite bob}@keyframes bob{50%{transform:translateY(-8px)rotate(-1deg)}}.card3d.charging .face.back{animation:.35s ease-in-out infinite alternate charge}.card3d.charging .flipper{animation:.12s linear infinite alternate wobble}.card3d[data-rarity=N]{--glow:var(--N)}.card3d[data-rarity=R]{--glow:var(--R)}.card3d[data-rarity=SR]{--glow:var(--SR)}.card3d[data-rarity=SSR]{--glow:var(--SSR)}.card3d[data-rarity=UR]{--glow:var(--UR)}@keyframes charge{0%{box-shadow:0 0 20px 2px var(--glow), inset 0 0 30px var(--glow)}to{box-shadow:0 0 60px 14px var(--glow), inset 0 0 70px var(--glow)}}@keyframes wobble{0%{transform:rotate(-1.2deg)scale(1.01)}to{transform:rotate(1.2deg)scale(1.02)}}.card3d.flipped .face.front{box-shadow:0 18px 50px -10px var(--glow,#000)}.card3d.flipped[data-rarity=SSR] .face.front:after,.card3d.flipped[data-rarity=UR] .face.front:after{content:"";pointer-events:none;mix-blend-mode:overlay;background:linear-gradient(115deg,#0000 30%,#fffa 45%,#0000 60%) 0 0/250% 100%;animation:2.6s ease-in-out infinite sheen;position:absolute;inset:0}.card3d.flipped[data-rarity=UR] .face.front:after{mix-blend-mode:color-dodge;background:linear-gradient(115deg,#0000 20%,#ff4fd866 35%,#00e5ff66 50%,#ffe06666 65%,#0000 80%) 0 0/250% 100%}@keyframes sheen{0%{background-position:150% 0}to{background-position:-100% 0}}.card3d.shake{animation:.5s cubic-bezier(.36,.07,.19,.97) shake}@keyframes shake{20%,80%{transform:translate(-3px,2px)}40%,60%{transform:translate(5px,-3px)}}.burst{pointer-events:none;z-index:5;width:0;height:0;position:absolute;top:45%;left:50%}.burst i{opacity:0;border-radius:2px;width:10px;height:14px;animation:1.1s cubic-bezier(.1,.8,.3,1) forwards pop;position:absolute}@keyframes pop{0%{opacity:1;transform:translate(0)rotate(0)}to{transform:translate(var(--dx), calc(var(--dy) + 80px)) rotate(var(--rot));opacity:0}}.pull-row{grid-template-columns:2fr 1fr;gap:10px;margin-top:8px;display:grid}.btn{font:inherit;cursor:pointer;color:#fff;text-align:center;border:0;border-radius:16px;padding:12px 14px;font-weight:800;text-decoration:none;transition:transform 80ms,filter .2s,opacity .2s}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.4;cursor:not-allowed;filter:grayscale(.7)}.btn.pull{letter-spacing:4px;background:linear-gradient(135deg,#ff4fd8,#8a3cff 55%,#00b7ff);justify-content:center;align-items:baseline;gap:8px;padding:18px;font-size:30px;display:flex;box-shadow:0 8px 30px -6px #b04dff,inset 0 2px #fff5}.btn.pull:not(:disabled):hover{filter:brightness(1.12)}.btn.pull small{letter-spacing:1px;opacity:.85;font-size:16px}.btn.pull.ten{color:#2a1200;background:linear-gradient(135deg,#ffc93c,#ff7a00);font-size:22px;box-shadow:0 8px 30px -8px #ff9a00,inset 0 2px #fff6}.actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.actions #gh{grid-column:span 2}.btn.ghost{background:#ffffff12;border:1px solid #fff2;font-size:15px}.btn.ghost:hover{background:#ffffff1e}.out{background:#ff4f6a22;border:1px solid #ff4f6a55;border-radius:14px;margin-top:12px;padding:12px 14px;font-size:14px}.multi{grid-template-columns:repeat(5,1fr);gap:6px;margin-top:16px;display:grid}.mini{aspect-ratio:600/840;cursor:pointer;perspective:600px;background:0 0;border:0;padding:0;position:relative}.mini .face{border-radius:8%/5.7%}.mini .back-sigil{border-width:2px;font-size:22px}.mini.flipped .flipper{transform:rotateY(180deg)}.mini[data-rarity=SR].flipped .face.front{box-shadow:0 0 10px var(--SR)}.mini[data-rarity=SSR].flipped .face.front{box-shadow:0 0 14px var(--SSR)}.mini[data-rarity=UR].flipped .face.front{box-shadow:0 0 18px var(--UR)}@media (width<=420px){.multi{grid-template-columns:repeat(5,1fr);gap:4px}}.info{text-align:center;margin-top:22px}.rates{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.rate{color:var(--muted);background:#ffffff0c;border-radius:99px;padding:4px 10px;font-size:13px}.rate b,.chip b{margin-right:2px}.r-N b{color:var(--N)}.r-R b{color:var(--R)}.r-SR b{color:var(--SR)}.r-SSR b{color:var(--SSR)}.r-UR b{color:var(--UR)}.life{width:100%;color:var(--muted);margin-top:6px;font-size:12px}.pity{color:var(--muted);margin-top:8px;font-size:12px}.recent{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:18px;display:flex}.recent h3{letter-spacing:2px;width:100%;color:var(--muted);text-transform:uppercase;margin:0 0 4px;font-size:13px}.chip{font:inherit;color:var(--ink);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:99px;max-width:48%;padding:4px 10px;font-size:12px;overflow:hidden}.chip:hover{background:#ffffff18}footer{text-align:center;color:#7d7499;margin-top:28px;font-size:12px;line-height:1.6}footer a{color:#a99fc6}.toast{opacity:0;pointer-events:none;z-index:60;background:#1f1640;border:1px solid #ffffff2a;border-radius:12px;max-width:90vw;padding:10px 16px;font-size:14px;transition:all .25s;position:fixed;bottom:24px;left:50%;transform:translate(-50%,40px)}.toast.show{opacity:1;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.tabs{grid-template-columns:repeat(3,1fr);gap:6px;margin:14px 0 4px;display:grid}.tabs button{font:inherit;color:var(--muted);cursor:pointer;background:#ffffff0c;border:1px solid #ffffff1f;border-radius:12px;padding:9px 6px;font-size:15px;font-weight:800}.tabs button[aria-selected=true]{color:#fff;background:linear-gradient(135deg,#ff4fd855,#8a3cff55 55%,#00b7ff55);border-color:#fff5}.tab h2{margin:14px 0 6px;font-size:20px}.tab h3{letter-spacing:1px;margin:22px 0 8px;font-size:15px}.hint{color:var(--muted);margin:4px 0 10px;font-size:13px;line-height:1.55}.hint a{color:#c77dff}.muted{color:var(--muted);font-weight:500}.btn.small{letter-spacing:1px;padding:12px;font-size:16px}.slots{gap:6px;margin:0;padding:0;list-style:none;display:grid}.slot{background:#ffffff0a;border:1px solid #ffffff1a;border-radius:14px;grid-template-columns:54px 1fr auto;align-items:center;gap:8px;padding:8px;display:grid}.slot:first-child{border-color:#ffc93c88;box-shadow:0 0 18px -8px #ffc93c}.slot.empty{opacity:.6}.slot-label{letter-spacing:1px;color:#ffc93c;text-align:center;font-size:11px;font-weight:900}.slot:not(:first-child) .slot-label{color:var(--muted)}.slot-main,.row-main{all:unset;cursor:pointer;min-width:0;font-size:14px;line-height:1.35;overflow:hidden}.slot-main small,.row-main small{color:#c7bde6;font-size:12px}.slot-ctl{gap:4px;display:flex}.slot-ctl button,.add{font:inherit;color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2a;border-radius:9px;min-width:32px;height:32px;padding:0 8px;font-size:14px;font-weight:800}.slot-ctl button:disabled,.add:disabled{opacity:.35;cursor:not-allowed;font-size:11px}.chip{background:#ffffff0a;border:1px solid #ffffff2a;border-radius:99px;max-width:none;padding:1px 7px;font-size:11px}.stack-cost{color:var(--muted);align-items:center;gap:10px;margin:10px 0;font-size:13px;display:flex}.cost-bar{background:#ffffff14;border-radius:99px;flex:1;height:8px;overflow:hidden}.cost-bar i{background:linear-gradient(90deg,#7cff6b,#ffc93c);height:100%;display:block}.cost-bar i.over{background:#ff5b5b}.stack-actions{grid-template-columns:1fr 1.4fr;gap:8px;display:grid}.search{width:100%;font:inherit;color:var(--ink);background:#ffffff0d;border:1px solid #ffffff26;border-radius:12px;padding:10px 12px}.collection{gap:4px;margin:10px 0 0;padding:0;list-style:none;display:grid}.row{background:#ffffff07;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:7px 8px;display:grid}.bosses{gap:8px;margin:0;padding:0;list-style:none;display:grid}.boss{background:#ffffff0a;border:1px solid #ffffff1a;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:12px;font-size:14px;display:grid}.boss.challenge{background:#ff4fd814;border-color:#ff4fd8aa}.boss small{color:#c7bde6;font-size:12px}.boss .tagline{color:#fff4c9;font-style:italic}.diff{letter-spacing:1px;color:#fff;background:#ffffff1a;border-radius:99px;padding:2px 7px;font-size:10px;font-weight:900}.d-Tutorial{color:#b6ffad;background:#7cff6b33}.d-Normal{color:#a8dcff;background:#4cb2ff33}.d-Hard{color:#e2bfff;background:#c77dff33}.d-Nightmare{color:#ffc48a;background:#ff7a0033}.d-Finalboss{color:#ffb3bf;background:#ff4f6a44}.btn.fight{background:linear-gradient(135deg,#ff4fd8,#8a3cff);padding:10px 14px;font-size:15px}.btn.fight:disabled{opacity:.4;filter:grayscale(.7)}.log-head{justify-content:space-between;align-items:center;margin:14px 0 6px;display:flex}.battle-log{background:#05030b;border:1px solid #ffffff1f;border-radius:14px;max-height:56vh;padding:10px 12px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.5;overflow-y:auto}.ll{white-space:pre-wrap;padding:1px 0}.ll.k-header{color:#c77dff;font-weight:800}.ll.k-lineup{color:var(--muted)}.ll.k-round{color:#ffc93c;margin-top:6px;font-weight:700}.ll.k-strike{color:#d9d0f0}.ll.k-skill{color:#fff4c9}.ll.k-death{color:#ff9a8a}.ll.k-enter{color:#8fd9ff}.ll.k-warn{color:#ffc93c}.ll.k-result{color:#7cff6b;margin-top:6px;font-weight:900}.ll.s1.k-skill{color:#ffd6f6}.battle-result{text-align:center;border:2px solid #ffffff2a;border-radius:16px;margin-top:12px;padding:14px}.battle-result.win{border-color:#7cff6b;box-shadow:0 0 30px -10px #7cff6b}.battle-result.lose{border-color:#ff6b5b}.battle-result.draw{border-color:#ffc93c}.verdict{letter-spacing:1px;font-size:28px;font-weight:900}.upset{background:#ff4f6a;border-radius:99px;padding:3px 10px;font-size:16px;animation:.5s ease-out pop-in;display:inline-block}@keyframes pop-in{0%{transform:scale(.3)rotate(-12deg)}to{transform:scale(1)rotate(0)}}.battle-result .actions{margin-top:12px}.modal{z-index:70;background:#05030bcc;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-card{gap:10px;width:min(92vw,400px);display:grid}.modal-svg svg{border-radius:5.6%/4%;width:100%;height:auto;display:block}.stack-combos{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 10px;font-size:12.5px;display:flex}.combo{background:#ffffff0a;border:1px solid #fff2;border-radius:99px;padding:3px 9px}.combo.c-active{color:#b6ffad;background:#7cff6b14;border-color:#7cff6b88}.combo.c-close{color:#c7bde6;opacity:.75;border-style:dashed}.combo.c-threat{color:#ffc48a;background:#ff7a0014;border-color:#ff7a0088}.combo.c-off{opacity:.6}.ll.k-combo{color:#8fffd2;background:#8fffd20f;border-left:3px solid #8fffd2;margin:2px 0;padding-left:6px;font-weight:700}
