:root,[data-coreui-theme="dark"] {
  color-scheme: dark;
  --hl-blue: #168ae5;
  --hl-green: #13bd90;
  --hl-surface: #101f2d;
  --hl-border: #263c4d;
  --hl-muted: #a1b5c6;
  --cui-body-color: #e8f2f9;
  --cui-body-bg: #09141f;
  --cui-secondary-color: #a1b5c6;
  --cui-tertiary-bg: #132737;
  --cui-border-color: #263c4d;
  --cui-primary: #168ae5;
  --cui-primary-rgb: 22,138,229;
  --cui-info-rgb: 99,185,255;
  --cui-success-rgb: 72,217,174;
  --cui-link-color: #63b9ff;
  --cui-link-hover-color: #9ad2ff;
  --cui-focus-ring-color: rgba(22,138,229,.3);
}
body {
  min-height: 100vh;
  background: radial-gradient(ellipse at 0 0,rgba(22,138,229,.07),transparent 55%), #09141f;
  color: var(--cui-body-color);
  font-family: "Segoe UI",system-ui,sans-serif;
  -webkit-font-smoothing: antialiased;
}
a { color: var(--cui-link-color); text-underline-offset: 3px; }
a:hover { color: var(--cui-link-hover-color); }
h1,h2,h3,h4,h5 { font-weight: 650; letter-spacing: -.025em; }
.text-secondary,.form-text { color: var(--hl-muted) !important; }
.app-navbar {
  padding: 10px 28px;
  gap: 22px;
  background: #0d1b28;
  border-bottom: 1px solid var(--hl-border);
  position: relative;
}
.app-navbar::after {
  content: ""; position: absolute; bottom: -1px; left: 0;
  width: 250px; height: 2px;
  background: linear-gradient(90deg,var(--hl-blue),var(--hl-green));
}
.brand-frame { display: block; position: relative; width: 190px; height: 60px; overflow: hidden; flex-shrink: 0; }
.brand-image { position: absolute; width: 107%; height: auto; max-width: none; top: 50%; left: -4%; transform: translateY(-50%); }
.navbar-brand { margin: 0; padding: 0; }
.brand-caption { border-left: 1px solid var(--hl-border); padding-left: 22px; color: #b5c8d8; font-size: 11px; font-weight: 650; letter-spacing: .14em; }
.brand-caption span { display: block; color: #7e9aac; font-size: 9px; margin-top: 5px; letter-spacing: .1em; }
.app-nav-actions { display: flex; align-items: center; gap: 9px; margin-left: auto; flex-wrap: wrap; }
.account-label { display: inline-flex; align-items: center; gap: 7px; color: var(--hl-muted); font-size: 13px; margin-right: 8px; }
.account-indicator,.brand-dot { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--hl-green); flex-shrink: 0; }
.app-content { padding: 30px 28px 40px; }
.card { --cui-card-bg: var(--hl-surface); --cui-card-border-color: var(--hl-border); background: var(--hl-surface); border: 1px solid var(--hl-border); box-shadow: 0 8px 26px rgba(0,0,0,.08); }
.eyebrow { font-size: 10px; letter-spacing: .16em; color: #55c6b2; font-weight: 650; }
.form-label { color: #bed0df; font-size: 13px; font-weight: 500; }
.form-control,.form-select,.dt-input { background-color: #0a1824; border: 1px solid #30495c; border-radius: 8px; color: #e8f2f9; min-height: 40px; }
.form-control::placeholder { color: #7c96aa; opacity: 1; }
.form-control:focus,.form-select:focus { color: #f2f8fc; background-color: #0c1b28; border-color: var(--hl-blue); box-shadow: 0 0 0 3px rgba(22,138,229,.17); }
input[type="checkbox"] { accent-color: #13bd90; width: 16px; height: 16px; }
input[type="datetime-local"]::-webkit-calendar-picker-indicator { opacity: .75; }
.btn { border-radius: 8px; font-weight: 550; transition: background-color .15s,border-color .15s,box-shadow .15s; }
[data-coreui-theme="dark"] .btn-info,[data-coreui-theme="dark"] .btn-primary {
  --cui-btn-color: #fff; --cui-btn-bg: #0875c9; --cui-btn-border-color: #158ae0;
  --cui-btn-hover-color: #fff; --cui-btn-hover-bg: #0869b5; --cui-btn-hover-border-color: #168ae5;
  --cui-btn-active-color: #fff; --cui-btn-active-bg: #075c9d; --cui-btn-active-border-color: #168ae5;
  --cui-btn-disabled-color: #d3e3ed; --cui-btn-disabled-bg: #265574; --cui-btn-disabled-border-color: #365e76;
}
.btn-outline-info {
  --cui-btn-color: #75c4ff; --cui-btn-border-color: #305570;
  --cui-btn-hover-color: #ebf6ff; --cui-btn-hover-bg: #153953; --cui-btn-hover-border-color: #168ae5;
  --cui-btn-active-color: #ebf6ff; --cui-btn-active-bg: #153953; --cui-btn-active-border-color: #168ae5;
}
.btn-outline-light {
  --cui-btn-color: #bed0df; --cui-btn-border-color: #3a5265;
  --cui-btn-hover-color: #fff; --cui-btn-hover-bg: #213a4d; --cui-btn-hover-border-color: #64839a;
  --cui-btn-active-color: #fff; --cui-btn-active-bg: #213a4d; --cui-btn-active-border-color: #64839a;
}
.btn:focus-visible,a:focus-visible,summary:focus-visible { outline: 2px solid #65bdff; outline-offset: 4px; }
.alert-success { --cui-alert-color: #a3ecd4; --cui-alert-bg: #0d342b; --cui-alert-border-color: #286755; }
.alert-danger { --cui-alert-color: #ffbcc6; --cui-alert-bg: #3a1d28; --cui-alert-border-color: #79404f; }
.alert-warning { --cui-alert-color: #f6d48a; --cui-alert-bg: #352c18; --cui-alert-border-color: #756136; }
.table-dark {
  --cui-table-color: #d6e6f0; --cui-table-bg: #101f2d; --cui-table-border-color: #243c4d;
  --cui-table-striped-bg: #122635; --cui-table-striped-color: #d6e6f0;
  --cui-table-hover-bg: #19364a; --cui-table-hover-color: #f0f8ff;
}
.table { font-size: 13px; vertical-align: middle; }
.table thead { z-index: 1; }
.table th { color: #9fbccd; font-size: 11px; font-weight: 650; white-space: nowrap; padding: 13px 12px; background: #0c1c28; }
.table td { padding: 11px 12px; }
#results td:nth-child(n+2):nth-child(-n+4) { font-family: Consolas,"Courier New",monospace; font-size: 12px; }
.table-responsive { border: 1px solid var(--hl-border); border-radius: 10px; scrollbar-color: #35556a #0c1c28; }
.metrics-grid { display: grid; grid-template-columns: 1.05fr 1.5fr 1fr 1fr 1fr; gap: 20px; }
.metric-item { border-left: 2px solid #227bbb; padding-left: 13px; min-width: 0; }
.metric-item:nth-child(2n) { border-left-color: #139c80; }
.metric-item strong { display: block; margin-top: 8px; font-size: 17px; font-weight: 600; font-variant-numeric: tabular-nums; }
#lastlog { font-size: 14px; padding-top: 3px; }
.live-control { display: flex; align-items: center; gap: 9px; padding: 9px 13px; border: 1px solid #28594f; background: #0e2928; border-radius: 8px; color: #b6dfd5; font-size: 12px; }
summary { color: #d9eaf4; font-weight: 600; cursor: pointer; }
summary::marker { color: #43c6ad; }
#filters .row { align-items: end; }
.public-content { padding-top: 40px; }
.login-shell { width: 100%; max-width: 450px; margin: 0 auto; }
.login-card { padding: 32px 36px; border-radius: 18px; border-top: 2px solid #168ae5; }
.login-brand { width: 270px; max-width: 100%; height: 90px; margin: 0 auto 20px; }
.login-card .eyebrow { text-align: center; margin-bottom: 12px; }
.login-card h1 { font-size: 24px; text-align: center; margin-bottom: 10px; }
.login-description { color: var(--hl-muted); font-size: 13px; text-align: center; line-height: 1.6; margin-bottom: 28px; }
.login-card .form-control { min-height: 46px; }
.login-submit { margin-top: 8px; padding: 12px 16px; display: flex; justify-content: center; align-items: center; gap: 16px; }
.login-footer { margin-top: 26px; border-top: 1px solid var(--hl-border); padding-top: 19px; display: flex; align-items: center; justify-content: center; gap: 9px; font-size: 11px; color: #9bb4c5; }
.login-copyright { text-align: center; font-size: 11px; color: #859eaf; margin: 20px 0 0; }
.login-copyright span { margin: 0 8px; color: #35576d; }
@media (max-width: 1100px) { .brand-caption { display: none; } .metrics-grid { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (max-width: 700px) {
  .app-navbar { padding: 8px 18px 13px; gap: 2px 12px; }
  .brand-frame { width: 163px; height: 56px; }
  .app-nav-actions { gap: 7px; }
  .account-label { display: none; }
  .app-content { padding: 24px 16px 32px; }
  .metrics-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px 14px; }
  .metric-item strong { font-size: 16px; }
  #lastlog { font-size: 12px; }
  .public-content { padding-top: 28px; }
  .login-card { padding: 24px; }
  .login-brand { width: 250px; height: 84px; }
}
@media (max-width: 540px) {
  .app-navbar:has(.account-label) { justify-content: center; }
  .app-navbar:has(.account-label) .app-nav-actions { width: 100%; justify-content: center; margin-left: 0; padding-bottom: 2px; }
  .login-card h1 { font-size: 22px; }
}
@media (prefers-reduced-motion: reduce) { .btn { transition: none; } }
.record-dialog { width: min(850px,94vw); max-height: 80vh; padding: 24px; border: 1px solid var(--hl-border); border-radius: 16px; background: var(--hl-surface); color: var(--cui-body-color); }
.record-dialog::backdrop { background: rgba(0,8,15,.75); }
.record-dialog pre { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 13px; line-height: 1.7; margin: 0; }
.archive-error { max-width: 400px; white-space: normal; overflow-wrap: anywhere; }
.archive-status { white-space: nowrap; }
.alert-info { --cui-alert-color: #acd9ff; --cui-alert-bg: #102e46; --cui-alert-border-color: #2b597b; }
.app-nav-actions .btn { white-space: nowrap; }

.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.nav-icon{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.app-nav-actions .btn{display:inline-flex;align-items:center;gap:7px}.account-label{max-width:130px;overflow:hidden;text-overflow:ellipsis}.management-actions{display:flex;flex-wrap:wrap;gap:10px}
