/* ============================================
   LICITA.PUB - SISTEMA DE TEMAS (LIGHT/DARK)
   WCAG 2.1 AA Compliant
   ============================================ */

/* ---- TEMA CLARO (padrao) ---- */
:root {
    /* Fundos */
    --bg-page: #f5f5f5;
    --bg-card: #ffffff;
    --bg-elevated: #fafafa;
    --bg-header: #1351b4;
    --bg-header-border: #0c326f;
    --bg-footer: #071d41;
    --bg-input: #ffffff;
    --bg-hover: #f0f0f0;
    --bg-table-header: #f8f9fa;
    --bg-table-hover: #f5f7fa;
    --bg-code: #f4f4f4;
    --bg-overlay: rgba(0,0,0,0.5);

    /* Textos */
    --text-primary: #333333;
    --text-secondary: #555555;
    --text-muted: #888888;
    --text-on-primary: #ffffff;
    --text-on-dark: #ffffff;
    --text-link: #1351b4;
    --text-link-hover: #0c326f;

    /* Bordas */
    --border-color: #e0e0e0;
    --border-light: #f0f0f0;
    --border-input: #d4d4d4;

    /* Cor primaria */
    --primary: #1351b4;
    --primary-hover: #0c326f;
    --primary-dark: #071d41;
    --primary-light: rgba(19,81,180,0.1);
    --primary-gradient: linear-gradient(135deg, #1351b4, #071d41);

    /* Status */
    --success: #28a745;
    --success-bg: #d4edda;
    --success-text: #155724;
    --danger: #dc3545;
    --danger-bg: #f8d7da;
    --danger-text: #721c24;
    --warning: #ffc107;
    --warning-bg: #fff3cd;
    --warning-text: #856404;
    --info: #17a2b8;
    --info-bg: #d1ecf1;
    --info-text: #0c5460;

    /* Sombras */
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.05);
    --shadow-md: 0 4px 12px rgba(0,0,0,0.08);
    --shadow-lg: 0 8px 24px rgba(0,0,0,0.12);

    /* Badges */
    --badge-secondary-bg: #e2e3e5;
    --badge-secondary-text: #383d41;
    --badge-primary-bg: #cce5ff;
    --badge-primary-text: #004085;

    /* Sidebar admin */
    --sidebar-bg: #1a1a2e;
    --sidebar-hover: #16213e;
    --sidebar-active: #0f3460;
    --sidebar-text: #a0a0b8;
    --sidebar-text-active: #ffffff;

    /* Scrollbar */
    --scrollbar-track: #f0f0f0;
    --scrollbar-thumb: #cccccc;

    /* Misc */
    --skeleton-from: #e0e0e0;
    --skeleton-to: #f0f0f0;
    --divider: #e5e5e5;
}

/* ---- TEMA ESCURO ---- */
[data-theme="dark"] {
    /* Fundos */
    --bg-page: #111318;
    --bg-card: #1a1d24;
    --bg-elevated: #22262e;
    --bg-header: #0d1117;
    --bg-header-border: #21262d;
    --bg-footer: #0d1117;
    --bg-input: #161b22;
    --bg-hover: #22262e;
    --bg-table-header: #161b22;
    --bg-table-hover: #1c2028;
    --bg-code: #161b22;
    --bg-overlay: rgba(0,0,0,0.7);

    /* Textos */
    --text-primary: #e1e4e8;
    --text-secondary: #a0a8b4;
    --text-muted: #6e7681;
    --text-on-primary: #ffffff;
    --text-on-dark: #e1e4e8;
    --text-link: #4d94ff;
    --text-link-hover: #76aeff;

    /* Bordas */
    --border-color: #2d333b;
    --border-light: #21262d;
    --border-input: #363c46;

    /* Cor primaria */
    --primary: #4d94ff;
    --primary-hover: #76aeff;
    --primary-dark: #1a3a6b;
    --primary-light: rgba(77,148,255,0.15);
    --primary-gradient: linear-gradient(135deg, #1a3a6b, #0d1117);

    /* Status */
    --success: #3fb950;
    --success-bg: #1a2e1f;
    --success-text: #3fb950;
    --danger: #f85149;
    --danger-bg: #2d1b1e;
    --danger-text: #f85149;
    --warning: #d29922;
    --warning-bg: #2e2615;
    --warning-text: #d29922;
    --info: #58a6ff;
    --info-bg: #16233a;
    --info-text: #58a6ff;

    /* Sombras */
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.2);
    --shadow-md: 0 4px 12px rgba(0,0,0,0.3);
    --shadow-lg: 0 8px 24px rgba(0,0,0,0.4);

    /* Badges */
    --badge-secondary-bg: #2d333b;
    --badge-secondary-text: #a0a8b4;
    --badge-primary-bg: #16233a;
    --badge-primary-text: #58a6ff;

    /* Sidebar admin */
    --sidebar-bg: #0d1117;
    --sidebar-hover: #161b22;
    --sidebar-active: #1a2332;
    --sidebar-text: #6e7681;
    --sidebar-text-active: #e1e4e8;

    /* Scrollbar */
    --scrollbar-track: #1a1d24;
    --scrollbar-thumb: #363c46;

    /* Misc */
    --skeleton-from: #22262e;
    --skeleton-to: #2d333b;
    --divider: #2d333b;
}

/* ---- TRANSICAO SUAVE ---- */
body,
.card, .btn, .badge, .alert,
.header, .footer, .top-bar,
input, select, textarea, table,
.admin-sidebar, .admin-main, .admin-header,
.modal, .modal-overlay {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

/* ---- SCROLLBAR ESTILIZADA (dark mode) ---- */
[data-theme="dark"] ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

[data-theme="dark"] ::-webkit-scrollbar-track {
    background: var(--scrollbar-track);
}

[data-theme="dark"] ::-webkit-scrollbar-thumb {
    background: var(--scrollbar-thumb);
    border-radius: 4px;
}

[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
    background: #4a5060;
}

/* ---- IMAGENS NO DARK MODE ---- */
[data-theme="dark"] img:not([data-no-dim]) {
    opacity: 0.9;
}
