/* Global quiet-luxury theme for Ishtar auction platform */

:root {
    --theme-bg: #f3efe6;
    --theme-surface: #fffaf0;
    --theme-surface-alt: #f6eddb;
    --theme-border: rgba(31, 41, 35, 0.14);
    --theme-text: #17201d;
    --theme-muted: #67675f;
    --theme-brand: #c9a646;
    --theme-brand-bright: #e1bf62;
    --theme-brand-strong: #a98222;
    --theme-accent: #083b2a;
    --theme-navy: #101b2f;
    --theme-wine: #5b1f2e;
    --theme-danger: #b8322c;
    --theme-shadow-sm: 0 8px 24px rgba(19, 28, 24, 0.08);
    --theme-shadow-md: 0 18px 42px rgba(19, 28, 24, 0.14);
    --theme-radius-lg: 16px;
    --theme-radius-md: 10px;
    --theme-radius-sm: 8px;
}

html,
body,
body.app-theme {
    background:
        radial-gradient(900px 420px at 12% -8%, rgba(201, 166, 70, 0.14), transparent 60%),
        radial-gradient(780px 420px at 100% 8%, rgba(8, 59, 42, 0.12), transparent 58%),
        linear-gradient(180deg, #f3efe6 0%, #f8f4eb 48%, #efe6d8 100%) !important;
    color: var(--theme-text);
    min-height: 100vh;
}

body.app-theme {
    font-family: 'Tajawal', 'Cairo', "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
    line-height: 1.65;
}

body.app-theme a {
    text-decoration: none;
}

body.app-theme .container,
body.app-theme .container-fluid {
    position: relative;
    z-index: 1;
}

body.app-theme .navbar {
    background: linear-gradient(135deg, rgba(8, 59, 42, 0.96), rgba(16, 27, 47, 0.96)) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(201, 166, 70, 0.24);
    box-shadow: 0 10px 28px rgba(8, 17, 13, 0.24);
}

body.app-theme .navbar-brand {
    color: #fff3d1 !important;
    font-weight: 800;
    letter-spacing: 0;
}

body.app-theme .navbar .nav-link {
    color: #f8efd7 !important;
    border-radius: 10px;
    transition: background-color 0.25s ease, color 0.25s ease, transform 0.2s ease;
}

body.app-theme .navbar .nav-link:hover,
body.app-theme .navbar .nav-link:focus {
    color: #fff9ea !important;
    background: rgba(255, 248, 230, 0.12);
    transform: translateY(-1px);
}

body.app-theme .navbar .nav-link.active {
    background: rgba(201, 166, 70, 0.22);
    font-weight: 700;
}

body.app-theme .hero-section,
body.app-theme .admin-header,
body.app-theme .wallet-hero,
body.app-theme .search-card {
    border-radius: var(--theme-radius-lg);
    overflow: hidden;
    box-shadow: var(--theme-shadow-md);
}

body.app-theme .hero-section,
body.app-theme .search-card {
    background: linear-gradient(135deg, #083b2a 0%, #101b2f 58%, #5b1f2e 100%) !important;
    color: #fffaf0;
}

body.app-theme .admin-header {
    background: linear-gradient(135deg, #083b2a 0%, #101b2f 58%, #2c2a1d 100%) !important;
    color: #fffaf0;
}

body.app-theme .wallet-hero {
    background: linear-gradient(145deg, #081711 0%, #101b2f 52%, #083b2a 100%) !important;
    color: #fffaf0;
}

body.app-theme .card,
body.app-theme .modal-content,
body.app-theme .dropdown-menu,
body.app-theme .filter-sidebar,
body.app-theme .wallet-status {
    border: 1px solid var(--theme-border) !important;
    border-radius: var(--theme-radius-md) !important;
    background: var(--theme-surface) !important;
    box-shadow: var(--theme-shadow-sm);
}

body.app-theme .card {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

body.app-theme .card:hover {
    transform: translateY(-2px);
    box-shadow: var(--theme-shadow-md);
}

body.app-theme .card-header {
    background: linear-gradient(180deg, #fffaf0 0%, #f4ead9 100%) !important;
    border-bottom: 1px solid var(--theme-border);
    color: #17201d;
}

body.app-theme .alert {
    border-radius: var(--theme-radius-sm);
    border-width: 1px;
}

body.app-theme .badge {
    border-radius: 10px;
    font-weight: 700;
    padding: 0.35rem 0.75rem;
}

body.app-theme .btn,
body.app-theme .btn-auction,
body.app-theme .btn-primary,
body.app-theme .btn-login,
body.app-theme .btn-register,
body.app-theme .btn-gold,
body.app-theme .btn-search {
    border-radius: 10px;
    font-weight: 700;
    border-width: 1px;
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

body.app-theme .btn:hover,
body.app-theme .btn-auction:hover,
body.app-theme .btn-primary:hover,
body.app-theme .btn-login:hover,
body.app-theme .btn-register:hover,
body.app-theme .btn-gold:hover,
body.app-theme .btn-search:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 18px rgba(19, 28, 24, 0.14);
}

body.app-theme .btn-auction,
body.app-theme .btn-primary,
body.app-theme .btn-login,
body.app-theme .btn-register,
body.app-theme .btn-search {
    background: linear-gradient(135deg, var(--theme-brand-bright) 0%, var(--theme-brand) 100%) !important;
    border-color: var(--theme-brand) !important;
    color: #1d1709 !important;
}

body.app-theme .btn-gold,
body.app-theme .btn-success {
    background: linear-gradient(135deg, #083b2a 0%, #176044 100%) !important;
    border-color: #083b2a !important;
    color: #fffaf0 !important;
}

body.app-theme .btn-danger {
    background: linear-gradient(135deg, #b8322c, #8d201b) !important;
    border-color: #8d201b !important;
    color: #fff !important;
}

body.app-theme .btn-outline-primary,
body.app-theme .btn-outline-dark,
body.app-theme .btn-outline-secondary {
    border-color: rgba(23, 32, 29, 0.24);
    color: #17201d;
    background: rgba(255, 250, 240, 0.58);
}

body.app-theme .btn-outline-primary:hover,
body.app-theme .btn-outline-dark:hover,
body.app-theme .btn-outline-secondary:hover {
    background: #17201d;
    color: #fffaf0;
}

body.app-theme .form-control,
body.app-theme .form-select,
body.app-theme textarea,
body.app-theme input[type="text"],
body.app-theme input[type="number"],
body.app-theme input[type="password"],
body.app-theme input[type="email"],
body.app-theme input[type="tel"] {
    min-height: 42px;
    border-radius: 10px;
    border: 1px solid rgba(31, 41, 35, 0.18);
    background: #fffdf7;
    color: #17201d;
}

body.app-theme .form-control:focus,
body.app-theme .form-select:focus,
body.app-theme textarea:focus,
body.app-theme input:focus {
    border-color: var(--theme-brand);
    box-shadow: 0 0 0 0.2rem rgba(201, 166, 70, 0.18);
}

body.app-theme .table {
    --bs-table-bg: transparent;
    margin-bottom: 0;
}

body.app-theme .table thead th {
    background: #f4ead9;
    border-bottom: 1px solid var(--theme-border);
    color: #17201d;
    font-weight: 700;
}

body.app-theme .table td,
body.app-theme .table th {
    border-color: rgba(31, 41, 35, 0.12);
    vertical-align: middle;
}

body.app-theme .table tr:hover td {
    background: #fff7e6;
}

body.app-theme .timer,
body.app-theme .countdown,
body.app-theme #countdown {
    background: linear-gradient(135deg, #083b2a 0%, #c9a646 100%) !important;
    color: #fff !important;
    border-radius: 10px !important;
    padding: 6px 14px;
    display: inline-flex;
    align-items: center;
    font-weight: 700;
}

body.app-theme .price,
body.app-theme .wallet-number {
    color: #083b2a !important;
    font-weight: 800;
}

body.app-theme .wallet-number {
    font-size: clamp(1.8rem, 2.4vw, 2.5rem);
}

body.app-theme .bid-item,
body.app-theme .list-group-item {
    border-color: var(--theme-border);
    background: #fffdf7;
}

body.app-theme .sidebar {
    background: linear-gradient(180deg, #081711 0%, #083b2a 55%, #101b2f 100%) !important;
}

body.app-theme .text-muted {
    color: var(--theme-muted) !important;
}

body.app-theme footer {
    background: linear-gradient(135deg, #081711, #101b2f) !important;
    color: #f8efd7;
    border-top: 1px solid rgba(201, 166, 70, 0.24);
}

body.app-theme .progress {
    background-color: #eadfcf;
    border-radius: 999px;
}

body.app-theme .progress-bar {
    background: linear-gradient(90deg, #083b2a 0%, #c9a646 100%);
}

body.app-theme .page-shell,
body.app-theme .content-shell {
    max-width: 1320px;
    margin-inline: auto;
    padding: 1rem;
}

body.app-theme .empty-state {
    border: 1px dashed rgba(31, 41, 35, 0.22);
    border-radius: var(--theme-radius-lg);
    background: rgba(255, 250, 240, 0.68);
    padding: 2rem;
    text-align: center;
}

body.app-theme img {
    max-width: 100%;
}

@media (max-width: 991px) {
    body.app-theme .hero-section,
    body.app-theme .admin-header,
    body.app-theme .wallet-hero,
    body.app-theme .search-card {
        border-radius: 14px;
    }

    body.app-theme .navbar .nav-link {
        padding: 0.55rem 0.8rem;
    }
}

@media (max-width: 767px) {
    body.app-theme .card,
    body.app-theme .modal-content,
    body.app-theme .dropdown-menu {
        border-radius: 10px;
    }

    body.app-theme .btn,
    body.app-theme .btn-auction,
    body.app-theme .btn-primary,
    body.app-theme .btn-login,
    body.app-theme .btn-register,
    body.app-theme .btn-gold,
    body.app-theme .btn-search {
        width: 100%;
        min-height: 44px;
    }

    body.app-theme .wallet-number {
        font-size: 1.7rem;
    }
}
