body {
    font-family: 'Noto Sans Bengali', sans-serif;
    background-color: #0f172a; 
    color: white;
    overflow-x: hidden;
}
.poker-table {
    background: radial-gradient(circle, #166534 0%, #064e3b 100%);
    border: 8px solid #78350f; 
    box-shadow: inset 0 0 40px rgba(0,0,0,0.9), 0 15px 30px rgba(0,0,0,0.6), 0 0 0 3px #451a03;
    min-height: 420px;
    border-radius: 2.5rem;
}
@media (min-width: 480px) { .poker-table { min-height: 480px; border: 12px solid #78350f; border-radius: 3rem; } }
@media (min-width: 768px) { .poker-table { min-height: 580px; border-width: 16px; border-radius: 6rem; box-shadow: inset 0 0 60px rgba(0,0,0,0.9), 0 25px 50px rgba(0,0,0,0.6), 0 0 0 5px #451a03; } }
.playing-card {
    width: 45px; height: 63px; border-radius: 6px; box-shadow: 0 3px 8px rgba(0,0,0,0.5);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); background-color: white;
    background-image: url('[https://deckofcardsapi.com/static/img/back.png](https://deckofcardsapi.com/static/img/back.png)'); background-size: cover; background-position: center;
}
@media (min-width: 480px) { .playing-card { width: 58px; height: 82px; border-radius: 8px; } }
@media (min-width: 768px) { .playing-card { width: 72px; height: 100px; border-radius: 10px; } }
.playing-card.revealed { background-image: none; }
.user-card { position: relative; cursor: pointer; }
.user-card.selectable:hover { transform: translateY(-15px) scale(1.1) !important; box-shadow: 0 15px 30px rgba(0,0,0,0.8); border: 2px solid #fbbf24; z-index: 100 !important; }
@media (min-width: 768px) { .user-card.selectable:hover { transform: translateY(-25px) scale(1.15) !important; border-width: 3px; } }
.playing-card.disabled { opacity: 0.5; cursor: not-allowed; filter: grayscale(100%); }
.trick-card { position: absolute; transform-origin: center center; }
.avatar { border: 2px solid #fbbf24; box-shadow: 0 3px 10px rgba(0,0,0,0.5); background-color: #1e293b; transition: all 0.3s; }
@media (min-width: 768px) { .avatar { border-width: 3px; } }
.bot-container { position: absolute; transform: translate(-50%, -50%); display: flex; flex-direction: column; align-items: center; z-index: 10; }
.status-badge { position: absolute; bottom: -5px; white-space: nowrap; }
.swal2-popup { background: #1e293b !important; color: white !important; border-radius: 1.5rem !important; border: 1px solid #334155; width: 90% !important; max-width: 450px !important; }
.swal2-title { color: #f8fafc !important; font-size: 1.5rem !important; }
.history-scroll::-webkit-scrollbar { width: 6px; }
.history-scroll::-webkit-scrollbar-track { background: #0f172a; border-radius: 3px; }
.history-scroll::-webkit-scrollbar-thumb { background: #fbbf24; border-radius: 3px; }
.custom-scroll::-webkit-scrollbar { width: 6px; }
.custom-scroll::-webkit-scrollbar-track { background: transparent; border-radius: 3px; }
.custom-scroll::-webkit-scrollbar-thumb { background: #475569; border-radius: 3px; }
