/* Cards */
.game-card{width:120px;min-width:120px;background:var(--bg-card);border:2px solid #444;border-radius:8px;padding:8px;cursor:pointer;transition:all var(--transition-med);position:relative;flex-shrink:0;box-shadow:0 2px 8px rgba(0,0,0,0.4)}
.game-card:hover{transform:translateY(-20px) scale(1.08) rotate(0deg) !important;border-color:var(--gold);box-shadow:0 0 20px rgba(255,215,0,0.3),0 8px 20px rgba(0,0,0,0.5);z-index:100 !important}
.game-card[ondrop]{border:2px dashed rgba(255,215,0,0.3)}
.game-card[ondrop].drag-over{border-color:var(--gold);background:rgba(255,215,0,0.08)}
.game-card.playable{border-color:#4a4;box-shadow:0 0 8px rgba(68,170,68,0.3);animation:cardGlow 2s ease-in-out infinite}
.game-card.playable:hover{border-color:#6f6;box-shadow:0 0 20px rgba(68,255,68,0.4);animation:none}
.game-card.selected{transform:translateY(-20px) scale(1.08);border-color:var(--gold);box-shadow:0 0 25px rgba(255,215,0,0.6)}
.game-card.disabled{opacity:0.4;pointer-events:none;filter:grayscale(0.5)}
.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.card-cost{width:24px;height:24px;background:linear-gradient(135deg,#2a2a5a,#1a1a3a);border:2px solid var(--mana-blue);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:0.8rem;font-weight:900;color:#fff;text-shadow:0 0 6px rgba(52,152,219,0.6);box-shadow:0 0 6px rgba(52,152,219,0.3)}
.card-type-icon{font-size:0.75rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:1px}
.card-art{width:100%;height:50px;background:#111;border-radius:4px;margin-bottom:6px;overflow:hidden;display:flex;align-items:center;justify-content:center;border:1px solid #222;box-shadow:inset 0 1px 4px rgba(0,0,0,0.5)}
.card-art img{max-width:100%;max-height:100%;image-rendering:pixelated}
.card-art-icon{font-size:1.8rem}
.card-name{font-family:var(--font-heading);font-size:0.7rem;font-weight:700;color:var(--gold-light);text-align:center;letter-spacing:0.5px;margin-bottom:4px;line-height:1.2;min-height:28px;display:flex;align-items:center;justify-content:center}
.card-desc{font-size:0.65rem;color:var(--text-dim);text-align:center;line-height:1.3;min-height:26px}
.card-desc .dmg{color:#e74c3c;font-weight:700}
.card-desc .blk{color:#95a5a6;font-weight:700}
.card-desc .heal{color:#2ecc71;font-weight:700}
.card-desc .special{color:#bb6bd9;font-weight:700}

/* Dice requirements */
.card-dice-req{display:flex;gap:3px;justify-content:center;margin-top:4px;padding-top:4px;border-top:1px solid #333}
.dice-req-item{width:20px;height:20px;background:#1a1a2e;border:1px solid #555;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:0.65rem;font-weight:700;color:var(--text-main)}
.dice-req-item.any{color:#888}
.dice-req-item.exact{color:var(--gold);border-color:var(--gold-dark)}
.dice-req-item.min{color:#5dade2;border-color:#3498db}
.dice-req-item.filled{background:rgba(46,204,113,0.2);border-color:#2ecc71;color:#2ecc71}

/* Rarity borders with glow */
.game-card.common{border-top:3px solid #888}
.game-card.uncommon{border-top:3px solid #2ecc71}
.game-card.rare{border-top:3px solid #3498db}
.game-card.epic{border-top:3px solid #9b59b6}
.game-card.legendary{border-top:3px solid var(--gold);box-shadow:0 -2px 10px rgba(255,215,0,0.2)}
.game-card.common .card-name{color:#ccc}
.game-card.uncommon .card-name{color:#2ecc71}
.game-card.rare .card-name{color:#5dade2}
.game-card.epic .card-name{color:#bb6bd9}
.game-card.legendary .card-name{color:var(--gold)}

/* Deck viewer smaller cards */
.deck-viewer-cards .game-card{width:105px;min-width:105px;cursor:default}
.deck-viewer-cards .game-card:hover{transform:translateY(-4px)}

/* Reward cards */
.reward-card-option{display:inline-block;vertical-align:top;margin:0 8px;cursor:pointer}
.reward-card-option .game-card{width:140px;min-width:140px}
.reward-card-option .game-card:hover{transform:translateY(-8px) scale(1.05)}

/* Card played animation */
.game-card.card-played{animation:cardPlayed 0.4s ease-out forwards}
@keyframes cardPlayed{0%{opacity:1;transform:translateY(0) scale(1)}50%{opacity:0.8;transform:translateY(-40px) scale(0.9)}100%{opacity:0;transform:translateY(-80px) scale(0.5)}}
.game-card.card-drawn{animation:cardDrawn 0.3s ease-out}
@keyframes cardDrawn{0%{opacity:0;transform:translateY(40px) scale(0.5)}100%{opacity:1;transform:translateY(0) scale(1)}}

@media(max-width:640px){
    .game-card{width:100px;min-width:100px;padding:6px}
    .card-cost{width:20px;height:20px;font-size:0.7rem}
    .card-art{height:40px}
    .card-name{font-size:0.6rem;min-height:22px}
    .card-desc{font-size:0.55rem;min-height:20px}
    .dice-req-item{width:16px;height:16px;font-size:0.55rem}
    .deck-viewer-cards .game-card{width:90px;min-width:90px}
    .reward-card-option .game-card{width:110px;min-width:110px}
}
