/* ============================================================
   DECORAWORLD — Dark Editorial Theme Override
   Applied via: [data-theme="dark"] on <html>
   Light mode is the default (variables.css baseline).
   ============================================================ */

/* ----------------------------------------------------------
   CSS Custom Property Overrides
   ---------------------------------------------------------- */
[data-theme="dark"] {
    --color-primary: #eeb32b;
    --color-primary-dark: #d4a020;
    --color-secondary: #1a1a1a;
    --color-text: #e8e0d4;
    --color-text-light: #a89d8e;
    --color-border: #2a2a2a;
    --color-background: #111111;
    --color-success: #4ade80;
    --color-error: #f87171;
    --color-warning: #fbbf24;
    --color-info: #60a5fa;
    --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.4);
    --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.5);
    --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.6);
    /* Aliases — dark overrides */
    --bg-card: #1a1a1a;
    --bg-hover: #1e1e1e;
    --border-color: #2a2a2a;
    --primary: #eeb32b;
    --primary-rgb: 238, 179, 43;
    --text-primary: #e8e0d4;
    --text-muted: #a89d8e;
}

/* ----------------------------------------------------------
   Body & Root
   ---------------------------------------------------------- */
[data-theme="dark"] body {
    background-color: #0d0d0d;
    color: #e8e0d4;
}

/* ----------------------------------------------------------
   Sidebar
   ---------------------------------------------------------- */
[data-theme="dark"] .sidebar {
    background-color: #111111;
    border-right-color: #2a2a2a;
}

[data-theme="dark"] .sidebar-header {
    border-bottom-color: #2a2a2a;
}

[data-theme="dark"] .sidebar-logo {
    color: #e8e0d4;
}

[data-theme="dark"] .sidebar-footer {
    border-top-color: #2a2a2a;
}

[data-theme="dark"] .nav-item {
    color: #a89d8e;
}

[data-theme="dark"] .nav-item:hover {
    background-color: #1a1a1a;
    color: #e8e0d4;
}

[data-theme="dark"] .nav-item.active {
    background-color: rgba(238, 179, 43, 0.15);
    color: #eeb32b;
    border-left: 2px solid #eeb32b;
}

/* ----------------------------------------------------------
   Header
   ---------------------------------------------------------- */
[data-theme="dark"] .header {
    background-color: #0d0d0d;
    border-bottom-color: #2a2a2a;
}

[data-theme="dark"] .header-title {
    color: #e8e0d4;
}

[data-theme="dark"] .header-user-name {
    color: #a89d8e;
}

/* ----------------------------------------------------------
   Content Area
   ---------------------------------------------------------- */
[data-theme="dark"] .content {
    background-color: #0d0d0d;
}

[data-theme="dark"] .main-content {
    background-color: #0d0d0d;
}

/* ----------------------------------------------------------
   Cards
   ---------------------------------------------------------- */
[data-theme="dark"] .card {
    background-color: #1a1a1a;
    border-color: #2a2a2a;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .card-header {
    color: #e8e0d4;
}

[data-theme="dark"] .card-metric-label {
    color: #a89d8e;
}

[data-theme="dark"] .card-metric-value {
    color: #e8e0d4;
}

/* ----------------------------------------------------------
   Filters
   ---------------------------------------------------------- */
[data-theme="dark"] .filters {
    background-color: #1a1a1a;
    border-color: #2a2a2a;
}

/* ----------------------------------------------------------
   Forms — Inputs, Selects, Textareas
   ---------------------------------------------------------- */
[data-theme="dark"] .input,
[data-theme="dark"] .select,
[data-theme="dark"] .textarea,
[data-theme="dark"] input[type="text"],
[data-theme="dark"] input[type="email"],
[data-theme="dark"] input[type="password"],
[data-theme="dark"] input[type="number"],
[data-theme="dark"] input[type="date"],
[data-theme="dark"] input[type="search"],
[data-theme="dark"] input[type="tel"],
[data-theme="dark"] input[type="url"],
[data-theme="dark"] select,
[data-theme="dark"] textarea {
    background-color: #1e1e1e;
    border-color: #2a2a2a;
    color: #e8e0d4;
}

[data-theme="dark"] .input:focus,
[data-theme="dark"] .select:focus,
[data-theme="dark"] .textarea:focus,
[data-theme="dark"] input:focus,
[data-theme="dark"] select:focus,
[data-theme="dark"] textarea:focus {
    border-color: #eeb32b;
    outline: none;
    box-shadow: 0 0 0 2px rgba(238, 179, 43, 0.15);
}

[data-theme="dark"] .input::placeholder,
[data-theme="dark"] input::placeholder,
[data-theme="dark"] textarea::placeholder {
    color: #5a5248;
}

[data-theme="dark"] .input-label,
[data-theme="dark"] label {
    color: #a89d8e;
}

/* ----------------------------------------------------------
   Buttons
   ---------------------------------------------------------- */
[data-theme="dark"] .btn-primary {
    background-color: #eeb32b;
    border-color: #eeb32b;
    color: #0d0d0d;
}

[data-theme="dark"] .btn-primary:hover:not(:disabled) {
    background-color: #d4a020;
    border-color: #d4a020;
}

[data-theme="dark"] .btn-secondary {
    background-color: transparent;
    border-color: #2a2a2a;
    color: #a89d8e;
}

[data-theme="dark"] .btn-secondary:hover:not(:disabled) {
    background-color: #1a1a1a;
    color: #e8e0d4;
    border-color: #3a3a3a;
}

[data-theme="dark"] .btn-danger {
    background-color: #dc2626;
    border-color: #dc2626;
    color: white;
}

/* ----------------------------------------------------------
   Tables
   ---------------------------------------------------------- */
[data-theme="dark"] .table-container {
    border-color: #2a2a2a;
}

[data-theme="dark"] .table {
    background-color: #1a1a1a;
}

[data-theme="dark"] .table thead {
    background-color: #111111;
}

[data-theme="dark"] .table th {
    color: #a89d8e;
    border-bottom-color: #2a2a2a;
}

[data-theme="dark"] .table td {
    color: #e8e0d4;
    border-bottom-color: #222222;
}

[data-theme="dark"] .table tbody tr:nth-child(even) {
    background-color: #1e1e1e;
}

[data-theme="dark"] .table tbody tr:hover {
    background-color: rgba(238, 179, 43, 0.05);
}

/* ----------------------------------------------------------
   Modal
   ---------------------------------------------------------- */
[data-theme="dark"] .modal {
    background-color: #1a1a1a;
    border: 1px solid #2a2a2a;
}

[data-theme="dark"] .modal-header {
    border-bottom-color: #2a2a2a;
}

[data-theme="dark"] .modal-title {
    color: #e8e0d4;
}

[data-theme="dark"] .modal-footer {
    border-top-color: #2a2a2a;
    background-color: #1a1a1a;
}

/* ----------------------------------------------------------
   Menu Toggle (Mobile)
   ---------------------------------------------------------- */
[data-theme="dark"] .menu-toggle {
    background-color: #1a1a1a;
    border-color: #2a2a2a;
}

[data-theme="dark"] .menu-toggle-icon,
[data-theme="dark"] .menu-toggle-icon::before,
[data-theme="dark"] .menu-toggle-icon::after {
    background-color: #e8e0d4;
}

/* ----------------------------------------------------------
   Misc: badges, tags, status indicators
   ---------------------------------------------------------- */
[data-theme="dark"] .badge,
[data-theme="dark"] .tag {
    border-color: #2a2a2a;
}

/* Section titles / page subtitles */
[data-theme="dark"] h1,
[data-theme="dark"] h2,
[data-theme="dark"] h3,
[data-theme="dark"] h4,
[data-theme="dark"] h5,
[data-theme="dark"] h6 {
    color: #e8e0d4;
}

[data-theme="dark"] p,
[data-theme="dark"] span,
[data-theme="dark"] li {
    color: #a89d8e;
}

/* Override inline whites (some pages hardcode bg white via style attr) */
[data-theme="dark"] [style*="background-color: white"],
[data-theme="dark"] [style*="background-color:white"],
[data-theme="dark"] [style*="background: white"],
[data-theme="dark"] [style*="background:white"] {
    background-color: #1a1a1a !important;
}

/* Scrollbar theming */
[data-theme="dark"] ::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}
[data-theme="dark"] ::-webkit-scrollbar-track {
    background: #111111;
}
[data-theme="dark"] ::-webkit-scrollbar-thumb {
    background: #2a2a2a;
    border-radius: 3px;
}
[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
    background: #3a3a3a;
}

/* ----------------------------------------------------------
   Theme Toggle Button (injected by theme-toggle.js)
   ---------------------------------------------------------- */
.dw-theme-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 20px;
    border: 1px solid var(--color-border);
    background: transparent;
    color: var(--color-text-light);
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.25s ease;
    font-family: var(--font-family);
    letter-spacing: 0.3px;
    white-space: nowrap;
}

.dw-theme-btn:hover {
    border-color: #eeb32b;
    color: #eeb32b;
}

[data-theme="dark"] .dw-theme-btn {
    border-color: #2a2a2a;
    color: #a89d8e;
}

[data-theme="dark"] .dw-theme-btn:hover {
    border-color: #eeb32b;
    color: #eeb32b;
}

/* ----------------------------------------------------------
   Sidebar Logo — real images (injected by theme-toggle.js)
   ---------------------------------------------------------- */
.dw-sidebar-logo-wrap {
    display: block;
    text-align: center;
    text-decoration: none;
}

.dw-logo-img {
    max-width: 140px;
    height: auto;
    display: block;
    margin: 0 auto;
    transition: opacity 0.3s ease;
}

.dw-logo-dark { opacity: 1; }
.dw-logo-light { opacity: 0; position: absolute; top: 0; left: 50%; transform: translateX(-50%); }

[data-theme="light"] .dw-logo-dark { opacity: 0; }
[data-theme="light"] .dw-logo-light { opacity: 1; }

/* ----------------------------------------------------------
   Login / Auth pages (index.html, register.html)
   ---------------------------------------------------------- */
[data-theme="dark"] .login-card,
[data-theme="dark"] .auth-card {
    background-color: #1a1a1a !important;
    border-color: #2a2a2a !important;
}

/* Override gradient body on auth pages */
[data-theme="dark"] body {
    background: #0d0d0d !important;
}

/* ----------------------------------------------------------
   Transacoes page — specific inline style overrides
   ---------------------------------------------------------- */
[data-theme="dark"] .inline-input,
[data-theme="dark"] .inline-select {
    background: #1e1e1e !important;
    color: #e8e0d4 !important;
    border-color: #3a3a3a !important;
}

[data-theme="dark"] .btn-icon.btn-save:hover {
    background: rgba(74, 222, 128, 0.15) !important;
    color: #4ade80 !important;
}

[data-theme="dark"] .btn-icon.btn-cancel:hover,
[data-theme="dark"] .btn-icon.btn-delete:hover {
    background: rgba(248, 113, 113, 0.15) !important;
    color: #f87171 !important;
}

[data-theme="dark"] .editing-row td {
    background: rgba(238, 179, 43, 0.04) !important;
}

[data-theme="dark"] .add-row td {
    background: #1a1a1a !important;
}

[data-theme="dark"] .summary-card {
    background: #1a1a1a !important;
    border-color: #2a2a2a !important;
}

[data-theme="dark"] .summary-card-label {
    color: #a89d8e !important;
}

[data-theme="dark"] .summary-card-value {
    color: #e8e0d4 !important;
}

[data-theme="dark"] .tabs {
    border-color: #2a2a2a !important;
}

[data-theme="dark"] .tab-btn {
    color: #a89d8e !important;
    border-color: transparent !important;
}

[data-theme="dark"] .tab-btn.active {
    color: #eeb32b !important;
    border-color: #eeb32b !important;
    background: rgba(238, 179, 43, 0.08) !important;
}

[data-theme="dark"] .tab-btn:hover:not(.active) {
    background: #1a1a1a !important;
    color: #e8e0d4 !important;
}

[data-theme="dark"] .month-nav-btn {
    background: #1a1a1a !important;
    border-color: #2a2a2a !important;
    color: #e8e0d4 !important;
}

[data-theme="dark"] .month-label {
    color: #e8e0d4 !important;
}

[data-theme="dark"] .table-footer {
    background: #1a1a1a !important;
    border-color: #2a2a2a !important;
    color: #a89d8e !important;
}

[data-theme="dark"] .table-footer strong {
    color: #e8e0d4 !important;
}
