
:root{
--navy:#0A192F;
--navy-light:#112240;
--sidebar:#1B365D;
--slate:#CBD5E1;
--silver:#C0C0C0;
--bg:#F4F6F9;
--white:#FFFFFF;
--text:#2C2C2C;
}

/* ================= GLOBAL ================= START */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:"Poppins",sans-serif;
}

:root{
    --elrovis-black:#0F172A;
    --elrovis-charcoal:#1E293B;
    --elrovis-slate:#CBD5E1;
    --elrovis-slate-dark:#334155;
    --elrovis-cream:#faf7ef;
}

body{
    background:linear-gradient(135deg,#f7f4eb,#e8dfc7);
    min-height:100vh;
    color:#333;
    font-size:14px;
}
/* ================= GLOBAL ================= END */


/* ================= LAYOUT ================= START */
.container{
    display:flex;
    min-height:100vh;
}
/* ================= LAYOUT ================= END */


/* ================= AUTH ================= START */
.auth-container{
    display:flex;
    justify-content:center;
    align-items:center;
    min-height:100vh;
}

.form-box{
    width:100%;
    max-width:450px;
    padding:30px;
    border-radius:10px;
    background:#fff;
    box-shadow:0 0 10px rgba(0,0,0,0.1);
    display:none;
}

.form-box.active{
    display:block;
}

.alert{
    padding:12px 15px;
    border-radius:8px;
    font-weight:700;
}

.alert-success{
    background:#d4f8e8;
    color:#0f6b3c;
    border:1px solid #8fd9b6;
}

.alert-error{
    background:#ffe0e0;
    color:#8a1111;
    border:1px solid #e7a0a0;
    margin-bottom:12px;
}
/* ================= AUTH ================= END */


/* ================= FORM ELEMENTS ================= START */
h2{
    font-size:28px;
    text-align:center;
    margin-bottom:20px;

}

input,select,textarea{
    width:100%;
    padding:12px;
    background:#eae7e7;
    border:1px solid #CBD5E1;
    outline:none;
    color:#333;
    font-size:16px;
    border-radius:6px;
    margin-bottom:15px;
}

button{
    width:100%;
    padding:12px;
    background:var(--elrovis-black);
    border:none;
    color:var(--elrovis-slate);
    border-radius:6px;
    cursor:pointer;
}

button:hover{
    background:var(--elrovis-slate-dark);
}

p{text-align:center;}

p a{
    color:var(--elrovis-slate-dark);
    text-decoration:none;
}

p a:hover{
    text-decoration:underline;
}
/* ================= FORM ELEMENTS ================= END */


/* ================= SIDEBAR ================= START */
.sidebar{
    width:220px;
    height:100vh;
    position:fixed;
    left:0;
    top:0;
    background:var(--elrovis-black);
    color:var(--elrovis-slate);
    padding:20px;
    display:flex;
    flex-direction:column;
    z-index:1000;
}

.logo{
    margin-bottom:20px;
    display:flex;
    align-items:center;
    gap:8px;
}

.brand-mark,
.invoice-brand-mark{
    width:34px;
    height:34px;
    border:2px solid var(--elrovis-slate);
    color:var(--elrovis-slate);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:12px;
    font-weight:700;
    border-radius:50%;
}

.menu{list-style:none;}

.menu li a{
    display:flex;
    align-items:center;
    gap:10px;
    padding:8px 12px;
    margin:2px 0;
    color:var(--elrovis-slate);
    text-decoration:none;
    border-radius:5px;
}

.menu li.active a,
.menu li a:hover{
    background:var(--elrovis-slate-dark);
}

.logout{margin-top:auto;}

.logout a{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    background:var(--elrovis-slate);
    padding:8px;
    text-align:center;
    border-radius:5px;
    color:var(--elrovis-black);
    font-weight:600;
}
/* ================= SIDEBAR ================= END */


/* ================= RIGHT SIDEBAR ================= START */
.rightbar{
    width:230px;
    position:fixed;
    right:0;
    top:0;
    height:100vh;

    background:var(--elrovis-cream);
    border-left:1px solid #e0e0e0;
    padding:15px;
}

.panel{
    background:#fff;
    padding:15px;
    margin-bottom:15px;
    border-radius:10px;
}
/* ================= RIGHT SIDEBAR ================= END */


/* ================= NAVBAR ================= START */
.navbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    background:#fff;
    padding:10px;
    border-radius:10px;
    margin-bottom:20px;
    box-shadow:0 0 10px rgba(0,0,0,0.05);
    position:relative;
    z-index:2000;
}

.search-box{
    padding:8px;
    border:1px solid #ccc;
    border-radius:6px;
    background:#eae7e7;
    width:80%;
}

.search-box input{
    width:300px;
    padding:10px 15px;
    border-radius:20px;
    border:1px solid #ccc;
}
/* ================= NAVBAR ================= END */


/* ================= PROFILE ================= START */
.profile{
    position:relative;
    cursor:pointer;
}

.avatar{
    width:40px;
    height:40px;
    background:var(--elrovis-slate);
    color:var(--elrovis-black);
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    font-weight:700;
}

.dropdown{
    position:absolute;
    top:50px;
    right:0;
    background:#fff;
    width:210px;
    border-radius:8px;
    box-shadow:0 0 10px rgba(0,0,0,0.1);
    display:none;
}

.profile-summary{
    padding:12px;
    border-bottom:1px solid #eee;
}

.profile-summary strong,
.profile-summary small{
    display:block;
}

.profile-summary small{
    color:#777;
    margin-top:3px;
    text-transform:capitalize;
}

.dropdown a{
    display:flex;
    align-items:center;
    gap:8px;
    padding:10px;
    color:#333;
    text-decoration:none;
}

.dropdown a:hover{
    background:#f0f0f0;
}

.profile.active .dropdown{
    display:block;
}
/* ================= PROFILE ================= END */


/* ================= DASHBOARD ================= START */
.dashboard-layout .main{
    margin-top: 20px;
    margin-left:220px;
    margin-right:250px;
    padding:20px;

    min-height:100vh;
    box-sizing:border-box;

    display:flex;
    flex-direction:column;
    gap:20px;
}
.form-layout .container{
    display:flex;
}

.sidebar{
    width:220px;
    position:fixed;
    left:0;
}

.form-layout .form-page{
    margin-left:220px;
    width:calc(100% - 220px);
    min-height:100vh;

    display:flex;
    justify-content:center;
    align-items:center;
}
.cards{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
    margin-bottom:20px;
}

.card{
    background:#fff;
    padding:20px;
    border-radius:10px;
    text-align:center;
    box-shadow:0 0 10px rgba(0,0,0,0.1);    
    font-size: 14px;
    border-top:4px solid var(--elrovis-slate);

}

.card{
    font-size:14px;
}

.card span{
    font-size:18px;
    font-weight:600;
}

.card-icon{
    width:28px;
    height:28px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:var(--elrovis-black);
    color:var(--elrovis-slate);
    border-radius:50%;
    margin-right:6px;
    font-size:12px;
    font-weight:700;
}

.charts{
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:20px;
}

.chart-box{
    background:#fff;
    padding:20px;
    border-radius:10px;
    border-top:4px solid var(--elrovis-slate);
}
/* ================= DASHBOARD ================= END */


/* ================= ADD CUSTOMER ================= START */
.dashboard-layout .main{
    margin-left:220px;
    margin-right:250px;
    padding:20px;
    width:calc(100% - 470px);
}

.form-layout .form-box{
    display:block;
}
/* ================= ADD CUSTOMER ================= END */

.customer-container{
    padding:20px;
}

.customer-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:20px;
}
.customer-table{
    width:100%;
    border-collapse:collapse;
    background:#fff;
    border-radius:10px;
    overflow:hidden;
}

.customer-table th{
    text-align:left;
    padding:12px;
    background:#f4f6f9;
    font-weight:600;
}

.customer-table td{
    padding:12px;
    border-bottom:1px solid #eee;
}
.status{
    padding:5px 10px;
    border-radius:20px;
    font-size:12px;
}

.status.active{
    background:#d4f8e8;
    color:#1a7f4b;
}

.status.inactive{
    background:#f0f0f0;
    color:#777;
}

.status.blocked{
    background:#ffe0e0;
    color:#b30000;
}
.btn{
    padding:8px 12px;
    border:none;
    border-radius:6px;
    cursor:pointer;
}

.btn-primary{
    background:var(--elrovis-black);
    color:var(--elrovis-slate);
}

.btn-danger{
    background:var(--elrovis-slate);
    color:var(--elrovis-black);
    font-weight:600;
}

/* ================= CUSTOMER DETAILS ================= START
/* ================= representing codes in customer folder ================= END */
/* ================= CUSTOMER MODULE ================= START */

.customer-container{
      padding:20px;
    max-width:1200px !important;
    margin:0 auto;
}

/* Headings */
.customer-container h2{
    margin-bottom:20px;
    font-size:24px;
   
}

/* ================= DETAIL VIEW ================= */
.detail-row{
    display:flex;
    gap:20px;
    background:#fff;
    padding:12px 15px;
    border-radius:8px;
    margin-bottom:10px;
    box-shadow:0 0 5px rgba(0,0,0,0.05);
}

.label{
    width:140px;
    font-weight:600;
    color:#555;
}

.value{
    flex:1;
    color:#333;
    word-break:break-word;
}

/* ================= TABLE ================= */
.customer-table{
    width:100%;
    border-collapse:collapse;
    background:#fff;
    border-radius:10px;
    overflow:hidden;
}

.customer-table th{
    text-align:left;
    padding:12px;
    background:#f4f6f9;
    font-weight:600;
}

.customer-table td{
    padding:12px;
    border-bottom:1px solid #eee;
}

/* ================= STATUS BADGES ================= */
.status{
    padding:5px 10px;
    border-radius:20px;
    font-size:12px;
    text-transform:capitalize;
}

.status.active{ background:#d4f8e8; color:#1a7f4b; }
.status.inactive{ background:#f0f0f0; color:#777; }
.status.blocked{ background:#ffe0e0; color:#b30000; }

/* ================= BUTTONS ================= */
.btn{
    padding:8px 12px;
    border:none;
    background:var(--elrovis-black);
    border-radius:6px;
    cursor:pointer;
    text-decoration:none;
}

.btn-primary{
    background:var(--elrovis-black);
    color:var(--elrovis-slate);
}

.btn-danger{
    background:var(--elrovis-slate);
    color:var(--elrovis-black);
    font-weight:600;
}

/* ================= FORM INPUTS ================= */
input,
select,
textarea{
    width:100%;
    padding:12px;
    background:#eae7e7;
    border:1px solid #ccc;
    outline:none;
    font-size:16px;
    border-radius:6px;
    margin-bottom:15px;
}

/* TEXTAREA FIX (IMPORTANT) */
textarea{
    min-height:140px;
    resize:vertical;
    font-family:inherit;
    background:#eae7e7;
}

/* ================= CUSTOMER LIST HEADER ================= */
.customer-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:20px;
}

/* ================= CUSTOMER MODULE ================= END */

/* ================= chats and notifications ================= START */


.chart-box canvas {
    width: 100% !important;
    height: 100% !important;
}

.page-title{
    text-align:left;
    margin:0;
    color:var(--elrovis-black);
}

.admin-grid{
    display:grid;
    grid-template-columns:1fr 2fr;
    gap:20px;
}

.admin-panel{
    background:#fff;
    border-top:4px solid var(--elrovis-slate);
    border-radius:10px;
    padding:20px;
    box-shadow:0 0 10px rgba(0,0,0,0.08);
}

.admin-panel h3{
    margin-bottom:15px;
    color:var(--elrovis-black);
}

.admin-actions{
    display:grid;
    gap:10px;
}

.status.admin{
    background:var(--elrovis-slate);
    color:var(--elrovis-black);
}

.status.user{
    background:#f0f0f0;
    color:#555;
}

.status.customers,
.status.invoices,
.status.stock{
    background:var(--elrovis-slate);
    color:var(--elrovis-black);
}

.status.created,
.status.updated,
.status.item_added,
.status.used{
    background:#f7f0d8;
    color:var(--elrovis-black);
}

.status.deleted{
    background:var(--elrovis-black);
    color:var(--elrovis-slate);
}

.icon{
    width:24px;
    height:24px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:rgba(51,65,85,0.16);
    color:var(--elrovis-slate);
    font-size:12px;
    font-weight:700;
    flex:0 0 24px;
}

.brand-icon{
    background:var(--elrovis-slate);
    color:var(--elrovis-black);
    font-size:10px;
}

.muted-text{
    color:#666;
    text-align:left;
    margin:10px 0 20px;
}

.settings-list{
    display:grid;
    gap:14px;
}

.settings-list > div{
    display:flex;
    gap:20px;
    background:var(--elrovis-cream);
    padding:14px;
    border-radius:8px;
}

.inline-form{
    display:flex;
    gap:8px;
    align-items:center;
}

.inline-form select,
.inline-form button{
    width:auto;
    margin-bottom:0;
}

.invoice-brand-header{
    display:flex;
    align-items:center;
    gap:14px;
    background:var(--elrovis-black);
    color:var(--elrovis-slate);
    padding:18px;
    border-radius:10px;
    margin-bottom:20px;
}

.invoice-brand-header h2{
    color:var(--elrovis-slate);
    text-align:left;
    margin:0;
}

.invoice-brand-header p{
    color:var(--elrovis-slate);
    text-align:left;
    margin-top:4px;
}

.invoice-address-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    margin:20px 0;
}

.invoice-address-box{
    background:#fff;
    border-top:4px solid var(--elrovis-slate);
    border-radius:8px;
    padding:16px;
    box-shadow:0 0 8px rgba(0,0,0,0.06);
}

.invoice-address-box p{
    text-align:left;
    margin-top:8px;
    line-height:1.5;
}

@media (max-width: 900px){
    .admin-grid{
        grid-template-columns:1fr;
    }

    .invoice-address-grid{
        grid-template-columns:1fr;
    }
}

.charts {
    display: flex;
    gap: 20px;
}

.chart-box {
    flex: 1;
    height: 320px;
    position: relative;
}

.chart-box canvas {
    width: 100% !important;
    height: 100% !important;
}

:root{
    --elrovis-black:#090806;
    --elrovis-charcoal:#17120c;
    --elrovis-slate:#CBD5E1;
    --elrovis-slate-dark:#334155;
    --elrovis-silver-deep:#334155;
    --elrovis-cream:#f8f1df;
    --elrovis-border:#d2a548;
}

body{
    background:linear-gradient(135deg,#110d08,#2a1b0b 45%,#f4ecd8 45%,#efe2c0);
}

.sidebar{
    background:linear-gradient(180deg,#080705,#17110b 58%,#2b1a08);
    border-right:1px solid rgba(184,134,11,0.35);
}

.logo,.brand-mark,.icon,.brand-icon,.card-icon{
    color:var(--elrovis-slate) !important;
}

.menu a,.logout a{
    color:#f4ead3;
}

.menu a:hover,.logout a:hover{
    background:linear-gradient(90deg,rgba(184,134,11,0.25),rgba(111,67,16,0.18));
    color:#fff;
    border-left:4px solid var(--elrovis-slate);
}

.main{
    background:rgba(255,252,244,0.94);
}

.card,.admin-panel,.chart-box,.panel,.customer-container,.product-container,.invoice-container,.form-box{
    border:1px solid rgba(184,134,11,0.32);
    box-shadow:0 18px 40px rgba(23,18,12,0.10);
}

.card{
    background:linear-gradient(145deg,#fffaf0,#f4e7c9);
}

.card span,.page-title,.admin-panel h3,h2{
    color:#3a2609;
}

button,.btn-primary{
    background:linear-gradient(135deg,#090806,#2b1a08) !important;
    color:#d8aa2e !important;
    border:1px solid rgba(184,134,11,0.55) !important;
}

button:hover,.btn-primary:hover{
    background:linear-gradient(135deg,#2b1a08,#1E293B) !important;
    color:#fff4d7 !important;
}

.btn-danger{
    background:linear-gradient(135deg,#5a140f,#8a1f15) !important;
    color:#fff2e5 !important;
}

input,select,textarea{
    background:#fffaf1;
    border:1px solid rgba(184,134,11,0.48);
}

input:focus,select:focus,textarea:focus{
    border-color:#1E293B;
    box-shadow:0 0 0 3px rgba(184,134,11,0.16);
}

.customer-table th{
    background:linear-gradient(135deg,#090806,#2b1a08) !important;
    color:#d8aa2e !important;
}

.customer-table tr:hover td{
    background:#fff6df;
}

.status.active,.status.paid,.status.created,.status.updated{
    background:#e7f7e9;
    color:#14632b;
}

.status.pending,.status.used{
    background:#fff0c4;
    color:#7a4d00;
}

.status.inactive,.status.cancelled,.status.blocked,.status.deleted{
    background:#ffe1da;
    color:#8a1f15;
}

.report-filter,.settings-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
    gap:16px;
    align-items:end;
}

.filter-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.filter-actions button,.filter-actions .btn{
    width:auto;
    min-width:120px;
    text-align:center;
}

.settings-form button{
    margin-top:18px;
}

.theme-preview{
    display:flex;
    align-items:center;
    gap:10px;
    padding:14px;
    border-radius:12px;
    background:#120d08;
    color:#d8aa2e;
    border:1px solid rgba(184,134,11,0.55);
}

.theme-preview span{
    width:42px;
    height:42px;
    display:inline-block;
    border-radius:50%;
    background:linear-gradient(135deg,#334155,#334155);
}

.section-spaced{
    margin-top:24px;
}

.inline-form{
    display:inline-flex;
    gap:10px;
    align-items:center;
}

.inline-form button{
    width:auto;
}

@media print{
    .sidebar,.navbar,.filter-actions,.btn,button{
        display:none !important;
    }
    .main{
        width:100%;
        background:#fff;
    }
    body{
        background:#fff;
    }
}

/* ================= ELROVIS VISUAL REFRESH ================= START */
:root{
    --elrovis-blue:#1d4ed8;
    --elrovis-red:#b91c1c;
    --elrovis-green:#15803d;
    --elrovis-silver-deep:#CBD5E1;
    --elrovis-slate-dark:#1E293B;
}

.dashboard-layout .main{
    margin-left:220px;
    margin-right:250px;
    width:calc(100% - 470px);
}

.card{
    background:linear-gradient(145deg,#ffffff,#faf7ef);
    border-top:4px solid var(--elrovis-silver-deep);
    color:#1f2937;
}

.card:nth-child(1) span:last-child,
.card:nth-child(2) span:last-child{
    color:var(--elrovis-green);
    font-weight:700;
}

.card:nth-child(3) span:last-child,
.card:nth-child(4) span:last-child{
    color:var(--elrovis-red);
    font-weight:700;
}

.chart-box{
    border-top:4px solid var(--elrovis-silver-deep);
    box-shadow:0 8px 24px rgba(17,17,17,0.08);
    min-height:320px;
}

.rightbar{
    width:250px;
    position:fixed;
    right:0;
    top:0;
    height:100vh;
    overflow-y:auto;
    background:linear-gradient(180deg,#0F172A,#1E293B);
    border-left:1px solid rgba(184,137,47,0.45);
    padding:18px;
    color:#f9fafb;
}

.rightbar .panel{
    background:#171717;
    border:1px solid rgba(184,137,47,0.45);
    border-radius:14px;
    padding:15px;
    margin-bottom:15px;
    box-shadow:0 8px 22px rgba(0,0,0,0.22);
}

.rightbar .panel h3{
    color:var(--elrovis-silver-deep);
    margin-bottom:12px;
    font-size:16px;
}

.rightbar .panel p{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    text-align:left;
    color:#e5e7eb;
    margin:9px 0;
    font-size:13px;
}

.rightbar .panel span{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.rightbar .panel strong{
    color:var(--elrovis-silver-deep);
    white-space:nowrap;
}

.metric-green{color:var(--elrovis-green) !important;}
.metric-red{color:var(--elrovis-red) !important;}
.metric-blue{color:var(--elrovis-blue) !important;}

.btn-danger{
    background:var(--elrovis-red);
    color:#fff;
}

@media (max-width:1200px){
    .dashboard-layout .main,
    .products-page .main{
        margin-right:0;
        width:calc(100% - 220px);
    }

    .rightbar{
        display:none;
    }
}
/* ================= ELROVIS VISUAL REFRESH ================= END */
.card-sales {
    background: linear-gradient(135deg, #0f9d58, #34c759);
    color: white;
}

.card-stock {
    background: linear-gradient(135deg, #b71c1c, #ef5350);
    color: white;
}

.card-products {
    background: linear-gradient(135deg, #1565c0, #42a5f5);
    color: white;
}

.card-revenue {
    background: linear-gradient(135deg, #8c6b00, #CBD5E1);
    color: white;
}

table thead {
    background: #0F172A827;
    color: white;
}

table tbody tr:hover {
    background: #f3f4f6;
}

/* Dashboard Search Width */
.dashboard-search,
.search-bar,
.search-form input[type="text"]{
    max-width: 260px !important;
    width: 260px !important;
    border-radius: 10px;
}

/* Dashboard Cards Text Colors */
.card,
.dashboard-card,
.stat-card{
    color: #ffffff !important;
}

.card h1,
.card h2,
.card h3,
.card h4,
.card p,
.dashboard-card h1,
.dashboard-card h2,
.dashboard-card h3,
.dashboard-card p,
.stat-card h1,
.stat-card h2,
.stat-card h3,
.stat-card p{
    color: #ffffff !important;
}

/* Premium Card Backgrounds */
.card-sales{
    background: linear-gradient(135deg,#15803d,#34d399) !important;
}

.card-stock{
    background: linear-gradient(135deg,#b91c1c,#ef4444) !important;
}

.card-products{
    background: linear-gradient(135deg,#1d4ed8,#60a5fa) !important;
}

.card-revenue{
    background: linear-gradient(135deg,#8c6b00,#CBD5E1) !important;
}

/* Right Sidebar */
.right-sidebar,
.right-panel,
.activity-panel{
    background: #0F172A827 !important;
    color: #f3f4f6 !important;
    border-left: 3px solid #CBD5E1;
}

.right-sidebar h1,
.right-sidebar h2,
.right-sidebar h3,
.right-sidebar h4,
.right-sidebar p,
.right-sidebar span,
.right-panel h1,
.right-panel h2,
.right-panel h3,
.right-panel p,
.activity-panel h1,
.activity-panel h2,
.activity-panel h3,
.activity-panel p{
    color: #f9fafb !important;
}

/* Sidebar Accent */
.right-sidebar .activity-item{
    border-bottom: 1px solid rgba(255,255,255,0.08);
    padding: 10px 0;
}

/* Dashboard Titles */
.dashboard-title,
.section-title{
    color: #1d4ed8 !important;
    font-weight: 700;
}



/* =========================================================
   EXECUTIVE NO-SIDEBAR DASHBOARD STRUCTURE
   slate / Silver / Black layout rebuild
========================================================= */
body.executive-dashboard{
    min-height:100vh;
    margin:0;
    font-family:Inter, Segoe UI, Arial, sans-serif;
    background:
        radial-gradient(circle at 18% 12%, rgba(51,65,85,.12), transparent 28%),
        radial-gradient(circle at 84% 10%, rgba(192,192,192,.08), transparent 25%),
        linear-gradient(135deg,#030303 0%,#0c0c0c 48%,#171717 100%) !important;
    color:#f4f4f4 !important;
}

.executive-shell{
    width:min(1480px, calc(100% - 40px));
    margin:0 auto;
    padding:22px 0 44px;
}

.executive-header{
    position:sticky;
    top:14px;
    z-index:20;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:14px 18px;
    border:1px solid rgba(51,65,85,.24);
    border-radius:24px;
    background:rgba(8,8,8,.84);
    backdrop-filter:blur(16px);
    box-shadow:0 18px 55px rgba(0,0,0,.55);
}

.executive-brand,
.executive-user,
.executive-nav,
.hero-actions,
.section-head,
.transaction-row,
.activity-row{
    display:flex;
    align-items:center;
}

.executive-brand{
    gap:12px;
    min-width:230px;
}

.executive-logo{
    width:48px;
    height:48px;
    border-radius:16px;
    display:grid;
    place-items:center;
    color:#f7d86f;
    font-weight:800;
    background:linear-gradient(145deg,#0a0a0a,#2a2a2a);
    border:1px solid rgba(51,65,85,.7);
    box-shadow:0 0 22px rgba(51,65,85,.18);
}

.executive-brand h1{
    margin:0;
    color:#94A3B8 !important;
    font-size:20px;
    letter-spacing:-.02em;
}

.executive-brand span{
    display:block;
    color:#aaa;
    font-size:12px;
    margin-top:2px;
}

.executive-nav{
    justify-content:center;
    gap:8px;
    flex:1;
    flex-wrap:wrap;
}

.executive-nav a,
.logout-link,
.quick-btn,
.primary-action,
.secondary-action,
.section-head a{
    text-decoration:none;
}

.executive-nav a{
    padding:10px 14px;
    border-radius:999px;
    color:#c8c8c8 !important;
    font-size:14px;
    border:1px solid transparent;
}

.executive-nav a:hover{
    color:#94A3B8 !important;
    background:rgba(51,65,85,.10);
    border-color:rgba(51,65,85,.28);
}

.executive-user{
    gap:10px;
    justify-content:flex-end;
    min-width:230px;
}

.quick-btn,
.primary-action{
    color:#0F172A !important;
    font-weight:800;
    background:linear-gradient(135deg,#f2d36b,#b98a18) !important;
    border:1px solid rgba(255,224,126,.55) !important;
    box-shadow:0 12px 30px rgba(51,65,85,.20) !important;
}

.quick-btn{
    padding:10px 14px;
    border-radius:999px;
    font-size:13px;
}

.executive-avatar{
    width:42px;
    height:42px;
    border-radius:50%;
    display:grid;
    place-items:center;
    color:#f1f1f1;
    background:linear-gradient(145deg,#161616,#333);
    border:1px solid rgba(192,192,192,.45);
    font-weight:800;
}

.logout-link{
    color:#bdbdbd !important;
    font-size:13px;
}

.executive-hero{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);
    gap:22px;
    margin-top:24px;
}

.hero-copy,
.hero-panel,
.kpi-card,
.analytics-card{
    background:
        radial-gradient(circle at top right,rgba(51,65,85,.10),transparent 31%),
        linear-gradient(145deg,#0b0b0b 0%,#141414 55%,#1c1c1c 100%) !important;
    border:1px solid rgba(51,65,85,.24) !important;
    border-radius:28px;
    box-shadow:0 22px 60px rgba(0,0,0,.60) !important;
}

.hero-copy{
    padding:38px;
    min-height:250px;
}

.eyebrow{
    text-transform:uppercase;
    letter-spacing:.16em;
    color:#c0c0c0;
    font-weight:800;
    font-size:11px;
}

.hero-copy h2{
    max-width:760px;
    margin:14px 0 12px;
    color:#f7d86f !important;
    font-size:clamp(34px,5vw,62px);
    line-height:.98;
    letter-spacing:-.055em;
}

.hero-copy p{
    max-width:720px;
    margin:0;
    color:#b9b9b9;
    font-size:16px;
    line-height:1.7;
}

.hero-actions{
    gap:12px;
    margin-top:26px;
}

.primary-action,
.secondary-action{
    padding:13px 18px;
    border-radius:16px;
}

.secondary-action{
    color:#e7e7e7 !important;
    background:linear-gradient(145deg,#242424,#101010) !important;
    border:1px solid rgba(192,192,192,.35) !important;
}

.hero-panel{
    padding:28px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    min-height:250px;
}

.hero-panel span{
    color:#c0c0c0;
    font-weight:700;
}

.hero-panel strong{
    color:#f7d86f;
    font-size:clamp(34px,4vw,54px);
    line-height:1.1;
    margin:14px 0;
}

.hero-panel small{
    color:#b2b2b2;
    line-height:1.5;
}

.executive-kpis{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
    margin-top:18px;
}

.kpi-card{
    padding:22px;
    min-height:132px;
}

.kpi-card span{
    color:#bdbdbd;
    font-size:13px;
    font-weight:800;
}

.kpi-card strong{
    display:block;
    margin:12px 0 6px;
    color:#94A3B8;
    font-size:clamp(25px,2.4vw,36px);
    letter-spacing:-.04em;
}

.kpi-card small{
    color:#9f9f9f;
}

.executive-grid{
    display:grid;
    grid-template-columns:1.35fr .65fr;
    gap:18px;
    margin-top:18px;
}

.analytics-card{
    padding:22px;
    min-height:320px;
}

.large-chart{
    min-height:430px;
}

.analytics-card.wide{
    grid-column:span 1;
}

.section-head{
    justify-content:space-between;
    gap:14px;
    margin-bottom:18px;
}

.section-head h3{
    margin:5px 0 0;
    color:#f1f1f1 !important;
    font-size:20px;
    letter-spacing:-.03em;
}

.pill,
.section-head a{
    color:#94A3B8 !important;
    background:rgba(51,65,85,.10);
    border:1px solid rgba(51,65,85,.30);
    border-radius:999px;
    padding:8px 11px;
    font-size:12px;
    font-weight:800;
}

.chart-wrap{
    height:340px;
    position:relative;
}

.chart-wrap.compact{
    height:250px;
}

.activity-card{
    min-height:320px;
}

.activity-list,
.transaction-list{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.activity-row,
.transaction-row{
    justify-content:space-between;
    gap:12px;
    padding:13px 0;
    border-bottom:1px solid rgba(192,192,192,.10);
}

.activity-row strong,
.transaction-row strong{
    color:#f1f1f1;
}

.activity-row span,
.transaction-row span{
    display:block;
    color:#a8a8a8;
    font-size:13px;
    margin-top:3px;
}

.activity-row small,
.transaction-row em{
    color:#94A3B8;
    font-style:normal;
    font-weight:800;
    white-space:nowrap;
}

.transaction-row{
    display:grid;
    grid-template-columns:70px minmax(0,1fr) 130px 90px;
}

.status-pill{
    text-align:center;
    color:#0F172A !important;
    background:linear-gradient(135deg,#94A3B8,#b98a18);
    border-radius:999px;
    padding:6px 8px;
    font-weight:800;
    text-transform:capitalize;
}

.empty-line{
    color:#aaa;
    margin:0;
}

body.executive-dashboard canvas{
    filter:drop-shadow(0 0 14px rgba(51,65,85,.14)) !important;
}

body.executive-dashboard .alert{
    margin-top:18px;
    border-radius:16px;
}

@media(max-width:1100px){
    .executive-header{
        position:relative;
        top:0;
        align-items:flex-start;
        flex-direction:column;
    }

    .executive-nav{
        justify-content:flex-start;
    }

    .executive-user{
        min-width:0;
    }

    .executive-hero,
    .executive-grid{
        grid-template-columns:1fr;
    }

    .executive-kpis{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:680px){
    .executive-shell{
        width:min(100% - 22px,1480px);
        padding-top:10px;
    }

    .hero-copy,
    .hero-panel,
    .kpi-card,
    .analytics-card{
        border-radius:22px;
    }

    .hero-copy{
        padding:24px;
    }

    .executive-kpis{
        grid-template-columns:1fr;
    }

    .transaction-row{
        grid-template-columns:1fr;
        align-items:flex-start;
    }
}




/* =====================================================
   FINAL EXECUTIVE POLISH REFINEMENT
===================================================== */

.executive-shell{
    width:min(1540px, calc(100% - 28px)) !important;
}

.executive-header{
    padding:16px 22px !important;
    border-radius:28px !important;
    background:rgba(4,4,4,.88) !important;
    backdrop-filter:blur(22px) !important;
    border:1px solid rgba(51,65,85,.18) !important;
}

.executive-nav a{
    font-weight:600 !important;
    letter-spacing:.01em !important;
}

.executive-nav a:hover{
    transform:translateY(-1px);
}

.hero-copy{
    padding:44px !important;
    min-height:280px !important;
}

.hero-copy h2{
    font-size:clamp(42px,5vw,70px) !important;
    max-width:820px !important;
}

.hero-copy p{
    max-width:760px !important;
    font-size:17px !important;
}

.hero-panel{
    min-height:280px !important;
    justify-content:center !important;
}

.hero-panel strong{
    font-size:58px !important;
}

.executive-kpis{
    gap:20px !important;
    margin-top:22px !important;
}

.kpi-card{
    min-height:150px !important;
    padding:26px !important;
    transition:.35s ease !important;
    overflow:hidden;
    position:relative;
}

.kpi-card::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at top right,
        rgba(51,65,85,.16),
        transparent 38%);
    pointer-events:none;
}

.kpi-card:hover{
    transform:translateY(-4px);
    border-color:rgba(51,65,85,.42) !important;
    box-shadow:0 28px 70px rgba(0,0,0,.72) !important;
}

.kpi-card strong{
    font-size:40px !important;
}

.executive-grid{
    margin-top:22px !important;
    gap:22px !important;
}

.analytics-card{
    border-radius:30px !important;
    padding:26px !important;
    transition:.35s ease !important;
    overflow:hidden;
    position:relative;
}

.analytics-card::before{
    content:"";
    position:absolute;
    top:-120px;
    right:-120px;
    width:260px;
    height:260px;
    background:radial-gradient(circle,
        rgba(51,65,85,.12),
        transparent 70%);
    pointer-events:none;
}

.analytics-card:hover{
    transform:translateY(-3px);
    border-color:rgba(51,65,85,.36) !important;
}

.large-chart{
    min-height:470px !important;
}

.chart-wrap{
    height:380px !important;
}

.chart-wrap.compact{
    height:290px !important;
}

.section-head{
    margin-bottom:24px !important;
}

.section-head h3{
    font-size:22px !important;
}

.activity-row,
.transaction-row{
    padding:15px 0 !important;
}

.activity-row strong,
.transaction-row strong{
    font-size:15px !important;
}

.activity-row span{
    font-size:13px !important;
}

.status-pill{
    font-size:11px !important;
    letter-spacing:.04em;
}

.quick-btn,
.primary-action,
.secondary-action{
    transition:.3s ease !important;
}

.quick-btn:hover,
.primary-action:hover,
.secondary-action:hover{
    transform:translateY(-2px);
}

.primary-action:hover{
    box-shadow:0 18px 40px rgba(51,65,85,.28) !important;
}

.executive-logo,
.executive-avatar{
    transition:.3s ease !important;
}

.executive-logo:hover,
.executive-avatar:hover{
    transform:scale(1.04);
}

body.executive-dashboard{
    background:
        radial-gradient(circle at top left,
        rgba(51,65,85,.11),
        transparent 24%),
        radial-gradient(circle at top right,
        rgba(192,192,192,.08),
        transparent 26%),
        linear-gradient(135deg,#020202 0%,#090909 42%,#151515 100%) !important;
}

.analytics-card,
.kpi-card,
.hero-copy,
.hero-panel{
    backdrop-filter:blur(10px);
}

canvas{
    opacity:.97;
}

@media(max-width:900px){

    .hero-copy{
        padding:28px !important;
    }

    .hero-copy h2{
        font-size:42px !important;
    }

    .chart-wrap{
        height:300px !important;
    }

}
.payment-summary-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:14px;
    margin-top:22px;
}
.payment-summary-grid div{
    background:rgba(255,255,255,0.06);
    border:1px solid rgba(51,65,85,0.25);
    border-radius:16px;
    padding:16px;
}
.payment-summary-grid strong{
    display:block;
    margin-top:8px;
    font-size:20px;
    color:#CBD5E1;
}
.payment-form{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:12px;
    align-items:end;
    margin-top:12px;
}
.payment-form input,.payment-form select{
    width:100%;
    padding:12px;
    border-radius:12px;
    border:1px solid rgba(51,65,85,0.35);
    background:#0F172A;
    color:#f5f5f5;
}

/* ================= ELROVIS LOGO IMAGE ================= */
.executive-logo-img{
    width:58px !important;
    height:58px !important;
    object-fit:contain;
    padding:3px;
    background:#000 !important;
    border-radius:18px;
}
.invoice-brand-logo{
    width:72px;
    height:72px;
    object-fit:contain;
    background:#000;
    border-radius:14px;
    box-shadow:0 0 20px rgba(51,65,85,.22);
}
.invoice-brand-header{
    gap:16px;
}
@media (max-width: 700px){
    .executive-logo-img{width:48px !important;height:48px !important;}
    .invoice-brand-logo{width:58px;height:58px;}
}


/* ===== ELROVIS ENTERPRISE NAVY / SILVER / WHITE THEME ===== */
:root{
    --elrovis-black:#0F172A;
    --elrovis-charcoal:#1E293B;
    --elrovis-silver:#CBD5E1;
    --elrovis-slate:#334155;
    --elrovis-cream:#F8FAFC;
    --primary-navy:#0F172A;
    --secondary-navy:#1E293B;
    --slate:#334155;
    --slate-soft:#64748B;
    --silver:#CBD5E1;
    --light-silver:#E2E8F0;
    --white:#FFFFFF;
    --page-bg:#F8FAFC;
    --text-main:#0F172A;
    --text-muted:#64748B;
    --border:#E2E8F0;
    --shadow:0 12px 30px rgba(15,23,42,.08);
}
body{
    background:var(--page-bg) !important;
    color:var(--text-main) !important;
}
.container,.main-content,.content,.page-content,.dashboard,.admin-container{
    background:var(--page-bg) !important;
}
.sidebar{
    background:linear-gradient(180deg,#0F172A,#111827 58%,#1E293B) !important;
    color:var(--light-silver) !important;
    box-shadow:8px 0 25px rgba(15,23,42,.12);
}
.logo,.sidebar h1,.sidebar h2,.sidebar h3,.sidebar .brand,.sidebar .brand-title{
    color:var(--white) !important;
}
.brand-mark,.invoice-brand-mark{
    border-color:var(--silver) !important;
    color:var(--white) !important;
    background:#334155 !important;
}
.menu li a,.sidebar a{
    color:var(--light-silver) !important;
}
.menu li.active a,.menu li a:hover,.sidebar a:hover,.sidebar .active{
    background:#334155 !important;
    color:var(--white) !important;
}
.logout a{
    background:var(--silver) !important;
    color:var(--primary-navy) !important;
}
.navbar,.topbar,.header,.page-header{
    background:var(--white) !important;
    border-bottom:1px solid var(--border) !important;
    color:var(--text-main) !important;
    box-shadow:0 8px 24px rgba(15,23,42,.06) !important;
}
.rightbar{
    background:var(--white) !important;
    border-left:1px solid var(--border) !important;
    color:var(--text-main) !important;
}
.card,.stat-card,.summary-card,.chart-card,.table-card,.panel,.box,.form-box,.profile-card,.report-card{
    background:var(--white) !important;
    border:1px solid var(--border) !important;
    border-radius:16px !important;
    box-shadow:var(--shadow) !important;
    color:var(--text-main) !important;
}
.card h1,.card h2,.card h3,.stat-card h3,.panel h3,.chart-card h3{
    color:var(--primary-navy) !important;
}
.card p,.muted,.text-muted,small{
    color:var(--text-muted) !important;
}
button,.btn,input[type="submit"],.action-btn,.primary-btn,.save-btn{
    background:#334155 !important;
    color:#FFFFFF !important;
    border:1px solid #334155 !important;
    border-radius:10px !important;
    font-weight:700 !important;
}
button:hover,.btn:hover,input[type="submit"]:hover,.action-btn:hover,.primary-btn:hover,.save-btn:hover{
    background:#1E293B !important;
    border-color:#1E293B !important;
    color:#FFFFFF !important;
}
.btn-secondary,.secondary-btn,.edit-btn{
    background:#CBD5E1 !important;
    color:#0F172A !important;
    border-color:#CBD5E1 !important;
}
.delete-btn,.danger,.btn-danger{
    background:#991B1B !important;
    color:#FFFFFF !important;
    border-color:#991B1B !important;
}
input,select,textarea{
    background:#FFFFFF !important;
    color:#0F172A !important;
    border:1px solid #CBD5E1 !important;
    border-radius:10px !important;
}
input:focus,select:focus,textarea:focus{
    border-color:#334155 !important;
    box-shadow:0 0 0 3px rgba(51,65,85,.16) !important;
}
table{
    background:#FFFFFF !important;
    color:#0F172A !important;
    border-collapse:separate !important;
    border-spacing:0 !important;
}
th{
    background:#0F172A !important;
    color:#FFFFFF !important;
}
td{
    border-bottom:1px solid #E2E8F0 !important;
}
tr:hover td{
    background:#F8FAFC !important;
}
a{
    color:#1E3A8A;
}
.badge,.status,.label{
    background:#E2E8F0 !important;
    color:#0F172A !important;
}
.avatar,.profile-avatar{
    background:#334155 !important;
    color:#FFFFFF !important;
}
canvas{
    background:#FFFFFF !important;
}
.alert-success{
    background:#ECFDF5 !important;
    color:#065F46 !important;
    border-color:#A7F3D0 !important;
}
.alert-error{
    background:#FEF2F2 !important;
    color:#991B1B !important;
    border-color:#FECACA !important;
}


/* =====================================================
   FINAL MIDNIGHT THEME - NO GOLD / NO CREAM / NO BEIGE
   Palette requested:
   --bg:#0F172A; --surface:#1E293B; --primary:#3B82F6;
   --text:#F1F5F9; --text-muted:#94A3B8;
===================================================== */
:root{
  --bg:#0F172A !important;
  --surface:#1E293B !important;
  --primary:#3B82F6 !important;
  --text:#F1F5F9 !important;
  --text-muted:#94A3B8 !important;
  --elrovis-black:#0F172A !important;
  --elrovis-charcoal:#1E293B !important;
  --elrovis-slate:#94A3B8 !important;
  --elrovis-slate-dark:#334155 !important;
  --elrovis-cream:#0F172A !important;
  --elrovis-border:#334155 !important;
  --primary-navy:#0F172A !important;
  --secondary-navy:#1E293B !important;
  --silver:#94A3B8 !important;
  --light-silver:#F1F5F9 !important;
  --page-bg:#0F172A !important;
  --text-main:#F1F5F9 !important;
  --border:#334155 !important;
  --shadow:0 14px 35px rgba(0,0,0,.28) !important;
}

html,body,
body.executive-dashboard{
  background:var(--bg) !important;
  color:var(--text) !important;
}

body.executive-dashboard{
  background:
    radial-gradient(circle at 18% 12%, rgba(59,130,246,.12), transparent 30%),
    radial-gradient(circle at 82% 8%, rgba(148,163,184,.08), transparent 28%),
    linear-gradient(135deg,#0F172A 0%,#111827 45%,#1E293B 100%) !important;
}

.container,.main,.dashboard-layout .main,.main-content,.content,.page-content,.dashboard,.admin-container{
  background:var(--bg) !important;
  color:var(--text) !important;
}

.sidebar,.rightbar,.navbar,.topbar,.header,.page-header,
.executive-header,.executive-logo,.executive-avatar{
  background:var(--surface) !important;
  color:var(--text) !important;
  border-color:#334155 !important;
  box-shadow:0 10px 28px rgba(0,0,0,.25) !important;
}

.executive-header{
  background:rgba(30,41,59,.92) !important;
}

.logo,.sidebar h1,.sidebar h2,.sidebar h3,.sidebar .brand,.sidebar .brand-title,
.executive-brand h1,.section-head h3,.page-title,h1,h2,h3,h4{
  color:var(--text) !important;
}

.executive-brand span,.hero-copy p,.hero-panel small,.muted-text,.muted,.text-muted,small,
.activity-row span,.transaction-row span,.kpi-card small,.kpi-card span{
  color:var(--text-muted) !important;
}

.brand-mark,.invoice-brand-mark,.icon,.brand-icon,.card-icon{
  background:#334155 !important;
  border-color:#475569 !important;
  color:var(--text) !important;
}

.menu li a,.sidebar a,.executive-nav a,.logout-link{
  color:var(--text-muted) !important;
}

.menu li.active a,.menu li a:hover,.sidebar a:hover,.sidebar .active,.executive-nav a:hover{
  background:var(--primary) !important;
  color:#FFFFFF !important;
  border-color:var(--primary) !important;
}

.logout a,
button,.btn,.btn-primary,input[type="submit"],.action-btn,.primary-btn,.save-btn,
.quick-btn,.primary-action{
  background:var(--primary) !important;
  color:#FFFFFF !important;
  border:1px solid var(--primary) !important;
  box-shadow:none !important;
}

button:hover,.btn:hover,.btn-primary:hover,input[type="submit"]:hover,.action-btn:hover,.primary-btn:hover,.save-btn:hover,
.quick-btn:hover,.primary-action:hover{
  background:#2563EB !important;
  border-color:#2563EB !important;
  color:#FFFFFF !important;
  opacity:1 !important;
}

.btn-secondary,.secondary-btn,.edit-btn,.secondary-action,.section-head a,.pill{
  background:#334155 !important;
  color:var(--text) !important;
  border:1px solid #475569 !important;
}

.delete-btn,.danger,.btn-danger{
  background:#991B1B !important;
  color:#FFFFFF !important;
  border-color:#991B1B !important;
}

.card,.stat-card,.summary-card,.chart-card,.table-card,.panel,.box,.form-box,.profile-card,.report-card,
.admin-panel,.chart-box,.customer-container,.product-container,.invoice-container,
.hero-copy,.hero-panel,.kpi-card,.analytics-card,.invoice-address-box{
  background:var(--surface) !important;
  background-image:none !important;
  border:1px solid #334155 !important;
  color:var(--text) !important;
  box-shadow:0 14px 35px rgba(0,0,0,.28) !important;
}

.card,.card-sales,.card-stock,.card-products,.card-revenue{
  background:var(--surface) !important;
  background-image:none !important;
  color:var(--text) !important;
  border-top:4px solid var(--primary) !important;
}

.card span,.card strong,.card p,.card h1,.card h2,.card h3,.card h4,
.kpi-card strong,.hero-copy h2,.hero-panel strong,.activity-row strong,.transaction-row strong,
.admin-panel h3,.panel h3,.chart-card h3{
  color:var(--text) !important;
}

input,select,textarea,.search-box,.search-box input,.payment-form input,.payment-form select{
  background:#111827 !important;
  color:var(--text) !important;
  border:1px solid #334155 !important;
}

input:focus,select:focus,textarea:focus{
  border-color:var(--primary) !important;
  box-shadow:0 0 0 3px rgba(59,130,246,.20) !important;
}

table,.customer-table{
  background:var(--surface) !important;
  color:var(--text) !important;
}

table th,.customer-table th,th{
  background:#111827 !important;
  color:var(--text) !important;
}

table td,.customer-table td,td{
  background:var(--surface) !important;
  color:var(--text) !important;
  border-bottom:1px solid #334155 !important;
}

tr:hover td,.customer-table tr:hover td{
  background:#334155 !important;
}

a,.dashboard-title,.section-title{
  color:var(--primary) !important;
}

.badge,.status,.label,.status-pill{
  background:#334155 !important;
  color:var(--text) !important;
}

.status.active,.status.paid,.status.created,.status.updated{
  background:#14532D !important;
  color:#DCFCE7 !important;
}

.status.pending,.status.used{
  background:#1E3A8A !important;
  color:#DBEAFE !important;
}

.status.inactive,.status.cancelled,.status.blocked,.status.deleted{
  background:#7F1D1D !important;
  color:#FEE2E2 !important;
}

.rightbar .panel,.right-sidebar,.right-panel,.activity-panel{
  background:var(--surface) !important;
  color:var(--text) !important;
  border-color:#334155 !important;
}

.rightbar .panel h3,.rightbar .panel p,.rightbar .panel strong,.rightbar .panel span{
  color:var(--text) !important;
}

canvas{
  background:transparent !important;
}

.invoice-brand-header{
  background:var(--surface) !important;
  color:var(--text) !important;
  border:1px solid #334155 !important;
}

.invoice-brand-header h2,.invoice-brand-header p{
  color:var(--text) !important;
}

.executive-logo-img,.invoice-brand-logo{
  background:#111827 !important;
  border:1px solid #334155 !important;
}


/* =====================================================
   ELROVIS ELECTRIC BLUE ENTERPRISE DASHBOARD
   Final palette requested by Vincent
   Background #0F172A | Surface #1E293B | Primary #3B82F6
   Text #F1F5F9 | Muted #94A3B8 | Success #10B981 | Warning #F59E0B
===================================================== */
:root{
  --bg:#0F172A !important;
  --surface:#1E293B !important;
  --surface-2:#111827 !important;
  --primary:#3B82F6 !important;
  --primary-dark:#1E40AF !important;
  --text:#F1F5F9 !important;
  --text-muted:#94A3B8 !important;
  --success:#10B981 !important;
  --warning:#F59E0B !important;
  --danger:#EF4444 !important;
  --line:#334155 !important;
  --soft-line:rgba(148,163,184,.16) !important;
  --shadow:0 18px 45px rgba(2,6,23,.36) !important;
}

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

body.executive-dashboard{
  font-family:Inter, Segoe UI, Arial, sans-serif !important;
  background:
    radial-gradient(circle at 12% 10%, rgba(59,130,246,.20), transparent 28%),
    radial-gradient(circle at 86% 8%, rgba(16,185,129,.10), transparent 26%),
    linear-gradient(135deg,#0F172A 0%,#111827 46%,#1E293B 100%) !important;
}

.executive-shell{
  width:min(1540px, calc(100% - 30px)) !important;
}

.executive-header{
  background:rgba(30,41,59,.92) !important;
  border:1px solid var(--soft-line) !important;
  box-shadow:var(--shadow) !important;
}

.executive-logo,
.executive-avatar,
.executive-logo-img{
  background:#111827 !important;
  color:var(--text) !important;
  border:1px solid var(--line) !important;
}

.executive-brand h1,
.hero-copy h2,
.section-head h3,
.kpi-card strong,
.activity-row strong,
.transaction-row strong,
h1,h2,h3,h4{
  color:var(--text) !important;
}

.executive-brand span,
.hero-copy p,
.hero-panel small,
.kpi-card span,
.kpi-card small,
.activity-row span,
.transaction-row span,
small,.muted,.text-muted{
  color:var(--text-muted) !important;
}

.executive-nav a,
.logout-link,
.menu li a,
.sidebar a{
  color:var(--text-muted) !important;
}

.executive-nav a:hover,
.menu li.active a,
.menu li a:hover,
.sidebar a:hover,
.sidebar .active{
  background:rgba(59,130,246,.16) !important;
  color:var(--text) !important;
  border-color:rgba(59,130,246,.32) !important;
}

.quick-btn,
.primary-action,
button,
.btn,
.btn-primary,
input[type="submit"],
.action-btn,
.primary-btn,
.save-btn{
  background:linear-gradient(135deg,var(--primary-dark),var(--primary)) !important;
  color:#FFFFFF !important;
  border:1px solid rgba(59,130,246,.65) !important;
  box-shadow:0 12px 28px rgba(59,130,246,.20) !important;
}

.quick-btn:hover,
.primary-action:hover,
button:hover,
.btn:hover,
.btn-primary:hover{
  background:linear-gradient(135deg,#1D4ED8,#60A5FA) !important;
  color:#FFFFFF !important;
  opacity:1 !important;
}

.secondary-action,
.btn-secondary,
.secondary-btn,
.edit-btn,
.section-head a,
.pill{
  background:#111827 !important;
  color:var(--text) !important;
  border:1px solid var(--line) !important;
}

.hero-copy,
.hero-panel,
.kpi-card,
.analytics-card,
.card,
.stat-card,
.summary-card,
.chart-card,
.table-card,
.panel,
.box,
.form-box,
.profile-card,
.report-card,
.admin-panel,
.chart-box,
.customer-container,
.product-container,
.invoice-container,
.invoice-address-box{
  background:
    radial-gradient(circle at top right, rgba(59,130,246,.09), transparent 34%),
    var(--surface) !important;
  border:1px solid var(--soft-line) !important;
  color:var(--text) !important;
  box-shadow:var(--shadow) !important;
}

.hero-copy{
  min-height:300px !important;
}

.hero-copy h2{
  color:var(--text) !important;
  letter-spacing:-.055em !important;
}

.hero-panel strong{
  color:var(--primary) !important;
}

.executive-kpis{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:20px !important;
}

.kpi-card{
  min-height:158px !important;
  border-top:4px solid var(--primary) !important;
}

.kpi-card::before{
  background:radial-gradient(circle at top right, rgba(59,130,246,.18), transparent 42%) !important;
}

.kpi-revenue{border-top-color:var(--success) !important;}
.kpi-revenue strong{color:var(--success) !important;}
.kpi-customers{border-top-color:var(--primary) !important;}
.kpi-customers strong{color:var(--primary) !important;}
.kpi-products{border-top-color:var(--text-muted) !important;}
.kpi-products strong{color:var(--text) !important;}
.kpi-stock{border-top-color:var(--warning) !important;}
.kpi-stock strong{color:var(--warning) !important;}

.executive-grid{
  grid-template-columns:1.35fr .65fr !important;
  gap:22px !important;
}

.analytics-card{
  min-height:340px !important;
}

.large-chart{
  min-height:480px !important;
}

.chart-wrap{height:380px !important;}
.chart-wrap.compact{height:285px !important;}

.eyebrow{
  color:var(--primary) !important;
}

.activity-row,
.transaction-row{
  border-bottom:1px solid var(--soft-line) !important;
}

.activity-row small,
.transaction-row em{
  color:var(--primary) !important;
}

.status-pill,
.badge,.status,.label{
  background:rgba(59,130,246,.16) !important;
  color:#DBEAFE !important;
  border:1px solid rgba(59,130,246,.24) !important;
}

.status.active,.status.paid,.status.created,.status.updated{
  background:rgba(16,185,129,.14) !important;
  color:#A7F3D0 !important;
  border-color:rgba(16,185,129,.28) !important;
}

.status.pending,.status.used{
  background:rgba(245,158,11,.14) !important;
  color:#FDE68A !important;
  border-color:rgba(245,158,11,.28) !important;
}

.status.inactive,.status.cancelled,.status.blocked,.status.deleted,
.delete-btn,.danger,.btn-danger{
  background:rgba(239,68,68,.18) !important;
  color:#FECACA !important;
  border-color:rgba(239,68,68,.35) !important;
}

input,select,textarea,.search-box,.search-box input,.payment-form input,.payment-form select{
  background:#111827 !important;
  color:var(--text) !important;
  border:1px solid var(--line) !important;
}

input:focus,select:focus,textarea:focus{
  border-color:var(--primary) !important;
  box-shadow:0 0 0 3px rgba(59,130,246,.22) !important;
}

table,.customer-table{
  background:var(--surface) !important;
  color:var(--text) !important;
}

table th,.customer-table th,th{
  background:#111827 !important;
  color:var(--text) !important;
  border-bottom:1px solid var(--line) !important;
}

table td,.customer-table td,td{
  background:var(--surface) !important;
  color:var(--text) !important;
  border-bottom:1px solid var(--line) !important;
}

tr:hover td,.customer-table tr:hover td{
  background:#334155 !important;
}

.sidebar,.rightbar,.navbar,.topbar,.header,.page-header{
  background:var(--surface) !important;
  color:var(--text) !important;
  border-color:var(--line) !important;
}

.rightbar .panel,
.right-sidebar,
.right-panel,
.activity-panel{
  background:var(--surface) !important;
  color:var(--text) !important;
  border-color:var(--line) !important;
}

a,.dashboard-title,.section-title{
  color:var(--primary) !important;
}

canvas{background:transparent !important;}

/* Hard overwrite for old gold/cream dashboard classes */
.card-sales,.card-stock,.card-products,.card-revenue{
  background:var(--surface) !important;
  background-image:none !important;
  color:var(--text) !important;
}

@media(max-width:1100px){
  .executive-kpis{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .executive-grid{grid-template-columns:1fr !important;}
}

@media(max-width:680px){
  .executive-kpis{grid-template-columns:1fr !important;}
}


/* =====================================================
   SAP-STYLE FULL MODULE REBUILD - MIDNIGHT / ELECTRIC BLUE
   Applies dashboard language to customers, products, invoices, reports and rightbar.
===================================================== */
:root{
  --bg:#0F172A !important;
  --surface:#1E293B !important;
  --surface-2:#111827 !important;
  --primary:#3B82F6 !important;
  --primary-dark:#1E40AF !important;
  --text:#F1F5F9 !important;
  --text-muted:#94A3B8 !important;
  --success:#10B981 !important;
  --warning:#F59E0B !important;
  --danger:#EF4444 !important;
  --line:#334155 !important;
  --soft-line:rgba(148,163,184,.16) !important;
  --shadow:0 18px 48px rgba(2,6,23,.38) !important;
}

html,body{background:var(--bg) !important;color:var(--text) !important;}
.container,.main,.dashboard-layout .main,.form-layout .form-page{background:var(--bg) !important;color:var(--text) !important;}
.dashboard-layout .main.module-main,.dashboard-layout .main{margin-right:250px !important;width:calc(100% - 470px) !important;}

.module-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:28px;
  margin-bottom:20px;
  border-radius:26px;
  background:radial-gradient(circle at top right,rgba(59,130,246,.16),transparent 36%),linear-gradient(145deg,#1E293B,#111827) !important;
  border:1px solid var(--soft-line) !important;
  box-shadow:var(--shadow) !important;
}
.module-hero h2{margin:6px 0 8px !important;text-align:left !important;color:var(--text) !important;font-size:clamp(28px,3vw,44px) !important;letter-spacing:-.04em;}
.module-hero p,.module-hero .muted-text{max-width:780px;margin:0 !important;color:var(--text-muted) !important;text-align:left !important;line-height:1.65;}
.module-eyebrow{display:block;text-transform:uppercase;letter-spacing:.16em;color:var(--primary) !important;font-weight:800;font-size:11px;}
.module-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.module-actions .btn{width:auto !important;}

.module-kpis,.cards.module-kpis{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
  margin:0 0 20px !important;
}
.module-kpi,.cards.module-kpis .card{
  padding:22px !important;
  min-height:132px;
  border-radius:22px !important;
  background:radial-gradient(circle at top right,rgba(59,130,246,.13),transparent 42%),var(--surface) !important;
  border:1px solid var(--soft-line) !important;
  border-top:4px solid var(--primary) !important;
  box-shadow:var(--shadow) !important;
  color:var(--text) !important;
  text-align:left !important;
}
.module-kpi span,.cards.module-kpis .card{font-size:13px;font-weight:800;color:var(--text-muted) !important;}
.module-kpi strong,.cards.module-kpis .card span{
  display:block;
  margin:10px 0 6px;
  color:var(--text) !important;
  font-size:clamp(24px,2.2vw,34px) !important;
  letter-spacing:-.04em;
}
.module-kpi small{color:var(--text-muted) !important;}
.module-kpi.success{border-top-color:var(--success) !important;}
.module-kpi.success strong{color:var(--success) !important;}
.module-kpi.warning{border-top-color:var(--warning) !important;}
.module-kpi.warning strong{color:var(--warning) !important;}
.module-kpi.danger{border-top-color:var(--danger) !important;}
.module-kpi.danger strong{color:#FCA5A5 !important;}

.module-table-card,.customer-container,.product-container,.invoice-container,.admin-panel{
  background:radial-gradient(circle at top right,rgba(59,130,246,.08),transparent 35%),var(--surface) !important;
  border:1px solid var(--soft-line) !important;
  border-radius:24px !important;
  box-shadow:var(--shadow) !important;
  padding:22px !important;
  color:var(--text) !important;
  overflow-x:auto;
}
.module-section-head,.customer-header,.invoice-header{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px;
  margin-bottom:18px !important;
}
.module-section-head h2,.customer-header h2,.invoice-header h2{margin:0 !important;text-align:left !important;color:var(--text) !important;}

.customer-table,table{
  width:100% !important;
  min-width:920px;
  background:var(--surface) !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  color:var(--text) !important;
}
.customer-table th,table th,th{
  background:#111827 !important;
  color:var(--text) !important;
  padding:14px !important;
  border-bottom:1px solid var(--line) !important;
  text-transform:uppercase;
  letter-spacing:.05em;
  font-size:12px;
}
.customer-table td,table td,td{
  background:transparent !important;
  color:var(--text) !important;
  padding:14px !important;
  border-bottom:1px solid var(--soft-line) !important;
}
.customer-table tr:hover td,table tr:hover td{background:rgba(59,130,246,.08) !important;}
.action,.actions{display:flex !important;gap:8px !important;align-items:center !important;flex-wrap:wrap;}
.action .btn,.actions .btn{width:auto !important;padding:8px 12px !important;}

.sidebar{
  background:linear-gradient(180deg,#0F172A,#111827 56%,#1E293B) !important;
  border-right:1px solid var(--soft-line) !important;
}
.menu li.active a,.menu li a:hover,.sidebar a:hover,.sidebar .active{
  background:linear-gradient(135deg,var(--primary-dark),var(--primary)) !important;
  color:#FFFFFF !important;
  border-left:0 !important;
}
.logout a{background:rgba(59,130,246,.16) !important;color:var(--text) !important;border:1px solid rgba(59,130,246,.24) !important;}

.rightbar.dynamic-rightbar,.rightbar{
  width:250px !important;
  background:linear-gradient(180deg,#111827,#1E293B) !important;
  border-left:1px solid var(--soft-line) !important;
  color:var(--text) !important;
  padding:18px !important;
  overflow-y:auto !important;
}
.rightbar .panel{
  background:rgba(15,23,42,.74) !important;
  border:1px solid var(--soft-line) !important;
  border-radius:18px !important;
  box-shadow:0 14px 36px rgba(2,6,23,.28) !important;
  margin-bottom:14px !important;
}
.rightbar .panel h3{color:var(--text) !important;font-size:15px !important;margin-bottom:12px !important;}
.rightbar .panel p{color:var(--text-muted) !important;border-bottom:1px solid rgba(148,163,184,.08);padding-bottom:8px;}
.rightbar .panel p:last-child{border-bottom:0;padding-bottom:0;}
.rightbar .panel strong{color:var(--text) !important;}
.metric-green{color:var(--success) !important;}.metric-red{color:#FCA5A5 !important;}.metric-blue{color:var(--primary) !important;}

.navbar,.topbar,.header,.page-header{
  background:rgba(30,41,59,.88) !important;
  color:var(--text) !important;
  border:1px solid var(--soft-line) !important;
  border-radius:18px !important;
  box-shadow:var(--shadow) !important;
}

button,.btn,.btn-primary,input[type="submit"],.action-btn,.primary-btn,.save-btn{
  background:linear-gradient(135deg,var(--primary-dark),var(--primary)) !important;
  color:#FFFFFF !important;
  border:1px solid rgba(59,130,246,.62) !important;
  border-radius:12px !important;
  font-weight:800 !important;
  box-shadow:0 12px 28px rgba(59,130,246,.16) !important;
}
.btn-danger,.delete-btn,.danger{background:rgba(239,68,68,.20) !important;color:#FCA5A5 !important;border-color:rgba(239,68,68,.40) !important;box-shadow:none !important;}

input,select,textarea,.search-box,.search-box input{
  background:#111827 !important;
  color:var(--text) !important;
  border:1px solid var(--line) !important;
  border-radius:12px !important;
}
input:focus,select:focus,textarea:focus{border-color:var(--primary) !important;box-shadow:0 0 0 3px rgba(59,130,246,.22) !important;}

.detail-row{background:#111827 !important;border:1px solid var(--soft-line) !important;color:var(--text) !important;}
.label{color:var(--text-muted) !important;}.value{color:var(--text) !important;}
.status,.badge,.label{background:rgba(59,130,246,.14) !important;color:#DBEAFE !important;border:1px solid rgba(59,130,246,.25) !important;}
.status.active,.status.paid{background:rgba(16,185,129,.14) !important;color:#A7F3D0 !important;border-color:rgba(16,185,129,.28) !important;}
.status.pending{background:rgba(245,158,11,.14) !important;color:#FDE68A !important;border-color:rgba(245,158,11,.28) !important;}
.status.cancelled,.status.blocked,.status.inactive{background:rgba(239,68,68,.18) !important;color:#FCA5A5 !important;border-color:rgba(239,68,68,.35) !important;}

@media(max-width:1200px){
  .dashboard-layout .main.module-main,.dashboard-layout .main{margin-right:0 !important;width:calc(100% - 220px) !important;}
  .rightbar{display:none !important;}
  .module-kpis,.cards.module-kpis{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:760px){
  .dashboard-layout .main.module-main,.dashboard-layout .main{margin-left:0 !important;width:100% !important;}
  .sidebar{position:relative !important;width:100% !important;height:auto !important;}
  .module-hero{flex-direction:column;align-items:flex-start;}
  .module-kpis,.cards.module-kpis{grid-template-columns:1fr !important;}
}


/* =====================================================
   FINAL MIDNIGHT SAP MODULE OVERRIDE - NO OLD CUSTOMER/INVOICE LIGHT SKIN
===================================================== */
:root{
  --bg:#0F172A !important;
  --surface:#1E293B !important;
  --surface-2:#111827 !important;
  --primary:#3B82F6 !important;
  --primary-dark:#1E40AF !important;
  --text:#F1F5F9 !important;
  --text-muted:#94A3B8 !important;
  --success:#10B981 !important;
  --warning:#F59E0B !important;
  --danger:#EF4444 !important;
  --line:#334155 !important;
  --soft-line:rgba(148,163,184,.16) !important;
  --shadow:0 18px 48px rgba(2,6,23,.38) !important;
}
html,body,.container,.main,.dashboard-layout .main,.form-layout .form-page{
  background:var(--bg) !important;
  color:var(--text) !important;
}
.dashboard-layout .main{margin-right:250px !important;width:calc(100% - 470px) !important;}
.module-main{background:var(--bg) !important;}
.module-hero{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  padding:28px !important;
  margin-bottom:20px !important;
  border-radius:26px !important;
  background:radial-gradient(circle at top right,rgba(59,130,246,.18),transparent 36%),linear-gradient(145deg,#1E293B,#111827) !important;
  border:1px solid var(--soft-line) !important;
  box-shadow:var(--shadow) !important;
}
.module-hero h2{margin:6px 0 8px !important;text-align:left !important;color:var(--text) !important;font-size:clamp(28px,3vw,44px) !important;letter-spacing:-.04em !important;}
.module-hero p{margin:0 !important;color:var(--text-muted) !important;text-align:left !important;line-height:1.65 !important;}
.module-eyebrow{display:block !important;text-transform:uppercase !important;letter-spacing:.16em !important;color:var(--primary) !important;font-weight:800 !important;font-size:11px !important;}
.module-kpis{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:18px !important;margin:0 0 20px !important;}
.module-kpi{
  padding:22px !important;
  min-height:132px !important;
  border-radius:22px !important;
  background:radial-gradient(circle at top right,rgba(59,130,246,.13),transparent 42%),var(--surface) !important;
  border:1px solid var(--soft-line) !important;
  border-top:4px solid var(--primary) !important;
  box-shadow:var(--shadow) !important;
  color:var(--text) !important;
  text-align:left !important;
}
.module-kpi span{font-size:13px !important;font-weight:800 !important;color:var(--text-muted) !important;}
.module-kpi strong{display:block !important;margin:10px 0 6px !important;color:var(--text) !important;font-size:clamp(24px,2.2vw,34px) !important;letter-spacing:-.04em !important;}
.module-kpi small{color:var(--text-muted) !important;}
.module-kpi.success{border-top-color:var(--success) !important;}.module-kpi.success strong{color:var(--success) !important;}
.module-kpi.warning{border-top-color:var(--warning) !important;}.module-kpi.warning strong{color:var(--warning) !important;}
.module-kpi.danger{border-top-color:var(--danger) !important;}.module-kpi.danger strong{color:#FCA5A5 !important;}
.customer-container,.product-container,.invoice-container,.admin-panel,.panel,.form-box,.module-table-card,.report-card,.table-card,.box{
  background:radial-gradient(circle at top right,rgba(59,130,246,.08),transparent 35%),var(--surface) !important;
  border:1px solid var(--soft-line) !important;
  border-radius:24px !important;
  box-shadow:var(--shadow) !important;
  padding:22px !important;
  color:var(--text) !important;
  overflow-x:auto !important;
}
.customer-header,.invoice-header,.module-section-head{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:14px !important;margin-bottom:18px !important;}
.customer-header h2,.invoice-header h2,.module-section-head h2,h2,h3{color:var(--text) !important;text-align:left !important;}
.customer-table,table{width:100% !important;min-width:920px !important;background:var(--surface) !important;border-collapse:separate !important;border-spacing:0 !important;color:var(--text) !important;border-radius:16px !important;overflow:hidden !important;}
.customer-table th,table th,th{background:#111827 !important;color:var(--text) !important;padding:14px !important;border-bottom:1px solid var(--line) !important;text-transform:uppercase !important;letter-spacing:.05em !important;font-size:12px !important;}
.customer-table td,table td,td{background:transparent !important;color:var(--text) !important;padding:14px !important;border-bottom:1px solid var(--soft-line) !important;}
.customer-table tr:hover td,table tr:hover td{background:rgba(59,130,246,.08) !important;}
.detail-row{background:#111827 !important;border:1px solid var(--soft-line) !important;color:var(--text) !important;border-radius:18px !important;}
.label{color:var(--text-muted) !important;background:transparent !important;border:0 !important;}.value{color:var(--text) !important;}
button,.btn,.btn-primary,input[type="submit"],.action-btn,.primary-btn,.save-btn{background:linear-gradient(135deg,var(--primary-dark),var(--primary)) !important;color:#fff !important;border:1px solid rgba(59,130,246,.62) !important;border-radius:12px !important;font-weight:800 !important;box-shadow:0 12px 28px rgba(59,130,246,.16) !important;text-decoration:none !important;}
.btn-danger,.delete-btn,.danger{background:rgba(239,68,68,.20) !important;color:#FCA5A5 !important;border-color:rgba(239,68,68,.40) !important;box-shadow:none !important;}
.action,.actions{display:flex !important;gap:8px !important;align-items:center !important;flex-wrap:wrap !important;}.action .btn,.actions .btn{width:auto !important;padding:8px 12px !important;}
input,select,textarea,.search-box,.search-box input{background:#111827 !important;color:var(--text) !important;border:1px solid var(--line) !important;border-radius:12px !important;}
input:focus,select:focus,textarea:focus{border-color:var(--primary) !important;box-shadow:0 0 0 3px rgba(59,130,246,.22) !important;}
.status,.badge{background:rgba(59,130,246,.14) !important;color:#DBEAFE !important;border:1px solid rgba(59,130,246,.25) !important;border-radius:999px !important;}
.status.active,.status.paid{background:rgba(16,185,129,.14) !important;color:#A7F3D0 !important;border-color:rgba(16,185,129,.28) !important;}
.status.pending{background:rgba(245,158,11,.14) !important;color:#FDE68A !important;border-color:rgba(245,158,11,.28) !important;}
.status.cancelled,.status.blocked,.status.inactive{background:rgba(239,68,68,.18) !important;color:#FCA5A5 !important;border-color:rgba(239,68,68,.35) !important;}
.navbar,.topbar,.header,.page-header{background:rgba(30,41,59,.88) !important;color:var(--text) !important;border:1px solid var(--soft-line) !important;border-radius:18px !important;box-shadow:var(--shadow) !important;}
.rightbar.dynamic-rightbar,.rightbar{width:250px !important;background:linear-gradient(180deg,#111827,#1E293B) !important;border-left:1px solid var(--soft-line) !important;color:var(--text) !important;padding:18px !important;overflow-y:auto !important;}
.rightbar .panel{background:rgba(15,23,42,.74) !important;border:1px solid var(--soft-line) !important;border-radius:18px !important;box-shadow:0 14px 36px rgba(2,6,23,.28) !important;margin-bottom:14px !important;}
.rightbar .panel h3{color:var(--text) !important;font-size:15px !important;margin-bottom:12px !important;}
.rightbar .panel p{color:var(--text-muted) !important;border-bottom:1px solid rgba(148,163,184,.08) !important;padding-bottom:8px !important;}
.rightbar .panel strong{color:var(--text) !important;}.metric-green{color:var(--success) !important;}.metric-red{color:#FCA5A5 !important;}.metric-blue{color:var(--primary) !important;}
.invoice-footer,.invoice-bank-grid,.invoice-warehouse{color:var(--text) !important;}
.invoice-bank-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:24px;}
.invoice-bank-grid div,.invoice-warehouse{background:#111827;border:1px solid var(--soft-line);border-radius:16px;padding:14px;}
.invoice-bank-grid span{display:block;color:var(--text-muted);font-size:12px;margin-bottom:6px;}.invoice-bank-grid strong{color:var(--text);font-size:14px;}
.invoice-warehouse{margin-top:16px;line-height:1.6;color:var(--text-muted) !important;}
@media(max-width:1200px){.dashboard-layout .main{margin-right:0 !important;width:calc(100% - 220px) !important;}.rightbar{display:none !important;}.module-kpis{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}}
@media(max-width:760px){.dashboard-layout .main{margin-left:0 !important;width:100% !important;}.sidebar{position:relative !important;width:100% !important;height:auto !important;}.module-hero{flex-direction:column !important;align-items:flex-start !important;}.module-kpis{grid-template-columns:1fr !important;}}

/* ===== ELROVIS SECURE ADMIN CONSOLE ===== */
.admin-auth-body{
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    background:radial-gradient(circle at 20% 10%,rgba(59,130,246,.18),transparent 26%),linear-gradient(135deg,#0F172A,#020617) !important;
    color:#F1F5F9 !important;
    padding:24px;
}
.admin-auth-card{
    width:min(460px,100%);
    background:linear-gradient(145deg,#1E293B,#0F172A) !important;
    border:1px solid rgba(148,163,184,.18);
    border-radius:28px;
    padding:34px;
    box-shadow:0 30px 90px rgba(0,0,0,.45);
}
.admin-auth-card h1{
    margin:10px 0;
    color:#F1F5F9 !important;
    font-size:34px;
}
.admin-auth-card p{
    text-align:left;
    color:#94A3B8 !important;
    line-height:1.65;
    margin:0 0 20px;
}
.admin-auth-card form{
    display:grid;
    gap:12px;
}
.admin-auth-card input{
    background:#0F172A !important;
    color:#F1F5F9 !important;
    border:1px solid #334155 !important;
}
.admin-auth-card button{
    background:#3B82F6 !important;
    color:#FFFFFF !important;
}
.admin-auth-icon{
    width:64px;
    height:64px;
    display:grid;
    place-items:center;
    background:#3B82F6;
    color:#fff;
    border-radius:20px;
    font-weight:900;
    font-size:20px;
    margin-bottom:18px;
}
.admin-auth-back{
    display:inline-block;
    margin-top:18px;
    color:#94A3B8 !important;
    text-decoration:none;
}
.admin-console-page .main.admin-main{
    background:#0F172A !important;
    color:#F1F5F9 !important;
}
.admin-hero-panel{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    margin-bottom:22px;
    padding:28px;
    background:linear-gradient(145deg,#1E293B,#111827) !important;
    border:1px solid rgba(148,163,184,.16);
    border-radius:26px;
    box-shadow:0 20px 55px rgba(0,0,0,.24);
}
.admin-hero-panel h2{
    text-align:left;
    margin:8px 0;
    color:#F1F5F9 !important;
    font-size:34px;
}
.admin-hero-panel p{
    text-align:left;
    color:#94A3B8 !important;
    margin:0;
    max-width:760px;
    line-height:1.6;
}
.admin-metric-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
    gap:16px;
    margin-bottom:22px;
}
.admin-metric-card,
.admin-module-card,
.admin-users-panel{
    background:#1E293B !important;
    border:1px solid rgba(148,163,184,.15) !important;
    color:#F1F5F9 !important;
    border-radius:22px !important;
    box-shadow:0 18px 50px rgba(0,0,0,.22) !important;
}
.admin-metric-card{
    padding:22px;
}
.admin-metric-card span,
.admin-metric-card small,
.admin-module-card p,
.admin-section-head small{
    color:#94A3B8 !important;
}
.admin-metric-card strong{
    display:block;
    margin:8px 0 6px;
    color:#F1F5F9;
    font-size:34px;
}
.admin-module-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:18px;
    margin-bottom:22px;
}
.admin-module-card{
    padding:22px !important;
}
.admin-module-card h3,
.admin-users-panel h3{
    color:#F1F5F9 !important;
    margin-bottom:10px;
}
.admin-module-card p{
    text-align:left;
    line-height:1.6;
    margin-bottom:16px;
}
.admin-section-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:20px;
    margin-bottom:18px;
}
.admin-table-wrap{
    overflow-x:auto;
}
.admin-user-table th{
    background:#111827 !important;
    color:#F1F5F9 !important;
}
.admin-user-table td{
    background:#0F172A !important;
    color:#F1F5F9 !important;
    border-bottom:1px solid #334155 !important;
}
.admin-role-form{
    display:flex;
    gap:10px;
    align-items:center;
}
.admin-role-form select{
    min-width:160px;
    margin-bottom:0;
    background:#111827 !important;
    color:#F1F5F9 !important;
}
.admin-role-form button{
    width:auto;
    margin-bottom:0;
}
.status.admin{background:#3B82F6 !important;color:#FFFFFF !important;}
.status.data_capture{background:#6366F1 !important;color:#FFFFFF !important;}
.status.sales{background:#10B981 !important;color:#FFFFFF !important;}
.status.finance{background:#F59E0B !important;color:#111827 !important;}
.status.user{background:#334155 !important;color:#F1F5F9 !important;}
@media(max-width:900px){
    .admin-hero-panel,.admin-section-head{flex-direction:column;align-items:flex-start;}
}


/* Internal CRM compact control screens */
.history-page .customer-table,
.history-page .customer-table th,
.history-page .customer-table td,
.invoices-page .customer-table,
.products-page .customer-table {
    font-size: 12px;
    line-height: 1;
}
.admin-create-user-form {
    display: grid;
    grid-template-columns: repeat(6, minmax(120px, 1fr));
    gap: 10px;
    margin: 14px 0;
}
.admin-create-user-form input,
.admin-create-user-form select,
.admin-create-user-form button,
.inline-form input[type="date"] {
    min-height: 36px;
}
@media (max-width: 900px) {
    .admin-create-user-form { grid-template-columns: 1fr; }
}

.compact-table table, .compact-ledger-table { font-size: 12px; line-height: 1; }
.compact-ledger-table th, .compact-ledger-table td { padding: 7px 8px; line-height: 1; vertical-align: middle; }
.alert.alert-danger { margin: 12px 0; padding: 12px; border-radius: 10px; background: #fee2e2; color: #7f1d1d; font-size: 13px; }

.search-box{display:flex;gap:8px;align-items:center}.search-box input{min-width:280px}.search-submit{border:0;border-radius:10px;padding:9px 14px;background:#3B82F6;color:#fff;font-weight:700;cursor:pointer}.search-wide-form{align-items:center}.compact-ledger-table{font-size:12px;line-height:1}.compact-ledger-table th,.compact-ledger-table td{padding:7px 8px;vertical-align:top}.user-crud-form{display:flex;gap:6px;flex-wrap:wrap}.user-crud-form input,.user-crud-form select{min-width:120px}.compact-ledger-wrap{overflow-x:auto}.admin-user-table{min-width:1150px}.btn-danger,.btn.btn-danger{background:#dc2626!important;color:#fff!important;border:0;border-radius:8px;padding:8px 12px;cursor:pointer}.alert-error{background:#7f1d1d;color:#fee2e2;border:1px solid #ef4444;padding:12px;border-radius:12px;margin:12px 0}.muted-text{color:#94A3B8}


/* Admin visibility + Elrovis app icon patch */
.sidebar .logo{display:flex;align-items:center;gap:10px;}
.sidebar-logo-img{width:34px;height:34px;object-fit:contain;border-radius:10px;background:#fff;padding:3px;}
.search-box{display:flex;align-items:center;gap:8px;}
.search-app-icon{width:24px;height:24px;object-fit:contain;border-radius:6px;background:#fff;padding:2px;flex:0 0 auto;}
.login-logo{width:78px;height:78px;object-fit:contain;display:block;margin:0 auto 10px auto;border-radius:18px;background:#fff;padding:6px;}
.admin-delete-shortcuts{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0;}
.btn-danger, button.btn-danger, a.btn-danger{background:#dc2626!important;color:#fff!important;border:1px solid #b91c1c!important;display:inline-flex!important;align-items:center;justify-content:center;gap:6px;white-space:nowrap;}
.btn-secondary, a.btn-secondary{background:#475569!important;color:#fff!important;border:1px solid #334155!important;}
.module-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
td form{margin:0;}
.compact-ledger-table td .btn, .compact-ledger-table td button, .customer-table td .btn, .customer-table td button{font-size:12px;padding:7px 10px;margin:2px;line-height:1;}


/* Global logo size normalization */
.sidebar-logo-img,
.logo img,
.brand img,
.sidebar .logo img{
width:40px !important;
height:40px !important;
max-width:40px !important;
max-height:40px !important;
object-fit:contain !important;
border-radius:8px !important;
}


/* Elrovis final standard logo size patch */
.sidebar .logo,
.sidebar h2.logo{
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
}
.sidebar-logo-img,
.sidebar .logo img,
.logo img,
.brand img,
.executive-logo-img,
.executive-logo img{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    max-width:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    object-fit:contain !important;
    padding:3px !important;
    border-radius:10px !important;
    box-sizing:border-box !important;
}
.invoice-brand-logo{
    width:48px !important;
    height:48px !important;
    max-width:48px !important;
    max-height:48px !important;
    object-fit:contain !important;
}
.quotation-form{grid-template-columns:repeat(4,minmax(150px,1fr));}
.printable-document{max-width:900px;margin:0 auto;}
@media print{
    .sidebar,.topbar,.right-sidebar,.no-print,.logout{display:none !important;}
    .main{margin:0 !important;width:100% !important;}
    body{background:#fff !important;color:#111 !important;}
    .module-table-card,.printable-document{box-shadow:none !important;border:0 !important;background:#fff !important;color:#111 !important;}
    .customer-table th,.customer-table td{color:#111 !important;border:1px solid #ddd !important;}
}
