:root{--brand-1: #c454f7;--brand-2: #9d99ea;--brand-3: #75dddd;--brand-4: #5c73e3;--brand-5: #34435e;--bg-main: #f4f7ff;--bg-soft: #ecf2ff;--surface: #ffffff;--surface-soft: #f9fbff;--text: #23304a;--muted: #68789e;--line: rgba(52, 67, 94, .12);--shadow-soft: 0 12px 30px rgba(44, 67, 118, .12);--shadow-strong: 0 18px 36px rgba(45, 73, 130, .16);--danger: #ea5b6f}*{box-sizing:border-box}body{margin:0;font-family:Montserrat,Manrope,Arial,sans-serif;color:var(--text);background:radial-gradient(circle at 14% 15%,rgba(196,84,247,.16),transparent 45%),radial-gradient(circle at 86% 8%,rgba(117,221,221,.24),transparent 35%),linear-gradient(160deg,var(--bg-main) 0%,var(--bg-soft) 100%)}.page{min-height:100vh;position:relative}.backgroundGlow{position:fixed;top:-30%;right:-30%;bottom:-30%;left:-30%;pointer-events:none;background:radial-gradient(circle at 14% 24%,rgba(196,84,247,.14),transparent 34%),radial-gradient(circle at 82% 14%,rgba(117,221,221,.2),transparent 30%),radial-gradient(circle at 70% 76%,rgba(92,115,227,.18),transparent 34%);animation:pulseGlow 10s ease-in-out infinite}.appShell{position:relative;max-width:1140px;margin:0 auto;padding:1rem 1rem 6rem}.glass{border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 90%,#fff 10%);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:20px;box-shadow:var(--shadow-soft)}.topBar{padding:1rem 1.1rem;display:flex;justify-content:space-between;align-items:center;gap:1.1rem}.topBar h1{margin:0;letter-spacing:.3px}.profilePill{border-radius:16px;border:1px solid var(--line);padding:.62rem .82rem;background:linear-gradient(135deg,#c454f729,#75dddd33);display:flex;flex-direction:column;gap:.2rem;min-width:170px}.shardPill{align-items:flex-end}.shardRow{display:flex;align-items:center;gap:.45rem}.shardRow strong{font-size:1.3rem;line-height:1}.gemIcon{width:22px;height:22px;object-fit:contain;filter:drop-shadow(0 4px 7px rgba(92,115,227,.35))}.muted{color:var(--muted)}.authBox{margin-top:1rem;padding:.95rem 1rem;display:grid;grid-template-columns:1fr 2fr auto;gap:.7rem;align-items:end}.authBox label{grid-column:1 / -1}.profileAuthBox{margin-top:0}input{width:100%;border-radius:14px;border:1px solid var(--line);background:var(--surface-soft);color:var(--text);padding:.76rem .82rem}input::placeholder{color:#97a5c1}.primaryButton{border:0;border-radius:14px;color:#fff;font-weight:700;cursor:pointer;padding:.76rem 1.08rem;background:linear-gradient(125deg,var(--brand-1),var(--brand-4));transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;box-shadow:0 8px 22px #5c73e352}.primaryButton:hover{transform:translateY(-2px);filter:brightness(1.03);box-shadow:0 12px 26px #5c73e361}.primaryButton:disabled{opacity:.8;cursor:default}.tabSection{margin-top:1rem;animation:fadeIn .3s ease}.heroCard{overflow:hidden;padding:1.1rem;display:grid;grid-template-columns:1fr 1.2fr;gap:1.05rem;background:linear-gradient(135deg,#ffffffe6,#ecf2ffcc),url(/assets/hero/hero-bg.webp);background-size:cover;background-position:center}.heroCharacters{width:100%;height:236px;object-fit:cover;border-radius:16px;border:1px solid rgba(92,115,227,.22);box-shadow:var(--shadow-soft);animation:floatCard 6s ease-in-out infinite}.heroText h2{margin-top:.2rem}.emojiStrip{display:flex;gap:.84rem;font-size:1.5rem}.emojiStrip span{display:inline-block;animation:bob 1.5s ease-in-out infinite}.emojiStrip span:nth-child(2){animation-delay:.2s}.emojiStrip span:nth-child(3){animation-delay:.4s}.emojiStrip span:nth-child(4){animation-delay:.6s}.leagueShowcase{margin-top:.9rem;padding:.95rem 1rem;display:grid;grid-template-columns:180px 1fr;gap:1rem;align-items:center;background:linear-gradient(130deg,#fffffff2,#75dddd21)}.leagueShowcase img{width:180px;height:110px;object-fit:cover;border-radius:14px;border:1px solid rgba(92,115,227,.25)}.chipRow{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:.7rem}.catalogHeaderRow{display:flex;align-items:center;gap:.8rem;margin-bottom:.75rem}.catalogHeaderRow h3{margin:0}.backChip{font-weight:600}.gameGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.gameCard{position:relative;border:0;border-radius:18px;overflow:hidden;min-height:168px;cursor:pointer;box-shadow:var(--shadow-soft);transform:translateZ(0);transition:transform .22s ease,box-shadow .22s ease}.gameCard:hover{transform:translateY(-3px) scale(1.01);box-shadow:var(--shadow-strong)}.gameCard img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.gameOverlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(160deg,#141f3c0f,#141f3c94)}.gameMeta{position:absolute;left:.8rem;right:.8rem;bottom:.7rem;color:#fff;text-align:left}.gameMeta h3{margin:.22rem 0 0;font-size:1.02rem}.gameBadge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.2rem .55rem;font-size:.74rem;background:#ffffff42;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.chip{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:999px;padding:.44rem .9rem;cursor:pointer;transition:all .18s ease;box-shadow:0 4px 12px #34435e14}.chip:hover{transform:translateY(-1px);box-shadow:0 10px 18px #34435e1f}.chip.active{color:#fff;border-color:transparent;background:linear-gradient(120deg,var(--brand-1),var(--brand-4))}.catalogGrid{margin-top:.6rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.8rem}.emptyState{margin-top:.8rem;padding:.8rem .95rem;border-radius:14px;border:1px dashed var(--line);color:var(--muted);background:var(--surface-soft)}.productCard{border-radius:18px;border:1px solid var(--line);overflow:hidden;background:var(--surface);box-shadow:0 10px 26px #34435e1a;animation:fadeUp .35s ease;transition:transform .2s ease,box-shadow .2s ease}.productCard:hover{transform:translateY(-3px);box-shadow:var(--shadow-strong)}.productCard img{width:100%;height:148px;object-fit:cover}.productMeta{padding:.75rem}.productMeta h4{margin:0 0 .4rem}.productMeta p{margin:0;min-height:38px;color:var(--muted);font-size:.9rem;line-height:1.4}.buyRow{margin:.55rem 0;display:flex;justify-content:space-between;align-items:center}.price{font-weight:700}.shardBadge{border-radius:999px;font-size:.8rem;padding:.25rem .55rem;color:#fff;background:linear-gradient(90deg,var(--brand-4),var(--brand-1))}.block{padding:.95rem 1rem;background:var(--surface)}.block+.block{margin-top:.8rem}.block h3{margin:0 0 .6rem}.list{display:grid;gap:.5rem}.listItem{border:1px solid var(--line);border-radius:14px;background:var(--surface-soft);padding:.68rem .72rem;display:flex;justify-content:space-between;align-items:center;gap:.8rem}.qtyControls{display:flex;gap:.4rem;align-items:center}.qtyControls button{border:1px solid var(--line);background:#fff;color:var(--text);width:30px;height:30px;border-radius:8px;cursor:pointer}.qtyControls .danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,transparent)}.totalRow{margin-top:.6rem;font-weight:700}.checkoutRow{display:grid;grid-template-columns:1fr auto;gap:.5rem}.profileTabs{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem;margin-bottom:.7rem}.profileTabBtn{border:1px solid var(--line);background:var(--surface-soft);color:var(--muted);border-radius:10px;padding:.5rem .4rem;font-weight:600;cursor:pointer;transition:all .16s ease}.profileTabBtn.active{color:#fff;border-color:transparent;background:linear-gradient(120deg,var(--brand-1),var(--brand-4));box-shadow:0 8px 14px #5c73e33d}.profileTabBody{animation:fadeIn .24s ease}.progressWrap{margin-top:.5rem;height:11px;border-radius:999px;background:#34435e14;overflow:hidden}.progressFill{height:100%;background:linear-gradient(90deg,var(--brand-1),var(--brand-4),var(--brand-3));transition:width .3s ease}.tabbar{position:fixed;left:0;right:0;bottom:0;margin:0 auto;padding:.45rem;border-radius:18px 18px 0 0;border-left:none;border-right:none;max-width:1100px;display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;background:#ffffffeb;box-shadow:0 -8px 28px #34435e1f}.tabButton{border:0;border-radius:12px;background:transparent;color:var(--muted);padding:.64rem .2rem;cursor:pointer;text-decoration:none;text-align:center;font-weight:600;transition:all .16s ease}.tabButton.active{color:#fff;background:linear-gradient(120deg,var(--brand-1),var(--brand-4));box-shadow:0 8px 18px #5c73e352}.toast{position:fixed;right:1rem;top:1rem;max-width:420px;padding:.8rem 1rem;border-radius:12px;border:1px solid var(--line);color:#fff;background:linear-gradient(140deg,#34435ef5,#5c73e3eb);animation:toastIn 2.5s ease forwards;z-index:50;box-shadow:var(--shadow-strong)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes floatCard{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes pulseGlow{0%,to{opacity:.8}50%{opacity:1}}@keyframes toastIn{0%{opacity:0;transform:translateY(-8px)}8%,82%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}@media (max-width: 900px){.heroCard,.leagueShowcase{grid-template-columns:1fr}.leagueShowcase img{width:100%;height:150px}}@media (max-width: 720px){.authBox,.checkoutRow{grid-template-columns:1fr}.topBar{flex-direction:row;align-items:center}.gameGrid,.profileTabs{grid-template-columns:1fr}}
