/* RentalWise Professional Theme */
:root {
    --primary-color: #1e3a8a;   /* Primary Color (Text/Buttons) */
    --sidebar-bg: #1e3a8a;      /* Sidebar Background */
    --accent-emerald: #10b981;  /* Accent Color */
    --slate-grey: #64748b;      /* Slate Grey */
    --modern-orange: #f97316;   /* Modern Orange */
    --bg-light: #f8fafc;
    --sidebar-width: 260px;
    --sidebar-text: rgba(255, 255, 255, 0.7);
}

body {
    background-color: var(--bg-light);
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    color: #1e293b;
}

.bg-navy { background-color: var(--primary-color) !important; }
.text-navy { color: var(--primary-color) !important; }
.bg-emerald { background-color: var(--accent-emerald) !important; }
.text-emerald { color: var(--accent-emerald) !important; }
.bg-orange { background-color: var(--modern-orange) !important; }
.text-orange { color: var(--modern-orange) !important; }
.bg-slate { background-color: var(--slate-grey) !important; }
.text-slate { color: var(--slate-grey) !important; }

/* Standard Theme Action Buttons */
.btn-emerald { 
    background-color: var(--accent-emerald) !important; 
    border-color: var(--accent-emerald) !important; 
    color: white !important; 
    border: none; 
}
.btn-emerald:hover { 
    filter: brightness(90%); 
    color: white !important; 
}

/* Premium Cards */
.card {
    border: none;
    box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    border-radius: 12px;
    transition: transform 0.2s ease;
}

.card:hover { transform: translateY(-2px); }

/* Professional Sidebar */
#sidebar {
    min-width: var(--sidebar-width);
    max-width: var(--sidebar-width);
    min-height: 100vh;
    background-color: var(--sidebar-bg);
    color: white;
    transition: all 0.3s;
}

.nav-link {
    color: var(--sidebar-text);
    padding: 12px 20px;
    border-radius: 8px;
    margin: 4px 10px;
}
.nav-link:hover, .nav-link.active { color: white; background: rgba(255, 255, 255, 0.1); }

/* Layout Helper Classes */
#sidebar-wrapper {
    min-width: var(--sidebar-width);
    max-width: var(--sidebar-width);
    transition: margin .25s ease-out;
    box-shadow: 4px 0 10px rgba(0,0,0,0.1);
    z-index: 1000;
    background-color: var(--sidebar-bg) !important; /* Force use of settings variable */
}

#sidebar-wrapper .nav-link i {
    color: var(--accent-emerald) !important; /* Ensure icons use accent color */
}

#page-content-wrapper {
    min-width: 100vw;
    flex: 1;
}

@media (min-width: 768px) {
    #page-content-wrapper {
        min-width: 0;
        width: 100%;
    }
}

.sidebar-label {
    padding: 10px 25px;
    font-size: 0.7rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.35);
    text-transform: uppercase;
    letter-spacing: 0.08rem;
}

.fs-xs { font-size: 0.7rem; }
.tracking-wider { letter-spacing: 0.1em; }
.hide-caret::after { display: none; }