/* =========================================================
   SEBILIVEPRO BUCHHALTUNG - DARK MODE V200
   ========================================================= */

:root {
    color-scheme: dark;

    --slp-black: #000000;
    --slp-panel: #080808;
    --slp-panel-2: #0d0d0d;
    --slp-panel-3: #141414;

    --slp-border: #282828;
    --slp-border-soft: #1c1c1c;

    --slp-text: #f5f5f5;
    --slp-text-soft: #b4b4b4;
    --slp-text-muted: #7e7e7e;

    --slp-blue: #2563eb;
    --slp-blue-hover: #1d4ed8;

    --slp-green: #22c55e;
    --slp-green-light: #4ade80;
    --slp-green-bg: rgba(34, 197, 94, 0.12);
    --slp-green-border: rgba(34, 197, 94, 0.35);

    --slp-red: #ef4444;
    --slp-red-light: #f87171;
    --slp-red-bg: rgba(239, 68, 68, 0.12);
    --slp-red-border: rgba(239, 68, 68, 0.35);

    --slp-orange: #f59e0b;
    --slp-orange-bg: rgba(245, 158, 11, 0.13);
}


/* =========================================================
   GESAMTER HINTERGRUND
   ========================================================= */

html,
body {
    background: var(--slp-black) !important;
    color: var(--slp-text) !important;
}


body {
    min-height: 100vh !important;
}


main,
.main,
.main-content,
.content,
.content-area,
.page,
.page-content,
.dashboard-content,
.app-content,
section {
    color: var(--slp-text);
}


/* =========================================================
   HAUPTBEREICH
   ========================================================= */

body > main,
main,
.main,
.main-content,
.content,
.content-area,
.page-content {
    background: var(--slp-black) !important;
}


body::before {
    background: var(--slp-black) !important;
}


/* =========================================================
   HEADER
   ========================================================= */

header,
.header,
.topbar,
.top-bar,
.app-header,
.page-header {
    background: #050505 !important;
    color: var(--slp-text) !important;
    border-color: var(--slp-border) !important;
}


header *,
.header *,
.topbar *,
.top-bar *,
.app-header * {
    color: var(--slp-text);
}


/* =========================================================
   SIDEBAR
   ========================================================= */

.sidebar,
aside,
nav.sidebar,
.app-sidebar {
    background: #020202 !important;
    border-color: var(--slp-border) !important;
}


.sidebar *,
aside * {
    color: #dddddd;
}


.nav-item,
.sidebar a,
.sidebar button {
    background: transparent;
    color: #dddddd !important;
    border-color: transparent;
}


.nav-item:hover,
.sidebar a:hover,
.sidebar button:hover {
    background: #151515 !important;
    color: #ffffff !important;
}


.nav-item.active,
.sidebar .active {
    background: #1c2636 !important;
    color: #ffffff !important;
}


/* =========================================================
   ÜBERSCHRIFTEN / TEXTE
   ========================================================= */

h1,
h2,
h3,
h4,
h5,
h6 {
    color: #ffffff !important;
}


p,
label,
small,
span {
    border-color: inherit;
}


.subtitle,
.description,
.muted,
.text-muted,
.card span,
.final100-muted {
    color: var(--slp-text-soft) !important;
}


/* =========================================================
   KARTEN / PANELS
   ========================================================= */

.card,
.panel,
.box,
.widget,
.summary-card,
.dashboard-card,
.settings-card,
.final100-card,
.final100-panel,
.reports-v40-card,
.reports-v40-panel,
.tasks-card,
.table-card,
.modal-content,
.modal-card {
    background: var(--slp-panel) !important;
    color: var(--slp-text) !important;
    border-color: var(--slp-border) !important;
    box-shadow: none !important;
}


.final100-overlay {
    background: var(--slp-black) !important;
}


.final100-panel-head,
.reports-v40-panel-head {
    background: #0a0a0a !important;
    border-color: var(--slp-border) !important;
}


/* =========================================================
   TABELLEN
   ========================================================= */

table {
    background: var(--slp-panel) !important;
    color: var(--slp-text) !important;
}


thead,
thead tr,
table thead tr {
    background: #111111 !important;
}


th {
    background: #111111 !important;
    color: #bdbdbd !important;
    border-color: var(--slp-border) !important;
}


td {
    background: transparent !important;
    color: #eeeeee !important;
    border-color: var(--slp-border-soft) !important;
}


tbody tr {
    background: #080808 !important;
    border-color: var(--slp-border-soft) !important;
}


tbody tr:nth-child(even) {
    background: #0b0b0b !important;
}


tbody tr:hover {
    background: #151515 !important;
}


.final100-table th,
.final100-table td,
.reports-v40-table th,
.reports-v40-table td {
    border-color: var(--slp-border) !important;
}


/* =========================================================
   EINGABEFELDER
   ========================================================= */

input,
select,
textarea {
    background: #111111 !important;
    color: #ffffff !important;
    border-color: #343434 !important;
}


input::placeholder,
textarea::placeholder {
    color: #737373 !important;
}


input:focus,
select:focus,
textarea:focus {
    border-color: #3b82f6 !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.16) !important;
}


option {
    background: #111111 !important;
    color: #ffffff !important;
}


/* =========================================================
   MODALS
   ========================================================= */

.modal,
.modal-overlay,
.final100-modal {
    color: var(--slp-text) !important;
}


.modal-content,
.modal-card,
.final100-modal-card {
    background: #0b0b0b !important;
    color: #ffffff !important;
    border: 1px solid var(--slp-border) !important;
}


.final100-modal-bg {
    background: rgba(0, 0, 0, 0.82) !important;
}


.final100-modal-actions {
    border-color: var(--slp-border) !important;
}


/* =========================================================
   BUTTONS
   ========================================================= */

button {
    transition:
        background 0.15s ease,
        border-color 0.15s ease,
        color 0.15s ease !important;
}


.btn-primary,
.primary,
.final100-primary {
    background: var(--slp-blue) !important;
    border-color: var(--slp-blue) !important;
    color: #ffffff !important;
}


.btn-primary:hover,
.primary:hover,
.final100-primary:hover {
    background: var(--slp-blue-hover) !important;
}


.btn-secondary,
.secondary,
.final100-secondary,
.final100-small {
    background: #141414 !important;
    border-color: #383838 !important;
    color: #ffffff !important;
}


.btn-secondary:hover,
.secondary:hover,
.final100-secondary:hover,
.final100-small:hover {
    background: #202020 !important;
}


.btn-danger,
.danger,
.final100-danger {
    background: var(--slp-red-bg) !important;
    border-color: var(--slp-red-border) !important;
    color: var(--slp-red-light) !important;
}


/* =========================================================
   GRÜN
   Einnahmen / Bezahlt / Erledigt / Positiv
   ========================================================= */

.slp-positive,
.slp-positive td,
.slp-positive-cell {
    color: var(--slp-green-light) !important;
}


tbody tr.slp-positive {
    background: var(--slp-green-bg) !important;
}


tbody tr.slp-positive:hover {
    background: rgba(34, 197, 94, 0.18) !important;
}


tbody tr.slp-positive td {
    border-color: rgba(34, 197, 94, 0.14) !important;
}


.slp-positive-badge,
.badge-paid,
.badge-done,
.status-paid,
.status-done,
.tasks-badge-done,
.final100-green {
    background: var(--slp-green-bg) !important;
    border: 1px solid var(--slp-green-border) !important;
    color: var(--slp-green-light) !important;
}


.reports-v40-positive,
.reports-v40-profit-positive {
    color: var(--slp-green-light) !important;
}


/* =========================================================
   ROT
   Ausgaben / Überfällig / Verlust / Kritisch
   ========================================================= */

.slp-negative,
.slp-negative td,
.slp-negative-cell {
    color: var(--slp-red-light) !important;
}


tbody tr.slp-negative {
    background: var(--slp-red-bg) !important;
}


tbody tr.slp-negative:hover {
    background: rgba(239, 68, 68, 0.18) !important;
}


tbody tr.slp-negative td {
    border-color: rgba(239, 68, 68, 0.14) !important;
}


.slp-negative-badge,
.tasks-overdue,
.tasks-priority-critical,
.final100-red {
    background: var(--slp-red-bg) !important;
    border-color: var(--slp-red-border) !important;
    color: var(--slp-red-light) !important;
}


.reports-v40-negative,
.reports-v40-profit-negative {
    color: var(--slp-red-light) !important;
}


/* =========================================================
   ÜBERFÄLLIG BESONDERS DEUTLICH
   ========================================================= */

.slp-overdue {
    color: #ff5555 !important;
    font-weight: 800 !important;
}


tbody tr.slp-overdue {
    background: rgba(239, 68, 68, 0.16) !important;
    box-shadow: inset 4px 0 0 var(--slp-red) !important;
}


.slp-overdue-badge {
    background: var(--slp-red) !important;
    color: #ffffff !important;
    border-radius: 999px !important;
    padding: 4px 9px !important;
    font-weight: 800 !important;
}


/* =========================================================
   WARNUNG / HOCH
   ========================================================= */

.tasks-priority-high,
.final100-orange {
    background: var(--slp-orange-bg) !important;
    color: #fbbf24 !important;
}


/* =========================================================
   AUFGABEN & FRISTEN
   ========================================================= */

#page-tasks.tasks-final-visible {
    background: var(--slp-black) !important;
}


.tasks-page-header,
.tasks-summary,
.tasks-toolbar,
.tasks-table-wrap {
    color: var(--slp-text) !important;
}


.tasks-badge-open {
    background: rgba(239, 68, 68, 0.12) !important;
    color: #f87171 !important;
}


.tasks-badge-done {
    background: rgba(34, 197, 94, 0.12) !important;
    color: #4ade80 !important;
}


/* =========================================================
   AUSWERTUNGEN
   ========================================================= */

.reports-v40 {
    color: var(--slp-text) !important;
}


.reports-v40-bar {
    background: #202020 !important;
}


.reports-v40-bar-fill {
    background: #ef4444 !important;
}


.reports-v40-category-name,
.reports-v40-category-value {
    color: #ffffff !important;
}


/* =========================================================
   LEERE FLÄCHEN
   ========================================================= */

.empty-state,
.final100-empty,
.reports-v40-empty,
.tasks-empty {
    background: transparent !important;
    color: #8b8b8b !important;
}


/* =========================================================
   SCROLLBAR
   ========================================================= */

::-webkit-scrollbar {
    width: 11px;
    height: 11px;
}


::-webkit-scrollbar-track {
    background: #050505;
}


::-webkit-scrollbar-thumb {
    background: #303030;
    border-radius: 999px;
}


::-webkit-scrollbar-thumb:hover {
    background: #454545;
}


/* =========================================================
   LINKS
   ========================================================= */

a {
    color: #60a5fa;
}


/* =========================================================
   SPEZIELLE BEREICHE
   ========================================================= */

#final100-offers,
#final100-reminders,
#final100-receipts,
#final100-backup {
    background: #000000 !important;
}


/* =========================================================
   VERHINDERT WEISSE RESTFLÄCHEN
   ========================================================= */

div,
section,
article {
    border-color: var(--slp-border-soft);
}


body > div:not(.sidebar):not(.modal):not(.final100-modal) {
    background-color: transparent;
}
