:root{
  --bg:#f4f7fb;--panel:#fff;--ink:#172033;--muted:#667085;--line:#e6eaf0;
  --nav:#0f172a;--nav2:#18243a;--primary:#2463eb;--primary2:#174ec4;
  --red:#c62828;--red-bg:#fff1f1;--amber:#9a6700;--amber-bg:#fff8e7;
  --green:#18794e;--green-bg:#edfdf4;--blue:#1d4ed8;--blue-bg:#eff6ff;
  --shadow:0 8px 30px rgba(15,23,42,.08);--radius:16px
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}
button,input,select,textarea{font:inherit}.hidden{display:none!important}.mobile-only{display:none}
.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:260px;background:linear-gradient(180deg,var(--nav),#111c31);color:#d7deea;padding:18px 14px;display:flex;flex-direction:column;z-index:30}
.brand{display:flex;align-items:center;gap:12px;padding:6px 8px 20px}.brand-mark{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:white;display:grid;place-items:center;font-weight:800;letter-spacing:.5px;box-shadow:0 6px 18px rgba(37,99,235,.3)}.brand strong{display:block;color:#fff;font-size:15px}.brand span{display:block;font-size:11px;color:#93a4bd;margin-top:2px}.brand .owner-name{font-size:12px;color:#fff;font-weight:800;margin-top:5px;letter-spacing:.02em}
nav{display:flex;flex-direction:column;gap:4px}.nav-btn{width:100%;border:0;background:transparent;color:#aebbd0;text-align:left;padding:11px 12px;border-radius:10px;display:flex;gap:10px;align-items:center;cursor:pointer}.nav-btn:hover{background:rgba(255,255,255,.06);color:#fff}.nav-btn.active{background:#1e3a62;color:#fff;font-weight:700}.nav-icon{width:22px;text-align:center}.sidebar-bottom{margin-top:auto;padding:12px 8px}.connection-badge{font-size:11px;color:#aebbd0;padding:9px 10px;border:1px solid rgba(255,255,255,.1);border-radius:10px}.text-btn{margin-top:8px;background:none;border:0;color:#9fb0c9;padding:6px;cursor:pointer}
.main{margin-left:260px;min-height:100vh}.topbar{position:sticky;top:0;z-index:20;height:72px;background:rgba(255,255,255,.93);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:18px;padding:0 24px}.search-wrap{flex:1;max-width:560px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#f9fbfd;border-radius:12px;padding:10px 12px}.search-wrap input{border:0;outline:0;background:transparent;width:100%;color:var(--ink)}.top-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.today-label{color:var(--muted);font-size:13px}.content{padding:24px;max-width:1600px;margin:auto}
.page-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.page-head h1{font-size:28px;margin:0 0 4px}.page-head p{margin:0;color:var(--muted);font-size:14px}.page-actions{display:flex;gap:8px;flex-wrap:wrap}
.btn{border:1px solid var(--line);background:#fff;color:var(--ink);padding:10px 14px;border-radius:10px;cursor:pointer;font-weight:700;font-size:13px}.btn:hover{box-shadow:0 3px 12px rgba(15,23,42,.08)}.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn.primary:hover{background:var(--primary2)}.btn.danger{background:#fff5f5;color:#b42318;border-color:#fecaca}.btn.wide{width:100%}.icon-btn{border:0;background:transparent;font-size:22px;cursor:pointer}
.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(140px,1fr));gap:12px;margin-bottom:18px}.kpi{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:15px;box-shadow:0 2px 10px rgba(15,23,42,.03)}.kpi .label{font-size:12px;color:var(--muted);font-weight:700}.kpi .value{font-size:28px;font-weight:800;margin-top:7px}.kpi .hint{font-size:11px;color:var(--muted);margin-top:4px}.kpi.red{border-left:4px solid var(--red)}.kpi.amber{border-left:4px solid #dba617}.kpi.green{border-left:4px solid var(--green)}.kpi.blue{border-left:4px solid var(--blue)}
.grid-2{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.8fr);gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 2px 12px rgba(15,23,42,.035);overflow:hidden}.card-head{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}.card-head h2{font-size:16px;margin:0}.card-head span{font-size:12px;color:var(--muted)}.card-body{padding:18px}.card.no-pad .card-body{padding:0}
.alert-list{display:flex;flex-direction:column}.alert-row{display:grid;grid-template-columns:90px 1.1fr 1.2fr 110px 105px 1.3fr 90px;gap:10px;align-items:center;padding:12px 16px;border-bottom:1px solid #eef1f5;font-size:13px}.alert-row:last-child{border-bottom:0}.alert-row.header{background:#f8fafc;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:800}.reg{font-weight:800;letter-spacing:.03em}.status{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800;white-space:nowrap}.status.red{background:var(--red-bg);color:var(--red)}.status.amber{background:var(--amber-bg);color:var(--amber)}.status.green{background:var(--green-bg);color:var(--green)}.status.blue{background:var(--blue-bg);color:var(--blue)}
.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:760px}.data-table th,.data-table td{padding:11px 12px;border-bottom:1px solid #edf0f4;text-align:left;font-size:12px;vertical-align:middle}.data-table th{background:#f8fafc;color:#667085;font-size:10px;text-transform:uppercase;letter-spacing:.04em;position:sticky;top:0}.data-table tr:hover td{background:#fbfcfe}.link-btn{border:0;background:transparent;color:var(--primary);font-weight:800;cursor:pointer;padding:0}
.focus-box{padding:18px;border-radius:14px;background:linear-gradient(135deg,#14233f,#1f3a62);color:white}.focus-box .eyebrow{font-size:11px;color:#b7c6dd;font-weight:800;text-transform:uppercase}.focus-box .big{font-size:22px;font-weight:800;margin:8px 0 4px}.focus-box p{font-size:13px;color:#d3deed;margin:0}.mini-list{display:flex;flex-direction:column;gap:10px;margin-top:14px}.mini-item{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.mini-item:last-child{border-bottom:0}
.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.field{display:flex;flex-direction:column;gap:5px}.field label,.modal-form label,.login-card label{font-size:11px;color:var(--muted);font-weight:800}.field input,.field select,.modal-form input,.modal-form select,.modal-form textarea,.login-card input{border:1px solid var(--line);border-radius:10px;padding:10px 11px;background:white;outline:0;color:var(--ink)}.field input:focus,.field select:focus,.modal-form input:focus,.modal-form select:focus,.modal-form textarea:focus,.login-card input:focus{border-color:#8db2ff;box-shadow:0 0 0 3px #eaf1ff}
.vehicle-grid{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:12px}.vehicle-card{padding:15px;border:1px solid var(--line);border-radius:14px;background:white;cursor:pointer}.vehicle-card:hover{border-color:#b8cdfb;box-shadow:0 6px 20px rgba(37,99,235,.08)}.vehicle-card .top{display:flex;justify-content:space-between;gap:8px}.vehicle-card .loc{color:var(--muted);font-size:12px;margin-top:3px}.vehicle-card .due{margin-top:14px;font-size:12px;color:var(--muted)}.vehicle-card .date{font-weight:800;color:var(--ink);margin-top:3px}
.profile-hero{display:grid;grid-template-columns:1.3fr repeat(4,minmax(130px,.65fr));gap:12px;margin-bottom:16px}.hero-main{background:linear-gradient(135deg,#0f172a,#223d66);color:#fff;border-radius:16px;padding:20px}.hero-main h1{margin:0;font-size:30px}.hero-main p{margin:5px 0;color:#c4d1e3}.hero-stat{background:white;border:1px solid var(--line);border-radius:14px;padding:14px}.hero-stat .label{font-size:11px;color:var(--muted)}.hero-stat .value{font-size:16px;font-weight:800;margin-top:6px}
.section-title{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:#667085;font-weight:900;margin:20px 0 10px}.planner-row{display:grid;grid-template-columns:130px 90px 130px 120px 100px 100px 1fr;gap:10px;align-items:center;padding:11px 12px;border-bottom:1px solid var(--line);font-size:12px}.planner-row.header{background:#f8fafc;font-size:10px;color:var(--muted);font-weight:800;text-transform:uppercase}
.empty{padding:36px;text-align:center;color:var(--muted)}.notice{padding:12px 14px;border-radius:12px;background:#fff8e7;border:1px solid #f7df9d;color:#7a5600;font-size:13px}.success-notice{padding:12px 14px;border-radius:12px;background:#effbf4;border:1px solid #b7e6c8;color:#146c43;font-size:13px}.issue{padding:12px 14px;border:1px solid var(--line);border-radius:12px;margin-bottom:9px}.issue strong{display:block;font-size:13px}.issue span{font-size:12px;color:var(--muted)}
.modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:100;display:grid;place-items:center;padding:18px}.modal{width:min(760px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.24)}.modal-head{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px;align-items:center}.modal-head h2{margin:0;font-size:18px}.modal-body{padding:20px}.modal-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.modal-form .full{grid-column:1/-1}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
.login-gate{position:fixed;inset:0;background:linear-gradient(145deg,#0b1324,#18325c);z-index:200;display:grid;place-items:center;padding:20px}.login-card{width:min(390px,100%);background:#fff;padding:28px;border-radius:20px;box-shadow:0 30px 80px rgba(0,0,0,.3)}.login-card .brand-mark{margin-bottom:16px}.login-card h1{margin:0;font-size:25px}.login-card p{color:var(--muted);margin:6px 0 22px}.login-card label{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.form-error{color:#b42318;font-size:12px;margin-top:10px}.toast{position:fixed;right:20px;bottom:20px;z-index:300;background:#172033;color:#fff;padding:11px 14px;border-radius:10px;font-size:12px;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translateY(0)}
.report-sheet{background:#fff;padding:26px;border:1px solid var(--line);border-radius:14px}.report-title{display:flex;justify-content:space-between;border-bottom:2px solid #172033;padding-bottom:14px}.report-title h2{margin:0}.report-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.report-block{border:1px solid var(--line);border-radius:10px;padding:12px}.report-block .label{font-size:10px;color:var(--muted);text-transform:uppercase}.report-block .value{font-weight:800;margin-top:4px}
@media(max-width:1200px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.vehicle-grid{grid-template-columns:repeat(3,1fr)}.profile-hero{grid-template-columns:1.2fr repeat(2,1fr)}}
@media(max-width:900px){.mobile-only{display:inline-flex}.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.main{margin-left:0}.topbar{padding:0 14px}.today-label{display:none}.content{padding:16px}.grid-2,.grid-3{grid-template-columns:1fr}.vehicle-grid{grid-template-columns:repeat(2,1fr)}.alert-row{grid-template-columns:95px 1fr 110px 95px}.alert-row>*:nth-child(3),.alert-row>*:nth-child(6),.alert-row>*:nth-child(7){display:none}.profile-hero{grid-template-columns:1fr 1fr}.hero-main{grid-column:1/-1}}
@media(max-width:600px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.vehicle-grid{grid-template-columns:1fr}.top-actions .btn{display:none}.search-wrap{max-width:none}.page-head{flex-direction:column}.profile-hero{grid-template-columns:1fr 1fr}.modal-form{grid-template-columns:1fr}.modal-form .full{grid-column:auto}.planner-row{grid-template-columns:100px 70px 115px 90px}.planner-row>*:nth-child(4),.planner-row>*:nth-child(6),.planner-row>*:nth-child(7){display:none}.report-grid{grid-template-columns:1fr}.content{padding:12px}.page-head h1{font-size:24px}}
@media print{.sidebar,.topbar,.page-head .page-actions,.toolbar,.btn{display:none!important}.main{margin:0}.content{padding:0}.report-sheet{border:0}.card{box-shadow:none}}

/* =========================================================
   INAM VISUAL REFRESH - colourful, high-contrast, business UI
   Visual-only overrides. No maintenance logic is changed.
   ========================================================= */
:root{
  --bg:#eef4ff;
  --panel:#ffffff;
  --ink:#10213f;
  --muted:#64748b;
  --line:#dfe7f3;
  --nav:#071a35;
  --nav2:#102a52;
  --primary:#2563eb;
  --primary2:#1d4ed8;
  --violet:#7c3aed;
  --cyan:#0891b2;
  --teal:#0f766e;
  --orange:#ea580c;
  --pink:#db2777;
  --red:#c81e1e;
  --red-bg:#fff0f2;
  --amber:#a15c00;
  --amber-bg:#fff7dc;
  --green:#087a4d;
  --green-bg:#eafbf2;
  --blue:#1d4ed8;
  --blue-bg:#eef5ff;
  --shadow:0 14px 36px rgba(30,64,175,.10);
  --radius:18px;
}

html,body{
  background:
    radial-gradient(circle at 12% 5%,rgba(56,189,248,.13),transparent 25rem),
    radial-gradient(circle at 92% 15%,rgba(124,58,237,.09),transparent 28rem),
    linear-gradient(180deg,#f8fbff 0%,#eef4ff 52%,#f7f9fd 100%);
}

.sidebar{
  background:
    radial-gradient(circle at 18% 2%,rgba(59,130,246,.28),transparent 16rem),
    linear-gradient(180deg,#071a35 0%,#0a2143 55%,#06152c 100%);
  border-right:1px solid rgba(147,197,253,.14);
  box-shadow:14px 0 38px rgba(15,23,42,.14);
}
.brand{padding-top:9px;padding-bottom:22px}
.brand-mark{
  width:46px;height:46px;border-radius:15px;
  background:linear-gradient(135deg,#22d3ee 0%,#3b82f6 45%,#8b5cf6 100%);
  box-shadow:0 9px 24px rgba(59,130,246,.38),inset 0 1px 0 rgba(255,255,255,.35);
  border:1px solid rgba(255,255,255,.16);
}
.brand strong{font-size:15px;letter-spacing:.01em}
.brand span{color:#a8bbd8}
.brand .owner-name{
  display:inline-block;margin-top:6px;padding:3px 9px;border-radius:999px;
  color:#dff7ff;background:rgba(34,211,238,.12);border:1px solid rgba(103,232,249,.18);
  letter-spacing:.08em;text-transform:uppercase;font-size:10px
}

nav{gap:5px}
.nav-btn{
  position:relative;overflow:hidden;padding:11px 12px;border-radius:12px;
  transition:transform .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease;
}
.nav-btn:hover{transform:translateX(3px);background:rgba(255,255,255,.07)}
.nav-btn.active{
  color:#fff;background:linear-gradient(90deg,rgba(37,99,235,.95),rgba(124,58,237,.82));
  box-shadow:0 7px 18px rgba(37,99,235,.22),inset 0 1px 0 rgba(255,255,255,.14)
}
.nav-btn.active:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:3px;background:#67e8f9}
.nav-icon{
  width:25px;height:25px;display:grid;place-items:center;border-radius:8px;
  background:rgba(148,163,184,.10);color:#c8d7eb;font-size:13px;font-weight:900
}
.nav-btn.active .nav-icon{background:rgba(255,255,255,.16);color:#fff}
.nav-btn:nth-child(2) .nav-icon{color:#7dd3fc}.nav-btn:nth-child(3) .nav-icon{color:#c4b5fd}
.nav-btn:nth-child(4) .nav-icon{color:#86efac}.nav-btn:nth-child(5) .nav-icon{color:#fda4af}
.nav-btn:nth-child(6) .nav-icon{color:#fde68a}.nav-btn:nth-child(7) .nav-icon{color:#93c5fd}
.nav-btn:nth-child(8) .nav-icon{color:#fdba74}.nav-btn:nth-child(9) .nav-icon{color:#a5b4fc}
.nav-btn:nth-child(10) .nav-icon{color:#67e8f9}.nav-btn:nth-child(11) .nav-icon{color:#ddd6fe}
.nav-btn:nth-child(12) .nav-icon{color:#cbd5e1}
.connection-badge{background:rgba(255,255,255,.035);border-color:rgba(148,163,184,.18)}

.topbar{
  height:76px;background:rgba(255,255,255,.88);backdrop-filter:blur(18px) saturate(150%);
  border-bottom:1px solid rgba(148,163,184,.22);box-shadow:0 5px 20px rgba(30,64,175,.045)
}
.topbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,#22d3ee,#3b82f6,#8b5cf6,#ec4899,#f59e0b);opacity:.75}
.search-wrap{
  border-color:#d8e3f2;background:rgba(248,251,255,.92);border-radius:14px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);transition:.18s ease
}
.search-wrap:focus-within{border-color:#7aa7ff;background:#fff;box-shadow:0 0 0 4px rgba(37,99,235,.09),0 8px 20px rgba(37,99,235,.08)}
.today-label{font-weight:700;color:#52637d}
.content{padding:28px}

.page-head{margin-bottom:22px;align-items:center}
.page-head h1{
  position:relative;font-size:30px;letter-spacing:-.025em;color:#10213f;
  padding-bottom:8px
}
.page-head h1:after{content:"";position:absolute;left:0;bottom:0;width:58px;height:4px;border-radius:999px;background:linear-gradient(90deg,#2563eb,#8b5cf6,#22d3ee)}
.page-head p{font-size:13px;color:#65758b}

.btn{
  border-color:#d8e2ef;border-radius:12px;background:linear-gradient(180deg,#fff,#f7faff);
  box-shadow:0 2px 6px rgba(15,23,42,.04);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease
}
.btn:hover{transform:translateY(-1px);border-color:#b7c8e5;box-shadow:0 7px 18px rgba(30,64,175,.10)}
.btn.primary{
  background:linear-gradient(135deg,#2563eb,#4f46e5 60%,#7c3aed);border-color:transparent;
  box-shadow:0 7px 18px rgba(37,99,235,.22)
}
.btn.primary:hover{background:linear-gradient(135deg,#1d4ed8,#4338ca 60%,#6d28d9);box-shadow:0 9px 24px rgba(37,99,235,.28)}
.btn.danger{background:linear-gradient(180deg,#fff8f8,#fff1f2);border-color:#fecdd3;color:#b91c1c}

.kpi-grid{gap:14px;margin-bottom:20px}
.kpi{
  position:relative;overflow:hidden;border:1px solid rgba(148,163,184,.20);border-left:0!important;
  border-radius:17px;padding:17px 17px 15px;box-shadow:0 9px 24px rgba(30,64,175,.075);
  transition:transform .16s ease,box-shadow .16s ease
}
.kpi:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(30,64,175,.12)}
.kpi:before{content:"";position:absolute;left:0;top:0;right:0;height:5px}
.kpi:after{content:"";position:absolute;width:88px;height:88px;border-radius:50%;right:-35px;top:-38px;opacity:.13}
.kpi .label{font-size:10.5px;letter-spacing:.06em;color:#5e6f87}
.kpi .value{font-size:31px;letter-spacing:-.04em;line-height:1;margin-top:10px}
.kpi .hint{margin-top:7px;color:#77869a}
.kpi.blue{background:linear-gradient(145deg,#fff 44%,#edf5ff)}.kpi.blue:before{background:linear-gradient(90deg,#2563eb,#38bdf8)}.kpi.blue:after{background:#2563eb}.kpi.blue .value{color:#1d4ed8}
.kpi.green{background:linear-gradient(145deg,#fff 44%,#edfff5)}.kpi.green:before{background:linear-gradient(90deg,#059669,#34d399)}.kpi.green:after{background:#10b981}.kpi.green .value{color:#087a4d}
.kpi.amber{background:linear-gradient(145deg,#fff 44%,#fff9e8)}.kpi.amber:before{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.kpi.amber:after{background:#f59e0b}.kpi.amber .value{color:#a15c00}
.kpi.red{background:linear-gradient(145deg,#fff 44%,#fff0f2)}.kpi.red:before{background:linear-gradient(90deg,#dc2626,#fb7185)}.kpi.red:after{background:#e11d48}.kpi.red .value{color:#b91c1c}

.card{
  border-color:rgba(148,163,184,.20);border-radius:18px;
  box-shadow:0 10px 28px rgba(30,64,175,.075);background:rgba(255,255,255,.96)
}
.card-head{padding:17px 19px;background:linear-gradient(180deg,#fff,#fbfdff);border-bottom-color:#e8eef7}
.card-head h2{font-size:16px;color:#17335f;letter-spacing:-.01em}
.card-head h2:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:9px;background:linear-gradient(135deg,#2563eb,#8b5cf6);box-shadow:0 0 0 4px rgba(59,130,246,.08)}
.card-body{padding:19px}

.focus-box{
  position:relative;overflow:hidden;padding:20px;border-radius:16px;
  background:linear-gradient(135deg,#0d2a55 0%,#194b93 48%,#6d28d9 100%);
  box-shadow:0 13px 30px rgba(30,64,175,.20)
}
.focus-box:after{content:"";position:absolute;width:150px;height:150px;border:28px solid rgba(255,255,255,.07);border-radius:50%;right:-64px;top:-65px}
.focus-box .eyebrow{color:#bbf7ff}.focus-box .big{font-size:25px}.focus-box p{color:#e4efff}

.alert-row{border-bottom-color:#edf2f8;transition:background .12s ease}
.alert-row:not(.header):hover{background:linear-gradient(90deg,#f6faff,#fbf8ff)}
.alert-row.header{background:linear-gradient(90deg,#eff6ff,#f5f3ff);color:#50627b;border-bottom:1px solid #dce7f5}
.reg{color:#173f7a}
.status{padding:6px 9px;border:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.65)}
.status.red{background:#ffe9ed;color:#b91c1c;border-color:#fecdd3}.status.amber{background:#fff4cf;color:#92400e;border-color:#fde68a}
.status.green{background:#e7f9ef;color:#087a4d;border-color:#bbf7d0}.status.blue{background:#eaf3ff;color:#1d4ed8;border-color:#bfdbfe}

.data-table{background:#fff}
.data-table th{background:linear-gradient(180deg,#eef5ff,#e9f1fb);color:#4d607a;border-bottom:1px solid #d8e4f2}
.data-table td{border-bottom-color:#edf2f7}
.data-table tbody tr:nth-child(even) td{background:#fbfdff}
.data-table tr:hover td{background:#f2f7ff}
.link-btn{color:#255bc7;text-decoration:none}.link-btn:hover{color:#6d28d9}

.vehicle-grid{gap:14px}
.vehicle-card{
  position:relative;overflow:hidden;border-color:#dfe8f4;border-radius:16px;
  background:linear-gradient(145deg,#fff,#fbfdff);box-shadow:0 5px 15px rgba(30,64,175,.045);
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease
}
.vehicle-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#2563eb,#22d3ee)}
.vehicle-card:nth-child(4n+2):before{background:linear-gradient(180deg,#7c3aed,#c084fc)}
.vehicle-card:nth-child(4n+3):before{background:linear-gradient(180deg,#0f766e,#2dd4bf)}
.vehicle-card:nth-child(4n):before{background:linear-gradient(180deg,#ea580c,#fbbf24)}
.vehicle-card:hover{transform:translateY(-3px);border-color:#a9c5f4;box-shadow:0 14px 28px rgba(37,99,235,.13)}
.vehicle-card .reg{font-size:15px}.vehicle-card .date{color:#173f7a}

.hero-main{
  position:relative;overflow:hidden;background:linear-gradient(135deg,#0b2447 0%,#1d4ed8 55%,#7c3aed 100%);
  box-shadow:0 12px 28px rgba(30,64,175,.19)
}
.hero-main:after{content:"";position:absolute;width:185px;height:185px;border-radius:50%;right:-70px;top:-95px;background:rgba(34,211,238,.16)}
.hero-main h1{letter-spacing:-.03em}.hero-main p{color:#d9e8ff}
.hero-stat{border-color:#dfe8f4;box-shadow:0 7px 18px rgba(30,64,175,.06);background:linear-gradient(145deg,#fff,#f9fbff)}
.hero-stat .label{font-weight:800;letter-spacing:.04em}.hero-stat .value{color:#173f7a}

.section-title{color:#415875}.section-title:after{content:"";display:inline-block;vertical-align:middle;margin-left:10px;width:50px;height:2px;border-radius:3px;background:linear-gradient(90deg,#3b82f6,#a78bfa)}
.planner-row.header{background:linear-gradient(90deg,#eff6ff,#f5f3ff);color:#52647b}
.planner-row:not(.header):hover{background:#f8fbff}

.field input,.field select,.modal-form input,.modal-form select,.modal-form textarea,.login-card input{
  border-color:#d8e3f0;background:#fbfdff;border-radius:11px
}
.field input:focus,.field select:focus,.modal-form input:focus,.modal-form select:focus,.modal-form textarea:focus,.login-card input:focus{
  border-color:#6d9df4;background:#fff;box-shadow:0 0 0 4px rgba(37,99,235,.09)
}
.notice{background:linear-gradient(135deg,#fff9e8,#fff3c7);border-color:#f7dc89;color:#805300}
.success-notice{background:linear-gradient(135deg,#effdf5,#e5f8ef);border-color:#b6e8ce;color:#086b44}
.issue{background:linear-gradient(145deg,#fff,#fafcff);border-color:#dfe8f3}

.modal-backdrop{background:rgba(5,18,39,.68);backdrop-filter:blur(5px)}
.modal{border:1px solid rgba(255,255,255,.35);box-shadow:0 35px 90px rgba(4,20,46,.35)}
.modal-head{background:linear-gradient(90deg,#f3f8ff,#faf7ff)}
.login-gate{background:radial-gradient(circle at 20% 10%,rgba(34,211,238,.24),transparent 24rem),radial-gradient(circle at 85% 85%,rgba(124,58,237,.30),transparent 28rem),linear-gradient(145deg,#06152d,#12356b)}
.login-card{border:1px solid rgba(255,255,255,.28);box-shadow:0 35px 90px rgba(0,0,0,.36)}
.toast{background:linear-gradient(135deg,#0f2d59,#4338ca);border:1px solid rgba(255,255,255,.15);box-shadow:0 15px 32px rgba(30,64,175,.30)}

.report-sheet{border-color:#dce6f2;box-shadow:0 12px 30px rgba(30,64,175,.07)}
.report-title{border-bottom:3px solid transparent;border-image:linear-gradient(90deg,#2563eb,#7c3aed,#22d3ee) 1}
.report-block{background:linear-gradient(145deg,#fff,#f8fbff);border-color:#dfe8f3}.report-block .value{color:#173f7a}

@media(max-width:900px){
  .sidebar{box-shadow:18px 0 45px rgba(4,20,46,.30)}
  .content{padding:18px}
}
@media(max-width:600px){
  .content{padding:13px}.kpi{padding:15px}.kpi .value{font-size:27px}
  .page-head h1{font-size:25px}.topbar{height:68px}
}
@media print{
  html,body{background:#fff!important}.kpi,.card,.vehicle-card,.hero-stat,.report-sheet{box-shadow:none!important}
}

/* SU Daily Dispatch */
.kpi.cyan{background:linear-gradient(145deg,#fff 44%,#e9fbff)}.kpi.cyan:before{background:linear-gradient(90deg,#0891b2,#22d3ee)}.kpi.cyan:after{background:#06b6d4}.kpi.cyan .value{color:#0e7490}
.kpi.purple{background:linear-gradient(145deg,#fff 44%,#f5f0ff)}.kpi.purple:before{background:linear-gradient(90deg,#7c3aed,#c084fc)}.kpi.purple:after{background:#8b5cf6}.kpi.purple .value{color:#6d28d9}
.dispatch-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}
.date-control{display:inline-flex;align-items:center;gap:9px;padding:7px 10px;border:1px solid #d8e3f0;border-radius:12px;background:#fff;color:#52637d;font-size:12px;font-weight:800}
.date-control input{border:0;background:transparent;font:inherit;color:#17335f;outline:none}
.accuracy-notice{margin-bottom:18px;line-height:1.55}
.dispatch-grid{align-items:start}
.dispatch-attention{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid #edf2f7}
.dispatch-attention:last-child{border-bottom:0}.dispatch-attention strong{display:block;color:#17335f}.dispatch-attention span{display:block;margin-top:3px;font-size:12px;color:#6b7c93}
.dispatch-bus-badge{min-width:72px;text-align:center;padding:8px 10px;border-radius:12px;background:linear-gradient(135deg,#fee2e2,#fff1f2);border:1px solid #fecdd3;color:#b91c1c;font-weight:900;font-size:12px}
.formula-stack{display:grid;gap:9px}.formula-stack>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 12px;border:1px solid #e4ebf5;border-radius:12px;background:linear-gradient(145deg,#fff,#f8fbff)}.formula-stack strong{color:#17335f}.formula-stack span{font-size:12px;color:#63758d;text-align:right}
.dispatch-location{font-weight:900;color:#173f7a;white-space:nowrap}
.dispatch-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:14px;padding:13px 14px;background:linear-gradient(90deg,#eff6ff,#f8f5ff);border:1px solid #dbe7f5;border-radius:15px}
.dispatch-toolbar label{display:grid;gap:5px;font-size:11px;font-weight:900;color:#617189;text-transform:uppercase;letter-spacing:.04em}.dispatch-toolbar select{min-width:220px;padding:9px 11px;border:1px solid #d8e3f0;border-radius:10px;background:#fff;color:#17335f}
.dispatch-mini-total{margin-left:auto;display:grid;gap:2px;min-width:100px;padding:8px 12px;border-radius:11px;background:#fff;border:1px solid #dfe8f4}.dispatch-mini-total+ .dispatch-mini-total{margin-left:0}.dispatch-mini-total span{font-size:10px;color:#708198;font-weight:800;text-transform:uppercase}.dispatch-mini-total strong{font-size:20px;color:#173f7a}
.shift-chip{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.shift-chip.morning{background:#fff4cf;color:#92400e;border:1px solid #fde68a}.shift-chip.afternoon{background:#ede9fe;color:#6d28d9;border:1px solid #ddd6fe}
.danger-link{color:#b91c1c!important}.danger-link:hover{color:#7f1d1d!important}
.dispatch-location-hero{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.dispatch-location-hero>div{padding:14px;border-radius:14px;background:linear-gradient(145deg,#fff,#f6f9ff);border:1px solid #dfe8f4}.dispatch-location-hero span{display:block;font-size:10px;font-weight:900;color:#687991;text-transform:uppercase;letter-spacing:.05em}.dispatch-location-hero strong{display:block;margin-top:7px;font-size:21px;color:#173f7a}

@media(max-width:1250px){.dispatch-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.dispatch-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dispatch-location-hero{grid-template-columns:repeat(2,minmax(0,1fr))}.date-control{width:100%;justify-content:space-between}.dispatch-toolbar{align-items:stretch}.dispatch-toolbar label,.dispatch-toolbar select{width:100%}.dispatch-mini-total{margin-left:0;flex:1}}
@media(max-width:430px){.dispatch-kpis{grid-template-columns:1fr}.dispatch-location-hero{grid-template-columns:1fr 1fr}}

/* Sidebar can scroll as modules grow */
.sidebar nav{overflow-y:auto;min-height:0;padding-right:3px;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.28) transparent}.sidebar nav::-webkit-scrollbar{width:5px}.sidebar nav::-webkit-scrollbar-thumb{background:rgba(148,163,184,.28);border-radius:99px}

/* MOT booking awareness */
.mot-booking-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}
.mot-booking-row:last-child{border-bottom:0}.mot-booking-row>div:first-child{min-width:0}.mot-booking-row strong{display:block;color:#173f7a;font-size:13px}.mot-booking-row span:not(.status){display:block;color:var(--muted);font-size:11px;margin-top:3px}.mot-booking-row>div:last-child{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:5px}.mot-booking-row small{font-size:10px;color:var(--muted);white-space:nowrap}.mot-booking-row.red{background:linear-gradient(90deg,transparent,#fff6f7);margin:0 -8px;padding-left:8px;padding-right:8px;border-radius:10px}.mot-booking-row.green{background:linear-gradient(90deg,transparent,#f2fff8);margin:0 -8px;padding-left:8px;padding-right:8px;border-radius:10px}

/* Operations control board: designed for fast daily scanning */
.dispatch-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 16px;padding:20px 22px;border-radius:20px;background:linear-gradient(120deg,#102a56,#2458a6 55%,#6d3fc4);color:#fff;box-shadow:0 16px 38px rgba(27,68,135,.18);overflow:hidden;position:relative}.dispatch-hero:after{content:"";position:absolute;right:-35px;top:-55px;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.1)}.dispatch-hero>div:first-child{display:grid;gap:3px;z-index:1}.dispatch-hero span{font-size:10px;letter-spacing:.11em;font-weight:900;color:#c9ddff}.dispatch-hero strong{font-size:25px}.dispatch-hero small{color:#e7efff}.dispatch-hero-status{z-index:1;padding:10px 14px;border-radius:999px;font-weight:900;font-size:12px;white-space:nowrap}.dispatch-hero-status.good{background:#dff9ea;color:#126d43}.dispatch-hero-status.warn{background:#fff2c7;color:#855b00}.dispatch-hero-status.bad{background:#ffe1e1;color:#a81616}
.quick-control-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:4px 0 18px}.quick-control{border:1px solid #dce6f3;background:linear-gradient(145deg,#fff,#f7faff);border-radius:16px;padding:14px 16px;text-align:left;cursor:pointer;display:grid;grid-template-columns:38px 1fr;column-gap:10px;align-items:center;box-shadow:0 4px 14px rgba(15,45,90,.04);transition:.16s ease}.quick-control:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(24,67,135,.12);border-color:#b9cef0}.quick-control>span{grid-row:1/3;width:38px;height:38px;border-radius:12px;background:#edf4ff;color:#2058a8;display:grid;place-items:center;font-size:18px;font-weight:900}.quick-control strong{font-size:13px;color:#17335f}.quick-control small{font-size:11px;color:#71829a}.quick-control.primary{background:linear-gradient(135deg,#1f62d0,#4a3fc7);border-color:transparent}.quick-control.primary strong,.quick-control.primary small{color:#fff}.quick-control.primary>span{background:rgba(255,255,255,.18);color:#fff}
.run-control-grid{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:12px}.run-control-card{appearance:none;width:100%;border:1px solid #dfe8f3;background:#fff;border-radius:17px;padding:14px;text-align:left;cursor:pointer;box-shadow:0 5px 18px rgba(20,50,95,.05);position:relative;overflow:hidden}.run-control-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#48a873}.run-control-card.attention:before{background:#edae24}.run-control-card.warning:before{background:#8c5be3}.run-control-card.danger:before{background:#df4545}.run-control-card:hover{transform:translateY(-1px);box-shadow:0 10px 25px rgba(20,50,95,.1)}.run-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.run-destination{font-size:11px;color:#6a7b91;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.run-driver{margin-top:12px;font-size:16px;font-weight:900;color:#18365f}.run-vehicle{margin-top:4px;font-size:12px;color:#55708e;font-weight:700}.run-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.run-numbers>div{background:#f6f9fd;border-radius:10px;padding:7px 8px}.run-numbers span{display:block;font-size:9px;color:#78899f;font-weight:900}.run-numbers strong{display:block;font-size:17px;color:#173b70;margin-top:1px}.run-warning{margin-top:9px;padding:6px 8px;border-radius:9px;background:#fff0f0;color:#ac2424;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.clash-row{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #edf1f5}.clash-row:last-child{border-bottom:0}.clash-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#ffe2e2;color:#ba2020;font-weight:1000}.clash-row strong{display:block;font-size:12px;color:#9e2020}.clash-row span:not(.clash-icon){display:block;font-size:11px;color:#76869a;margin-top:2px}
.quick-entry-panel{display:grid;grid-template-columns:1.25fr 1fr 1.3fr .8fr .55fr .55fr auto;gap:10px;align-items:end;padding:15px;margin-bottom:14px;border-radius:18px;background:linear-gradient(100deg,#173c75,#295fb1 52%,#633db6);box-shadow:0 12px 30px rgba(30,67,133,.15)}.quick-entry-title{grid-column:1/-1;display:flex;gap:10px;align-items:center;color:#fff;margin-bottom:2px}.quick-entry-title>span{width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.16);display:grid;place-items:center}.quick-entry-title strong{display:block;font-size:14px}.quick-entry-title small{display:block;color:#dce9ff;font-size:11px;margin-top:2px}.quick-entry-panel label{display:grid;gap:5px;color:#e9f1ff;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.quick-entry-panel select,.quick-entry-panel input{width:100%;min-width:0;border:1px solid rgba(255,255,255,.25);background:#fff;color:#162f54;border-radius:10px;padding:10px 9px;outline:none}.quick-entry-panel input{font-size:16px;font-weight:900;text-align:center}.quick-save-btn{height:39px;border:0;border-radius:10px;padding:0 15px;background:#6ee7a8;color:#0f5132;font-weight:1000;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.12)}.quick-save-btn:hover{background:#8bf0bb}
.vehicle-chip{display:inline-flex;padding:5px 8px;border-radius:8px;background:#eaf3ff;color:#174d92;font-weight:900;letter-spacing:.03em}.clash-table-row td{background:#fff5f5!important}.assignment-help{display:grid;gap:3px;padding:12px 14px;border-radius:12px;background:linear-gradient(90deg,#edf5ff,#f5efff);border:1px solid #dce5f5;margin-bottom:14px}.assignment-help strong{color:#214d8e}.assignment-help span{font-size:12px;color:#657790}.number-field input{font-size:22px!important;font-weight:1000;text-align:center}.out-field input{background:#fff9e8!important;border-color:#f4d586!important}.in-field input{background:#eefbf4!important;border-color:#b8e6c9!important}
.driver-kpis{grid-template-columns:repeat(3,minmax(160px,1fr));max-width:780px}.driver-card-grid{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:12px}.driver-card{display:flex;align-items:center;gap:12px;border:1px solid #dfe7f1;background:linear-gradient(145deg,#fff,#f8fbff);border-radius:16px;padding:13px;box-shadow:0 4px 14px rgba(20,55,100,.04)}.driver-avatar{width:42px;height:42px;flex:0 0 42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,#3a78d6,#7647ca);color:#fff;font-weight:1000;font-size:17px}.driver-card-main{min-width:0;flex:1}.driver-card-main strong{display:block;color:#17365f;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.driver-card-main span{display:block;color:#71839a;font-size:11px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.driver-card-main small{display:block;color:#9aa7b8;font-size:10px;margin-top:4px}.driver-remove{border:1px solid #ffd3d3;background:#fff4f4;color:#b42424;border-radius:9px;padding:7px 9px;font-size:10px;font-weight:900;cursor:pointer}.driver-remove:hover{background:#ffe7e7}
.ops-snapshot{margin:-2px 0 18px;border:1px solid #dce7f3;border-radius:18px;background:linear-gradient(100deg,#f8fbff,#f5f1ff);padding:14px 16px;box-shadow:0 5px 18px rgba(30,60,110,.04)}.ops-snapshot.danger{border-left:5px solid #dc3e3e}.ops-snapshot.warning{border-left:5px solid #dba129}.ops-snapshot.good{border-left:5px solid #36a46c}.ops-snapshot-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.ops-snapshot-title span{display:block;font-size:9px;letter-spacing:.08em;color:#78899e;font-weight:900}.ops-snapshot-title strong{display:block;font-size:14px;color:#1a3c6d;margin-top:2px}.ops-snapshot-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:11px}.ops-snapshot-grid>div{padding:9px 10px;background:#fff;border:1px solid #e5ebf3;border-radius:10px}.ops-snapshot-grid span{display:block;font-size:9px;color:#7c8da3;font-weight:800}.ops-snapshot-grid strong{display:block;font-size:19px;color:#204b86;margin-top:2px}.ops-snapshot-grid .warn{background:#fff9e9}.ops-snapshot-grid .bad{background:#fff0f0}.ops-snapshot-grid .bad strong{color:#bd2828}
@media(max-width:1250px){.run-control-grid{grid-template-columns:repeat(3,minmax(210px,1fr))}.quick-entry-panel{grid-template-columns:repeat(4,1fr)}.quick-entry-title{grid-column:1/-1}.quick-save-btn{height:39px}.driver-card-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}}
@media(max-width:900px){.quick-control-row{grid-template-columns:repeat(2,1fr)}.run-control-grid{grid-template-columns:repeat(2,minmax(200px,1fr))}.quick-entry-panel{grid-template-columns:repeat(2,1fr)}.quick-save-btn{width:100%}.ops-snapshot-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.dispatch-hero{align-items:flex-start;flex-direction:column}.dispatch-hero-status{white-space:normal}.run-control-grid{grid-template-columns:1fr}.driver-card-grid{grid-template-columns:1fr}.driver-kpis{grid-template-columns:1fr 1fr}.ops-snapshot-title{align-items:flex-start;flex-direction:column}.ops-snapshot-grid{grid-template-columns:repeat(2,1fr)}.quick-entry-panel{grid-template-columns:1fr 1fr}.quick-entry-panel label:nth-of-type(1),.quick-entry-panel label:nth-of-type(2),.quick-entry-panel label:nth-of-type(3),.quick-entry-panel label:nth-of-type(4){grid-column:1/-1}.quick-save-btn{grid-column:1/-1}.quick-control-row{grid-template-columns:1fr 1fr}}

/* Same-row OUT / IN workflow */
.status.purple{background:#f1eaff;color:#6d28d9;border-color:#ddd6fe}
.same-row-guide{display:grid;grid-template-columns:48px 1fr auto;gap:13px;align-items:center;margin:0 0 14px;padding:14px 16px;border:1px solid #cddcf2;border-radius:17px;background:linear-gradient(100deg,#f0f7ff,#f8f3ff 65%,#eefcf7);box-shadow:0 5px 18px rgba(27,66,126,.05)}
.same-row-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;font-size:24px;font-weight:1000;box-shadow:0 7px 16px rgba(67,56,202,.2)}
.same-row-guide>div:nth-child(2) strong{display:block;color:#173d70;font-size:13px;letter-spacing:.03em}.same-row-guide>div:nth-child(2) span{display:block;margin-top:3px;color:#61758e;font-size:12px;line-height:1.45}
.same-row-open{min-width:92px;text-align:center;padding:9px 12px;border-radius:12px;background:#eaf8f0;border:1px solid #bce7cc}.same-row-open.has-open{background:#fff5d8;border-color:#f5d47b}.same-row-open span{display:block;font-size:9px;font-weight:900;color:#76879a;letter-spacing:.06em}.same-row-open strong{display:block;font-size:23px;color:#1a754c;margin-top:1px}.same-row-open.has-open strong{color:#9a6500}
.open-dispatch-row td{background:#fffdf6}.open-dispatch-row td:first-child{box-shadow:inset 4px 0 0 #e6ad2d}
.inline-number-btn{min-width:66px;border:1px dashed;border-radius:10px;padding:7px 10px;font-weight:1000;font-size:11px;cursor:pointer;transition:.15s ease}.inline-number-btn.out{background:#fff7dd;border-color:#e5ad2f;color:#8a5a00}.inline-number-btn.in{background:#eafaf1;border-color:#4dbb7d;color:#087247}.inline-number-btn:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(30,60,100,.1)}
.posted-number{display:inline-flex;min-width:42px;justify-content:center;border-radius:9px;padding:7px 9px;font-size:16px}.posted-number.out-number{background:#fff6d9;color:#895700}.posted-number.in-number{background:#eaf9f0;color:#087149}
.add-another-link{color:#5b35b6!important;font-weight:1000!important}.add-another-link:hover{color:#3f1d95!important}
.run-complete{margin-top:9px;padding:6px 8px;border-radius:9px;background:#eafaf1;color:#087149;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.clash-row.open-check .clash-icon{background:#fff1cc;color:#8a5d00}.clash-row.open-check strong{color:#7d5700}
.number-post-modal{width:min(520px,100%)}.number-context{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:16px}.number-context>div{padding:11px 12px;border-radius:12px;background:#f4f8fd;border:1px solid #dfe8f2}.number-context span{display:block;font-size:10px;color:#7a8ba0;font-weight:800}.number-context strong{display:block;margin-top:3px;color:#173b6b;font-size:13px}.big-number-label{display:grid;gap:8px;font-size:12px;font-weight:900;color:#50657e}.big-number-label input{width:100%;padding:16px 12px;border:2px solid #89aef0;border-radius:14px;background:#fff;font-size:34px!important;font-weight:1000;text-align:center;color:#173b70;outline:none}.big-number-label input:focus{box-shadow:0 0 0 5px rgba(37,99,235,.1);border-color:#4c82dd}.same-row-note{margin-top:10px;padding:10px 12px;border-radius:10px;background:#eef7ff;color:#315b8e;font-size:11px}
.ops-snapshot-grid{grid-template-columns:repeat(6,1fr)}
@media(max-width:800px){.same-row-guide{grid-template-columns:42px 1fr}.same-row-icon{width:42px;height:42px}.same-row-open{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between}.same-row-open strong{font-size:20px}.number-context{grid-template-columns:1fr}.ops-snapshot-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.same-row-guide{grid-template-columns:1fr}.same-row-icon{display:none}.ops-snapshot-grid{grid-template-columns:repeat(2,1fr)}.inline-number-btn{min-width:58px;padding:7px 8px}.posted-number{min-width:38px}}

/* Clean production UI: hide explanatory KPI helper text */
.kpi .hint{display:none!important}

.login-link{display:block;margin:10px auto 0;color:#315b9f;font-weight:800}
.security-form{display:grid;gap:11px}.security-form label{display:grid;gap:6px;font-size:11px;color:var(--muted);font-weight:800}.security-form input{border:1px solid var(--line);border-radius:10px;padding:10px 11px;background:#fff;color:var(--ink);outline:0}.security-form input:focus{border-color:#8db2ff;box-shadow:0 0 0 3px #eaf1ff}.security-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}.security-row:last-child{border-bottom:0}.security-row span{color:var(--muted);font-size:12px}.security-row strong{font-size:13px;overflow-wrap:anywhere}
