/* assets/style.css - BitradeX Modern Premium Dark Styling */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');

:root {
    --primary-color: #030712;
    --accent-color: #00f0ff;       /* BitradeX Neon Cyan */
    --accent-gold: #f59e0b;        /* Amber Gold */
    --accent-green: #10b981;       /* Emerald Profit Green */
    --accent-red: #ef4444;         /* Ruby Loss Red */
    --bg-dark: #070913;            /* Rich Cyberpunk Space Black */
    --bg-darker: #0b0e1a;
    --bg-card: rgba(22, 28, 45, 0.65); /* Semi-transparent obsidian glass */
    --bg-card-light: rgba(33, 42, 65, 0.65);
    --text-main: #ffffff;
    --text-muted: #94a3b8;         /* High-contrast silver gray */
    --text-dim: #64748b;
    --text-card-main: #ffffff;
    --nav-bg: rgba(7, 9, 19, 0.95);

    --border-color: rgba(255, 255, 255, 0.08);
    --transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    --glow-cyan: 0 0 25px rgba(0, 240, 255, 0.15);
    --glass-grad: linear-gradient(135deg, rgba(22, 28, 45, 0.8) 0%, rgba(11, 14, 26, 0.8) 100%);
}

/* Base Body Adjustments */
body {
    font-family: 'Inter', sans-serif;
    background-color: var(--bg-dark);
    color: var(--text-main);
    background-attachment: fixed;
    min-height: 100vh;
}

/* Premium Card Glassmorphism */
.card, .modal-content, .card-premium {
    background: var(--glass-grad) !important;
    border: 1px solid var(--border-color) !important;
    backdrop-filter: blur(15px) saturate(180%);
    -webkit-backdrop-filter: blur(15px) saturate(180%);
    color: var(--text-card-main) !important;
    border-radius: 20px !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.05);
    transition: var(--transition);
}

.card:hover, .card-premium:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.4), 0 0 25px rgba(0, 240, 255, 0.05);
    border-color: rgba(0, 240, 255, 0.2) !important;
}

/* Ensure card children respect text hierarchy */
.card h1, .card h2, .card h3, .card h4, .card h5, .card h6, .card p, .card span:not(.badge), .card td, .card th {
    color: var(--text-card-main) !important;
}

.card .text-muted, .card-premium .text-muted, .text-muted, .card p.text-muted, .card span.text-muted, .card small.text-muted {
    color: var(--text-muted) !important;
}

.card small, .small, small {
    color: var(--text-muted) !important;
}

/* Glowing Neon Background Particles Layer */
.bg-particles {
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: 
        radial-gradient(circle at 10% 20%, rgba(0, 240, 255, 0.04) 0%, transparent 50%),
        radial-gradient(circle at 90% 10%, rgba(245, 158, 11, 0.03) 0%, transparent 50%),
        radial-gradient(circle at 50% 80%, rgba(16, 185, 129, 0.03) 0%, transparent 50%);
    pointer-events: none;
    z-index: -1;
}

/* Premium Navbar Styling */
.navbar-dark-premium {
    background: var(--nav-bg) !important;
    backdrop-filter: blur(25px);
    -webkit-backdrop-filter: blur(25px);
    border-bottom: 1px solid var(--border-color);
}

.navbar-dark-premium .nav-link {
    color: rgba(255, 255, 255, 0.75) !important;
    font-weight: 600;
    transition: var(--transition);
}

.navbar-dark-premium .nav-link:hover, 
.navbar-dark-premium .nav-link.active {
    color: var(--accent-color) !important;
    text-shadow: 0 0 15px rgba(0, 240, 255, 0.5);
}

/* Sleek Gradients */
.text-gradient-cyan {
    background: linear-gradient(135deg, #00f0ff 0%, #3b82f6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Institutional Grade Button Controls */
.btn-premium, .btn-btx-primary {
    background: linear-gradient(135deg, #00f0ff, #0284c7) !important;
    color: #030712 !important;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: none !important;
    border-radius: 12px !important;
    padding: 12px 28px;
    box-shadow: 0 4px 20px rgba(0, 240, 255, 0.25) !important;
    transition: var(--transition) !important;
}

.btn-premium:hover, .btn-btx-primary:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 30px rgba(0, 240, 255, 0.45) !important;
    filter: brightness(1.1);
}

.btn-premium-outline, .btn-outline-info {
    background: transparent !important;
    color: var(--accent-color) !important;
    border: 1px solid rgba(0, 240, 255, 0.4) !important;
    border-radius: 12px !important;
    padding: 12px 28px;
    font-weight: 700;
    transition: var(--transition) !important;
}

.btn-premium-outline:hover, .btn-outline-info:hover {
    background: rgba(0, 240, 255, 0.08) !important;
    border-color: var(--accent-color) !important;
    box-shadow: 0 0 15px rgba(0, 240, 255, 0.2) !important;
}

/* Translucent Inputs styling */
.form-control-premium, .input-withdraw, .form-select, .form-control {
    background: rgba(0, 0, 0, 0.35) !important;
    border: 1px solid var(--border-color) !important;
    border-radius: 12px !important;
    color: #ffffff !important;
    padding: 12px 18px !important;
    transition: var(--transition) !important;
}

.form-control-premium:focus, .input-withdraw:focus, .form-select:focus, .form-control:focus {
    background: rgba(0, 0, 0, 0.5) !important;
    border-color: var(--accent-color) !important;
    box-shadow: 0 0 15px rgba(0, 240, 255, 0.15) !important;
    outline: none !important;
}

/* Tables styling */
.table-premium {
    color: var(--text-main) !important;
    background: transparent !important;
}

.table-premium thead th {
    background: rgba(0, 240, 255, 0.06) !important;
    color: var(--accent-color) !important;
    border-bottom: 2px solid rgba(0, 240, 255, 0.15) !important;
    text-transform: uppercase;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.5px;
    padding: 16px;
}

.table-premium tbody tr {
    background: transparent !important;
    transition: var(--transition);
}

.table-premium tbody tr:hover {
    background: rgba(0, 240, 255, 0.04) !important;
}

.table-premium td {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    color: #ffffff !important;
    padding: 16px;
    font-size: 0.9rem;
}

/* Authentication Cards */
.auth-container {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: radial-gradient(circle at center, #070915 0%, #03050c 100%);
}

.auth-card {
    background: rgba(13, 17, 30, 0.8) !important;
    border: 1px solid rgba(0, 240, 255, 0.1) !important;
    border-radius: 24px !important;
    padding: 40px !important;
    width: 100%;
    max-width: 450px;
    backdrop-filter: blur(25px) !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5), 0 0 40px rgba(0, 240, 255, 0.03) !important;
}

/* Badges styling */
.badge-premium, .badge {
    padding: 6px 14px !important;
    border-radius: 50px !important;
    font-size: 0.68rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px;
}

.bg-success, .bg-success-subtle, .badge-win {
    background-color: rgba(16, 185, 129, 0.12) !important;
    color: var(--accent-green) !important;
    border: 1px solid rgba(16, 185, 129, 0.25) !important;
}

.bg-danger, .bg-danger-subtle, .badge-loss {
    background-color: rgba(239, 68, 68, 0.12) !important;
    color: var(--accent-red) !important;
    border: 1px solid rgba(239, 68, 68, 0.25) !important;
}

.bg-warning, .bg-warning-subtle {
    background-color: rgba(245, 158, 11, 0.12) !important;
    color: var(--accent-gold) !important;
    border: 1px solid rgba(245, 158, 11, 0.25) !important;
}

.bg-info, .bg-info-subtle {
    background-color: rgba(0, 240, 255, 0.12) !important;
    color: var(--accent-color) !important;
    border: 1px solid rgba(0, 240, 255, 0.25) !important;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}
::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.2);
}
::-webkit-scrollbar-thumb {
    background: rgba(0, 240, 255, 0.25);
    border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 240, 255, 0.45);
}

/* Premium input group text styling */
.input-group-text {
    background: rgba(0, 0, 0, 0.45) !important;
    border: 1px solid var(--border-color) !important;
    color: var(--text-muted) !important;
    border-radius: 12px 0 0 12px !important;
    padding: 12px 18px !important;
    font-weight: 600;
}
.input-group .form-control {
    border-radius: 0 12px 12px 0 !important;
}