:root { --barq-sidebar: 15rem; }
body { background: #f4f6f9; }
.sidebar { width: var(--barq-sidebar); background: linear-gradient(180deg, #14233c 0%, #0d1728 100%); }
.sidebar .container-fluid { min-height: 100vh; align-items: stretch; }
.sidebar .navbar-brand { padding-top: 1.25rem; padding-bottom: 1.25rem; }
.sidebar .navbar-brand a { display: flex; align-items: center; gap: .7rem; color: #fff; text-decoration: none; }
.brand-mark { display: inline-grid; place-items: center; width: 2rem; height: 2rem; border-radius: .55rem; background: #4f8cff; color: white; font-weight: 800; box-shadow: 0 .35rem 1rem rgba(79, 140, 255, .3); }
.brand-mark-lg { width: 3rem; height: 3rem; font-size: 1.25rem; }
.sidebar .nav-link { border-radius: .5rem; margin: .12rem .6rem; }
.sidebar .nav-link.active { background: rgba(255,255,255,.12); }
.nav-link-icon { width: 1.75rem; display: inline-block; text-align: center; opacity: .85; }
.sidebar-footer { padding: 1rem; border-top: 1px solid rgba(255,255,255,.1); }
.top-header { min-height: 5rem; background: #fff; border-bottom: 1px solid #e6e9ef; }
.page-body { padding-bottom: 3rem; }
.metric-card { border: 0; box-shadow: 0 1px 3px rgba(24,36,51,.08); }
.chart-wrap { position: relative; min-height: 285px; }
.chart-wrap canvas { max-height: 285px; }
.chart-fallback { overflow: auto; font-size: .8125rem; }
.chart-fallback table { width: 100%; border-collapse: collapse; }
.chart-fallback th, .chart-fallback td { padding: .35rem .5rem; border-bottom: 1px solid #e6e9ef; text-align: left; }
.charts-ready .chart-fallback { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.run-error { max-height: 32rem; overflow: auto; white-space: pre-wrap; word-break: break-word; color: inherit; }
.error-cell { max-width: 26rem; }
.error-detail td { border-top: 0; padding-top: 0; }
.empty-state { color: #667085; text-align: center; padding: 2.5rem !important; }
.message-content { display: block; max-width: 38rem; max-height: 12rem; overflow: auto; white-space: pre-wrap; word-break: break-word; }
.login-shell { min-height: 100vh; display: grid; align-items: center; background: radial-gradient(circle at 25% 10%, #dbe8ff, transparent 35%), #f5f7fb; }
@media (min-width: 992px) { .page-wrapper { margin-left: var(--barq-sidebar); } }
@media (max-width: 991.98px) { .sidebar { width: 100%; } .sidebar .container-fluid { min-height: auto; } .sidebar-footer { margin-top: 1rem !important; } .chart-wrap { min-height: 235px; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
