*{margin:0;padding:0;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
body{background:#f1f5f9;color:#1e293b}
.screen{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}
.hidden{display:none!important}
.login-card{background:white;padding:3rem;border-radius:1rem;box-shadow:0 4px 6px-1px rgba(0,0,0,.1);width:100%;max-width:400px}
.logo{text-align:center;margin-bottom:2rem}
.logo h1{font-size:1.5rem;margin-top:.5rem;color:#1e293b}
.logo p{color:#64748b;font-size:.875rem}
input{width:100%;padding:.75rem 1rem;border:1px solid #e2e8f0;border-radius:.5rem;margin-bottom:1rem;font-size:1rem}
input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.1)}
button{width:100%;padding:.75rem;background:#2563eb;color:white;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}
button:hover{background:#1d4ed8}
.error{color:#dc2626;font-size:.875rem;margin-top:.5rem;text-align:center}
nav{background:white;border-bottom:1px solid #e2e8f0;padding:0 2rem;display:flex;align-items:center;height:64px;gap:1rem;position:fixed;top:0;left:0;right:0;z-index:50}
.nav-brand{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.25rem;min-width:200px}
.nav-links{display:flex;gap:.25rem;flex:1}
.nav-btn{background:transparent;color:#475569;border:none;padding:.5rem 1rem;border-radius:.375rem;cursor:pointer;font-weight:500;font-size:.875rem;width:auto}
.nav-btn.active,.nav-btn:hover{background:#eff6ff;color:#2563eb}
.nav-user{display:flex;align-items:center;gap:1rem}
.nav-user button{background:#ef4444;padding:.5rem 1rem;width:auto;font-size:.875rem}
main{margin-top:64px;padding:2rem}
.section{display:none;max-width:1200px;margin:0 auto}
.section.active{display:block}
h2{font-size:1.5rem;margin-bottom:1.5rem}
.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}
.kpi-card{background:white;padding:1.5rem;border-radius:.75rem;box-shadow:0 1px 3px rgba(0,0,0,.1)}
.kpi-card h3{font-size:.875rem;color:#64748b;margin-bottom:.5rem}
.kpi-card .value{font-size:2rem;font-weight:700;color:#1e293b}
.kpi-card .label{font-size:.75rem;color:#94a3b8;margin-top:.25rem}
.data-table{background:white;border-radius:.75rem;box-shadow:0 1px 3px rgba(0,0,0,.1);overflow-x:auto}
.data-table table{width:100%;border-collapse:collapse}
.data-table th,.data-table td{padding:.75rem 1rem;text-align:left;font-size:.875rem;border-bottom:1px solid #f1f5f9}
.data-table th{background:#f8fafc;font-weight:600;color:#475569;font-size:.75rem;text-transform:uppercase}
.data-table tr:hover{background:#f8fafc}
.status{padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600}
.status.completed{background:#dcfce7;color:#166534}
.status.pending{background:#fef9c3;color:#854d0e}
.status.cancelled{background:#fee2e2;color:#991b1b}
.status.in_service,.status.driver_assigned{background:#dbeafe;color:#1e40af}
.search-bar{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}
.search-bar input{width:300px;margin:0}
.search-bar select{width:200px;padding:.75rem;border:1px solid #e2e8f0;border-radius:.5rem;font-size:.875rem}
.btn-sm{background:#2563eb;color:white;border:none;padding:.375rem .75rem;border-radius:.375rem;cursor:pointer;font-size:.75rem;width:auto}
.btn-sm:hover{background:#1d4ed8}
.btn-sm.danger{background:#ef4444}
.btn-sm.danger:hover{background:#dc2626}
.btn-sm.success{background:#16a34a}
.btn-sm.success:hover{background:#15803d}
.pagination{display:flex;justify-content:space-between;align-items:center;padding:1rem;font-size:.875rem;color:#64748b}
.pagination button{width:auto;padding:.5rem 1rem;background:#e2e8f0;color:#475569;font-size:.875rem}
.modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:100}
.modal-content{background:white;border-radius:1rem;padding:2rem;max-width:600px;width:90%;max-height:80vh;overflow-y:auto}
.modal-content h3{margin-bottom:1rem}
.modal-content .field{margin-bottom:.75rem}
.modal-content .field label{display:block;font-size:.875rem;font-weight:600;color:#475569;margin-bottom:.25rem}
.modal-content .field span{font-size:.875rem;color:#1e293b}
.modal-actions{display:flex;gap:.5rem;margin-top:1.5rem;justify-content:flex-end}
.modal-actions button{width:auto;padding:.5rem 1.5rem}
.btn-secondary{background:#e2e8f0!important;color:#475569!important}
.btn-secondary:hover{background:#cbd5e1!important}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}
@media(max-width:768px){.detail-grid{grid-template-columns:1fr}}
