/* Tenant-driver table editor — shared Cabby modal language. */
.td-edit-overlay {
  --td-navy:#001b3f; --td-teal:#00b8c4; --td-text:#0c2d4a; --td-muted:#667b91; --td-line:#d9e2e8;
  position:fixed; inset:0; z-index:200000; display:flex; align-items:center; justify-content:center;
  padding:22px; background:rgba(0,27,63,.68); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
}
.td-edit-dialog {
  width:min(920px,calc(100vw - 44px)); max-height:min(860px,calc(100dvh - 44px)); overflow:hidden;
  display:flex; flex-direction:column; border:1px solid rgba(148,163,184,.28); border-radius:20px;
  background:#fff; box-shadow:0 28px 72px rgba(0,27,63,.30); font-family:"Noto Sans Thai","Prompt",sans-serif;
  animation:tdEditIn .18s ease-out;
}
@keyframes tdEditIn { from{opacity:0;transform:translateY(8px) scale(.985)} to{opacity:1;transform:none} }
.td-edit-header { min-height:82px; padding:16px 20px; display:flex; align-items:flex-start; justify-content:space-between; gap:18px; flex:0 0 auto; border-bottom:1px solid #e5edf1; background:#fff; }
.td-edit-heading { display:flex; align-items:flex-start; gap:12px; min-width:0; }
.td-edit-heading-icon { width:42px; height:42px; flex:0 0 42px; display:grid; place-items:center; border-radius:12px; background:#eaf7f8; color:#007f89; font-size:18px; }
.td-edit-heading h3 { margin:0; color:var(--td-navy); font-size:17px; line-height:1.45; }
.td-edit-heading p { margin:3px 0 0; color:var(--td-muted); font-size:11px; line-height:1.55; }
.td-edit-close { width:44px!important; height:44px!important; flex:0 0 44px!important; padding:0!important; border:0!important; border-radius:0!important; background:transparent!important; color:#6b7e90!important; font:500 20px/1 Arial,sans-serif!important; }
.td-edit-close:hover { background:#eef3f6!important; color:var(--td-navy)!important; }
.td-edit-body { padding:20px 22px; display:flex; flex-direction:column; gap:16px; min-height:0; overflow-y:auto; flex:1 1 auto; scrollbar-gutter:stable; }
.td-edit-section { padding:18px; border:1px solid #e2e9ee; border-radius:14px; background:#f9fbfc; }
.td-edit-section-title { display:flex; align-items:center; gap:9px; margin-bottom:14px; color:var(--td-navy); font-size:13px; font-weight:750; }
.td-edit-section-title i { color:#008b96; font-size:16px; }
.td-edit-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.td-edit-vehicle .td-edit-fields { grid-template-columns:repeat(4,minmax(0,1fr)); }
.td-edit-driver-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.td-edit-field { display:flex; flex-direction:column; gap:7px; margin:0; min-width:0; }
.td-edit-field > span { color:#5f7489; font-size:11px; font-weight:700; }
.td-edit-field input,.td-edit-field select { width:100%; min-height:46px; box-sizing:border-box; padding:10px 13px; border:1px solid #b8c8d3; border-radius:11px; outline:none; background:#fff; color:var(--td-text); font:600 13px/1.45 "Noto Sans Thai","Prompt",sans-serif; }
.td-edit-field input:focus,.td-edit-field select:focus { border-color:var(--td-teal); box-shadow:0 0 0 3px rgba(0,184,196,.14); }
.td-edit-footer { min-height:72px; padding:12px 20px; display:flex; justify-content:flex-end; align-items:center; gap:10px; flex:0 0 auto; border-top:1px solid #e5edf1; background:#f7fafb; }
.td-edit-secondary,.td-edit-primary { min-width:118px; min-height:46px; border-radius:11px; font:700 13px "Noto Sans Thai","Prompt",sans-serif; cursor:pointer; }
.td-edit-secondary { border:1px solid #cbd8e1; background:#fff; color:#52687d; }
.td-edit-secondary:hover { background:#eef3f6; color:var(--td-navy); }
.td-edit-primary { border:0; background:var(--td-navy); color:#fff; }
.td-edit-primary:hover { background:#003b68; }
.td-edit-primary:disabled { opacity:.58; cursor:wait; }
body:has(.td-edit-overlay) .sidebar,body:has(.td-edit-overlay) .sidebar-toggle,body.tenant-driver-dialog-open .sidebar,body.tenant-driver-dialog-open .sidebar-toggle { visibility:hidden!important; }
@media(max-width:900px){.td-edit-vehicle .td-edit-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.td-edit-driver-grid{grid-template-columns:1fr}}
@media(max-width:600px){.td-edit-overlay{padding:12px}.td-edit-dialog{width:100%;max-height:calc(100dvh - 24px);border-radius:16px}.td-edit-header,.td-edit-body{padding:16px}.td-edit-fields,.td-edit-vehicle .td-edit-fields{grid-template-columns:1fr}.td-edit-footer{padding:12px 16px}.td-edit-secondary,.td-edit-primary{flex:1;min-width:0}}
@media(prefers-reduced-motion:reduce){.td-edit-dialog{animation:none}}
