:root{
  --bg:#f6f7f8;
  --panel:#ffffff;
  --line:#ebe5dd;
  --text:#17202a;
  --muted:#6c7789;
  --brand:#d97a2f;
  --brand-dark:#b9651d;
  --brand-soft:#fff2e7;
  --sidebar:#111827;
  --sidebar-hover:#1a2333;
  --sidebar-card:#172131;
  --sidebar-border:rgba(255,255,255,.06);
  --sidebar-text:#e6ecf5;
  --sidebar-muted:#9eabc0;
  --shadow:0 8px 26px rgba(15,23,42,.07);
  --radius:18px;
  --sidebar-w:268px;
  --sidebar-collapsed-w:78px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text);font-size:15px}
a{color:inherit}
.app{display:flex;min-height:100vh}
.sidebar{
  width:var(--sidebar-w);
  background:linear-gradient(180deg,#121a28 0%, #0f1623 100%);
  color:#fff;
  padding:16px 12px 12px;
  position:fixed;
  top:0;bottom:0;left:0;
  z-index:50;
  transition:width .22s ease,transform .22s ease;
  display:flex;
  flex-direction:column;
  border-right:1px solid var(--sidebar-border);
}
.brand{display:flex!important;align-items:center!important;gap:12px!important;padding:4px 8px 14px!important;margin:0 0 8px!important;border-bottom:1px solid rgba(255,255,255,.05)}
.brand img,.brand-logo{width:48px!important;height:48px!important;min-width:48px!important;object-fit:cover!important;border-radius:14px!important;display:block!important;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.brand .title{font-size:15px!important;font-weight:800!important;line-height:1.15!important;color:#fff!important;letter-spacing:.01em}
.brand .subtitle{font-size:12px!important;color:var(--sidebar-muted)!important;margin-top:4px!important;line-height:1.25!important}
.nav-group{
  flex:1;
  overflow-y:auto;
  overflow-x:hidden;
  padding:8px 4px 12px;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.18) transparent;
}
.nav-group::-webkit-scrollbar{width:8px}
.nav-group::-webkit-scrollbar-track{background:transparent}
.nav-group::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:999px}
.sidebar a{
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--sidebar-text);
  text-decoration:none;
  padding:11px 12px;
  border-radius:14px;
  margin-bottom:6px;
  transition:background .15s ease,color .15s ease,transform .15s ease,border-color .15s ease;
  white-space:nowrap;
  border:1px solid transparent;
}
.sidebar a:hover{background:rgba(255,255,255,.05);color:#fff;border-color:rgba(255,255,255,.03)}
.sidebar a.active{background:var(--brand-soft);color:var(--brand-dark);font-weight:700;border-color:#f2d3bb;box-shadow:inset 0 0 0 1px rgba(217,122,47,.05)}
.sidebar .logout{margin-top:10px;color:#ffd7d3}
.nav-icon{
  width:20px;
  min-width:20px;
  height:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#c1cbda;
}
.nav-icon svg{width:18px;height:18px;display:block}
.sidebar a.active .nav-icon{color:var(--brand-dark)}
.sidebar a:hover .nav-icon{color:#fff}
.nav-label{font-size:14px;font-weight:600;letter-spacing:.01em}
.content{margin-left:var(--sidebar-w);width:calc(100% - var(--sidebar-w));padding:24px;transition:margin-left .22s ease,width .22s ease}
.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}
.topbar-left{display:flex;align-items:flex-start;gap:14px}.topbar h1{font-size:28px;margin:0 0 5px;line-height:1.15}.page-subtitle{color:var(--muted);font-size:14px}
.icon-btn{background:#fff!important;color:var(--text)!important;border:1px solid var(--line)!important;box-shadow:var(--shadow)!important;border-radius:12px!important;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;font-size:20px;padding:0!important}
.userbox{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:10px 14px;box-shadow:var(--shadow);min-width:140px;text-align:right}.userbox .role{font-size:12px;color:var(--muted);margin-top:2px}
.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed-w)}
.sidebar-collapsed .content{margin-left:var(--sidebar-collapsed-w);width:calc(100% - var(--sidebar-collapsed-w))}
.sidebar-collapsed .brand-text,.sidebar-collapsed .nav-label{display:none}
.sidebar-collapsed .brand{justify-content:center;padding-left:0!important;padding-right:0!important}
.sidebar-collapsed .sidebar a{justify-content:center;padding:11px 0}
.sidebar-collapsed .nav-group{padding-left:0;padding-right:0}
.sidebar-overlay{display:none}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:18px}.card,.form,.table-wrap{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card{padding:18px;margin-bottom:18px}.metric{position:relative;overflow:hidden}.metric:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--brand)}.metric .label{color:var(--muted);font-size:14px}.metric .value{font-size:30px;font-weight:800;margin-top:8px}.metric .meta{font-size:12px;color:var(--muted);margin-top:8px;line-height:1.25}.quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-bottom:18px}.quick-action{display:block!important;text-decoration:none!important;color:var(--text)!important;padding:16px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.quick-action:hover{border-color:#e8bd98;background:#fffaf5}.quick-action .title{font-size:16px;font-weight:800;margin-bottom:6px}.quick-action .desc{font-size:13px;color:var(--muted);line-height:1.35}.table-wrap{overflow:auto;margin-bottom:18px}.table-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 18px 0}.table-head h2,.card h2,.form h2{margin:0 0 12px;font-size:22px}table{width:100%;border-collapse:collapse}th,td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:#fbfaf8;color:#657084;font-size:12px;text-transform:uppercase;letter-spacing:.02em}tr:hover td{background:#fffdf9}.btn,a.btn,button{border:0;background:var(--brand);color:#fff!important;padding:10px 14px;border-radius:12px;text-decoration:none!important;display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-weight:700;box-shadow:0 4px 12px rgba(217,121,45,.20)}.btn:hover,a.btn:hover,button:hover{background:var(--brand-dark)}.btn.secondary{background:#fff;color:var(--text)!important;border:1px solid var(--line);box-shadow:none}.btn.secondary:hover{background:#faf7f4}.btn.danger{background:#d92d20}.btn.success{background:#1f7a4d}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.form{padding:18px;max-width:none;margin-bottom:18px}.form.compact{max-width:780px}.form label{display:block;margin-top:12px;color:#475467;font-size:14px;font-weight:700}.form input,.form select,.form textarea,.login-box input{width:100%;padding:11px 12px;border:1px solid #d5dbe4;border-radius:12px;margin-top:6px;background:#fff}.form input:focus,.form select:focus,.form textarea:focus,.login-box input:focus{outline:none;border-color:#e7a36c;box-shadow:0 0 0 4px rgba(217,121,45,.12)}.form textarea{min-height:88px;resize:vertical}.toolbar-form{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin-bottom:0}.toolbar-form .field{min-width:220px;flex:1}.toolbar-form label{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.toolbar-form input,.toolbar-form select{width:100%;padding:10px 12px;border:1px solid #d5dbe4;border-radius:12px;background:#fff}.stat-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:0;padding:0;list-style:none}.stat-list li{padding:12px;border-radius:14px;background:#fcfbfa;border:1px solid var(--line)}.stat-list .k{display:block;color:var(--muted);font-size:12px;margin-bottom:5px}.stat-list .v{font-size:18px;font-weight:800}.data-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.data-item{padding:12px;border:1px solid var(--line);border-radius:14px;background:#fcfbfa}.data-item .k{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.data-item .v{font-size:14px;font-weight:700;word-break:break-word}.badge{display:inline-block;padding:6px 10px;border-radius:999px;background:#eef2f6;font-size:12px;font-weight:800;color:#344054}.badge.free,.badge.active,.badge.trusted,.badge.closed,.badge.ready{background:#e8f7ef;color:#1f7a4d}.badge.on_line,.badge.awaiting_return,.badge.in_rental,.badge.extended{background:#e8f0ff;color:#1d4ed8}.badge.repair,.badge.reserve,.badge.new,.badge.inspection,.badge.in_repair,.badge.waiting_parts{background:#fff4d6;color:#935f09}.badge.overdue,.badge.problem,.badge.debtor,.badge.blocked,.badge.written_off,.badge.archived{background:#fde8e7;color:#b42318}.muted,.note{color:var(--muted)}.note{font-size:14px;line-height:1.45;margin-bottom:8px}.alert{padding:12px;border-radius:12px;background:#fde8e7;color:#b42318;margin-bottom:12px;border:1px solid #f3c8c5}.success{padding:12px;border-radius:12px;background:#e8f7ef;color:#1f7a4d;margin-bottom:12px;border:1px solid #cdebdc}.empty{padding:18px;color:var(--muted)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.three-col{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:18px}.four-col{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.inline-links{display:flex;gap:8px;flex-wrap:wrap}.doc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.doc-card{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fcfbfa}.doc-card img{width:100%;max-height:150px;object-fit:cover;border-radius:10px;margin-bottom:8px}.health-good{color:#1f7a4d}.health-warn{color:#935f09}.health-bad{color:#b42318}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:radial-gradient(circle at top,#343b48 0%,#151b26 56%,#111722 100%)}.login-box{width:390px;background:white;padding:28px;border-radius:24px;box-shadow:0 20px 60px rgba(0,0,0,.24)}.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:18px}.login-brand img{width:58px;height:58px;border-radius:16px;object-fit:cover}.login-brand .title{font-size:22px;font-weight:800;line-height:1.1}.login-brand .subtitle{color:var(--muted);font-size:13px;margin-top:4px}.login-box button{width:100%;margin-top:16px}.footer-note{font-size:12px;color:var(--muted);margin-top:14px}
@media(max-width:980px){.sidebar{transform:translateX(-105%);width:var(--sidebar-w)}.sidebar-mobile-open .sidebar{transform:translateX(0)}.sidebar-mobile-open .sidebar-overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:40}.content,.sidebar-collapsed .content{margin-left:0;width:100%;padding:18px}.sidebar-collapsed .sidebar{width:var(--sidebar-w)}.sidebar-collapsed .brand-text,.sidebar-collapsed .nav-label{display:block}.sidebar-collapsed .brand{justify-content:flex-start}.sidebar-collapsed .sidebar a{justify-content:flex-start;padding:11px 12px}.two-col,.three-col,.four-col,.data-list{grid-template-columns:1fr}.topbar{align-items:flex-start}.userbox{text-align:left}.toolbar-form{display:block}.toolbar-form .field{margin-bottom:10px}.grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}}
@media(min-width:981px){.sidebar-collapsed .sidebar{overflow:visible}.sidebar-collapsed .sidebar:hover{width:var(--sidebar-w);box-shadow:18px 0 45px rgba(15,23,42,.24)}.sidebar-collapsed .sidebar:hover .brand{justify-content:flex-start;padding-left:8px!important;padding-right:8px!important}.sidebar-collapsed .sidebar:hover .brand-text,.sidebar-collapsed .sidebar:hover .nav-label{display:block}.sidebar-collapsed .sidebar:hover a{justify-content:flex-start;padding:11px 12px}.sidebar-collapsed .sidebar:hover .nav-group{padding-left:4px;padding-right:4px}}

/* V1.5.4: compact icons and clickable dashboard cards */
.sidebar{--sidebar-w:260px;--sidebar-collapsed-w:70px}
.nav-group{padding:7px 3px 12px}
.sidebar a{gap:10px;padding:10px 11px;border-radius:13px;margin-bottom:4px}
.nav-icon{width:18px;min-width:18px;height:18px}
.nav-icon svg{width:16px;height:16px;stroke-width:1.75}
.nav-label{font-size:13.5px;font-weight:600}
.brand img,.brand-logo{width:44px!important;height:44px!important;min-width:44px!important;border-radius:13px!important}
.brand .title{font-size:14.5px!important}.brand .subtitle{font-size:11.5px!important}
.sidebar-collapsed .sidebar a{padding:10px 0}.sidebar-collapsed .brand-logo{width:42px!important;height:42px!important;min-width:42px!important}
.metric-link{text-decoration:none!important;color:var(--text)!important;display:block;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;background:#fff}
.metric-link:hover{transform:translateY(-2px);border-color:#e2b58d;box-shadow:0 12px 32px rgba(15,23,42,.10)}
.metric-link:after{content:"Открыть";position:absolute;right:14px;bottom:12px;font-size:11px;color:var(--brand-dark);opacity:0;transition:opacity .15s ease}
.metric-link:hover:after{opacity:1}.metric-link .meta{padding-right:48px}
.clean-head{padding:0 0 12px!important;margin-bottom:0}.card .table-head.clean-head h2{margin:0}
.health-links li{padding:0!important}.stat-link{display:block;padding:12px;text-decoration:none!important;color:var(--text)!important;border-radius:14px}.stat-link:hover{background:#fff8f1}
.dashboard-shortcuts .quick-action{display:flex!important;gap:12px;align-items:flex-start;padding:15px}.dashboard-shortcuts .quick-action .title{font-size:15.5px;margin-bottom:5px}.dashboard-shortcuts .quick-action .desc{font-size:13px}.qa-icon{width:30px;height:30px;min-width:30px;border-radius:10px;background:var(--brand-soft);color:var(--brand-dark);display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;border:1px solid #f0d2ba}
.dashboard-metrics{grid-template-columns:repeat(auto-fit,minmax(165px,1fr))}
@media(min-width:981px){.sidebar-collapsed .sidebar:hover a{padding:10px 11px}.sidebar-collapsed .sidebar:hover .nav-group{padding-left:3px;padding-right:3px}}


/* V1.5.6 — sidebar without logo + cleaner operational dashboard */
.brand.brand-no-logo{
  display:flex!important;
  align-items:flex-start!important;
  padding:6px 8px 14px!important;
  margin:0 0 8px!important;
  min-height:72px;
}
.brand-no-logo .brand-text{display:block}
.brand-no-logo .title{
  font-size:18px!important;
  line-height:1.12!important;
  letter-spacing:.01em;
}
.brand-no-logo .subtitle{
  font-size:12px!important;
}
.sidebar-collapsed .brand.brand-no-logo{
  min-height:18px;
  padding:0 0 10px!important;
  margin:0 0 8px!important;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.sidebar-collapsed .brand-no-logo .brand-text{display:none!important}
.sidebar-collapsed .sidebar:hover .brand.brand-no-logo{
  min-height:72px;
  padding:6px 8px 14px!important;
}
.sidebar-collapsed .sidebar:hover .brand-no-logo .brand-text{display:block!important}
.nav-icon{
  width:18px!important;
  min-width:18px!important;
  height:18px!important;
}
.nav-icon svg{
  width:16px!important;
  height:16px!important;
  stroke-width:1.7;
}
.sidebar a{
  gap:11px!important;
}
.nav-label{
  font-size:14px!important;
}
.dashboard-shortcuts{display:none!important}
.metric-link,.stat-link{
  text-decoration:none!important;
  color:inherit!important;
}
.metric-link:hover{
  transform:translateY(-1px);
  border-color:#e4c8b2;
}
.health-links .stat-link{
  display:block;
  width:100%;
}
.dashboard-health{
  margin-bottom:18px;
}
.clean-head{
  padding:0!important;
  margin-bottom:12px;
}

/* V1.6 — Visual dashboard with clickable fleet donut + stable sidebar brand */
:root{--sidebar-w:276px;--sidebar-collapsed-w:78px;--brand:#f97316;--brand-dark:#c85f11;--brand-soft:#fff1e6;--sidebar:#071a33;--sidebar-hover:#102848;}
body{background:#f5f7fb;color:#101828}
.sidebar{background:linear-gradient(180deg,#071a33 0%,#06172d 100%)!important;border-right:1px solid rgba(255,255,255,.06);padding:18px 12px 14px!important;}
.brand.brand-v16{display:flex!important;align-items:center!important;gap:12px!important;height:76px!important;min-height:76px!important;padding:0 8px 16px!important;margin:0 0 10px!important;border-bottom:1px solid rgba(255,255,255,.07)!important;overflow:hidden!important;}
.brand-mark{width:42px;min-width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#ff8a1d,#f36b09);display:inline-flex;align-items:center;justify-content:center;color:#071a33;box-shadow:0 10px 24px rgba(249,115,22,.22)}
.brand-mark svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.brand-v16 .brand-text{display:block!important;white-space:nowrap;line-height:1.12;transition:none!important;overflow:hidden}
.brand-v16 .title{font-size:18px!important;font-weight:850!important;line-height:1.08!important;color:#fff!important;letter-spacing:.01em;margin:0!important;}
.brand-v16 .accent{font-size:14px;font-weight:800;color:#ff8a1d;margin-top:3px;line-height:1.1}
.sidebar-collapsed .brand.brand-v16{height:76px!important;min-height:76px!important;justify-content:center!important;padding:0 0 16px!important;margin:0 0 10px!important;}
.sidebar-collapsed .brand-v16 .brand-text{display:block!important;opacity:0!important;width:0!important;min-width:0!important;pointer-events:none!important;}
.sidebar-collapsed .sidebar:hover .brand.brand-v16{justify-content:flex-start!important;padding:0 8px 16px!important;}
.sidebar-collapsed .sidebar:hover .brand-v16 .brand-text{opacity:1!important;width:auto!important;min-width:0!important;}
.nav-group{padding:8px 2px 12px!important;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent}
.nav-group::-webkit-scrollbar{width:6px}.nav-group::-webkit-scrollbar-track{background:transparent}.nav-group::-webkit-scrollbar-thumb{background:rgba(255,255,255,.22);border-radius:999px}
.sidebar a{height:46px;padding:0 14px!important;gap:12px!important;border-radius:12px!important;margin-bottom:5px!important;color:#d7e0ee!important;border:1px solid transparent!important;background:transparent!important;text-decoration:none!important}
.sidebar a:hover{background:rgba(255,255,255,.07)!important;color:#fff!important;border-color:rgba(255,255,255,.04)!important}
.sidebar a.active{background:rgba(249,115,22,.13)!important;color:#ff8a1d!important;border-left:3px solid #ff8a1d!important;font-weight:800!important;box-shadow:none!important}
.nav-icon{width:20px!important;min-width:20px!important;height:20px!important;color:currentColor!important}.nav-icon svg{width:19px!important;height:19px!important;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.nav-icon svg circle[fill]{fill:currentColor}.nav-label{font-size:14px!important;font-weight:650!important;letter-spacing:.01em!important}.sidebar-collapsed .sidebar a{justify-content:center!important;padding:0!important}.sidebar-collapsed .sidebar:hover a{justify-content:flex-start!important;padding:0 14px!important}.sidebar-collapsed .nav-label{display:none!important}.sidebar-collapsed .sidebar:hover .nav-label{display:inline!important}
.topbar{align-items:center}.topbar h1{font-size:30px}.icon-btn{border-radius:14px!important;background:#fff!important;color:#101828!important}.userbox{border-radius:18px;padding:12px 18px}.content{padding:24px 28px!important}.card,.table-wrap,.form{border-color:#e5e9f2!important;box-shadow:0 8px 28px rgba(16,24,40,.06)!important}.btn.secondary{border-color:#e5e9f2!important}.dashboard-metrics{grid-template-columns:repeat(6,minmax(150px,1fr));gap:16px}.kpi-card{display:flex!important;align-items:center;gap:14px;min-height:116px;border-radius:16px!important;padding:18px!important;position:relative;overflow:hidden}.kpi-card:before{display:none!important}.kpi-card:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(16,24,40,.10)!important}.kpi-icon{width:48px;height:48px;min-width:48px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}.kpi-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.kpi-blue{background:#eaf3ff;color:#2f80ed}.kpi-green{background:#e9f8ee;color:#16a34a}.kpi-orange{background:#fff0e4;color:#f97316}.kpi-red{background:#feeceb;color:#ef4444}.metric .label{font-size:13px;color:#667085}.metric .value{font-size:28px;font-weight:850;color:#101828}.metric .meta{font-size:12px;color:#667085;padding-right:0!important}.metric-link:after{display:none!important}.dashboard-main-grid{display:grid;grid-template-columns:minmax(560px,1.35fr) minmax(360px,.85fr);gap:18px;margin-bottom:18px}.fleet-chart-card{padding:22px!important}.card-headline{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.card-headline h2{margin:0 0 6px!important;font-size:21px}.small-note{font-size:13px}.fleet-chart-layout{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(300px,1fr);gap:22px;align-items:center}.donut-wrap{position:relative;width:min(340px,100%);aspect-ratio:1/1;margin:auto}.donut-chart{width:100%;height:100%;display:block;overflow:visible}.donut-bg{fill:none;stroke:#edf2f7;stroke-width:7}.donut-segment{fill:none;stroke-width:7;transform:rotate(-90deg);transform-origin:50% 50%;transition:stroke-width .15s ease,opacity .15s ease;cursor:pointer}.donut-segment:hover{stroke-width:8.5;opacity:.9}.donut-center{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);text-align:center;line-height:1.2}.donut-center span{display:block;font-size:12px;color:#667085}.donut-center strong{display:block;font-size:32px;font-weight:850;color:#101828;margin:3px 0}.donut-center em{font-style:normal;font-size:12px;color:#667085}.fleet-legend{display:flex;flex-direction:column;gap:2px}.legend-row{display:grid;grid-template-columns:14px 1fr 70px 70px 18px;align-items:center;gap:10px;min-height:46px;padding:8px 6px;border-bottom:1px solid #eef2f7;text-decoration:none!important;color:#101828!important;border-radius:10px}.legend-row:hover{background:#f8fafc}.legend-dot{width:11px;height:11px;border-radius:50%}.legend-label{font-weight:700}.legend-row strong{text-align:right}.legend-pct{text-align:right;color:#667085}.legend-arrow{color:#98a2b3;font-size:22px}.legend-updated{font-size:12px;color:#98a2b3;padding:10px 6px 0}.side-stack{display:grid;grid-template-rows:auto 1fr;gap:18px}.return-card,.modern-health{padding:20px!important}.compact-head{align-items:center;margin-bottom:14px}.date-pill{font-size:12px;color:#2563eb;background:#eff6ff;border:1px solid #dbeafe;padding:7px 10px;border-radius:999px}.small-btn{padding:7px 10px!important;font-size:12px}.return-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:8px 0 18px}.return-stats div{padding:12px;border-radius:14px;background:#f8fafc}.return-stats span{display:block;font-size:12px;color:#667085;margin-bottom:6px}.return-stats strong{font-size:26px}.return-stats em{font-style:normal;margin-left:7px;color:#16a34a;font-weight:800}.mini-bars{height:110px;display:flex;align-items:flex-end;gap:8px;border-bottom:1px solid #e5e9f2;border-top:1px solid #f1f4f8;padding:12px 4px}.mini-bars span{flex:1;border-radius:7px 7px 0 0;background:linear-gradient(180deg,#ff8a1d,#ffd1aa);min-height:4px}.card-row-link{display:flex;align-items:center;justify-content:space-between;text-decoration:none!important;color:#101828!important;font-weight:800;border-top:1px solid #eef2f7;margin:14px -20px -20px;padding:14px 20px}.card-row-link:hover{background:#f8fafc}.health-line{display:grid;grid-template-columns:22px 1fr auto;gap:10px;align-items:center;text-decoration:none!important;color:#101828!important;padding:10px 0;border-bottom:1px solid #eef2f7}.health-line:hover{background:#f8fafc}.health-line div{text-align:right}.health-line b{font-size:16px}.health-line em{display:block;font-style:normal;font-size:11px;color:#667085}.health-dot{width:18px;height:18px;border-radius:50%;display:inline-block}.health-dot.green{background:#dcfce7}.health-dot.blue{background:#dbeafe}.health-dot.orange{background:#ffedd5}.health-dot.red{background:#fee2e2}.dashboard-tables{align-items:start}.dashboard-tables .table-wrap{border-radius:18px}.dashboard-tables table th{font-size:11px}.dashboard-tables .btn.secondary{padding:8px 10px!important;font-size:12px}.table-head{padding:18px 18px 0!important}.table-head h2{font-size:20px!important}
@media(max-width:1400px){.dashboard-metrics{grid-template-columns:repeat(3,minmax(170px,1fr))}.dashboard-main-grid{grid-template-columns:1fr}.side-stack{grid-template-columns:1fr 1fr;grid-template-rows:auto}.fleet-chart-layout{grid-template-columns:minmax(260px,.85fr) 1fr}}
@media(max-width:980px){.dashboard-metrics{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.dashboard-main-grid,.side-stack,.fleet-chart-layout{grid-template-columns:1fr}.content{padding:18px!important}.brand.brand-v16{height:76px!important}.sidebar-collapsed .brand-v16 .brand-text{opacity:1!important;width:auto!important}.sidebar a{justify-content:flex-start!important;padding:0 14px!important}.nav-label{display:inline!important}.donut-wrap{max-width:300px}.legend-row{grid-template-columns:14px 1fr 52px 58px 14px}}

/* V1.7.2 — prepaid/debt monitoring */
.kpi-debt{background:#feeceb;color:#ef4444}
.row-debt td{background:#fff5f5!important;border-bottom-color:#ffd9d9!important}
.row-debt td:first-child{box-shadow:inset 4px 0 0 #ef4444}
.badge.paid{background:#e8f7ef;color:#1f7a4d}
.badge.partial{background:#fff4d6;color:#935f09}
.badge.unpaid,.badge.debt{background:#fde8e7;color:#b42318}
.debt-alert{background:#fff5f5;border:1px solid #ffd0d0;color:#991b1b;border-radius:16px;padding:14px 16px;margin-bottom:16px;font-weight:700}
.debt-ok{background:#ecfdf3;border:1px solid #cdebdc;color:#067647;border-radius:16px;padding:14px 16px;margin-bottom:16px;font-weight:700}
.debt-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:18px}
.debt-summary-card{background:#fff;border:1px solid #e5e9f2;border-radius:16px;padding:16px;box-shadow:0 8px 28px rgba(16,24,40,.06)}
.debt-summary-card .k{display:block;color:#667085;font-size:13px;margin-bottom:8px}.debt-summary-card .v{font-size:24px;font-weight:850}.debt-summary-card.danger .v{color:#b42318}.debt-summary-card.warn .v{color:#935f09}
.payment-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.payment-chip.paid{background:#e8f7ef;color:#1f7a4d}.payment-chip.partial{background:#fff4d6;color:#935f09}.payment-chip.unpaid{background:#fde8e7;color:#b42318}
.debt-card{border-color:#ffd0d0!important}.debt-card h2{color:#991b1b}.debt-money{color:#b42318;font-weight:850}.charge-paid{text-decoration:none;color:#067647}.charge-unpaid{color:#b42318;font-weight:800}.charge-partial{color:#935f09;font-weight:800}
.dashboard-debt-table td{vertical-align:middle}.dashboard-debt-table .btn{padding:8px 10px!important;font-size:12px}
.dashboard-metrics.has-debt{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important}

/* V1.7.3 — icon refinement */
.nav-icon{width:18px!important;min-width:18px!important;height:18px!important;opacity:.96}
.nav-icon svg{width:17px!important;height:17px!important;stroke-width:1.55!important}
.sidebar a{gap:11px!important}
.kpi-card{gap:12px!important;min-height:108px!important;padding:16px 18px!important}
.kpi-icon{width:42px!important;height:42px!important;min-width:42px!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.kpi-icon svg{width:20px!important;height:20px!important;stroke-width:1.55!important}
.kpi-blue{background:#eef5ff!important;color:#367af2!important}
.kpi-green{background:#eefaf2!important;color:#16a34a!important}
.kpi-orange{background:#fff4ea!important;color:#f97316!important}
.kpi-red{background:#fff0f0!important;color:#ef4444!important}
.metric .label{font-size:12px!important}
.metric .value{font-size:26px!important;line-height:1.05!important}
.metric .meta{font-size:11px!important;line-height:1.3!important}
@media(max-width:980px){
  .kpi-card{min-height:98px!important;padding:14px 16px!important}
  .kpi-icon{width:38px!important;height:38px!important;min-width:38px!important}
  .kpi-icon svg{width:18px!important;height:18px!important}
}

/* V1.7.4 — prepaid affects control status and fleet chart */
.fleet-chart-layout{grid-template-columns:minmax(240px,.82fr) minmax(300px,1fr)!important;overflow:hidden}
.donut-wrap{width:min(300px,100%)!important;max-width:300px!important;margin:10px auto 0!important}
.donut-chart{max-width:300px!important;max-height:300px!important}
.legend-row.payment-debt,.legend-row[href="debts.php"]{background:#fff7f7;border-bottom-color:#ffd9d9}
.legend-row.payment-debt .legend-label,.legend-row[href="debts.php"] .legend-label{color:#b42318}
.kpi-card[href="overdues.php"] .meta{color:#b42318!important;font-weight:700}
.debt-card .table-head h2:before{content:"";display:inline-block;width:10px;height:10px;background:#ef4444;border-radius:50%;margin-right:8px;vertical-align:middle}
@media(max-width:1400px){.donut-wrap{max-width:280px!important}.donut-chart{max-width:280px!important;max-height:280px!important}}
@media(max-width:980px){.donut-wrap{max-width:260px!important}.donut-chart{max-width:260px!important;max-height:260px!important}}

/* V1.7.3 — icon refinement */
.nav-icon{width:18px!important;min-width:18px!important;height:18px!important;opacity:.96}
.nav-icon svg{width:17px!important;height:17px!important;stroke-width:1.55!important}
.sidebar a{gap:11px!important}
.kpi-card{gap:12px!important;min-height:108px!important;padding:16px 18px!important}
.kpi-icon{width:42px!important;height:42px!important;min-width:42px!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.kpi-icon svg{width:20px!important;height:20px!important;stroke-width:1.55!important}
.kpi-blue{background:#eef5ff!important;color:#367af2!important}
.kpi-green{background:#eefaf2!important;color:#16a34a!important}
.kpi-orange{background:#fff4ea!important;color:#f97316!important}
.kpi-red{background:#fff0f0!important;color:#ef4444!important}
.metric .label{font-size:12px!important}.metric .value{font-size:26px!important;line-height:1.05!important}.metric .meta{font-size:11px!important;line-height:1.3!important}

/* V1.7.6 — early return + payment calendar */
.payment-monitor-grid{align-items:start;margin-bottom:18px}.payment-due-card table th{font-size:11px}.payment-due-card .table-head h2{font-size:18px!important}.row-warning td{background:#fffaf0!important;border-bottom-color:#ffe4b5!important}.row-warning td:first-child{box-shadow:inset 4px 0 0 #f59e0b}.early-return-alert{background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;border-radius:16px;padding:14px 16px;margin-bottom:16px;font-weight:700}.early-return-row td{background:#f8fbff!important}.badge.early{background:#e0f2fe;color:#0369a1}.return-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.payment-due-card .btn.secondary{padding:7px 10px!important;font-size:12px}@media(max-width:1400px){.payment-monitor-grid{grid-template-columns:1fr!important}}

/* V1.7.7 — return/payment monitors and early-return settlement */
.return-monitor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:18px}
.early-return-alert{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:16px;padding:14px 16px;margin-bottom:16px;font-weight:700}
.settlement-note{background:#f8fafc;border:1px solid #e5e9f2;border-radius:14px;padding:12px 14px;margin:10px 0;color:#475467}
.badge.adjustment{background:#eef2ff;color:#4338ca}
@media(max-width:1200px){.return-monitor-grid{grid-template-columns:1fr}}


/* V1.7.8 — manual date correction + scooter earnings */
.date-adjust-card{border-color:#dbeafe!important;background:#f8fbff!important}
.date-adjust-note{background:#eff6ff;border:1px solid #dbeafe;color:#1d4ed8;border-radius:14px;padding:12px 14px;margin-bottom:14px;font-weight:700}
.income-card{border-color:#e5e9f2!important}
.income-card .debt-summary-grid{margin-bottom:10px}
.debt-summary-card.danger .v{color:#b42318}
.data-item .v .muted{font-weight:500}
#scooter-income{scroll-margin-top:18px}
