@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600&display=swap');

[data-bs-theme="dark"] {
    --bs-body-font-family: 'Poppins', sans-serif;
    --bs-primary: #C0934F;
    --bs-primary-rgb: 192, 147, 79;
    --bs-body-bg: #16191d;
    --bs-body-color: #ced4da;
    --bs-border-color-translucent: rgba(255, 255, 255, 0.1);
    --bs-secondary-bg: #212529;
    --bs-tertiary-bg: #2b2f33;
    --bottom-nav-height: 60px;
    --bs-warning: #DAA520;
    --bs-warning-rgb: 218, 165, 32;
}

.app-header {
    border-bottom: 1px solid var(--bs-border-color-translucent);
}
.app-header .navbar-brand { color: var(--bs-primary); }
.app-header .navbar-brand i { vertical-align: -2px; }
.app-header .nav-link {
    color: var(--bs-nav-link-color);
    font-weight: 500; font-size: 0.9rem; padding: 0.4rem 0;
    border-bottom: 2px solid transparent; transition: color 0.2s ease, border-color 0.2s ease;
}
.app-header .nav-link:hover { color: var(--bs-nav-link-hover-color); }
.app-header .nav-link.active {
    color: var(--bs-primary); font-weight: 600; border-bottom-color: var(--bs-primary);
}
.app-header .fa-bell { color: var(--bs-secondary-color); transition: color 0.2s ease; }
.app-header .fa-bell:hover { color: var(--bs-light); }
.app-header .fa-bell + .position-absolute {
    top: 2px !important; left: 95% !important; --bs-bg-opacity: 1;
    padding: .15rem !important; font-size: .5rem;
}
.app-header .dropdown-menu { margin-top: 0.5rem !important; }
.app-header .dropdown-item { font-size: 0.9rem; padding: 0.5rem 1rem; }
.app-header .dropdown-item i.fa-fw { width: 1.6em; opacity: 0.8; }
.app-header .dropdown-header { font-weight: 600; color: var(--bs-light); }
.balance-display { font-weight: 600; font-size: 0.85em; padding: 0.4em 0.8em; }

.language-switcher-web {
    border-left: 1px solid var(--bs-border-color-translucent);
}
.language-switcher-web .lang-link {
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--bs-secondary-color);
    text-decoration: none;
    transition: color 0.2s ease;
}
.language-switcher-web .lang-link:hover {
    color: var(--bs-light);
}
.language-switcher-web .lang-link.active {
    color: var(--bs-primary);
    font-weight: 700;
}
.language-switcher-web .lang-separator {
    color: var(--bs-secondary-color);
    opacity: 0.5;
    font-size: 0.8rem;
}

.app-header-mobile {
     border-bottom: 1px solid var(--bs-border-color-translucent);
}
.app-header-mobile .navbar-brand { color: var(--bs-primary); }
.app-header-mobile .fa-globe {
    color: var(--bs-secondary-color);
    transition: color 0.2s ease;
}
.app-header-mobile .fa-globe:hover {
     color: var(--bs-light);
}
.app-header-mobile .dropdown-menu .dropdown-item {
    font-size: 0.8rem;
}
.app-header-mobile .dropdown-menu .dropdown-item.active {
     font-weight: bold;
     background-color: rgba(var(--bs-primary-rgb), 0.2);
}

.bottom-nav {
    position: fixed; bottom: 0; left: 0; right: 0;
    height: var(--bottom-nav-height);
    background-color: var(--bs-tertiary-bg);
    border-top: 1px solid var(--bs-border-color-translucent);
    display: flex; justify-content: space-around; align-items: center;
    z-index: 1030; padding: 0.3rem 0;
}
.bottom-nav-item {
    flex-grow: 1; text-align: center; color: var(--bs-secondary-color);
    text-decoration: none; font-size: 0.7rem;
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    padding: 0.2rem 0; transition: color 0.2s ease;
}
.bottom-nav-item i { font-size: 1.2rem; margin-bottom: 0 !important; line-height: 1; }
.bottom-nav-item small { line-height: 1.2; margin-top: 2px; }
.bottom-nav-item:hover { color: var(--bs-light); }
.bottom-nav-item.active { color: var(--bs-primary); font-weight: 600; }

@media (max-width: 991.98px) {
    body { padding-bottom: var(--bottom-nav-height); }
}

.main-content { padding-top: 1.5rem; }
.welcome-banner { border: 1px solid var(--bs-border-color-translucent); }

.card {
    background-color: var(--bs-secondary-bg);
    border: 1px solid var(--bs-border-color-translucent);
    border-radius: 0.5rem;
}
.card-header {
    background-color: transparent;
    border-bottom: 1px solid var(--bs-border-color-translucent);
    padding: 0.8rem 1.2rem;
    font-size: 0.95rem;
}
.card-header i { color: var(--bs-primary); margin-right: 0.5rem !important; }
.card-body { padding: 1.2rem; }

.stat-item .fs-3 { line-height: 1.2; }
.stat-item .small { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.5px; }
.stat-item .border-end { border-color: var(--bs-border-color-translucent) !important; }

.list-group-item {
    background-color: transparent;
    border-color: var(--bs-border-color-translucent);
    padding: 0.9rem 1.2rem;
    color: var(--bs-body-color);
}
.list-group-item h6 { color: var(--bs-body-emphasis-color); margin-bottom: 0.1rem !important; }
.list-group-item-action:hover, .list-group-item-action:focus {
    background-color: var(--bs-tertiary-bg);
    color: var(--bs-body-emphasis-color);
}
.list-group-item i.fa-fw { width: 1.7em; opacity: 0.7; }
.list-group-item:last-child { border-bottom-right-radius: inherit; border-bottom-left-radius: inherit; }

.card-vip { border-color: var(--bs-warning) !important; }
.card-vip .btn-warning {
    color: #332701 !important;
    font-weight: 600 !important;
}

footer { background-color: var(--bs-tertiary-bg); }