/* ═══════════════════════════════════════════════════ */
/* WEAPON CASES — Styles                              */
/* ═══════════════════════════════════════════════════ */
*{margin:0;padding:0;box-sizing:border-box;}

:root{
  --accent-primary:#00f2ff;
  --accent-secondary:#ff4655;
  --bg-dark:#0a0a12;
  --glass-bg:rgba(20,20,35,0.4);
  --glass-border:rgba(255,255,255,0.08);
  --glass-border-top:rgba(255,255,255,0.15);
}

body{
  font-family:'Segoe UI',Roboto,sans-serif;
  background-color:var(--bg-dark);
  background-image:
    radial-gradient(ellipse at 10% 20%,rgba(255,70,85,0.12) 0%,transparent 50%),
    radial-gradient(ellipse at 90% 80%,rgba(0,242,255,0.12) 0%,transparent 50%),
    radial-gradient(ellipse at 50% 50%,rgba(20,0,40,0.3) 0%,transparent 70%);
  background-attachment:fixed;
  color:#e0e0e0;
  min-height:100vh;
  overflow-x:hidden;
}

body.shake{animation:screenShake 0.5s ease-in-out;}
@keyframes screenShake{
  0%,100%{transform:translate(0,0);}
  10%{transform:translate(-5px,-3px);}
  30%{transform:translate(3px,5px);}
  50%{transform:translate(-5px,3px);}
  70%{transform:translate(5px,-3px);}
  90%{transform:translate(-3px,-5px);}
}

.glass{
  background:var(--glass-bg);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border:1px solid var(--glass-border);
  border-top:1px solid var(--glass-border-top);
  border-radius:16px;
  box-shadow:0 8px 32px rgba(0,0,0,0.3);
}

/* ═══ HEADER ═══ */
.header{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;position:sticky;top:0;z-index:100;flex-wrap:wrap;gap:10px;}
.header-title{font-size:1.3rem;font-weight:300;letter-spacing:2px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.header-coins{font-size:1.2rem;font-weight:600;color:#ffd700;text-shadow:0 0 10px rgba(255,215,0,0.3);}
.header-actions{display:flex;gap:8px;flex-wrap:wrap;}
.header-actions button{padding:8px 14px;border:1px solid var(--glass-border);border-radius:10px;background:rgba(20,20,35,0.6);color:#ccc;cursor:pointer;font-size:0.85rem;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);}
.header-actions button:hover{transform:translateY(-2px);border-color:var(--accent-primary);box-shadow:0 4px 15px rgba(0,242,255,0.2);color:#fff;}

/* ═══ TABS ═══ */
.tabs{display:flex;justify-content:center;gap:8px;padding:12px 24px;flex-wrap:wrap;}
.tab-btn{padding:10px 24px;border:1px solid var(--glass-border);border-radius:12px;background:rgba(20,20,35,0.3);color:#aaa;cursor:pointer;font-size:0.95rem;font-weight:500;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);letter-spacing:0.5px;}
.tab-btn:hover{transform:translateY(-2px);color:#fff;border-color:var(--accent-primary);}
.tab-btn.active{background:linear-gradient(135deg,rgba(0,242,255,0.15),rgba(255,70,85,0.15));border-color:var(--accent-primary);color:#fff;box-shadow:0 4px 20px rgba(0,242,255,0.2);}

/* ═══ CONTENT ═══ */
.content{padding:20px 24px;max-width:1400px;margin:0 auto;}
.tab-content{display:none;}
.tab-content.active{display:block;}

/* ═══ SHOP ═══ */
.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;}
.case-card{padding:16px;text-align:center;cursor:pointer;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);position:relative;overflow:hidden;}
.case-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 12px 40px rgba(0,242,255,0.15);border-color:var(--accent-primary);}
.case-card.disabled{opacity:0.5;pointer-events:none;}
.case-emoji{font-size:2.5rem;margin-bottom:6px;filter:drop-shadow(0 4px 8px rgba(0,0,0,0.5));}
.case-name{font-weight:600;margin-bottom:4px;font-size:0.85rem;}
.case-price{color:#ffd700;font-family:'Courier New',monospace;font-size:0.85rem;}

/* ═══ ROULETTE ═══ */
.roulette-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.88);z-index:1000;align-items:center;justify-content:center;flex-direction:column;}
.roulette-overlay.active{display:flex;}
.roulette-container{width:90%;max-width:700px;height:130px;overflow:hidden;border-radius:12px;position:relative;border:2px solid var(--accent-primary);box-shadow:0 0 30px rgba(0,242,255,0.3);}
.roulette-pointer{position:absolute;top:-10px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:12px solid transparent;border-right:12px solid transparent;border-top:16px solid #ffd700;z-index:10;filter:drop-shadow(0 0 8px rgba(255,215,0,0.5));}
.roulette-track{display:flex;height:100%;}
.roulette-item{min-width:110px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid rgba(255,255,255,0.1);padding:4px;}
.roulette-item-emoji{width:70px;height:70px;display:flex;align-items:center;justify-content:center;font-size:2.5rem;}
.roulette-item .name{font-size:0.55rem;text-align:center;margin-top:2px;line-height:1.1;}
.roulette-result{margin-top:30px;font-size:1.3rem;font-weight:600;text-align:center;display:none;}
.roulette-result.show{display:block;animation:resultPop 0.5s ease-out;}
@keyframes resultPop{0%{transform:scale(0.5);opacity:0;}100%{transform:scale(1);opacity:1;}}

/* ═══ WEAPON CARDS ═══ */
.weapons-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;}
.weapon-card{padding:12px;text-align:center;cursor:pointer;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;}
.weapon-card:hover{transform:scale(1.05);}
.weapon-card.selected{border-color:var(--accent-primary)!important;box-shadow:0 0 20px rgba(0,242,255,0.4),inset 0 0 20px rgba(0,242,255,0.1);}

.card-img-wrap{width:90px;height:90px;border-radius:12px;overflow:hidden;margin-bottom:8px;display:flex;align-items:center;justify-content:center;background:rgba(10,10,20,0.6);border:2px solid rgba(255,255,255,0.05);flex-shrink:0;}
.card-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s;}
.weapon-card:hover .card-img-wrap img{transform:scale(1.1);}
.card-img-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;}
.card-img-wrap.small{width:55px;height:55px;border-radius:8px;}
.card-img-fallback.small{font-size:1.5rem;}

.card-name{font-weight:600;font-size:0.75rem;margin-bottom:3px;line-height:1.2;min-height:2em;display:flex;align-items:center;justify-content:center;}
.card-rarity{font-size:0.6rem;padding:2px 8px;border-radius:8px;display:inline-block;margin-bottom:4px;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;}
.card-skin{font-size:0.55rem;color:#aaa;margin-bottom:2px;font-style:italic;}
.card-price{font-family:'Courier New',monospace;font-size:0.75rem;color:#ffd700;margin-bottom:6px;}
.sell-btn{padding:4px 12px;border-radius:8px;border:1px solid rgba(255,255,255,0.2);background:rgba(255,50,50,0.2);color:#ff6b6b;cursor:pointer;font-size:0.7rem;transition:all 0.2s;}
.sell-btn:hover{background:rgba(255,50,50,0.4);border-color:#ff6b6b;}

/* ═══ RARITY COLORS ═══ */
.weapon-card.rarity-Consumer{border:1px solid rgba(176,176,176,0.3);box-shadow:0 0 10px rgba(176,176,176,0.1);}
.weapon-card.rarity-Consumer .card-rarity{background:rgba(176,176,176,0.2);color:#b0b0b0;}

.weapon-card.rarity-Industrial{border:1px solid rgba(78,156,213,0.5);box-shadow:0 0 12px rgba(78,156,213,0.2),inset 0 0 15px rgba(78,156,213,0.05);}
.weapon-card.rarity-Industrial .card-rarity{background:rgba(78,156,213,0.2);color:#4e9cd5;}

.weapon-card.rarity-Mil-Spec{border:1px solid rgba(68,107,255,0.5);box-shadow:0 0 12px rgba(68,107,255,0.2),inset 0 0 15px rgba(68,107,255,0.05);}
.weapon-card.rarity-Mil-Spec .card-rarity{background:rgba(68,107,255,0.2);color:#446bff;}

.weapon-card.rarity-Restricted{border:1px solid rgba(146,78,255,0.5);box-shadow:0 0 14px rgba(146,78,255,0.25),inset 0 0 18px rgba(146,78,255,0.05);}
.weapon-card.rarity-Restricted .card-rarity{background:rgba(146,78,255,0.2);color:#924eff;}

.weapon-card.rarity-Classified{border:1px solid rgba(211,44,230,0.5);box-shadow:0 0 16px rgba(211,44,230,0.3),inset 0 0 20px rgba(211,44,230,0.05);}
.weapon-card.rarity-Classified .card-rarity{background:rgba(211,44,230,0.2);color:#d32ce6;}

.weapon-card.rarity-Covert{border:1px solid rgba(235,75,75,0.6);box-shadow:0 0 20px rgba(235,75,75,0.3),inset 0 0 25px rgba(235,75,75,0.08);}
.weapon-card.rarity-Covert .card-rarity{background:rgba(235,75,75,0.2);color:#eb4b4b;}

.weapon-card.rarity-Special{border:2px solid rgba(255,215,0,0.6);box-shadow:0 0 25px rgba(255,215,0,0.3),inset 0 0 30px rgba(255,215,0,0.08);animation:specialGlow 2s ease-in-out infinite;}
.weapon-card.rarity-Special .card-rarity{background:rgba(255,215,0,0.2);color:#ffd700;}
@keyframes specialGlow{0%,100%{box-shadow:0 0 20px rgba(255,215,0,0.3);}50%{box-shadow:0 0 35px rgba(255,215,0,0.5);}}

/* ═══ INVENTORY CONTROLS ═══ */
.inventory-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px;}
.inventory-controls select{padding:8px 12px;border-radius:10px;border:1px solid var(--glass-border);background:rgba(20,20,35,0.6);color:#ccc;font-size:0.85rem;cursor:pointer;}
.inventory-controls select:focus{outline:none;border-color:var(--accent-primary);}
.sell-all-btn{padding:8px 16px;border-radius:10px;border:1px solid rgba(255,70,85,0.4);background:rgba(255,70,85,0.15);color:#ff6b6b;cursor:pointer;font-size:0.85rem;transition:all 0.3s;}
.sell-all-btn:hover{background:rgba(255,70,85,0.3);border-color:#ff6b6b;transform:translateY(-1px);}
.inv-count{color:#888;font-size:0.85rem;}
.empty-msg{color:#555;text-align:center;padding:60px 20px;font-size:1.1rem;display:none;}

/* ═══ UPGRADE ═══ */
.upgrade-2slot{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;margin-bottom:20px;}
.upgrade-slot{padding:16px;min-width:200px;max-width:240px;text-align:center;}
.slot-label{font-size:0.8rem;color:#aaa;margin-bottom:10px;text-transform:uppercase;letter-spacing:1px;}
.slot-card{min-height:140px;display:flex;align-items:center;justify-content:center;margin-bottom:10px;}
.slot-empty{padding:20px;cursor:pointer;border:2px dashed rgba(255,255,255,0.1);border-radius:12px;transition:all 0.3s;width:100%;}
.slot-empty:hover{border-color:var(--accent-primary);background:rgba(0,242,255,0.05);}
.slot-plus{font-size:2rem;color:#555;margin-bottom:8px;}
.slot-hint{font-size:0.7rem;color:#666;line-height:1.3;}
.slot-btn{padding:8px 16px;border-radius:10px;border:1px solid var(--glass-border);background:rgba(20,20,35,0.6);color:#ccc;cursor:pointer;font-size:0.8rem;transition:all 0.3s;width:100%;}
.slot-btn:hover{border-color:var(--accent-primary);color:#fff;}
.slot-btn-your:hover{box-shadow:0 4px 15px rgba(0,242,255,0.2);}
.slot-btn-target:hover{box-shadow:0 4px 15px rgba(255,70,85,0.2);}

.upgrade-center{display:flex;flex-direction:column;align-items:center;gap:12px;}
.wheel-outer{width:180px;height:180px;border-radius:50%;position:relative;display:flex;align-items:center;justify-content:center;}
.wheel-pointer-mark{position:absolute;top:-6px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:10px solid #ffd700;z-index:10;}
.wheel-ring{position:absolute;inset:0;border-radius:50%;border:4px solid rgba(255,255,255,0.1);transition:all 0.3s;}
.wheel-inner{width:120px;height:120px;border-radius:50%;background:rgba(10,10,20,0.8);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:5;}
.wheel-percent{font-size:1.4rem;font-weight:700;color:#fff;}
.wheel-label{font-size:0.65rem;color:#888;text-transform:uppercase;letter-spacing:1px;}
.arrow-container{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;}
.arrow-needle{width:4px;height:60px;border-radius:2px;position:absolute;transform-origin:bottom center;transition:transform 0.1s;}
.arrow-needle.idle{background:rgba(255,255,255,0.3);}
.arrow-needle.win{background:#4cff4c;}
.arrow-needle.lose{background:#ff4444;}

.upgrade-chance-info{font-size:0.85rem;color:#aaa;}
.upgrade-btn{padding:12px 32px;border-radius:12px;border:2px solid var(--accent-primary);background:linear-gradient(135deg,rgba(0,242,255,0.2),rgba(255,70,85,0.2));color:#fff;cursor:pointer;font-size:1rem;font-weight:600;transition:all 0.3s;letter-spacing:1px;}
.upgrade-btn:hover{transform:translateY(-2px);box-shadow:0 6px 25px rgba(0,242,255,0.3);}
.upgrade-btn:disabled{opacity:0.4;pointer-events:none;}

.upgrade-history{padding:16px;margin-top:16px;max-height:200px;overflow-y:auto;}
.upgrade-history h4{margin-bottom:10px;color:#aaa;}
.history-entry{padding:8px 0;border-bottom:1px solid rgba(255,255,255,0.05);font-size:0.8rem;display:flex;justify-content:space-between;}
.history-win{color:#4cff4c;}
.history-lose{color:#ff4444;}

/* ═══ PICKER MODAL ═══ */
.picker-rarity-filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;}
.picker-rarity-filters button{padding:4px 10px;border-radius:8px;border:1px solid var(--glass-border);background:rgba(20,20,35,0.4);color:#aaa;cursor:pointer;font-size:0.75rem;transition:all 0.2s;}
.picker-rarity-filters button.active{border-color:var(--accent-primary);color:#fff;background:rgba(0,242,255,0.1);}
.selector-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;max-height:400px;overflow-y:auto;padding:4px;}

/* ═══ MINER ═══ */
.miner-container{max-width:600px;margin:0 auto;}
.miner-controls{display:flex;align-items:center;gap:8px;padding:12px;flex-wrap:wrap;}
.miner-controls label{color:#aaa;font-size:0.9rem;}
.bet-btn{padding:8px 16px;border-radius:10px;border:1px solid var(--glass-border);background:rgba(20,20,35,0.6);color:#ccc;cursor:pointer;font-size:0.85rem;transition:all 0.3s;}
.bet-btn:hover{border-color:var(--accent-primary);color:#fff;}
.bet-btn.active{background:linear-gradient(135deg,rgba(0,242,255,0.15),rgba(255,70,85,0.15));border-color:var(--accent-primary);color:#fff;}
.miner-stats{display:flex;gap:20px;padding:12px;}
.stat-label{color:#888;font-size:0.85rem;}
.stat-value{color:#fff;font-weight:600;font-size:1rem;}
.miner-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:12px;max-width:400px;margin:0 auto;}
.miner-cell{aspect-ratio:1;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.3rem;transition:all 0.3s;border:1px solid var(--glass-border);background:rgba(20,20,35,0.5);}
.miner-cell:hover{transform:scale(1.05);border-color:var(--accent-primary);}
.miner-cell.revealed{pointer-events:none;}
.miner-cell.gem{background:rgba(0,242,255,0.15);border-color:var(--accent-primary);box-shadow:0 0 15px rgba(0,242,255,0.2);}
.miner-cell.mine{background:rgba(255,50,50,0.2);border-color:#ff4444;box-shadow:0 0 15px rgba(255,50,50,0.2);}
.miner-actions{display:flex;gap:12px;justify-content:center;padding:12px;}
.miner-btn{padding:12px 28px;border-radius:12px;border:none;cursor:pointer;font-size:0.95rem;font-weight:600;transition:all 0.3s;letter-spacing:0.5px;}
.miner-btn-start{background:linear-gradient(135deg,#00f2ff,#0099cc);color:#000;}
.miner-btn-start:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,242,255,0.3);}
.miner-btn-cashout{background:linear-gradient(135deg,#ffd700,#cc9900);color:#000;display:none;}
.miner-btn-cashout:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(255,215,0,0.3);}
.miner-btn:disabled{opacity:0.4;pointer-events:none;}
.miner-result-msg{text-align:center;font-size:1rem;font-weight:600;padding:8px;min-height:36px;}
.miner-history{padding:16px;margin-top:16px;max-height:200px;overflow-y:auto;}
.miner-history h4{margin-bottom:10px;color:#aaa;}
.history-entry{padding:6px 0;border-bottom:1px solid rgba(255,255,255,0.05);font-size:0.8rem;}

/* ═══ MODAL ═══ */
.modal-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.8);z-index:2000;align-items:center;justify-content:center;}
.modal-overlay.active{display:flex;}
.modal{padding:24px;max-width:400px;width:90%;text-align:center;}
.modal h2{margin-bottom:16px;font-size:1.2rem;}
.modal-close{position:absolute;top:12px;right:16px;background:none;border:none;color:#aaa;font-size:1.3rem;cursor:pointer;transition:color 0.2s;}
.modal-close:hover{color:#fff;}
.modal-section{display:flex;flex-direction:column;gap:10px;align-items:center;}
.modal-section input{padding:10px 14px;border-radius:10px;border:1px solid var(--glass-border);background:rgba(20,20,35,0.6);color:#fff;font-size:0.95rem;width:100%;max-width:250px;text-align:center;}
.modal-section input:focus{outline:none;border-color:var(--accent-primary);}
.modal-section button{padding:10px 24px;border-radius:10px;border:1px solid var(--accent-primary);background:rgba(0,242,255,0.15);color:#fff;cursor:pointer;font-size:0.9rem;transition:all 0.3s;}
.modal-section button:hover{background:rgba(0,242,255,0.3);}

/* ═══ NOTIFICATION ═══ */
.notification{position:fixed;top:60px;right:20px;padding:12px 20px;border-radius:12px;z-index:3000;animation:notifSlide 0.4s ease-out;font-size:0.9rem;font-weight:500;backdrop-filter:blur(12px);max-width:300px;}
.notification.success{background:rgba(0,200,100,0.2);border:1px solid rgba(0,200,100,0.4);color:#4cff4c;}
.notification.error{background:rgba(255,50,50,0.2);border:1px solid rgba(255,50,50,0.4);color:#ff6b6b;}
.notification.info{background:rgba(0,242,255,0.15);border:1px solid rgba(0,242,255,0.3);color:#00f2ff;}
@keyframes notifSlide{0%{transform:translateX(100%);opacity:0;}100%{transform:translateX(0);opacity:1;}}

/* ═══ SCROLLBAR ═══ */
::-webkit-scrollbar{width:6px;}
::-webkit-scrollbar-track{background:transparent;}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.1);border-radius:3px;}
::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.2);}

/* ═══ RESPONSIVE ═══ */
@media(max-width:700px){
  .header{padding:10px 14px;}
  .header-title{font-size:1rem;}
  .content{padding:12px;}
  .shop-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;}
  .upgrade-2slot{flex-direction:column;}
  .upgrade-slot{min-width:auto;width:100%;max-width:100%;}
  .wheel-outer{width:150px;height:150px;}
  .miner-grid{grid-template-columns:repeat(5,1fr);gap:4px;}
}
