:root { --sidebar: #132338; --accent: #0d6efd; }
body { background: #f5f7fb; }
.auth-page { min-height: 100vh; position: relative; isolation: isolate; background: url('../back.jfif') center center / cover no-repeat; }
.auth-page::before { content: ''; position: absolute; inset: 0; z-index: -1; background: rgba(18, 24, 30, .38); }
.auth-card { width: 100%; max-width: 440px; border: 0; border-radius: 1rem; background: rgba(255,255,255,.94); box-shadow: 0 1rem 3rem rgba(0,0,0,.28); backdrop-filter: blur(7px); }
.auth-card .text-primary { color: #7b4f35 !important; }
.auth-card .btn-primary { background: #7b4f35; border-color: #7b4f35; }
.auth-card .btn-primary:hover { background: #633d29; border-color: #633d29; }
.app-shell { min-height: 100vh; display: flex; }
.sidebar { width: 250px; flex: 0 0 250px; background: var(--sidebar); color: #dce8f7; }
.sidebar .brand { color: white; font-weight: 700; text-decoration: none; }
.sidebar .nav-link { color: #dce8f7; border-radius: .5rem; margin: .2rem 0; }
.sidebar .nav-link:hover, .sidebar .nav-link.active { background: rgba(255,255,255,.12); color: white; }
.main-content { min-width: 0; flex: 1; }
.status-card { border: 0; border-radius: .85rem; }
.sidebar .nav-label { color: #8da4c0; font-size: .68rem; font-weight: 700; letter-spacing: .08em; margin: 1rem .75rem .3rem; text-transform: uppercase; }
.table { border-collapse: collapse; width: 100%; }
.table td, .table th { vertical-align: middle; border: 1px solid #adb5bd !important; padding: .55rem .65rem; }
.table thead th { background: #f1f3f5; font-weight: 600; }
.table-responsive { overflow-x: auto; }
.money { font-variant-numeric: tabular-nums; white-space: nowrap; }
.metric-card { border: 0; border-radius: 1rem; }
.metric-card .metric-value { font-weight: 700; font-size: 1.65rem; }
.line-item { background: #fff; border: 1px solid #dee2e6; border-radius: .75rem; padding: .85rem; margin-bottom: .75rem; }
.invoice-paper { max-width: 900px; margin: 0 auto; background: #fff; padding: 2rem; }
.summary-box { background: #f8f9fa; border-radius: .75rem; padding: 1rem; }
.summary-box > div { display: flex; justify-content: space-between; gap: 1rem; padding: .2rem 0; }
.notification-unread { border-left: 4px solid var(--accent) !important; background: #f2f7ff; }
.quick-actions .btn { min-height: 70px; display: flex; align-items: center; justify-content: center; gap: .5rem; }
@media print { .sidebar, header, .no-print { display: none !important; } .main-content, .app-shell { display: block; } .main-content { width: 100%; } body { background: #fff; } .invoice-paper { max-width: none; padding: 0; } }
@media print { .table { border-collapse: collapse !important; } .table td, .table th { border: 1px solid #333 !important; } }
@media (max-width: 767.98px) { .app-shell { display: block; } .sidebar { width: 100%; } }
