/* Black surfaces; semantic status and chart colours belong to the page. */
:root{color-scheme:dark;--bg:#000;--bg-dark:#000;--card:#080808;--panel:#080808;--panel-2:#101010;--border:#333;--text:#eee;--muted:#aaa;--primary:#eee;--accent:#ddd;--bs-primary:#ddd;--bs-body-bg:#000;--bs-body-color:#eee}
html,body{background:#000!important;color:#eee!important;accent-color:#ddd}
body{background-image:none!important}
.sidebar,.topbar,.header,.navbar,.leftside-menu,.topnav{background:#000!important;border-color:#303030!important}
.card,.panel,.modal-content,.dropdown-menu,.popover,.login-card,.auth-card,.metric,.chat-box{background:#080808!important;background-image:none!important;border-color:#333!important;color:#eee!important}
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),select,textarea,.form-control,.form-select{font:inherit;color:#eee!important;background:#151515!important;border:1px solid #555!important;border-radius:6px;min-height:36px;padding:7px 10px;max-width:100%;box-sizing:border-box;color-scheme:dark}
input::placeholder,textarea::placeholder{color:#999!important;opacity:1}
option,optgroup{color:#eee;background:#151515}
input::-webkit-calendar-picker-indicator{filter:grayscale(1);opacity:.9;cursor:pointer}
button,.btn,input[type=submit],input[type=button],input::file-selector-button{font:inherit;background:#202020!important;color:inherit;border:1px solid #666!important;border-radius:6px;min-height:34px;padding:6px 10px;box-shadow:none!important}
button:hover,.btn:hover{background:#333!important;border-color:#ddd!important}
:focus-visible{outline:2px solid #fff!important;outline-offset:3px!important;box-shadow:none!important}
:disabled,[aria-disabled=true]{opacity:.5!important;cursor:not-allowed!important;border-style:dashed!important}
a{color:inherit}a:hover{text-decoration:underline}
.nav a.active,.nav-link.active,[aria-current=page]{background:#282828!important;color:#fff!important;border-left:3px solid #fff}
.nav a:hover{background:#1b1b1b!important}
.text-muted,.card-sub,.muted{color:#aaa!important}
.alert-danger,.critical,.error-banner{border-style:double!important;border-width:3px!important}
.alert-warning,.warning{border-style:dashed!important}
.sam-icon{display:inline-block;width:20px;height:20px;min-width:20px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.card-icon-box .sam-icon{width:36px;height:36px}.metric-icon.sam-icon{width:26px;height:26px}.title-icon.sam-icon{width:22px;height:22px}
.sam-brand{filter:grayscale(1);object-fit:contain}
.nav .sam-icon{margin-right:8px}
.apexcharts-tooltip,.apexcharts-menu{background:#191919!important;color:#eee!important;border-color:#666!important}
.apexcharts-tooltip-title{background:#252525!important;border-color:#555!important}
.apexcharts-series:nth-of-type(2) .apexcharts-line{stroke-dasharray:6 4!important}
.apexcharts-series:nth-of-type(3) .apexcharts-line{stroke-dasharray:2 4!important}
.apexcharts-series:nth-of-type(4) .apexcharts-line{stroke-dasharray:8 3 2 3!important}
::selection{color:#000;background:#ddd}
@media(max-width:600px){input,select,textarea,button{font-size:16px}.sam-icon{width:18px;height:18px}input[type=datetime-local],input[type=date]{min-width:0;width:auto;max-width:100%}}
.content-page,.page-content,.wrapper,.footer,.offcanvas,.app-menu,.topbar-custom,.page-title-box{background:#000!important;color:#eee!important}
.card-header,.card-body,.card-footer,.modal-header,.modal-footer{background:transparent!important;border-color:#333!important}
.table{--bs-table-bg:#111;--bs-table-color:#eee;--bs-table-striped-bg:#1b1b1b;--bs-table-hover-bg:#252525;--bs-table-border-color:#333;color:#eee!important}
/* Login icons reserve their own space; the global input shorthand must not win. */
.input-wrap input:not([type=checkbox]):not([type=radio]):not([type=hidden]){padding:0 54px 0 46px;height:54px}
.input-wrap>.icon{width:20px;height:20px;left:15px;pointer-events:none}
.input-wrap>.toggle-pass{width:36px;min-width:36px;height:36px;padding:0;right:8px}
/* One navigation scale across every page using the shared sidebar. */
.sidebar{box-sizing:border-box!important;padding:20px 14px 16px!important;overflow-y:auto}
.sidebar .brand{padding:4px 8px 22px!important;gap:12px!important;border-bottom:0!important;flex-shrink:0}
.sidebar .brand-mark,.sidebar .brand-mark img{width:48px!important;height:48px!important;flex-shrink:0}
.sidebar .brand h1{font-size:15px!important;line-height:1.2!important;margin:0!important}
.sidebar .brand small{font-size:10px!important;line-height:1.4!important}
.sidebar .nav{padding:0!important;display:block!important;flex:initial!important;overflow:visible!important}
.sidebar .nav-title{font-size:10px!important;letter-spacing:.14em!important;margin:18px 10px 7px!important}
.sidebar .nav a{box-sizing:border-box!important;display:flex!important;align-items:center!important;gap:10px!important;font-size:13px!important;line-height:18px!important;min-height:38px!important;padding:10px 12px!important;margin:3px 0!important;border-radius:9px!important}
.sidebar .nav .sam-icon{width:20px!important;height:20px!important;margin-right:0!important}
.sidebar .sidebar-bottom{margin-top:auto!important;padding:12px 9px!important;font-size:11px!important}
@media(min-width:901px){
 :root{--sidebar:260px}
 .sidebar{width:260px!important;display:flex!important;transform:none!important}
 body:has(.sidebar) .main{margin-left:260px!important;width:calc(100% - 260px)!important}
}
@media(max-width:900px){
 .sidebar{width:min(290px,86vw)!important;display:flex!important;transform:translateX(-102%)}
 .sidebar.mobile-open{transform:translateX(0)}
 body:has(.sidebar) .main{margin-left:0!important;width:100%!important}
}
