@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800&family=Cinzel:wght@400;600;700;800&display=swap');
:root{--bg:#090b17;--panel:#121629;--panel2:#1a2037;--line:#30344c;--gold:#efcf8b;--cream:#f5e8d2;--muted:#999eb6;--violet:#a58eff;--cyan:#92e5f2;--red:#e77f87;--green:#8cddb0;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(ellipse 80% 50% at 50% -22%,#322b5c 0,transparent 75%),#090b17;color:var(--cream);font:400 13px/1.6 'Be Vietnam Pro',system-ui,sans-serif;overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:3px}::selection{background:#9882ed;color:white}[hidden]{display:none!important}.ambient{position:fixed;z-index:-1;pointer-events:none;width:60vw;height:60vw;border-radius:50%;filter:blur(90px);opacity:.18}.ambient-one{background:#49389e;left:-40vw;top:18vh}.ambient-two{background:#153f6a;right:-45vw;bottom:-45vh}
.topbar{height:84px;padding:0 max(3vw,24px);display:flex;gap:35px;align-items:center;border-bottom:1px solid #ffffff14;background:#0c0e1be5;backdrop-filter:blur(20px);position:sticky;top:0;z-index:30}.brand{display:flex;gap:13px;align-items:center;min-width:245px}.brand-sigil{width:43px;height:43px;display:grid;place-items:center;background:linear-gradient(145deg,#241b43,#181525);border:1px solid #e9c9856e;box-shadow:0 0 0 5px #efcf8b09,0 0 28px #ccb0762b;transform:rotate(45deg);color:#eed593;font:28px Cinzel,serif}.brand-sigil::first-letter{transform:rotate(-45deg)}.brand strong{display:block;font:700 20px/1.15 Cinzel,Georgia,serif;letter-spacing:1.6px;white-space:nowrap}.brand em{font-style:normal;color:var(--gold)}.brand small{font-size:8px;color:#80849d;letter-spacing:3px}.topnav{display:flex;gap:9px;margin-left:auto}.nav-btn{background:transparent;border:1px solid transparent;color:#8f94ae;border-radius:9px;padding:12px 14px;white-space:nowrap;font-size:12px;transition:.2s}.nav-btn span{font-size:15px;margin-right:7px}.nav-btn:hover{color:white;background:#ffffff08}.nav-btn.active{border-color:#bc9f6038;background:#c9a96f12;color:#f5d895}.header-right{display:flex;gap:12px;align-items:center;margin-left:auto}.wallet{border:1px solid #e4c88030;background:#181825;padding:7px 14px;border-radius:10px;display:grid;grid-template-columns:auto auto;column-gap:9px;min-width:125px;align-items:center}.wallet .shard-icon{grid-row:span 2}.wallet strong{font-size:13px;font-weight:700;line-height:1.25;color:#fff0c5}.wallet small{font-size:8px;color:#aaa4b3;line-height:1.25}.shard-icon{color:#bd9aff;text-shadow:0 0 12px #9764ff}.icon-btn{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;border:1px solid #4f4b66;background:#1a1c2f;color:var(--gold);font-size:17px}
.shell{max-width:1510px;margin:0 auto;padding:42px clamp(17px,3vw,46px) 80px}.view{display:none;animation:appear .25s ease}.view.active{display:block}@keyframes appear{from{opacity:.4;transform:translateY(7px)}to{opacity:1;transform:none}}.page-intro{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:2px 0 27px}.kicker,.section-eyebrow,.side-eyebrow{color:var(--gold);letter-spacing:3px;font-size:9px;font-weight:800}.kicker{display:flex;align-items:center;gap:11px}.kicker-line{width:21px;height:1px;background:var(--gold)}h1,h2,h3,p{margin-top:0}h1{font:700 clamp(27px,3.1vw,43px)/1.15 Cinzel,Georgia,serif;letter-spacing:.2px;margin:14px 0 10px}h1 i,h2 i{font-style:normal;color:var(--gold)}.page-intro p{color:#9da0b9;font-size:12px;margin:0}.intro-tools{display:flex;align-items:center;gap:10px;margin-bottom:5px}.mode-pill,.stage-pill{border:1px solid #4b4367;background:#161729;border-radius:6px;padding:8px 12px;color:#c2b9ce;font-size:10px;letter-spacing:1px;white-space:nowrap}.mode-pill{color:#98d9be}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#8be7b7;box-shadow:0 0 10px #65e0a8;margin-right:6px}.stage-pill b{color:var(--gold);margin-left:6px}
.battle-layout{display:grid;grid-template-columns:minmax(0,1fr) 277px;gap:18px}.arena-panel{position:relative;isolation:isolate;overflow:hidden;min-height:550px;border:1px solid #554969;border-radius:14px;background:radial-gradient(ellipse 50% 40% at 50% 48%,#44315e79,transparent 90%),radial-gradient(ellipse 75% 50% at 50% -15%,#241c46,transparent 100%),linear-gradient(180deg,#13152c,#171829 52%,#10162b);box-shadow:inset 0 0 90px #05061377,0 25px 60px #0005}.arena-panel:before{content:'';position:absolute;inset:0;z-index:-1;opacity:.28;background-image:linear-gradient(90deg,transparent 49.8%,#e3b76c1a 50%,transparent 50.2%),repeating-linear-gradient(0deg,transparent 0 39px,#e7dcff08 40px 41px)}.arena-panel:after{content:'';position:absolute;left:50%;top:49%;width:58%;height:60%;transform:translate(-50%,-50%) rotate(45deg);border:1px solid #ae91d321;pointer-events:none;border-radius:25px;z-index:-1;box-shadow:0 0 0 50px #ffffff02,0 0 0 100px #ffffff01}.arena-stars{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.4;background-image:radial-gradient(#e9dcfc 1px,transparent 1.5px),radial-gradient(#b0a1e8 1px,transparent 1.5px);background-size:84px 89px,139px 141px;background-position:17px 4px,45px 68px}
.combat-top,.combat-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:21px 26px}.hero-unit{display:flex;align-items:center;gap:13px}.hero-portrait{width:60px;height:60px;display:grid;place-items:center;border:2px solid #a59cbe;border-radius:50%;font:38px Cinzel,serif;box-shadow:inset 0 0 20px #090819,0 0 20px #4f428744}.enemy-portrait{background:radial-gradient(circle,#824559,#2a192f 75%);color:#f5b5b7;border-color:#8d5665}.player-portrait{background:radial-gradient(circle,#7564b2,#191d3c 75%);color:#ffe2a0;border-color:#ba9e67}.hero-caption{color:#a3a2be;font-size:8px;font-weight:800;letter-spacing:1.3px}.hero-details strong{display:block;font:700 15px Cinzel,serif;margin:2px 0}.hero-details small{font-size:10px;color:#ccc2cc}.hero-details small b{color:#fbefea}.life-bar{height:6px;width:170px;max-width:34vw;background:#36303d;border:1px solid #ffffff20;border-radius:8px;overflow:hidden;margin:7px 0 1px}.life-bar span{display:block;height:100%;background:linear-gradient(90deg,#bd5572,#f58b8b);width:100%;transition:width .4s}.player .life-bar span{background:linear-gradient(90deg,#45b9ab,#a7e4a6)}.turn-indicator{text-align:center;align-self:flex-start;border:1px solid #64516b;background:#161529e8;padding:7px 12px;min-width:125px;border-radius:5px}.turn-indicator span{display:block;font-size:9px;color:#bbb0cb;letter-spacing:2px}.turn-indicator span b{color:white}.turn-indicator strong{display:block;font-size:9px;color:var(--gold);letter-spacing:.6px;margin-top:2px}.energy-bubble{width:91px;height:69px;border:1px solid #6e5ba4;background:radial-gradient(circle,#37325e,#17182b);border-radius:9px;text-align:center;padding:8px;box-shadow:0 0 25px #806ae929}.energy-bubble small{display:block;color:#c1b2ec;font-size:8px;letter-spacing:.8px}.energy-bubble div{font:700 24px Cinzel,serif;color:#f3e3ff;line-height:1.4}.energy-bubble span{font-size:11px;color:#9593bd}
.board-row{display:grid;grid-template-columns:repeat(3,minmax(0,150px));justify-content:center;gap:17px;min-height:146px;padding:0 22px}.board-slot{position:relative;min-width:0;min-height:143px;background:linear-gradient(160deg,#4037584a,#18192c75);border:1px dashed #7569889c;border-radius:10px;display:flex;align-items:center;justify-content:center;isolation:isolate;overflow:hidden;color:#988bac;transition:.2s}.board-slot:before{content:'✧';font:45px Cinzel,serif;opacity:.15;position:absolute}.board-slot:after{content:'';width:55%;height:75%;border-radius:50%;border:1px solid #9c83b634;transform:rotate(25deg);position:absolute;z-index:-1}.board-slot.empty span{font-size:10px;z-index:2;text-align:center;letter-spacing:1px}.board-slot.placeable{border-color:var(--gold);background:#9d814e22;box-shadow:0 0 0 3px #edd18e18;cursor:pointer}.board-slot.placeable:hover{transform:translateY(-3px);background:#b5a07430}.board-slot.occupied{border:1px solid #696081;padding:0}.slot-card{position:relative;z-index:2;height:100%;width:100%;display:flex;flex-direction:column;background:linear-gradient(150deg,#22233c,#101525);overflow:hidden;text-align:center}.slot-art{position:relative;flex:1;min-height:0;overflow:hidden;background:radial-gradient(circle at 50% 45%,var(--element-glow),transparent 69%),linear-gradient(140deg,#131b34,#17152b)}.slot-art svg{width:100%;height:100%;min-height:91px;display:block}.slot-name{position:absolute;bottom:0;left:0;right:0;padding:3px 4px;background:linear-gradient(transparent,#070913ef);color:white;text-shadow:0 1px 4px #000;font-size:10px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slot-stats{display:flex;justify-content:space-between;gap:4px;padding:4px 7px;font:700 12px Cinzel,serif;background:#0c1020}.slot-stats b:first-child{color:#f6cf8f}.slot-stats b:last-child{color:#a7eec2}.board-slot.defeated{animation:shatter .35s ease}@keyframes shatter{to{opacity:0;transform:scale(.85)}}.middle-line{height:46px;display:flex;align-items:center;gap:12px;justify-content:center;padding:0 20px}.middle-line span{height:1px;width:20%;background:linear-gradient(90deg,transparent,#a58b865e)}.middle-line span:last-child{transform:rotate(180deg)}.middle-line strong{font:700 9px Cinzel,serif;letter-spacing:1px;color:#aea0bb;text-align:center}.arena-result{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:15;background:#080a17dd;backdrop-filter:blur(8px);text-align:center;padding:20px}.arena-result h2{font:700 clamp(24px,4vw,42px) Cinzel,serif;color:var(--gold);margin:12px 0}.arena-result p{color:#c1bcd0;max-width:360px}.arena-result button{width:200px}
.battle-side{border:1px solid #45405a;border-radius:13px;background:linear-gradient(160deg,#1c1c32,#121524);padding:24px 20px;display:flex;flex-direction:column}.battle-side h2{font:700 24px/1.2 Cinzel,serif;margin:9px 0 19px}.side-divider{height:1px;background:linear-gradient(90deg,#927b5f,transparent);margin-bottom:17px}.battle-stat{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #ffffff0e;padding:11px 0;color:#a4a5be;font-size:11px}.battle-stat i{font-style:normal;color:var(--gold);font-size:16px;margin-right:7px}.battle-stat b{color:#e7e3f0}.tip-box{display:flex;gap:10px;margin:20px 0 13px;background:#232039;border:1px solid #5c4f70;border-radius:9px;padding:11px}.tip-star{color:#d8c18d;font-size:19px}.tip-box p{color:#b9b2ce;font-size:10px;line-height:1.7;margin:0}.primary-button,.outline-button{border-radius:8px;padding:13px 16px;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;transition:.18s}.primary-button{background:linear-gradient(100deg,#e5cc98,#f5dea6 58%,#c1a26b);color:#201927;border:1px solid #ffe8aa;box-shadow:0 7px 22px #c5a86d22}.primary-button:not(:disabled):hover{filter:brightness(1.1);transform:translateY(-2px)}.outline-button{justify-content:center;border:1px solid #a795c0;color:#ead8ff;background:#796ca31c}.outline-button:hover{background:#a898be31}.subtle-button{border:0;background:transparent;color:#aaa0ba;font-size:10px;padding:12px}.subtle-button:hover{color:var(--gold)}.event-log{border-top:1px solid #ffffff16;margin-top:auto;padding-top:18px}.log-title{font-weight:800;font-size:9px;letter-spacing:2px;color:#8f91af;margin-bottom:9px}#battle-log{max-height:115px;overflow-y:auto;font-size:10px;color:#aba9bc;display:flex;flex-direction:column;gap:7px}#battle-log div{border-left:2px solid #74608a;padding-left:8px}#battle-log div:first-child{color:#e4dbc8}
.hand-panel{margin-top:18px;padding:20px 24px 28px;border:1px solid #3f3d5a;border-radius:12px;background:linear-gradient(130deg,#141629,#111323)}.hand-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:17px}.hand-heading h2{font:700 20px Cinzel,serif;margin:3px 0 0}.hand-heading h2 small{font:400 10px 'Be Vietnam Pro',sans-serif;color:#a09eb8;margin-left:8px}.hand-heading p{font-size:10px;color:#a7a1b6;margin:0}.card-hand{display:flex;justify-content:center;gap:13px;overflow-x:auto;padding:3px 2px 12px;min-height:249px;scrollbar-color:#5d5374 transparent}.game-card{position:relative;flex:0 0 150px;height:235px;padding:6px;border:1px solid #ad956f;background:linear-gradient(145deg,#766850,#241f33 12%,#131625 92%,#978461);border-radius:10px;box-shadow:0 7px 16px #0006;transition:transform .18s,box-shadow .18s;min-width:0;color:var(--cream);text-align:left}.game-card:before{content:'';inset:3px;position:absolute;border:1px solid #d8bd7b57;border-radius:7px;pointer-events:none}.game-card:not(:disabled):hover{transform:translateY(-8px);box-shadow:0 15px 30px #0009}.game-card.selected{transform:translateY(-12px)!important;box-shadow:0 0 0 2px #f5d898,0 10px 35px #dabb7a38}.game-card.unaffordable{opacity:.55}.card-topline{height:26px;padding:1px 3px 0;display:flex;justify-content:space-between;gap:3px;align-items:center}.card-topline .cost-orb{display:grid;place-items:center;border-radius:50%;background:linear-gradient(160deg,#8478da,#40367f);border:1px solid #c7baff;color:white;width:23px;height:23px;font:700 13px Cinzel,serif}.card-topline .card-rarity{font:700 9px Cinzel,serif;color:#f2dfad;letter-spacing:1px}.card-illustration{height:132px;position:relative;overflow:hidden;border:1px solid #796687;border-radius:5px;background:radial-gradient(circle at 50% 50%,var(--element-glow),transparent 72%),linear-gradient(145deg,#292443,#11182d)}.card-illustration svg{display:block;width:100%;height:100%}.card-illustration:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 24px #080a1ad9;pointer-events:none}.card-name{font:700 12px/1.2 Cinzel,'Be Vietnam Pro',serif;text-align:center;padding:8px 1px 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-desc{text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#ab9fac;font-size:8px;padding:0 3px}.card-foot{position:absolute;bottom:7px;left:12px;right:12px;display:flex;justify-content:space-between;align-items:center;color:#e7e0da;font:700 14px Cinzel,serif}.card-foot .atk{color:#f2c58b}.card-foot .hp{color:#99e6bb}.game-card.rank-SSR,.game-card.rank-SSS,.game-card.rank-UR,.game-card.rank-USR,.game-card.rank-USR\+,.game-card.rank-X{border-color:#e9c178}.game-card.rank-R,.game-card.rank-A{border-color:#667da1}
.deck-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:25px}.deck-summary{padding:24px;border:1px solid #534769;border-radius:13px;background:linear-gradient(155deg,#25213b,#121526);align-self:start;position:sticky;top:105px}.deck-summary h2,.summon-controls h2{font:700 25px Cinzel,serif;margin:10px 0}.deck-summary p,.summon-controls p{color:#a6a2b9;font-size:11px}.deck-chips{display:flex;flex-direction:column;gap:6px;max-height:380px;overflow-y:auto;margin:22px 0}.deck-chip{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border:1px solid #42405a;border-radius:6px;background:#0d1020;font-size:11px}.deck-chip span{color:#ddcfdf}.deck-chip b{color:var(--gold);font-size:9px}.deck-summary .primary-button{margin-top:15px}.collection-tools{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:0 0 17px}.collection-tools h2{font:700 22px Cinzel,serif;margin:0}.collection-tools small{color:#959bb2}.collection-tools input,.filter-bar input,.filter-bar select{background:#18192d;color:white;border:1px solid #4e475f;border-radius:7px;padding:10px 12px;font-size:11px;min-width:170px}.mini-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:13px}.mini-card-grid .game-card{width:100%;height:224px;flex-basis:auto}.deck-card-wrap{position:relative}.deck-toggle{width:100%;margin-top:7px;border:1px solid #726080;background:#282139;color:#e3d5ed;border-radius:6px;padding:7px;font-size:10px}.deck-toggle.in-deck{background:#675634;color:#ffe9b5;border-color:#b79755}.mini-card-grid .game-card{pointer-events:none}
.summon-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:22px}.summon-banner{min-height:555px;border:1px solid #8a6f73;border-radius:14px;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 52% 42%,#b5a1ef75,transparent 16%),radial-gradient(circle at 47% 44%,#68509c 0,#2b244d 40%,#14132b 80%),#171325}.summon-banner:before{content:'';position:absolute;inset:0;z-index:-1;background-image:radial-gradient(#ffe3bc 1px,transparent 1px),radial-gradient(#9a9fc8 1px,transparent 1px);background-size:64px 71px,125px 137px;opacity:.55}.summon-ring{position:absolute;left:50%;top:41%;border:1px solid #e4c78591;border-radius:50%;width:330px;height:330px;transform:translate(-50%,-50%) rotate(-23deg);box-shadow:0 0 85px #be9ce832,inset 0 0 65px #b4a3eb15}.summon-ring:before{content:'';position:absolute;inset:17px;border:1px dashed #c7acbf8a;border-radius:50%}.summon-ring.two{width:240px;height:240px;transform:translate(-50%,-50%) rotate(30deg);border-style:dashed;border-color:#a49dffa3}.summon-core{position:absolute;left:50%;top:41%;transform:translate(-50%,-50%);font:150px Cinzel,serif;color:#faf0e1;text-shadow:0 0 25px #d3c0ff,0 0 90px #b896ff;animation:levitate 5s ease-in-out infinite}@keyframes levitate{50%{transform:translate(-50%,-54%)}}.summon-copy{position:absolute;bottom:32px;left:35px;display:flex;flex-direction:column;gap:9px}.summon-copy small{color:#e1c99d;letter-spacing:3px;font-size:9px}.summon-copy strong{font:700 43px/1.15 Cinzel,serif;text-shadow:0 4px 13px #000}.summon-copy span{color:#aca3cb;font-size:12px}.summon-controls{border:1px solid #4e4763;border-radius:13px;background:linear-gradient(160deg,#202036,#111522);padding:30px 26px;align-self:start}.summon-controls>p{margin-bottom:24px}.cost-line{display:grid;grid-template-columns:1fr 1fr;border:1px solid #484153;border-radius:9px;background:#111427;margin-bottom:19px}.cost-line>div{padding:16px}.cost-line>div+div{border-left:1px solid #484153}.cost-line small{color:#a4a0b6;display:block;font-size:9px;letter-spacing:1px}.cost-line strong{display:block;font:700 21px Cinzel,serif;color:#ebd7ae;margin-top:8px}.summon-controls .primary-button,.summon-controls .outline-button{margin:11px 0;justify-content:center}.summon-result{margin-top:18px;min-height:90px;padding:14px;border:1px solid #4a415a;border-radius:8px;background:#151527;text-align:center;display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}.summon-result>span{color:var(--gold);font-size:29px}.summon-result p{margin:0}.summoned-list{display:flex;gap:7px;flex-wrap:wrap;justify-content:center}.summoned-name{padding:5px 8px;background:#29233c;border:1px solid #746388;border-radius:5px;color:#f0deb2;font-size:10px}.local-note{display:block;font-size:9px;color:#8888a5;margin-top:17px;line-height:1.8}
.filter-bar{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.filter-bar input{flex:1;min-width:200px}.collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:16px}.collection-tile{background:#15192b;border:1px solid #3c3a52;border-radius:10px;overflow:hidden;min-width:0;transition:.18s}.collection-tile:hover{transform:translateY(-3px);border-color:#947e9c}.tile-art{height:142px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 50%,var(--element-glow),transparent 75%),linear-gradient(140deg,#2d2541,#101a2c)}.tile-art svg{height:100%;width:100%}.tile-rank{position:absolute;top:9px;right:9px;padding:3px 8px;border:1px solid #e6cc907a;border-radius:4px;background:#131327cf;color:#ebd399;font:700 10px Cinzel,serif}.tile-info{padding:12px}.tile-info strong{display:block;color:#f5e7ce;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tile-info small{display:block;color:#9598b5;font-size:9px;min-height:30px}.tile-state{display:inline-block;font-size:9px;color:#82dab9;border:1px solid #5caa886a;padding:2px 7px;border-radius:5px;margin-top:8px}.tile-state.locked{color:#9292a5;border-color:#575768}.collection-tile.locked .tile-art{filter:grayscale(.65) brightness(.55)}
.mobile-nav{display:none}.toast{position:fixed;left:50%;bottom:30px;transform:translate(-50%,20px);z-index:80;opacity:0;pointer-events:none;border:1px solid #b8a16d;border-radius:8px;padding:13px 18px;background:#201d30;color:#f5e8cd;box-shadow:0 20px 40px #0009;font-size:11px;text-align:center;max-width:90vw;transition:.22s}.toast.show{opacity:1;transform:translate(-50%,0)}dialog{width:min(510px,calc(100vw - 28px));background:#18192d;color:var(--cream);border:1px solid #9a815e;border-radius:13px;box-shadow:0 30px 90px #000c;padding:25px}dialog::backdrop{background:#050611c9;backdrop-filter:blur(5px)}.dialog-head{display:flex;justify-content:space-between;align-items:start}.dialog-head h2{font:700 25px Cinzel,serif;margin:8px 0}.dialog-head button{font-size:25px}dialog ol{padding-left:19px;color:#c7c1d2;line-height:2;font-size:12px}dialog li{padding-left:3px;margin-bottom:4px}dialog p{color:#a49ab8;font-size:11px;line-height:1.8}
@media(max-width:1250px){.topbar{gap:15px}.brand{min-width:210px}.brand strong{font-size:17px}.nav-btn{padding:10px}.battle-layout{grid-template-columns:minmax(0,1fr) 235px}.battle-side{padding:20px 15px}.board-row{grid-template-columns:repeat(3,minmax(0,135px))}}
@media(max-width:950px){.topnav{display:none}.topbar{height:70px}.shell{padding-top:26px;padding-bottom:100px}.battle-layout{grid-template-columns:1fr}.battle-side{display:grid;grid-template-columns:repeat(3,1fr);align-items:start;gap:12px}.battle-side .section-eyebrow,.battle-side h2,.battle-side .side-divider,.battle-side .event-log{display:none}.battle-side .battle-stat{padding:5px}.battle-side .tip-box{grid-column:span 3;margin:0}.battle-side .primary-button{grid-column:span 2}.battle-side .subtle-button{grid-column:span 1}.deck-layout{grid-template-columns:250px minmax(0,1fr)}.summon-layout{grid-template-columns:1fr 1fr}.summon-banner{min-height:450px}.summon-core{font-size:120px}.summon-ring{width:250px;height:250px}.summon-ring.two{width:190px;height:190px}.summon-copy strong{font-size:31px}.mobile-nav{display:flex;position:fixed;z-index:40;left:0;bottom:0;right:0;height:calc(65px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#0d1020f5;backdrop-filter:blur(15px);border-top:1px solid #423952;justify-content:space-around}.mobile-tab{flex:1;border:none;background:transparent;color:#8e8ea9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:10px}.mobile-tab b{font-size:22px;line-height:1.1;font-weight:400}.mobile-tab.active{color:var(--gold)}.toast{bottom:88px}}
@media(max-width:650px){.topbar{padding:0 17px}.brand{min-width:0;gap:11px}.brand-sigil{width:33px;height:33px;font-size:23px}.brand strong{font-size:16px}.brand small{font-size:6px;letter-spacing:2px}.wallet{padding:7px 10px;min-width:94px}.wallet small{font-size:7px}.header-right{gap:8px}.header-right .icon-btn{width:29px;height:29px}.shell{padding:23px 12px 95px}.page-intro{display:block;margin-bottom:20px}.page-intro h1{font-size:29px}.page-intro p{font-size:10px;line-height:1.8}.intro-tools{margin-top:15px}.battle-layout{gap:12px}.arena-panel{min-height:0;border-radius:9px}.combat-top,.combat-bottom{padding:13px 10px}.hero-portrait{width:41px;height:41px;font-size:26px}.hero-unit{gap:8px}.hero-details strong{font-size:11px}.hero-caption{font-size:6px;letter-spacing:.5px}.hero-details small{font-size:8px}.life-bar{width:128px;margin:4px 0 0}.turn-indicator{min-width:90px;padding:4px 5px}.turn-indicator span,.turn-indicator strong{font-size:7px}.energy-bubble{width:69px;height:58px;padding:5px}.energy-bubble small{font-size:6px}.energy-bubble div{font-size:22px}.board-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:0 9px;min-height:126px}.board-slot{min-height:126px;border-radius:7px}.board-slot.empty span{font-size:8px;padding:5px}.slot-art svg{min-height:80px}.slot-stats{padding:2px 6px;font-size:10px}.slot-name{font-size:8px}.middle-line{height:37px}.middle-line strong{font-size:7px}.battle-side{grid-template-columns:repeat(3,minmax(0,1fr));padding:12px 9px;gap:7px}.battle-stat{font-size:9px;flex-wrap:wrap}.battle-stat i{font-size:11px;margin-right:2px}.battle-side .tip-box{padding:9px}.battle-side .primary-button{padding:10px 10px;font-size:11px}.battle-side .subtle-button{font-size:9px;padding:9px 0}.hand-panel{margin-top:11px;padding:14px 8px 16px}.hand-heading{padding:0 5px}.hand-heading h2{font-size:16px}.hand-heading p{font-size:9px}.card-hand{justify-content:flex-start;min-height:218px;gap:9px}.game-card{flex-basis:134px;height:211px;padding:5px}.card-illustration{height:115px}.card-topline{height:23px}.card-topline .cost-orb{width:20px;height:20px}.card-name{font-size:10px}.card-desc{font-size:7px}.card-foot{font-size:12px;bottom:6px}.deck-layout{display:flex;flex-direction:column;gap:17px}.deck-summary{position:static;padding:17px}.deck-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:170px;gap:4px}.deck-chip{font-size:9px;padding:5px}.deck-chip b{font-size:8px}.collection-tools{align-items:stretch;flex-direction:column}.collection-tools input{width:100%}.mini-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.mini-card-grid .game-card{height:211px}.summon-layout{grid-template-columns:1fr}.summon-banner{min-height:310px}.summon-ring{width:230px;height:230px;top:43%}.summon-ring.two{width:170px;height:170px;top:43%}.summon-core{font-size:110px;top:43%}.summon-copy{left:18px;bottom:15px;gap:4px}.summon-copy strong{font-size:21px}.summon-copy span{font-size:9px}.summon-controls{padding:21px 17px}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tile-art{height:126px}.tile-info{padding:9px}.tile-info strong{font-size:10px}.tile-info small{font-size:8px}.filter-bar{gap:6px}.filter-bar select{flex:1;min-width:0;font-size:10px}.toast{width:calc(100vw - 40px)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
