/* ==================================================
   ASSAM MOTORS — ERP PREMIUM THEME
   Visual language aligned with Admin Hiring page.
   Loaded after the existing Workshop ERP styles so it
   can modernize presentation without changing logic.
   ================================================== */

:root{
  --erp-navy:#0b2545;
  --erp-blue:#1e3a8a;
  --erp-blue-soft:#eff6ff;
  --erp-blue-border:#93c5fd;
  --erp-bg:#f4f6fa;
  --erp-card:#ffffff;
  --erp-border:#e2e8f0;
  --erp-text:#0b2545;
  --erp-muted:#64748b;
  --erp-green:#16a34a;
  --erp-green-soft:#f0fdf4;
  --erp-amber:#d97706;
  --erp-red:#dc2626;
  --erp-shadow:0 4px 20px rgba(11,37,69,.06);
  --erp-shadow-hover:0 10px 34px rgba(11,37,69,.12);
}

body{background:var(--erp-bg);color:var(--erp-text);-webkit-font-smoothing:antialiased}
.ws-main{background:var(--erp-bg)}

/* Header: same navy gradient family as Hiring Applications */
.ws-topbar{
  background:linear-gradient(135deg,var(--erp-navy),var(--erp-blue));
  color:#fff;
  padding:18px 28px;
  border-bottom:0;
  box-shadow:0 4px 20px rgba(11,37,69,.15);
}
.ws-topbar h2{color:#fff;font-size:20px;font-weight:900;letter-spacing:.2px}
.ws-topbar #wsCurrentDate{color:#cbd5e1!important}
.ws-live-badge{
  background:rgba(255,255,255,.14);
  color:#dcfce7;
  border:1px solid rgba(255,255,255,.2);
  padding:6px 12px;
}

.ws-content-area{padding:24px 28px 60px}

/* Sidebar stays Assam Motors navy, active state now uses the same blue family */
.ws-sidebar{background:var(--erp-navy)}
.ws-nav-item.active{
  background:linear-gradient(135deg,var(--erp-blue),var(--erp-navy));
  box-shadow:0 5px 16px rgba(30,58,138,.35);
}

/* Hiring-style statistic cards */
.ws-stats{gap:12px;margin-bottom:20px}
.ws-stat-card{
  background:var(--erp-card);
  border:1px solid var(--erp-border);
  border-radius:14px;
  padding:16px;
  box-shadow:0 2px 10px rgba(11,37,69,.04);
  min-height:94px;
}
.ws-stat-card:hover{transform:translateY(-2px);border-color:#cbd5e1;box-shadow:0 6px 20px rgba(11,37,69,.08)}
.ws-stat-card .label{font-size:10px;font-weight:800;color:var(--erp-muted);letter-spacing:.8px;margin-bottom:7px}
.ws-stat-card .value{font-size:24px;font-weight:900;color:var(--erp-text)}
.ws-stat-card.erp-stat-blue{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#93c5fd}
.ws-stat-card.erp-stat-green{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#86efac}
.ws-stat-card.erp-stat-dark{background:linear-gradient(135deg,var(--erp-navy),var(--erp-blue));border-color:var(--erp-navy)}
.ws-stat-card.erp-stat-dark .label{color:#94a3b8}.ws-stat-card.erp-stat-dark .value{color:#fff}

/* Main white panels */
.ws-section-box{
  background:var(--erp-card);
  border:1px solid var(--erp-border);
  border-radius:16px;
  padding:18px;
  box-shadow:var(--erp-shadow);
}
.ws-section-box h3{font-size:16px;font-weight:800;color:var(--erp-text)}
.ws-box-head{gap:12px}

/* Inputs / filters */
.ws-search-input,
.ws-form-group input,.ws-form-group select,.ws-form-group textarea,
.item-row input,.item-row select{
  border:1.5px solid var(--erp-border);
  border-radius:10px;
  background:#f8fafc;
  color:var(--erp-text);
}
.ws-search-input:focus,
.ws-form-group input:focus,.ws-form-group select:focus,.ws-form-group textarea:focus,
.item-row input:focus,.item-row select:focus{
  border-color:var(--erp-blue);
  background:#fff;
  box-shadow:0 0 0 4px rgba(30,58,138,.10);
}

/* Buttons follow Hiring page hierarchy */
.ws-btn{border-radius:10px;font-weight:700}
.ws-btn.primary{background:var(--erp-navy);color:#fff}
.ws-btn.primary:hover{background:var(--erp-blue);box-shadow:0 7px 18px rgba(30,58,138,.22)}
.ws-btn.secondary{background:#f8fafc;color:var(--erp-text);border:1px solid var(--erp-border)}
.ws-btn.secondary:hover{background:#eef2ff;color:var(--erp-blue);border-color:#bfdbfe}
.ws-btn.success{background:var(--erp-green);color:#fff}
.ws-btn.danger{background:#fff1f2;color:var(--erp-red);border:1px solid #fecdd3}
.ws-btn.danger:hover{background:var(--erp-red);color:#fff;border-color:var(--erp-red)}

/* Tables become separated card-like rows like Hiring applicant cards */
.ws-table-wrap{border:0;background:transparent;border-radius:0;overflow-x:auto}
.ws-table{border-collapse:separate;border-spacing:0 10px;margin-top:-10px}
.ws-table thead th{
  background:transparent;
  border-bottom:0;
  color:var(--erp-muted);
  font-size:10px;
  font-weight:800;
  letter-spacing:.7px;
  padding:8px 12px;
}
.ws-table tbody tr{filter:drop-shadow(0 2px 7px rgba(11,37,69,.05));transition:transform .2s,filter .2s}
.ws-table tbody tr:hover{transform:translateY(-1px);filter:drop-shadow(0 6px 14px rgba(11,37,69,.10))}
.ws-table tbody td{background:#fff;border-top:1px solid var(--erp-border);border-bottom:1px solid var(--erp-border);padding:13px 12px}
.ws-table tbody td:first-child{border-left:1px solid var(--erp-border);border-radius:12px 0 0 12px}
.ws-table tbody td:last-child{border-right:1px solid var(--erp-border);border-radius:0 12px 12px 0}
.ws-table tr:hover td{background:#fff}

/* Job-card modal */
.ws-modal-overlay{background:rgba(11,37,69,.72);backdrop-filter:blur(5px)}
.ws-modal{border-radius:18px;border:1px solid rgba(255,255,255,.4);box-shadow:0 25px 70px rgba(11,37,69,.32)}
.ws-modal-head{background:linear-gradient(135deg,var(--erp-navy),var(--erp-blue));margin:-32px -32px 24px;padding:25px 72px 22px 32px;color:#fff;border-radius:18px 18px 0 0}
.ws-modal-head h3{color:#fff;font-size:22px;font-weight:900}.ws-modal-head p{color:#cbd5e1}
.ws-modal-close{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.2);top:18px;right:18px}
.ws-modal-close:hover{background:#fff;color:var(--erp-navy)}
.ws-form-section{background:#fff;border:1px solid var(--erp-border);box-shadow:0 2px 10px rgba(11,37,69,.03);border-radius:14px}
.ws-form-section-title{color:var(--erp-text);border-bottom:1px solid #f1f5f9}
.ws-form-submit{background:linear-gradient(135deg,var(--erp-navy),var(--erp-blue));border-radius:10px}
.ws-form-submit:hover{box-shadow:0 10px 25px rgba(30,58,138,.28)}
.grand-total-box{background:linear-gradient(135deg,var(--erp-navy),var(--erp-blue));box-shadow:0 7px 22px rgba(11,37,69,.14)}
.grand-total-box .gt-value{color:#fff}

/* Customer page — same card vocabulary as Hiring Applications */
#ws-page-customers>.ws-section-box{background:transparent;border:0;box-shadow:none;padding:0}
#ws-page-customers>.ws-section-box>h3{display:none}
.ec-head{
  background:linear-gradient(135deg,var(--erp-navy),var(--erp-blue));
  color:#fff;
  padding:20px 22px;
  border-radius:16px;
  box-shadow:0 4px 20px rgba(11,37,69,.12);
}
.ec-head .ec-code,.ec-head p{color:#cbd5e1}.ec-head h2{color:#fff;margin:5px 0;font-size:22px;font-weight:900}
.ec-head .ec-btn{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.25)}
.ec-head .ec-btn:hover{background:#fff;color:var(--erp-navy)}
.ec-stats{gap:12px;margin:20px 0}
.ec-stats>div{
  background:#fff;
  border:1px solid var(--erp-border);
  border-top:1px solid var(--erp-border);
  padding:16px;
  border-radius:14px;
  box-shadow:0 2px 10px rgba(11,37,69,.04);
}
.ec-stats>div:nth-child(3){background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#93c5fd}
.ec-stats>div:nth-child(4){background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#86efac}
.ec-stats span{font-size:10px;font-weight:800;letter-spacing:.65px;text-transform:uppercase;color:var(--erp-muted)}
.ec-stats strong{font-size:24px;font-weight:900;color:var(--erp-text);margin-top:6px}
.ec-toolbar{
  display:grid;
  grid-template-columns:2fr 1fr;
  gap:12px;
  background:#fff;
  padding:16px;
  border:1px solid var(--erp-border);
  border-radius:14px;
  box-shadow:0 2px 10px rgba(11,37,69,.04);
  margin:0 0 18px;
}
.ec-toolbar input,.ec-toolbar select{border:1.5px solid var(--erp-border);background:#f8fafc;border-radius:10px;padding:12px 14px;color:var(--erp-text);outline:none}
.ec-toolbar input:focus,.ec-toolbar select:focus{border-color:var(--erp-blue);background:#fff;box-shadow:0 0 0 4px rgba(30,58,138,.10)}
.ec-card{
  background:#fff;
  border:1px solid var(--erp-border);
  border-radius:16px;
  overflow:hidden;
  box-shadow:var(--erp-shadow);
  margin:14px 0;
  transition:transform .22s,box-shadow .22s;
}
.ec-card:hover{transform:translateY(-2px);box-shadow:var(--erp-shadow-hover)}
.ec-person{background:#fff;border-right:1px solid #f1f5f9;padding:20px 22px}
.ec-person h3{font-size:16px!important;font-weight:800;color:var(--erp-text)}
.ec-person p{color:var(--erp-muted)}
.ec-code{color:#94a3b8;font-weight:800}
.ec-badge{background:#dbeafe;color:#1e40af;border-radius:10px;padding:4px 9px;font-weight:800}
.ec-actions{gap:8px}
.ec-btn{background:#f8fafc;color:var(--erp-text);border:1px solid var(--erp-border);border-radius:10px;padding:9px 12px;font-weight:700;transition:.2s}
.ec-btn:hover{background:#eff6ff;color:var(--erp-blue);border-color:#bfdbfe;transform:translateY(-1px)}
.ec-btn.ec-green{background:#dcfce7;color:#166534;border-color:#86efac}
.ec-vehicles{padding:20px 22px;background:#fbfdff}.ec-vehicles h4{font-weight:800;color:var(--erp-text)}
.ec-vehicles details{background:#fff;border:1px solid var(--erp-border);border-radius:12px;padding:13px 15px;margin:10px 0}
.ec-vehicles details[open]{box-shadow:0 4px 15px rgba(11,37,69,.06)}
.ec-vehicles summary{color:var(--erp-text)}
.ec-vehicles dl{background:#f8fafc;border:1px solid #f1f5f9;border-radius:10px}

#ecVehicleDialog{border:1px solid var(--erp-border);border-radius:18px;box-shadow:0 25px 70px rgba(11,37,69,.25)}
#ecVehicleDialog::backdrop{background:rgba(11,37,69,.70);backdrop-filter:blur(4px)}
.ec-vehicle-form input{background:#f8fafc;border:1.5px solid var(--erp-border);border-radius:10px;outline:none}
.ec-vehicle-form input:focus{background:#fff;border-color:var(--erp-blue);box-shadow:0 0 0 4px rgba(30,58,138,.10)}

@media(max-width:900px){
  .ws-content-area{padding:18px 16px 50px}
  .ws-topbar{padding:15px 16px}
  .ec-toolbar{grid-template-columns:1fr}
  .ws-table{min-width:900px}
}
@media(max-width:600px){
  .ws-stats,.ec-stats{grid-template-columns:1fr 1fr}
  .ec-head{align-items:flex-start;flex-direction:column}
  .ec-card{grid-template-columns:1fr}
  .ec-person{border-right:0;border-bottom:1px solid #f1f5f9}
}


/* ===== Unified Configuration topbar / mapping shell (2026-10-02) ===== */
.pm-main{background:var(--erp-bg)!important}
.pm-topbar{
  background:linear-gradient(135deg,var(--erp-navy),var(--erp-blue))!important;
  color:#fff!important;
  padding:18px 28px!important;
  border-bottom:0!important;
  box-shadow:0 4px 20px rgba(11,37,69,.15)!important;
}
.pm-topbar h2{color:#fff!important;font-size:20px!important;font-weight:900!important;letter-spacing:.2px!important}
.pm-content{background:var(--erp-bg)!important;padding:24px 28px 60px!important}
.pm-sidebar{background:var(--erp-navy)!important}
@media(max-width:700px){.pm-topbar{padding:15px 16px!important}.pm-content{padding:18px 16px 50px!important}}
.ws-topbar #vmDate{color:#dbeafe!important}
.pm-topbar .pm-btn-secondary{background:rgba(255,255,255,.12)!important;color:#fff!important;border:1px solid rgba(255,255,255,.25)!important}
.pm-topbar .pm-btn-secondary:hover{background:rgba(255,255,255,.2)!important}
