.modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:2000;font-family:'Poppins',sans-serif;}
.modal.hidden{display:none;}
.modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,0.55);backdrop-filter:blur(4px);}
.modal__dialog{position:relative;background:#0b1324;color:#e2e8f0;border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,0.5);width:92%;max-width:1200px;max-height:82vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid #1f2937;}
.modal__header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #1f2937;background:#0f172a;}
.modal__title{font-weight:800;font-size:19px;letter-spacing:0.1px;}
.modal__subtitle{font-size:12px;color:#94a3b8;font-weight:500;}
.modal__close{border:1px solid #1f2937;background:#111827;font-size:18px;cursor:pointer;color:#e2e8f0;border-radius:10px;padding:6px 12px;font-weight:700;transition:all .15s ease;} 
.modal__close:hover{background:#1f2937;}
.modal__controls{display:flex;gap:12px;align-items:center;padding:14px 22px;border-bottom:1px solid #1f2937;background:#0f172a;} 
#modal-search{flex:1;padding:12px 14px;border:1px solid #1f2937;border-radius:12px;font-size:14px;font-weight:600;background:#0b1220;color:#e2e8f0;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.03);} 
#modal-search::placeholder{color:#7c8bab;}
.modal__tabs{display:flex;gap:10px;}
.modal__tab{border:1px solid #1f2937;background:#111827;padding:9px 14px;border-radius:12px;cursor:pointer;font-weight:700;color:#e2e8f0;transition:all .15s ease;letter-spacing:0.1px;} 
.modal__tab.active{background:#3b82f6;color:#fff;border-color:#3b82f6;box-shadow:0 10px 30px rgba(59,130,246,0.3);} 
.modal__body{padding:0 22px 14px 22px;overflow:auto;flex:1;background:#0b1324;}
.modal__table{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed;}
.modal__table th,.modal__table td{padding:10px 9px;border-bottom:1px solid #1f2937;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.modal__table th{background:#0f172a;cursor:pointer;color:#e2e8f0;font-weight:800;letter-spacing:0.15px;position:relative;}
.modal__table th.sort-asc,.modal__table th.sort-desc{color:#9cc4ff;}
.modal__table th.sort-asc::after{content:'▲';position:absolute;right:8px;font-size:10px;color:#9cc4ff;}
.modal__table th.sort-desc::after{content:'▼';position:absolute;right:8px;font-size:10px;color:#9cc4ff;}
.modal__table tr:hover td{background:#111827;}
.modal__table td{color:#e2e8f0;font-weight:600;}
.modal__table th:last-child,.modal__table td:last-child{text-align:left;}
.modal__footer{padding:14px 22px;border-top:1px solid #1f2937;display:flex;justify-content:flex-end;align-items:center;background:#0f172a;}
.modal__pagination{display:flex;align-items:center;gap:12px;font-weight:600;color:#cbd5e1;}
.modal__pagination button{padding:9px 14px;border:1px solid #1f2937;border-radius:12px;background:#111827;color:#e2e8f0;cursor:pointer;transition:all .15s ease;font-weight:700;}
.modal__pagination button:hover{background:#1f2937;border-color:#3b82f6;}
.modal__dialog--wide{max-width:1400px;}
.sortable-header{cursor:pointer;user-select:none;transition:color .15s ease;}
.sortable-header:hover{color:#9cc4ff;}
.sortable-header.active-sort{color:#9cc4ff;}
#live-drivers-search{flex:1;padding:12px 14px;border:1px solid #1f2937;border-radius:12px;font-size:14px;font-weight:600;background:#0b1220;color:#e2e8f0;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.03);}
#live-drivers-search::placeholder{color:#7c8bab;}

/* Original backup modal styles for live drivers modal */
.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,0.55);backdrop-filter:blur(4px);}
.modal-content{position:relative;background:var(--color-card-bg, #ffffff);border-radius:18px;padding:20px 24px;max-width:1200px;width:92%;max-height:85vh;overflow:auto;box-shadow:0 24px 60px rgba(0,0,0,0.3);}
.modal-content--large{max-width:1400px;width:98vw;}
.modal-close{position:absolute;right:16px;top:16px;border:none;background:rgba(0,0,0,0.1);font-size:24px;cursor:pointer;color:var(--color-text-main, #333);border-radius:8px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:all 0.15s ease;}
.modal-close:hover{background:rgba(0,0,0,0.2);}
.modal-title{font-weight:700;font-size:20px;color:var(--color-heading, #050825);margin-bottom:4px;}
.modal-subtitle{font-size:12px;color:var(--color-muted, #a0a0b8);font-weight:500;display:block;margin-top:4px;}
.modal-body{padding:16px 0;}
.modal-table-wrapper{border-radius:12px;border:1px solid var(--color-border-soft, #e5e5ee);max-height:65vh;overflow-y:auto;overflow-x:auto;}
.modal-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:auto;}
.modal-table thead{background:linear-gradient(135deg, #f8f9ff 0%, #eef0f7 100%);position:sticky;top:0;z-index:1;}
.modal-table th,.modal-table td{padding:12px 16px;white-space:nowrap;border-bottom:1px solid var(--color-border-soft, #e5e5ee);}
.modal-table th{font-weight:600;color:var(--color-heading, #050825);text-transform:uppercase;font-size:11px;letter-spacing:0.5px;text-align:left;}
.modal-table th.nowrap{white-space:nowrap;}
.modal-table tbody tr{transition:background-color 0.2s ease;}
.modal-table tbody tr:hover{background:rgba(59,75,255,0.05);}
.modal-table tbody tr:nth-child(even){background:rgba(248,249,255,0.5);}

/* Center modal text across all modals */
.modal-content,
.modal__dialog,
.modal__header,
.modal-title,
.modal-subtitle,
.modal-body,
.modal__body,
.modal-table th,
.modal-table td,
.modal__table th,
.modal__table td {
    text-align: center !important;
}

/* Dark mode overrides for modal */
body.dark-mode .modal-content{background:var(--color-card-bg, #252538);box-shadow:0 24px 60px rgba(0,0,0,0.6);} 
body.dark-mode .modal-close{color:var(--color-muted, #b4b4d0);background:rgba(255,255,255,0.1);} 
body.dark-mode .modal-close:hover{background:rgba(255,255,255,0.2);} 
body.dark-mode .modal-table thead{background:linear-gradient(135deg, rgba(31,31,46,1) 0%, rgba(22,22,31,1) 100%);} 
body.dark-mode .modal-table th{color:var(--color-heading, #f5f5ff);}  
body.dark-mode .modal-table td{color:var(--color-text-main, #e8e8f5);}  
body.dark-mode .modal-table tbody tr:hover{background:rgba(88,101,242,0.15);}  
body.dark-mode .modal-table tbody tr:nth-child(even){background:rgba(31,31,46,0.3);}  
body.dark-mode .modal-table-wrapper{background:rgba(26,26,46,0.5);}  

