:root{
  --marble-dark:#0c0e12;
  --marble-cream:#eef1f5;
  --marble-cream-dim:#8b93a3;
  --gold:#d4a24c;
  --gold-bright:#f0c869;
  --c-common:#9c8f7a;
  --c-rare:#4f9d69;
  --c-epic:#3d7dd8;
  --c-legendary:#a24fd6;
  --c-mythic:#e0223d;
  --c-god:#f0c869;
  --c-secret:#20c9c9;
  --c-og:#ff7b1f;
  --c-adminplus:#ff2fb0;
  --radius:14px;
}
*{box-sizing:border-box; -webkit-tap-highlight-color:transparent;}
html,body{margin:0;padding:0;}
body{
  background:
    radial-gradient(ellipse at 15% -10%, #171a21 0%, transparent 60%),
    radial-gradient(ellipse at 100% 100%, #12151b 0%, transparent 55%),
    var(--marble-dark);
  color:var(--marble-cream);
  font-family:'Space Grotesque', sans-serif;
  min-height:100vh;
  overflow-x:hidden;
}
::selection{background:var(--gold); color:#0c0e12;}

.hero{padding:44px 5vw 24px; display:flex; justify-content:space-between; align-items:flex-end; gap:20px; flex-wrap:wrap; position:relative; overflow:hidden;
  background:radial-gradient(ellipse 60% 100% at 10% 0%, rgba(206,43,55,.14), transparent 60%),
             radial-gradient(ellipse 60% 100% at 90% 0%, rgba(61,163,93,.14), transparent 60%);}

.sticky-wallet-bar{
  position: sticky;
  top: 0;
  z-index: 80;
  display: flex;
  justify-content: flex-end;
  padding: 10px 5vw;
  background: linear-gradient(180deg, #171a21 0%, #0c0e12 100%);
  border-bottom: 1px solid rgba(212,162,76,.25);
  box-shadow: 0 8px 20px rgba(0,0,0,.35);
}
.hero::before{content:""; position:absolute; left:5vw; right:5vw; top:0; height:2px; background:linear-gradient(90deg, transparent, var(--gold), transparent); opacity:.5;}
.brand h1{font-family:'Sora',sans-serif; font-weight:800; font-size:clamp(28px,4.6vw,54px); margin:0; letter-spacing:-.01em;}
.hero-icon{font-size:0.82em; margin-right:10px; filter:drop-shadow(0 2px 8px rgba(0,0,0,.4));}
.it-word{display:inline-block;}
.it-green{color:#3DA35D; text-shadow:0 0 24px rgba(61,163,93,.35);}
.it-white{color:#F4F4F0; text-shadow:0 0 24px rgba(244,244,240,.25);}
.it-red{color:#CE2B37; text-shadow:0 0 24px rgba(206,43,55,.35);}
.brand p{margin:4px 0 0; color:var(--marble-cream-dim); font-size:13px; letter-spacing:.12em; text-transform:uppercase;}

.wallet{display:flex; gap:14px; align-items:center; background:linear-gradient(160deg,#1a1d24,#14171d); border:1px solid rgba(212,162,76,.35); border-radius:var(--radius); padding:12px 20px; box-shadow:0 8px 24px rgba(0,0,0,.4); flex-wrap:wrap;}
.wallet .coin{width:38px;height:38px;border-radius:50%; background:radial-gradient(circle at 32% 28%, var(--gold-bright), var(--gold) 60%, #8a6a2c 100%); display:flex;align-items:center;justify-content:center;font-weight:700;color:#241706; font-family:'Sora',sans-serif;}
.wallet .amount{font-family:'JetBrains Mono',monospace; font-size:22px; font-weight:600; color:var(--gold-bright);}
.wallet .label{font-size:11px; color:var(--marble-cream-dim); text-transform:uppercase; letter-spacing:.1em;}

.income-block{min-width:170px;}
.income-label{font-size:11px; color:var(--marble-cream-dim); text-transform:uppercase; letter-spacing:.06em; margin-bottom:4px;}
.income-per-sec{font-family:'JetBrains Mono',monospace; font-size:10px; color:#8fd6a0; text-transform:none; letter-spacing:0; opacity:.85;}
.income-label span{color:var(--gold-bright); font-family:'JetBrains Mono',monospace; text-transform:none;}
.income-bar{height:5px; border-radius:3px; background:rgba(255,255,255,.1); overflow:hidden;}
.income-bar i{display:block; height:100%; width:0%; background:linear-gradient(90deg,var(--gold),var(--gold-bright)); transition:width .1s linear;}

.next-milestone{min-width:190px;}
.next-milestone-label{font-size:11px; color:#8fe0a0; font-weight:600; letter-spacing:.02em; margin-bottom:4px; white-space:nowrap;}
.next-milestone-bar{height:5px; border-radius:3px; background:rgba(255,255,255,.1); overflow:hidden;}
.next-milestone-bar i{display:block; height:100%; width:0%; background:linear-gradient(90deg,#2fd98a,#8fe0a0); transition:width .3s ease;}
.next-milestone.milestone-rebirth .next-milestone-label{color:#c98bff;}
.next-milestone.milestone-rebirth .next-milestone-bar i{background:linear-gradient(90deg,#8a3fe0,#c98bff);}

.auth-bar{display:flex; justify-content:flex-end; align-items:center; gap:10px; padding:10px 5vw; border-bottom:1px solid rgba(212,162,76,.15); flex-wrap:wrap;}
.auth-block{display:flex; align-items:center; gap:8px; flex-wrap:wrap;}
.auth-block input{background:#171a21; border:1px solid rgba(212,162,76,.3); border-radius:8px; padding:7px 10px; color:var(--marble-cream); font-size:12px; width:120px; font-family:'Space Grotesque',sans-serif;}
.auth-block input:focus{outline:1px solid var(--gold); border-color:var(--gold);}
.auth-hello{font-size:13px; color:var(--marble-cream-dim);}
.auth-hello b{color:var(--gold-bright); font-family:'Sora',sans-serif;}
.auth-msg{font-size:11px; color:#ff8f8f;}
.auth-msg.ok{color:#8fe0a0;}

.rebirth-widget{display:flex; align-items:center; gap:10px; padding-left:14px; border-left:1px solid rgba(255,255,255,.12);}
.rebirth-widget.maxed .rebirth-widget-icon{filter:saturate(1.4);}
.rebirth-widget-icon{font-size:20px;}
.rebirth-widget-info{display:flex; flex-direction:column; gap:1px;}
.rebirth-widget-stage{font-family:'JetBrains Mono',monospace; font-size:13px; font-weight:700; color:var(--gold-bright); line-height:1.1; white-space:nowrap;}
.rebirth-widget-bonus{font-size:10.5px; color:#8fe0a0; font-weight:600; white-space:nowrap;}
.rebirth-info-icon{position:relative; cursor:help; font-size:13px; opacity:.75; display:flex; align-items:center;}
.rebirth-info-icon:hover{opacity:1;}
.rebirth-tooltip{position:absolute; top:135%; right:-14px; width:230px; background:#171a21; border:1px solid rgba(212,162,76,.4); border-radius:10px; padding:11px 13px; font-size:11.5px; color:var(--marble-cream-dim); line-height:1.55; text-align:left; opacity:0; visibility:hidden; transform:translateY(-6px); transition:opacity .18s ease, transform .18s ease; z-index:120; box-shadow:0 10px 26px rgba(0,0,0,.55); pointer-events:none;}
.rebirth-tooltip b{color:var(--gold-bright);}
.rebirth-info-icon:hover .rebirth-tooltip{opacity:1; visibility:visible; transform:translateY(0);}
.rebirth-next-cost{font-family:'JetBrains Mono',monospace; font-size:10.5px; color:var(--marble-cream-dim); white-space:nowrap;}
.rebirth-widget-btn{font-family:'Space Grotesque',sans-serif; font-weight:700; font-size:12.5px; padding:8px 16px; border-radius:9px; border:1px solid rgba(212,162,76,.5); background:linear-gradient(160deg,var(--gold-bright),var(--gold)); color:#181109; cursor:pointer; white-space:nowrap; transition:filter .15s ease, transform .15s ease;}
.rebirth-widget-btn:hover:not(:disabled){filter:brightness(1.1); transform:translateY(-1px);}
.rebirth-widget-btn:disabled{opacity:.4; cursor:not-allowed; background:#2a2e38; color:var(--marble-cream-dim); border-color:rgba(255,255,255,.15);}

.save-controls{display:flex; align-items:center; gap:8px;}
.sound-slider{width:64px; height:4px; accent-color:var(--gold-bright); cursor:pointer;}
.save-btn{font-size:11px; padding:8px 12px; border-radius:8px; border:1px solid rgba(212,162,76,.4); background:rgba(212,162,76,.1); color:var(--gold-bright); cursor:pointer; white-space:nowrap;}
.save-btn:hover{background:rgba(212,162,76,.22);}
.save-indicator{font-size:11px; color:#8fe0a0; opacity:0; transition:opacity .3s ease;}
.save-indicator.show{opacity:1;}

.section-label{display:flex; align-items:center; gap:12px; margin:34px 5vw 14px; color:var(--gold-bright); font-family:'Sora',sans-serif; font-weight:700; font-size:22px;}
.section-label .line{flex:1; height:1px; background:linear-gradient(90deg, rgba(212,162,76,.6), transparent);}
.collapse-btn{font-family:'Space Grotesque',sans-serif; font-size:12px; font-style:normal; background:rgba(212,162,76,.1); border:1px solid rgba(212,162,76,.35); color:var(--gold-bright); border-radius:8px; padding:6px 12px; cursor:pointer; white-space:nowrap;}
.collapse-btn:hover{background:rgba(212,162,76,.22);}
.collapse-btn.locked-feature{opacity:.5; border-style:dashed;}
.collapse-btn.locked-feature:hover{background:rgba(212,162,76,.1);}
.inventory-wrap{max-height:4000px; overflow:hidden; opacity:1; transition:max-height .4s ease, opacity .3s ease;}
.inventory-wrap.collapsed{max-height:0; opacity:0;}
.collapsible-wrap{max-height:4000px; overflow:hidden; opacity:1; transition:max-height .4s ease, opacity .3s ease;}
.collapsible-wrap.collapsed{max-height:0; opacity:0;}
.section-sub{margin:-8px 5vw 0; color:var(--marble-cream-dim); font-size:13px;}

.belt-wrap{margin:16px 5vw 0; position:relative; padding:26px 0 34px; background:repeating-linear-gradient(90deg, #0a0c10 0 46px, #12151b 46px 92px); border-top:6px solid #0a0c10; border-bottom:6px solid #0a0c10; border-radius:6px; overflow:hidden; box-shadow: inset 0 12px 20px -12px #000, inset 0 -12px 20px -12px #000;}
.belt-wrap::before, .belt-wrap::after{content:""; position:absolute; top:0; bottom:0; width:70px; z-index:5; pointer-events:none;}
.belt-wrap::before{left:0; background:linear-gradient(90deg, var(--marble-dark), transparent);}
.belt-wrap::after{right:0; background:linear-gradient(270deg, var(--marble-dark), transparent);}
.belt-track{display:flex; gap:26px; align-items:center; padding-left:26px;}
.pack{flex:0 0 auto; width:150px; height:200px; border-radius:12px; position:relative; cursor:pointer; transition: transform .25s ease, filter .25s ease, box-shadow .25s ease; animation: bob 3.4s ease-in-out infinite;}
.pack.safe-pack{box-shadow:0 0 0 3px #f0c869, 0 0 24px rgba(240,200,105,.7);}
.safe-pack-badge{position:absolute; top:-10px; left:50%; transform:translateX(-50%); z-index:6; background:linear-gradient(90deg,#f0c869,#d4a24c); color:#1a1200; font-family:'Space Grotesque',sans-serif; font-weight:800; font-size:9.5px; padding:3px 8px; border-radius:20px; white-space:nowrap; box-shadow:0 2px 8px rgba(0,0,0,.4);}
.belt-track.css-paused .pack{animation-play-state:paused;}
.pack:nth-child(2n){animation-delay:-1.1s;}
.pack:nth-child(3n){animation-delay:-2s;}
@keyframes bob{ 0%,100%{translate:0 0;} 50%{translate:0 -6px;} }
.pack:hover{filter:brightness(1.12);}
.pack.affordable:hover{transform:translateY(-10px) scale(1.04);}
.pack.locked{filter:grayscale(.7) brightness(.55); cursor:not-allowed;}
.pack.locked:hover{transform:none;}
.pack.buying{animation:snatch .5s ease forwards;}
@keyframes snatch{ to{ transform:translateY(-160px) scale(.4) rotate(8deg); opacity:0; } }
.pack-face{position:absolute; inset:0; border-radius:12px; overflow:hidden; border:2px solid rgba(255,255,255,.15); box-shadow: inset 0 0 0 1px rgba(0,0,0,.3), 0 10px 18px rgba(0,0,0,.45);}
.pack-face::after{content:""; position:absolute; inset:0; z-index:2; background:linear-gradient(115deg, rgba(255,255,255,.22) 0%, transparent 35%); pointer-events:none;}
.pack-art{width:100%; height:100%; object-fit:cover; display:block;}
.pack-art-fallback{display:none; position:absolute; inset:0; flex-direction:column; justify-content:space-between; padding:12px;}
.pack-name{font-family:'Sora',sans-serif; font-weight:700; font-size:15px; color:#fff; text-shadow:0 1px 3px rgba(0,0,0,.5);}
.pack-emblem{font-size:36px; text-align:center;}
.pack-badges{position:absolute; left:0; right:0; bottom:0; z-index:3; display:flex; justify-content:space-between; align-items:center; gap:6px; padding:8px 9px; background:linear-gradient(0deg, rgba(0,0,0,.8) 10%, transparent 100%);}
.pack-price{background:rgba(0,0,0,.4); border-radius:8px; padding:4px 9px; font-family:'JetBrains Mono',monospace; font-weight:600; font-size:12.5px; color:var(--gold-bright); border:1px solid rgba(212,162,76,.4);}
.pack-time{font-family:'JetBrains Mono',monospace; font-size:10px; color:rgba(255,255,255,.85);}

.overlay{position:fixed; inset:0; background:rgba(8,5,3,.9); backdrop-filter:blur(6px); display:flex; align-items:center; justify-content:center; z-index:100; opacity:0; pointer-events:none; transition:opacity .3s ease; flex-direction:column; gap:22px; padding:20px;}
.overlay.show{opacity:1; pointer-events:auto;}
.overlay h2{font-family:'Sora',sans-serif; color:var(--gold-bright); margin:0; font-size:24px; text-align:center;}
.reveal-grid{display:flex; gap:16px; flex-wrap:wrap; justify-content:center; max-width:920px;}
.rcard{width:130px; height:190px; perspective:800px; cursor:pointer;}
.rcard-inner{width:100%;height:100%; position:relative; transform-style:preserve-3d; transition:transform .6s cubic-bezier(.4,.2,.2,1); will-change:transform;}
.rcard.flipped .rcard-inner{transform:rotateY(180deg);}
.rface{position:absolute; inset:0; border-radius:10px; backface-visibility:hidden; display:flex; flex-direction:column; align-items:center; justify-content:center; border:2px solid rgba(255,255,255,.2);}
.rback{background:linear-gradient(155deg,#3a2c1a,#171a21); font-size:28px; color:var(--gold);}
.rfront{transform:rotateY(180deg); padding:8px; text-align:center; gap:3px;}
.rfront .cname{font-family:'Sora',sans-serif; font-weight:700; font-size:11.5px; color:#fff; line-height:1.15;}
.rfront .crar{font-size:9.5px; text-transform:uppercase; letter-spacing:.06em; color:rgba(255,255,255,.85);}
.rfront .cval{font-family:'JetBrains Mono',monospace; font-size:11px; color:#fff;}
.rfront .cpct{font-family:'JetBrains Mono',monospace; font-size:9.5px; color:rgba(255,255,255,.75);}
.rfront .clevel{font-size:9.5px; background:rgba(0,0,0,.35); border-radius:6px; padding:1px 6px;}
.rfront .cimg{width:56px; height:56px;}
.rface-media{position:relative; width:56px; height:56px; margin:0 auto; border-radius:8px; overflow:hidden;}
.r-common .rfront{background:linear-gradient(155deg,#7a715f,#413b30);}
.r-rare .rfront{background:linear-gradient(155deg,var(--c-rare),#22492e); box-shadow:0 0 16px rgba(79,157,105,.4);}
.r-epic .rfront{background:linear-gradient(155deg,var(--c-epic),#1e3a63); box-shadow:0 0 18px rgba(61,125,216,.5);}
.r-legendary .rfront{background:linear-gradient(155deg,var(--c-legendary),#3c1c50); box-shadow:0 0 22px rgba(162,79,214,.55);}
.r-mythic .rfront{background:linear-gradient(155deg,#ff5470,var(--c-mythic) 40%,#5c0d17); box-shadow:0 0 26px rgba(224,34,61,.6); animation:mythicpulse 1.4s ease-in-out infinite;}
.r-god .rfront{background:linear-gradient(155deg,var(--gold-bright),#7a5417); box-shadow:0 0 30px rgba(212,162,76,.65);}
.r-secret .rfront{background:linear-gradient(155deg,#5ff0f0,var(--c-secret) 45%,#0a3d3d); box-shadow:0 0 32px rgba(32,201,201,.6);}
.r-og .rfront{background:linear-gradient(155deg,#ffb35f,var(--c-og) 45%,#5c2c05); box-shadow:0 0 34px rgba(255,123,31,.65);}
.r-adminplus .rfront{background:linear-gradient(155deg,#ff8fe0,var(--c-adminplus) 45%,#4e0038); box-shadow:0 0 40px rgba(255,47,176,.8); animation:mythicpulse 1s ease-in-out infinite;}
@keyframes mythicpulse{0%,100%{filter:brightness(1);}50%{filter:brightness(1.25);}}
.overlay-actions{display:flex; gap:12px;}
.btn{font-family:'Space Grotesque',sans-serif; font-weight:700; font-size:14px; padding:11px 22px; border-radius:10px; border:1px solid rgba(212,162,76,.5); background:linear-gradient(160deg,#20242c,#14171d); color:var(--gold-bright); cursor:pointer; transition:transform .15s, filter .15s;}
.btn:hover{filter:brightness(1.2); transform:translateY(-1px);}
.btn:disabled{opacity:.35; cursor:not-allowed;}
.btn.primary{background:linear-gradient(160deg,var(--gold-bright),var(--gold)); color:#141822; border-color:transparent;}

.odds-grid{margin:0 5vw 10px; display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:16px;}
.odds-card{border:1px solid rgba(212,162,76,.3); border-radius:12px; background:linear-gradient(160deg,#1a1d24,#12151b); overflow:hidden;}
.odds-head{display:flex; justify-content:space-between; align-items:center; padding:14px 16px; cursor:pointer;}
.odds-head h3{margin:0; font-family:'Sora',sans-serif; font-size:16px; color:var(--gold-bright);}
.odds-head .price{font-family:'JetBrains Mono',monospace; font-size:12px; color:var(--marble-cream-dim);}
.odds-toggle{font-size:12px; color:var(--gold);}
.odds-body{max-height:0; overflow:hidden; transition:max-height .3s ease;}
.odds-body.open{max-height:5000px;}
.odds-rarity{padding:6px 16px; font-size:11px; text-transform:uppercase; letter-spacing:.08em; color:var(--marble-cream-dim); display:flex; justify-content:space-between; border-top:1px solid rgba(255,255,255,.06);}
.odds-row{display:flex; justify-content:space-between; padding:4px 16px 4px 26px; font-size:12.5px;}
.odds-row .n{color:var(--marble-cream);}
.odds-row .p{font-family:'JetBrains Mono',monospace; color:var(--gold-bright);}
.dot{display:inline-block; width:8px; height:8px; border-radius:50%; margin-right:6px;}

/* Sets */
.sets-grid{margin:0 5vw 10px; display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:14px;}
.set-card{border-radius:12px; padding:14px; border:1px solid rgba(255,255,255,.1); background:linear-gradient(160deg,#1a1d24,#12151b);}
.set-card.complete{border-color:rgba(143,224,160,.5); box-shadow:0 0 18px rgba(143,224,160,.15);}
.set-head{display:flex; align-items:center; gap:8px; margin-bottom:8px;}
.set-icon{font-size:18px;}
.set-name{font-family:'Sora',sans-serif; font-weight:700; font-size:14px;}
.set-progress{height:5px; border-radius:3px; background:rgba(255,255,255,.1); overflow:hidden; margin-bottom:6px;}
.set-progress i{display:block; height:100%; background:linear-gradient(90deg,var(--gold),var(--gold-bright));}
.set-meta{display:flex; justify-content:space-between; font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--marble-cream-dim); margin-bottom:6px;}
.set-bonus{font-size:11.5px; color:var(--marble-cream-dim);}
.set-bonus.active{color:#8fe0a0;}

/* Lager */
.storage-grid{margin:0 5vw 10px; display:grid; grid-template-columns:repeat(auto-fill,minmax(110px,1fr)); gap:14px;}
.storage-item{display:flex; flex-direction:column; gap:6px;}
.storage-slot{position:relative; aspect-ratio:3/4; border-radius:10px; overflow:hidden; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:8px; text-align:center;}
@keyframes storageClickPulse{0%{transform:scale(1);} 35%{transform:scale(.93); filter:brightness(1.25);} 100%{transform:scale(1); filter:brightness(1);}}
.storage-slot.click-pulse{animation:storageClickPulse .22s ease;}
.storage-buy-slot{cursor:pointer; background:linear-gradient(160deg,#1a1d24,#12151b); border:2px dashed rgba(212,162,76,.5); gap:4px; transition:border-color .15s ease, background .15s ease;}
.storage-buy-slot:hover{border-color:var(--gold-bright); background:linear-gradient(160deg,#20242c,#161920);}
.storage-buy-slot.unaffordable{opacity:.55; cursor:not-allowed;}
.storage-buy-icon{font-size:28px;}
.storage-buy-plus{font-family:'Sora',sans-serif; font-weight:800; font-size:15px; color:var(--gold-bright);}
.storage-buy-cost{font-family:'JetBrains Mono',monospace; font-size:10.5px; color:var(--marble-cream-dim);}
.storage-remove-btn{width:100%; font-family:'Space Grotesque',sans-serif; font-size:10.5px; font-weight:700; padding:5px 0; border-radius:7px; border:1px solid rgba(224,34,61,.35); background:rgba(224,34,61,.1); color:#ff9b9b; cursor:pointer; transition:background .15s ease, border-color .15s ease;}
.storage-remove-btn:hover{background:rgba(224,34,61,.28); border-color:rgba(224,34,61,.6);}
.storage-remove-btn:hover{opacity:1; background:rgba(224,34,61,.85);}
.storage-slot.broken{background:rgba(224,34,61,.12); border:1px dashed rgba(224,34,61,.5); padding:10px;}
.storage-broken-text{font-size:10.5px; color:#ff8f8f; line-height:1.4;}
.storage-slot.empty{border:2px dashed rgba(255,255,255,.12); color:var(--marble-cream-dim); font-size:11px;}
.storage-slot.filled{cursor:pointer; border:2px solid rgba(255,255,255,.15); box-shadow:0 6px 14px rgba(0,0,0,.4); padding:0;}
.storage-slot.filled:hover{filter:brightness(1.1);}
.storage-timer{position:absolute; bottom:16px; left:0; right:0; text-align:center; font-family:'JetBrains Mono',monospace; font-size:11px; color:#fff; background:rgba(0,0,0,.4); border-radius:6px; padding:2px 4px; margin:0 8px; z-index:6;}
.storage-progress{position:absolute; bottom:0; left:0; right:0; height:5px; background:rgba(0,0,0,.35); z-index:6;}
.storage-progress i{display:block; height:100%; background:linear-gradient(90deg,var(--gold),var(--gold-bright));}
.storage-slot.ready{animation:mythicpulse 1s ease-in-out infinite; border-color:#8fe0a0; box-shadow:0 0 20px rgba(143,224,160,.55);}
.storage-ready-tag{position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background:rgba(0,0,0,.4); font-weight:700; font-size:12px; color:#8fe0a0; z-index:6; pointer-events:none;}

/* Upgrades */
.upgrades-grid{margin:0 5vw 10px; display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:14px;}
.rebirth-confirm-text{font-size:14px; color:var(--marble-cream-dim); line-height:1.6; max-width:480px; text-align:center; white-space:pre-line;}
.rebirth-confirm-text b{color:var(--gold-bright);}

/* ======================= ADMIN ======================= */
.admin-menu-btn{background:linear-gradient(160deg,#e0223d,#8a0f22); border-color:rgba(255,255,255,.25); color:#fff;}
.admin-menu-btn:hover{filter:brightness(1.15);}

.admin-panel{width:min(920px, 92vw); max-height:88vh; overflow-y:auto; background:#12151b; border:1px solid rgba(212,162,76,.35); border-radius:16px; padding:24px; text-align:left;}
.admin-panel-head{display:flex; justify-content:space-between; align-items:center; margin-bottom:18px;}
.admin-panel-head h2{margin:0; font-family:'Sora',sans-serif; font-weight:800; font-size:20px; color:var(--gold-bright);}
.admin-section{margin-bottom:22px; padding-bottom:18px; border-bottom:1px solid rgba(255,255,255,.08);}
.admin-section:last-child{border-bottom:none; margin-bottom:0;}
.admin-section h3{margin:0 0 12px; font-size:14px; color:#fff; display:flex; align-items:center; gap:10px; flex-wrap:wrap;}
.admin-config-row{display:flex; gap:14px; align-items:flex-end; flex-wrap:wrap;}
.admin-config-row label{display:flex; flex-direction:column; gap:4px; font-size:11px; color:var(--marble-cream-dim); text-transform:uppercase; letter-spacing:.05em;}
.admin-hint{margin-top:8px; font-size:11px; color:var(--marble-cream-dim); line-height:1.5;}

.admin-input{background:#1a1d24; border:1px solid rgba(255,255,255,.15); border-radius:7px; color:var(--marble-cream); font-size:12.5px; padding:6px 9px; font-family:'Space Grotesque',sans-serif; width:110px;}
.admin-input:focus{outline:1px solid var(--gold); border-color:var(--gold);}
.admin-btn{font-family:'Space Grotesque',sans-serif; font-weight:700; font-size:11.5px; padding:6px 12px; border-radius:7px; border:1px solid rgba(255,255,255,.18); background:#20242c; color:var(--marble-cream); cursor:pointer; white-space:nowrap;}
.admin-btn.admin-danger{background:rgba(224,34,61,.15); border-color:rgba(224,34,61,.5); color:#ff9b9b;}
.admin-btn.admin-danger:hover{background:rgba(224,34,61,.35);}
.admin-btn:hover{background:#2a2e38;}
.admin-btn.primary{background:linear-gradient(160deg,var(--gold-bright),var(--gold)); color:#181109; border-color:transparent;}

.admin-loading{padding:16px; color:var(--marble-cream-dim); font-size:12.5px; text-align:center;}
.admin-user-row{border:1px solid rgba(255,255,255,.1); border-radius:12px; padding:12px 14px; margin-bottom:10px; background:#171a21;}
.admin-user-head{display:flex; align-items:center; gap:9px; flex-wrap:wrap; margin-bottom:0; font-size:13px; cursor:pointer; padding:2px 0;}
.admin-user-row.expanded .admin-user-head{margin-bottom:10px;}
.admin-user-toggle{font-size:11px; color:var(--marble-cream-dim); width:12px; text-align:center; flex-shrink:0;}
.admin-user-dot{width:8px; height:8px; border-radius:50%; background:#5a5f6a;}
.admin-user-dot.online{background:#4ade80; box-shadow:0 0 6px #4ade80;}
.admin-user-lastseen{font-size:11px; color:var(--marble-cream-dim);}
.admin-user-stats{margin-left:auto; font-family:'JetBrains Mono',monospace; font-size:11.5px; color:var(--gold-bright);}
.admin-user-controls{display:flex; flex-direction:column; gap:8px;}
.admin-user-controls[hidden]{display:none;}
.admin-control-group{display:flex; gap:6px; align-items:center; flex-wrap:wrap;}
.admin-control-label{font-size:11px; color:var(--marble-cream-dim); min-width:80px;}
.admin-storage-section{margin-top:4px; padding-top:10px; border-top:1px dashed rgba(255,255,255,.1);}
.admin-storage-empty{font-size:11.5px; color:var(--marble-cream-dim); padding:4px 0;}
.admin-storage-row{display:flex; align-items:center; gap:8px; flex-wrap:wrap; padding:6px 0; border-bottom:1px solid rgba(255,255,255,.05); font-size:11.5px;}
.admin-storage-row:last-child{border-bottom:none;}
.admin-storage-label{min-width:110px; color:var(--marble-cream);}
.admin-storage-status{font-family:'JetBrains Mono',monospace; color:var(--marble-cream-dim); min-width:60px;}
.admin-storage-status.ready{color:#8fe0a0;}
.admin-storage-price{font-family:'JetBrains Mono',monospace; color:var(--gold-bright); min-width:70px;}

.admin-msg-text{font-size:15px; color:var(--marble-cream); line-height:1.6; max-width:440px; text-align:center; background:#171a21; border:1px solid rgba(212,162,76,.3); border-radius:12px; padding:16px 20px;}
#adminMsgOverlay h2{color:var(--gold-bright);}

/* ======================= CHANGELOG ======================= */
.changelog-panel{width:min(680px, 92vw); max-height:85vh; overflow-y:auto; background:#12151b; border:1px solid rgba(212,162,76,.35); border-radius:16px; padding:24px; text-align:left;}
.changelog-head{display:flex; justify-content:space-between; align-items:center; margin-bottom:16px;}
.changelog-head h2{margin:0; font-family:'Sora',sans-serif; font-weight:800; font-size:19px; color:var(--gold-bright);}
.changelog-entry{padding:14px 0; border-bottom:1px solid rgba(255,255,255,.08);}
.changelog-entry:last-child{border-bottom:none;}
.changelog-date{font-family:'JetBrains Mono',monospace; font-size:10.5px; color:var(--marble-cream-dim); text-transform:uppercase; letter-spacing:.06em; margin-bottom:2px;}
.changelog-title{font-family:'Sora',sans-serif; font-weight:700; font-size:14.5px; color:#fff; margin-bottom:8px;}
.changelog-items{margin:0; padding-left:18px; display:flex; flex-direction:column; gap:5px;}
.changelog-items li{font-size:12.5px; color:var(--marble-cream-dim); line-height:1.5;}

/* ======================= QUESTS ======================= */
.quests-grid{margin:0 5vw 10px; display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:14px;}
.quest-card{border-radius:12px; padding:14px; border:1px solid rgba(255,255,255,.1); background:linear-gradient(160deg,#1a1d24,#12151b);}
.quest-card.maxed{border-color:rgba(143,224,160,.5);}
.quest-head{display:flex; align-items:center; gap:8px; margin-bottom:8px;}
.quest-icon{font-size:18px;}
.quest-name{font-family:'Sora',sans-serif; font-weight:700; font-size:13.5px; flex:1;}
.quest-tier-label{font-family:'JetBrains Mono',monospace; font-size:10px; color:var(--marble-cream-dim);}
.quest-progress-text{font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--marble-cream-dim); margin-bottom:5px;}
.quest-progress-bar{height:6px; border-radius:4px; background:rgba(255,255,255,.08); overflow:hidden; margin-bottom:10px;}
.quest-progress-bar i{display:block; height:100%; background:linear-gradient(90deg,var(--gold),var(--gold-bright));}
.quest-maxed-text{font-size:12.5px; color:#8fe0a0; font-weight:600;}
.quest-claim-btn{width:100%; font-size:12px; padding:8px; border-radius:8px; border:1px solid rgba(212,162,76,.4); background:rgba(212,162,76,.12); color:var(--gold-bright); cursor:pointer; font-family:'Space Grotesque',sans-serif; font-weight:700;}
.quest-claim-btn:hover:not(:disabled){background:rgba(212,162,76,.25);}
.quest-claim-btn:disabled{opacity:.55; cursor:default;}

/* ======================= LEADERBOARD ======================= */
.leaderboard-panel-wrap{width:min(680px, 92vw); max-height:85vh; overflow-y:auto; background:#12151b; border:1px solid rgba(212,162,76,.35); border-radius:16px; padding:24px; text-align:left;}
.leaderboard-head-actions{display:flex; gap:8px;}
.leaderboard-panel{margin:0; border-radius:14px; border:1px solid rgba(255,255,255,.1); background:linear-gradient(160deg,#1a1d24,#12151b); overflow:hidden;}
.leaderboard-row{display:grid; grid-template-columns:36px 1fr 110px 80px 90px; align-items:center; gap:8px; padding:9px 16px; border-bottom:1px solid rgba(255,255,255,.06); font-size:12.5px;}
.leaderboard-row:last-child{border-bottom:none;}
.leaderboard-row.leaderboard-header{background:rgba(0,0,0,.2); font-size:10.5px; text-transform:uppercase; letter-spacing:.05em; color:var(--marble-cream-dim);}
.leaderboard-row.me{background:rgba(212,162,76,.1);}
.leaderboard-rank{font-family:'JetBrains Mono',monospace; color:var(--marble-cream-dim);}
.leaderboard-name{font-family:'Sora',sans-serif; font-weight:700; color:#fff; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.leaderboard-stat{font-family:'JetBrains Mono',monospace; color:var(--gold-bright); text-align:right;}

.upgrade-card{border-radius:12px; padding:14px; border:1px solid rgba(255,255,255,.1); background:linear-gradient(160deg,#1a1d24,#12151b);}
.upgrade-card.maxed{border-color:rgba(143,224,160,.5);}
.upgrade-head{display:flex; align-items:center; gap:8px; margin-bottom:6px;}
.upgrade-icon{font-size:18px;}
.upgrade-name{font-family:'Sora',sans-serif; font-weight:700; font-size:14px; flex:1;}
.upgrade-lvl{font-family:'JetBrains Mono',monospace; font-size:10.5px; color:var(--marble-cream-dim);}
.upgrade-desc{font-size:11.5px; color:var(--marble-cream-dim); margin-bottom:6px; line-height:1.35;}
.upgrade-effect{font-size:12px; color:#8fe0a0; font-family:'JetBrains Mono',monospace; margin-bottom:10px;}
.upgrade-btn{width:100%; font-size:12px; padding:8px; border-radius:8px; border:1px solid rgba(212,162,76,.4); background:rgba(212,162,76,.12); color:var(--gold-bright); cursor:pointer;}
.upgrade-btn:hover:not(:disabled){background:rgba(212,162,76,.25);}
.upgrade-btn:disabled{opacity:.4; cursor:not-allowed;}

/* ======================= VARIANTEN ======================= */
.safe-pack-countdowns{display:flex; gap:16px; flex-wrap:wrap; margin:0 5vw 14px; font-family:'JetBrains Mono',monospace; font-size:12px;}
.safe-pack-countdown-item{padding:6px 12px; border-radius:8px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.1); color:var(--marble-cream-dim);}
.safe-pack-countdown-item b{color:var(--marble-cream); font-weight:700;}
.safe-pack-countdown-item.safe-galaxy{border-color:rgba(201,139,255,.4);}
.safe-pack-countdown-item.safe-galaxy b{color:#c98bff;}
.safe-pack-countdown-item.safe-rainbow{border-color:rgba(255,255,255,.4);}
.safe-pack-countdown-item.safe-rainbow b{color:#ffd166;}

.variant-selector{display:flex; gap:8px; flex-wrap:wrap; margin:0 5vw 14px;}
.variant-pill{font-family:'Space Grotesque',sans-serif; font-size:12px; font-weight:700; padding:7px 13px; border-radius:20px; border:1px solid rgba(255,255,255,.18); background:#171a21; color:var(--marble-cream-dim); display:inline-flex; align-items:center; gap:6px;}
.variant-pill-mult{opacity:.75; font-weight:600;}
.variant-pill-chance{font-family:'JetBrains Mono',monospace; font-size:10.5px; opacity:.8; padding-left:2px;}
.variant-pill-normal{border-color:rgba(255,255,255,.35); color:#e6e9ee;}
.variant-pill-gold{border-color:#f0c869; background:linear-gradient(140deg,#33291a,#1a1d24); color:#f0c869;}
.variant-pill-diamond{border-color:#8fe9f2; background:linear-gradient(140deg,#123a40,#0a2226); color:#8fe9f2;}
.variant-pill-galaxy{border-color:#b06bf0; background:linear-gradient(140deg,#3a1c50,#1e0f2c); color:#d6a8ff;}
.variant-pill-rainbow{border-color:#fff; background:linear-gradient(140deg,#3a1c2c,#1c0f1e); color:#fff; animation:rainbowText 3s linear infinite;}
@keyframes rainbowText{0%{filter:hue-rotate(0deg);}100%{filter:hue-rotate(360deg);}}

/* Deko-Rahmen für Karten/Pakete in Gold/Diamond/Galaxy/Rainbow. Eigenes,
   bildloses Overlay-Element — nur DAS bekommt Animation/Filter, nie das
   Artwork selbst. Bewusst nur auf Reveal/Lager/Inventar (kleine Mengen
   gleichzeitig sichtbar), NICHT auf dem Fließband (siehe animations.js). */
.variant-ring{position:absolute; inset:0; border-radius:inherit; pointer-events:none; z-index:4; border:5px solid transparent; box-sizing:border-box;}
.variant-ring.anim-paused, .variant-tint.anim-paused{animation-play-state:paused;}
.variant-ring.variant-gold{border-color:#ffcf6b; box-shadow:0 0 26px rgba(255,207,107,.85), inset 0 0 16px rgba(255,207,107,.45);}
.variant-ring.variant-diamond{border-color:#a8f3ff; box-shadow:0 0 28px rgba(168,243,255,.9), inset 0 0 16px rgba(168,243,255,.5);}
.variant-ring.variant-galaxy{border-color:#c98bff; box-shadow:0 0 32px rgba(201,139,255,.85), inset 0 0 18px rgba(201,139,255,.5); animation:galaxyShift 4s ease-in-out infinite;}
.variant-ring.variant-rainbow{border-color:#fff; box-shadow:0 0 34px rgba(255,255,255,.75), inset 0 0 16px rgba(255,255,255,.4); animation:rainbowShift 3s linear infinite;}

/* Farbfilter über dem Artwork selbst — sitzt UNTER dem Rahmen, ÜBER dem
   Bild, per mix-blend-mode getönt statt das Bild per filter zu verzerren
   (das würde auch Emoji-Fallbacks & Textfarben mit verfälschen). */
.variant-tint{position:absolute; inset:0; pointer-events:none; z-index:3; mix-blend-mode:overlay; opacity:.6;}
.variant-tint.variant-gold{background:linear-gradient(155deg,#ffe9ad,#8a5a17);}
.variant-tint.variant-diamond{background:linear-gradient(155deg,#d9fbff,#146470);}
.variant-tint.variant-galaxy{background:linear-gradient(155deg,#e0c3ff,#2a1450); animation:galaxyShift 4s ease-in-out infinite;}
.variant-tint.variant-rainbow{background:conic-gradient(from 0deg, #ff5470, #ffd166, #8fe045, #4fc3f7, #b06bf0, #ff5470); opacity:.5; animation:rainbowShift 3s linear infinite;}
@keyframes galaxyShift{0%,100%{filter:hue-rotate(0deg) brightness(1);}50%{filter:hue-rotate(50deg) brightness(1.25);}}
@keyframes rainbowShift{0%{filter:hue-rotate(0deg);}100%{filter:hue-rotate(360deg);}}

.variant-badge{position:absolute; top:6px; left:6px; z-index:5; font-size:9px; font-weight:800; padding:2px 7px; border-radius:6px; background:rgba(0,0,0,.6); color:#fff; letter-spacing:.03em; white-space:nowrap; pointer-events:none;}
.variant-badge-gold{color:#f0c869;}
.variant-badge-diamond{color:#8fe9f2;}
.variant-badge-galaxy{color:#d6a8ff;}
.variant-badge-rainbow{color:#fff; animation:rainbowText 3s linear infinite;}

.cvariant{font-size:9.5px; font-weight:700; letter-spacing:.03em;}

/* Rote Banderole für erstmalig erhaltene Karten */
.new-ribbon{position:absolute; top:0; right:0; z-index:8; overflow:hidden; width:64px; height:64px; pointer-events:none;}
.new-ribbon::after{content:"NEU"; position:absolute; top:13px; right:-20px; width:92px; text-align:center; transform:rotate(45deg); background:linear-gradient(90deg,#c81e3a,#ff4d6d); color:#fff; font-family:'Sora',sans-serif; font-weight:800; font-size:10px; letter-spacing:.08em; padding:3px 0; box-shadow:0 2px 8px rgba(0,0,0,.5);}

/* ======================= INVENTAR-GRID ======================= */
.inv-sort-label{float:right; font-size:12px; color:var(--marble-cream-dim); display:flex; align-items:center; gap:6px;}
.inv-sort-label select{background:#171a21; border:1px solid rgba(212,162,76,.35); border-radius:7px; color:var(--marble-cream); font-size:12px; padding:4px 8px; font-family:'Space Grotesque',sans-serif;}

.inventory-grid{margin:0 5vw 10px; display:grid; grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); gap:16px;}
.inv-card{border-radius:14px; overflow:hidden; border:1px solid rgba(255,255,255,.1); background:linear-gradient(160deg,#1a1d24,#12151b); display:flex; flex-direction:column;}
.inv-card-media{position:relative; width:100%; height:160px; min-height:160px; max-height:160px; background:rgba(0,0,0,.2); flex-shrink:0; flex-grow:0; overflow:hidden;}
.inv-card-media .cimg{width:100%; height:100%; border-radius:0;}
.inv-card-media .cimg img{object-position:center 22%;}
.inv-card-body{padding:10px 12px 12px;}
.inv-card-name{font-family:'Sora',sans-serif; font-weight:700; font-size:13.5px; color:#fff; line-height:1.2; margin-bottom:3px;}
.inv-card-meta{font-size:10.5px; color:var(--marble-cream-dim); display:flex; align-items:center; margin-bottom:6px;}
.inv-card-stats{display:flex; flex-direction:column; gap:2px; margin:6px 0 8px; font-family:'JetBrains Mono',monospace;}
.inv-card-income-main{font-size:14px; color:#8fe0a0; font-weight:700;}
.inv-card-income-main .unit{font-size:11px; font-weight:500; color:var(--marble-cream-dim);}
.inv-card-income-main .persec{font-size:10px; font-weight:500; color:var(--marble-cream-dim);}
.inv-card-value-ref{font-size:10px; color:var(--marble-cream-dim); opacity:.75;}
.inv-card-actions{display:flex; flex-direction:column; gap:6px;}
.grade-flag{position:absolute; top:8px; right:0; z-index:6; min-width:30px; height:27px; padding:0 8px 0 12px; display:flex; align-items:center; justify-content:center; font-family:'Sora',sans-serif; font-weight:800; font-size:14px; color:#fff; text-shadow:0 1px 2px rgba(0,0,0,.4); clip-path:polygon(18% 0, 100% 0, 100% 100%, 18% 100%, 0% 50%); box-shadow:0 3px 8px rgba(0,0,0,.5);}
.grade-flag.g1, .grade-flag.g2{background:linear-gradient(160deg,#d4d7de,#7a8090);}
.grade-flag.g3, .grade-flag.g4{background:linear-gradient(160deg,#9deb5a,#4a8f1f);}
.grade-flag.g5, .grade-flag.g6{background:linear-gradient(160deg,#5fd0ff,#1a6ea8);}
.grade-flag.g7, .grade-flag.g8{background:linear-gradient(160deg,#c084fc,#6a2a99);}
.grade-flag.g9{background:linear-gradient(160deg,var(--gold-bright),var(--gold));}
.grade-flag.g10{background:linear-gradient(160deg,#e6c9ff,#8a4fd6);}

.cimg.emblem-xl{width:100%; height:100%; display:block; border-radius:0;}
.emblem-xl .cimg-fallback{font-size:44px;}
.inv-card-media .rarity-tag{position:absolute; bottom:6px; right:6px; width:11px; height:11px; border-radius:50%; z-index:5; border:2px solid rgba(0,0,0,.55);}
.set-icon-badge{position:absolute; bottom:6px; left:6px; z-index:5; font-size:13px; background:rgba(0,0,0,.55); border-radius:6px; padding:2px 6px; line-height:1.25;}

.inventory{margin:0 5vw 10px; display:flex; flex-direction:column; gap:8px;}
.inv-empty{color:var(--marble-cream-dim); font-size:13px; padding:18px; text-align:center; border:1px dashed rgba(212,162,76,.3); border-radius:12px;}
.inv-row{display:flex; align-items:center; gap:14px; padding:10px 14px; border-radius:10px; border:1px solid rgba(255,255,255,.1); background:linear-gradient(160deg,#1a1d24,#12151b);}
.grade-list{display:flex; flex-direction:column; gap:6px; width:100%; max-width:460px; max-height:min(72vh, 560px); overflow-y:auto; overflow-x:hidden; padding:4px; scrollbar-width:thin;}
.grade-row{display:flex; align-items:center; gap:12px; padding:7px 14px; border-radius:10px; background:#241c12; border:2px solid rgba(255,255,255,.08); transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease, opacity .3s ease, filter .3s ease; flex-shrink:0;}
.grade-row.active{border-color:var(--gold-bright); border-width:3px; transform:scale(1.04); box-shadow:0 0 26px rgba(240,200,105,.6); background:linear-gradient(160deg,#3a2c10,#241708);}
.grade-row.dim{opacity:.32; filter:grayscale(.5);}
.grade-row.landed{
  position:relative;
  border-color:var(--gold-bright);
  border-width:3px;
  transform:scale(1.07);
  background:linear-gradient(160deg,#33291a,#1a1d24);
  box-shadow:0 0 34px rgba(240,200,105,.75);
  animation:goldResultPulse 1.1s ease-in-out infinite;
  opacity:1; filter:none;
}
.grade-row.landed::after{
  content:"✦ ERGEBNIS";
  position:absolute; top:-11px; right:12px;
  background:var(--gold-bright); color:#141822;
  font-family:'Space Grotesque',sans-serif; font-weight:800; font-size:9.5px;
  letter-spacing:.06em; padding:2px 9px; border-radius:7px;
  box-shadow:0 2px 6px rgba(0,0,0,.4);
}
@keyframes goldResultPulse{0%,100%{box-shadow:0 0 26px rgba(240,200,105,.6);}50%{box-shadow:0 0 46px rgba(240,200,105,1);}}
.grade-num{width:28px; height:28px; border-radius:7px; display:flex; align-items:center; justify-content:center; font-family:'Sora',sans-serif; font-weight:800; font-size:15px; background:#111; flex-shrink:0;}
.grade-num.g1{color:#fff;} .grade-num.g2{color:#fff;} .grade-num.g3{color:#8fe045;} .grade-num.g4{color:#8fe045;}
.grade-num.g5{color:#4fc3f7;} .grade-num.g6{color:#4fc3f7;} .grade-num.g7{color:#b06bf0;} .grade-num.g8{color:#b06bf0;}
.grade-num.g9{color:var(--gold-bright);} .grade-num.g10{color:#d6b3ff;}
.grade-mult{flex:1; min-width:0; font-family:'JetBrains Mono',monospace; font-weight:700; color:#8fe045; font-size:12.5px; text-align:center; background:#0e0b06; border-radius:7px; padding:5px 8px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.grade-pct{font-family:'Space Grotesque',sans-serif; font-weight:700; font-size:13px; color:#fff; min-width:50px; text-align:right;}
.grading-money{font-family:'JetBrains Mono',monospace; font-size:14px; color:var(--gold-bright); font-weight:600; margin:-6px 0 4px;}
.grading-result{font-size:15px; color:var(--gold-bright); text-align:center; min-height:22px;}
.auto-grading-btn{border-color:rgba(143,224,160,.4);}
.auto-grading-btn.active{background:linear-gradient(160deg,#8fe0a0,#3a8f52); color:#0e1f13; border-color:transparent; animation:autoGradingPulse 1.4s ease-in-out infinite;}
@keyframes autoGradingPulse{0%,100%{box-shadow:0 0 0 rgba(143,224,160,0);}50%{box-shadow:0 0 16px rgba(143,224,160,.6);}}
.inv-actions{display:flex; flex-direction:column; gap:6px;}
.gradebtn{font-size:11px; padding:5px 8px; border-radius:7px; border:1px solid rgba(240,200,105,.4); background:rgba(240,200,105,.12); color:var(--gold-bright); cursor:pointer; white-space:nowrap;}
.gradebtn:hover{background:rgba(240,200,105,.25);}

.cimg{position:relative; display:inline-flex; align-items:center; justify-content:center; overflow:hidden; border-radius:8px; flex-shrink:0; background:rgba(0,0,0,.18);}
.cimg img{width:100%; height:100%; object-fit:cover; display:block;}
.cimg-fallback{display:none; align-items:center; justify-content:center; width:100%; height:100%; position:absolute; inset:0; font-size:1em;}
.cimg.emblem-lg{width:56px; height:56px; margin:0 auto;}
.emblem-lg .cimg-fallback{font-size:28px;}
.cimg.emblem-md{width:44px; height:44px;}
.emblem-md .cimg-fallback{font-size:24px;}
.cimg.emblem-sm{width:34px; height:34px;}
.emblem-sm .cimg-fallback{font-size:20px;}
.locked-img{background:rgba(255,255,255,.05);}
.locked-img .cimg-fallback{display:flex; opacity:.4;}
.inv-main{flex:1; min-width:0;}
.inv-name{font-family:'Sora',sans-serif; font-weight:700; font-size:13.5px; color:#fff;}
.inv-sub{font-size:11px; color:var(--marble-cream-dim); display:flex; align-items:center; margin-top:2px;}
.inv-stats{text-align:right; font-family:'JetBrains Mono',monospace;}
.inv-value{font-size:13px; color:var(--gold-bright);}
.inv-income{font-size:10.5px; color:#8fd6a0;}

.collection{margin:0 5vw 60px; display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:14px;}
.ccard{border-radius:12px; padding:12px; position:relative; min-height:150px; display:flex; flex-direction:column; justify-content:space-between; border:1px solid rgba(255,255,255,.12); background:linear-gradient(160deg,#241a11,#12151b);}
.ccard .cname{font-family:'Sora',sans-serif; font-weight:700; font-size:12px;}
.ccard .meta{display:flex; justify-content:space-between; align-items:center; font-size:10.5px; font-family:'JetBrains Mono',monospace; color:var(--marble-cream-dim);}
.ccard .rarity-tag{position:absolute; top:8px; right:8px; width:9px; height:9px; border-radius:50%;}
.ccard.locked{opacity:.4;}
.ccard .sellbtn{margin-top:6px; font-size:11px; padding:5px 8px; border-radius:7px; border:1px solid rgba(212,162,76,.35); background:rgba(212,162,76,.1); color:var(--gold-bright); cursor:pointer;}
.ccard .sellbtn:hover{background:rgba(212,162,76,.25);}
.levelbar{height:4px; border-radius:3px; background:rgba(255,255,255,.1); overflow:hidden; margin-top:4px;}
.levelbar i{display:block; height:100%; background:var(--gold-bright);}

.tag-common{background:var(--c-common);} .tag-rare{background:var(--c-rare);} .tag-epic{background:var(--c-epic);}
.tag-legendary{background:var(--c-legendary);} .tag-mythic{background:var(--c-mythic);} .tag-god{background:var(--c-god);}
.tag-secret{background:var(--c-secret);} .tag-og{background:var(--c-og);} .tag-adminplus{background:var(--c-adminplus);}

.toast{position:fixed; bottom:22px; left:50%; transform:translateX(-50%) translateY(20px); background:linear-gradient(160deg,#20242c,#14171d); border:1px solid rgba(212,162,76,.5); color:var(--gold-bright); padding:10px 20px; border-radius:10px; font-size:13px; opacity:0; transition:opacity .3s, transform .3s; z-index:200; pointer-events:none; text-align:center; max-width:80vw;}
.toast.show{opacity:1; transform:translateX(-50%) translateY(0);}
footer{text-align:center; padding:20px; color:var(--marble-cream-dim); font-size:11px; letter-spacing:.08em;}
@media (max-width:640px){ .hero{padding:26px 5vw 14px;} .section-label{margin:26px 5vw 10px; font-size:18px;} .sticky-wallet-bar{padding:8px 5vw; justify-content:center;} }
