

/* ===============================
   GLOBAL THEME (Invoice App)
   =============================== */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --bs-primary: #F6EECC;
    --bs-secondary: #666565;
    --bs-accent: #F6EECC;
    --bs-shadow: rgba(43, 62, 85, 0.5);
}

body {
    font-family: 'Oswald', sans-serif;
    letter-spacing: 0.5px;
    background: linear-gradient(135deg, #2B3E55 0%, #1a2438 100%);
}

/* Main container */
.theme-container {
    background: #F6EECC;
    box-shadow: 0 30px 80px rgba(43, 62, 85, 0.5);
    border-left: 8px solid #2B3E55;
    position: relative;
}

/* Top accent line */
.theme-container::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 100px;
    height: 4px;
    background: #E74C3C;
}

/* Headings */
.theme-title {
    color: #2B3E55;
    letter-spacing: 2px;
}

/* Cards */
.invoice-card {
    background: #ffffff;
    border-left: 4px solid #E74C3C;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

/* Section headers */
.section-title {
    color: #2B3E55;
    border-bottom: 3px solid #E74C3C;
    letter-spacing: 1px;
}

/* Info blocks */
.info-item {
    background: #F9F6F0;
    border-right: 3px solid #E74C3C;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.info-label {
    color: #2B3E55;
    font-weight: 700;
    font-size: 0.8rem;
    text-transform: uppercase;
}

.info-value {
    font-weight: 600;
}

.info-value.null {
    color: #999;
    font-style: italic;
}

/* Raw text */
.raw-text {
    background: #2B3E55;
    color: #F6EECC;
    font-family: 'Courier New', monospace;
    font-size: 0.85rem;
    border-left: 4px solid #E74C3C;
}

/* Buttons */
.btn-theme-primary {
    background: #2B3E55;
    color: #F6EECC;
    border-left: 4px solid #E74C3C;
}

.btn-theme-primary:hover {
    background: #1a2438;
    color: #F6EECC;
}

.btn-theme-secondary {
    background: #95a5a6;
    color: #F6EECC;
    border-left: 4px solid #7f8c8d;
}

.btn-theme-secondary:hover {
    background: #7f8c8d;
}

/* Success badge */
.success-badge {
    background: #27ae60;
    color: #F6EECC;
    border-left: 4px solid #1e8449;
    font-weight: 700;
    letter-spacing: 1px;
}

.table-container {
    padding: 10px;
    overflow-x: solid;
}

/* 🔧 FIX: Table background + DataTables UI */
table.dataTable,
table.dataTable thead,
table.dataTable tbody,
table.dataTable tr,
table.dataTable th,
table.dataTable td {
    background-color: #F6EECC !important;
}

.dataTables_wrapper .dataTables_paginate .page-link {
    background-color: #eedd95;
    color: #2B3E55;
    border: 1px solid #2B3E55;
}

.dataTables_wrapper .dataTables_paginate .page-item.active .page-link {
    background-color: #2B3E55;
    color: #F6EECC;
    border-color: #2B3E55;
}

.dataTables_wrapper .dataTables_filter input,
.dataTables_wrapper .dataTables_length select {
    background-color: #F6EECC;
    color: #2B3E55;
    border: 1px solid #2B3E55;
}