/* SHOP UI STYLES */

.shop-blurb {
    color: #e5f4ff;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.1px;
    text-shadow: 0 0 6px rgba(173, 216, 255, 0.25);
}

.shop-desc {
    color: #b6c2d1;
    font-size: 12px;
}

.shop-cost {
    color: #7dd3fc;
    font-size: 12px;
    margin-top: 6px;
}

.shop-name { 
    font-weight: 700; 
    margin-bottom: 6px; 
}

.shop-item {
    padding: 12px;
    background: #1f2937;
    color: #fff;
    border: 1px solid #334155;
    border-radius: 8px;
    cursor: pointer;
    user-select: none;
    transition: border-color .15s ease, box-shadow .15s ease, transform .05s ease, opacity .15s ease;
    position: relative;
}

.shop-item:hover { 
    border-color: #60a5fa; 
    box-shadow: 0 0 0 2px rgba(96,165,250,0.15) inset; 
}

.shop-item:active { 
    transform: translateY(1px); 
}

.shop-item.affordable { 
    border-color: #22c55e; 
    box-shadow: 0 0 0 2px rgba(34,197,94,0.12) inset; 
}

.shop-item.unaffordable { 
    border-color: #ef4444; 
    opacity: 0.78; 
    filter: saturate(0.9) brightness(0.98); 
}

.shop-cost.affordable { 
    color: #22c55e; 
}

.shop-cost.unaffordable { 
    color: #ef4444; 
}

.shop-badge { 
    position: absolute; 
    top: 8px; 
    right: 8px; 
    padding: 2px 8px; 
    font-size: 12px; 
    border-radius: 999px; 
    pointer-events: none; 
    backdrop-filter: blur(4px); 
}

.shop-badge.special { 
    background: rgba(34,197,94,0.12); 
    border: 1px solid #22c55e; 
    color: #22c55e; 
    text-shadow: 0 0 6px rgba(34,197,94,0.25); 
}

/* ... copy remaining shop styles ... */
