:root[data-theme="night"] {
    --lv-bg: #171514;
    --lv-bg-secondary: #211c19;
    --lv-surface: #241e1a;
    --lv-surface-soft: #302722;
    --lv-card: #241e1a;
    --lv-card-border: #493c34;
    --lv-text: #f4ece6;
    --lv-text-secondary: #c9b9ae;
    --lv-text-muted: #a18f84;
    --lv-muted: #c9b9ae;
    --lv-border: #493c34;
    --lv-divider: #3e322c;
    --lv-hover: #352a24;
    --lv-selected: #40371f;
    --lv-primary: #d4bd55;
    --lv-primary-dark: #e2cc67;
    --lv-primary-soft: #40371f;
    --lv-primary-contrast: #211c12;
    --lv-accent: #C2AD3A;
    --lv-accent-text: #d4bd55;
    --lv-accent-text-secondary: #d0a087;
    --lv-accent-ink: #211c12;
    --lv-accent-secondary: #d0a087;
    --lv-accent-soft: color-mix(in srgb, var(--lv-accent) 12%, transparent);
    --lv-accent-border: color-mix(in srgb, var(--lv-accent) 38%, var(--lv-border));
    --lv-accent-glow: color-mix(in srgb, var(--lv-accent) 34%, transparent);
    --lv-grid-line: #f4ece60b;
    --lv-success: #69c99a;
    --lv-success-soft: #1d392b;
    --lv-success-contrast: #142119;
    --lv-warning: #f1bd66;
    --lv-warning-soft: #3b2d1b;
    --lv-warning-contrast: #21180b;
    --lv-danger: #ff8b7e;
    --lv-danger-soft: #40221f;
    --lv-danger-contrast: #2b100d;
    --lv-info: #8ec6d5;
    --lv-info-soft: #1a3139;
    --lv-info-contrast: #102228;
    --lv-purple: #b7a0e0;
    --lv-purple-soft: #342b43;
    --lv-orange: #e4a56c;
    --lv-orange-soft: #3c2c20;
    --lv-network: #75c6d1;
    --lv-network-soft: #1c363b;
    --lv-inventory: #e19abb;
    --lv-inventory-soft: #3b2934;
    --lv-site-layer: #8db9ee;
    --lv-site-layer-soft: #223247;
    --lv-relation-layer: #baa0ec;
    --lv-relation-layer-soft: #342b43;
    --lv-route-layer: #80c79a;
    --lv-route-layer-soft: #23392b;
    --lv-sidebar: #100e0d;
    --lv-sidebar-hover: #2b221d;
    --lv-sidebar-active: #57491b;
    --lv-sidebar-text: #f4ece6;
    --lv-sidebar-muted: #b7a69b;
    --lv-input-bg: #211b18;
    --lv-focus: #d8c259;
    --lv-map-empty: #1d1a17;
    --lv-shadow-sm: 0 1px 2px #0006;
    --lv-shadow: 0 8px 24px #0007;
    --lv-shadow-lg: 0 20px 50px #0009;
}

:root[data-theme="night"] .log-navbar,
:root[data-theme="night"] .map-header,
:root[data-theme="night"] .view-header {
    background: #100e0df2;
}

:root[data-theme="night"] .hero-section {
    background: radial-gradient(circle at 15% 20%, #c2ad3a20, transparent 32%), radial-gradient(circle at 85% 55%, #d0a08718, transparent 30%), var(--lv-bg);
}

:root[data-theme="night"] .btn-close {
    filter: invert(1) grayscale(1) brightness(1.8);
}

:root[data-theme="night"] .list-group-item,
:root[data-theme="night"] option {
    background: var(--lv-surface);
    color: var(--lv-text);
    border-color: var(--lv-border);
}

:root[data-theme="night"] .badge.text-bg-light {
    background: var(--lv-surface-soft) !important;
    color: var(--lv-text) !important;
}