:root{color-scheme:dark;--bg-0:#070514;--bg-1:#0e0b24;--bg-2:#171435;--ink:#e8e0ff;--ink-dim:#9b8fc4;--muted:#5c5280;--line:rgba(140,100,240,0.18);--teal:#a78bfa;--teal-strong:#7c3aed;--teal-dim:rgba(167,139,250,0.4);--teal-pale:rgba(167,139,250,0.1);--pink:#f472b6;--pink-pale:rgba(244,114,182,0.15);--red:#fb7185;--red-pale:rgba(251,113,133,0.15);--gold:#fbbf24;--panel-bg:rgba(14,10,38,0.78);--panel-strong:rgba(20,15,55,0.94);--panel-border:rgba(140,100,240,0.22);--panel-blur:20px;--shadow:0 12px 48px rgba(90,50,200,0.35);--shadow-sm:0 4px 18px rgba(90,50,200,0.22)}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:radial-gradient(ellipse 120% 70% at 50% -5%,#2d1b69 0,#160f3a 28%,#0a0618 60%,#050311 100%);color:var(--ink);font-family:Hiragino Kaku Gothic ProN,Yu Gothic,-apple-system,Segoe UI,sans-serif;font-feature-settings:"palt";letter-spacing:.01em;overflow-x:hidden}.bgFx{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.bgGlow{position:absolute;width:64vmax;height:64vmax;border-radius:50%;filter:blur(140px);opacity:.28;animation:floatGlow 22s ease-in-out infinite alternate}.bgGlow--cyan{top:-22vmax;left:-14vmax;background:radial-gradient(circle,rgba(120,80,240,.35) 0,rgba(60,30,140,.2) 45%,transparent 70%)}.bgGlow--magenta{bottom:-22vmax;right:-14vmax;background:radial-gradient(circle,rgba(180,80,200,.25) 0,rgba(80,40,160,.15) 45%,transparent 70%);animation-delay:-11s}.bgGrid{display:none}@keyframes floatGlow{0%{transform:translate(0) scale(1)}to{transform:translate(5vmin,7vmin) scale(1.1)}}.bgStars{display:block;position:absolute;inset:0;background-image:radial-gradient(1px 1px at 15% 25%,rgba(255,255,255,.7) 0,transparent 100%),radial-gradient(1px 1px at 65% 15%,rgba(200,180,255,.6) 0,transparent 100%),radial-gradient(1.5px 1.5px at 35% 70%,rgba(255,255,255,.5) 0,transparent 100%),radial-gradient(1px 1px at 80% 55%,rgba(180,160,255,.7) 0,transparent 100%),radial-gradient(1px 1px at 50% 40%,rgba(255,255,255,.4) 0,transparent 100%),radial-gradient(1.5px 1.5px at 10% 80%,rgba(255,220,255,.5) 0,transparent 100%),radial-gradient(1px 1px at 90% 30%,rgba(200,200,255,.6) 0,transparent 100%),radial-gradient(1px 1px at 25% 50%,rgba(255,255,255,.4) 0,transparent 100%),radial-gradient(2px 2px at 70% 80%,rgba(180,140,255,.4) 0,transparent 100%),radial-gradient(1px 1px at 45% 90%,rgba(255,255,255,.5) 0,transparent 100%);animation:twinkle 8s ease-in-out infinite alternate}.bgStars--slow{display:none}@keyframes twinkle{0%{opacity:.6}50%{opacity:1}to{opacity:.7}}.bgRain{position:absolute;inset:-10% -10% -10% -10%;background-image:repeating-linear-gradient(115deg,transparent,transparent 180px,rgba(255,255,255,.12) 0,rgba(255,255,255,.12) 181px,transparent 182px);animation:rayDrift 32s linear infinite;opacity:.35;-webkit-mask-image:linear-gradient(180deg,#000,rgba(0,0,0,.2) 50%,transparent);mask-image:linear-gradient(180deg,#000,rgba(0,0,0,.2) 50%,transparent)}@keyframes rayDrift{0%{transform:translateX(-6%)}to{transform:translateX(0)}}.loadingScreen{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.loadingSpinner{width:40px;height:40px;border-radius:50%;border:2px solid rgba(62,192,232,.25);border-top:2px solid var(--teal);animation:spin .8s linear infinite}.loadingText{color:var(--ink-dim);font-size:11px;letter-spacing:.32em;text-transform:uppercase}@keyframes spin{to{transform:rotate(1turn)}}button{color:inherit;font:inherit}.shell{position:relative;z-index:1;width:min(1480px,calc(100% - 28px));margin:0 auto;padding:16px 0 120px}.topBar{position:-webkit-sticky;position:sticky;top:0;z-index:50;justify-content:space-between;gap:16px;height:48px;padding:0 14px;margin:-16px 0 0;background:rgba(255,255,255,.72);border-bottom:1px solid rgba(180,210,235,.35);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 2px 10px rgba(80,130,180,.08)}.rankCluster,.topBar{display:flex;align-items:center}.rankCluster{gap:12px;flex-shrink:0}.rankBadge{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:54px;height:38px;padding:2px 12px;background:linear-gradient(180deg,#5fd0f0,#1ba4d4);border:1px solid #b8edff;border-radius:4px;box-shadow:0 2px 8px rgba(62,192,232,.4),inset 0 1px 0 rgba(255,255,255,.5)}.rankBadge span{font-size:8px;letter-spacing:.18em;color:rgba(255,255,255,.85);line-height:1}.rankBadge strong{font-size:18px;font-weight:800;color:#fff;line-height:1;text-shadow:0 1px 4px rgba(20,80,120,.4)}.meterBar{display:flex;align-items:center;gap:7px;font-size:10px}.meterBar>span{color:var(--ink-dim);font-weight:700;letter-spacing:.12em;min-width:22px}.meterTrack{position:relative;width:90px;height:8px;background:rgba(180,210,235,.5);border:1px solid rgba(120,170,210,.35);border-radius:4px;overflow:hidden;box-shadow:inset 0 1px 2px rgba(60,100,150,.18)}.meterTrack i{display:block;height:100%;border-radius:3px;transition:width .3s}.expBar .meterTrack i{background:linear-gradient(90deg,#ffd35a,#ffb74d)}.apBar .meterTrack i{background:linear-gradient(90deg,#ff7088,#ff9aa8)}.meterBar strong{font-size:11px;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:36px}.topRight{gap:8px;flex-shrink:0}.curr,.topRight{display:flex;align-items:center}.curr{gap:5px;padding:5px 8px 5px 10px;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(232,244,252,.95));border:1px solid rgba(120,180,230,.35);border-radius:3px;font-size:12px;font-weight:700;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;box-shadow:0 1px 4px rgba(60,120,180,.1)}.curr svg{color:var(--teal-strong)}.curr .plus{display:grid;place-items:center;width:16px;height:16px;margin-left:3px;background:linear-gradient(180deg,#5fd0f0,#1ba4d4);color:#fff;border-radius:2px;font-size:12px;font-weight:900;font-style:normal;line-height:1;box-shadow:0 1px 3px rgba(20,80,120,.35)}.topActions{display:flex;gap:2px;margin-left:4px}.topIcon{width:30px;height:30px;display:grid;place-items:center;background:transparent;border:1px solid transparent;border-radius:3px;color:var(--ink-dim);cursor:pointer;transition:color .15s,border-color .15s,background .15s}.topIcon:hover{color:var(--teal-strong);border-color:var(--teal-dim);background:var(--teal-pale)}.layoutGrid{display:grid;grid-template-columns:56px minmax(0,1fr) 220px;grid-gap:14px;gap:14px;margin-top:14px}.sideRail{display:flex;flex-direction:column;gap:4px;padding:6px 4px;background:rgba(255,255,255,.5);border:1px solid rgba(180,215,235,.3);border-radius:8px;align-self:start;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.rail{position:relative;display:grid;place-items:center;width:44px;height:44px;background:rgba(255,255,255,.5);border:1px solid rgba(120,180,230,.18);border-radius:4px;color:var(--ink-dim);cursor:pointer;transition:all .15s}.rail:hover{background:var(--teal-pale);color:var(--teal-strong);border-color:var(--teal-dim);transform:translateY(-1px)}.railBadge{position:absolute;top:-4px;right:-4px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;background:linear-gradient(180deg,#ff8aa0,#ff6080);color:#fff;border-radius:9px;font-size:9px;font-weight:800;border:1.5px solid #fff;box-shadow:0 2px 5px rgba(220,90,120,.45)}.stage{position:relative;min-height:560px}.rightPanel,.stage{display:flex;flex-direction:column}.rightPanel{gap:8px;align-self:start}.powerCard{padding:12px 18px;background:rgba(255,255,255,.82);border:1px solid rgba(180,215,235,.4);border-radius:10px;text-align:right;box-shadow:0 3px 12px rgba(80,120,170,.1)}.powerCard span{display:block;font-size:9px;letter-spacing:.24em;color:var(--teal-strong);text-transform:uppercase;font-weight:700}.powerCard strong{display:block;margin-top:2px;font-size:32px;font-weight:800;color:var(--ink);line-height:1;text-shadow:0 2px 14px rgba(62,192,232,.35);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cornerBtn{padding:6px 14px;background:rgba(255,255,255,.85);border:1px solid var(--panel-border);border-radius:3px;color:var(--ink-dim);font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:color .15s,border-color .15s,background .15s;align-self:flex-end;min-width:56px;box-shadow:var(--shadow-sm)}.cornerBtn:hover{color:var(--teal-strong);border-color:var(--teal);background:#fff}.homeView{display:grid;grid-template-columns:minmax(0,1fr) 280px;grid-gap:24px;gap:24px;align-items:center;min-height:520px;padding:24px}.homeCopy h1{margin:0;font-size:clamp(28px,4vw,56px);line-height:1.1;font-weight:800;color:var(--ink);text-shadow:0 2px 18px rgba(255,255,255,.7),0 0 30px rgba(62,192,232,.18)}.homeCopy .lore{margin-top:12px;color:var(--ink-dim);font-size:14px;line-height:1.9}.featuredArt{justify-content:center}.eventBanner,.featuredArt{display:flex;align-items:center}.eventBanner{position:fixed;left:16px;bottom:100px;z-index:30;gap:10px;padding:8px 14px 8px 10px;max-width:260px;background:linear-gradient(135deg,rgba(255,220,235,.96),rgba(244,200,220,.94));border:1px solid rgba(244,139,189,.55);border-radius:6px;box-shadow:0 8px 22px rgba(220,130,170,.25),inset 0 1px 0 rgba(255,255,255,.7)}.eventArt{display:grid;place-items:center;width:32px;height:32px;background:linear-gradient(135deg,#ffb6d4,#f48bbd);border-radius:4px;color:#fff;box-shadow:0 2px 6px rgba(220,100,150,.35)}.eventCopy p{margin:0;line-height:1.4}.eventCopy .eyebrow{font-size:9px;letter-spacing:.18em;color:#c45088;margin-bottom:2px}.eventCopy .eyebrow:before{background:#c45088}.eventCopy p:not(.eyebrow){color:var(--ink);font-size:11px;font-weight:600}.eventCopy strong{color:#ff7090;font-size:15px;font-weight:800;margin:0 2px}.commandBar{position:fixed;left:0;right:0;bottom:0;z-index:40;gap:6px;padding:8px 16px 10px;background:rgba(240,248,253,.88);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(180,215,235,.4)}.cmdTab,.commandBar{display:flex;justify-content:center}.cmdTab{flex:1 1;max-width:180px;flex-direction:column;align-items:center;gap:3px;height:62px;padding:6px 8px;background:rgba(255,255,255,.82);border:1px solid rgba(180,215,235,.4);border-radius:8px;color:var(--ink-dim);cursor:pointer;transition:transform .15s,background .15s,color .15s}.cmdTab:hover:not(:disabled){transform:translateY(-2px);color:var(--ink);background:rgba(255,255,255,.96);border-color:var(--teal-dim)}.cmdTab.active{background:rgba(220,242,252,.9);border-color:var(--teal-dim);color:var(--teal-strong)}.cmdTab.highlight{background:linear-gradient(160deg,#5bcde8,#1ba4d4);border:1px solid rgba(120,210,240,.6);color:#fff;box-shadow:0 4px 18px rgba(40,160,200,.4);flex:1.2 1}.cmdTab.highlight:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-2px)}.cmdTab.highlight b{text-shadow:0 1px 3px rgba(20,80,120,.4)}.cmdTab.highlight small{color:rgba(255,255,255,.8)}.cmdTab svg{width:20px;height:20px}.cmdTab b{font-size:12px;font-weight:700;letter-spacing:.06em}.cmdTab small{font-size:8px;letter-spacing:.18em;opacity:.65;color:var(--teal-strong);font-weight:600}.cmdTab:disabled{opacity:.35;cursor:not-allowed;filter:grayscale(.5)}.gameHeaderLeft{display:flex;align-items:baseline;gap:10px;flex-shrink:0}.gameLogo{font-size:13px;font-weight:800;letter-spacing:.28em;color:var(--teal);text-shadow:0 0 18px rgba(78,196,220,.6)}.gameLogo,.gameVersion{text-transform:uppercase}.gameVersion{font-size:9px;letter-spacing:.22em;color:var(--muted)}.gameHeaderStats{display:flex;gap:4px;flex:1 1;justify-content:center}.hStat{display:flex;align-items:center;gap:7px;padding:5px 14px;border:1px solid rgba(78,196,220,.12);border-top:2px solid rgba(78,196,220,.35);border-radius:0 0 3px 3px;background:rgba(78,196,220,.04);min-width:88px;cursor:default;transition:background .15s}.hStat:hover{background:rgba(78,196,220,.09)}.hStat svg{color:var(--teal);flex-shrink:0}.hStat span{font-size:15px;font-weight:700;color:var(--ink);line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hStat label{font-size:8px;letter-spacing:.18em;color:var(--muted);text-transform:uppercase;margin-left:auto;cursor:default}.gameHeaderRight{flex-shrink:0}.hWins{font-size:11px;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}.banner{min-height:380px;display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,560px);align-items:center;grid-gap:24px;gap:24px;padding:28px 0 20px;border-bottom:1px solid var(--line);margin-bottom:4px}.bannerCopy h1{font-size:clamp(26px,4.2vw,60px);line-height:1.1}.bannerCopy h1,.heroCopy h1{max-width:800px;margin:0;font-weight:800;letter-spacing:-.01em;color:#fff;text-shadow:0 0 40px rgba(78,196,220,.3),0 2px 6px rgba(0,0,0,.6)}.heroCopy h1{font-size:clamp(28px,4.4vw,64px);line-height:1.12}.lore{max-width:720px;color:var(--ink-dim);font-size:14px;line-height:1.9}.eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 10px;color:var(--teal-strong);font-size:10px;font-weight:800;letter-spacing:.38em;text-transform:uppercase}.eyebrow:before{content:"";display:inline-block;width:20px;height:2px;background:var(--teal);border-radius:1px;opacity:.85}.battleFooter,.battleMeters,.cardStats,.cardTop,.enemyBand,.filters,.heroStats,.heroStats .stat,.meterRow,.mission,.primary,.secondary,.sectionHead.split,.stat,.tab,.tabs,.tags{display:flex;align-items:center}.heroStats{flex-wrap:wrap;gap:10px;margin-top:20px}.bannerCopy{display:flex;flex-direction:column}.stat{gap:10px;min-width:150px;padding:10px 14px;border:1px solid rgba(180,215,235,.35);border-radius:8px;background:rgba(255,255,255,.75);box-shadow:0 2px 8px rgba(80,120,170,.08)}.primary svg,.stat svg,.tab svg{width:16px;height:16px;color:var(--teal-strong)}.stat span{color:var(--ink-dim);font-size:11px;letter-spacing:.08em}.stat strong{margin-left:auto;font-size:18px;font-weight:700;color:var(--ink)}.showcase{min-height:360px;display:grid;grid-template-columns:.76fr 1fr .76fr;align-items:center;grid-gap:12px;gap:12px}.tabs{position:-webkit-sticky;position:sticky;top:10px;z-index:10;gap:2px;padding:4px;margin-bottom:18px;border:1px solid rgba(180,215,235,.35);border-radius:10px;background:rgba(255,255,255,.78);box-shadow:0 4px 16px rgba(80,120,170,.1)}.cardButton,.chip,.mission,.ownedCard,.primary,.secondary,.tab{cursor:pointer}.tab{flex-direction:column;gap:4px;flex:1 1;min-height:60px;padding:8px;border:0;border-radius:4px;background:transparent;color:var(--muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase;transition:color .15s,background .15s}.tab svg{width:22px;height:22px}.tab span{font-size:9px;letter-spacing:.18em}.tab:hover{color:var(--ink-dim);background:rgba(78,196,220,.06)}.tab.active{color:var(--teal);background:rgba(78,196,220,.1);border-bottom:2px solid var(--teal);text-shadow:0 0 12px rgba(78,196,220,.4)}.panel{position:relative;border:1px solid rgba(180,215,235,.35);border-radius:10px;background:rgba(255,255,255,.78);backdrop-filter:blur(var(--panel-blur));-webkit-backdrop-filter:blur(var(--panel-blur));box-shadow:0 4px 20px rgba(80,120,170,.1);padding:20px;overflow:hidden}.panel:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(170deg,rgba(255,255,255,.5),transparent 50%)}.battleGrid{display:grid;grid-template-columns:340px minmax(0,1fr);grid-gap:18px;gap:18px}.emptyArena h2,.enemyBand h2,.sectionHead h2{margin:0;font-size:18px;font-weight:800;letter-spacing:.04em;color:var(--ink)}.battleFooter,.enemyBand,.sectionHead.split{justify-content:space-between;gap:14px}.emptyArena p,.log p,.missionText,.rule{color:var(--ink-dim);line-height:1.75;font-size:13px}.meterRow{justify-content:space-between;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.meterRow span{color:var(--ink-dim);font-size:10px;letter-spacing:.2em;text-transform:uppercase}.meterRow strong{font-size:20px;font-weight:700;color:var(--teal-strong)}.missionList{display:grid;grid-gap:6px;gap:6px;margin:14px 0}.mission{justify-content:space-between;width:100%;padding:11px 14px;border:1px solid rgba(120,180,230,.25);border-left:3px solid transparent;border-radius:4px;background:rgba(255,255,255,.6);color:var(--ink-dim);font-size:13px;transition:border-color .15s,background .15s,color .15s,transform .15s}.mission:hover{border-left-color:var(--teal-dim);background:rgba(255,255,255,.9);color:var(--ink);transform:translateX(2px)}.mission.active{border-left-color:var(--teal);background:var(--teal-pale);color:var(--ink)}.primary,.secondary{justify-content:center;gap:8px;min-height:44px;padding:0 22px;border-radius:4px;border:0;font-weight:700;font-size:13px;letter-spacing:.1em;text-transform:uppercase;transition:filter .15s,transform .12s,box-shadow .15s}.primary{background:linear-gradient(180deg,#6dd5f0,#2bafd8 60%,#1095c0);box-shadow:0 6px 22px rgba(40,175,215,.5),inset 0 1px 0 rgba(255,255,255,.4);text-shadow:0 1px 3px rgba(20,80,120,.4)}.primary,.primary svg{color:#fff}.primary:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 8px 28px rgba(40,175,215,.6),inset 0 1px 0 rgba(255,255,255,.4)}.primary:active:not(:disabled){transform:translateY(0);filter:brightness(.95)}.primary:disabled{cursor:not-allowed;opacity:.4;filter:grayscale(.4)}.secondary{border:1px solid var(--panel-border);background:rgba(255,255,255,.9);color:var(--ink-dim);box-shadow:var(--shadow-sm)}.secondary:hover{border-color:var(--teal);color:var(--teal-strong);background:#fff}.arena{min-height:600px;display:flex;flex-direction:column}.enemyBand{padding:14px 18px;border-radius:4px;background:linear-gradient(90deg,rgba(255,200,210,.6),rgba(255,230,235,.35) 60%,rgba(255,255,255,.55));border:1px solid rgba(255,130,150,.45);border-left:3px solid var(--red);box-shadow:0 4px 14px rgba(255,120,140,.18)}.threat{min-width:110px;text-align:right}.threat span{display:block;color:var(--ink-dim);font-size:9px;letter-spacing:.28em;text-transform:uppercase}.threat strong{color:var(--red);font-size:44px;font-weight:800;line-height:1;text-shadow:0 2px 12px rgba(255,120,140,.5)}.battleMeters{gap:10px;margin:14px 0}.meter{flex:1 1;min-width:100px;overflow:hidden;border:1px solid rgba(180,215,235,.35);border-radius:8px;background:rgba(255,255,255,.82)}.meter div{display:flex;justify-content:space-between;padding:8px 10px}.meter span{color:var(--ink-dim);font-size:9px;letter-spacing:.22em;text-transform:uppercase}.meter strong{font-size:14px;font-weight:700;color:var(--ink)}.meter i{display:block;height:4px;background:linear-gradient(90deg,var(--teal),#b0f0ff)}.archiveGrid,.collectionGrid,.hand,.pullGrid{display:grid;grid-gap:12px;gap:12px}.hand{grid-template-columns:repeat(5,minmax(110px,1fr));align-items:stretch}.cardButton,.ownedCard{padding:0;border:0;background:transparent;text-align:left;transition:transform .18s}.cardButton:hover,.ownedCard:hover{transform:translateY(-5px)}.battleFooter{margin-top:auto;padding-top:14px}.log{min-height:80px}.log p{margin:0;font-size:12px;line-height:1.7;opacity:.8}.emptyArena{margin:auto;max-width:520px;text-align:center;padding:40px 0}.filters{flex-wrap:wrap;gap:6px}.chip{min-height:30px;padding:0 12px;border:1px solid rgba(120,180,230,.3);border-radius:16px;background:rgba(255,255,255,.7);color:var(--ink-dim);font-size:12px;font-weight:600;transition:color .15s,border-color .15s,background .15s}.chip:hover{color:var(--ink);border-color:var(--teal-dim)}.chip.active{border-color:var(--teal);color:#fff;background:linear-gradient(180deg,#6dd5f0,#2bafd8);box-shadow:0 3px 10px rgba(40,175,215,.35)}.collectionGrid{grid-template-columns:repeat(auto-fill,minmax(155px,1fr));margin-top:16px}.archiveGrid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));margin-top:16px}.pullGrid{grid-template-columns:repeat(3,minmax(175px,1fr))}.pityBar{display:flex;flex-direction:column;gap:10px;padding:14px 16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;margin-bottom:16px}.pityRow{display:grid;grid-template-columns:70px 1fr auto;align-items:center;grid-gap:10px;gap:10px}.pityLabel{font-size:12px;color:#9b8fc4;font-weight:600;letter-spacing:.05em}.pityCount{font-size:12px;color:#ccc;text-align:right;white-space:nowrap}.pityCount b{color:#e8e0ff;font-size:14px}.pityTrack{grid-column:1/-1;height:6px;background:rgba(255,255,255,.08);border-radius:99px;overflow:hidden}.pityFill{height:100%;border-radius:99px;transition:width .4s ease}.pityFill.ssr{background:linear-gradient(90deg,#a78bfa,#f0abfc)}.pityFill.ur{background:linear-gradient(90deg,#f59e0b,#fde68a,#f472b6)}.pityNote{font-size:11px;color:#6b5fa0;margin:0;text-align:right}.ownedCard{position:relative;border-radius:4px}.ownedCard.selected{outline:2px solid var(--teal);outline-offset:2px;filter:drop-shadow(0 0 14px rgba(78,196,220,.5))}.ownedCount{position:absolute;right:6px;bottom:6px;padding:2px 8px;border-radius:3px;background:rgba(255,255,255,.95);border:1px solid var(--teal-dim);font-size:11px;color:var(--teal-strong);font-weight:800;box-shadow:0 2px 6px rgba(80,130,180,.2)}.miniDeck{display:flex;flex-wrap:wrap;justify-content:flex-end;max-width:360px;gap:5px}.dot{width:10px;height:10px;border-radius:50%;background:var(--teal);opacity:.85;box-shadow:0 1px 3px rgba(40,175,215,.4)}.gameCard{position:relative;min-height:300px;overflow:hidden;border:1px solid rgba(180,215,235,.4);border-radius:10px;background:linear-gradient(175deg,#ffffff,#f2f9fd);box-shadow:0 4px 14px rgba(80,120,170,.12);transition:box-shadow .2s,transform .2s}.gameCard:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(170deg,rgba(255,255,255,.6),transparent 45%)}.gameCard.compact{min-height:232px}.gameCard.locked{filter:grayscale(1) brightness(.95);opacity:.55}.cardStats,.cardTop,.tags{justify-content:space-between;gap:5px}.cardTop{position:relative;z-index:2;padding:8px 10px}.cardTop span,.tags span{padding:2px 7px;border-radius:3px;background:rgba(255,255,255,.85);border:1px solid rgba(120,180,230,.35);font-size:9px;letter-spacing:.1em;color:var(--ink-dim);font-weight:600}.cardTop strong{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:linear-gradient(180deg,#6dd5f0,#1ba4d4);color:#fff;font-weight:800;font-size:13px;box-shadow:0 3px 10px rgba(40,175,215,.55),inset 0 1px 0 rgba(255,255,255,.5)}.portrait{position:relative;display:grid;place-items:center;height:118px;margin:0 10px;border-radius:4px;background:linear-gradient(150deg,#d4eefa,#b8e3f5 55%,#ffffff);overflow:hidden}.portrait:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 100%,rgba(180,210,235,.4),transparent 60%)}.portrait b{position:relative;z-index:2;font-size:56px;font-weight:800;color:#fff;text-shadow:0 0 20px rgba(62,192,232,.7),0 3px 8px rgba(40,130,180,.45)}.portraitImg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;z-index:2}.portrait i{position:absolute;width:116px;height:116px;border-radius:50%;border:1.5px solid rgba(255,255,255,.8);box-shadow:inset 0 0 22px rgba(255,255,255,.45),0 0 12px rgba(120,200,235,.35)}.cardBody{padding:8px 10px;position:relative;z-index:2}.cardBody h3,.cardBody p{margin:0}.cardBody p{color:var(--ink-dim);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.cardBody h3{min-height:38px;margin-top:3px;font-size:15px;font-weight:700;color:var(--ink)}.cardBody small{display:block;margin-top:7px;color:var(--ink-dim);font-size:11px;line-height:1.6}.cardStats{position:relative;z-index:2;flex-wrap:wrap;margin:0 10px 10px;gap:4px;font-size:10px}.cardStats span{padding:3px 7px;border-radius:3px;background:rgba(232,244,252,.9);border:1px solid rgba(62,192,232,.35);color:var(--teal-strong);font-weight:700}.gameCard.compact .cardBody{padding-bottom:5px}.gameCard.compact .cardBody h3{min-height:30px;font-size:13px}.gameCard.compact .tags{display:none}.indigo,.violet{background:linear-gradient(175deg,#ffffff,#ede4ff 60%,#d8c8f8);border-top-color:#a890e8}.indigo .portrait,.violet .portrait{background:linear-gradient(150deg,#e0d0ff,#c8b0f0 55%,#ffffff)}.aqua,.cyan{background:linear-gradient(175deg,#ffffff,#e0f4fb 60%,#c4e8f5);border-top-color:#5cc8e0}.aqua .portrait,.cyan .portrait{background:linear-gradient(150deg,#c8ecfa,#a8dcf0 55%,#ffffff)}.steel{background:linear-gradient(175deg,#ffffff,#e8eef6 60%,#cdd8e8);border-top-color:#8aa0c0}.steel .portrait{background:linear-gradient(150deg,#d8e2f0,#b8c8de 55%,#ffffff)}.green,.leaf{background:linear-gradient(175deg,#ffffff,#e4f5e8 60%,#c8e8d0);border-top-color:#78c890}.green .portrait,.leaf .portrait{background:linear-gradient(150deg,#cce8d2,#a8d8b8 55%,#ffffff)}.amber,.gold{background:linear-gradient(175deg,#ffffff,#fff4d8 60%,#ffe5a8);border-top-color:#f0b850}.amber .portrait,.gold .portrait{background:linear-gradient(150deg,#ffe8b8,#ffd480 55%,#ffffff)}.pink,.rose{background:linear-gradient(175deg,#ffffff,#ffe4ee 60%,#ffc8d8);border-top-color:#f48bbd}.pink .portrait,.rose .portrait{background:linear-gradient(150deg,#ffd6e4,#ffb0c8 55%,#ffffff)}.frost{background:linear-gradient(175deg,#ffffff,#e0f2fe 60%,#bae6fd);border-top-color:#38bdf8}.frost .portrait{background:linear-gradient(150deg,#e0f2fe,#bae6fd 55%,#ffffff)}.crimson{background:linear-gradient(175deg,#ffffff,#fee2e2 60%,#fecaca);border-top-color:#f87171}.crimson .portrait{background:linear-gradient(150deg,#fecaca,#fca5a5 55%,#ffffff)}.teal{background:linear-gradient(175deg,#ffffff,#ccfbf1 60%,#99f6e4);border-top-color:#2dd4bf}.teal .portrait{background:linear-gradient(150deg,#ccfbf1,#99f6e4 55%,#ffffff)}.copper{background:linear-gradient(175deg,#ffffff,#fbe8d8 60%,#f0caa8);border-top-color:#d89870}.copper .portrait{background:linear-gradient(150deg,#f5d8c0,#e4b890 55%,#ffffff)}.origin{background:linear-gradient(175deg,#ffffff,#eef0ff 45%,#e2eeff 70%,#dcf0f8);border-top-color:#88a8e0}.origin .portrait{background:linear-gradient(150deg,#e4ecff,#d8e8fa 35%,#d0ecee 65%,#ffffff)}.modalBackdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:24px;background:rgba(180,210,235,.55);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);animation:modalFade .18s ease-out}.modalShell{position:relative;width:min(860px,100%);max-height:calc(100vh - 48px);overflow-y:auto;border:1px solid rgba(180,215,235,.4);border-radius:14px;background:rgba(255,255,255,.97);box-shadow:0 20px 60px rgba(60,110,160,.2);padding:26px;animation:modalRise .22s cubic-bezier(.22,1,.36,1)}.modalClose{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--panel-border);border-radius:4px;background:rgba(255,255,255,.9);color:var(--ink-dim);cursor:pointer;transition:border-color .15s,color .15s,background .15s}.modalClose:hover{border-color:var(--teal);color:var(--teal-strong);background:#fff}.modalClose svg{width:15px;height:15px}.modalGrid{position:relative;z-index:1;display:grid;grid-template-columns:260px minmax(0,1fr);grid-gap:24px;gap:24px;align-items:start}.modalCard{position:-webkit-sticky;position:sticky;top:0}.modalInfo h2{margin:4px 0 2px;font-size:26px;font-weight:800;color:var(--ink);text-shadow:0 0 30px rgba(78,196,220,.25)}.modalHeroine{margin:0 0 16px;color:var(--muted);font-size:12px;letter-spacing:.12em;text-transform:uppercase}.modalStats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px;margin-bottom:14px}.modalStats>div{padding:10px;border:1px solid rgba(180,215,235,.35);border-radius:8px;background:rgba(240,249,254,.7);text-align:center}.modalStats span{display:block;font-size:8px;letter-spacing:.28em;color:var(--ink-dim);text-transform:uppercase}.modalStats strong{display:block;margin-top:3px;font-size:20px;font-weight:800;color:var(--teal-strong)}.modalMeta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px;font-size:11px;color:var(--ink-dim);letter-spacing:.08em}.modalMeta b{margin-left:5px;color:var(--ink);font-weight:700}.modalQuote{margin:0 0 16px;padding:12px 14px;border-left:3px solid var(--teal);background:linear-gradient(90deg,var(--teal-pale),transparent);border-radius:0 4px 4px 0;color:var(--ink-dim);font-size:12px;line-height:1.8;font-style:italic}@keyframes modalFade{0%{opacity:0}to{opacity:1}}@keyframes modalRise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (max-width:720px){.modalShell{padding:16px}.modalGrid{grid-template-columns:1fr;gap:14px}.modalCard{position:static;max-width:220px;margin:0 auto}}.threat{position:relative}.floatNum{position:absolute;top:-8px;right:0;font-size:20px;font-weight:800;pointer-events:none;animation:floatNum .9s ease-out forwards}.floatNum--atk{color:var(--red);right:4px;text-shadow:0 2px 10px rgba(255,120,140,.55),0 0 14px #fff}.floatNum--grd{color:var(--teal-strong)}.floatNum--grd,.floatNum--wev{top:-2px;right:10px;font-size:16px;text-shadow:0 2px 10px rgba(62,192,232,.55),0 0 14px #fff}.floatNum--wev{color:#1ba4d4}@keyframes floatNum{0%{transform:translateY(6px) scale(.7);opacity:0}20%{transform:translateY(-2px) scale(1.1);opacity:1}to{transform:translateY(-38px) scale(1);opacity:0}}.meter{position:relative}.meter.pulsing{animation:meterPulse .6s ease-out}.meter.pulsing i{animation:meterBar .6s ease-out}@keyframes meterPulse{0%{box-shadow:0 0 0 0 rgba(62,192,232,.55)}to{box-shadow:0 0 0 12px rgba(62,192,232,0)}}@keyframes meterBar{0%{filter:brightness(2.2)}to{filter:brightness(1)}}@keyframes cardFlash{0%{box-shadow:0 0 0 0 rgba(167,139,250,.8);transform:scale(1)}40%{box-shadow:0 0 24px 8px rgba(167,139,250,.5);transform:scale(1.04)}to{box-shadow:0 0 0 0 rgba(167,139,250,0);transform:scale(1)}}.cardButton:active .gameCard{animation:cardFlash .35s ease-out}.resonanceBurst{align-self:center;margin:5px auto 3px;padding:4px 18px;border-radius:16px;background:linear-gradient(135deg,#7c3aed,#a78bfa,#f472b6);background-size:200% 200%;color:#fff;font-size:10px;font-weight:800;letter-spacing:.42em;text-transform:uppercase;box-shadow:0 0 32px rgba(167,139,250,.8),0 0 64px rgba(167,139,250,.4);text-shadow:0 1px 3px rgba(20,0,60,.5);animation:resonanceGlow .6s ease-out,resonanceFade 1.8s ease-out forwards}@keyframes resonanceGlow{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.05);opacity:1}to{transform:scale(1)}}@keyframes resonanceFade{0%{opacity:1}60%{opacity:1}to{opacity:0;pointer-events:none}}.floatNum{animation:floatUp 1.2s ease-out forwards}@keyframes floatUp{0%{transform:translateY(0);opacity:1}70%{transform:translateY(-32px);opacity:1}to{transform:translateY(-48px);opacity:0}}@keyframes threatShake{0%,to{transform:translateX(0)}20%{transform:translateX(-4px)}40%{transform:translateX(4px)}60%{transform:translateX(-3px)}80%{transform:translateX(3px)}}.threat.hit{animation:threatShake .4s ease-out}.resultModal{max-width:500px;text-align:center;padding:32px 28px}.resultModal.win{border-top-color:var(--teal);box-shadow:0 24px 80px rgba(60,110,160,.35),0 0 40px rgba(62,192,232,.25)}.resultModal.lose{border-top-color:var(--red);box-shadow:0 24px 80px rgba(60,110,160,.35),0 0 40px rgba(255,120,140,.2)}.resultTitle{margin:6px 0 4px;font-size:32px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}.resultModal.win .resultTitle{color:var(--teal-strong);text-shadow:0 2px 16px rgba(62,192,232,.35)}.resultModal.lose .resultTitle{color:var(--red);text-shadow:0 2px 16px rgba(255,120,140,.35)}.resultMission{margin:0 0 20px;color:var(--ink-dim);font-size:12px;letter-spacing:.12em;text-transform:uppercase}.resultStats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-bottom:20px}.resultStats>div{padding:10px;border:1px solid var(--panel-border);border-top:2px solid var(--teal);border-radius:0 0 4px 4px;background:linear-gradient(180deg,#ffffff,#f0f8fd);box-shadow:var(--shadow-sm)}.resultStats span{display:block;font-size:8px;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-dim)}.resultStats strong{display:block;margin-top:3px;font-size:24px;font-weight:800;color:var(--teal-strong)}.resultRewards{margin-bottom:20px;padding:12px 14px;border:1px solid var(--panel-border);border-left:3px solid var(--teal);border-radius:0 4px 4px 0;background:linear-gradient(90deg,var(--teal-pale),rgba(255,255,255,.5));text-align:left}.rewardRow{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid var(--line)}.rewardRow:last-child{border-bottom:0}.rewardRow span{color:var(--ink-dim);font-size:12px}.rewardRow strong{color:var(--teal-strong);font-size:16px;font-weight:700}.rewardRow.archive{color:var(--teal-strong);justify-content:center;font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase}.tutorialBackdrop{background:rgba(180,210,235,.7)}.tutorialShell{max-width:500px;padding:36px 30px;text-align:center}.tutorialTitle{margin:8px 0 12px;font-size:24px;font-weight:800;letter-spacing:.04em;color:var(--ink)}.tutorialBody{margin:0 0 20px;color:var(--ink-dim);line-height:1.85;font-size:14px}.tutorialDots{display:flex;justify-content:center;gap:7px;margin-bottom:20px}.tutorialDot{width:7px;height:7px;border-radius:50%;background:rgba(120,180,230,.3);transition:background .18s}.tutorialDot.active{background:var(--teal);box-shadow:0 0 10px rgba(62,192,232,.6)}.tutorialActions{display:flex;justify-content:center;gap:10px}.saveCodeShell{max-width:540px}.saveCodeHint{margin:4px 0 16px;color:var(--ink-dim);font-size:13px;line-height:1.75}.saveCodeBlock{display:block;margin-bottom:14px}.saveCodeBlock>span{display:block;margin-bottom:7px;font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--teal-strong);font-weight:700}.saveCodeBlock textarea{width:100%;min-height:76px;padding:9px 11px;border:1px solid var(--panel-border);border-radius:4px;background:rgba(245,250,254,.95);color:var(--ink);font-family:ui-monospace,Cascadia Mono,Menlo,monospace;font-size:11px;resize:vertical;margin-bottom:9px}.saveCodeBlock textarea:focus{outline:0;border-color:var(--teal);box-shadow:0 0 10px rgba(62,192,232,.25);background:#fff}.saveCodeMsg{margin:7px 0 0;color:var(--teal-strong);font-size:12px;font-weight:700}.floatingBar{position:fixed;right:16px;bottom:16px;z-index:50;display:flex;align-items:center;gap:8px}.syncBadge{padding:5px 12px;border-radius:2px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;animation:fadeIn .18s ease}.syncBadge--saving{border:1px solid var(--panel-border);background:rgba(255,255,255,.9);color:var(--ink-dim)}.syncBadge--saved{border:1px solid var(--teal);background:var(--teal-pale);color:var(--teal-strong);font-weight:700}.syncBadge--error{border:1px solid rgba(255,120,140,.5);background:var(--red-pale);color:var(--red);font-weight:700}.floatingSettings{padding:8px 16px;border-radius:4px;border:1px solid var(--panel-border);background:rgba(255,255,255,.9);color:var(--ink-dim);font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:700;cursor:pointer;box-shadow:var(--shadow-sm);transition:border-color .15s,color .15s}.floatingSettings:hover{border-color:var(--teal);color:var(--teal-strong)}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.homeViewV2{display:flex;flex-direction:column;gap:14px;padding:4px 2px}.gachaBanner{position:relative;display:block;width:100%;padding:0;border:1px solid rgba(180,215,235,.5);border-radius:12px;background:linear-gradient(115deg,#b9def0,#d9ebf6 35%,#f7e2ee 75%,#fbd6e3);cursor:pointer;overflow:hidden;text-align:left;box-shadow:0 6px 24px rgba(120,160,200,.18);transition:transform .18s,box-shadow .18s}.gachaBanner:hover{transform:translateY(-2px);box-shadow:0 10px 32px rgba(120,160,200,.28)}.gbInner{position:relative;z-index:2;display:grid;grid-template-columns:1fr 150px;grid-gap:16px;gap:16px;align-items:center;padding:18px 22px}.gbLeft h2{margin:4px 0 6px;font-size:22px;font-weight:800;color:var(--ink);text-shadow:0 1px 8px rgba(255,255,255,.7)}.gbSub{margin:0 0 10px;font-size:12px;color:var(--ink-dim);line-height:1.6}.gbMeta{display:flex;align-items:center;gap:10px}.gbPill{padding:3px 10px;border-radius:12px;background:linear-gradient(180deg,#ff8aa8,#f06b8a);color:#fff;font-size:10px;font-weight:800;letter-spacing:.14em;box-shadow:0 2px 6px rgba(220,100,130,.4)}.gbCount{font-size:11px;color:var(--ink-dim);letter-spacing:.04em}.gbCount b{color:#d8527a;font-size:16px;font-weight:800;margin:0 2px}.gbCard{display:flex;justify-content:flex-end}.gbCard .gameCard{transform:rotate(3deg);max-width:150px}.gbShine{position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse 60% 90% at 30% 30%,rgba(255,255,255,.5),transparent 60%),radial-gradient(ellipse 40% 60% at 90% 70%,rgba(255,210,225,.4),transparent 60%);pointer-events:none}.homeGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.homePanel{display:flex;flex-direction:column;gap:12px;padding:16px 18px;border:1px solid rgba(180,215,235,.4);border-radius:12px;background:rgba(255,255,255,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 3px 14px rgba(80,120,170,.1)}.hpHead{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;grid-gap:10px;gap:10px}.hpHead .eyebrow{margin:0}.hpHead h3{margin:0;font-size:16px;font-weight:800;color:var(--ink)}.streakBadge{justify-self:end;padding:3px 10px;border-radius:12px;background:var(--teal-pale);border:1px solid var(--teal-dim);color:var(--teal-strong);font-size:10px;font-weight:700;letter-spacing:.08em}.loginStrip{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.loginCell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 4px;border:1px solid rgba(180,215,235,.4);border-radius:8px;background:rgba(245,250,254,.7);min-height:64px}.loginCell .lbDay{font-size:8px;letter-spacing:.12em;color:var(--muted);font-weight:700}.loginCell .lbReward{display:flex;flex-direction:column;gap:2px;align-items:center;font-size:9px;color:var(--ink);font-weight:700}.loginCell.today{border-color:var(--teal);background:linear-gradient(180deg,#e8f8fe,#c4ebf8);box-shadow:0 2px 10px rgba(62,192,232,.3),inset 0 0 0 1px rgba(62,192,232,.3)}.loginCell.claimed{opacity:.55}.loginCell.locked{opacity:.45}.loginCell.special{background:linear-gradient(180deg,#fff7d8,#ffe9a8);border-color:#f0c060}.loginCell.special.today{background:linear-gradient(180deg,#fff2c0,#ffd870);box-shadow:0 2px 12px rgba(240,180,60,.45)}.lbCheck{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:var(--teal-strong);color:#fff;font-size:10px;font-weight:900}.dailyList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.dailyItem{display:grid;grid-template-columns:1fr auto;align-items:center;grid-gap:10px;gap:10px;padding:10px 12px;border:1px solid rgba(180,215,235,.35);border-radius:8px;background:rgba(245,250,254,.7);transition:background .15s,border-color .15s}.dailyItem.done{background:rgba(220,245,232,.6);border-color:rgba(120,200,144,.4);opacity:.85}.diMain{display:flex;align-items:center;gap:10px}.diCheck{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:rgba(255,255,255,.8);border:1px solid rgba(180,215,235,.5);font-size:13px;font-weight:800;color:var(--ink-dim)}.dailyItem.done .diCheck{background:#5fc090;border-color:#4ba878;color:#fff}.diLabel{font-size:13px;color:var(--ink);font-weight:600}.dailyItem.done .diLabel{color:var(--ink-dim);text-decoration:line-through;-webkit-text-decoration-color:rgba(0,0,0,.2);text-decoration-color:rgba(0,0,0,.2)}.diReward{display:flex;align-items:center;gap:8px;color:var(--ink-dim)}.diClaim,.diReward{font-size:11px;font-weight:700}.diClaim{padding:5px 12px;border-radius:6px;border:0;background:linear-gradient(180deg,#6dd5f0,#1ba4d4);color:#fff;letter-spacing:.08em;cursor:pointer;box-shadow:0 2px 6px rgba(40,175,215,.35);transition:filter .15s}.diClaim:hover:not(:disabled){filter:brightness(1.08)}.diClaim:disabled{opacity:.45;cursor:not-allowed;background:#aac6d6;box-shadow:none}.homeNotices{padding:14px 18px;border:1px solid rgba(180,215,235,.35);border-radius:12px;background:rgba(255,255,255,.7)}.homeNotices .eyebrow{margin:0 0 10px}.homeNotices ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.homeNotices li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-top:1px solid rgba(180,215,235,.3);font-size:12px;color:var(--ink-dim)}.homeNotices li:first-child{border-top:0}.noticeTag{padding:2px 8px;border-radius:3px;background:var(--teal-pale);color:var(--teal-strong);font-size:9px;font-weight:800;letter-spacing:.12em;border:1px solid var(--teal-dim);flex-shrink:0}.noticeTag.event{background:var(--pink-pale);color:#c45088;border-color:rgba(244,139,189,.4)}.archivePanel{display:flex;flex-direction:column;gap:16px;padding:22px}.archiveHead{display:grid;grid-template-columns:1fr auto;align-items:center;grid-gap:20px;gap:20px;padding-bottom:16px;border-bottom:1px solid rgba(180,215,235,.4)}.archiveHead h2{margin:4px 0;font-size:22px;font-weight:800;color:var(--ink)}.archiveSub{margin:0;font-size:12px;color:var(--ink-dim);line-height:1.6}.archiveCompletion{display:flex;align-items:center;gap:14px}.acRing{position:relative;width:78px;height:78px;border-radius:50%;background:conic-gradient(var(--teal) 0,var(--teal-strong) var(--p),rgba(180,215,235,.35) var(--p));display:grid;place-items:center;box-shadow:0 4px 14px rgba(62,192,232,.25)}.acRing:before{content:"";position:absolute;inset:6px;border-radius:50%;background:#fff}.acRing span{position:relative;font-size:12px;color:var(--ink-dim);font-weight:700}.acRing b{font-size:22px;color:var(--teal-strong);font-weight:800}.acCount{display:flex;flex-direction:column;gap:2px}.acCount span{font-size:9px;letter-spacing:.2em;color:var(--muted);text-transform:uppercase;font-weight:700}.acCount strong{font-size:18px;color:var(--ink);font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.factionStats{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:6px;gap:6px}.fsCell{display:flex;flex-direction:column;align-items:stretch;gap:5px;padding:10px;border:1px solid rgba(180,215,235,.4);border-radius:8px;background:rgba(255,255,255,.7);cursor:pointer;transition:all .15s;text-align:left}.fsCell:hover{background:rgba(255,255,255,.95);border-color:var(--teal-dim);transform:translateY(-1px)}.fsCell.active{background:linear-gradient(180deg,#e8f8fe,#c8eaf8);border-color:var(--teal);box-shadow:0 3px 10px rgba(62,192,232,.25)}.fsName{font-size:12px;font-weight:700;color:var(--ink);letter-spacing:.04em}.fsBar{height:5px;background:rgba(180,215,235,.4);overflow:hidden}.fsBar,.fsBar i{border-radius:3px}.fsBar i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--teal-strong));transition:width .4s}.fsCount{font-size:10px;color:var(--ink-dim);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.archiveControls{display:flex;flex-direction:column;gap:8px;padding:12px 14px;background:rgba(245,250,254,.6);border:1px solid rgba(180,215,235,.3);border-radius:8px}.acRow{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.acLabel{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-weight:700;min-width:36px}.acRow .chip small{font-size:9px;opacity:.7;margin-left:3px;font-weight:600}.acRow .chip.active small{color:rgba(255,255,255,.85)}.ownedToggle{display:flex;align-items:center;gap:6px;margin-left:auto;padding:4px 12px;border:1px solid rgba(180,215,235,.4);border-radius:16px;background:rgba(255,255,255,.7);cursor:pointer;font-size:12px;color:var(--ink-dim);font-weight:600;transition:all .15s}.ownedToggle:hover{border-color:var(--teal-dim);color:var(--ink)}.ownedToggle input{accent-color:var(--teal-strong);cursor:pointer}.archiveEmpty{padding:60px 20px;text-align:center;color:var(--ink-dim)}.archiveEmpty .eyebrow{justify-content:center}.archCard{position:relative}.archCard.locked{filter:grayscale(1) brightness(1.05) contrast(.85);opacity:.55}.archCard.locked .gameCard{box-shadow:0 2px 8px rgba(80,120,170,.06)}.silhouetteLabel{position:absolute;inset:0;display:grid;place-items:center;font-size:28px;font-weight:800;color:rgba(80,110,150,.5);letter-spacing:.2em;pointer-events:none;text-shadow:0 2px 8px rgba(255,255,255,.6)}.cardLevel{position:absolute;top:8px;left:8px;z-index:3;padding:2px 7px;border-radius:10px;background:linear-gradient(180deg,#ffd35a,#f0a020);color:#fff;font-size:9px;font-weight:800;letter-spacing:.05em;box-shadow:0 2px 6px rgba(220,150,30,.5),inset 0 1px 0 rgba(255,255,255,.5);text-shadow:0 1px 2px rgba(160,80,20,.5)}.enhancePanel{display:flex;flex-direction:column;gap:16px;padding:22px}.enhanceHead{display:grid;grid-template-columns:1fr auto;grid-gap:20px;gap:20px;padding-bottom:16px;border-bottom:1px solid rgba(180,215,235,.4)}.enhanceHead h2{margin:4px 0;font-size:22px;font-weight:800;color:var(--ink)}.enhanceSub{margin:0;font-size:12px;color:var(--ink-dim);line-height:1.6;max-width:560px}.enhanceTotals{display:flex;gap:10px;align-self:center}.enhanceTotal{display:flex;flex-direction:column;align-items:center;padding:10px 16px;border:1px solid rgba(180,215,235,.4);border-radius:8px;background:rgba(255,255,255,.7);min-width:90px}.enhanceTotal span{font-size:9px;letter-spacing:.16em;color:var(--muted);text-transform:uppercase;font-weight:700}.enhanceTotal strong{margin-top:2px;font-size:20px;font-weight:800;color:var(--teal-strong);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.enhanceLayout{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-gap:16px;gap:16px;align-items:start}.enhanceList{display:flex;flex-direction:column;gap:10px;min-width:0}.enhanceFilters{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.enhanceGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:10px;gap:10px}.enhCard{position:relative;transition:transform .15s}.enhCard.selected{outline:2px solid var(--teal-strong);outline-offset:3px;border-radius:12px;filter:drop-shadow(0 4px 16px rgba(62,192,232,.45))}.enhCard.ready .gameCard{box-shadow:0 4px 14px rgba(255,200,80,.35),0 0 0 1px rgba(240,180,60,.5)}.enhReadyDot{position:absolute;top:6px;right:6px;width:10px;height:10px;border-radius:50%;background:radial-gradient(circle,#ffe070,#f0a020);box-shadow:0 0 8px rgba(240,180,60,.7);animation:enhPulse 1.6s ease-in-out infinite}@keyframes enhPulse{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.25);opacity:1}}.enhancePreview{display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid rgba(180,215,235,.4);border-radius:12px;background:rgba(245,250,254,.7);position:-webkit-sticky;position:sticky;top:70px}.enhPreviewCard{display:flex;justify-content:center}.enhPreviewCard .gameCard{max-width:200px}.enhInfo h3{margin:4px 0;font-size:18px;font-weight:800;color:var(--ink)}.enhHeroine{margin:0 0 12px;font-size:11px;color:var(--muted);letter-spacing:.1em}.enhStatTable{display:flex;flex-direction:column;border:1px solid rgba(180,215,235,.4);border-radius:8px;overflow:hidden;background:rgba(255,255,255,.6)}.enhStatRow{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:8px 12px;border-top:1px solid rgba(180,215,235,.3);font-size:13px}.enhStatRow:first-child{border-top:0}.enhStatRow.header{background:rgba(220,240,250,.6);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:700}.enhStatRow span:first-child{color:var(--ink-dim);font-weight:600}.enhStatRow strong{color:var(--ink);font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.enhStatRow strong.up{color:var(--teal-strong);position:relative}.enhStatRow strong.up:before{content:"↑";margin-right:4px;color:#f0a020}.enhCost{margin-top:4px;padding:10px 12px;background:rgba(255,255,255,.6);border:1px solid rgba(180,215,235,.4);border-radius:8px}.enhCost .eyebrow{margin:0 0 6px}.enhCostRow{display:flex;justify-content:space-between;padding:4px 0;font-size:12px;color:var(--ink-dim)}.enhCostRow strong{font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.enhCostRow strong.ok{color:var(--teal-strong)}.enhCostRow strong.ng{color:#d8527a}.enhMaxed{text-align:center;padding:14px;background:linear-gradient(180deg,#fff4d8,#ffe5a8);border:1px solid #f0c060;border-radius:8px;color:#a86a10;font-size:13px;font-weight:800;letter-spacing:.16em;text-shadow:0 1px 2px rgba(255,255,255,.5)}.enhEmpty{padding:40px 16px;text-align:center;color:var(--ink-dim)}.enhEmpty .eyebrow{justify-content:center}.enhEmpty p{margin:6px 0;font-size:12px;line-height:1.6}.enhHint{color:var(--muted);font-size:11px}@media (max-width:980px){.layoutGrid{grid-template-columns:48px minmax(0,1fr)}.rightPanel{display:none}.battleGrid,.gbInner,.homeGrid,.homeView{grid-template-columns:1fr}.gbInner{gap:8px}.gbCard{justify-content:center}.loginStrip{grid-template-columns:repeat(4,1fr)}.loginCell:nth-child(n+8){display:none}.factionStats{grid-template-columns:repeat(3,1fr)}.archiveHead{gap:12px}.archiveHead,.enhanceLayout{grid-template-columns:1fr}.enhancePreview{position:static}.enhanceHead{grid-template-columns:1fr}.hand,.pullGrid{grid-template-columns:repeat(2,minmax(130px,1fr))}.meterTrack{width:70px}.apBar,.expBar{display:none}}@media (max-width:640px){.shell{width:min(100% - 12px,1480px);padding-top:10px;padding-bottom:110px}.topBar{gap:8px;padding:0 8px}.layoutGrid{grid-template-columns:1fr}.sideRail{flex-direction:row;align-self:stretch;justify-content:space-around}.rail{width:38px;height:38px}.homeCopy h1{font-size:26px}.hand,.pullGrid{grid-template-columns:1fr}.commandBar{padding:6px 6px 8px;gap:2px}.cmdTab{height:60px}.cmdTab svg{width:18px;height:18px}.cmdTab b{font-size:11px}.cmdTab small,.topActions{display:none}.rankBadge{min-width:44px;padding:2px 8px}.eventBanner{display:none}.battleFooter,.battleMeters,.sectionHead.split{align-items:stretch;flex-direction:column}}.storyView{display:flex;flex-direction:column;gap:16px;padding:20px;height:100%;overflow-y:auto}.chapterList{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:14px;gap:14px}.chapterCard{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:12px;padding:18px;cursor:pointer;transition:border-color .2s,box-shadow .2s;text-align:left}.chapterCard:hover{border-color:var(--teal);box-shadow:0 0 16px var(--teal-dim)}.chapterCard.locked{opacity:.45;cursor:not-allowed}.chapterCard.completed{border-color:rgba(167,139,250,.5)}.chapterCard .chNum{font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--teal);text-transform:uppercase}.chapterCard h3{margin:4px 0 2px;font-size:16px;color:var(--ink)}.chapterCard .chSub{font-size:12px;color:var(--ink-dim)}.chapterCard .chFaction{margin-top:8px;display:inline-block;padding:2px 8px;border-radius:99px;background:var(--teal-pale);color:var(--teal);font-size:11px}.chapterCard .chHeroines{margin-top:6px;font-size:11px;color:var(--muted)}.chProgress{margin-top:10px;display:flex;align-items:center;gap:8px}.chProgressBar{flex:1 1;height:4px;background:rgba(140,100,240,.15);border-radius:99px;overflow:hidden}.chProgressBar i{display:block;height:100%;background:var(--teal);border-radius:99px;transition:width .4s ease}.chProgress span{font-size:10px;color:var(--teal);font-weight:700;letter-spacing:.05em;white-space:nowrap}.dialogueOverlay{position:fixed;inset:0;background:rgba(5,3,17,.88);z-index:200;display:flex;align-items:flex-end;justify-content:center;padding:0 0 80px}.dialogueBox{width:min(720px,96vw);background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:16px 16px 4px 4px;padding:20px 24px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow);display:flex;gap:18px;align-items:flex-start}.dialoguePortrait{width:96px;height:128px;object-fit:cover;object-position:top center;border-radius:8px;flex-shrink:0;border:1px solid var(--panel-border);animation:portraitIn .2s ease}@keyframes portraitIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.dialogueContent{flex:1 1;min-width:0}.dialogueSpeaker{font-size:12px;font-weight:700;color:var(--teal);letter-spacing:.08em;margin-bottom:6px}.dialogueText{font-size:15px;line-height:1.7;color:var(--ink);min-height:48px}.dialogueProgress{margin-top:8px;font-size:10px;color:var(--muted);letter-spacing:.08em}.dialogueNext{margin-top:10px;display:flex;justify-content:flex-end;align-items:center;gap:10px}.dialogueNext button{background:var(--teal);color:#fff;border:none;border-radius:8px;padding:8px 24px;font-size:13px;font-weight:700;cursor:pointer;transition:opacity .15s}.dialogueNext button:hover{opacity:.85}.dialogueSkip{background:transparent!important;color:var(--muted)!important;font-size:11px!important;font-weight:400!important;padding:4px 10px!important;text-decoration:underline;text-underline-offset:2px}.abilityBadge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:6px;background:rgba(251,113,133,.15);border:1px solid rgba(251,113,133,.3);color:var(--red);font-size:11px;font-weight:700}.abilityBadge span{font-weight:400;color:var(--ink-dim)}.rewardToast{position:fixed;top:80px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,#7c3aed,#f472b6);color:#fff;padding:12px 28px;border-radius:999px;font-weight:700;z-index:300;box-shadow:0 0 24px rgba(167,139,250,.6);animation:rewardSlide 2.6s ease-out forwards;pointer-events:none}@keyframes rewardSlide{0%{opacity:0;transform:translate(-50%,-20px)}10%{opacity:1;transform:translate(-50%)}85%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-20px)}}.completeBadge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:linear-gradient(135deg,#7c3aed,#f472b6);color:#fff;border-radius:99px;font-size:12px;font-weight:700;margin-left:8px;box-shadow:0 0 16px rgba(167,139,250,.4)}.winBurst{position:absolute;inset:0;pointer-events:none;overflow:visible;z-index:0}.winParticle{position:absolute;left:50%;top:40%;width:10px;height:10px;border-radius:50%;opacity:0;animation:winParticleFloat 1.4s cubic-bezier(.22,.61,.36,1) forwards}@keyframes winParticleFloat{0%{transform:translate(-50%,-50%) scale(1.2);opacity:1}60%{opacity:.85}to{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(.2);opacity:0}}.resultModal.win{animation:winModalGlow .5s ease-out}@keyframes winModalGlow{0%{box-shadow:0 24px 80px rgba(60,110,160,.35),0 0 40px rgba(62,192,232,.25)}40%{box-shadow:0 24px 80px rgba(124,58,237,.5),0 0 80px rgba(167,139,250,.5),0 0 120px rgba(244,114,182,.3)}to{box-shadow:0 24px 80px rgba(60,110,160,.35),0 0 40px rgba(62,192,232,.25)}}.resultActions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.resultActions .primary,.resultActions .secondary{flex:1 1;min-width:120px}.noticeLinks{display:flex;gap:16px;margin-top:10px;padding-top:8px;border-top:1px solid rgba(180,215,235,.3)}.noticeLinks a{font-size:11px;color:var(--muted);text-decoration:none;letter-spacing:.04em;transition:color .15s}.noticeLinks a:hover{color:var(--teal-strong);text-decoration:underline}.staticPage{position:relative;z-index:1;min-height:100vh;padding:40px 16px 80px}.staticContainer{max-width:760px;margin:0 auto;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:16px;padding:40px 48px;-webkit-backdrop-filter:blur(var(--panel-blur));backdrop-filter:blur(var(--panel-blur));box-shadow:var(--shadow)}.staticTitle{margin:4px 0 6px;font-size:32px;font-weight:800;letter-spacing:.04em;color:var(--ink)}.staticDate{margin:0 0 28px;font-size:11px;letter-spacing:.12em;color:var(--muted)}.staticSection{margin-bottom:28px}.staticSection h2{margin:0 0 10px;font-size:14px;font-weight:700;letter-spacing:.06em;color:var(--teal);text-transform:uppercase;border-bottom:1px solid var(--line);padding-bottom:6px}.staticSection p{margin:0 0 10px;font-size:13px;line-height:1.85;color:var(--ink-dim)}.staticSection ul{margin:0 0 10px;padding-left:18px}.staticSection ul li{font-size:13px;line-height:1.85;color:var(--ink-dim);margin-bottom:4px}.staticSection a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}.staticSection strong{color:var(--ink);font-weight:700}.staticFooterLinks{display:flex;gap:20px;margin-top:32px;padding-top:20px;border-top:1px solid var(--line)}.staticFooterLinks a{font-size:12px;color:var(--ink-dim);text-decoration:none;letter-spacing:.06em;transition:color .15s;padding:6px 14px;border:1px solid var(--panel-border);border-radius:4px}.staticFooterLinks a:hover{color:var(--teal);border-color:var(--teal-dim)}@media (max-width:640px){.staticContainer{padding:24px 20px}.staticTitle{font-size:24px}}.eventBannerHome{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border:1px solid rgba(251,191,36,.4);border-radius:12px;background:linear-gradient(115deg,rgba(124,58,237,.18),rgba(251,191,36,.12));cursor:pointer;transition:border-color .15s,background .15s;text-align:left;gap:12px}.eventBannerHome:hover{border-color:rgba(251,191,36,.7);background:linear-gradient(115deg,rgba(124,58,237,.28),rgba(251,191,36,.2))}.ebhLeft{display:flex;flex-direction:column;gap:3px}.ebhLeft h3{margin:0;font-size:18px;font-weight:800;color:var(--gold);letter-spacing:.04em}.ebhSub{margin:0;font-size:12px;color:var(--ink-dim);line-height:1.55}.ebhRight{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--gold);flex-shrink:0}.ebhDays{font-size:11px;color:var(--ink-dim)}.ebhDays b{color:var(--gold);font-size:16px}.eventView{display:flex;flex-direction:column;gap:16px;padding:20px;height:100%;overflow-y:auto}.eventScoreBar{display:flex;align-items:center;gap:10px;padding:12px 16px;background:rgba(251,191,36,.08);border:1px solid rgba(251,191,36,.3);border-radius:8px;color:var(--gold);font-size:13px}.eventScoreBar strong{font-size:22px;font-weight:800;margin-left:auto}.evFullClearHint{font-size:11px;color:var(--ink-dim);margin-left:8px}.eventMissionList{gap:14px}.evMission,.eventMissionList{display:flex;flex-direction:column}.evMission{padding:18px 20px;background:var(--panel-bg);border:1px solid var(--panel-border);border-left:4px solid var(--teal);border-radius:8px;-webkit-backdrop-filter:blur(var(--panel-blur));backdrop-filter:blur(var(--panel-blur));gap:10px}.evMission.cleared{border-left-color:var(--gold);opacity:.85}.evMission.locked{border-left-color:var(--muted);opacity:.6}.evmHead{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.evmWave{font-size:9px;font-weight:800;letter-spacing:.2em;color:var(--teal);background:var(--teal-pale);border:1px solid var(--teal-dim);padding:2px 8px;border-radius:3px}.evmHead h3{margin:0;font-size:16px;font-weight:700;color:var(--ink);flex:1 1}.evmBadge{font-size:10px;font-weight:800;letter-spacing:.08em;padding:3px 10px;border-radius:3px}.evmBadge.clear{background:rgba(251,191,36,.15);color:var(--gold);border:1px solid rgba(251,191,36,.4)}.evmBadge.lock{background:rgba(92,82,128,.2);color:var(--muted);border:1px solid rgba(92,82,128,.3)}.evmDesc{margin:0;font-size:12px;color:var(--ink-dim);line-height:1.7}.evmStats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.evmStats>div{padding:8px 10px;background:rgba(255,255,255,.04);border:1px solid var(--panel-border);border-radius:4px;text-align:center}.evmStats span{display:block;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:2px}.evmStats strong{font-size:20px;font-weight:800;color:var(--teal)}.evmAbility{padding:6px 12px;background:var(--red-pale);border:1px solid rgba(251,113,133,.3);border-radius:4px;font-size:11px;color:var(--red);font-weight:700}.evmRewards{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--ink-dim)}.evmRewardDone{font-size:10px;color:var(--gold);font-weight:700;margin-left:auto}.evDeckWarn{padding:10px 14px;background:var(--red-pale);border:1px solid rgba(251,113,133,.3);border-radius:6px;font-size:12px;color:var(--red)}.rankingModal{max-width:620px}.rankMyRank{margin:4px 0 16px;font-size:13px;color:var(--ink-dim)}.rankMyRank strong{color:var(--teal-strong);font-size:18px;font-weight:800}.rankLoading{padding:32px}.rankEmpty,.rankLoading{text-align:center;color:var(--ink-dim);font-size:13px}.rankEmpty{padding:24px;line-height:1.8}.rankTable{display:flex;flex-direction:column;border:1px solid var(--panel-border);border-radius:8px;overflow:hidden;margin-bottom:4px}.rankRow{display:grid;grid-template-columns:36px 1fr 64px 72px 64px 64px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--panel-border);font-size:13px;grid-gap:4px;gap:4px}.rankRow:last-child{border-bottom:0}.rankHeader{background:rgba(255,255,255,.04);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:700}.rankRow.myRow{background:rgba(167,139,250,.1);border-left:3px solid var(--teal)}.rankRow>span:first-child{font-weight:800;color:var(--teal-strong)}.topIcon[aria-label="BGM ON"]{color:var(--teal)}.titleScreen{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse 100% 80% at 50% 30%,#1a0f45 0,#0a0618 50%,#050311 100%);overflow:hidden}.titleStars{position:absolute;inset:0;pointer-events:none}.titleStar{position:absolute;width:2px;height:2px;border-radius:50%;background:#fff;box-shadow:0 0 4px rgba(255,255,255,.8);animation:titleStarTwinkle 3s ease-in-out infinite}@keyframes titleStarTwinkle{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.4)}}.titleGradient{position:absolute;inset:0;background:radial-gradient(ellipse 80% 50% at 50% 50%,rgba(124,58,237,.15),transparent 70%);pointer-events:none}.titleContent{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 20px;opacity:0;transform:translateY(20px);animation:titleFadeIn 1.6s ease-out forwards}@keyframes titleFadeIn{to{opacity:1;transform:translateY(0)}}.titleEyebrow{font-size:12px;letter-spacing:.4em;color:var(--teal);margin:0 0 24px;text-transform:uppercase;animation:titleGlow 3s ease-in-out infinite}@keyframes titleGlow{0%,to{text-shadow:0 0 10px rgba(167,139,250,.5)}50%{text-shadow:0 0 20px rgba(167,139,250,.9)}}.titleLogo{font-size:clamp(48px,9vw,88px);font-weight:900;line-height:1.05;letter-spacing:.04em;margin:0 0 20px;color:#fff;text-shadow:0 0 30px rgba(167,139,250,.6),0 0 60px rgba(124,58,237,.4)}.titleTagline{font-size:clamp(14px,2vw,18px);color:var(--ink-dim);margin:0 0 32px;letter-spacing:.12em}.titleWorld{font-size:13px;color:var(--muted);line-height:1.9;margin:0 0 40px;letter-spacing:.04em}.titleStart{display:inline-flex;align-items:center;gap:8px;padding:16px 48px;background:linear-gradient(135deg,#7c3aed,#a78bfa 50%,#f472b6);background-size:200% 100%;border:none;border-radius:99px;color:#fff;font-size:16px;font-weight:800;letter-spacing:.08em;cursor:pointer;box-shadow:0 8px 32px rgba(124,58,237,.5),0 0 60px rgba(167,139,250,.3);animation:titleBtnShimmer 3s ease-in-out infinite,titlePulse 2s ease-in-out infinite;transition:transform .2s}.titleStart:hover{transform:scale(1.05)}.titleStart:active{transform:scale(.98)}@keyframes titleBtnShimmer{0%,to{background-position:0 0}50%{background-position:100% 0}}@keyframes titlePulse{0%,to{box-shadow:0 8px 32px rgba(124,58,237,.5),0 0 60px rgba(167,139,250,.3)}50%{box-shadow:0 8px 48px rgba(124,58,237,.8),0 0 100px rgba(167,139,250,.6)}}.titleHint{margin:16px 0 0;font-size:11px;color:var(--muted);letter-spacing:.16em;animation:titleHintBlink 2s ease-in-out infinite}@keyframes titleHintBlink{0%,to{opacity:.4}50%{opacity:1}}.firstGachaBanner{position:relative;display:block;width:100%;padding:0;border:2px solid transparent;border-radius:14px;background:linear-gradient(115deg,rgba(124,58,237,.95),rgba(244,114,182,.95) 50%,rgba(251,191,36,.95)) padding-box,linear-gradient(135deg,#a78bfa,#f472b6,#fbbf24) border-box;cursor:pointer;overflow:hidden;animation:fgBannerGlow 3.5s ease-in-out infinite;transition:transform .2s;text-align:left}.firstGachaBanner:hover{transform:translateY(-2px)}@keyframes fgBannerGlow{0%,to{box-shadow:0 0 24px rgba(167,139,250,.4)}50%{box-shadow:0 0 60px rgba(244,114,182,.6)}}.fgbGlow{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 50%,rgba(255,255,255,.2),transparent 70%);pointer-events:none;animation:fgGlowRotate 8s linear infinite}@keyframes fgGlowRotate{0%{transform:rotate(0deg) scale(1)}to{transform:rotate(1turn) scale(1.2)}}.fgbContent{position:relative;display:flex;align-items:center;justify-content:space-between;padding:18px 22px;gap:12px;color:#fff}.fgbLeft{display:flex;flex-direction:column;gap:3px}.fgbTag{margin:0;font-size:10px;letter-spacing:.2em;opacity:.9}.fgbLeft h2{margin:4px 0 6px;font-size:22px;font-weight:900;letter-spacing:.04em;text-shadow:0 2px 8px rgba(0,0,0,.3)}.fgbSub{margin:0;font-size:12px;line-height:1.6;opacity:.95}.fgbRight{display:flex;flex-direction:column;align-items:center;gap:6px;flex-shrink:0}.fgbCta{padding:6px 14px;background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.4);border-radius:99px;font-size:11px;font-weight:800;letter-spacing:.1em}.firstGachaBackdrop{background:rgba(5,3,17,.92)}.firstGachaShell{position:relative;width:min(820px,96vw);max-height:92vh;padding:28px 32px;background:var(--panel-strong);border:1px solid rgba(244,114,182,.4);border-radius:16px;box-shadow:0 0 80px rgba(244,114,182,.4);text-align:center;overflow-y:auto}.firstGachaTitle{margin:8px 0 24px;font-size:26px;font-weight:900;letter-spacing:.06em;background:linear-gradient(90deg,#a78bfa,#f472b6,#fbbf24);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.firstGachaGrid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:10px;gap:10px;margin-bottom:20px}@media (max-width:640px){.firstGachaGrid{grid-template-columns:repeat(3,1fr)}}.fgPullCard{position:relative;border-radius:6px;overflow:hidden;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.fgPullCard.hidden{transform:rotateY(180deg) scale(.9);opacity:.5}.fgPullCard.revealed{transform:rotateY(0deg) scale(1);animation:fgReveal .6s ease-out}@keyframes fgReveal{0%{transform:scale(.6) rotateY(180deg);opacity:0}60%{transform:scale(1.08) rotateY(0deg)}to{transform:scale(1) rotateY(0deg);opacity:1}}.fgPullCard.ultra{animation:fgReveal .6s ease-out,fgUltraBurst 1.4s ease-out;box-shadow:0 0 30px rgba(244,114,182,.6),0 0 60px rgba(251,191,36,.5),0 0 90px rgba(167,139,250,.4)}@keyframes fgUltraBurst{0%{box-shadow:0 0 0 rgba(244,114,182,0)}40%{box-shadow:0 0 60px rgba(244,114,182,1),0 0 100px rgba(251,191,36,.8)}to{box-shadow:0 0 30px rgba(244,114,182,.6),0 0 60px rgba(251,191,36,.5)}}.fgPullBack{display:flex;align-items:center;justify-content:center;aspect-ratio:5/7;background:linear-gradient(135deg,#1a0f45,#2d1b69);border:1px solid var(--panel-border);border-radius:6px;color:var(--teal)}.fgRarityBadge{position:absolute;top:4px;left:4px;font-size:9px;font-weight:800;padding:2px 6px;border-radius:3px;z-index:2}.fg-N{background:rgba(155,143,196,.3);color:var(--ink)}.fg-R{background:rgba(110,177,255,.4);color:#cfe6ff}.fg-SR{background:linear-gradient(135deg,#94a3b8,#cbd5e1);color:#1e293b}.fg-SSR{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#3a2206}.fg-UR{background:linear-gradient(135deg,#a78bfa,#f472b6,#fbbf24);color:#fff;animation:fgURPulse 1.5s ease-in-out infinite}@keyframes fgURPulse{0%,to{box-shadow:0 0 5px rgba(244,114,182,.5)}50%{box-shadow:0 0 15px rgba(244,114,182,1)}}.firstGachaActions{display:flex;justify-content:center;gap:12px}.starterDash{padding:16px 18px;border:1px solid rgba(251,191,36,.35);border-radius:12px;background:linear-gradient(115deg,rgba(124,58,237,.18),rgba(251,191,36,.1))}.sdHead{display:flex;flex-direction:column;gap:2px;margin-bottom:12px}.sdHead h3{margin:2px 0 4px;font-size:16px;font-weight:800;color:var(--gold);letter-spacing:.04em;display:flex;align-items:center;gap:10px}.sdProgress{padding:2px 10px;border:1px solid var(--panel-border);border-radius:99px;background:rgba(0,0,0,.2)}.sdProgress,.sdSub{font-size:11px;color:var(--ink-dim)}.sdSub{margin:0;line-height:1.6}.sdSub b{color:var(--gold)}.sdStrip{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:6px;gap:6px;margin-bottom:14px}.sdCell{position:relative;padding:8px 4px;border:1px solid var(--panel-border);border-radius:6px;background:rgba(255,255,255,.04);text-align:center;font-size:10px;min-height:80px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px}.sdCell.today{border-color:var(--gold);background:rgba(251,191,36,.15);box-shadow:0 0 16px rgba(251,191,36,.4);animation:sdTodayPulse 2s ease-in-out infinite}@keyframes sdTodayPulse{0%,to{box-shadow:0 0 12px rgba(251,191,36,.3)}50%{box-shadow:0 0 24px rgba(251,191,36,.7)}}.sdCell.claimed{opacity:.55;border-color:rgba(167,139,250,.3)}.sdCell.locked{opacity:.35}.sdCell.pull-sr{border-color:rgba(148,163,184,.6)}.sdCell.pull-ssr{border-color:rgba(251,191,36,.6);background:rgba(251,191,36,.08)}.sdCell.pull-ur{border-color:rgba(244,114,182,.7);background:linear-gradient(135deg,rgba(167,139,250,.15),rgba(244,114,182,.15));box-shadow:0 0 12px rgba(244,114,182,.3)}.sdDay{font-weight:800;color:var(--teal);letter-spacing:.08em;font-size:9px}.sdReward{display:flex;flex-direction:column;gap:2px}.sdReward>span{font-size:9px;color:var(--ink-dim)}.sdPullBadge{display:inline-block;margin-top:2px;padding:1px 4px;background:linear-gradient(135deg,#a78bfa,#f472b6);color:#fff;font-size:8px;font-weight:800;border-radius:2px;letter-spacing:.08em}.sdCheck{position:absolute;top:2px;right:2px;width:16px;height:16px;border-radius:50%;background:var(--teal);color:#fff;display:flex;align-items:center;justify-content:center}.sdClaimBtn{width:100%}@media (max-width:640px){.sdStrip{grid-template-columns:repeat(4,1fr);gap:4px}.sdCell{min-height:70px;padding:6px 2px}.sdCell:nth-child(n+8){display:none}}.sdRewardShell{max-width:460px;padding:28px 24px;text-align:center}.sdRewardTitle{margin:6px 0 16px;font-size:22px;font-weight:800;color:var(--gold);letter-spacing:.04em}.sdRewardCard{display:flex;justify-content:center;margin:0 0 20px}.sdRewardCard>article{max-width:200px}.sdRewardList{display:flex;flex-direction:column;gap:6px;margin-bottom:20px;padding:12px 14px;border:1px solid var(--panel-border);border-left:3px solid var(--teal);border-radius:6px;text-align:left}.sdRewardRow{display:flex;justify-content:space-between;padding:3px 0;font-size:13px}.sdRewardRow span{color:var(--ink-dim)}.sdRewardRow strong{color:var(--teal-strong);font-weight:800}.rarityBurst{position:absolute;inset:0;pointer-events:none;z-index:0}.rarityRay{position:absolute;top:50%;left:50%;width:4px;height:200%;margin-left:-2px;margin-top:-100%;transform-origin:center;opacity:0;animation:rayBurst 1.6s ease-out forwards}.burst-ur .rarityRay{background:linear-gradient(180deg,transparent 0,rgba(244,114,182,.8) 30%,rgba(251,191,36,1) 50%,rgba(167,139,250,.8) 70%,transparent);filter:blur(1px)}.burst-ssr .rarityRay{background:linear-gradient(180deg,transparent 0,rgba(251,191,36,.9) 50%,transparent);filter:blur(1px)}.burst-sr .rarityRay{background:linear-gradient(180deg,transparent 0,rgba(203,213,225,.8) 50%,transparent)}@keyframes rayBurst{0%{opacity:0;transform:scale(.4) rotate(var(--r,0deg))}30%{opacity:.9}to{opacity:0;transform:scale(1.4) rotate(var(--r,0deg))}}.firstGachaGrid.small{grid-template-columns:repeat(3,1fr);max-width:480px;margin-left:auto;margin-right:auto}.firstGachaShell.burst-ur{animation:shellGlowUR 2s ease-out}.firstGachaShell.burst-ssr{animation:shellGlowSSR 2s ease-out}@keyframes shellGlowUR{0%{box-shadow:0 0 0 transparent}40%{box-shadow:0 0 100px rgba(244,114,182,.9),0 0 200px rgba(251,191,36,.6)}to{box-shadow:0 0 80px rgba(244,114,182,.4)}}@keyframes shellGlowSSR{0%{box-shadow:0 0 0 transparent}40%{box-shadow:0 0 80px rgba(251,191,36,.8)}to{box-shadow:0 0 60px rgba(251,191,36,.4)}}.cardPlayFlash{position:absolute;inset:0;pointer-events:none;z-index:5;animation:cardPlayFlashAnim .8s ease-out forwards;mix-blend-mode:screen}@keyframes cardPlayFlashAnim{0%{opacity:0}20%{opacity:.7}to{opacity:0}}.flash-violet{background:radial-gradient(ellipse at center,rgba(167,139,250,.5) 0,transparent 70%)}.flash-indigo{background:radial-gradient(ellipse at center,rgba(99,102,241,.5) 0,transparent 70%)}.flash-cyan{background:radial-gradient(ellipse at center,rgba(6,182,212,.5) 0,transparent 70%)}.flash-aqua{background:radial-gradient(ellipse at center,rgba(34,211,238,.5) 0,transparent 70%)}.flash-steel{background:radial-gradient(ellipse at center,rgba(148,163,184,.5) 0,transparent 70%)}.flash-copper{background:radial-gradient(ellipse at center,rgba(180,83,9,.5) 0,transparent 70%)}.flash-green{background:radial-gradient(ellipse at center,rgba(132,204,22,.5) 0,transparent 70%)}.flash-leaf{background:radial-gradient(ellipse at center,rgba(74,222,128,.5) 0,transparent 70%)}.flash-gold{background:radial-gradient(ellipse at center,rgba(251,191,36,.6) 0,transparent 70%)}.flash-amber{background:radial-gradient(ellipse at center,rgba(245,158,11,.5) 0,transparent 70%)}.flash-rose{background:radial-gradient(ellipse at center,rgba(244,114,182,.5) 0,transparent 70%)}.flash-pink{background:radial-gradient(ellipse at center,rgba(236,72,153,.5) 0,transparent 70%)}.flash-frost{background:radial-gradient(ellipse at center,rgba(56,189,248,.5) 0,transparent 70%)}.flash-crimson{background:radial-gradient(ellipse at center,rgba(248,113,113,.5) 0,transparent 70%)}.flash-teal{background:radial-gradient(ellipse at center,rgba(45,212,191,.5) 0,transparent 70%)}.richDetailModal{position:relative}.richDetailModal.rarity-shell-UR{border-top:4px solid transparent;background-image:linear-gradient(var(--panel-strong),var(--panel-strong)),linear-gradient(90deg,#a78bfa,#f472b6,#fbbf24);background-origin:border-box;background-clip:padding-box,border-box;box-shadow:0 24px 80px rgba(244,114,182,.4),0 0 60px rgba(244,114,182,.3)}.richDetailModal.rarity-shell-SSR{border-top:3px solid #fbbf24;box-shadow:0 24px 80px rgba(251,191,36,.3),0 0 40px rgba(251,191,36,.2)}.richDetailModal.rarity-shell-SR{border-top:3px solid #94a3b8}.detailRarityRibbon{position:absolute;top:-2px;right:22px;padding:6px 16px;font-size:13px;font-weight:900;letter-spacing:.18em;z-index:2;border-radius:0 0 6px 6px;text-shadow:0 1px 2px rgba(0,0,0,.3)}.rib-UR{background:linear-gradient(135deg,#a78bfa,#f472b6,#fbbf24);color:#fff}.rib-SSR{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#3a2206}.rib-SR{background:linear-gradient(135deg,#94a3b8,#cbd5e1);color:#1e293b}.rib-R{background:linear-gradient(135deg,#60a5fa,#93c5fd);color:#1e3a8a}.rib-N{background:rgba(155,143,196,.4);color:var(--ink)}.detailFactionBadge{display:inline-flex;align-items:center;gap:8px;padding:4px 12px;background:rgba(167,139,250,.1);border:1px solid var(--panel-border);border-radius:99px;font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--ink);margin-bottom:8px}.detailRoleBadge{padding:2px 8px;background:var(--teal-pale);border-radius:3px;font-size:9px;color:var(--teal);letter-spacing:.12em}.factionDot{width:10px;height:10px;border-radius:50%;display:inline-block}.tone-violet{background:#a78bfa;box-shadow:0 0 8px rgba(167,139,250,.6)}.tone-indigo{background:#6366f1;box-shadow:0 0 8px rgba(99,102,241,.6)}.tone-cyan{background:#06b6d4;box-shadow:0 0 8px rgba(6,182,212,.6)}.tone-aqua{background:#22d3ee;box-shadow:0 0 8px rgba(34,211,238,.6)}.tone-steel{background:#94a3b8;box-shadow:0 0 8px rgba(148,163,184,.6)}.tone-copper{background:#b45309;box-shadow:0 0 8px rgba(180,83,9,.6)}.tone-green{background:#84cc16;box-shadow:0 0 8px rgba(132,204,22,.6)}.tone-leaf{background:#4ade80;box-shadow:0 0 8px rgba(74,222,128,.6)}.tone-gold{background:#fbbf24;box-shadow:0 0 8px rgba(251,191,36,.6)}.tone-amber{background:#f59e0b;box-shadow:0 0 8px rgba(245,158,11,.6)}.tone-rose{background:#f472b6;box-shadow:0 0 8px rgba(244,114,182,.6)}.tone-pink{background:#ec4899;box-shadow:0 0 8px rgba(236,72,153,.6)}.tone-frost{background:#38bdf8;box-shadow:0 0 8px rgba(56,189,248,.6)}.tone-crimson{background:#f87171;box-shadow:0 0 8px rgba(248,113,113,.6)}.tone-teal{background:#2dd4bf;box-shadow:0 0 8px rgba(45,212,191,.6)}.detailName{margin:4px 0 2px;font-size:22px;font-weight:800;letter-spacing:.02em}.statBars{display:flex;flex-direction:column;gap:6px;margin:16px 0;padding:12px 14px;background:rgba(0,0,0,.2);border:1px solid var(--panel-border);border-radius:6px}.statBarRow{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;grid-gap:10px;gap:10px;font-size:11px}.sbLabel{font-weight:700;letter-spacing:.1em;color:var(--ink-dim)}.sbTrack{position:relative;height:8px;background:rgba(167,139,250,.1);border-radius:4px;overflow:hidden}.sbTrack i{position:absolute;inset:0;border-radius:4px;transition:width .4s ease}.sb-atk{background:linear-gradient(90deg,#f472b6,#fb7185)}.sb-grd{background:linear-gradient(90deg,#60a5fa,#a78bfa)}.sb-wev{background:linear-gradient(90deg,#34d399,#06b6d4)}.sb-cost{background:linear-gradient(90deg,#fbbf24,#f59e0b)}.statBarRow strong{text-align:right;font-weight:800;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.affinityBlock{margin:14px 0;padding:12px 14px;background:linear-gradient(135deg,rgba(244,114,182,.1),rgba(167,139,250,.1));border:1px solid rgba(244,114,182,.3);border-radius:6px}.affinityHead{display:flex;align-items:center;gap:10px;margin-bottom:6px;font-size:11px;letter-spacing:.08em}.affinityHead span{color:var(--ink-dim)}.affinityHead strong{color:var(--pink);font-size:14px;font-weight:800}.affinityHead small{color:var(--muted);margin-left:auto}.affinityTrack{height:6px;background:rgba(244,114,182,.15);border-radius:3px;overflow:hidden;margin-bottom:6px}.affinityTrack i{display:block;height:100%;background:linear-gradient(90deg,#f472b6,#fbbf24);border-radius:3px;transition:width .4s ease}.affinityHint{margin:0;font-size:10px;color:var(--muted);line-height:1.5}.currGem{cursor:pointer;background:linear-gradient(135deg,rgba(167,139,250,.15),rgba(244,114,182,.15));border-color:rgba(167,139,250,.5)}.currGem:hover{background:linear-gradient(135deg,rgba(167,139,250,.3),rgba(244,114,182,.3))}.currGem svg{color:var(--pink)}.rail-supporter{background:linear-gradient(135deg,rgba(251,191,36,.15),rgba(244,114,182,.15))!important;border-color:var(--gold)!important;box-shadow:0 0 12px rgba(251,191,36,.3)!important}.rail-supporter svg{color:var(--gold)}.homeViewV2.supporter-active{gap:10px}.supporterBanner{display:flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid var(--gold);border-radius:10px;background:linear-gradient(115deg,rgba(251,191,36,.18),rgba(244,114,182,.12) 50%,rgba(167,139,250,.15));box-shadow:0 0 24px rgba(251,191,36,.25);animation:supporterShimmer 4s ease-in-out infinite}@keyframes supporterShimmer{0%,to{box-shadow:0 0 24px rgba(251,191,36,.25)}50%{box-shadow:0 0 48px rgba(251,191,36,.5)}}.supporterBanner>svg{color:var(--gold);flex-shrink:0}.sbName{font-size:14px;font-weight:800;color:var(--gold);letter-spacing:.06em;text-shadow:0 0 8px rgba(251,191,36,.6)}.sbDays{font-size:11px;color:var(--ink-dim);margin-left:auto;padding:3px 10px;background:rgba(0,0,0,.25);border-radius:99px;border:1px solid var(--panel-border)}.sbClaim{padding:6px 12px;background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#3a2206;border:none;border-radius:6px;font-size:11px;font-weight:800;letter-spacing:.04em;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:filter .15s}.sbClaim:hover{filter:brightness(1.1)}.sbClaimed{font-size:11px;color:var(--muted);font-weight:600}.profilePanel{padding:14px 16px;border:1px solid var(--panel-border);border-radius:12px;background:rgba(14,10,38,.5)}.profileHead{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.profileTitleBtn{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;background:linear-gradient(135deg,rgba(167,139,250,.15),rgba(244,114,182,.15));border:1px solid var(--teal-dim);border-radius:99px;font-size:12px;font-weight:700;color:var(--ink);cursor:pointer;letter-spacing:.04em;transition:border-color .15s}.profileTitleBtn:hover{border-color:var(--teal)}.profileNameRow{display:flex;align-items:center;gap:6px;margin-bottom:10px}.profileNameBtn{display:inline-flex;align-items:center;gap:6px;background:none;border:1px dashed rgba(167,139,250,.3);border-radius:6px;padding:4px 10px;color:#c9a0ff;font-size:13px;cursor:pointer;transition:border-color .15s}.profileNameBtn:hover{border-color:var(--teal)}.profileNameEdit{font-size:11px;opacity:.6}.profileNameInput{flex:1 1;background:rgba(14,10,38,.8);border:1px solid var(--teal);border-radius:6px;padding:4px 10px;color:#e0d8f0;font-size:13px;outline:none}.profileNameSave{padding:4px 10px;background:var(--teal);color:#0d0d1a;border:none;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer}.profileNameCancel{padding:4px 8px;background:none;border:1px solid #444;border-radius:6px;color:#888;font-size:12px;cursor:pointer}.affinityTop{display:flex;flex-direction:column;gap:4px}.affEyebrow{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin:0 0 4px}.affinityTop ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.affinityTop li{display:grid;grid-template-columns:36px 1fr 60px 50px;align-items:center;grid-gap:8px;gap:8px;padding:6px 8px;background:rgba(255,255,255,.04);border-radius:6px;font-size:12px}.affPortrait{width:32px;height:32px;object-fit:cover;border-radius:50%;border:1px solid var(--panel-border)}.affName{color:var(--ink);font-weight:600}.affLv{font-weight:800;color:var(--pink);text-align:center;padding:2px 6px;background:rgba(244,114,182,.1);border-radius:3px;letter-spacing:.04em}.affLv,.affPt{font-size:11px}.affPt{color:var(--ink-dim);text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.titleSelectShell{max-width:480px}.titleList{display:flex;flex-direction:column;gap:4px;max-height:60vh;overflow-y:auto;margin-top:16px}.titleRow{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border:1px solid var(--panel-border);border-radius:6px;background:rgba(255,255,255,.04);cursor:pointer;transition:border-color .15s,background .15s;color:inherit}.titleRow:hover:not(:disabled){border-color:var(--teal);background:rgba(167,139,250,.08)}.titleRow:disabled{opacity:.4;cursor:not-allowed}.titleRow.active{border-color:var(--teal);background:rgba(167,139,250,.15)}.titleRow.supporter.earned{border-color:var(--gold);background:linear-gradient(135deg,rgba(251,191,36,.15),rgba(244,114,182,.1))}.titleRowLeft{display:flex;flex-direction:column;gap:2px;align-items:flex-start}.titleName{font-size:13px;font-weight:700;color:var(--ink)}.titleRow.supporter.earned .titleName{color:var(--gold)}.titleCondition{font-size:10px;color:var(--muted);letter-spacing:.04em}.titleSet{font-size:10px;color:var(--teal);letter-spacing:.12em}.shopView{display:flex;flex-direction:column;gap:20px;padding:20px;overflow-y:auto;height:100%}.shopGemBalance{display:inline-flex;align-items:center;gap:4px;margin-left:10px;padding:3px 10px;font-size:12px;background:linear-gradient(135deg,rgba(167,139,250,.15),rgba(244,114,182,.15));border:1px solid var(--teal-dim);border-radius:99px;color:var(--pink)}.passCard{position:relative;padding:0;border-radius:14px;background-image:linear-gradient(var(--panel-strong),var(--panel-strong)),linear-gradient(135deg,#fbbf24,#f472b6,#a78bfa);background-origin:border-box;background-clip:padding-box,border-box;border:2px solid transparent;overflow:hidden}.passCard.active{box-shadow:0 0 32px rgba(251,191,36,.4)}.passShine{position:absolute;inset:0;background:radial-gradient(ellipse at top right,rgba(251,191,36,.15),transparent 60%);pointer-events:none}.passContent{position:relative;display:grid;grid-template-columns:1fr 220px;grid-gap:20px;gap:20px;padding:20px 24px}@media (max-width:640px){.passContent{grid-template-columns:1fr}}.passEyebrow{display:inline-flex;align-items:center;gap:6px;margin:0 0 4px;font-size:10px;font-weight:800;letter-spacing:.2em;color:var(--gold);text-transform:uppercase}.passLeft h3{margin:4px 0 12px;font-size:22px;font-weight:900;letter-spacing:.04em;color:var(--ink)}.passPerks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.passPerks li{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-dim);line-height:1.55}.passPerks li b{color:var(--gold);font-weight:800}.passPerks li svg{color:var(--teal);flex-shrink:0}.passRight{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:10px;padding:12px;background:rgba(0,0,0,.2);border:1px solid var(--panel-border);border-radius:8px}.passPrice{text-align:center;margin:0;font-size:32px;font-weight:900;color:var(--gold);letter-spacing:.04em}.passPrice small{font-size:12px;color:var(--ink-dim);font-weight:600}.passBuyBtn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:linear-gradient(135deg,#fbbf24,#f472b6);font-weight:800;letter-spacing:.08em}.passActiveBadge{text-align:center;padding:6px 12px;background:rgba(251,191,36,.15);border:1px solid var(--gold);border-radius:6px;font-size:11px;font-weight:800;color:var(--gold);letter-spacing:.06em}.shopSection{padding:16px;border:1px solid var(--panel-border);border-radius:10px;background:rgba(14,10,38,.4)}.shopSectionTitle{display:flex;align-items:center;gap:6px;margin:0 0 12px;font-size:14px;font-weight:800;letter-spacing:.08em;color:var(--ink)}.gemPackGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:10px;gap:10px}.gemPack{position:relative;padding:16px 12px;border:1px solid var(--panel-border);border-radius:10px;background:rgba(255,255,255,.04);text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px}.gemPack.popular{border-color:var(--gold);background:linear-gradient(135deg,rgba(251,191,36,.08),rgba(244,114,182,.05));box-shadow:0 0 16px rgba(251,191,36,.25)}.gemPackTag{position:absolute;top:-10px;right:10px;padding:3px 10px;background:linear-gradient(135deg,#fbbf24,#f472b6);color:#3a2206;font-size:9px;font-weight:800;letter-spacing:.12em;border-radius:99px}.gemPackIcon{color:var(--pink)}.gemPackLabel{margin:4px 0 0;font-size:11px;letter-spacing:.1em;color:var(--ink-dim)}.gemPackAmount{margin:0;font-size:22px;font-weight:900;color:var(--ink);letter-spacing:.02em}.gemPackAmount small{font-size:11px;color:var(--ink-dim);font-weight:600;margin-left:4px}.gemPackBonus{margin:0 0 6px;font-size:10px;color:var(--gold);font-weight:800;letter-spacing:.06em}.gemPack button{width:100%}.exchangeList{display:flex;flex-direction:column;gap:8px}.exchangeRow{display:grid;grid-template-columns:1fr auto 80px;align-items:center;grid-gap:12px;gap:12px;padding:10px 14px;border:1px solid var(--panel-border);border-radius:6px;background:rgba(255,255,255,.04)}.exLabel{font-size:13px;color:var(--ink);font-weight:600}.exCost{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:800;color:var(--pink)}.exchangeRow button{padding:6px 12px;font-size:11px}.shopDisclaimer{margin:0;padding:12px 16px;background:rgba(251,113,133,.08);border:1px solid rgba(251,113,133,.2);border-radius:6px;font-size:11px;color:var(--ink-dim);line-height:1.7;text-align:center}.paymentMockShell{max-width:380px;padding:28px 24px;text-align:center}.paymentPrice{margin:8px 0 16px;font-size:36px;font-weight:900;color:var(--gold)}.paymentNote{margin:0 0 20px;padding:12px;background:rgba(167,139,250,.08);border:1px solid var(--panel-border);border-radius:6px;font-size:11px;color:var(--ink-dim);line-height:1.7}.paymentActions{display:flex;gap:10px}.paymentActions button{flex:1 1}.rankRow.supporterRow{background:linear-gradient(90deg,rgba(251,191,36,.15),rgba(244,114,182,.08));border-left:3px solid var(--gold);box-shadow:inset 0 0 12px rgba(251,191,36,.15)}.rankRow.supporterRow>span:nth-child(2){color:var(--gold);font-weight:800}.pickupBanner{margin-bottom:18px;border-radius:14px;background:linear-gradient(135deg,rgba(167,139,250,.22),rgba(244,114,182,.18));border:1px solid rgba(167,139,250,.45);position:relative;overflow:hidden}.pickupBannerInner{padding:16px 18px;display:flex;align-items:center;gap:16px;justify-content:space-between}.pickupBannerLeft{flex:1 1}.pickupBannerLeft h3{font-size:16px;margin:4px 0 6px;color:var(--ink-bright)}.pickupSub{font-size:12px;color:var(--ink-dim);margin:0 0 8px}.pickupHeroines{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:6px}.pickupHeroineBadge{padding:2px 10px;border-radius:999px;background:rgba(167,139,250,.3);border:1px solid rgba(167,139,250,.5);font-size:12px;color:#c4b5fd;font-weight:600}.pickupNote{font-size:11px;color:var(--ink-dim)}.pickupDays{font-size:12px;color:var(--ink-dim);margin:0}.pickupDays b{color:#f472b6}.pickupPullBtn{white-space:nowrap;padding:10px 16px;font-size:13px}.affinityBondBackdrop{background:rgba(7,5,20,.75);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.affinityBondShell{max-width:440px;width:92%;background:linear-gradient(160deg,#0e0a24,#180f30);border:1px solid rgba(167,139,250,.5);border-radius:20px;padding:28px 24px 20px;position:relative;overflow:hidden;animation:bondIn .5s cubic-bezier(.34,1.56,.64,1) both}@keyframes bondIn{0%{opacity:0;transform:scale(.85) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.abGlow{position:absolute;top:-40px;left:50%;transform:translateX(-50%);width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(244,114,182,.25) 0,transparent 70%);pointer-events:none}.abContent{display:flex;gap:16px;align-items:flex-start}.abPortrait{width:80px;height:80px;border-radius:12px;object-fit:cover;object-position:top center;border:2px solid rgba(244,114,182,.5);flex-shrink:0}.abText{flex:1 1}.abEyebrow{font-size:11px;color:#f472b6;font-weight:700;letter-spacing:.05em;display:flex;align-items:center;gap:5px;margin:0 0 4px}.abLevel{font-size:13px;color:#c4b5fd;font-weight:700;margin:0 0 10px}.abQuote{font-size:13px;color:var(--ink-bright);line-height:1.7;margin:0;border-left:2px solid rgba(244,114,182,.4);padding-left:10px;font-style:italic}.abHint{text-align:center;font-size:11px;color:var(--ink-dim);margin:14px 0 0}.pvpView{padding-bottom:24px}.pvpWinBadge{font-size:13px;font-weight:600;color:#a78bfa;background:rgba(167,139,250,.15);border-radius:999px;padding:2px 12px;margin-left:8px}.pvpTabs{display:flex;gap:0;margin-bottom:16px;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.08)}.pvpTab{flex:1 1;padding:10px;background:rgba(255,255,255,.04);border:none;color:var(--ink-dim);font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:background .2s,color .2s}.pvpTab.active{background:rgba(167,139,250,.18);color:var(--ink-bright);font-weight:600}.pvpListHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:13px;color:var(--ink-dim)}.pvpOpponentList{padding:0}.pvpOpponentRow{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;background:rgba(255,255,255,.04);margin-bottom:8px;border:1px solid rgba(255,255,255,.06)}.pvpOpInfo{flex:1 1}.pvpOpName{font-weight:700;font-size:14px;color:var(--ink-bright);display:block;margin-bottom:4px}.pvpOpStats{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--ink-dim)}.pvpOpThreat{color:#f87171;font-weight:600}.pvpChallengeBtn{padding:8px 16px;font-size:13px;white-space:nowrap}.pvpEmpty,.pvpLoading{text-align:center;color:var(--ink-dim);font-size:13px;padding:32px 0;line-height:1.8}.pvpDeckWarn{font-size:12px;color:#f87171;margin-top:10px;text-align:center}.pvpFriendPanel{padding:0}.friendAddRow{margin-bottom:20px}.friendHint{font-size:12px;color:var(--ink-dim);margin:4px 0 10px;line-height:1.6}.friendInputRow{display:flex;gap:8px}.friendInput{flex:1 1;padding:8px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:var(--ink-bright);font-size:13px}.friendInput::placeholder{color:var(--ink-dim)}.friendList{margin-bottom:20px}.friendRow{display:flex;align-items:center;gap:10px;padding:10px 14px;background:rgba(255,255,255,.04);border-radius:8px;margin-bottom:6px}.friendName{font-weight:700;font-size:14px;color:var(--ink-bright);flex:1 1}.friendId{font-size:11px;color:var(--ink-dim);font-family:monospace}.myCodeBlock{margin-top:20px;padding:14px;background:rgba(255,255,255,.04);border-radius:10px;border:1px solid rgba(255,255,255,.08)}.myCodeRow{display:flex;gap:10px;align-items:center;margin-top:8px}.myCode{flex:1 1;font-family:monospace;font-size:11px;color:#a78bfa;word-break:break-all;background:rgba(167,139,250,.1);padding:6px 10px;border-radius:6px}