
:root{
  --bg:#f3f6f8;
  --surface:#ffffff;
  --surface-soft:#f8fafb;
  --line:#dfe7ec;
  --line-strong:#cdd9e1;
  --ink:#163244;
  --ink-2:#526d7e;
  --ink-3:#7b919f;
  --accent:#0f7fa7;
  --accent-soft:#e8f5fa;
  --good:#198a67;
  --good-soft:#e9f7f1;
  --warn:#a86b12;
  --warn-soft:#fff5df;
  --bad:#b54b4b;
  --shadow:0 10px 30px rgba(33,61,78,.07);
}

body{
  background:var(--bg)!important;
  color:var(--ink)!important;
  font-size:16px!important;
}

.app-layout{
  min-height:100vh;
  background:var(--bg)!important;
}

.sidebar{
  width:250px!important;
  background:#fff!important;
  border-right:1px solid var(--line)!important;
  box-shadow:none!important;
  padding:20px 14px!important;
}

.brand{
  padding:10px 10px 20px!important;
  border-bottom:1px solid var(--line)!important;
  color:var(--ink)!important;
}
.brand strong{color:var(--ink)!important;font-size:1.05rem!important}
.brand span{color:var(--ink-3)!important;font-size:.78rem!important}

.nav-list{gap:7px!important;margin-top:18px!important}
.nav-item{
  min-height:48px!important;
  padding:11px 12px!important;
  border:1px solid transparent!important;
  border-radius:12px!important;
  color:var(--ink-2)!important;
  background:transparent!important;
  font-size:.9rem!important;
  font-weight:700!important;
  text-decoration:none!important;
}
.nav-item:hover{
  background:#f5f9fb!important;
  color:var(--ink)!important;
}
.nav-item.active{
  color:var(--accent)!important;
  background:var(--accent-soft)!important;
  border-color:#d2eaf3!important;
}
.nav-icon{
  width:30px!important;
  height:30px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:9px!important;
  background:#f0f4f6!important;
  color:var(--ink-3)!important;
  font-size:.7rem!important;
}
.nav-item.active .nav-icon{
  background:#d7edf6!important;
  color:var(--accent)!important;
}
.nav-link-item{display:flex!important;align-items:center!important;gap:10px!important}

.sidebar-status{
  background:var(--good-soft)!important;
  border:1px solid #d3eadf!important;
  border-radius:12px!important;
  padding:12px!important;
}
.sidebar-status strong{color:var(--good)!important}
.sidebar-status span{color:#668176!important;font-size:.76rem!important}
.fleet-link{
  color:var(--accent)!important;
  font-size:.84rem!important;
  padding:12px!important;
}

.workspace{background:var(--bg)!important}
.workspace-header{
  background:#fff!important;
  border-bottom:1px solid var(--line)!important;
  padding:24px 30px!important;
  box-shadow:0 4px 16px rgba(32,58,73,.035)!important;
}
.workspace-header h1{
  color:var(--ink)!important;
  font-size:clamp(1.65rem,2.6vw,2.35rem)!important;
  letter-spacing:-.025em!important;
}
.page-kicker{
  color:var(--accent)!important;
  font-size:.75rem!important;
  font-weight:800!important;
  letter-spacing:.06em!important;
}
.header-meta{gap:20px!important}
.header-meta span{color:var(--ink-3)!important;font-size:.8rem!important}
.header-meta strong{color:var(--ink-2)!important;font-size:.84rem!important}

.language-select span{color:var(--ink-3)!important;font-size:.72rem!important}
.language-select select{
  color:var(--ink)!important;
  background:#fff!important;
  border:1px solid var(--line-strong)!important;
  min-height:42px!important;
  border-radius:10px!important;
}

.status-pill{
  min-height:42px!important;
  padding:10px 15px!important;
  border-radius:999px!important;
  font-size:.82rem!important;
  font-weight:800!important;
}

.content{
  max-width:1380px!important;
  padding:28px 30px 50px!important;
}

.section-title{
  margin-bottom:18px!important;
}
.section-title h2{
  color:var(--ink)!important;
  font-size:1.55rem!important;
}
.simple-badge{
  color:var(--good)!important;
  background:var(--good-soft)!important;
  border:1px solid #d1eadf!important;
  font-size:.75rem!important;
}

.card{
  background:var(--surface)!important;
  border:1px solid var(--line)!important;
  border-radius:18px!important;
  box-shadow:var(--shadow)!important;
  padding:24px!important;
}

.card-label{
  color:var(--ink-3)!important;
  font-size:.75rem!important;
  font-weight:800!important;
  letter-spacing:.055em!important;
}

.overview-layout{
  grid-template-columns:minmax(320px,.85fr) minmax(0,1.6fr)!important;
  gap:18px!important;
}

.hero-health{
  min-height:310px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
.health-value strong{
  color:var(--ink)!important;
  font-size:clamp(4.2rem,7vw,7rem)!important;
  line-height:.95!important;
  letter-spacing:-.06em!important;
}
.health-value span{
  color:var(--ink-3)!important;
  font-size:1.35rem!important;
}
.health-label{
  margin-top:14px!important;
  font-size:1rem!important;
  font-weight:800!important;
}
.hero-health p{
  max-width:530px!important;
  color:var(--ink-2)!important;
  font-size:.98rem!important;
  line-height:1.65!important;
}

.overview-cards{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}
.summary-card{
  min-height:145px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
.summary-card>span{
  color:var(--ink-3)!important;
  font-size:.75rem!important;
  font-weight:800!important;
}
.summary-card strong{
  margin-top:8px!important;
  color:var(--ink)!important;
  font-size:1.05rem!important;
  line-height:1.35!important;
}
.summary-card small{
  margin-top:8px!important;
  color:var(--ink-3)!important;
  font-size:.8rem!important;
}

.simple-report{
  margin-top:18px!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:24px!important;
}
.simple-report h3{
  color:var(--ink)!important;
  font-size:1.25rem!important;
}
.simple-report p{
  color:var(--ink-2)!important;
  font-size:.95rem!important;
  line-height:1.55!important;
}

.primary-button{
  min-height:44px!important;
  padding:10px 16px!important;
  border-radius:11px!important;
  background:var(--accent)!important;
  color:#fff!important;
  font-size:.86rem!important;
  font-weight:800!important;
}

.analysis-grid,.live-grid,.profile-grid,.history-grid,.maintenance-grid{
  gap:16px!important;
}
.metric-value,
.sensor-value,
.score-value{
  color:var(--ink)!important;
  font-size:clamp(1.6rem,2.4vw,2.35rem)!important;
}
.card p,.card li,.card td,.card label{
  color:var(--ink-2)!important;
  font-size:.9rem!important;
  line-height:1.55!important;
}
.card h3,.card h4{color:var(--ink)!important}

canvas{background:#fff!important}
.chart-card{min-height:350px!important}

table{
  background:#fff!important;
  border-radius:12px!important;
  overflow:hidden!important;
}
th{
  color:var(--ink-3)!important;
  background:#f7fafb!important;
  font-size:.75rem!important;
}
td{
  color:var(--ink-2)!important;
  font-size:.84rem!important;
}
th,td{
  padding:12px!important;
  border-color:var(--line)!important;
}

.legacy-global-panel{display:none!important}

@media(max-width:1050px){
  .sidebar{width:220px!important}
  .overview-layout{grid-template-columns:1fr!important}
}
@media(max-width:780px){
  .app-layout{display:block!important}
  .sidebar{width:auto!important;position:relative!important}
  .workspace-header,.content{padding-left:18px!important;padding-right:18px!important}
  .overview-cards{grid-template-columns:1fr!important}
  .simple-report{align-items:flex-start!important;flex-direction:column!important}
}


/* Sentinel V6 maintenance */
.v6-maintenance-grid { align-items: start; }
.v6-calibration-form { display: grid; gap: 10px; margin-top: 14px; }
.v6-calibration-form input, .v6-calibration-form select { width: 100%; box-sizing: border-box; padding: 10px 12px; border: 1px solid rgba(120,145,170,.28); border-radius: 8px; background: rgba(255,255,255,.04); color: inherit; }
.v6-status-line { display:flex; justify-content:space-between; gap:12px; padding:10px 0; margin:8px 0; border-top:1px solid rgba(120,145,170,.18); border-bottom:1px solid rgba(120,145,170,.18); }
.v6-check { display:block; margin:5px 0; }
.v6-check.ok { opacity:.82; }
.v6-check.bad { font-weight:700; }
.v6-calibration-history { margin-top: 18px; }
.v6-calibration-history table { width:100%; border-collapse:collapse; }
.v6-calibration-history th, .v6-calibration-history td { text-align:left; padding:10px 12px; border-bottom:1px solid rgba(120,145,170,.15); }
.secondary-button { display:inline-flex; align-items:center; justify-content:center; padding:9px 12px; border:1px solid rgba(120,145,170,.35); border-radius:8px; text-decoration:none; background:transparent; color:inherit; cursor:pointer; margin-top:10px; }
