@import"https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700&family=DM+Sans:wght@400;500;600;700&display=swap";:root{font-family:DM Sans,system-ui,sans-serif;color:#e9e8e1;background:#0c1422;font-synthesis:none;--bg:#0c1422;--panel:#172235;--panel2:#1b2b40;--line:#324054;--muted:#9caab7;--gold:#eac476;--gold2:#a87738;--text:#e9e8e1}*{box-sizing:border-box}body{margin:0;min-width:320px}button,select,input{font:inherit}button{cursor:pointer;color:inherit;border:1px solid var(--line);background:#26364b;border-radius:10px;padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .16s,border-color .16s,background .16s}button:hover:not(:disabled){transform:translateY(-2px);border-color:#a88c5b;background:#31445e}button:disabled{opacity:.46;cursor:not-allowed}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Cinzel,Georgia,serif}h1{font-size:clamp(2rem,4vw,3.4rem);line-height:1.18}h2{font-size:1.45rem}h3{font-size:1.05rem}p{line-height:1.55}small{font-size:.72rem}.eyebrow{font-size:.65rem;letter-spacing:.19em;font-weight:700;color:var(--gold);text-transform:uppercase}.muted{color:var(--muted)}.app{display:flex;min-height:100vh;background:radial-gradient(circle at 78% 6%,#1e2f48 0,#0c1422 38%,#0a1220)}.sidebar{width:226px;flex:none;background:#101c2e;border-right:1px solid #334055;min-height:100vh;padding:26px 14px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:9px;padding:0 13px 28px;border-bottom:1px solid var(--line)}.brand-mark{font-size:2rem;color:var(--gold)}.brand strong{font-family:Cinzel,serif;letter-spacing:.09em;font-size:.94rem}.brand small{display:block;color:var(--muted);letter-spacing:.23em;font-size:.55rem;margin-top:3px}.profile{display:flex;align-items:center;gap:10px;padding:24px 10px}.profile strong,.profile small{display:block}.profile small{color:var(--muted);margin-top:3px}.avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(145deg,#ecbb69,#a87637);color:#172235;display:grid;place-items:center}.sidebar nav{display:grid;gap:6px}.sidebar nav button{border:0;background:transparent;justify-content:flex-start;width:100%;color:#aebac7;padding:12px 15px}.sidebar nav button:hover,.sidebar nav button.active{background:linear-gradient(90deg,#394154,#1b293a);color:#f0d392;transform:none}.sidebar nav button.active{border-left:3px solid var(--gold)}.sidebar nav small{margin-left:auto}.sidebar-foot{margin-top:auto;padding:16px;color:#697c90;font-size:.7rem;font-style:italic}main{width:calc(100% - 226px);min-width:0}.topbar{min-height:78px;border-bottom:1px solid #344258;background:#132035c9;display:flex;align-items:center;justify-content:space-between;padding:13px clamp(20px,3vw,46px);gap:18px}.top-label{display:grid;gap:4px}.top-label strong{font-family:Cinzel,serif;font-size:1.2rem}.resource-bar{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.resource-bar>div{min-width:86px;padding:7px 9px;border:1px solid #35445b;border-radius:7px;background:#1c2b3d;display:grid;grid-template-columns:19px auto;column-gap:5px;align-items:center}.resource-bar small{grid-column:2;color:var(--muted)}.resource-symbol{color:var(--gold);font-size:1.1rem}.resource-symbol.xp{color:#8bbbea}.resource-symbol.dust{color:#baaddf}.resource-symbol.gems{color:#a5dcdd}.content{max-width:1500px;margin:auto;padding:32px clamp(18px,3vw,48px) 100px}.mobile-brand,.mobile-nav{display:none}.primary{border-color:#f4d794;background:linear-gradient(135deg,#f3d68d,#c69550);color:#1a2534;font-weight:800;box-shadow:0 5px 20px #e5b86728}.primary:hover:not(:disabled){background:linear-gradient(135deg,#ffe6a3,#dfaa5b)}.large{padding:14px 20px;font-size:1rem}.button-row{display:flex;gap:9px;align-items:center}.button-row.wrap{flex-wrap:wrap}.text-button{border:0;background:transparent;color:var(--gold);padding:4px}.text-button:hover{background:transparent}.pill{display:inline-flex;padding:5px 9px;border-radius:100px;background:#27384c;color:#d5c39a;border:1px solid #4d5361;font-size:.74rem}.panel{border:1px solid #415066;background:linear-gradient(145deg,#1a2a3e,#142135);border-radius:15px;padding:24px;box-shadow:0 15px 35px #0002}.panel h2{display:flex;align-items:center;gap:10px;margin:6px 0 0}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:24px}.hero-banner{min-height:340px;border:1px solid #655843;border-radius:18px;background:radial-gradient(circle at 73% 35%,#684f4a77 0,transparent 34%),linear-gradient(120deg,#26354a,#15243b 63%,#352e43);padding:45px clamp(28px,5vw,70px);display:flex;justify-content:space-between;overflow:hidden;position:relative}.hero-banner>div:first-child{position:relative;z-index:1;max-width:500px}.hero-banner h1{margin:13px 0;color:#f3eee2}.hero-banner em{font-style:normal;color:var(--gold)}.hero-banner p{max-width:390px;color:#cad2d5;margin-bottom:25px}.banner-art{flex:1;position:relative;min-width:240px}.banner-art span{position:absolute;color:#f4d790;text-shadow:0 0 35px #d9a55c;font-size:8rem;transform:rotate(17deg)}.banner-art span:nth-child(1){top:20px;right:21%;font-size:11rem}.banner-art span:nth-child(2){top:65px;right:0%;font-size:6rem;opacity:.45}.banner-art span:nth-child(3){bottom:-80px;right:40%;font-size:14rem;opacity:.28}.home-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}.idle-total{display:flex;justify-content:space-between;align-items:end;padding-bottom:14px;border-bottom:1px solid var(--line)}.idle-total>span{color:var(--muted)}.idle-total strong{font-size:1.9rem;color:var(--gold)}.idle-total small{font-size:.9rem}.rate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.rate-grid>div{background:#25354a;border:1px solid #394b5c;border-radius:9px;padding:11px;text-align:center}.rate-grid strong,.rate-grid span{display:block}.rate-grid strong{color:#efdcaf}.rate-grid span{font-size:.7rem;color:var(--muted)}.squad-preview{display:flex;gap:8px;justify-content:center}.squad-preview>div{text-align:center;min-width:0;flex:1}.squad-preview small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#becbd2;margin-top:7px}.team-power{display:flex;justify-content:space-between;margin-top:30px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted)}.team-power strong{color:var(--gold)}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.quick-grid button{justify-content:flex-start;padding:23px;background:#1b2b40}.quick-grid button svg:last-child{margin-left:auto}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:26px}.page-heading h1{margin:8px 0}.page-heading h1 small{font-family:DM Sans,sans-serif;font-size:1rem;color:var(--muted)}.page-heading p{color:var(--muted);margin:0}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.filters select,.filters input,.equipment-row select{background:#1f2e43;color:#e7e9e8;border:1px solid #43526a;border-radius:8px;padding:9px 12px;min-height:40px}.filters label{display:grid;gap:5px;color:var(--muted);font-size:.75rem}.hero-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:13px}.hero-card{display:flex;align-items:center;text-align:left;gap:12px;min-height:112px;width:100%;padding:12px;background:linear-gradient(135deg,#24364b,#18263a);border-left:3px solid #8190a4}.hero-card.chosen{border-color:var(--gold);background:#31455a}.hero-card-info{display:grid;gap:3px;min-width:0}.hero-card strong{font-family:Cinzel,serif;font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hero-card span,.hero-card small{color:#bac5ce;font-size:.7rem}.hero-card b{color:#f0ce86;font-size:.68rem}.rarity-rare{--rarity:#8ca0b4}.rarity-elite{--rarity:#6bb5d6}.rarity-epic{--rarity:#bd8bdf}.rarity-legendary{--rarity:#eac476}.hero-card,.result-card{border-left-color:var(--rarity)}.portrait{height:64px;width:64px;flex:none;border-radius:12px;border:1px solid var(--accent);background:radial-gradient(circle at 50% 34%,color-mix(in srgb,var(--accent) 60%,transparent),transparent 65%),linear-gradient(145deg,#33425b,#101b2c);display:grid;place-items:center;position:relative;overflow:hidden;color:#fff}.portrait span{font-size:2rem;text-shadow:0 2px 8px #0008;z-index:1}.portrait small{position:absolute;right:5px;bottom:2px;color:#fff9}.portrait-halo{position:absolute;width:45px;height:45px;border:1px solid #ffffff66;border-radius:50%;transform:rotate(-25deg) scaleX(.55)}.portrait.large{width:124px;height:148px}.portrait.large span{font-size:4rem}.empty-portrait{height:64px;width:64px;margin:auto;display:grid;place-items:center;border:1px dashed #6d7a8a;border-radius:11px}.empty-state{padding:50px;text-align:center;color:var(--muted)}.formation-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:18px}.formation-board{background:radial-gradient(circle at center,#293c4d,#162338 65%)}.formation-board h3{text-align:center;color:#b9c3c9;margin:10px 0}.slot-row{display:flex;justify-content:center;gap:13px;margin-bottom:35px}.formation-slot{width:116px;height:126px;display:flex;flex-direction:column;align-items:center;gap:8px;background:#152338aa;border:1px dashed #60718a}.formation-slot.selected{border:2px solid var(--gold);background:#41404a}.formation-slot .portrait{width:58px;height:58px}.formation-slot strong{font-size:.68rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-roster{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:560px;overflow:auto}.compact-roster .hero-card{min-height:77px}.compact-roster .portrait{width:45px;height:45px}.compact-roster .portrait span{font-size:1.5rem}.compact-roster .hero-card-info span,.compact-roster .hero-card-info small{display:none}.chapter{margin-bottom:36px}.chapter-title{display:flex;gap:18px;align-items:center;margin-bottom:13px}.chapter-title>span{font-family:Cinzel,serif;color:#7a91a9;font-size:2.8rem}.chapter-title h2{margin:3px 0 0}.stage-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.stage-card{min-height:118px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:#1d2b40;padding:13px;border:1px solid #415066}.stage-card small{color:var(--gold);letter-spacing:.1em}.stage-card strong{font-size:1.3rem;font-family:Cinzel,serif}.stage-card span{font-size:.72rem;color:#bac8d0}.stage-card em{font-style:normal;font-size:.7rem;margin-top:auto;color:#d7b875}.stage-card.current{border-color:var(--gold);background:#343746}.stage-card.boss{background:linear-gradient(140deg,#4c3540,#222d42)}.stage-card.cleared{opacity:.75}.summon-banner,.tower-hero{display:flex;align-items:center;gap:45px;border:1px solid #685b6a;border-radius:17px;background:radial-gradient(circle at 15% 50%,#594c70,#253249 55%,#17263b);padding:45px;margin-bottom:22px}.summon-orbit{flex:0 0 260px;height:260px;border:2px solid #dfbf80;border-radius:50%;display:grid;place-items:center;font-size:9rem;color:#edd9a9;box-shadow:0 0 80px #af91b077,inset 0 0 60px #af91b077;animation:orbit 12s linear infinite}.summon-banner h2,.tower-hero h2{font-size:2rem;margin:5px 0}.summon-banner p,.tower-hero p{color:#d2d8dc}.meter{height:7px;border-radius:8px;background:#121a29;overflow:hidden}.meter>div{height:100%;background:#77d4a5;transition:width .2s}.meter.energy>div{background:#85bced}.meter.pity{max-width:400px;margin:15px 0 25px}.meter.pity>div{background:var(--gold)}.summon-banner .button-row button{display:grid}.summon-banner .button-row small{font-weight:400}.result-card{border:1px solid var(--rarity);border-left-width:3px;border-radius:10px;background:#223148;display:grid;justify-items:center;gap:5px;padding:16px;animation:reveal .4s both}.result-card strong{font-family:Cinzel,serif}.result-card span{font-size:.75rem}.result-card b{font-size:.7rem;color:var(--gold)}.tower-emblem{width:235px;height:235px;border:2px solid #e6c989;border-radius:50%;display:grid;place-items:center;color:#f2d58b;box-shadow:0 0 70px #d0a87055}.gear-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:12px}.gear-card{display:flex;gap:15px;background:#1e2e43;border:1px solid #425269;border-radius:10px;padding:16px}.gear-icon{height:50px;width:50px;display:grid;place-items:center;background:#38465a;border-radius:8px;color:var(--gold);font-size:1.7rem}.gear-card strong,.gear-card small{display:block}.gear-card small{color:var(--muted)}.gear-card p{font-size:.75rem;margin:8px 0}.gear-card em{font-size:.7rem;color:var(--gold)}.toast{position:fixed;z-index:100;bottom:25px;left:50%;transform:translate(-50%);padding:13px 18px;background:#31495c;color:#fff;border:1px solid var(--gold);border-radius:10px;box-shadow:0 15px 30px #0008;max-width:90vw}.modal-backdrop,.battle-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#050b14db;display:grid;place-items:center;padding:20px;overflow:auto}.hero-modal{width:min(820px,100%);max-height:93vh;overflow:auto;border:1px solid #b09461;border-radius:15px;background:#152338;padding:26px;position:relative;box-shadow:0 30px 90px #000b}.close{position:absolute;right:15px;top:15px;font-size:1.5rem;line-height:1;padding:4px 10px}.detail-top{display:flex;gap:22px;align-items:center;margin-bottom:18px}.detail-top h2{font-size:1.8rem;margin:6px 0}.detail-top p{color:var(--muted)}.detail-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin:16px 0}.detail-stats>div{padding:9px;background:#26384e;border-radius:8px;text-align:center}.detail-stats span,.detail-stats strong{display:block}.detail-stats span{font-size:.65rem;text-transform:capitalize;color:var(--muted)}.detail-actions{display:flex;flex-wrap:wrap;gap:8px}.detail-actions button{display:grid}.detail-actions small{font-weight:400;font-size:.65rem}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:20px}.ability{border-top:1px solid var(--line);padding:12px 0}.ability span{display:block;font-size:.6rem;letter-spacing:.16em;color:var(--gold)}.ability strong{font-family:Cinzel,serif}.ability p{font-size:.78rem;color:var(--muted);margin:3px 0}.equipment-row{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding:10px 0}.equipment-row select{width:65%}.battle-overlay{z-index:70}.battle-shell{width:min(1180px,100%);max-height:95vh;overflow:auto;background:radial-gradient(circle at center,#2a3a4d,#121e31 65%);border:1px solid #a98d61;border-radius:18px;padding:22px;position:relative}.battle-heading{display:flex;justify-content:space-between;align-items:center}.battle-heading h2{margin:3px 0}.battle-clock{color:var(--gold);font-size:1.5rem}.battle-clock span{font-size:.8rem;color:var(--muted)}.arena{display:grid;grid-template-columns:1fr 80px 1fr;gap:8px;align-items:center;min-height:370px}.battle-team h3{text-align:center}.battle-row{display:flex;gap:7px;justify-content:center;min-height:130px}.battle-unit{width:115px;min-height:128px;position:relative;background:#1d3045;border:1px solid var(--accent);border-radius:10px;padding:7px;text-align:center}.battle-unit.fallen{filter:grayscale(1);opacity:.4}.unit-portrait{font-size:2.4rem;color:var(--accent);height:40px}.unit-name{font-size:.67rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unit-level{font-size:.58rem;color:var(--muted)}.battle-unit .meter{margin-top:5px;height:5px}.battle-unit small{font-size:.55rem;color:#ccd3d6}.status-line{display:flex;justify-content:center;gap:2px}.status-line span{font-size:.52rem;background:#59607a;border-radius:3px;padding:1px 2px}.arena-center{display:grid;place-items:center;color:var(--gold);font-family:Cinzel,serif;font-size:1.8rem}.battle-bottom{display:flex;justify-content:space-between;align-items:end;gap:15px;border-top:1px solid var(--line);padding-top:12px}.event-feed{height:96px;overflow:hidden;color:#b9c6cc;font-size:.7rem}.event-feed span{color:var(--gold);margin-right:6px}.battle-controls{display:flex;gap:4px;flex:none}.battle-controls button{padding:8px}.battle-controls button.selected{border-color:var(--gold);color:var(--gold)}.result-panel{position:absolute;top:65px;right:12%;bottom:20px;left:12%;background:#132237f5;border:1px solid var(--gold);border-radius:15px;padding:25px;overflow:auto;text-align:center;box-shadow:0 25px 70px #000c}.result-panel h2{font-size:2.7rem;margin:8px 0}.victory{color:#f4d48d}.defeat{color:#ec8a80}.reward-line{color:var(--gold)}.result-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:7px;margin:20px 0;text-align:left}.result-stats>div{background:#26374b;padding:9px;border-radius:7px}.result-stats strong,.result-stats span{display:block;font-size:.7rem}.result-stats span{color:var(--muted)}.result-panel .button-row{justify-content:center}.debug-result{margin-top:14px}.debug-result pre{max-height:260px;overflow:auto;background:#0a1422;padding:10px;font-size:.7rem}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes reveal{0%{opacity:0;transform:translateY(16px) scale(.94)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(max-width:1100px){.sidebar{width:185px}main{width:calc(100% - 185px)}.stage-grid{grid-template-columns:repeat(5,1fr)}.formation-layout{grid-template-columns:1fr}.compact-roster{grid-template-columns:repeat(3,1fr)}}@media(max-width:800px){.sidebar{display:none}main{width:100%}.mobile-brand{display:block;font-family:Cinzel,serif;color:var(--gold);font-weight:700}.top-label{display:none}.topbar{padding:10px 16px}.resource-bar>div{min-width:64px}.resource-bar small{display:none}.content{padding:22px 15px 95px}.mobile-nav{display:flex;position:fixed;z-index:40;bottom:0;left:0;right:0;background:#132136;border-top:1px solid #536277;justify-content:space-around;padding:6px 3px env(safe-area-inset-bottom)}.mobile-nav button{border:0;background:transparent;display:grid;gap:3px;justify-items:center;padding:5px 4px;color:#abb9c7;font-size:.59rem}.mobile-nav button.active{color:var(--gold)}.home-grid{grid-template-columns:1fr}.stage-grid{grid-template-columns:repeat(5,1fr)}.battle-shell{max-height:96vh}.arena{grid-template-columns:1fr;gap:5px}.arena-center{font-size:1rem;display:flex;gap:5px;justify-content:center}.arena-center svg{width:20px}.battle-row{min-height:auto}.battle-unit{width:95px;min-height:100px}.unit-portrait{height:30px;font-size:1.7rem}.result-panel{top:30px;right:3%;bottom:12px;left:3%}}@media(max-width:600px){.hero-banner{padding:30px 22px;min-height:320px}.banner-art{min-width:0;position:absolute;top:0;right:0;bottom:0;left:0;opacity:.23}.banner-art span:nth-child(1){right:5%;top:45px}.quick-grid{grid-template-columns:1fr}.quick-grid button{padding:15px}.stage-grid{grid-template-columns:repeat(2,1fr)}.chapter-title>span{font-size:2rem}.summon-banner,.tower-hero{display:block;padding:25px}.summon-orbit,.tower-emblem{width:145px;height:145px;margin:auto auto 25px;font-size:5rem}.summon-banner .button-row{flex-wrap:wrap}.detail-stats{grid-template-columns:repeat(3,1fr)}.detail-columns{grid-template-columns:1fr}.hero-modal{padding:18px}.detail-top{align-items:flex-start}.portrait.large{width:90px;height:110px}.compact-roster{grid-template-columns:1fr 1fr}.formation-slot{width:90px;height:110px}.slot-row{gap:5px}.formation-slot .portrait{width:45px;height:45px}.battle-unit{width:60px;min-height:95px;padding:4px}.unit-name{font-size:.54rem}.battle-unit small,.status-line{display:none}.battle-bottom{display:block}.battle-controls{justify-content:center;margin-top:8px}.result-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.battle-overlay{padding:6px}.battle-shell{padding:10px}.battle-unit{width:min(17vw,60px)}}@media(max-width:600px){.home-grid{grid-template-columns:minmax(0,1fr)}.panel{min-width:0;padding:18px}.rate-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.rate-grid>div{min-width:0;padding:8px 2px}.rate-grid strong{font-size:.9rem}.rate-grid span{font-size:.6rem}.squad-preview{gap:3px}.squad-preview .portrait{width:46px;height:51px;margin:auto}.squad-preview .portrait span{font-size:1.5rem}.squad-preview>div{min-width:0}}main{min-height:100vh;background:linear-gradient(180deg,#0b1423c9,#0b1423ea 58%,#0b1423f5),url(/backgrounds/pixel-citadel.png) center top / cover fixed}main.page-campaign{background-image:linear-gradient(180deg,#091321b5,#091321e8 58%,#091321f5),url(/backgrounds/pixel-map-dawn.png)}main.page-heroes{background-image:linear-gradient(180deg,#0b1423b8,#0b1423e7 58%,#0b1423f5),url(/backgrounds/pixel-citadel.png)}main.page-formation{background-image:linear-gradient(180deg,#0b1423bc,#0b1423eb 58%,#0b1423f5),url(/backgrounds/pixel-battle-dawn.png)}main.page-summon{background-image:linear-gradient(180deg,#0e1326bb,#0e1326e9 58%,#0e1326f7),url(/backgrounds/pixel-citadel.png)}main.page-tower{background-image:linear-gradient(180deg,#0e1326b8,#0e1326e9 58%,#0e1326f7),url(/backgrounds/pixel-map-night.png)}main.page-inventory{background-image:linear-gradient(180deg,#0b1423b5,#0b1423e9 58%,#0b1423f5),url(/backgrounds/pixel-battle-dawn.png)}.sidebar{background:linear-gradient(180deg,#0c1829f2,#0d192bea),url(/backgrounds/pixel-citadel.png) 71% center / auto 100% fixed}.topbar{background:#101c2bd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand-mark,.resource-symbol{display:inline-flex;align-items:center;justify-content:center}.brand-mark{width:34px;height:34px;flex:none;filter:drop-shadow(0 0 10px #eac47677)}.resource-bar>div{background:#17273bdc}.resource-symbol{grid-row:1 / 3}.hero-banner{background:linear-gradient(90deg,#0e1a2bea,#12233bc2 42%,#10203722),url(/backgrounds/pixel-citadel.png) center 44% / cover;box-shadow:0 24px 55px #0005}.banner-art{display:none}.panel,.hero-card,.gear-card{background:linear-gradient(145deg,#1b2a3eea,#101d2edc);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.quick-grid button{background:linear-gradient(120deg,#1d3046ea,#112037dd);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.quick-grid button svg:first-child{color:var(--gold)}.formation-board{background:linear-gradient(#0e1d31b9,#0d1a2edb),url(/backgrounds/pixel-battle-dawn.png) center / cover}.formation-field{display:grid;grid-template-columns:repeat(2,minmax(90px,116px));grid-template-rows:34px repeat(5,92px);justify-content:center;column-gap:clamp(18px,5vw,48px);margin:12px auto 26px}.formation-field-heading{align-self:center;text-align:center;color:#f4dfac;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}.formation-field-heading.front{grid-column:1}.formation-field-heading.back{grid-column:2}.formation-field .formation-slot{width:100%;height:104px;align-self:center;position:relative}.formation-field .formation-slot.front{z-index:2}@media(max-width:600px){.formation-field{grid-template-columns:repeat(2,minmax(82px,96px));column-gap:20px}.formation-field .formation-slot{height:100px}}.chapter{padding:19px;border:1px solid #44546a8c;border-radius:16px;background:#0f1b2bd1;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.stage-card{background:#1b2c43d9}.stage-card.current{background:#3d3a4dcf}.stage-card.boss{background:linear-gradient(140deg,#643c47d9,#18283edb)}.summon-banner,.tower-hero{min-height:390px;box-shadow:0 24px 55px #0006}.summon-banner{justify-content:flex-end;background:linear-gradient(90deg,#0b11231a,#11182c8a 45%,#11182cf2 68%),url(/backgrounds/pixel-citadel.png) left center / cover}.summon-banner>div:last-child{width:min(52%,590px);position:relative;z-index:1}.summon-orbit{display:none}.tower-hero{justify-content:flex-end;background:linear-gradient(90deg,#0c122417,#0c12247a 44%,#0c1224e9 67%),url(/backgrounds/pixel-map-night.png) left center / cover}.tower-hero>div:last-child{width:min(52%,590px);position:relative;z-index:1}.tower-emblem{display:none}.gear-icon{flex:none;background:#3a4864;border:1px solid #827154}.battle-shell{background:#101d2c;box-shadow:0 30px 100px #000c}.arena{min-height:430px;margin:12px 0 18px;padding:24px 16px;border:1px solid #857257;border-radius:13px;background:linear-gradient(#0914244d,#0b162d4d),url(/backgrounds/pixel-battle-dawn.png) center / cover;box-shadow:inset 0 0 65px #061120a8}.battle-team h3{color:#f4dfac;text-shadow:0 2px 8px #091321}.battle-unit{background:#142437e8;box-shadow:0 5px 18px #0007;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.arena-center{text-shadow:0 2px 10px #000}.result-panel{background:#101d30f5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@media(max-width:800px){main{background-attachment:scroll}.sidebar{background-attachment:scroll}.mobile-nav{overflow-x:auto}.mobile-nav button{min-width:42px;flex:1}}@media(max-width:600px){.hero-banner{background-position:64% center;background-image:linear-gradient(90deg,#0e1a2bf2,#0e1a2b9e),url(/backgrounds/pixel-citadel.png)}.summon-banner,.tower-hero{min-height:390px;align-items:flex-end;background-position:29% center}.summon-banner{background-image:linear-gradient(180deg,#0d14221c,#0d1422c7 55%,#0d1422f2),url(/backgrounds/pixel-citadel.png)}.tower-hero{background-image:linear-gradient(180deg,#0d14221c,#0d1422ca 55%,#0d1422f3),url(/backgrounds/pixel-map-night.png)}.summon-banner>div:last-child,.tower-hero>div:last-child{width:100%}.chapter{padding:13px}.arena{padding:12px 4px}}.float-number{position:absolute;z-index:4;top:-8px;left:50%;transform:translate(-50%);font-size:1.1rem;font-weight:800;text-shadow:0 2px 5px #000;white-space:nowrap;pointer-events:none;animation:float-up .8s ease-out both}.float-number.damage_dealt{color:#ffd0a9}.float-number.healing_done{color:#90ebb5}.float-number.shield_applied{color:#a9d5ff}@keyframes float-up{0%{opacity:0;transform:translate(-50%,8px)}30%{opacity:1}to{opacity:0;transform:translate(-50%,-24px)}}.hero-sprite{display:block;flex:none;width:100%;aspect-ratio:1;background-repeat:no-repeat;background-size:400% 100%;background-position-y:center;image-rendering:pixelated;filter:drop-shadow(0 3px 3px #0009)}.portrait.large{padding:0}.unit-portrait{height:58px;display:flex;align-items:center;justify-content:center}.unit-portrait .hero-sprite{width:auto;height:100%}@media(max-width:800px){.unit-portrait{height:44px}}@media(max-width:600px){.unit-portrait{height:38px}}:root{--bg: #080f1b;--panel: #111e2e;--line: #5b554b;--muted: #abb8bf;--gold: #f0d18e;--gold2: #9d7443;--text: #f0eadc;background:var(--bg)}body{background:var(--bg)}button{border-radius:3px}button:focus-visible{outline:2px solid #ffdc93;outline-offset:3px}h1,h2,h3{letter-spacing:.015em}.app{background:#080f1b}.sidebar{width:248px;padding:24px 16px 15px;overflow:hidden;border-right:1px solid #9e8054;box-shadow:inset -1px 0 #e2b86c52,10px 0 30px #02070c99;background:radial-gradient(circle at 0 0,#31415a72,transparent 43%),linear-gradient(180deg,#0d1a2bf5,#101c2df2,#091321f9),url(/backgrounds/pixel-citadel.png) 68% center / auto 100% fixed;z-index:2}.brand{gap:11px;padding:3px 4px 21px;border-bottom:1px solid #8a734d;flex:none}.brand-mark{width:42px;height:42px;border:1px solid #aa8f59;transform:rotate(45deg) scale(.82);background:radial-gradient(circle,#ad82492a,transparent 70%)}.brand-mark svg{transform:rotate(-45deg)}.brand strong{font-size:1.08rem;letter-spacing:.15em;color:#f7e6bc}.brand small{color:#b8ab90;letter-spacing:.27em;font-size:.53rem}.profile{margin:16px 0 17px;padding:10px 9px;border:1px solid #8c76544d;border-radius:5px;background:linear-gradient(100deg,#a17b3c24,#172b405e);flex:none}.profile strong{font-family:Cinzel,Georgia,serif;color:#fff1cb;font-size:.85rem}.profile small{letter-spacing:.16em;font-size:.58rem;color:#cbb685}.avatar{border:1px solid #f5d596;background:#132239;color:#f5d596;border-radius:2px;font-size:1.4rem}.nav-caption{padding:0 13px 10px;font-size:.59rem;letter-spacing:.27em;color:#c8ad75;font-weight:700;flex:none}.sidebar nav{flex:1;min-height:0;align-content:start;gap:3px;overflow-y:auto;overflow-x:hidden;margin-right:-7px;padding:0 7px 6px 0;scrollbar-width:thin;scrollbar-color:#806b4c transparent}.sidebar nav::-webkit-scrollbar{width:5px}.sidebar nav::-webkit-scrollbar-track{background:transparent}.sidebar nav::-webkit-scrollbar-thumb{background:#806b4c;border-radius:10px}.sidebar nav::-webkit-scrollbar-thumb:hover{background:#c3a16b}.sidebar nav button{position:relative;min-height:43px;padding:8px 12px;gap:12px;border:1px solid transparent;border-radius:4px;background:transparent;color:#c8d1d1;font-family:Cinzel,Georgia,serif;font-size:.78rem;font-weight:700;letter-spacing:.025em;text-align:left}.sidebar nav button svg{color:#aa9474;flex:none}.sidebar nav button:hover,.sidebar nav button.active{border:1px solid #a98d5e80;background:linear-gradient(95deg,#6b553ca8,#303951b0 66%,#1624377a);color:#fff4d3;box-shadow:inset 3px 0 #e9c779,inset 0 1px #f4d99824,0 4px 13px #0004}.sidebar nav button.active{border-color:#bd9b64}.sidebar nav button.active svg{color:#f6d995}.sidebar nav small{color:#e9d19d;font-family:DM Sans,sans-serif}.sidebar-foot{border-top:1px solid #67583f;color:#b6a27a;text-align:center;font-family:Cinzel,Georgia,serif;font-size:.61rem;font-style:normal;letter-spacing:.17em;flex:none;padding:13px 3px 2px}.sidebar-foot span{color:#e7bf72;padding:0 5px}main{width:calc(100% - 248px);background:linear-gradient(180deg,#0813215c,#081321d8 38%,#081321f6),url(/backgrounds/pixel-citadel.png) center top / cover fixed}main.page-campaign{background-image:linear-gradient(180deg,#08132187,#081321df 43%,#081321f7),url(/backgrounds/pixel-map-dawn.png)}.topbar{position:sticky;top:0;z-index:30;min-height:91px;padding:13px clamp(20px,3vw,48px);border-bottom:1px solid #8d744e;background:linear-gradient(90deg,#07111ef0,#17263cdb);box-shadow:0 8px 27px #020812a6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.top-label{border-left:2px solid #cfaa65;padding-left:14px}.top-label strong{color:#f8e8c3;font-size:1.3rem;line-height:1}.resource-bar{gap:6px}.resource-bar>div{min-width:82px;padding:7px 10px;border:1px solid #77684f;border-radius:2px;background:linear-gradient(145deg,#22334aef,#101d2deb);box-shadow:inset 0 1px #c9b37728;color:#f3e9cf;font-weight:700}.resource-bar small{color:#b7bdc1;font-weight:400}.content{max-width:1440px;padding-top:29px}.eyebrow{color:#e5bb72}.primary{border:1px solid #ffe0a0;border-bottom-color:#9b6d32;border-radius:2px;background:linear-gradient(180deg,#ffe5aa,#c89a53);color:#1b2530;box-shadow:inset 0 1px #fff3ca,inset 0 -2px #95682f,0 5px 18px #0008;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.primary:hover:not(:disabled){background:linear-gradient(180deg,#fff0c8,#deb06e)}.primary.large{padding:14px 22px;font-size:.83rem}.hero-banner{min-height:390px;padding:52px clamp(28px,5vw,70px);border:1px solid #ba985d;border-radius:3px;background:linear-gradient(90deg,#081522f4,#0b1b2bdc 34%,#10203825 72%),url(/backgrounds/pixel-citadel.png) center 43% / cover;box-shadow:inset 0 0 0 5px #101b2caa,inset 0 0 0 6px #8f744c6e,0 21px 40px #0008}.hero-banner:after{content:"✦";position:absolute;right:22px;bottom:14px;color:#f5d58c;font-size:1.3rem;text-shadow:0 0 18px #e4bc71}.hero-banner h1{font-size:clamp(2.5rem,4.2vw,4.5rem);line-height:1.1;text-shadow:0 3px 12px #000c}.hero-banner p{font-size:.9rem;color:#d4d9d4}.hero-banner p strong{display:block;margin-top:6px;font-family:Cinzel,Georgia,serif;font-size:1rem;color:#f7e3af}.panel,.chapter,.hero-modal,.battle-shell{border-color:#817050;border-radius:3px;background:linear-gradient(145deg,#1b2a3cf0,#0d1a29f2);box-shadow:inset 0 1px #dfc38b21,0 15px 34px #0007}.panel-head{border-bottom:1px solid #6e614d;padding-bottom:15px;margin-bottom:19px}.panel h2{color:#f2e6c8}.pill{border-radius:2px;background:#534c3b8c;border-color:#a18b60;color:#f0dba8;font-weight:700;letter-spacing:.04em}.idle-total{border-color:#786747}.rate-grid>div{border-radius:2px;border-color:#655c4b;background:#15253a}.squad-preview .portrait{box-shadow:0 0 0 2px #0d1827,0 0 0 3px #9a825a}.team-power{border-color:#786747;text-transform:uppercase;letter-spacing:.09em;font-size:.72rem}.quick-grid button{min-height:83px;padding:18px 21px;border:1px solid #947c55;border-radius:2px;background:linear-gradient(135deg,#27394fe8,#0e1d30ef);box-shadow:inset 0 1px #dac18b22,0 9px 21px #0006;font-family:Cinzel,Georgia,serif;color:#eee2c5;font-size:.9rem}.quick-grid button:hover{background:linear-gradient(135deg,#554a3b,#1d3047)}.page-heading{border-bottom:1px solid #6e5e45;padding-bottom:20px}.page-heading h1{color:#f6e7c3}.page-heading p{color:#bdc7c8}.roster-controls{display:grid;gap:0;margin:0 0 21px;padding:6px 16px;border:1px solid #796b51;background:linear-gradient(135deg,#18283bdc,#0d1a2bea);box-shadow:inset 0 1px #d1b77d2b,0 9px 18px #0005}.choice-strip{display:grid;grid-template-columns:83px minmax(0,1fr);align-items:center;gap:11px;padding:9px 0}.choice-strip+.choice-strip{border-top:1px solid #655a496b}.choice-label{color:#d6ba81;font-family:Cinzel,Georgia,serif;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.choice-options{display:flex;flex-wrap:wrap;gap:5px}.choice-options button,.equipment-choices button,.debug-choice-options button{min-height:32px;padding:5px 11px;border:1px solid #536076;border-radius:2px;background:#192a3e;color:#cbd3d2;font-size:.73rem;font-weight:700}.choice-options button.selected,.equipment-choices button.selected,.debug-choice-options button.selected{border-color:#e5c47e;background:linear-gradient(180deg,#795f3c,#4b4136);color:#ffedc1;box-shadow:inset 0 1px #f9db982f,0 0 12px #d6a95821}.hero-card,.gear-card,.result-card{border-radius:2px;border-top-color:#57647a;border-right-color:#57647a;border-bottom-color:#57647a}.hero-card{background:linear-gradient(120deg,#25374aeb,#111f30ed)}.hero-card:hover:not(:disabled){background:linear-gradient(120deg,#514a3e,#1e3045)}.portrait,.empty-portrait,.formation-slot{border-radius:2px}.stage-card{border-radius:2px;background:linear-gradient(145deg,#28384b,#132338)}.stage-card.current{box-shadow:inset 0 0 0 1px #d9b979,0 0 17px #d6aa5433}.summon-banner,.tower-hero{border-radius:3px;border-color:#b29366;box-shadow:inset 0 0 0 5px #111a28bd,0 24px 55px #0008}.equipment-row{display:block}.equipment-heading{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin-bottom:9px}.equipment-heading strong{font-family:Cinzel,Georgia,serif;color:#eedbaa;font-size:.8rem}.equipment-heading span{color:#aebbc0;font-size:.7rem;text-align:right}.equipment-choices{display:flex;flex-wrap:wrap;gap:5px}.equipment-choices button{min-height:30px;padding:5px 8px;font-size:.68rem}.debug-choice{width:100%;display:grid;gap:6px;color:#d6ba81;font-size:.75rem}.debug-choice-options{display:flex;flex-wrap:wrap;gap:5px;max-height:95px;overflow:auto}.debug-sandbox{margin-top:18px}.debug-sandbox>p,.debug-balance>p{margin:12px 0 18px}.debug-size-bar{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin-bottom:18px}.debug-size-bar>label,.debug-slot-controls>label{display:grid;gap:5px;min-width:70px;color:#d8c99d;font-size:.76rem}.debug-size-bar input,.debug-size-bar select,.debug-slot-controls input,.debug-palette input{width:100%;min-width:0;border:1px solid #53667d;border-radius:6px;background:#1c2a3d;color:#e9e8e1;padding:8px}.debug-size-bar .button-row button.selected{border-color:#e5c47e;color:#ffedc1;background:#645038}.debug-builder{display:grid;grid-template-columns:minmax(310px,.9fr) minmax(0,1.6fr);gap:14px;align-items:start;margin-bottom:16px}.debug-palette{position:sticky;top:12px;padding:12px;border:1px solid #42556a;border-radius:9px;background:#101d2b}.debug-palette-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:10px;color:#f1dcaa}.debug-palette-head label{width:min(260px,55%);display:grid;gap:4px;font-size:.72rem}.debug-hero-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.debug-hero-pick{min-width:0;min-height:54px;display:grid;grid-template-columns:17px minmax(0,1fr);column-gap:5px;align-content:center;text-align:left;padding:6px 8px;cursor:grab}.debug-hero-pick:active{cursor:grabbing}.debug-hero-pick span{grid-row:span 2;align-self:center}.debug-hero-pick strong,.debug-hero-pick small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.debug-hero-pick strong{font-size:.7rem}.debug-hero-pick small{color:#aebbc8;font-size:.61rem}.debug-teams{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.debug-team{min-width:0;border:1px solid #42556a;border-radius:9px;background:#101d2b;padding:13px}.debug-team h3{display:flex;justify-content:space-between;gap:8px;margin:0 0 12px;color:#f1dcaa}.debug-team h3 span{font:400 .76rem DM Sans,sans-serif;color:#aebbc8}.debug-bulk-level{display:flex;align-items:end;gap:7px}.debug-bulk-level label{display:grid;gap:5px;width:105px;color:#d8c99d;font-size:.76rem}.debug-bulk-level button{white-space:nowrap}.debug-formation-field{display:grid;gap:8px}.debug-formation-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:6px;align-items:stretch}.debug-formation-row>span{align-self:center;color:#d7ba82;font-size:.69rem;text-align:center;writing-mode:vertical-rl;transform:rotate(180deg);text-transform:uppercase;letter-spacing:.08em}.debug-formation-row>div{display:flex;justify-content:center;gap:6px;min-width:0}.debug-formation-slot{position:relative;display:flex;flex-direction:column;width:min(105px,33%);min-width:0;min-height:112px;border:1px dashed #61738c;background:#142438a8}.debug-formation-slot.occupied{border-style:solid;border-color:#8d7851;background:#26384b}.debug-formation-slot.selected{border-color:#f3d183;box-shadow:0 0 0 2px #f3d18366}.debug-formation-slot.drop-target{border-color:#8de0b6;background:#245542aa;box-shadow:0 0 0 2px #8de0b666}.debug-formation-picker{display:flex;flex:1;min-height:0;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:100%;padding:6px 3px;border:0;border-radius:0;background:transparent;text-align:center}.debug-formation-picker:hover{background:#31445e77}.debug-formation-picker strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.66rem}.debug-formation-picker small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#b9c6d0;font-size:.55rem}.debug-formation-remove{position:absolute;top:2px;right:2px;width:19px;height:19px;padding:0;border:0;background:#172333dd}.debug-formation-controls{display:flex;align-items:center;justify-content:center;gap:3px;padding:0 3px 4px;font-size:.56rem;color:#e5d2a4}.debug-formation-controls label{display:flex;align-items:center;gap:2px;min-width:0}.debug-formation-controls input[type=number]{width:38px;min-width:0;padding:2px;border:1px solid #53667d;border-radius:3px;background:#1c2a3d;color:#e9e8e1;font-size:.65rem}.debug-formation-controls input[type=checkbox]{width:12px;height:12px;margin:0}.debug-formation-awaken{font-size:.52rem}.debug-unit{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;min-height:68px;padding:5px;border:1px dashed #42556a;border-radius:7px;margin-top:6px}.debug-unit.selected{border-color:#e5c47e;background:#56483166}.debug-unit.drop-target{border:2px solid #8de0b6;background:#24554288}.debug-unit.inactive{opacity:.7}.debug-slot-picker{width:100%;min-width:0;display:grid;gap:2px;justify-items:start;text-align:left;border:0;background:transparent;padding:4px 6px}.debug-slot-picker:hover{background:#31445e}.debug-slot-picker strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}.debug-slot-picker small{color:#aebbc8;font-size:.67rem}.debug-slot-label{color:#d7ba82;font-size:.68rem}.debug-slot-controls{display:flex;align-items:end;gap:8px}.debug-slot-controls>label:first-child{width:70px}.debug-slot-controls .debug-awaken{min-width:82px;display:flex;flex-direction:row;align-items:center;gap:5px;padding-bottom:10px}.debug-awaken input{width:auto}.debug-balance{margin-top:18px}.debug-balance-table{margin-top:12px;border:1px solid #415266;border-radius:7px;overflow:auto}.debug-balance-row{display:grid;grid-template-columns:minmax(160px,1fr) 130px 90px;gap:10px;padding:9px 12px;border-top:1px solid #34485c;font-size:.8rem}.debug-balance-row.heading{border-top:0;background:#2c3d53;color:#f3d89f}@media(max-width:1250px){.debug-builder{grid-template-columns:1fr}.debug-palette{position:static}.debug-hero-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:900px){.debug-teams{grid-template-columns:1fr}}@media(max-width:600px){.debug-hero-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.debug-slot-controls .debug-awaken{min-width:78px}}.hero-modal{background:#111e2e}.modal-backdrop{background:#020812ed}@media(max-width:1100px){.sidebar{width:205px}main{width:calc(100% - 205px)}.brand strong{font-size:.88rem}.resource-bar>div{min-width:68px;padding:6px}}@media(max-width:800px){.sidebar{display:none}main{width:100%}.topbar{min-height:70px;padding:9px 15px}.mobile-brand{display:block;font-family:Cinzel,Georgia,serif;font-size:.77rem;letter-spacing:.13em;color:#f3d696}.resource-bar{flex-wrap:nowrap;overflow-x:auto;max-width:78%}.resource-bar>div{flex:none}.mobile-nav{display:flex;overflow-x:auto;background:linear-gradient(180deg,#1e2d40,#081423);border-top:1px solid #b7975d;box-shadow:0 -7px 21px #0008}.mobile-nav button{flex:1 0 45px;min-width:0;color:#c1c7c7;font-family:Cinzel,Georgia,serif;font-size:.53rem}.mobile-nav button.active{color:#f5d78d;background:linear-gradient(#66543670,transparent)}}@media(max-width:600px){.topbar{gap:8px;padding-inline:10px}.mobile-brand{flex:none;font-size:.68rem}.resource-bar{min-width:0;flex:1;max-width:none}.hero-banner{min-height:355px;padding:31px 24px;background-position:62% center}.hero-banner h1{font-size:clamp(2.3rem,9vw,3.3rem)}.hero-banner p{max-width:275px}.choice-strip{grid-template-columns:1fr;gap:7px}.roster-controls{padding:8px 12px}.choice-options{gap:4px}.choice-options button{padding:5px 8px;font-size:.7rem}.quick-grid button{min-height:60px}.resource-bar>div{min-width:56px;font-size:.7rem}}.arena{position:relative;isolation:isolate;display:block;height:520px;min-height:0;overflow:hidden;padding:0}.arena:after{content:"";position:absolute;z-index:0;left:5%;right:5%;bottom:21px;height:48px;border-radius:50%;background:#050c1a77;filter:blur(16px);pointer-events:none}.arena-label{position:absolute;z-index:12;top:12px;margin:0;color:#f4dfac;text-shadow:0 2px 8px #091321;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}.arena-label.enemy{left:5%}.arena-label.player{right:5%}.battle-unit{position:absolute;transform:translate(-50%,-100%);transition:left var(--move-duration, .45s) linear,top var(--move-duration, .45s) linear;width:clamp(76px,7.8vw,106px);min-height:0;flex:none;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;text-align:center}.battle-unit.fallen{opacity:.42}.battle-unit.player .unit-hud{transform:translate(-28%)}.battle-unit.enemy .unit-hud{transform:translate(28%)}.unit-hud{position:relative;z-index:2;height:45px}.unit-name{color:#fff2cf;font-size:.65rem;line-height:1.15;text-shadow:0 2px 5px #000}.unit-name span{color:#bbcad6;font-size:.5rem;font-weight:500}.battle-unit .meter{margin-top:3px;height:5px;box-shadow:0 1px 3px #000a}.battle-unit .meter.hp{border:1px solid #9aaab380;height:7px}.battle-unit .meter.hp>div{background:linear-gradient(90deg,#55b984,#9ee0a4)}.battle-unit small{display:block;margin-top:2px;line-height:1;text-shadow:0 1px 4px #000}.status-line{position:absolute;top:45px;left:0;right:0;z-index:3}.unit-portrait{position:relative;width:100%;height:auto;aspect-ratio:1;display:block;color:var(--accent)}.unit-portrait:before{content:"";position:absolute;left:18%;right:18%;bottom:1px;height:12px;border-radius:50%;background:#010713a8;filter:blur(5px)}.unit-portrait .hero-sprite{position:relative;z-index:1;display:block;width:100%;height:100%}.skill-vfx-ora,.skill-vfx-zenith{aspect-ratio:3/2;filter:drop-shadow(0 0 12px #e9c66f)}.skill-vfx-zenith-hole{width:clamp(220px,25vw,340px)}.skill-vfx-axiom,.skill-vfx-elara{aspect-ratio:1.13;filter:drop-shadow(0 0 11px #a4acfb)}.skill-dash-ora,.skill-dash-axiom{filter:drop-shadow(0 0 14px #c2bbf7) brightness(1.2)}.battle-unit.invisible .unit-portrait{opacity:.38;filter:drop-shadow(0 0 11px #aa5cfa) saturate(.8)}.skill-vfx-shade,.skill-vfx-morrow,.skill-vfx-nyx,.skill-vfx-noctis{aspect-ratio:3/2;filter:drop-shadow(0 0 9px #bb59ed)}.skill-dash-shade,.skill-dash-nyx{filter:drop-shadow(0 0 14px #b04ced) brightness(1.18)}.battle-unit.facing-left .hero-sprite{transform:scaleX(-1)}.battle-unit.melee-attacking .unit-portrait{animation:fighter-lunge var(--move-duration, .45s) ease-in-out both}.battle-unit.ranged-attacking .unit-portrait{animation:caster-focus var(--move-duration, .45s) ease-out both}.battle-unit[data-hero-id=zenith].ranged-attacking{--zenith-attack-scale: 1.08;--zenith-attack-shift: 22%}.battle-unit[data-hero-id=zenith][data-awakened=true].ranged-attacking{--zenith-attack-scale: 1.48;--zenith-attack-shift: 32%}.battle-unit[data-hero-id=zenith].ranged-attacking .unit-portrait{animation-name:zenith-attack-focus}.battle-unit[data-hero-id=zenith].ranged-attacking .hero-sprite{transform:translate(var(--zenith-attack-shift)) scale(var(--zenith-attack-scale))}.battle-unit[data-hero-id=zenith].facing-left.ranged-attacking .hero-sprite{transform:translate(calc(-1 * var(--zenith-attack-shift))) scaleX(-1) scale(var(--zenith-attack-scale))}.battle-unit.casting .unit-portrait{animation:caster-focus var(--move-duration, .45s) ease-out both}.battle-unit.ultimate-casting .unit-portrait{animation-name:caster-ultimate}.battle-unit.strike-casting .unit-portrait{animation-name:fighter-lunge}.battle-unit.cast-kael-active .unit-portrait{animation:cinder-punch .9s ease-out both}.battle-unit.cast-kael-ultimate .unit-portrait{animation:cinder-overheat 1.15s ease-in-out both}.battle-unit.cast-vexa-active .unit-portrait{animation:cinder-triple-strike .9s ease-in-out both}.battle-unit.cast-ignis-active .unit-portrait{animation:cinder-firebolt .9s ease-out both}.battle-unit.cast-ignis-secondary .unit-portrait{animation:cinder-burst .9s ease-out both}.battle-unit.cast-ignis-ultimate .unit-portrait{animation:cinder-overheat 1.15s ease-out both}.battle-unit.cast-pyra-active .unit-portrait{animation:cinder-punch .9s ease-out both}.battle-unit.cast-pyra-secondary .unit-portrait{animation:cinder-overheat .9s ease-out both}.battle-unit.cast-pyra-ultimate .unit-portrait{animation:cinder-phoenix 1.15s ease-out both}@keyframes cinder-punch{0%{transform:translate(-8px) rotate(-9deg);filter:brightness(.8)}40%{transform:translate(-13px) rotate(-12deg);filter:brightness(1.25)}65%{transform:translate(14px) rotate(9deg);filter:brightness(1.8) drop-shadow(0 0 13px #ff6c22)}to{transform:none;filter:none}}@keyframes cinder-overheat{0%{transform:scale(.88);filter:brightness(.7)}45%{transform:scale(1.12);filter:brightness(1.7) drop-shadow(0 0 16px #ff5d1c)}70%{transform:scale(1.07);filter:brightness(1.5) drop-shadow(0 0 22px #ffa332)}to{transform:none;filter:none}}@keyframes cinder-triple-strike{0%,to{transform:none}22%{transform:translate(10px) rotate(8deg)}42%{transform:translate(-4px) rotate(-8deg)}64%{transform:translate(15px) rotate(9deg)}82%{transform:translate(-2px) rotate(-4deg)}}@keyframes cinder-firebolt{0%{transform:scale(.94) translate(-6px);filter:brightness(.8)}45%{transform:scale(1.08) translate(-8px);filter:brightness(1.6) drop-shadow(0 0 12px #f85)}68%{transform:translate(8px);filter:brightness(1.8)}to{transform:none;filter:none}}@keyframes cinder-burst{0%{transform:scale(.92);filter:brightness(.8)}55%{transform:scale(1.12);filter:brightness(1.65) drop-shadow(0 0 15px #ff6b22)}to{transform:none;filter:none}}@keyframes cinder-phoenix{0%{transform:translateY(7px) scale(.9);filter:brightness(.8)}48%{transform:translateY(-12px) scale(1.12);filter:brightness(1.8) drop-shadow(0 0 20px #ff7b22)}to{transform:none;filter:none}}.battle-unit.melee-attacking .unit-portrait:after{content:"";position:absolute;z-index:3;top:41%;left:65%;width:clamp(42px,7vw,90px);height:8px;border-radius:50%;background:linear-gradient(90deg,var(--accent),#fff9c8 55%,transparent);box-shadow:0 0 12px var(--accent);transform-origin:left center;animation:fighter-trail .45s ease-out both;pointer-events:none}.battle-unit.facing-left.melee-attacking .unit-portrait:after{left:auto;right:65%;background:linear-gradient(270deg,var(--accent),#fff9c8 55%,transparent);transform-origin:right center}.battle-unit.struck:not(.attacking) .unit-portrait{animation:fighter-hit-enemy .38s ease-out both}.battle-unit.facing-left.struck:not(.attacking) .unit-portrait{animation-name:fighter-hit-player}.battle-unit.struck .unit-portrait .hero-sprite{filter:brightness(1.75) drop-shadow(0 0 10px #ffe7bd)}.battle-unit.fallen .unit-portrait{transform:rotate(70deg) translateY(8px);transform-origin:50% 85%}.float-number{top:calc(40px - var(--float-offset, 0px));z-index:20;font-size:1.2rem;-webkit-text-stroke:1px #24110b;text-shadow:0 2px 3px #000,0 0 12px #000;animation-duration:1.1s}.float-number.critical{color:#ffe46f;font-size:1.42rem}.float-number small{display:inline;font-size:.52em;letter-spacing:.06em}.basic-projectile{position:absolute;z-index:11;left:var(--shot-from-x);top:calc(var(--shot-from-y) - var(--shot-anchor));width:11px;height:11px;border:1px solid #fff9d3;border-radius:50%;background:var(--shot-color);box-shadow:0 0 6px 3px #fff9d3,0 0 18px 7px var(--shot-color);pointer-events:none;--shot-anchor:clamp(22px,4vw,40px);animation:basic-projectile-flight var(--shot-duration,.36s) linear both}.skill-projectile{position:absolute;z-index:12;width:14px;height:14px;margin-left:-7px;transform:translateY(calc(-1*clamp(22px,4vw,40px))) rotate(var(--projectile-angle));border:2px solid #fffbe9;border-radius:50%;background:var(--shot-color);box-shadow:0 0 8px 3px #fff9d3,0 0 20px 9px var(--shot-color);pointer-events:none}.skill-projectile.motion-beam{width:27px;height:7px;margin-left:-13px;border-radius:8px;box-shadow:0 0 9px 4px #fff9d3,0 0 24px 10px var(--shot-color)}.skill-projectile.motion-wave,.skill-projectile.motion-groundWave{width:28px;height:12px;margin-left:-14px;border-radius:50%}.skill-projectile.motion-skyfall{width:11px;height:23px;margin-left:-5px;border-radius:70% 70% 45% 45%;transform:translateY(calc(-1*clamp(22px,4vw,40px)))}.skill-projectile.motion-strike{width:20px;height:8px;margin-left:-10px;border-radius:60% 15%}@keyframes basic-projectile-flight{0%{left:var(--shot-from-x);top:calc(var(--shot-from-y) - var(--shot-anchor));opacity:0;transform:scale(.65)}12%{opacity:1}85%{opacity:1}to{left:var(--shot-to-x);top:calc(var(--shot-to-y) - var(--shot-anchor));opacity:0;transform:scale(1.2)}}.ranger-projectile{width:60px;height:30px;border:0;border-radius:0;background-color:transparent;background-repeat:no-repeat;background-size:400% 100%;box-shadow:none;image-rendering:pixelated;filter:brightness(1.22) saturate(1.2) drop-shadow(0 0 2px #fff9e5) drop-shadow(0 0 6px var(--projectile-glow)) drop-shadow(0 0 11px var(--projectile-glow))}.ranger-vaelrith{--projectile-glow:#9af76d}.ranger-shogim{--projectile-glow:#ff9b40}.ranger-thayne{--projectile-glow:#ffe08a}.ranger-kira{--projectile-glow:#c997ff}.basic-projectile.ranger-projectile{z-index:13;margin-left:-30px;margin-top:-15px;animation-name:ranger-projectile-flight}.skill-projectile.ranger-projectile{z-index:14;width:72px;height:36px;margin-left:-36px;transform:translateY(calc(-1*clamp(22px,4vw,40px))) rotate(var(--projectile-angle))}.skill-projectile.ranger-vaelrith{width:84px;height:42px;margin-left:-42px}.basic-projectile.ranger-shogim{width:52px;height:26px;margin-left:-26px;margin-top:-13px}@keyframes ranger-projectile-flight{0%{left:var(--shot-from-x);top:calc(var(--shot-from-y) - var(--shot-anchor));opacity:.45;transform:rotate(var(--projectile-angle)) scale(.85)}8%{opacity:1}90%{opacity:1}to{left:var(--shot-to-x);top:calc(var(--shot-to-y) - var(--shot-anchor));opacity:0;transform:rotate(var(--projectile-angle)) scale(1)}}.verdant-judgement-stance{position:absolute;z-index:0;left:5%;top:8%;width:90%;height:82%;border:2px solid #a8ff78;border-radius:50%;box-shadow:0 0 8px #74ef66,0 0 16px #45be48,inset 0 0 8px #c9ffa1;animation:verdant-judgement-pulse .36s ease-in-out infinite alternate;pointer-events:none}@keyframes verdant-judgement-pulse{0%{opacity:.45;transform:scale(.89)}to{opacity:.85;transform:scale(1.06)}}@keyframes fighter-lunge{0%,to{transform:translate(0)}45%{transform:translate(var(--lunge))}}@keyframes caster-focus{0%,to{transform:translateY(0) scale(1)}45%{transform:translateY(-7px) scale(1.08)}}@keyframes zenith-attack-focus{0%,to{transform:translateY(0)}45%{transform:translateY(-7px)}}@keyframes caster-ultimate{0%,to{transform:translateY(0) scale(1)}45%{transform:translateY(-12px) scale(1.16)}}.battle-unit.cast-lyra-active .unit-portrait{animation:aurelian-mend .9s ease-out both}.battle-unit.cast-lyra-ultimate .unit-portrait{animation:aurelian-vow 1.15s ease-out both}.battle-unit.cast-solguard-active .unit-portrait{animation:aurelian-slam .9s ease-out both}.battle-unit.cast-solguard-ultimate .unit-portrait{animation:aurelian-raise 1.15s ease-out both}.battle-unit.cast-cassian-active .unit-portrait,.battle-unit.cast-cassian-ultimate .unit-portrait{animation:none}.battle-unit.cast-seraph-active .unit-portrait{animation:aurelian-lance .9s ease-out both}.battle-unit.cast-seraph-secondary .unit-portrait{animation:aurelian-veil .9s ease-out both}.battle-unit.cast-seraph-ultimate .unit-portrait{animation:aurelian-heavenfall 1.15s ease-out both}.battle-unit.cast-thorn-active .unit-portrait{animation:verdant-root-smash .8s ease-out both}.battle-unit.cast-thorn-secondary .unit-portrait{animation:verdant-bramble-smash .75s ease-out both}.battle-unit.cast-thorn-ultimate .unit-portrait{animation:verdant-canopy 1.15s ease-out both}.battle-unit.cast-mira-active .unit-portrait{animation:verdant-bloom .9s ease-out both}.battle-unit.cast-mira-ultimate .unit-portrait{animation:verdant-wind 1.15s ease-out both}.battle-unit.cast-fen-active .unit-portrait{animation:verdant-knives .85s ease-out both}.battle-unit.cast-fen-ultimate .unit-portrait{animation:verdant-harvest 1.1s ease-out both}.battle-unit.cast-elder-active .unit-portrait{animation:verdant-spore-blast .85s ease-out both}.battle-unit.cast-elder-ultimate .unit-portrait{animation:verdant-spore-storm 1.15s ease-out both}@keyframes aurelian-mend{0%,to{transform:translateY(0) scale(1)}42%{transform:translateY(-9px) scale(1.05);filter:drop-shadow(0 0 10px #ffe29e)}}@keyframes aurelian-vow{0%,to{transform:translateY(0) scale(1)}48%{transform:translateY(-14px) scale(1.13);filter:drop-shadow(0 0 17px #ffe6a7)}}@keyframes aurelian-slam{0%,to{transform:translateY(0)}28%{transform:translateY(-8px)}55%{transform:translateY(5px) scale(1.09,.91)}}@keyframes aurelian-raise{0%,to{transform:translateY(0) scale(1)}45%{transform:translateY(-8px) scale(1.12);filter:drop-shadow(0 0 15px #ffd477)}}@keyframes aurelian-lance{0%,to{transform:translateY(0) scale(1)}30%{transform:translateY(-5px) scale(1.04)}70%{transform:translateY(-10px) scale(1.12);filter:drop-shadow(0 0 14px #dfd1ff)}88%{transform:translateY(-12px) scale(1.15);filter:drop-shadow(0 0 19px #f7ddff)}94%{transform:translateY(2px) scale(1.04)}}@keyframes aurelian-veil{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-7px) rotate(4deg);filter:drop-shadow(0 0 13px #ddc9ff)}}@keyframes aurelian-heavenfall{0%,to{transform:translate(0) scale(1)}28%{transform:translate(-8px) scale(1.12);filter:drop-shadow(0 0 18px #fff3bb)}48%{transform:translate(10px) scale(1.08);filter:drop-shadow(0 0 22px #a3f6ff)}}@keyframes verdant-root-smash{0%,to{transform:translateY(0) scale(1)}32%{transform:translateY(-12px) scale(1.1)}57%{transform:translateY(5px) scale(1.14,.86);filter:drop-shadow(0 0 16px #a5fa62)}76%{transform:translateY(-3px) scale(.98,1.06)}}@keyframes verdant-bramble-smash{0%,to{transform:translate(0) rotate(0)}30%{transform:translate(calc(var(--lunge) * -.4)) rotate(-8deg)}58%{transform:translate(var(--lunge)) rotate(7deg) scale(1.12);filter:drop-shadow(0 0 16px #9ef166)}}@keyframes verdant-canopy{0%,to{transform:translateY(0) scale(1)}36%{transform:translateY(-10px) scale(1.13)}65%{transform:translateY(-4px) scale(1.2);filter:drop-shadow(0 0 24px #b9f970)}}@keyframes verdant-bloom{0%,to{transform:translateY(0) scale(1)}44%{transform:translateY(-9px) scale(1.12) rotate(-5deg);filter:drop-shadow(0 0 17px #d5ff96)}72%{transform:translateY(-5px) rotate(4deg)}}@keyframes verdant-wind{0%,to{transform:translateY(0) rotate(0) scale(1)}34%{transform:translateY(-8px) rotate(-7deg) scale(1.08)}67%{transform:translateY(-12px) rotate(8deg) scale(1.18);filter:drop-shadow(0 0 23px #d5ffb4)}}@keyframes verdant-knives{0%,to{transform:translate(0) rotate(0)}24%{transform:translate(calc(var(--lunge) * -.35)) rotate(-12deg)}43%,66%{transform:translate(var(--lunge)) rotate(9deg);filter:drop-shadow(0 0 13px #b5fc68)}53%{transform:translate(0) rotate(-8deg)}}@keyframes verdant-harvest{0%,to{transform:rotate(0) scale(1)}42%{transform:rotate(-17deg) scale(1.12)}70%{transform:rotate(14deg) scale(1.17);filter:drop-shadow(0 0 19px #b6fa58)}}@keyframes verdant-spore-blast{0%,to{transform:translateY(0) scale(1)}42%{transform:translateY(-9px) scale(1.1);filter:drop-shadow(0 0 17px #b9ec7b)}68%{transform:translate(var(--lunge)) scale(1.04)}}@keyframes verdant-spore-storm{0%,to{transform:translateY(0) scale(1)}34%{transform:translateY(-9px) rotate(-5deg) scale(1.1)}65%{transform:translateY(-13px) rotate(6deg) scale(1.18);filter:drop-shadow(0 0 23px #c9f998)}}@keyframes fighter-trail{0%{opacity:0;transform:scaleX(.1)}45%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(1.2)}}@keyframes fighter-hit-enemy{35%{transform:translate(-12px) rotate(-8deg)}}@keyframes fighter-hit-player{35%{transform:translate(12px) rotate(8deg)}}@media(max-width:800px){.arena{height:430px}.battle-unit{width:clamp(54px,8vw,76px)}.unit-portrait{height:auto}}@media(max-width:600px){.arena{height:370px}.arena-label{font-size:.56rem;top:5px}.battle-unit{width:clamp(38px,11vw,52px);padding:0}.unit-hud{height:32px}.unit-name{font-size:.5rem}.unit-name span,.battle-unit small,.status-line{display:none}.battle-unit .meter{height:3px;margin-top:2px}.battle-unit .meter.hp{height:5px}.unit-portrait{height:auto}.float-number{top:calc(25px - var(--float-offset, 0px));font-size:.85rem}.float-number.critical{font-size:1rem}}.summon-cinematic{position:fixed;z-index:110;top:0;right:0;bottom:0;left:0;overflow:auto;isolation:isolate;background:#080d1b;color:#f7ebd3}.summon-cinematic-art{position:fixed;z-index:0;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 46%,#7771b846 0,transparent 35%),linear-gradient(180deg,#070b1bbd,#080d1aec 78%),url(/backgrounds/pixel-citadel.png) center / cover;animation:summon-scene-in .8s ease-out both}.summon-cinematic-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:20px;min-height:100dvh;width:min(1280px,100%);margin:auto;padding:clamp(24px,4vh,48px) 24px}.summon-cinematic-heading{position:relative;z-index:2;text-align:center;text-shadow:0 2px 14px #050813}.summon-cinematic-heading h2{margin:9px 0 5px;font-size:clamp(1.7rem,3.4vw,3.2rem);color:#fff1ce}.summon-cinematic-heading p{margin:0;color:#d6d5e4;font-size:.9rem}.summon-cinematic-stage{position:relative;display:grid;place-items:center;width:100%;min-height:350px;flex:1}.summon-sigil{position:absolute;width:clamp(250px,32vw,400px);aspect-ratio:1;display:grid;place-items:center;filter:drop-shadow(0 0 35px #ae8ff099);transition:opacity .5s,transform .7s}.summon-sigil:before{content:"";position:absolute;top:5%;right:5%;bottom:5%;left:5%;border-radius:50%;background:radial-gradient(circle,#fff2d4d9 0,#a688da99 12%,#4f4c9b80 31%,#5446a833 53%,transparent 70%);box-shadow:0 0 100px 35px #8d76da55;animation:summon-core-pulse 1.5s ease-in-out infinite alternate}.summon-sigil-ring{position:absolute;border-radius:50%;border:2px solid #f4dcb8;box-shadow:0 0 17px #f4d8bc,inset 0 0 17px #c8a8ec}.summon-sigil-ring.outer{top:0;right:0;bottom:0;left:0;border-style:double;border-width:7px;outline:1px solid #eed6bc8c;outline-offset:13px;animation:summon-ring 6s linear infinite}.summon-sigil-ring.outer:before,.summon-sigil-ring.inner:before{content:"✦";position:absolute;top:-24px;left:50%;transform:translate(-50%);color:#fff2d4;font-size:2rem;text-shadow:0 0 15px #fff}.summon-sigil-ring.inner{top:15%;right:15%;bottom:15%;left:15%;border-style:dashed;opacity:.8;animation:summon-ring 8s linear infinite reverse}.summon-sigil-core{position:relative;font-size:clamp(5rem,11vw,9rem);line-height:1;color:#fff5e5;text-shadow:0 0 19px #fff,0 0 50px #dcc0ff;animation:summon-core-pulse 1.5s ease-in-out infinite alternate}.summon-sigil-runes{position:absolute;bottom:-42px;color:#ecd5ac;letter-spacing:.65em;white-space:nowrap;font-size:1.3rem;text-shadow:0 0 13px #f2d1a4}.summon-cinematic.is-revealed .summon-sigil{opacity:.22;transform:scale(1.4);pointer-events:none}.summon-cinematic-results{position:relative;z-index:1;display:grid;gap:12px;width:100%}.summon-cinematic-results.summon-single{width:min(290px,100%)}.summon-cinematic-results.summon-multi{grid-template-columns:repeat(5,minmax(0,1fr))}.summon-reveal-card{position:relative;min-width:0;min-height:200px;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:end;padding:13px 10px 14px;border:1px solid var(--rarity);background:radial-gradient(circle at 50% 26%,color-mix(in srgb,var(--rarity) 38%,transparent),transparent 57%),linear-gradient(160deg,#26304d,#0c1527 78%);box-shadow:inset 0 0 0 3px #0c1427,inset 0 0 0 4px color-mix(in srgb,var(--rarity) 50%,transparent),0 10px 30px #0009,0 0 28px color-mix(in srgb,var(--rarity) 45%,transparent);animation:summon-card-in .6s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--reveal-delay)}.summon-reveal-card:before{content:"";position:absolute;top:6px;right:6px;bottom:6px;left:6px;border:1px solid color-mix(in srgb,var(--rarity) 38%,transparent);pointer-events:none}.summon-reveal-card.rarity-legendary{box-shadow:inset 0 0 0 3px #0c1427,inset 0 0 0 4px #eac476a8,0 12px 36px #0009,0 0 42px #eac4769c}.summon-card-index{position:absolute;top:14px;left:17px;color:var(--rarity);font:700 .65rem Cinzel,Georgia,serif;letter-spacing:.15em}.summon-card-portrait{width:min(110px,70%);aspect-ratio:1;margin:6px 0 7px;filter:drop-shadow(0 0 13px var(--hero-accent))}.summon-card-portrait .hero-sprite{width:100%;height:100%}.summon-card-copy{display:grid;gap:3px;justify-items:center;width:100%;text-align:center;text-shadow:0 2px 5px #050916}.summon-card-copy span{color:var(--rarity);font-size:.62rem;text-transform:uppercase;letter-spacing:.12em}.summon-card-copy strong{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 .92rem Cinzel,Georgia,serif}.summon-card-copy small{color:#f0e3c9;font-size:.61rem;letter-spacing:.15em}.summon-single .summon-reveal-card{min-height:355px;padding-bottom:24px}.summon-single .summon-card-portrait{width:190px;max-width:74%}.summon-single .summon-card-copy{gap:7px}.summon-single .summon-card-copy strong{font-size:1.45rem}.summon-cinematic-actions{position:relative;z-index:2;min-height:48px;display:grid;place-items:center}.summon-skip{border:1px solid #d7bd8e;background:#101c32d9;padding:11px 22px;color:#f7e3bd;letter-spacing:.07em;text-transform:uppercase;font-size:.75rem}.summon-cinematic.is-instant .summon-reveal-card{animation:none}@keyframes summon-scene-in{0%{opacity:0;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes summon-ring{to{transform:rotate(360deg)}}@keyframes summon-core-pulse{0%{opacity:.58;transform:scale(.86)}to{opacity:1;transform:scale(1.08)}}@keyframes summon-card-in{0%{opacity:0;transform:translateY(65px) rotateX(35deg) scale(.78);filter:brightness(2)}to{opacity:1;transform:none;filter:brightness(1)}}@media(max-width:850px){.summon-cinematic-results.summon-multi{grid-template-columns:repeat(2,minmax(0,1fr));max-width:520px}}@media(max-width:600px){.summon-cinematic-content{padding:24px 14px 30px}.summon-cinematic-stage{min-height:300px}.summon-cinematic-results.summon-multi{gap:9px}.summon-reveal-card{min-height:160px;padding:10px 7px}.summon-card-portrait{width:72px;margin:5px 0}.summon-card-copy strong{font-size:.78rem}.summon-single .summon-reveal-card{min-height:315px}.summon-single .summon-card-portrait{width:155px}}@media(prefers-reduced-motion:reduce){.summon-cinematic *,.summon-cinematic *:before,.summon-cinematic *:after{animation:none!important;transition:none!important}}main.page-heroes{background:#07111f url(/backgrounds/pixel-citadel.png) center top / cover fixed}.page-heroes .content{max-width:1600px;padding-top:17px}.character-screen{border:1px solid #aa8653;background:#101c2cf0;box-shadow:0 22px 55px #000a,inset 0 0 0 4px #243246}.character-titlebar{min-height:72px;padding:12px 23px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:2px solid #a7824c;background:linear-gradient(180deg,#283b55,#101c2d);box-shadow:inset 0 1px #e8d19d50}.character-titlebar h1{margin:3px 0 0;color:#fff0c6;font-size:clamp(1.2rem,2vw,1.7rem);text-transform:uppercase;letter-spacing:.07em}.character-count{display:inline-flex;align-items:center;gap:7px;color:#edd196;font:700 .75rem Cinzel,Georgia,serif;white-space:nowrap}.character-main{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(430px,1.05fr);height:555px}.character-stage{position:relative;isolation:isolate;min-width:0;overflow:hidden;background:linear-gradient(180deg,#101d3699,#0814254d 45%,#071323e8),url(/backgrounds/pixel-citadel.png) 64% 45% / cover;border-right:3px solid #9e7744}.character-stage:before{content:"";position:absolute;top:7px;right:7px;bottom:7px;left:7px;border:1px solid #d7b67757;pointer-events:none;z-index:3}.character-stage:after{content:"";position:absolute;width:52%;height:40%;left:24%;top:18%;border-radius:50%;background:var(--character-accent);filter:blur(100px);opacity:.25;pointer-events:none}.stage-corner{position:absolute;top:24px;left:26px;z-index:4;color:#ffe2a1;font-size:1.2rem;text-shadow:0 2px 6px #000}.stage-corner span{margin-left:6px;font:700 .72rem Cinzel,Georgia,serif;letter-spacing:.12em}.stage-stars{position:absolute;top:26px;right:27px;z-index:4;display:flex;color:#ffdc85;filter:drop-shadow(0 2px 3px #000)}.character-figure{position:absolute;z-index:2;width:min(88%,480px);top:39px;bottom:103px;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:center}.character-figure .hero-sprite{width:min(100%,430px);filter:drop-shadow(0 13px 2px #020813a8) drop-shadow(0 0 16px var(--character-accent))}.stage-plinth{position:absolute;z-index:1;width:70%;height:42px;left:15%;bottom:109px;border-radius:50%;background:radial-gradient(ellipse,#c5a36669,#231c32a6 58%,transparent 72%);box-shadow:0 0 42px #dbc08b55}.stage-caption{position:absolute;z-index:4;bottom:0;left:0;right:0;min-height:105px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 24px 16px;text-align:center;background:linear-gradient(180deg,#08122100,#07111fee 23%,#081322);border-top:1px solid #b294655c}.stage-caption span{color:#d9bd83;font-size:.63rem;letter-spacing:.17em;font-weight:800}.stage-caption strong{margin-top:3px;color:#fff1d0;font:700 clamp(1.15rem,2vw,1.7rem) Cinzel,Georgia,serif;text-shadow:0 2px 5px #000}.stage-caption small{max-width:450px;margin-top:3px;color:#bfc8ce;line-height:1.3}.character-console{display:flex;flex-direction:column;min-width:0;min-height:0;padding:11px 13px 13px;background:linear-gradient(145deg,#354156,#1c293d 21%,#101c2e 90%)}.character-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:8px}.character-tabs button{min-height:36px;padding:6px 5px;border:1px solid #937249;border-bottom:3px solid #5b412b;border-radius:8px 8px 2px 2px;background:linear-gradient(#50546a,#2b3445);color:#ded6c5;box-shadow:inset 0 1px #ffffff37,0 3px 3px #0005;font:700 .75rem Cinzel,Georgia,serif}.character-tabs button.active{color:#fff3cb;border-color:#e2bd70;background:linear-gradient(#9c7440,#5f432d);box-shadow:inset 0 1px #ffdda66e,0 0 15px #dfad5650}.character-panel{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#a98554 #241f20;padding:13px 15px;border:2px solid #a98554;box-shadow:inset 0 0 0 4px #312c2b,inset 0 1px 16px #080e1a,0 7px 16px #0006;background:radial-gradient(circle at 100% 0%,#56452d4d,transparent 30%),linear-gradient(150deg,#302b2a,#201e20 55%,#171d26)}.character-power{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0 0 11px;padding:9px 13px;border:1px solid #a8824a;background:linear-gradient(90deg,#4a3320,#6d4c27 54%,#3d2c25);box-shadow:inset 0 1px #f3d29b4d}.character-power div{display:inline-flex;gap:9px;align-items:center;color:#f1d5a1;font-size:.73rem;font-weight:800;letter-spacing:.09em}.character-power strong{color:#fff4dc;font-size:clamp(1.15rem,2vw,1.7rem);text-shadow:0 2px 3px #0008}.character-level{margin:0 0 11px}.character-level>div:first-child{display:flex;justify-content:space-between;color:#ead3a2;font-size:.7rem;font-weight:800;letter-spacing:.06em;margin-bottom:6px}.character-meter{height:10px;border:1px solid #92703e;background:#0d1720;padding:1px;box-shadow:inset 0 2px 3px #000}.character-meter span{display:block;height:100%;background:linear-gradient(90deg,#b9924d,#ffe29a);box-shadow:0 0 8px #eabe68}.character-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.character-stat-grid>div{min-height:49px;padding:5px 8px;border:1px solid #665237;background:linear-gradient(#362d25,#241f1e);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.character-stat-grid span{color:#c2ad8a;font-size:.66rem;text-transform:uppercase;letter-spacing:.05em}.character-stat-grid strong{color:#fff3d6;font-size:1rem}.character-upgrades{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:7px;margin-top:11px}.character-upgrades button{min-height:58px;padding:6px 5px;display:flex;flex-direction:column;gap:3px;border:1px solid #b89561;border-bottom:3px solid #62472c;border-radius:5px;background:linear-gradient(#715b3c,#443326);color:#ffebc4;font:700 .72rem Cinzel,Georgia,serif;box-shadow:inset 0 1px #f6d39a5c,0 3px 5px #0006}.character-upgrades button.primary{color:#2d251a;background:linear-gradient(#ffe5a4,#c39550)}.character-upgrades small{display:inline-flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:2px;color:inherit;opacity:.85;font:500 .62rem DM Sans,sans-serif}.ascension-preview{margin:9px 0 0;color:#a9d9cb;font-size:.68rem;line-height:1.5}.character-upgrades button:disabled{opacity:.48;cursor:not-allowed;filter:grayscale(.35)}.awakened-stage:after{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;border:1px solid #ffe0a566;box-shadow:inset 0 0 34px #f2bd7244,0 0 20px #e7c87744;pointer-events:none;z-index:3}.awakening-panel{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding:9px 11px;border:1px solid #d2aa65;background:radial-gradient(circle at right,#664a2f,#30252a 75%);box-shadow:inset 0 0 18px #e4b66a22}.awakening-panel>div{min-width:0}.awakening-panel strong{display:block;margin:3px 0;color:#ffe4a7;font:700 .85rem Cinzel,Georgia,serif}.awakening-panel p{margin:0 0 5px;color:#e5d3b2;font-size:.71rem;line-height:1.45}.awakening-panel small{color:#a9d9cb;font-size:.66rem;line-height:1.4}.awakening-panel button{display:inline-flex;flex:none;align-items:center;gap:6px;padding:9px 12px}.awakening-panel button:disabled{opacity:.55;cursor:not-allowed}.awakening-skill{border-color:#c5a065;background:linear-gradient(120deg,#473329,#302b3d)}.awakening-skill.locked{opacity:.65}@media(max-width:540px){.awakening-panel{flex-direction:column;align-items:stretch}.awakening-panel button{justify-content:center}}.character-skill-list{display:grid;align-content:start;gap:9px;min-width:0;padding-top:14px}.skill-formula-guide{padding:8px 11px;border:1px solid #765b39;background:#342d28;color:#ddc99f;font-size:.71rem}.skill-formula-guide summary{cursor:pointer;font-weight:700}.skill-formula-guide p{margin:7px 0 0;color:#c9c4b7;font-size:.69rem;line-height:1.45}.character-skill{display:flex;gap:12px;padding:11px;border:1px solid #79623f;background:#322a23}.skill-emblem{display:grid;flex:none;place-items:center;width:48px;height:48px;border:2px solid #b48c4f;background:radial-gradient(circle,#876742,#2d2727);color:#f9d78f}.character-skill small,.character-skill strong{display:block}.character-skill small{color:#c8a76b;letter-spacing:.12em}.character-skill strong{color:#fff0ce;font-family:Cinzel,Georgia,serif}.character-skill p{margin:4px 0 0;color:#c8c9c6;font-size:.73rem}.character-skill>div{min-width:0}.skill-damage{display:grid;gap:6px;margin-top:9px;padding-top:8px;border-top:1px solid #765b39}.skill-damage-row{display:grid;gap:2px;font-size:.7rem;line-height:1.35;color:#dfd5c1}.skill-damage-row b{color:#ffd890;font-size:.7rem;text-transform:capitalize}.skill-damage-row strong{display:inline;color:#fff1bb;font-family:inherit}.skill-damage-row .skill-damage-bonus{color:#a9d9cb}.character-skill .skill-damage>small{display:block;color:#b9aa93;font-size:.64rem;line-height:1.4;letter-spacing:0}.character-skill .skill-upgrade{display:block;margin-top:7px;color:#a9d9cb;font-size:.68rem;line-height:1.45;letter-spacing:0}.character-gear{padding-top:12px}.gear-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;color:#e7c98b;font-size:.7rem;font-weight:800;letter-spacing:.1em}.gear-panel-heading button{padding:6px 8px;border-color:#bd9558;background:#59432e;font-size:.7rem}.character-gear-row{padding:10px 0;border-top:1px solid #685338}.gear-slot-label{display:flex;justify-content:space-between;gap:8px;margin-bottom:7px}.gear-slot-label strong{color:#f5dfaf;font:700 .8rem Cinzel,Georgia,serif}.gear-slot-label small{color:#c4b49a}.character-empty{min-height:400px;display:grid;place-items:center;color:#dfc898}.character-roster{border-top:3px solid #a37f4c;padding:13px 17px 18px;background:linear-gradient(#263447,#152234)}.roster-topline{display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:12px}.roster-topline>div:first-child{display:grid;gap:2px}.roster-topline strong{color:#fff0cf;font:700 1rem Cinzel,Georgia,serif}.roster-topline strong small{margin-left:7px;color:#b7b7b3;font:400 .68rem DM Sans,sans-serif}.roster-filters{display:flex;flex-wrap:wrap;gap:6px}.roster-filters label{display:grid;gap:3px;color:#ceb987;font-size:.59rem;text-transform:uppercase;letter-spacing:.08em}.roster-filters select{max-width:105px;min-width:78px;height:29px;padding:2px 6px;border:1px solid #947951;border-radius:3px;background:#152338;color:#f2e1bd;font-size:.7rem}.character-roster-strip{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 9px;scrollbar-color:#9d794c #142035}.roster-portrait{position:relative;flex:0 0 96px;min-height:124px;padding:4px 4px 6px;overflow:hidden;display:flex;flex-direction:column;align-items:center;border:2px solid var(--rarity);border-bottom:4px solid var(--rarity);border-radius:7px;background:radial-gradient(circle at 50% 34%,color-mix(in srgb,var(--rarity) 38%,transparent),transparent 65%),linear-gradient(#334358,#142238);box-shadow:inset 0 0 0 2px #0a1525,0 5px 8px #0009}.roster-portrait.active{border-color:#ffe8a4;box-shadow:inset 0 0 0 2px #f9d77d,0 0 14px #ffe1989e}.roster-portrait:hover{transform:translateY(-3px)}.roster-level{align-self:start;z-index:1;color:#fff0c4;font-size:.61rem;font-weight:800;text-shadow:0 1px 3px #000}.roster-sprite{display:block;width:70px;height:70px;margin-top:-3px}.roster-sprite .hero-sprite{width:100%}.roster-name{display:block;width:100%;margin-top:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#f9edda;font-size:.61rem;font-weight:800;text-shadow:0 1px 2px #000}.roster-stars{color:#f6d788;font-size:.59rem;line-height:1.1}@media(max-width:1100px){.character-main{grid-template-columns:minmax(220px,.8fr) minmax(350px,1.2fr)}.character-figure{width:100%}}@media(max-width:800px){.character-main{grid-template-columns:minmax(250px,.85fr) minmax(390px,1.15fr)}.character-screen{overflow:hidden}.page-heroes .content{padding-inline:10px}}@media(max-width:680px){.character-main{display:block;height:auto}.character-stage{height:390px;border-right:0;border-bottom:3px solid #9e7744}.character-figure{width:320px;top:4px;bottom:65px}.stage-plinth{bottom:78px}.stage-caption{min-height:83px;padding:7px 15px}.stage-caption small{display:none}.character-console{height:520px;padding:10px}.character-panel{padding:12px}.character-upgrades{grid-template-columns:repeat(3,1fr)}.character-roster{padding:11px 10px}}@media(max-width:410px){.character-tabs button{font-size:.62rem;padding-inline:2px}.character-titlebar{padding:10px}.character-count{font-size:.6rem}.character-stat-grid{gap:4px}.character-stat-grid>div{padding:5px 3px}.character-upgrades button{font-size:.63rem}.roster-filters label{flex:1}.roster-filters select{min-width:0;width:100%}}.objective-card{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:18px 0;padding:18px 24px;border:1px solid #a8844d;border-radius:14px;background:linear-gradient(110deg,#304157,#25304a 60%,#3b3446);box-shadow:0 10px 24px #0003}.objective-card h2{margin:6px 0;color:#f5dfac}.objective-card p{margin:0;color:#d7dfdf}.objective-card button{flex:none}.preset-bar{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 22px}.preset-bar>div{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--line);border-radius:10px;background:#223248}.preset-bar strong{font-size:.78rem;color:var(--gold);margin-right:5px}.preset-bar button{padding:6px 9px;font-size:.72rem}.faction-insight{display:grid;gap:7px;margin:0 0 24px;padding:15px;border:1px solid #52617a;border-radius:11px;background:#1c2c41}.faction-insight strong{color:#f0dbac}.faction-insight>span{color:#b8c8d2;font-size:.82rem}.faction-insight>div{display:flex;flex-wrap:wrap;gap:7px}.faction-insight>div span{border:1px solid;padding:4px 8px;border-radius:99px;color:#e6e9e6;font-size:.72rem}.stage-card .stage-rule,.stage-card .stage-loot{font-size:.69rem;line-height:1.25;color:#e4d3a7}.stage-card .stage-rule{color:#d3a6db}.battle-rule{max-width:470px;margin:7px 0 0;color:#dccaa2;font-size:.78rem;line-height:1.3}.campaign-balance{margin-top:18px}.balance-table{border:1px solid var(--line);border-radius:10px;overflow:hidden}.balance-row{display:grid;grid-template-columns:1fr .7fr .7fr 1.5fr;gap:10px;padding:10px 13px;border-top:1px solid var(--line);font-size:.8rem}.balance-row.heading{border-top:0;background:#2c3d53;color:#f3d89f}.balance-row.wall{background:#633c425c;color:#ffd5cd}@media(max-width:650px){.objective-card{align-items:flex-start;flex-direction:column}.balance-row{grid-template-columns:.8fr .5fr .6fr 1.3fr;gap:5px;font-size:.68rem}.preset-bar>div{width:100%;justify-content:space-between}}.item-sprite{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.gear-icon{width:62px;height:62px;padding:3px;display:grid;place-items:center;overflow:hidden;border-radius:3px;background:radial-gradient(circle,#36475b,#182536)}.gear-slot-label{justify-content:flex-start;align-items:center;gap:10px}.gear-slot-label>span:last-child{display:grid;gap:3px;min-width:0}.gear-slot-art{flex:none;width:42px;height:42px;padding:2px;display:grid;place-items:center;border:1px solid #8d7147;background:radial-gradient(circle,#46516a,#1c2737);color:#b9a27c;font-size:1.3rem}.equipment-choices button .item-sprite{flex:none;width:23px;height:23px;margin:-3px 1px -3px -3px}.trial-grid,.goal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.trial-card{border-top:3px solid var(--trial-accent);display:flex;flex-direction:column;align-items:flex-start;gap:10px}.trial-card h2{color:var(--trial-accent);margin:0}.trial-card p{margin:0;color:#c5d0d9}.trial-card button{margin-top:auto}.trial-card small{color:#aab9c6}.trial-complete{color:#aee2b6;margin-top:auto}.forge-panel{margin-top:20px}.forge-panel>p{color:#bdcbd4}.forge-workbench{display:grid;grid-template-columns:180px minmax(0,1fr);gap:22px;align-items:center}.forge-preview{display:grid;justify-items:center;text-align:center;gap:9px;border:1px solid #726143;border-radius:12px;padding:18px;background:radial-gradient(circle,#3a4560,#1c2a3c)}.forge-preview .item-sprite{width:100px;height:100px}.forge-preview strong{color:#f2dfad}.forge-preview span{color:#b8cad4;font-size:.8rem}.forge-inputs{display:grid;gap:13px}.forge-inputs label{display:grid;gap:6px;color:#d8c99d}.forge-inputs select,.filters select{background:#1c2a3d;color:#e9e8e1;border:1px solid #53667d;border-radius:8px;padding:9px;min-width:0;width:100%}.forge-inputs p{color:#dbc89d;margin:0}.forge-inputs button{justify-self:start}.goal-section{margin:20px 0 32px}.goal-section h2{margin:0 0 15px}.goal-card{display:flex;flex-direction:column;gap:10px}.goal-card h3{margin:0;color:#f1dfb2}.goal-card p{margin:0;color:#c5d0d9}.goal-card small{color:#bbcbd4}.goal-meter{height:8px;background:#27384b;border-radius:99px;overflow:hidden}.goal-meter span{display:block;height:100%;background:linear-gradient(90deg,#9a703a,#f2d484)}.goal-card .goal-reward{color:#e5c77e;margin-top:auto;font-size:.83rem}.goal-card button{align-self:flex-start}.goal-card.claimed{opacity:.75}.mastery-panel{display:grid;gap:12px}.mastery-panel h3,.mastery-panel p{margin:0}.mastery-panel p{color:#c4d0da}.mastery-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.mastery-paths button{display:grid;text-align:left;justify-items:start;align-content:start;gap:8px;padding:13px}.mastery-paths button strong{color:#efd5a0}.mastery-paths button span{font-size:.75rem;color:#c4d0da}.mastery-paths button.selected{border-color:#e6c278;background:#4a3c37}.mastery-panel>small{color:#dbc893}.codex-stories,.codex-factions,.codex-heroes{margin-bottom:20px}.codex-stories h2,.codex-factions h2,.codex-heroes h2{margin-bottom:18px}.story-grid,.faction-lore-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.story-entry,.faction-lore-grid>div{padding:16px;border:1px solid #4b5b70;border-radius:10px;background:#203148}.story-entry h3{color:#f0dca9;margin:9px 0}.story-entry p,.faction-lore-grid p{color:#c3cfda;margin:0}.story-entry.locked{opacity:.65}.faction-lore-grid strong{color:#ebd295}.codex-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:18px}.codex-roster{max-height:470px;overflow-y:auto;display:grid;align-content:start;gap:5px}.codex-roster button{justify-content:space-between;text-align:left;padding:9px}.codex-roster button.selected{border-color:#e6c278;background:#354458}.codex-roster small{font-size:.66rem;color:#aebfcb}.codex-detail{min-height:340px;padding:20px;border:1px solid #4b5b70;border-radius:10px;background:radial-gradient(circle at 80% 15%,#485074,#203148 60%);display:flex;flex-direction:column;align-items:flex-start;gap:9px}.codex-detail h3,.codex-detail p{margin:0}.codex-detail p,.codex-detail small{color:#c8d2dc}.codex-detail strong{color:#f0d69d}.codex-portrait{width:104px;height:104px;overflow:hidden;border:1px solid #988052;background:#1b2b3d}.codex-portrait .hero-sprite{display:block;width:100%;height:100%}.battle-report{margin:15px 0;padding:14px;border:1px solid #58687c;border-radius:9px;background:#1d2e42}.battle-report p{margin:6px 0;color:#d5dde1}.battle-highlights{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.battle-highlights span{padding:5px 8px;border:1px solid #526177;border-radius:7px;color:#e8d6a9;font-size:.72rem}.battle-report details{font-size:.79rem}.battle-report summary{cursor:pointer;color:#edcf8d}.battle-timeline{max-height:180px;overflow:auto;margin-top:9px}.battle-timeline>div{display:flex;gap:9px;padding:4px 0;border-top:1px solid #45556a}.battle-timeline time{color:#dfbd75;white-space:nowrap}@media(max-width:1050px){.trial-grid,.goal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.trial-grid,.goal-grid,.story-grid,.faction-lore-grid,.forge-workbench,.codex-layout,.mastery-paths{grid-template-columns:1fr}.character-tabs{overflow-x:auto}.character-tabs button{flex:none}.mobile-nav{justify-content:flex-start;overflow-x:auto;scrollbar-width:thin}.mobile-nav button{flex:0 0 62px}.codex-roster{max-height:180px}}.battle-overlay.showing-result,.battle-shell.showing-result{overflow:hidden}.arena.scene-dawn{background-image:linear-gradient(#09142433,#0b162d52),url(/backgrounds/pixel-battle-dawn.png)}.arena.scene-tide{background-image:linear-gradient(#0914243d,#0b162d55),url(/backgrounds/pixel-battle-tide.png)}.arena.scene-night{background-image:linear-gradient(#09142442,#0b162d55),url(/backgrounds/pixel-battle-night.png)}.arena.scene-thorn-gate{background-image:linear-gradient(#09142438,#0b162d58),url(/backgrounds/pixel-battle-dawn.png)}.arena.scene-maelstrom{background-image:linear-gradient(#0914243d,#0b162d5e),url(/backgrounds/pixel-battle-tide.png)}.arena.scene-crown{background-image:linear-gradient(#09142430,#0b162d59),url(/backgrounds/pixel-battle-night.png)}.arena.scene-tower{background-image:linear-gradient(#09142438,#0b162d54),url(/backgrounds/pixel-battle-night.png)}.skill-vfx-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:11;pointer-events:none;--vfx-anchor-offset: clamp(38px, 3.9vw, 53px)}.heavenfall-beam{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;transform:translateY(calc(-1 * var(--vfx-anchor-offset)));filter:drop-shadow(0 0 14px #fff4bd);mix-blend-mode:screen}.zenith-basic-beam{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;transform:translateY(calc(-1 * var(--vfx-anchor-offset)));filter:drop-shadow(0 0 8px #b884ff);mix-blend-mode:screen}.battle-unit.dash-origin-hidden .unit-portrait{visibility:hidden}.skill-dash-character{position:absolute;z-index:15;width:clamp(70px,7.8vw,100px);aspect-ratio:1;transform:translate(-50%,-100%);image-rendering:pixelated;filter:drop-shadow(0 0 10px #ffe3a0);pointer-events:none}.skill-dash-character .hero-sprite{width:100%;height:100%}.skill-dash-trail{z-index:14;filter:drop-shadow(0 0 13px #ffe4a8) brightness(1.35)}.skill-vfx{position:absolute;width:clamp(86px,10vw,142px);aspect-ratio:1;background-repeat:no-repeat;background-size:400% 400%;image-rendering:pixelated;pointer-events:none;transition:left .05s linear,top .05s linear,transform .05s linear,opacity .05s linear}.skill-vfx-impact{filter:drop-shadow(0 0 9px #ffffff66)}.skill-vfx-shogim-muzzle{width:clamp(65px,7vw,96px);filter:drop-shadow(0 0 5px #ff893e)}.skill-vfx-ultimate{width:clamp(112px,13vw,176px)}.skill-vfx-kael.skill-vfx-ultimate,.skill-vfx-ignis.skill-vfx-ultimate{width:clamp(116px,13vw,180px);filter:drop-shadow(0 0 18px #ff682b)}.skill-vfx-vexa.skill-vfx-active{width:clamp(72px,8vw,112px);filter:drop-shadow(0 0 9px #ff883e)}.skill-vfx-ignis.skill-vfx-active{width:clamp(64px,7vw,102px);filter:drop-shadow(0 0 10px #ff932e)}.skill-vfx-ignis.skill-vfx-secondary,.skill-vfx-pyra.skill-vfx-ultimate,.skill-vfx-pyra.skill-vfx-awakening{width:clamp(132px,14vw,190px);filter:drop-shadow(0 0 16px #ff732c)}.skill-vfx-levi-hook{width:clamp(110px,12vw,168px);filter:drop-shadow(0 0 12px #69e3ff)}.skill-vfx-maris-wave{width:clamp(190px,24vw,330px);filter:drop-shadow(0 0 17px #79e8ff)}.skill-vfx-neris,.skill-vfx-coral,.skill-vfx-maris,.skill-vfx-levi{filter:drop-shadow(0 0 12px #72d8ff)}.skill-dash-vexa{filter:drop-shadow(0 0 13px #ff6428) brightness(1.25)}.skill-dash-pyra{filter:drop-shadow(0 0 19px #ffa62d) brightness(1.28)}@media(max-width:800px){.skill-vfx-layer{--vfx-anchor-offset: clamp(27px, 4vw, 38px)}}@media(max-width:600px){.skill-vfx-layer{--vfx-anchor-offset: clamp(19px, 5.5vw, 26px)}.skill-vfx{width:clamp(66px,18vw,90px)}.skill-vfx-ultimate{width:clamp(82px,22vw,112px)}}.arena.scene-trial{--trial-glow: #eac476;background-image:linear-gradient(180deg,color-mix(in srgb,var(--trial-glow) 12%,transparent),#0b162d61),url(/backgrounds/pixel-battle-night.png);border-color:var(--trial-glow)}.arena.trial-aurelian{--trial-glow: #e9bd67}.arena.trial-verdant{--trial-glow: #66c997}.arena.trial-cinder{--trial-glow: #ed8969}.arena.trial-tideborn{--trial-glow: #75c5e9}.arena.trial-umbral{--trial-glow: #b690dc}.arena.trial-astral{--trial-glow: #a7b5f3}.arena:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,#3199aa30 0%,transparent 45%,transparent 55%,#b9434330 100%)}.arena-label{display:grid;gap:2px;min-width:126px;padding:7px 11px;border:1px solid;border-radius:8px;background:#091728df;text-shadow:0 1px 3px #000}.arena-label.player{left:3%;right:auto;color:#baf5f5;border-color:#60cfda;box-shadow:0 0 16px #3199aa55}.arena-label.enemy{right:3%;left:auto;color:#ffd0c8;border-color:#f08073;box-shadow:0 0 16px #b9434355;text-align:right}.battle-unit.player .unit-name{color:#c8ffff}.battle-unit.enemy .unit-name{color:#ffd0c8}.battle-unit.player .meter.hp{border-color:#85e0e4}.battle-unit.enemy .meter.hp{border-color:#ff9c8d}.battle-unit.player .meter.hp>div{background:linear-gradient(90deg,#36a8bb,#99eef1)}.battle-unit.enemy .meter.hp>div{background:linear-gradient(90deg,#bd4e5a,#ff9381)}.battle-unit.player .unit-portrait:before{background:#49c9d0aa;box-shadow:0 0 13px #49c9d0}.battle-unit.enemy .unit-portrait:before{background:#f27671aa;box-shadow:0 0 13px #f27671}@media(max-width:600px){.arena-label{min-width:0;padding:5px 7px}}.effect-damage{color:#ffbd8a}.effect-heal{color:#a8ecc0}.effect-buff{color:#8ae2d9}.effect-debuff{color:#e3a4ec}.status-line{top:43px;flex-wrap:nowrap;overflow:visible;white-space:nowrap}.status-line span{max-width:65px;overflow:hidden;text-overflow:ellipsis;font-size:.48rem;font-weight:800;text-transform:uppercase;border:1px solid currentColor;border-radius:4px;padding:2px 3px;background:#091522e8;box-shadow:0 1px 4px #000b}.skill-effect-tag{position:absolute;z-index:12;transform:translate(-50%,-100%);display:flex;gap:3px;align-items:center;white-space:nowrap;max-width:125px;overflow:hidden;text-overflow:ellipsis;padding:2px 5px;border:1px solid currentColor;border-radius:5px;background:#091522ec;box-shadow:0 2px 7px #000b;font-size:.58rem;font-weight:700;text-shadow:0 1px 2px #000}.skill-effect-tag b{font-size:.48rem;text-transform:uppercase;letter-spacing:.04em}@media(max-width:600px){.status-line{display:flex;top:31px}.status-line span{max-width:38px;font-size:.4rem;padding:1px 2px}.status-line span:nth-child(n+3){display:none}.skill-effect-tag{font-size:.46rem;padding:1px 3px}.skill-effect-tag b{font-size:.4rem}}.battle-unit.current-caster .unit-name{display:inline-block;max-width:100%;padding:2px 4px;color:#fff;border:1px solid var(--accent);border-radius:4px;background:#071927e8;box-shadow:0 0 10px var(--accent)}.formation-summary{display:grid;grid-template-columns:minmax(210px,.75fr) minmax(0,2fr);gap:14px;margin-bottom:18px}.formation-bp,.formation-stats{border:1px solid #776344;background:linear-gradient(130deg,#293448ed,#14243ae8);box-shadow:0 12px 32px #0003;border-radius:3px;padding:20px}.formation-bp{display:grid;align-content:center;gap:4px}.formation-bp strong{font-family:Cinzel,Georgia,serif;color:#f3d58c;font-size:clamp(2rem,3vw,2.8rem);line-height:1.1}.formation-bp small{color:#bbc7cc}.formation-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:10px}.formation-stats>div{min-width:0;padding:8px 10px;border-left:1px solid #637085}.formation-stats span,.formation-stats strong{display:block}.formation-stats span{color:#aebdc6;font-size:.7rem}.formation-stats strong{color:#f0e0bb;font-size:clamp(.95rem,1.6vw,1.35rem);overflow-wrap:anywhere}.formation-field .formation-slot{cursor:grab;touch-action:none;transition:transform .16s,border-color .16s,background .16s,box-shadow .16s}.formation-field .formation-slot:active,.formation-roster .hero-card:active{cursor:grabbing}.formation-field .formation-slot small{font-size:.58rem;color:#d1d6d0}.formation-field .formation-slot.drop-target,.formation-roster.drop-target{border-color:#f2ce7d;background:#665438bd;box-shadow:0 0 0 3px #e7bb653d,0 0 22px #e7bb6544}.formation-field .formation-slot.dragging,.formation-roster .hero-card.dragging{opacity:.55}.formation-roster .hero-card{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.formation-roster .hero-card.selected{border-color:#f3ce7b;box-shadow:inset 0 0 0 1px #f3ce7b}.formation-roster .hero-card-info span,.formation-roster .hero-card-info small{display:block}.formation-roster .panel-head{margin-bottom:8px}.formation-roster>p{font-size:.75rem}.formation-help{color:#bdc8cb;text-align:center;font-size:.74rem;margin:0}.formation-remove{display:flex;margin:12px auto 0;padding:7px 10px;font-size:.72rem;color:#f1d69d}@media(max-width:1100px){.formation-stats{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:700px){.formation-summary{grid-template-columns:1fr}.formation-stats{grid-template-columns:repeat(3,minmax(0,1fr));padding:12px}.formation-stats>div{padding:7px}.formation-bp{padding:15px}}main.page-formation{height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden}.page-formation .topbar{flex:none}.page-formation .content{width:100%;max-width:1500px;min-height:0;flex:1;display:flex;flex-direction:column;overflow:hidden;margin:0 auto;padding-top:14px;padding-bottom:14px}.page-formation .page-heading{flex:none;margin-bottom:10px;align-items:center}.page-formation .page-heading h1{font-size:clamp(1.7rem,2.6vw,2.5rem);margin:3px 0}.page-formation .page-heading p{font-size:.8rem}.page-formation .formation-summary{flex:none;grid-template-columns:minmax(160px,.6fr) minmax(0,2fr);gap:8px;margin-bottom:10px}.page-formation .formation-bp,.page-formation .formation-stats{padding:10px 14px}.page-formation .formation-bp strong{font-size:clamp(1.6rem,2.4vw,2.2rem)}.page-formation .formation-stats{gap:3px}.page-formation .formation-stats>div{padding:3px 8px}.page-formation .formation-layout{flex:1;min-height:0;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:10px;overflow:hidden}.page-formation .formation-board,.page-formation .formation-roster{min-height:0;padding:12px;overflow:hidden}.page-formation .formation-board{display:flex;flex-direction:column;gap:8px}.page-formation .preset-bar{flex:none;margin:0;gap:5px;flex-wrap:nowrap;overflow-x:auto}.page-formation .preset-bar>div{width:auto;flex:none;gap:4px;padding:4px 6px}.page-formation .preset-bar button{padding:4px 6px}.page-formation .faction-insight{flex:none;margin:0;padding:8px;gap:3px}.page-formation .faction-insight strong{font-size:.74rem}.page-formation .faction-insight>span,.page-formation .faction-insight>div span{font-size:.65rem}.page-formation .faction-insight>div span{padding:2px 5px}.page-formation .formation-field{display:flex;flex-direction:column;flex:1;min-height:0;gap:7px;margin:0}.page-formation .formation-row{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:stretch;gap:7px;flex:1;min-height:0}.page-formation .formation-field-heading{grid-column:auto!important;align-self:center;font-size:.67rem;writing-mode:vertical-rl;transform:rotate(180deg)}.page-formation .formation-row-slots{display:flex;justify-content:center;gap:7px;min-width:0;min-height:0}.page-formation .formation-field .formation-slot{width:min(110px,33%);height:100%;min-height:0;flex:none;align-self:stretch;justify-content:center;gap:2px;padding:4px}.page-formation .formation-field .formation-slot .portrait{width:clamp(28px,5vh,48px);height:clamp(28px,5vh,48px)}.page-formation .formation-field .formation-slot strong{font-size:.65rem}.page-formation .formation-field .formation-slot small{font-size:.53rem}.page-formation .formation-help{flex:none;font-size:.66rem}.page-formation .formation-placement-message{flex:none;margin:0;color:#f3ce7b;text-align:center;font-size:.72rem}.page-formation .formation-remove{flex:none;margin:0 auto;padding:4px 7px}.page-formation .formation-roster{display:flex;flex-direction:column}.page-formation .formation-roster .panel-head{flex:none;margin-bottom:5px}.page-formation .formation-roster>p{flex:none;margin-bottom:8px;font-size:.7rem}.page-formation .compact-roster{flex:1;min-height:0;max-height:none;overflow-y:auto;overflow-x:hidden;align-content:start}.page-formation .compact-roster .hero-card{min-height:69px;padding:7px;gap:6px}.page-formation .compact-roster .portrait{width:40px;height:44px}.page-formation .compact-roster .hero-card-info span,.page-formation .compact-roster .hero-card-info small{font-size:.59rem}@media(max-width:650px){.page-formation .content{padding:9px 10px 62px}.page-formation .page-heading{margin-bottom:6px}.page-formation .page-heading h1{font-size:1.65rem}.page-formation .page-heading p{display:none}.page-formation .formation-summary{grid-template-columns:110px minmax(0,1fr);gap:6px;margin-bottom:6px}.page-formation .formation-bp,.page-formation .formation-stats{padding:6px}.page-formation .formation-bp strong{font-size:1.45rem}.page-formation .formation-bp small{font-size:.55rem}.page-formation .formation-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}.page-formation .formation-stats>div{padding:2px 3px}.page-formation .formation-stats span{font-size:.56rem}.page-formation .formation-stats strong{font-size:.78rem}.page-formation .formation-layout{display:flex;flex-direction:column;gap:6px}.page-formation .formation-board{flex:1;padding:7px;gap:5px}.page-formation .preset-bar>div{padding:2px 4px}.page-formation .preset-bar strong,.page-formation .preset-bar button{font-size:.62rem}.page-formation .faction-insight{padding:5px}.page-formation .faction-insight>span,.page-formation .faction-insight>div{display:none}.page-formation .formation-field{gap:4px}.page-formation .formation-row{grid-template-columns:24px minmax(0,1fr);gap:3px}.page-formation .formation-row-slots{gap:4px}.page-formation .formation-field .formation-slot{width:min(99px,33%);padding:2px}.page-formation .formation-field .formation-slot .portrait{width:clamp(24px,4vh,36px);height:clamp(24px,4vh,36px)}.page-formation .formation-field .formation-slot strong{font-size:.57rem}.page-formation .formation-field .formation-slot small{display:none}.page-formation .formation-help{font-size:.57rem}.page-formation .formation-roster{flex:0 0 128px;padding:6px}.page-formation .formation-roster .panel-head{margin-bottom:3px}.page-formation .formation-roster .panel-head h2{font-size:.85rem}.page-formation .formation-roster .panel-head .eyebrow,.page-formation .formation-roster .pill,.page-formation .formation-roster>p{display:none}.page-formation .compact-roster{display:flex;overflow-x:auto;overflow-y:hidden;gap:5px}.page-formation .compact-roster .hero-card{flex:0 0 145px;width:145px;min-height:0;padding:5px}.page-formation .compact-roster .portrait{width:34px;height:38px}.page-formation .compact-roster .hero-card-info span,.page-formation .compact-roster .hero-card-info small{display:none}}@media(max-height:620px){main.page-formation{height:auto;min-height:100dvh;overflow:visible}.page-formation .content{min-height:650px;overflow:visible}}@supports not selector(::-webkit-scrollbar){html,.app,.app *{scrollbar-width:thin;scrollbar-color:#b18a54 #0e1b2c}}html::-webkit-scrollbar,.app::-webkit-scrollbar,.app *::-webkit-scrollbar{width:10px;height:10px}html::-webkit-scrollbar-track,.app::-webkit-scrollbar-track,.app *::-webkit-scrollbar-track{background:#0d1929;border:1px solid #314259;border-radius:10px}html::-webkit-scrollbar-thumb,.app::-webkit-scrollbar-thumb,.app *::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#e4c47e,#a7783f);border:2px solid #0d1929;border-radius:10px;min-height:28px}html::-webkit-scrollbar-thumb:hover,.app::-webkit-scrollbar-thumb:hover,.app *::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#ffe4a3,#c79653)}html::-webkit-scrollbar-thumb:active,.app::-webkit-scrollbar-thumb:active,.app *::-webkit-scrollbar-thumb:active{background:#f5d28b}html::-webkit-scrollbar-button,.app::-webkit-scrollbar-button,.app *::-webkit-scrollbar-button{display:none;width:0;height:0}html::-webkit-scrollbar-corner,.app::-webkit-scrollbar-corner,.app *::-webkit-scrollbar-corner{background:#0d1929}.page-formation .compact-roster{scrollbar-gutter:stable}.topbar{min-height:64px;padding-block:8px}.top-label{display:flex;align-items:center}.top-label .eyebrow{font-size:.7rem}@media(max-width:800px){.topbar{min-height:66px}}.topbar{min-height:70px}.top-label{gap:6px;align-items:baseline;min-width:0}.top-label h1{margin:0;color:#f8e8c3;font-size:1.3rem;line-height:1.1;white-space:nowrap}.page-heading{padding-bottom:12px;margin-bottom:16px}.page-heading>div{display:grid;gap:6px}.page-heading .eyebrow{line-height:1}.page-heading p{font-size:.86rem;margin:0}.character-titlebar{min-height:50px;padding-block:8px}@media(max-width:800px){.topbar{min-height:66px}.mobile-brand{display:grid;gap:2px;min-width:0;overflow:hidden}.mobile-brand small{font:700 .54rem DM Sans,sans-serif;letter-spacing:.12em;color:#d5b676}.mobile-brand h1{margin:0;font:700 .84rem Cinzel,Georgia,serif;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#f6e7c3}}.account-gate{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 10%,#213857,#0a1220 70%);color:#e9e8e1}.account-card{width:min(100%,490px);padding:36px;border:1px solid #53637b;border-radius:18px;background:#152238;box-shadow:0 25px 80px #0007;display:grid;gap:15px}.account-card h1{margin:0;color:#f0d392}.account-card p{margin:0}.account-card button,.account-card a{width:100%}.discord-login{display:flex;align-items:center;justify-content:center;border-radius:10px;padding:13px 20px;background:#5865f2;color:#fff;text-decoration:none;font-weight:700}.discord-login:hover{background:#4752c4}.account-signout{margin:0 10px 16px;width:calc(100% - 20px);font-size:.75rem;padding:7px 10px}.cloud-save-status{position:fixed;right:15px;bottom:15px;z-index:1000;padding:7px 10px;border-radius:8px;background:#172235;color:#e9e8e1;border:1px solid #53637b;font-size:.7rem;pointer-events:none}.cloud-save-error{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#07111bd9;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;text-align:center;padding:25px}.cloud-save-error strong{font-family:Cinzel,Georgia,serif;font-size:1.5rem;color:#f0d392}.cloud-save-error span{max-width:460px}.cloud-save-error button{min-width:210px}.account-import-file{display:grid;gap:8px;color:#e9e8e1;font-size:.85rem}.account-import-file input{width:100%;font-size:.75rem}.account-gate{min-height:100vh;display:block;padding:0;background:#08111e;color:#f2eee5}.account-layout{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr)}.account-hero{position:relative;min-height:100vh;overflow:hidden;background:linear-gradient(90deg,#08111e75,#08111e20 56%,#08111eb3),linear-gradient(0deg,#08111ee8,#08111e00 55%,#08111e54),url(/backgrounds/pixel-citadel.png) center / cover}.account-hero:after{content:"";position:absolute;top:22px;right:22px;bottom:22px;left:22px;border:1px solid #e9c78245;pointer-events:none}.account-hero-inner{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column;padding:clamp(42px,6vw,92px)}.account-brand{display:flex;align-items:center;gap:13px;color:#f7e9c7;font:700 clamp(1rem,1.5vw,1.28rem) Cinzel,Georgia,serif;letter-spacing:.17em;text-shadow:0 2px 20px #000}.account-brand small{display:block;color:#e5c27f;font:700 .58rem DM Sans,sans-serif;letter-spacing:.31em;margin-top:5px}.account-brand-mark{width:44px;height:44px;border:1px solid #e9cb8e92;transform:rotate(45deg);display:grid;place-items:center;color:#f7dfa6;background:#101b2aa6;box-shadow:0 0 30px #dfb96d45}.account-brand-mark svg{transform:rotate(-45deg)}.account-hero-copy{margin:auto 0 auto clamp(0px,3vw,42px);max-width:660px;padding-block:80px;text-shadow:0 4px 28px #020a12}.account-kicker{display:flex;align-items:center;gap:13px;color:#e8c985;font-size:.72rem;letter-spacing:.32em;font-weight:700}.account-kicker span{height:1px;width:40px;background:#e8c985}.account-hero h1{font-size:clamp(3.8rem,6.5vw,7rem);line-height:1.05;letter-spacing:-.035em;color:#fff8e8;margin:23px 0 25px;font-weight:600}.account-hero h1 em{color:#e8c985;font-style:normal}.account-hero-copy p{color:#e6e8e7;font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.7;max-width:490px;margin:0}.account-hero-footer{display:flex;align-items:center;gap:15px;color:#e7d1a3;font-size:.64rem;letter-spacing:.27em;font-weight:700}.account-hero-footer span{font-size:1rem;color:#f4d58f}.account-panel{min-width:0;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px clamp(30px,5vw,85px);background:radial-gradient(circle at 50% 27%,#182c43,#0d1a2c 55%,#081321);border-left:1px solid #eac47655}.account-panel-top,.account-panel-bottom{width:min(100%,500px);display:flex;align-items:center;justify-content:space-between}.account-panel-top{padding-bottom:16px;border-bottom:1px solid #aa926949}.account-panel-star{color:#d7b978;font-size:1.4rem}.account-panel-bottom{justify-content:center;border-top:1px solid #aa926949;padding-top:19px;color:#8f9aa5;font-size:.62rem;letter-spacing:.25em}.account-card{width:min(100%,500px);padding:42px 0 38px;border:0;border-radius:0;background:transparent;box-shadow:none;display:block}.account-heading{text-align:center;margin-bottom:28px}.account-heading-icon,.account-state-icon{width:49px;height:49px;display:grid;place-items:center;margin:0 auto 19px;border-radius:50%;border:1px solid #e7c77c8a;color:#f2d38b;background:#d5a95d19;box-shadow:0 0 34px #d8aa5640}.account-heading h2,.account-state h2{font-size:clamp(1.7rem,2.6vw,2.2rem);color:#fff4d9;margin:0 0 9px}.account-heading p,.account-state p{color:#b6c2cd;margin:0;font-size:.95rem}.account-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:25px;padding:4px;border:1px solid #40516a;background:#101d30;border-radius:12px}.account-tabs button{width:100%;border:0;background:transparent;color:#9faebc;min-height:44px;font-weight:700;transform:none!important}.account-tabs button.selected{color:#f7e0ae;background:linear-gradient(145deg,#34445a,#26364c);box-shadow:0 4px 12px #0004}.account-form{display:grid;gap:10px}.account-form>label{color:#d9dce0;font-size:.79rem;font-weight:700;letter-spacing:.04em;margin-top:3px}.account-input{display:flex;align-items:center;gap:12px;min-height:52px;border:1px solid #50617a;background:#111e31;border-radius:10px;padding:0 14px;color:#d7b978;transition:border-color .15s,box-shadow .15s}.account-input:focus-within{border-color:#e7c77c;box-shadow:0 0 0 3px #e7c77c22}.account-input input{min-width:0;flex:1;border:0;background:transparent;color:#f6f1e6;outline:none!important;box-shadow:none;font-size:.95rem}.account-input input::placeholder{color:#8292a5}.account-input .account-reveal{width:auto;min-width:32px;padding:5px;border:0;background:transparent;color:#a7b4c3;transform:none}.account-input .account-reveal:hover{background:transparent;color:#f1d593}.account-hint{color:#9daaba!important;font-size:.76rem!important;line-height:1.5;margin:1px 0 0!important}.account-message{margin:4px 0 0!important;padding:10px 12px;border:1px solid #e18d8678;border-radius:8px;background:#5c282a66;color:#ffdfd7!important;font-size:.81rem!important}.account-submit{width:100%;min-height:53px;margin-top:13px;padding:12px 17px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid #f5db9a;background:linear-gradient(115deg,#f3d995,#cfa65f);box-shadow:0 10px 24px #030c1670;color:#172337;font-weight:800;letter-spacing:.02em}.account-submit:hover:not(:disabled){background:linear-gradient(115deg,#ffe7aa,#dfb66c);transform:translateY(-2px)}.account-divider{position:relative;text-align:center;margin:25px 0 21px;color:#8696a7;font-size:.65rem;letter-spacing:.18em;font-weight:700}.account-divider:before{content:"";position:absolute;left:0;right:0;top:50%;border-top:1px solid #3b4d63}.account-divider span{position:relative;background:#0f1d30;padding:0 15px}.account-card .discord-login{width:100%;min-height:50px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid #7f8aff;border-radius:10px;background:#535fe2;color:#fff;font-weight:800;text-decoration:none;transition:background .16s,transform .16s}.account-card .discord-login:hover{background:#6370f3;transform:translateY(-2px)}.account-footnote{text-align:center;margin:23px 0 0!important;color:#8393a5;font-size:.75rem}.account-state{text-align:center;display:grid;gap:15px}.account-state .account-state-icon{margin-bottom:4px}.account-state .account-submit{margin-top:13px}.account-state strong{color:#f0d392}.account-secondary{width:100%;min-height:48px;background:#1c2d43}.account-import-file{margin-top:9px;text-align:left}.account-import-file input{padding:9px;border:1px solid #4d5b70;border-radius:8px;background:#101d30;color:#d5dde2}@media(max-width:1000px){.account-layout{grid-template-columns:minmax(0,.9fr) minmax(400px,1.1fr)}.account-hero-inner{padding:50px 38px}.account-hero h1{font-size:clamp(3.6rem,6vw,5rem)}}@media(max-width:740px){.account-layout{display:block}.account-hero{min-height:300px;background-position:center 40%}.account-hero:after{top:13px;right:13px;bottom:13px;left:13px}.account-hero-inner{min-height:300px;padding:30px 28px}.account-hero-copy{padding:45px 0 25px;margin:0}.account-hero h1{font-size:3.3rem;margin:13px 0 10px}.account-hero-copy p,.account-hero-footer{display:none}.account-panel{min-height:calc(100vh - 300px);padding:26px 28px 35px;border-left:0;border-top:1px solid #eac47655}.account-card{padding:28px 0}.account-heading{margin-bottom:24px}}@media(max-width:420px){.account-hero{min-height:255px}.account-hero-inner{min-height:255px;padding:27px 24px}.account-brand{font-size:.9rem}.account-brand-mark{width:37px;height:37px}.account-hero-copy{padding:42px 0 20px}.account-hero h1{font-size:2.8rem}.account-panel{min-height:calc(100vh - 255px);padding:22px 23px 30px}.account-card{padding:25px 0}.account-heading h2{font-size:1.8rem}}.app.native-transitions .sidebar{view-transition-name:realm-sidebar}.app.native-transitions .mobile-nav{view-transition-name:realm-mobile-nav}::view-transition-old(root){animation:realm-page-out .2s ease-in both}::view-transition-new(root){animation:realm-page-in .42s cubic-bezier(.16,1,.3,1) both}::view-transition-old(realm-sidebar),::view-transition-new(realm-sidebar),::view-transition-old(realm-mobile-nav),::view-transition-new(realm-mobile-nav){animation:none}::view-transition-group(realm-sidebar),::view-transition-group(realm-mobile-nav){animation-duration:0s}@keyframes realm-page-out{to{opacity:0;transform:translateY(-8px) scale(.995);filter:blur(2px)}}@keyframes realm-page-in{0%{opacity:0;transform:translateY(16px) scale(.992);filter:blur(3px)}to{opacity:1;transform:none;filter:blur(0)}}.app:not(.native-transitions) .content{animation:realm-page-in .42s cubic-bezier(.16,1,.3,1) both}.app:not(.native-transitions) .topbar h1{animation:realm-page-in .32s cubic-bezier(.16,1,.3,1) both}.sidebar nav button,.mobile-nav button{transition:color .24s ease,background .24s ease,border-color .24s ease,box-shadow .24s ease}@media(prefers-reduced-motion:reduce){.app:not(.native-transitions) .content,.app:not(.native-transitions) .topbar h1{animation:none}}.arena.scene-dungeon-gold{background-image:linear-gradient(#09142430,#0b162d52),url(/backgrounds/pixel-battle-dawn.png)}.arena.scene-dungeon-item{background-image:linear-gradient(#09142438,#0b162d55),url(/backgrounds/pixel-battle-dawn.png)}.arena.scene-dungeon-exp{background-image:linear-gradient(#09142435,#0b162d50),url(/backgrounds/pixel-battle-night.png)}.dungeon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.dungeon-card{min-width:0;overflow:hidden;border:1px solid #4f5d73;border-radius:16px;background:linear-gradient(160deg,#1c2c41,#111e32);box-shadow:0 15px 35px #0004}.dungeon-card-art{height:205px;background-position:center;background-size:cover;border-bottom:1px solid #6d6370}.dungeon-gold .dungeon-card-art{background-image:linear-gradient(0deg,#192438 0%,transparent 55%),url(/backgrounds/pixel-battle-dawn.png)}.dungeon-item .dungeon-card-art{background-image:linear-gradient(0deg,#192438 0%,transparent 55%),url(/backgrounds/pixel-battle-dawn.png)}.dungeon-exp .dungeon-card-art{background-image:linear-gradient(0deg,#192438 0%,transparent 55%),url(/backgrounds/pixel-battle-night.png)}.dungeon-card-content{display:grid;align-content:start;gap:13px;padding:22px}.dungeon-card-content .eyebrow{display:flex;align-items:center;gap:7px}.dungeon-card h2{margin:0;color:#f2e4c5}.dungeon-card p{min-height:72px;margin:0;color:#c3d0d9;font-size:.88rem}.dungeon-reward,.dungeon-entries{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #46556b;padding-top:13px;font-size:.83rem}.dungeon-reward span,.dungeon-entries span{color:#afbecb}.dungeon-reward strong,.dungeon-entries strong{color:#f1d28e;text-align:right}.dungeon-entry-pips{display:flex;gap:6px;margin-left:auto}.dungeon-entry-pips i{display:block;width:15px;height:15px;border:1px solid #6a798d;border-radius:50%;background:#26364b}.dungeon-entry-pips i.ready{background:#e7c476;border-color:#f2db9f;box-shadow:0 0 9px #e7c47677}.dungeon-timer{color:#bdc8d4;font-variant-numeric:tabular-nums}.dungeon-card-content button{width:100%}.dungeon-clears{color:#91a3b3;line-height:1.4}@media(max-width:1100px){.dungeon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.dungeon-grid{grid-template-columns:1fr}.dungeon-card p{min-height:0}.dungeon-card-art{height:175px}}.material-inventory{margin-top:24px}.material-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.material-card{display:grid;gap:6px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--panel2)}.material-card span{font-size:1.35rem;color:var(--gold);font-weight:700}.material-card small{color:var(--muted)}.dungeon-target{display:grid;gap:6px;margin:12px 0;color:var(--muted);font-size:.8rem}.dungeon-target select{padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--panel2);color:var(--text)}.arena.scene-dungeon-ascension{background-image:linear-gradient(#162c2140,#0b162d60),url(/backgrounds/pixel-battle-dawn.png)}.arena.scene-dungeon-skill{background-image:linear-gradient(#20244340,#0b162d60),url(/backgrounds/pixel-battle-night.png)}.shop-targets{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.shop-targets label{display:grid;gap:5px;color:var(--muted);font-size:.8rem}.shop-targets select{min-width:170px;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--panel2);color:var(--text)}.shop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.shop-card{display:flex;flex-direction:column;gap:12px}.shop-card .eyebrow{display:flex;align-items:center;gap:6px}.shop-card h2,.shop-card p{margin:0}.shop-card p{color:var(--muted);min-height:48px}.shop-card small{color:var(--muted)}.shop-card button{margin-top:auto}.dungeon-ascension .dungeon-card-art{background-image:linear-gradient(0deg,#192438 0%,transparent 55%),url(/backgrounds/pixel-battle-dawn.png)}.dungeon-skill .dungeon-card-art{background-image:linear-gradient(0deg,#192438 0%,transparent 55%),url(/backgrounds/pixel-battle-night.png)}.inventory-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,300px);gap:20px;align-items:start;margin-bottom:20px}.inventory-bag,.inventory-inspect{border:1px solid #796747;background:linear-gradient(145deg,#1c2a3d,#101b2b);box-shadow:0 18px 40px #0004,inset 0 1px #f4d99a1f;border-radius:12px}.inventory-bag{padding:18px;min-width:0}.inventory-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px;color:var(--muted);font-size:.76rem}.inventory-filters{display:flex;gap:5px;flex-wrap:wrap}.inventory-filters button{border-radius:5px;padding:7px 11px;background:#19283a;color:#b7c5cc;font-size:.75rem}.inventory-filters button.active{border-color:#d8b975;background:#463e38;color:#f5deaa}.inventory-slots{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.inventory-slot{aspect-ratio:1;min-width:0;position:relative;border:1px solid #586476;border-radius:5px;background:linear-gradient(145deg,#233348,#172439);box-shadow:inset 0 0 0 3px #111b2b88,inset 0 4px 12px #0005;overflow:hidden}.inventory-slot.empty{border-color:#36475c;background:linear-gradient(145deg,#1b2a3c,#132033);opacity:.73}.inventory-slot.empty:after{content:"";position:absolute;top:17%;right:17%;bottom:17%;left:17%;border:1px solid #71829612;transform:rotate(45deg)}.inventory-slot.filled{width:100%;padding:5px;display:grid;grid-template-rows:minmax(0,1fr) auto;justify-items:center;align-items:center;gap:1px;color:var(--item-accent);border-color:color-mix(in srgb,var(--item-accent) 57%,#455267);background:radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--item-accent) 17%,transparent),transparent 66%),linear-gradient(145deg,#2a374a,#172337)}.inventory-slot.filled:hover{transform:none;border-color:var(--item-accent);background:radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--item-accent) 28%,transparent),transparent 67%),#27384b}.inventory-slot.filled.selected{outline:2px solid var(--gold);outline-offset:-3px;box-shadow:0 0 15px color-mix(in srgb,var(--item-accent) 35%,transparent),inset 0 0 0 3px #1a2739}.inventory-slot-art{width:min(72%,72px);height:min(72%,72px);display:grid;place-items:center;min-height:0}.inventory-slot-art .item-sprite{filter:drop-shadow(0 3px 3px #0009)}.inventory-slot-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;line-height:1.2;font-weight:700;color:#e8e3d6}.inventory-stack,.inventory-equipped{position:absolute;background:#111c2bd9;border:1px solid #8191a5;border-radius:4px;color:#fff;font-weight:800;line-height:1;padding:3px 4px;font-size:.65rem}.inventory-stack{right:4px;top:4px}.inventory-equipped{left:4px;top:4px;color:#f0d18e;border-color:#b99556}.inventory-rune{position:relative;display:grid;place-items:center;width:100%;height:100%;color:var(--item-accent)}.inventory-rune b{position:absolute;bottom:4px;right:4px;display:grid;place-items:center;min-width:21px;height:21px;border-radius:50%;background:#111c2be8;border:1px solid var(--item-accent);font-size:.65rem;color:#fff}.inventory-inspect{padding:22px;min-height:350px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;position:sticky;top:20px}.inventory-inspect-art{width:118px;height:118px;align-self:center;display:grid;place-items:center;padding:18px;margin-bottom:14px;border:1px solid var(--item-accent);border-radius:10px;color:var(--item-accent);background:radial-gradient(circle,color-mix(in srgb,var(--item-accent) 20%,#223247),#172438 75%);box-shadow:0 0 24px color-mix(in srgb,var(--item-accent) 20%,transparent)}.inventory-inspect-art .inventory-rune svg{width:65px;height:65px}.inventory-inspect-art .inventory-rune b{bottom:0;right:0;min-width:26px;height:26px;font-size:.8rem}.inventory-inspect h2{margin:0;font-size:1.25rem;color:#f3e5bd}.inventory-inspect-count{margin:0;color:#c4d0d6;font-size:.82rem}.inventory-inspect-description{color:var(--muted);font-size:.85rem}.inventory-inspect-stats{width:100%;display:grid;gap:6px;margin:8px 0 14px}.inventory-inspect-stats div{display:flex;justify-content:space-between;border-bottom:1px solid #465269;padding:5px 0;color:#bdcbd3;text-transform:capitalize;font-size:.78rem}.inventory-inspect-stats strong{color:#f3d68d}.inventory-inspect>.primary{margin-top:auto;width:100%}.inventory-inspect-empty{margin:auto;text-align:center;color:var(--muted)}.inventory-inspect-empty svg{color:#70849a}.inventory-inspect-empty h2{margin:12px 0 5px}.inventory-inspect-empty p{font-size:.8rem}@media(max-width:1100px){.inventory-shell{grid-template-columns:minmax(0,1fr) 240px}.inventory-slots{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:800px){.inventory-shell{grid-template-columns:1fr}.inventory-inspect{position:static;min-height:0}.inventory-slots{grid-template-columns:repeat(6,minmax(0,1fr))}}@media(max-width:600px){.inventory-bag{padding:10px}.inventory-slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.inventory-slot-name{font-size:.58rem}.inventory-toolbar>span{width:100%}.inventory-inspect{padding:18px}}@media(max-width:600px){.inventory-slot.empty:nth-child(n+17){display:none}.inventory-toolbar>span{display:none}}.equipment-stage-slots{position:absolute;z-index:5;top:15px;right:0;bottom:108px;left:0;pointer-events:none}.equipment-stage-slot{position:absolute;pointer-events:auto;width:82px;height:78px;padding:5px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:2px solid #776545;border-radius:7px;background:linear-gradient(145deg,#27374bcf,#121e30eb);box-shadow:inset 0 0 0 2px #101b2bc9,0 5px 14px #0009;color:#d2c4a8;font:700 .57rem Cinzel,Georgia,serif;text-align:center;white-space:nowrap}.equipment-stage-slot:hover:not(:disabled){background:linear-gradient(145deg,#40516adf,#17263aeb)}.equipment-stage-slot.selected{border-color:#ffde93;box-shadow:inset 0 0 0 2px #f1d28a5c,0 0 16px #f0cc7b7d;color:#fff0c7}.equipment-stage-slot.filled{border-color:#ba9252}.equipment-stage-art{display:grid;place-items:center;width:46px;height:46px;color:#b3bfd0}.equipment-stage-art .item-sprite{filter:drop-shadow(0 3px 3px #000b)}.slot-head,.slot-legs,.slot-accessory1{left:15px}.slot-chest,.slot-feet,.slot-accessory2{right:15px}.slot-head,.slot-chest{top:17px}.slot-legs,.slot-feet{top:calc(50% - 39px)}.slot-accessory1,.slot-accessory2{bottom:16px}.character-gear{padding-top:0}.equipment-selected{display:flex;align-items:center;gap:12px;padding:10px;margin:8px 0;border:1px solid #8e744e;background:linear-gradient(100deg,#3d352d,#25242b)}.equipment-selected-art{display:grid;place-items:center;flex:none;width:62px;height:62px;padding:5px;border:1px solid #ae8d58;background:#1a2a3d;color:#cbb895}.equipment-selected strong,.equipment-selected small{display:block}.equipment-selected strong{margin:3px 0;color:#fff0c7;font:700 .85rem Cinzel,Georgia,serif}.equipment-selected small{color:#b9c7cc;font-size:.65rem;line-height:1.3}.equipment-slot-jump{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:9px 0 13px}.equipment-slot-jump button{min-width:0;min-height:26px;padding:4px 5px;border-radius:3px;font-size:.65rem;background:#263549;color:#c9d4d5}.equipment-slot-jump button.selected{border-color:#ddbb78;background:#5a422a;color:#ffe9ba}.equipment-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:7px}.equipment-choice{min-width:0;min-height:98px;padding:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:1px solid #6e614e;border-radius:4px;background:linear-gradient(#334051,#1d2939);text-align:center}.equipment-choice.selected{border-color:#f1d28c;background:linear-gradient(#5a4b39,#2f3035);box-shadow:inset 0 0 0 2px #e5bf754a}.equipment-choice-art{display:grid;place-items:center;width:42px;height:42px;font-size:1.8rem;color:#bca783}.equipment-choice strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f6e5c2;font-size:.66rem}.equipment-choice small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#b6c2c6;font-size:.58rem}.equipment-no-gear{margin:9px 0 0;color:#b8c5cc;font-size:.7rem}@media(max-width:680px){.equipment-stage-slots{top:6px;right:0;bottom:80px;left:0}.equipment-stage-slot{width:66px;height:67px;padding:3px;font-size:.48rem}.equipment-stage-art{width:39px;height:39px}.slot-head,.slot-legs,.slot-accessory1{left:9px}.slot-chest,.slot-feet,.slot-accessory2{right:9px}.slot-head,.slot-chest{top:15px}.slot-legs,.slot-feet{top:calc(50% - 33px)}.slot-accessory1,.slot-accessory2{bottom:8px}}@media(max-width:410px){.equipment-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.equipment-mode .stage-corner,.equipment-mode .stage-stars{display:none}.equipment-choice{min-height:70px;padding:3px}.equipment-choice-art{width:33px;height:33px;font-size:1.5rem}.equipment-choice strong{font-size:.61rem}.equipment-choice small{font-size:.54rem}.game-icon{display:block;object-fit:contain;flex:none}.resource-bar>div{grid-template-columns:24px auto}.resource-symbol .game-icon{width:23px;height:23px;filter:drop-shadow(0 1px 2px #0009)}.inventory-item-icon{width:100%;height:100%;filter:drop-shadow(0 3px 3px #0009)}.inventory-inspect-art .inventory-item-icon{width:100%;height:100%}.faction-lore-title{display:flex;align-items:center;gap:11px;margin-bottom:10px}.faction-lore-title .game-icon{width:48px;height:48px}.trial-mark-icon{width:20px;height:20px;margin-right:5px}.trial-faction-icon{width:72px;height:72px;filter:drop-shadow(0 3px 8px #0009)}.shop-currency-icon{width:19px;height:19px}.shop-product-icon{width:64px;height:64px;align-self:center;margin:2px 0;filter:drop-shadow(0 4px 8px #0008)}.dungeon-resource-icon{width:58px;height:58px;filter:drop-shadow(0 4px 8px #0009)}:root{--bg:#080e1b;--panel:#111c2c;--panel2:#182638;--line:#756443;--muted:#b6bfbd;--gold:#f3d084;--gold2:#a77e46;--text:#f1eddf}body{background:#080e1b;color:var(--text)}h1,h2,h3,.brand strong,.top-label strong,.eyebrow,.pill{font-family:Lucida Console,Courier New,monospace;font-weight:800;letter-spacing:.035em;text-shadow:2px 2px 0 #080d18}h1{line-height:1.13}h2{line-height:1.22}.eyebrow{font-size:.66rem;letter-spacing:.14em;color:#f4d58f}.app{background:#070d19}.sidebar{background:linear-gradient(180deg,#0b1424eb,#0b1424f8),url(/backgrounds/pixel-citadel.png) center/cover;border-right:3px solid #8e7245;box-shadow:inset -4px 0 #07101e}.brand{border-bottom:2px solid #7c6642}.brand-mark,.avatar{border-radius:3px;background:#24374a;border:2px solid #b69860;color:#f7d68d;box-shadow:3px 3px #07101b}.sidebar nav button{border-radius:2px;font-family:Lucida Console,Courier New,monospace;font-size:.78rem}.sidebar nav button.active,.sidebar nav button:hover{background:#263c52;border-left:4px solid #f2ce7b;box-shadow:inset 0 0 0 2px #111c2c;transform:none}.topbar{background:#111d2ef2;border-bottom:3px solid #776444;box-shadow:0 3px #09121f}.resource-bar>div{border:2px solid #625b4d;border-radius:2px;background:#17283a;box-shadow:inset 0 0 0 2px #0a1524}.page-heading{border-bottom:2px solid #8a7047;padding-bottom:16px}.page-heading h1{font-size:clamp(1.6rem,3vw,2.4rem);margin:8px 0}.panel,.inventory-bag,.inventory-inspect,.dungeon-card,.hero-banner,.summon-banner,.tower-hero{border:2px solid #90764b;border-radius:3px;box-shadow:inset 0 0 0 3px #0b1727,5px 5px #060b15}.panel,.inventory-bag,.inventory-inspect{background:linear-gradient(180deg,#1a2c40,#111e2e)}button,select,input{border-radius:2px}button{border:2px solid #796b55;background:#22354a;box-shadow:inset 0 0 0 2px #142336,2px 2px #080f1a}button:hover:not(:disabled){transform:translate(-1px,-1px);background:#2b455a;box-shadow:inset 0 0 0 2px #172b40,3px 3px #080f1a}button:active:not(:disabled){transform:translate(1px,1px);box-shadow:inset 0 0 0 2px #142336}button.primary,.primary{border:2px solid #ffe1a1;border-radius:2px;color:#182235;background:linear-gradient(180deg,#f5d891,#d39d55);box-shadow:inset 0 0 0 2px #b47f43,3px 3px #070e18;font-family:Lucida Console,Courier New,monospace;font-weight:900}button.primary:hover:not(:disabled),.primary:hover:not(:disabled){background:#ffe2a1;color:#172135;box-shadow:inset 0 0 0 2px #b47f43,4px 4px #070e18}.pill{border:2px solid #82704f;border-radius:2px;background:#28384a;color:#f6d894}.hero-banner{background:linear-gradient(90deg,#0a1425ef,#0a1425c6 36%,#0a142514 75%),url(/backgrounds/pixel-citadel.png) center/cover;min-height:250px}.hero-banner .banner-art{display:none}.summon-banner{background:linear-gradient(90deg,#0c1729ec,#0c1729ac 44%,#0c17292d),url(/backgrounds/pixel-citadel.png) center/cover}.tower-hero{background:linear-gradient(90deg,#0d1427d9,#0d142767 58%,#0d142723),url(/backgrounds/pixel-map-night.png) center/cover}.inventory-slot,.inventory-slot.empty,.inventory-slot.filled,.inventory-inspect-art,.equipment-stage-slot,.equipment-choice,.material-card,.story-entry,.faction-lore-grid>div,.shop-card{border-radius:2px}.inventory-slot,.equipment-stage-slot,.equipment-choice{box-shadow:inset 0 0 0 2px #0b1728,3px 3px #070d18}.inventory-slot.filled.selected{outline:3px solid #f0d083;outline-offset:-4px;box-shadow:inset 0 0 0 2px #172537}.arena{image-rendering:pixelated}.battle-shell{border:3px solid #9b7a4b;border-radius:3px;box-shadow:inset 0 0 0 4px #0d1828,0 12px #050b15}.dungeon-card-art{image-rendering:pixelated}.mobile-nav{background:#101d2d;border-top:3px solid #927448}.mobile-nav button{box-shadow:none}.campaign-heading{margin-bottom:20px}.campaign-chapter-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:20px}.campaign-chapter-tabs button{min-width:0;display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:12px;justify-content:start;text-align:left;padding:13px 16px;background:#17283b;border-color:#6d624e}.campaign-chapter-tabs button.active{border-color:#f4d28c;background:#304255;box-shadow:inset 0 0 0 2px #152437,3px 3px #080e1a}.campaign-chapter-tabs button>span{grid-row:1/3;font:900 1.5rem Lucida Console,Courier New,monospace;color:#e5bf78}.campaign-chapter-tabs button strong{font:800 .78rem Lucida Console,Courier New,monospace;color:#f3e4c2}.campaign-chapter-tabs button small{color:#b8c9d0;font-size:.68rem}.campaign-chapter{border:3px solid #987b4b;background:#0d1b2a;box-shadow:inset 0 0 0 3px #0a1422,6px 6px #050a14}.campaign-map-heading{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 18px;border-bottom:3px solid #755f3f;background:repeating-linear-gradient(90deg,#17283b 0,#17283b 8px,#192b3e 8px,#192b3e 16px)}.campaign-map-heading h2{margin:0;font-size:1.12rem;color:#f2dcad}.campaign-map-heading>span:last-child{margin-left:auto;color:#c2cbd0;font:700 .7rem Lucida Console,Courier New,monospace}.campaign-map-scroll{overflow-x:auto;overflow-y:hidden;background:#091522;scrollbar-color:#a58250 #0b1827}.campaign-map{width:100%;min-width:900px;max-width:1120px;aspect-ratio:1024/683;margin:auto;position:relative;isolation:isolate;background-position:center;background-size:100% 100%;image-rendering:pixelated}.campaign-map-1{background-image:url(/backgrounds/pixel-map-dawn.png)}.campaign-map-2{background-image:url(/backgrounds/pixel-map-tide.png)}.campaign-map-3{background-image:url(/backgrounds/pixel-map-night.png)}.campaign-map:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border:7px solid #0b1729aa;box-shadow:inset 0 0 0 2px #e8c88366}.campaign-route{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:visible}.campaign-route polyline{fill:none;stroke:#f7dc97;stroke-width:.55;stroke-dasharray:1.5 1.3;opacity:.8;filter:drop-shadow(0 2px 1px #09101d)}.map-stage{position:absolute;z-index:2;transform:translate(-50%,-50%);width:45px;height:45px;padding:0;border:3px solid #f4d589;border-radius:2px;background:#25354af2;color:#ffe5a6;box-shadow:inset 0 0 0 3px #111c2e,4px 4px #070d17;font:900 .87rem Lucida Console,Courier New,monospace}.map-stage:hover:not(:disabled),.map-stage:focus-visible{z-index:5;transform:translate(-50%,-50%) scale(1.1);background:#46536a;box-shadow:inset 0 0 0 3px #1b2b40,5px 5px #070d17}.map-stage.cleared{border-color:#9bdfa8;color:#d6f4cd;background:#1d433a}.map-stage.current{border-color:#fff1b1;color:#18212b;background:#f5ce76;box-shadow:inset 0 0 0 3px #a6743e,0 0 0 5px #f9d78577,5px 5px #070d17}.map-stage.locked{opacity:.74;filter:grayscale(.9);background:#1a2432;border-color:#76808b}.map-stage.boss{width:52px;height:52px;border-color:#ef9e78;color:#ffcb9f;background:#5b2931}.map-stage.boss.current{background:#eead71;color:#2b1a23}.map-stage-name{position:absolute;left:50%;top:calc(100% + 8px);transform:translate(-50%);width:max-content;max-width:124px;padding:4px 6px;white-space:normal;border:2px solid #ad8d5c;background:#0b1729ed;color:#fff0cb;font:800 .58rem/1.2 Lucida Console,Courier New,monospace;text-align:center;opacity:0;pointer-events:none;text-shadow:1px 1px #000}.map-stage.current .map-stage-name,.map-stage.boss .map-stage-name,.map-stage:hover .map-stage-name,.map-stage:focus-visible .map-stage-name{opacity:1}.campaign-map-compass{position:absolute;z-index:1;right:17px;bottom:14px;width:45px;height:45px;border:2px solid #e4c987;background:#0b1729d9;color:#f4d88e;display:grid;place-items:center;font-size:1.6rem;text-shadow:2px 2px #000}.campaign-map-compass small{position:absolute;top:1px;right:2px;font-size:.46rem}.campaign-map-footer{display:flex;align-items:center;gap:16px;padding:16px 20px;border-top:3px solid #755f3f;background:#142337}.campaign-map-status{min-width:118px;padding:6px 8px;border:2px solid #d4a95f;color:#ffdd9a;background:#453824;font:900 .65rem Lucida Console,Courier New,monospace;text-align:center}.campaign-map-status.locked{border-color:#728093;color:#c8d0d4;background:#283446}.campaign-map-status.complete{border-color:#78b793;color:#d6f2d8;background:#1c4539}.campaign-map-footer>div{display:grid;gap:4px;min-width:0}.campaign-map-footer strong{font:.9rem Lucida Console,Courier New,monospace;color:#f5e6be}.campaign-map-footer small{color:#bfccd1}.campaign-map-footer .primary{margin-left:auto;white-space:nowrap}@media(max-width:900px){.campaign-chapter-tabs{display:flex;overflow-x:auto;padding-bottom:4px}.campaign-chapter-tabs button{flex:0 0 210px}.campaign-map-footer{flex-wrap:wrap}.campaign-map-footer .primary{margin-left:0}}@media(max-width:600px){.campaign-map{min-width:760px}.campaign-map-heading>span:last-child{margin-left:0}.campaign-map-footer>div{flex:1 1 180px}.hero-banner .banner-art{display:none}}.campaign-heading{align-items:center;flex-wrap:wrap}.campaign-quick-start{white-space:nowrap;margin-left:auto}@media(max-width:600px){.campaign-quick-start{margin-left:0;width:100%}}main.page-heroes{background:linear-gradient(180deg,#08132186,#081321e8 55%,#081321fa),url(/backgrounds/pixel-heroes-hall.png) center top/cover fixed}main.page-summon{background-image:linear-gradient(180deg,#090f26a1,#090f26eb 60%,#090f26fb),url(/backgrounds/pixel-summon-portal.png)}main.page-tower{background-image:linear-gradient(180deg,#0b1025a1,#0b1025ed 60%,#0b1025fb),url(/backgrounds/pixel-tower-ascent.png)}main.page-inventory{background-image:linear-gradient(180deg,#0b1423ad,#0b1423ef 58%,#0b1423fb),url(/backgrounds/pixel-armory.png)}.character-stage{background:linear-gradient(180deg,#101d3699,#0814254d 45%,#071323e8),url(/backgrounds/pixel-heroes-hall.png) center/cover}.summon-banner{background:linear-gradient(90deg,#0b14220d,#0b142255 44%,#0b1422f2 72%),url(/backgrounds/pixel-summon-portal.png) left center/cover}.tower-hero{background:linear-gradient(90deg,#0b14220a,#0b14225c 43%,#0b1422ef 70%),url(/backgrounds/pixel-tower-ascent.png) left center/cover}.dungeon-item .dungeon-card-art{background-image:linear-gradient(0deg,#192438 0%,transparent 55%),url(/backgrounds/pixel-armory.png)}@media(max-width:800px){main.page-heroes,main.page-summon,main.page-tower,main.page-inventory{background-attachment:scroll}}@media(max-width:600px){.summon-banner{background:linear-gradient(180deg,#0b142222,#0b1422a5 48%,#0b1422f4 76%),url(/backgrounds/pixel-summon-portal.png) left center/cover}.tower-hero{background:linear-gradient(180deg,#0b14221c,#0b1422ad 48%,#0b1422f4 76%),url(/backgrounds/pixel-tower-ascent.png) left center/cover}}.result-panel{top:14px;right:14px;bottom:14px;left:14px;z-index:30;display:flex;flex-direction:column;gap:18px;padding:clamp(18px,2.5vw,30px);text-align:left;overflow:auto;border:2px solid #d4ad6a;border-radius:3px;background:#0a1729d9;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);box-shadow:inset 0 0 0 3px #172a3caf,0 22px 70px #000a}.result-panel-defeat{border-color:#b87872}.result-heading{text-align:center}.result-heading h2{margin:4px 0;font-size:clamp(2.5rem,5vw,4rem);letter-spacing:.08em;text-shadow:3px 4px 0 #06101b}.result-heading p{margin:0;color:#d0d7d7;font-size:.8rem}.result-section h3{margin:0 0 10px;color:#f2d38e;font-size:.78rem;letter-spacing:.14em;font-family:Lucida Console,Courier New,monospace}.result-roster{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:10px}.result-hero{position:relative;min-width:0;padding:13px 12px 11px;border:1px solid #718292;border-radius:2px;background:#122338df;box-shadow:inset 0 0 0 2px #0a1626,3px 3px #060c17;animation:result-unit-in .42s steps(6,end) both;animation-delay:calc(var(--entry-index) * .13s)}.result-hero.result-mvp{border-color:#f0c879;background:#273249e8}.result-section-enemy h3{color:#e9a6a0}.result-hero-enemy{border-color:#94646d;background:#251d30df}.result-hero-enemy .result-hero-name{color:#f3d7d7}.result-mvp-badge{position:absolute;top:7px;right:7px;display:inline-flex;align-items:center;gap:3px;padding:3px 5px;border:1px solid #e9c577;background:#372e1c;color:#ffe2a0;font:700 .55rem Lucida Console,Courier New,monospace}.result-hero-art{width:78px;height:78px;margin:0 auto 4px}.result-hero-art .hero-sprite{width:100%;height:100%}.result-hero-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f6e8c4;font-size:.83rem}.result-hero-state{display:block;margin-top:2px;color:#abbec8;font-size:.62rem}.result-hero-stats{display:grid;gap:4px;margin:11px 0 0;padding-top:9px;border-top:1px solid #526073}.result-hero-stats div{display:flex;align-items:baseline;justify-content:space-between;gap:5px}.result-hero-stats dt{color:#bdcbd1;font-size:.62rem}.result-hero-stats dd{margin:0;color:#fff0ca;font-size:.72rem;font-weight:800;font-variant-numeric:tabular-nums}.result-rewards{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:8px}.result-reward{display:flex;align-items:center;gap:10px;min-width:0;padding:9px 11px;border:1px solid #867551;border-radius:2px;background:#172a3ce8}.result-reward img{flex:none;width:38px;height:38px;object-fit:contain;image-rendering:pixelated}.result-reward span{display:grid;gap:2px;min-width:0}.result-reward strong{color:#ffe09a;font-size:1rem;font-variant-numeric:tabular-nums}.result-reward small{color:#d6ddda;font-size:.66rem;line-height:1.2;overflow-wrap:anywhere}.result-no-rewards{margin:0;color:#c1cbd1;font-size:.8rem}.result-actions{position:sticky;bottom:-1px;display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin-top:auto;padding:14px 0 2px;background:linear-gradient(transparent,#0a1729f0 26%)}.result-actions button{min-width:150px}@keyframes result-unit-in{0%{opacity:0;transform:translateY(13px) scale(.96)}to{opacity:1;transform:none}}@media(max-width:600px){.result-panel{top:5px;right:5px;bottom:5px;left:5px;padding:16px 13px;gap:15px}.result-roster{grid-template-columns:repeat(2,minmax(0,1fr))}.result-hero{padding:10px 8px}.result-hero-art{width:62px;height:62px}.result-hero-stats dt{font-size:.58rem}.result-actions button{min-width:0;flex:1 1 110px;padding:9px 5px;font-size:.72rem}}.battle-unit.fallen .unit-portrait,.battle-unit.fallen.struck .unit-portrait,.battle-unit.fallen.facing-left.struck .unit-portrait{animation:battle-unit-fall .65s steps(6,end) both}@keyframes battle-unit-fall{0%{transform:rotate(0) translateY(0)}to{transform:rotate(70deg) translateY(8px)}}.battle-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;overflow:auto;padding:22px;background:#050b16e8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.battle-preview-shell{width:min(1180px,100%);max-height:calc(100vh - 44px);overflow:auto;padding:clamp(18px,3vw,32px);border:2px solid #ab8853;border-radius:6px;background:radial-gradient(circle at 48% 0%,#36415d 0,#17263a 42%,#0d192b);box-shadow:inset 0 0 0 4px #101e30,0 24px 80px #000d}.battle-preview-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding-bottom:17px;border-bottom:1px solid #5c6471}.battle-preview-heading h2{margin:6px 0;color:#f8e9c7;font-size:clamp(1.5rem,3vw,2.3rem)}.battle-preview-close{flex:none;width:38px;height:38px;padding:0;background:#162338}.battle-preview-score{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;padding:22px 14px;text-align:center}.battle-preview-score>div{display:grid;gap:4px}.battle-preview-score>div>span{color:#b4c7d0;font-size:.7rem;font-weight:800;letter-spacing:.18em}.battle-preview-score strong{color:#ffe2a4;font-family:Cinzel,Georgia,serif;font-size:clamp(1.4rem,3vw,2.6rem);font-variant-numeric:tabular-nums}.battle-preview-score>div:last-child strong{color:#efabab}.battle-preview-score strong small{font-size:.42em;letter-spacing:.08em}.battle-preview-versus{display:grid;place-items:center;width:52px;height:52px;border:1px solid #ab8853;border-radius:50%;background:#18273b;color:#f6d590;font-family:Cinzel,Georgia,serif;font-weight:800}.battle-preview-arena{height:clamp(340px,48vh,520px);min-height:0;margin:0;border-color:#b29361}.battle-preview-fighter .unit-hud{height:43px}.battle-preview-fighter .unit-hud small{color:#f7e3ac;font-weight:800}.battle-preview-rule{margin:16px 0 0;padding:10px 13px;border:1px solid #806966;background:#342b35;color:#e9c8c5;font-size:.78rem}.battle-preview-rule strong{color:#ffcfb8}.battle-preview-rewards{margin-top:16px;padding:14px;border:1px solid #6d654f;background:#0c192bc9}.battle-preview-rewards h3{margin:0 0 11px;color:#f2d38e;font:700 .75rem Lucida Console,Courier New,monospace;letter-spacing:.14em}.battle-preview-rewards .result-rewards{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.battle-preview-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px}.battle-preview-entry-cost{color:#b6c3ce;font-size:.72rem}.battle-preview-footer>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;margin-left:auto}.battle-preview-footer button{min-height:45px;white-space:nowrap}@media(max-width:760px){.battle-preview-arena{height:clamp(310px,46vh,400px)}.battle-preview-footer{align-items:stretch;flex-direction:column}.battle-preview-footer>div{justify-content:stretch}.battle-preview-footer button{flex:1}}@media(max-width:480px){.battle-preview-overlay{padding:6px}.battle-preview-shell{max-height:calc(100vh - 12px);padding:14px}.battle-preview-score{gap:5px;padding:18px 0}.battle-preview-versus{width:36px;height:36px;font-size:.8rem}.battle-preview-arena{height:340px}.battle-preview-fighter{width:clamp(38px,11vw,52px)}.battle-preview-fighter .unit-hud{height:31px}}@media(max-width:650px){main.page-formation{height:auto;min-height:100dvh;overflow:visible}.page-formation .content,.page-formation .formation-layout,.page-formation .formation-board{overflow:visible}.page-formation .formation-layout,.page-formation .formation-board,.page-formation .formation-field{flex:none}.page-formation .formation-row{flex:none;min-height:74px}.page-formation .formation-roster{flex:none;min-height:128px}}.page-dungeons .content{max-width:1500px}.dungeon-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:11px}.dungeon-card{display:grid;grid-template-columns:150px minmax(0,1fr);min-height:150px;border-radius:12px}.dungeon-card-art{height:auto;min-height:100%;border-right:1px solid #716079;border-bottom:0}.dungeon-card-content{display:grid;grid-template-columns:minmax(175px,.8fr) minmax(220px,1.2fr) minmax(245px,1fr);align-items:center;gap:18px;padding:14px 18px}.dungeon-bar-title{display:flex;align-items:center;gap:12px;min-width:0}.dungeon-bar-title>div{min-width:0}.dungeon-bar-title .eyebrow{font-size:.58rem}.dungeon-bar-title h2{font-size:clamp(1rem,1.45vw,1.35rem);line-height:1.2}.dungeon-bar-controls{min-width:0;display:grid;gap:6px}.dungeon-card .dungeon-target{display:flex;align-items:center;gap:8px;margin:0;font-size:.68rem}.dungeon-card .dungeon-target select{padding:5px 9px;min-width:120px;max-width:220px}.dungeon-card .dungeon-reward{display:grid;gap:3px;border:0;padding:0;font-size:.73rem}.dungeon-card .dungeon-reward strong{text-align:left;line-height:1.3}.dungeon-bar-actions{display:grid;gap:8px}.dungeon-card .dungeon-entries{justify-content:flex-start;gap:7px;border:0;padding:0;font-size:.72rem}.dungeon-card .dungeon-entries small{margin-left:auto;color:#afbecb;font-variant-numeric:tabular-nums}.dungeon-card .dungeon-entry-pips{margin-left:0;gap:3px}.dungeon-card .dungeon-entry-pips i{width:10px;height:10px}.dungeon-buttons{display:flex;gap:7px}.dungeon-buttons button{flex:1;min-width:0;padding:8px 7px;font-size:.73rem}.dungeon-card-content button{width:auto}@media(max-width:1100px){.dungeon-grid{grid-template-columns:minmax(0,1fr)}.dungeon-card{grid-template-columns:110px minmax(0,1fr)}.dungeon-card-content{grid-template-columns:minmax(145px,.8fr) minmax(180px,1fr) minmax(200px,1fr)}}@media(max-width:750px){.dungeon-card{grid-template-columns:76px minmax(0,1fr)}.dungeon-card-art{height:auto}.dungeon-card-content{grid-template-columns:1fr;gap:8px;padding:10px}.dungeon-bar-title h2{font-size:1rem}.dungeon-bar-controls{grid-template-columns:1fr 1fr;align-items:center}.dungeon-bar-actions{grid-template-columns:1fr 1.3fr;align-items:center}.dungeon-card .dungeon-entries{flex-wrap:wrap}.dungeon-card .dungeon-entries small{display:none}.dungeon-buttons button{font-size:.68rem}}main.page-trials{height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden}.page-trials .topbar{flex:none}.page-trials .content{width:100%;max-width:1600px;min-height:0;flex:1;display:flex;flex-direction:column;overflow:hidden;padding-top:18px;padding-bottom:18px}.page-trials .page-heading{flex:none;margin-bottom:12px}.page-trials .page-heading p{font-size:.8rem}.page-trials .trial-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;flex:1;min-height:0}.page-trials .trial-card{min-width:0;min-height:0;gap:7px;padding:clamp(8px,1vw,16px);overflow:hidden}.page-trials .trial-card h2{font-size:clamp(.85rem,1.3vw,1.25rem)}.page-trials .trial-card p{font-size:clamp(.61rem,.72vw,.78rem);line-height:1.35}.page-trials .trial-card .eyebrow{font-size:.53rem}.page-trials .trial-card .trial-faction-icon{width:clamp(28px,3vw,45px);height:clamp(28px,3vw,45px)}.page-trials .trial-card button{width:100%;padding:8px 4px;font-size:.7rem}.page-trials .trial-card small{font-size:.62rem}@media(max-width:900px){.page-trials .trial-grid{overflow-x:auto;grid-template-columns:repeat(6,minmax(150px,1fr));padding-bottom:5px}.page-trials .trial-card p{font-size:.7rem}}.skill-manual-upgrade{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:9px;padding-top:8px;border-top:1px solid #516174}.skill-manual-upgrade span{flex:1 1 100%;color:#e8d39c;font-size:.7rem}.skill-manual-upgrade button{padding:5px 9px;font-size:.68rem}.skill-manual-upgrade small{color:#bdcbd4}.mastery-coming-soon{height:100%;align-content:center;justify-items:center;text-align:center;color:#edcf8d}.mastery-coming-soon p{max-width:280px}.character-roster-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;padding:2px}.character-roster-grid .roster-portrait{width:100%;min-width:0}.page-formation .formation-field.formation-battlefield{position:relative;display:block;flex:1;min-height:230px;overflow:hidden;border:1px solid #9d8158;border-radius:11px;background:linear-gradient(90deg,#14293c6b 0,#14293c6b 49.6%,#42292a50 50%,#42292a50),linear-gradient(#0c182766,#0c182755),url(/backgrounds/pixel-battle-dawn.png) center / cover;image-rendering:pixelated}.formation-battlefield:after{content:"";position:absolute;left:3%;right:3%;bottom:5%;height:24%;border:1px solid #e3d6a323;border-radius:50%;pointer-events:none}.field-side-label{position:absolute;top:8px;font-size:.58rem;letter-spacing:.15em;font-weight:800;color:#f0d697;text-shadow:0 2px 4px #000}.field-side-label.ally{left:7%}.field-side-label.opponent{right:7%}.field-center-line{position:absolute;left:50%;top:0;bottom:0;border-left:1px dashed #e2d4ad66}.field-enemy-marker{position:absolute;right:14%;top:74%;color:#f2c2b7;font-size:.65rem;text-shadow:0 1px 4px #000}.page-formation .formation-battlefield .formation-slot,.page-formation .formation-battlefield .formation-slot:hover:not(:disabled){position:absolute;width:clamp(47px,5.8vw,76px);height:auto;min-height:78px;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;justify-content:end;gap:0;padding:2px;border:0;background:transparent;border-radius:0;z-index:2;text-transform:capitalize;box-shadow:none}.page-formation .formation-battlefield .formation-slot.occupied,.page-formation .formation-battlefield .formation-slot.selected,.page-formation .formation-battlefield .formation-slot.drop-target{border:0;background:transparent;box-shadow:none}.page-formation .formation-battlefield .formation-slot:before{content:"";position:absolute;left:10%;right:10%;bottom:14px;height:18px;border-radius:50%;background:#e9c57750;box-shadow:0 0 16px #e9c577aa;opacity:0;pointer-events:none;transition:opacity .16s}.page-formation .formation-battlefield .formation-slot:hover:before,.page-formation .formation-battlefield .formation-slot.selected:before,.page-formation .formation-battlefield .formation-slot.drop-target:before,.page-formation .formation-battlefield .formation-slot:focus-visible:before{opacity:1}.page-formation .formation-battlefield .formation-slot:focus-visible{outline:0}.formation-field-sprite{position:relative;display:block;width:100%;height:clamp(48px,8vh,86px);filter:drop-shadow(0 6px 3px #000b)}.formation-field-sprite .hero-sprite{width:100%;height:100%;object-fit:contain}.page-formation .formation-battlefield .formation-slot strong{position:relative;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:transparent;padding:1px 3px;text-shadow:0 1px 4px #000,0 0 6px #000;font-size:.55rem}.page-formation .formation-battlefield .formation-slot small{display:none}.page-formation .formation-battlefield .formation-slot:not(.occupied){color:#d6d3bf;font-size:.57rem}.page-formation .formation-battlefield .formation-slot:not(.occupied) svg{width:15px;height:15px}@media(max-width:650px){.page-formation .formation-field.formation-battlefield{min-height:260px}.page-formation .formation-battlefield .formation-slot{width:48px;min-height:64px}.formation-field-sprite{height:48px}}.skill-current-effects{color:#e4d5aa!important;font-size:.7rem!important;line-height:1.4}
