@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";.toast{position:fixed;top:20px;right:20px;min-width:320px;max-width:420px;background:#fff;border-radius:12px;box-shadow:0 8px 24px #00000026;z-index:10000;animation:slideInRight .3s cubic-bezier(.4,0,.2,1);overflow:hidden}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-content{display:flex;align-items:center;gap:12px;padding:16px 20px;position:relative}.toast-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}.toast-success .toast-icon{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;box-shadow:0 4px 12px #4caf504d}.toast-error .toast-icon{background:linear-gradient(135deg,#f44336,#e53935);color:#fff;box-shadow:0 4px 12px #f443364d}.toast-warning .toast-icon{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;box-shadow:0 4px 12px #ff98004d}.toast-info .toast-icon{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;box-shadow:0 4px 12px #2196f34d}.toast-message{flex:1;font-size:14px;font-weight:500;color:var(--text-dark);line-height:1.5}.toast-close{background:none;border:none;color:var(--text-light);font-size:18px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease;flex-shrink:0}.toast-close:hover{background:#0000000d;color:var(--text-dark)}.toast-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#0000000d;overflow:hidden}.toast-progress-bar{height:100%;background:linear-gradient(90deg,#4caf50,#45a049);animation:progressBar linear forwards}.toast-success .toast-progress-bar{background:linear-gradient(90deg,#4caf50,#45a049)}.toast-error .toast-progress-bar{background:linear-gradient(90deg,#f44336,#e53935)}.toast-warning .toast-progress-bar{background:linear-gradient(90deg,#ff9800,#f57c00)}.toast-info .toast-progress-bar{background:linear-gradient(90deg,#2196f3,#1976d2)}@keyframes progressBar{0%{width:100%}to{width:0%}}@media (max-width: 768px){.toast{top:10px;right:10px;left:10px;min-width:auto;max-width:none}}.sidebar-pro{position:fixed;left:0;top:0;width:220px;height:100vh;background:#1a202c;display:flex;flex-direction:column;z-index:1000;transition:width .25s ease;overflow:hidden}.sidebar-pro.collapsed{width:64px}.sidebar-pro-header{padding:16px;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.sidebar-pro-logo{display:flex;align-items:center;justify-content:center;min-height:56px}.sidebar-pro-logo-img{max-height:56px;height:auto;width:auto;max-width:100%;object-fit:contain}.sidebar-pro.collapsed .sidebar-pro-logo-img{max-height:44px}.sidebar-pro-user{display:flex;align-items:center;gap:10px;margin-top:14px;padding:8px 0}.sidebar-pro.collapsed .sidebar-pro-user{display:none}.sidebar-pro-avatar{width:32px;height:32px;border-radius:50%;background:#ffffff1f;color:#fff;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-pro-user-name{font-size:12px;color:#fffc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.sidebar-pro-nav{flex:1;padding:12px 10px;overflow-y:auto}.sidebar-pro-item{display:flex;align-items:center;gap:10px;padding:8px 12px;margin-bottom:2px;color:#ffffffbf;text-decoration:none;border-radius:6px;transition:all .15s ease;font-size:13px}.sidebar-pro.collapsed .sidebar-pro-item{justify-content:center;padding:10px}.sidebar-pro-item:hover{background:#ffffff14;color:#fff}.sidebar-pro-item.active{background:#ffffff1a;color:#fff}.sidebar-pro-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.9}.sidebar-pro-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-pro.collapsed .sidebar-pro-label{display:none}.sidebar-pro-footer{padding:12px 10px;border-top:1px solid rgba(255,255,255,.06);flex-shrink:0}.sidebar-pro-logout{display:flex;align-items:center;gap:10px;padding:8px 12px;width:100%;border:none;background:transparent;color:#ffffffb3;font-size:13px;cursor:pointer;border-radius:6px;transition:all .15s ease;text-align:left}.sidebar-pro.collapsed .sidebar-pro-logout{justify-content:center}.sidebar-pro-logout:hover{background:#ffffff14;color:#fff}@media (max-width: 768px){.sidebar-pro{transform:translate(-100%)}.sidebar-pro.collapsed{transform:translate(0);width:64px}}.chat-notification{position:fixed;top:20px;right:20px;min-width:360px;max-width:420px;background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;box-shadow:0 12px 32px #00000026,0 4px 8px #0000001a;z-index:10001;animation:slideInRight .4s cubic-bezier(.34,1.56,.64,1);overflow:hidden;cursor:pointer;transition:all .3s ease;border:1px solid rgba(0,0,0,.05)}.chat-notification:hover{transform:translateY(-2px);box-shadow:0 16px 40px #0003,0 6px 12px #00000026}@keyframes slideInRight{0%{transform:translate(120%);opacity:0}to{transform:translate(0);opacity:1}}.chat-notification-content{display:flex;align-items:flex-start;gap:16px;padding:20px;position:relative}.chat-notification-icon{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-light) 100%);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 4px 12px #1565c066}.chat-notification-body{flex:1;min-width:0}.chat-notification-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;gap:12px}.chat-notification-sender{font-size:15px;font-weight:600;color:#1a1a1a;line-height:1.4}.chat-notification-time{font-size:12px;color:#6c757d;white-space:nowrap;flex-shrink:0}.chat-notification-message{font-size:14px;color:#495057;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.chat-notification-close{background:none;border:none;color:#6c757d;font-size:18px;cursor:pointer;padding:4px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease;flex-shrink:0;position:absolute;top:12px;right:12px}.chat-notification-close:hover{background:#0000000d;color:#1a1a1a}@media (max-width: 768px){.chat-notification{top:10px;right:10px;left:10px;min-width:auto;max-width:none}}.login-wrapper{min-height:100vh;display:grid;grid-template-columns:48% 52%;position:relative;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#e2e8f0}.login-left-panel{background:#1e293b;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:80px 60px;overflow:hidden}.login-pattern-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 25% 25%,rgba(255,255,255,.04) 0%,transparent 50%),radial-gradient(circle at 75% 75%,rgba(255,255,255,.04) 0%,transparent 50%);background-size:400px 400px;opacity:.8}.login-brand-section{position:relative;z-index:3;text-align:center;animation:slideInUp 1s cubic-bezier(.16,1,.3,1)}@keyframes slideInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.login-logo-container{position:relative;margin-bottom:40px;display:inline-block}.login-logo-symbol{width:140px;height:140px;border-radius:12px;background:#f8fafc;display:flex;align-items:center;justify-content:center;font-size:72px;font-weight:800;color:#1e293b;box-shadow:0 2px 8px #00000014;border:1px solid #cbd5e1;margin:0 auto;transition:all .2s ease;position:relative;z-index:2}.login-logo-img{width:200px;height:auto;max-height:180px;border-radius:12px;background:transparent;padding:12px;object-fit:contain;margin:0 auto;display:block;transition:all .2s ease;position:relative;z-index:2}.login-logo-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:160px;height:160px;background:radial-gradient(circle,rgba(255,255,255,.08) 0%,transparent 70%);border-radius:50%;filter:blur(16px);z-index:1}.login-logo-container:hover .login-logo-symbol,.login-logo-container:hover .login-logo-img{transform:translateY(-4px);box-shadow:0 4px 12px #0000001f}.login-brand-separator{margin:36px auto 28px;width:80px;height:4px;position:relative}.login-brand-separator span{display:block;width:100%;height:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);position:relative}.login-brand-separator span:before,.login-brand-separator span:after{content:"";position:absolute;top:50%;width:5px;height:5px;background:#fff6;border-radius:50%;transform:translateY(-50%)}.login-brand-separator span:before{left:-12px}.login-brand-separator span:after{right:-12px}.login-brand-title{font-size:42px;font-weight:800;color:#fff;margin:0 0 16px;letter-spacing:-1.5px;line-height:1.1;text-shadow:0 2px 20px rgba(0,0,0,.2)}.login-brand-description{font-size:15px;font-weight:400;color:#ffffffb3;line-height:1.6;margin:0;letter-spacing:.2px}.login-decoration-circles{position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;z-index:1}.circle{position:absolute;border:1px solid rgba(255,255,255,.06);border-radius:50%}.circle-1{width:400px;height:400px;top:-100px;right:-100px;animation:floatCircle 25s ease-in-out infinite}.circle-2{width:300px;height:300px;bottom:-80px;left:-80px;animation:floatCircle 20s ease-in-out infinite reverse}.circle-3{width:200px;height:200px;top:50%;left:20%;animation:floatCircle 15s ease-in-out infinite}@keyframes floatCircle{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(30px,-30px) rotate(120deg)}66%{transform:translate(-20px,20px) rotate(240deg)}}.login-right-panel{background:#e2e8f0;display:flex;align-items:center;justify-content:center;padding:80px 60px;position:relative;overflow:hidden}.login-panel-backdrop{position:absolute;top:0;right:0;width:500px;height:500px;background:radial-gradient(circle,rgba(30,41,59,.04) 0%,transparent 70%);border-radius:50%;transform:translate(30%,-30%);pointer-events:none}.login-form-wrapper{width:100%;max-width:440px;position:relative;z-index:2;padding:40px;background:#fff;border-radius:12px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;animation:slideInRight .5s cubic-bezier(.16,1,.3,1)}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.login-header-section{margin-bottom:28px}.login-title-main{font-size:24px;font-weight:700;color:#1e293b;margin:0 0 8px;letter-spacing:-.5px;line-height:1.2}.login-title-subtitle{font-size:14px;font-weight:400;color:#64748b;margin:0;line-height:1.5}.login-form-elegant{display:flex;flex-direction:column;gap:24px}.login-error-alert{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:13px;font-weight:500;animation:slideDown .3s ease}.error-messages{flex:1}.error-list{margin:8px 0 0;padding-left:20px;list-style:disc}.error-list li{margin:4px 0}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.error-icon-svg{width:20px;height:20px;flex-shrink:0}.form-input-group{position:relative;margin-bottom:4px}.form-input-group:last-of-type{margin-bottom:0}.form-input-group input{width:100%;padding:16px 14px;border:1px solid #e2e8f0;background:#f8fafc;font-size:15px;font-weight:500;color:#1e293b;border-radius:8px;transition:all .2s ease;outline:none;box-sizing:border-box;font-family:Inter,sans-serif}.form-input-group input::placeholder{color:#94a3b8}.form-input-group input.input-focused,.form-input-group input:focus{border-color:#1e293b;background:#fff;box-shadow:0 0 0 2px #1e293b1a}.form-input-group label{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:14px;font-weight:500;color:#64748b;pointer-events:none;transition:all .2s ease}.form-input-group input:focus+label,.form-input-group input.input-focused+label,.form-input-group input:not(:placeholder-shown)+label,.form-input-group label.label-active{top:-10px;left:12px;transform:none;font-size:11px;font-weight:600;color:#1e293b;background:#fff;padding:0 6px;text-transform:uppercase;letter-spacing:.3px}.input-underline,.input-underline-fill{display:none}.login-button-premium{width:100%;padding:14px 24px;margin-top:8px;background:#1e293b;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;font-family:Inter,sans-serif;cursor:pointer;transition:all .2s ease;position:relative;box-shadow:0 2px 8px #00000014}.login-button-premium:hover:not(:disabled){background:#334155;transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.login-button-premium:active:not(:disabled){transform:translateY(0)}.login-button-premium:disabled{opacity:.8;cursor:not-allowed}.button-content{display:flex;align-items:center;justify-content:center;gap:12px;position:relative;z-index:1}.button-arrow{width:20px;height:20px;transition:transform .3s ease}.login-button-premium:hover:not(:disabled) .button-arrow{transform:translate(4px)}.button-spinner{width:20px;height:20px;animation:spin .8s linear infinite}.spinner-circle,.spinner-path{fill:none}.spinner-path{stroke-linecap:round}@media (max-width: 1024px){.login-wrapper{grid-template-columns:1fr}.login-left-panel{min-height:400px;padding:60px 40px}.login-brand-title{font-size:36px}.login-brand-description{font-size:15px}}@media (max-width: 640px){.login-right-panel{padding:60px 32px}.login-left-panel{padding:50px 32px}.login-title-main{font-size:32px}.login-title-subtitle{font-size:15px}.login-logo-symbol{width:100px;height:100px;font-size:48px}.login-logo-img{max-width:140px;max-height:120px}.login-form-wrapper{padding:28px 24px}.login-form-elegant{gap:24px}}.page-header-pro{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:#fff;border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:100;min-height:52px}.header-pro-left{display:flex;align-items:center;gap:12px}.header-pro-toggle{width:36px;height:36px;border:none;background:#f1f5f9;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#475569;transition:all .2s ease}.header-pro-toggle:hover{background:#e2e8f0;color:#1e293b}.header-pro-back{width:36px;height:36px;border:none;background:transparent;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;color:#64748b;transition:all .2s ease}.header-pro-back:hover{background:#f1f5f9;color:#1e293b}.header-pro-title{font-size:18px;font-weight:600;color:#1e293b;margin:0;letter-spacing:-.2px}.header-pro-actions{display:flex;align-items:center;gap:10px}.header-pro-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;background:#fff;color:#475569}.header-pro-btn.secondary{background:#f8fafc;border-color:#e2e8f0}.header-pro-btn.secondary:hover:not(.disabled){background:#f1f5f9;border-color:#cbd5e1}.header-pro-btn.primary{background:#1e293b;border-color:#1e293b;color:#fff}.header-pro-btn.primary:hover:not(.disabled){background:#334155}.header-pro-btn.disabled{opacity:.7;cursor:not-allowed}.header-pro-btn-icon{display:inline-flex;align-items:center;justify-content:center}.header-pro-btn-icon.spinning svg{animation:spin .8s linear infinite}@media (max-width: 768px){.page-header-pro{padding:10px 16px;min-height:48px}.header-pro-title{font-size:16px}.header-pro-btn{padding:6px 12px;font-size:12px}}.estadisticas-container{background:#e2e8f0;min-height:100vh}.content-wrapper{padding:16px 20px}.summary-cards-pro{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.summary-card-pro{background:#fff;border-radius:8px;padding:16px;display:flex;align-items:center;gap:12px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;transition:box-shadow .2s ease,border-color .2s ease}.card-pro-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.card-pro-number{font-size:22px;font-weight:700;color:#1e293b;line-height:1.2}.card-pro-label{font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.3px;margin-top:2px}.middle-section-pro,.bottom-section-pro{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:20px}.panel-pro{background:#fff;border-radius:8px;padding:16px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;transition:box-shadow .2s ease}.panel-pro-header h3{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 12px}.chart-container-pro{margin-top:8px}.chart-container-pro .recharts-cartesian-axis-tick-value{font-size:11px;fill:#64748b}.recargas-summary-pro{margin-top:12px;padding:12px;background:#f1f5f9;border-radius:6px;border:1px solid #cbd5e1}.recargas-grid-pro{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;font-size:12px;color:#475569}.recargas-total-pro{grid-column:1 / -1;margin-top:8px;padding-top:8px;border-top:1px solid #cbd5e1;font-weight:600;color:#1e293b}.top-section-pro{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:20px}.top-list-pro{display:flex;flex-direction:column;gap:6px}.top-item-pro{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#f8fafc;border-radius:6px;border:1px solid #cbd5e1;transition:box-shadow .2s ease,background .2s ease}.top-item-pro:hover{background:#f1f5f9;box-shadow:0 1px 4px #0000000f}.top-rank-pro{width:28px;height:28px;border-radius:6px;background:#1e293b;color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.top-info-pro{flex:1;min-width:0}.top-name-pro{font-size:13px;font-weight:600;color:#1e293b}.top-phone-pro{font-size:11px;color:#64748b;margin-top:1px}.top-viajes-pro{font-size:12px;font-weight:600;color:#475569}.promedios-section-pro{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.promedio-card-pro{background:#fff;border-radius:8px;padding:14px;text-align:center;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;transition:box-shadow .2s ease}.promedio-card-pro:hover{box-shadow:0 4px 12px #0000001a}.promedio-icon-pro{font-size:20px;margin-bottom:8px;opacity:.8}.promedio-number-pro{font-size:18px;font-weight:700;color:#1e293b;line-height:1.2}.promedio-label-pro{font-size:10px;color:#64748b;text-transform:uppercase;letter-spacing:.3px;margin-top:4px}.charts-section-pro{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:20px}.conductor-vehiculo-section-pro{margin-top:24px;margin-bottom:20px}.section-header-pro{margin-bottom:16px}.section-title-pro{font-size:16px;font-weight:600;color:#1e293b;margin:0 0 4px}.section-subtitle-pro{font-size:12px;color:#64748b;margin:0}.estado-section-pro{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:20px}.estado-grid-pro{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.estado-grid-pro.estado-grid-3{grid-template-columns:repeat(3,1fr)}.estado-item-pro{background:#f8fafc;border-radius:6px;padding:12px;text-align:center;border:1px solid #cbd5e1;box-shadow:0 1px 3px #0000000a}.estado-number-pro{font-size:20px;font-weight:700;color:#1e293b;line-height:1.2}.estado-label-pro{font-size:10px;color:#64748b;text-transform:uppercase;letter-spacing:.3px;margin-top:4px}.estado-porcentaje-pro{font-size:13px;font-weight:600;margin-top:2px}.estado-item-pro.estado-activo .estado-number-pro,.estado-item-pro.estado-activo .estado-porcentaje-pro{color:#16a34a}.estado-item-pro.estado-inactivo .estado-number-pro,.estado-item-pro.estado-inactivo .estado-porcentaje-pro{color:#dc2626}.estado-item-pro.estado-con-vehiculo .estado-number-pro,.estado-item-pro.estado-con-vehiculo .estado-porcentaje-pro{color:#2563eb}.estado-item-pro.estado-sin-vehiculo .estado-number-pro,.estado-item-pro.estado-sin-vehiculo .estado-porcentaje-pro,.estado-item-pro.estado-suspendido .estado-number-pro,.estado-item-pro.estado-suspendido .estado-porcentaje-pro{color:#eab308}.estado-item-pro.estado-eliminado .estado-number-pro,.estado-item-pro.estado-eliminado .estado-porcentaje-pro{color:#dc2626}.documentos-fotos-section-pro{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:20px}.fotos-grid-pro{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.foto-card-pro{background:#f8fafc;border-radius:6px;padding:12px;text-align:center;border:1px solid #cbd5e1;box-shadow:0 1px 3px #0000000a}.foto-number-pro{font-size:18px;font-weight:700;color:#1e293b}.foto-label-pro{font-size:10px;color:#64748b;text-transform:uppercase;letter-spacing:.3px;margin-top:4px}.foto-card-pro.foto-success .foto-number-pro{color:#16a34a}.foto-card-pro.foto-pending .foto-number-pro{color:#eab308}.foto-card-pro.foto-rejected .foto-number-pro{color:#dc2626}.analisis-section-pro{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.sin-datos-pro{text-align:center;padding:24px 16px;color:#64748b;font-size:12px;font-style:italic}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:32px}.summary-card{background:linear-gradient(135deg,var(--card-color-start),var(--card-color-end));border-radius:20px;padding:28px;display:flex;align-items:center;gap:20px;color:#fff;box-shadow:var(--shadow-lg);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.summary-card:before{content:"";position:absolute;top:-50%;right:-20%;width:200px;height:200px;background:#ffffff1a;border-radius:50%}.summary-card:hover{transform:translateY(-8px);box-shadow:0 12px 40px #0003}.card-purple{--card-color-start: #9C27B0;--card-color-end: #7B1FA2}.card-pink{--card-color-start: #E91E63;--card-color-end: #C2185B}.card-blue{--card-color-start: #1976D2;--card-color-end: #1565C0}.card-green{--card-color-start: #4CAF50;--card-color-end: #388E3C}.card-icon{font-size:52px;opacity:.95;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));z-index:1}.card-content{flex:1;z-index:1}.card-number{font-size:40px;font-weight:800;margin-bottom:8px;line-height:1}.card-label{font-size:14px;opacity:.95;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.middle-section,.bottom-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:24px;margin-bottom:32px}.panel{background:var(--card-white);border-radius:20px;padding:28px;box-shadow:var(--shadow-md);transition:all .3s ease}.panel:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.panel-header h3{font-size:20px;color:var(--text-dark);margin-bottom:24px;display:flex;align-items:center;gap:10px;font-weight:700}.distribucion-cards{display:flex;flex-direction:column;gap:16px}.distribucion-card{background:linear-gradient(135deg,#f8fafe,#f0f4f8);border-radius:16px;padding:20px;text-align:center;transition:all .3s ease;border:2px solid transparent}.distribucion-card:hover{border-color:var(--primary-blue);transform:scale(1.02);box-shadow:0 8px 24px #1565c026}.distribucion-number{font-size:36px;font-weight:800;margin-bottom:8px;line-height:1}.distribucion-number.completados{color:var(--success-green)}.distribucion-number.pendientes{color:var(--accent-orange)}.distribucion-number.cancelados{color:var(--error-red)}.distribucion-label{font-size:14px;color:var(--text-medium);margin-bottom:8px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.distribucion-porcentaje{font-size:18px;font-weight:700}.distribucion-porcentaje.completados{color:var(--success-green)}.distribucion-porcentaje.pendientes{color:var(--accent-orange)}.distribucion-porcentaje.cancelados{color:var(--error-red)}.metodos-pago{display:flex;flex-direction:column;gap:12px}.metodo-item{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:linear-gradient(135deg,#f8fafe,#f0f4f8);border-radius:14px;transition:all .3s ease;border:2px solid transparent}.metodo-item:hover{border-color:var(--primary-blue);transform:translate(8px);box-shadow:0 4px 16px #1565c026}.metodo-nombre{font-weight:600;color:var(--text-dark);font-size:15px}.metodo-cantidad{color:var(--primary-blue);font-weight:700;font-size:18px}.recargas-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.recarga-card{background:linear-gradient(135deg,var(--card-color-start),var(--card-color-end));border-radius:16px;padding:24px;text-align:center;color:#fff;box-shadow:0 4px 16px #00000026;transition:all .3s ease}.recarga-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000040}.recarga-number{font-size:28px;font-weight:800;margin-bottom:8px}.recarga-label{font-size:13px;opacity:.95;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.metodos-recarga{padding:20px;text-align:center}.sin-datos{color:var(--text-light);font-size:14px;font-style:italic}.top-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:24px;margin-bottom:32px}.top-list{display:flex;flex-direction:column;gap:12px}.top-item{display:flex;align-items:center;gap:16px;padding:16px 20px;background:linear-gradient(135deg,#f8fafe,#f0f4f8);border-radius:14px;transition:all .3s ease;border:2px solid transparent}.top-item:hover{border-color:var(--primary-blue);transform:translate(8px);box-shadow:0 4px 16px #1565c026}.top-rank{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-light) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;box-shadow:0 4px 12px #1565c04d;flex-shrink:0}.top-info{flex:1}.top-name{font-weight:600;color:var(--text-dark);margin-bottom:4px;font-size:15px}.top-email{font-size:13px;color:var(--text-light)}.top-viajes{font-weight:700;color:var(--primary-blue);font-size:20px}.promedios-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;margin-bottom:32px}.promedio-card{background:var(--card-white);border-radius:20px;padding:28px;text-align:center;box-shadow:var(--shadow-md);transition:all .3s ease}.promedio-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.promedio-icon{font-size:52px;margin-bottom:16px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1))}.promedio-number{font-size:36px;font-weight:800;color:var(--primary-blue);margin-bottom:12px;line-height:1}.promedio-label{font-size:13px;color:var(--text-medium);line-height:1.4;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.charts-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(550px,1fr));gap:24px}.chart-container{margin-top:24px}@media (max-width: 1200px){.summary-cards-pro{grid-template-columns:repeat(2,1fr)}.middle-section-pro,.bottom-section-pro,.top-section-pro,.charts-section-pro{grid-template-columns:1fr}.promedios-section-pro{grid-template-columns:repeat(2,1fr)}.estado-section-pro,.documentos-fotos-section-pro{grid-template-columns:1fr}.analisis-section-pro{grid-template-columns:repeat(2,1fr)}.middle-section,.bottom-section,.top-section,.charts-section{grid-template-columns:1fr}.summary-cards{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media (max-width: 768px){.estado-grid-pro.estado-grid-3,.fotos-grid-pro{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.summary-cards-pro,.promedios-section-pro,.analisis-section-pro{grid-template-columns:1fr}.content-wrapper{padding:12px 16px}}.conductor-vehiculo-section{margin-top:48px;margin-bottom:32px}.section-header-modern{text-align:center;margin-bottom:32px}.section-main-title{font-size:32px;font-weight:700;color:var(--primary-blue);margin-bottom:8px;display:flex;align-items:center;justify-content:center;gap:12px;letter-spacing:-.5px}.title-icon{font-size:32px;opacity:.7}.section-subtitle{font-size:15px;color:var(--text-medium);margin-top:8px}.summary-cards-cv{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:32px}.summary-card-cv{background:linear-gradient(135deg,var(--card-color-start),var(--card-color-end));border-radius:16px;padding:24px;display:flex;align-items:center;gap:16px;color:#fff;box-shadow:0 4px 16px #0000001f;transition:all .3s ease}.summary-card-cv:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000002e}.card-purple-cv{--card-color-start: #9C27B0;--card-color-end: #7B1FA2}.card-pink-cv{--card-color-start: #E91E63;--card-color-end: #C2185B}.card-blue-cv{--card-color-start: #1976D2;--card-color-end: #1565C0}.card-green-cv{--card-color-start: #4CAF50;--card-color-end: #388E3C}.card-icon-cv{font-size:40px;opacity:.95}.card-content-cv{flex:1}.card-number-cv{font-size:36px;font-weight:800;margin-bottom:4px;line-height:1}.card-label-cv{font-size:13px;opacity:.95;font-weight:500}.estado-section-cv{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px;margin-bottom:24px}.panel-cv{background:var(--card-white);border-radius:16px;padding:24px;box-shadow:0 2px 8px #0000000f}.panel-header-cv h3{font-size:18px;font-weight:700;color:var(--text-dark);margin-bottom:20px;display:flex;align-items:center;gap:8px}.estado-grid-cv{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.estado-item-cv{background:#f8fafe;border-radius:12px;padding:20px;text-align:center;border:2px solid transparent;transition:all .3s ease}.estado-item-cv:hover{border-color:var(--primary-blue-light);transform:scale(1.02)}.estado-number-cv{font-size:32px;font-weight:800;margin-bottom:8px;line-height:1}.estado-label-cv{font-size:14px;color:var(--text-medium);margin-bottom:6px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.estado-porcentaje-cv{font-size:18px;font-weight:700}.estado-item-cv.activo .estado-number-cv,.estado-item-cv.activo .estado-porcentaje-cv{color:var(--success-green)}.estado-item-cv.inactivo .estado-number-cv,.estado-item-cv.inactivo .estado-porcentaje-cv{color:var(--error-red)}.estado-item-cv.con-vehiculo .estado-number-cv,.estado-item-cv.con-vehiculo .estado-porcentaje-cv{color:var(--primary-blue)}.estado-item-cv.sin-vehiculo .estado-number-cv,.estado-item-cv.sin-vehiculo .estado-porcentaje-cv,.estado-item-cv.suspendido .estado-number-cv,.estado-item-cv.suspendido .estado-porcentaje-cv{color:var(--accent-orange)}.estado-item-cv.eliminado .estado-number-cv,.estado-item-cv.eliminado .estado-porcentaje-cv{color:var(--error-red)}.documentos-fotos-section-cv{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px;margin-bottom:32px}.documentos-grid-cv{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.documento-card-cv{background:linear-gradient(135deg,var(--card-color-start),var(--card-color-end));border-radius:12px;padding:20px;text-align:center;color:#fff;box-shadow:0 4px 12px #0000001f;transition:all .3s ease}.documento-card-cv:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000002e}.documento-number-cv{font-size:28px;font-weight:800;margin-bottom:8px;line-height:1}.documento-label-cv{font-size:12px;opacity:.95;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.analisis-section-cv{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px;margin-bottom:32px}.marcas-list-cv,.anos-list-cv{display:flex;flex-direction:column;gap:12px}.marca-item-cv,.ano-item-cv{display:flex;align-items:center;gap:16px;padding:16px;background:#f8fafe;border-radius:12px;transition:all .3s ease;border:2px solid transparent}.marca-item-cv:hover,.ano-item-cv:hover{border-color:var(--primary-blue-light);transform:translate(4px)}.marca-rank-cv,.ano-badge-cv{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-light) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;flex-shrink:0;box-shadow:0 2px 8px #1565c040}.ano-badge-cv{background:linear-gradient(135deg,#e91e63,#c2185b);box-shadow:0 2px 8px #e91e6340}.marca-info-cv,.ano-info-cv{flex:1}.marca-name-cv,.ano-label-cv{font-weight:600;color:var(--text-dark);font-size:15px}.marca-cantidad-cv,.ano-cantidad-cv{font-weight:600;color:var(--primary-blue);font-size:15px}.ano-cantidad-cv{color:#e91e63}.chart-container-cv{margin-top:16px;padding:8px}@media (max-width: 768px){.estadisticas-container{padding:0}.page-header{padding:20px;flex-direction:column;gap:16px;align-items:flex-start}.page-title{font-size:24px}.summary-cards,.recargas-cards,.promedios-section{grid-template-columns:1fr}.section-main-title{font-size:24px;flex-direction:column;gap:8px}.summary-cards-cv,.estado-section-cv,.documentos-fotos-section-cv,.analisis-section-cv,.estado-grid-cv,.documentos-grid-cv{grid-template-columns:1fr}}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;min-height:300px;text-align:center}.loading-container{background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014}.error-container{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:32px;max-width:400px;box-shadow:0 2px 8px #00000014}.content-wrapper{position:relative}.updating-overlay p{font-size:13px;color:#64748b;font-weight:500}.sin-datos{text-align:center;padding:24px 16px;color:#64748b;font-size:12px;font-style:italic}.conductores-container{background:#e2e8f0;min-height:100vh}.conductores-container .content-wrapper{padding:16px 20px;width:100%;max-width:100%;box-sizing:border-box}.filters-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;padding:10px 16px;background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;flex-wrap:wrap}.filters-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.filters-label{font-size:12px;font-weight:500;color:#64748b}.filter-pills{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.filter-pill{padding:6px 12px;border:1px solid #cbd5e1;background:#fff;border-radius:6px;font-size:12px;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s ease}.filter-pill:hover{border-color:#94a3b8;color:#1e293b}.filter-pill.active{background:#1e293b;border-color:#1e293b;color:#fff}.filter-divider{width:1px;height:16px;background:#e2e8f0;margin:0 2px}.conductores-table{width:100%;min-width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:auto}.conductores-table th:nth-child(1),.conductores-table td:nth-child(1){min-width:150px;width:18%}.conductores-table th:nth-child(2),.conductores-table td:nth-child(2){min-width:170px;width:20%}.conductores-table th:nth-child(3),.conductores-table td:nth-child(3){min-width:100px;width:10%}.conductores-table th:nth-child(4),.conductores-table td:nth-child(4){min-width:130px;width:15%}.conductores-table th:nth-child(5),.conductores-table td:nth-child(5){min-width:130px;width:15%}.conductores-table th:nth-child(6),.conductores-table td:nth-child(6){min-width:130px;width:12%}.conductores-table th:nth-child(7),.conductores-table td:nth-child(7){min-width:110px;width:10%;text-align:center;padding:10px 8px;vertical-align:middle}.conductores-table td:nth-child(7){display:table-cell}.conductores-table thead{background:#f8fafc;border-bottom:1px solid #cbd5e1}.conductores-table th{padding:12px 10px;text-align:left;font-weight:600;color:#64748b;font-size:11px;letter-spacing:.2px;border-bottom:1px solid #cbd5e1;white-space:nowrap;position:sticky;top:0;z-index:10}.conductores-table th:first-child{border-radius:8px 0 0;padding-left:12px}.conductores-table th:last-child{border-radius:0 8px 0 0;padding-right:12px}.conductores-table td{padding:12px 10px;border-bottom:1px solid #e2e8f0;background:#fff;transition:all .2s ease;vertical-align:middle;font-size:12px}.conductores-table td:first-child{padding-left:12px}.conductores-table td:last-child{padding-right:12px}.conductores-table tbody tr{transition:all .2s cubic-bezier(.4,0,.2,1)}.conductores-table tbody tr:hover{background:#f8fafc}.conductores-table tbody tr:hover td{background:transparent}.contact-info{display:flex;flex-direction:column;gap:4px;min-width:0}.contact-item{display:flex;align-items:center;gap:6px;font-size:11px;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.contact-icon{font-size:10px;color:#94a3b8;flex-shrink:0;width:14px}.contact-value{overflow:hidden;text-overflow:ellipsis}.status-pill.status-aprobado{background:#dbeafe;color:#2563eb}.status-pill.status-pendiente{background:#f1f5f9;color:#64748b}.vehiculo-ano{color:#64748b;font-size:11px}.documentos-cell{min-width:0}.conductores-table td:nth-child(7) .acciones{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:5px;align-items:center!important;justify-content:center!important;width:100%!important;min-width:fit-content;max-width:100%;overflow:visible!important;white-space:nowrap!important;margin:0!important;padding:0!important;box-sizing:border-box}.acciones{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:5px;align-items:center!important;justify-content:center!important;width:100%!important;min-width:fit-content;max-width:100%;overflow:visible!important;white-space:nowrap!important;margin:0!important;padding:0!important;box-sizing:border-box}.acciones>*{display:inline-flex!important;flex-shrink:0!important}.btn-action{width:26px!important;height:26px!important;min-width:26px!important;max-width:26px!important;border-radius:5px;border:none;cursor:pointer;display:inline-flex!important;flex-shrink:0!important;align-items:center!important;justify-content:center!important;font-size:12px;line-height:1!important;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000001a;padding:0!important;margin:0!important;vertical-align:middle;box-sizing:border-box;float:none!important}.btn-action:active{transform:translateY(0)}.btn-approve{background:linear-gradient(135deg,var(--success-green) 0%,#66BB6A 100%);color:#fff}.btn-approve:hover{box-shadow:0 4px 12px #4caf504d}.btn-reject{background:linear-gradient(135deg,var(--error-red) 0%,#EF5350 100%);color:#fff}.btn-reject:hover{box-shadow:0 4px 12px #f443364d}.conductores-container .loading-container,.conductores-container .error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;min-height:300px;text-align:center}.conductores-container .loading-container{background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014}.conductores-container .error-container{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:32px;max-width:400px;box-shadow:0 2px 8px #00000014}.pagination-info{font-size:13px;color:var(--text-medium);font-weight:500}.total-count{font-size:13px;color:var(--text-light);font-weight:400;margin-left:8px}.updating-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffffff2;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;border-radius:12px;animation:fadeIn .2s ease}@media (max-width: 768px){.conductores-container{padding:0}.content-wrapper{padding:16px}.table-container{padding:12px;margin:0;border-radius:8px}.conductores-table th,.conductores-table td{padding:10px 8px;font-size:12px}.avatar{width:32px;height:32px;font-size:12px}.conductor-name{font-size:12px}.conductor-id{font-size:10px}.contact-item{font-size:11px}.status-pill{font-size:10px;padding:3px 8px}.btn-action{width:20px;height:20px;font-size:9px}.acciones{gap:2px}.pagination-container{flex-direction:column;gap:12px}.pagination-info{order:-1}}.conductor-detalle-container{background:#e2e8f0;min-height:100vh}.conductor-detalle-container .content-wrapper{padding:12px 16px}.summary-cards-pro{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}.summary-card-pro{background:#fff;border-radius:8px;padding:12px;display:flex;align-items:center;gap:12px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;transition:box-shadow .2s ease,border-color .2s ease}.summary-card-pro:hover{box-shadow:0 4px 12px #0000001f;border-color:#94a3b8}.card-pro-icon{width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}.card-pro-icon-trips{background:#f1f5f9;color:#64748b}.card-pro-icon-success{background:#dcfce7;color:#16a34a}.card-pro-icon-revenue{background:#dbeafe;color:#2563eb}.card-pro-icon-profit{background:#dcfce7;color:#16a34a}.card-pro-content{flex:1;min-width:0}.card-pro-number{font-size:15px;font-weight:700;color:#1e293b;line-height:1.2}.card-pro-label{font-size:10px;color:#64748b;text-transform:uppercase;letter-spacing:.3px;margin-top:2px}.panel-pro{background:#fff;border-radius:8px;padding:16px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;margin-bottom:16px;transition:box-shadow .2s ease}.panel-pro:hover{box-shadow:0 4px 12px #0000001a}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px;padding:16px 20px;background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014}.driver-approval-section{padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px}.approval-section-header{display:flex;align-items:center;gap:6px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid #e2e8f0}.approval-icon{font-size:14px}.approval-title{font-size:11px;font-weight:600;color:#1e293b;margin:0;text-transform:uppercase;letter-spacing:.2px}.approval-actions{display:flex;flex-direction:column;gap:6px;align-items:stretch}.approval-info-message{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#475569;font-size:11px;font-weight:500;margin-top:6px;width:100%;box-sizing:border-box}.approval-info-message .info-icon{font-size:14px;flex-shrink:0}.btn-approve-driver,.btn-reject-driver{display:flex;align-items:center;justify-content:center;gap:4px;padding:6px 12px;border:none;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;text-transform:uppercase;letter-spacing:.2px}.btn-approve-driver{background:#16a34a;color:#fff}.btn-approve-driver:hover:not(:disabled){background:#15803d}.btn-reject-driver{background:#dc2626;color:#fff}.btn-reject-driver:hover:not(:disabled){background:#b91c1c}.btn-approve-driver .btn-icon,.btn-reject-driver .btn-icon{font-size:16px;font-weight:700}.btn-approve-driver:disabled,.btn-reject-driver:disabled{opacity:.6;cursor:not-allowed;transform:none}.driver-approved-status{padding:8px 0}.driver-approved-badge-large{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#dcfce7;color:#16a34a;border-radius:6px;border:1px solid #86efac}.approved-icon-large{font-size:18px;font-weight:700;background:#16a34a33;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.driver-approved-badge-large>div{display:flex;flex-direction:column;gap:0}.approved-text{font-size:12px;font-weight:600}.approved-subtext{font-size:10px;color:#15803d;font-weight:400}.driver-reject-form-container{display:flex;flex-direction:column;gap:8px;padding:10px 12px;background:#fff;border-radius:6px;border:1px solid #e2e8f0}.reject-form-header{margin-bottom:4px}.reject-form-header h5{font-size:11px;font-weight:600;color:#1e293b;margin:0}.driver-reject-reason-input{width:100%;padding:8px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:12px;resize:vertical;min-height:60px;box-sizing:border-box;font-family:inherit}.driver-reject-reason-input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 2px #1565c033}.driver-reject-form-actions{display:flex;gap:10px;justify-content:flex-end}.btn-cancel-driver-reject,.btn-confirm-driver-reject{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.btn-cancel-driver-reject{background:#f8fafc;color:#1e293b;border:1px solid #cbd5e1}.btn-cancel-driver-reject:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8}.btn-confirm-driver-reject{background:#dc2626;color:#fff;border:none}.btn-confirm-driver-reject:hover:not(:disabled){background:#b91c1c}.btn-cancel-driver-reject:disabled,.btn-confirm-driver-reject:disabled{opacity:.6;cursor:not-allowed;transform:none}.driver-notes-section{display:flex;flex-direction:column;gap:8px;margin-top:16px}.driver-notes-section label{font-size:13px;font-weight:600;color:#1e293b}.driver-notes-input{width:100%;padding:10px 14px;border:1px solid #cbd5e1;border-radius:6px;font-size:13px;resize:vertical;min-height:80px;box-sizing:border-box;font-family:inherit}.driver-notes-input:focus{outline:none;border-color:#1e293b;box-shadow:0 0 0 2px #1e293b26}.header-info h1{font-size:20px;font-weight:600;color:#1e293b;margin-bottom:6px}.header-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:#64748b}.separator{color:var(--text-light)}.info-card{background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;margin-bottom:16px;overflow:hidden}.info-card .card-header{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.info-card .card-header .card-icon{font-size:16px}.info-card .card-header h2{font-size:13px}.card-icon{font-size:20px}.card-header h2{font-size:15px;font-weight:600;color:#1e293b;margin:0}.card-content{padding:16px 20px}.detail-main-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.detail-half{margin-bottom:0}.detail-half .card-content{padding:12px 14px}.personal-info-grid{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:start}.personal-info-main{display:flex;align-items:center;gap:14px;min-width:0}.avatar-compact{width:56px;height:56px;min-width:56px;border-radius:50%;background:#1e293b;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.avatar-compact .avatar-image-large{width:100%;height:100%;object-fit:cover}.avatar-compact .avatar-initials-large{font-size:20px;font-weight:600;color:#fff}.personal-info-block{flex:1;min-width:0}.driver-name-compact{font-size:15px;font-weight:600;color:#1e293b;margin:0 0 4px;line-height:1.3}.contact-inline{display:flex;flex-wrap:wrap;gap:12px 20px;font-size:12px;color:#475569}.contact-item-inline{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.status-badges-inline{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.status-badge-large{padding:4px 10px;border-radius:6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.status-badge-large.status-activo{background:#dcfce7;color:#16a34a}.status-badge-large.status-aprobado{background:#dbeafe;color:#2563eb}.status-badge-large.status-pendiente{background:#fef3c7;color:#b45309}.personal-info-profile{padding:0 16px;border-left:1px solid #e2e8f0;border-right:1px solid #e2e8f0}.profile-grid{display:grid;grid-template-columns:1fr;gap:8px}.profile-item{display:flex;flex-direction:column;gap:2px}.profile-item-rating .profile-value{display:flex;align-items:center;gap:6px}.profile-label{font-size:10px;color:#64748b;text-transform:uppercase;letter-spacing:.3px;font-weight:600}.profile-value{font-size:12px;color:#1e293b;font-weight:500}.rating-text-compact{font-size:11px;color:#64748b}.personal-info-profile .rating-stars{display:inline-flex;gap:2px}.personal-info-profile .star{font-size:12px}.personal-info-approval{min-width:200px}.info-row{display:flex;flex-direction:column;gap:4px}.info-label{font-size:13px;color:var(--text-medium);font-weight:600}.info-value{font-size:15px;color:var(--text-dark);font-weight:500}.rating-section{display:flex;flex-direction:column;gap:8px}.rating-stars{display:flex;gap:4px;align-items:center}.star{font-size:20px;line-height:1}.star-full{color:#ffc107}.star-half{color:#ffc107;opacity:.6}.star-empty{color:#e0e0e0}.rating-text{font-size:14px;color:var(--text-medium);font-weight:500}.vehicles-section .card-header{padding:8px 14px}.vehicles-content{padding:10px 14px!important}.vehicle-card{padding:8px 10px;background:#f8fafc;border-radius:6px;margin-bottom:10px;border:1px solid #e2e8f0}.vehicle-card:last-child{margin-bottom:0}.vehicle-name{font-size:13px;font-weight:600;color:#1e293b;margin-bottom:8px}.vehicle-details-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px}.vehicle-detail-item{display:flex;flex-direction:column;gap:4px}.detail-label{font-size:10px;color:var(--text-medium);font-weight:600;text-transform:uppercase;letter-spacing:.3px}.detail-value{font-size:12px;color:var(--text-dark);font-weight:600}.vehicle-photos-section{border-top:1px solid #e2e8f0;padding-top:10px}.vehicle-photos-section .sub-section-title{font-size:11px;margin-bottom:8px}.vehicle-photos-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px}.vehicle-photo-item{display:flex;flex-direction:column;gap:4px}.vehicle-photo-item .photo-label{font-size:10px}.photo-thumbnail{position:relative;width:100%;aspect-ratio:1;border-radius:8px;overflow:hidden;background:#e2e8f0;border:1px solid #cbd5e1;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease}.photo-thumbnail.photo-clickable:hover{transform:translateY(-4px);box-shadow:0 8px 16px #00000026}.photo-thumbnail.photo-clickable:hover .photo-overlay{opacity:1}.photo-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;z-index:2}.photo-view-icon{font-size:32px;color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.photo-image{width:100%;height:100%;object-fit:cover}.photo-placeholder{font-size:48px;color:var(--text-light)}.photo-status-badge{position:absolute;top:8px;right:8px;padding:4px 8px;border-radius:12px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.photo-status-badge.pending{background:#ffc107e6;color:#856404}.photo-status-badge.approved{background:#4caf50e6;color:#fff}.photo-status-badge.rejected{background:#f44336e6;color:#fff}.photo-label{font-size:12px;color:var(--text-medium);font-weight:600;text-align:center;text-transform:capitalize}.documents-grid{display:flex;flex-direction:row;gap:20px;flex-wrap:wrap}.documents-compact{flex-direction:column;gap:8px}.document-card-compact{padding:8px 10px!important;min-width:0!important;max-width:100%!important;flex:none!important}.document-card-compact .document-header{margin-bottom:6px}.document-card-compact .document-title{font-size:12px}.document-card-compact .document-info p,.document-card-compact .document-approved-info p,.document-card-compact .document-rejected-info p{font-size:10px;margin:0 0 2px}.document-card-compact .btn-view-document{padding:4px 8px;font-size:11px}.sin-documentos-msg{font-size:12px;color:#94a3b8;margin:0;font-style:italic}.document-card{padding:16px;background:#f8fafc;border-radius:8px;border:1px solid #cbd5e1;display:flex;flex-direction:column;flex:0 0 calc(50% - 10px);min-width:300px;max-width:calc(50% - 10px);box-sizing:border-box;box-shadow:0 1px 3px #0000000a}.document-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.document-title{font-size:16px;font-weight:700;color:var(--text-dark);margin:0;text-transform:capitalize}.document-status-badge{padding:4px 10px;border-radius:12px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.document-status-badge.pending{background:#fef3c7;color:#b45309}.document-status-badge.approved{background:#dcfce7;color:#16a34a}.document-status-badge.rejected{background:#fee2e2;color:#dc2626}.document-info{margin-bottom:16px}.document-upload-date,.document-expires{font-size:12px;color:var(--text-medium);margin:4px 0}.relative-time{color:var(--text-light);font-weight:400;font-size:11px}.document-approved-info,.document-rejected-info{font-size:12px;margin:4px 0;padding:8px 10px;border-radius:6px;display:flex;flex-direction:column;gap:4px}.document-approved-info{color:#2e7d32;background:#e8f5e9}.document-rejected-info{color:#c62828;background:#ffebee}.document-approved-info p,.document-rejected-info p{margin:0;line-height:1.4}.approver-name{font-weight:600;font-size:11px;margin-top:2px}.reviewer-name{font-weight:600;margin-left:4px}.review-date{font-size:12px;color:var(--text-medium);margin:0}.document-actions{display:flex;flex-direction:column;gap:10px;margin-top:auto}.btn-view-document{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;background:#1e293b;color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;width:100%}.btn-view-document:hover{background:#334155}.approval-buttons{display:flex;gap:8px}.btn-approve,.btn-reject{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:8px 12px;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-approve{background:#16a34a;color:#fff}.btn-approve:hover{background:#15803d}.btn-reject{background:#dc2626;color:#fff}.btn-reject:hover{background:#b91c1c}.conductor-detalle-container .loading-container,.conductor-detalle-container .error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;min-height:300px;text-align:center}.conductor-detalle-container .loading-container{background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014}.conductor-detalle-container .error-container{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:32px;max-width:400px;box-shadow:0 2px 8px #00000014}@media (max-width: 768px){.conductor-detalle-container{padding:16px}.detail-header{flex-direction:column;gap:16px}.driver-approval-section{margin-top:16px;padding:12px 14px}.approval-actions{flex-direction:row;gap:8px}.btn-approve-driver,.btn-reject-driver{flex:1;min-width:100px;padding:8px 12px;font-size:11px}.driver-reject-form-container{width:100%}.btn-volver-floating{top:10px;right:10px;padding:10px 18px;font-size:13px}.detail-main-row{grid-template-columns:1fr}.card-content.personal-info-grid{grid-template-columns:1fr;gap:16px}.personal-info-main{flex-direction:column;text-align:center}.personal-info-profile{border-left:none;border-right:none;border-top:1px solid #e2e8f0;padding:12px 0 0}.personal-info-approval{border-top:1px solid #e2e8f0;padding-top:12px}.vehicle-details-grid{grid-template-columns:1fr}.vehicle-photos-grid{grid-template-columns:repeat(2,1fr)}.documents-grid{flex-direction:column}.document-card{max-width:100%;min-width:100%}.image-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000eb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .3s ease}.image-modal-content{position:relative;background:#fff;border-radius:16px;border:none;max-width:90vw;max-height:90vh;width:auto;min-width:320px;display:flex;flex-direction:column;box-shadow:0 25px 80px #00000080,0 0 0 1px #ffffff1a inset;animation:modalSlideIn .3s cubic-bezier(.4,0,.2,1);overflow:hidden}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.image-modal-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border:none;background:#000000b3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;border-radius:50%;font-size:20px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:100;transition:all .2s ease;box-shadow:0 4px 12px #0000004d}.image-modal-close:hover{background:#f44336e6;transform:rotate(90deg) scale(1.1)}.image-modal-header{padding:16px 20px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background:#f8fafc;flex-shrink:0}.image-modal-title{font-size:16px;font-weight:700;color:#1a1a1a;text-transform:capitalize;letter-spacing:.3px}.image-modal-counter{font-size:13px;color:#666;font-weight:600;background:#fff;padding:6px 12px;border-radius:12px;box-shadow:0 2px 4px #0000001a}.image-modal-body{position:relative;display:flex;align-items:center;justify-content:center;padding:24px;flex:1;background:#f8fafc;overflow:hidden;min-height:300px}.image-modal-img-container{flex:1;display:flex;align-items:center;justify-content:center;max-width:100%;max-height:100%;position:relative}.image-modal-img{max-width:100%;max-height:calc(90vh - 250px);width:auto;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 8px 32px #00000026;transition:opacity .3s ease}.image-modal-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:none;background:#fffffff2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#1a1a1a;border-radius:50%;font-size:28px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .2s ease;box-shadow:0 4px 16px #0003;line-height:1}.image-modal-nav:hover{background:#fff;transform:translateY(-50%) scale(1.15);box-shadow:0 6px 20px #0000004d}.image-modal-prev{left:20px}.image-modal-next{right:20px}.image-modal-thumbnails{display:flex;gap:10px;padding:16px 20px;border-top:1px solid #e2e8f0;background:#f8fafc;overflow-x:auto;border-radius:0 0 8px 8px;max-width:100%;box-sizing:border-box;flex-shrink:0;justify-content:center}.image-modal-thumb{width:70px;height:70px;object-fit:cover;border-radius:8px;cursor:pointer;border:3px solid transparent;transition:all .2s ease;flex-shrink:0;box-shadow:0 2px 4px #0000001a}.image-modal-thumb:hover{transform:scale(1.05);box-shadow:0 4px 8px #0003}.image-modal-thumb.active{border-color:#1e293b;box-shadow:0 2px 8px #1e293b33;opacity:1}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.image-viewer-header{top:10px;padding:8px 16px;font-size:14px}.image-viewer-title{font-size:14px}.image-viewer-counter{font-size:12px}.image-viewer-close{top:10px;right:10px;width:40px;height:40px;font-size:20px}.image-viewer-nav{width:48px;height:48px;font-size:28px}.image-viewer-controls{bottom:10px;padding:8px 16px;gap:8px}.image-viewer-control-btn{width:36px;height:36px;font-size:18px}.image-viewer-thumbnails{bottom:70px;gap:8px;padding:8px}.image-viewer-thumbnail{width:60px;height:60px}.modal-content{width:95%;max-width:95%;height:90vh}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:16px;width:90%;max-width:1000px;height:85vh;max-height:800px;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease;overflow:hidden}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.modal-title{font-size:20px;font-weight:700;color:var(--text-dark);margin:0;text-transform:capitalize}.modal-close{width:36px;height:36px;border:none;background:#e0e0e0;color:var(--text-dark);border-radius:50%;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.modal-close:hover{background:#f44336;color:#fff;transform:rotate(90deg)}.modal-body{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:24px}.document-viewer{flex:1;min-height:0;border:1px solid #E0E0E0;border-radius:8px;overflow:hidden;background:#f5f5f5;margin-bottom:20px;display:flex;align-items:center;justify-content:center}.document-viewer.image-viewer{overflow:auto;padding:20px}.document-iframe{width:100%;height:100%;border:none;background:#fff;min-height:400px}.document-image{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:4px;box-shadow:0 2px 8px #0000001a}.document-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:40px;text-align:center}.document-error p{font-size:16px;color:var(--text-medium);margin:8px 0}.error-details{font-size:12px;color:var(--text-light);font-family:monospace}.modal-actions{display:flex;gap:12px;padding-top:16px;border-top:1px solid #E0E0E0}.btn-approve-modal,.btn-reject-modal{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-approve-modal{background:#16a34a;color:#fff}.btn-approve-modal:hover:not(:disabled){background:#15803d}.btn-reject-modal{background:#dc2626;color:#fff}.btn-reject-modal:hover:not(:disabled){background:#b91c1c}.btn-approve-modal:disabled,.btn-reject-modal:disabled{opacity:.6;cursor:not-allowed;transform:none}.document-status-info{display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:16px;border-top:1px solid #E0E0E0}.review-date{font-size:12px;color:var(--text-medium);margin:8px 0 0;text-align:center}.reviewer-name{font-weight:600;color:var(--text-dark)}.reject-form{display:flex;flex-direction:column;gap:16px;padding-top:16px;border-top:1px solid #E0E0E0}.reject-form-header h4{font-size:16px;font-weight:700;color:var(--text-dark);margin:0}.reject-reason-input{width:100%;padding:12px;border:1px solid #E0E0E0;border-radius:8px;font-size:14px;font-family:inherit;color:var(--text-dark);resize:vertical;min-height:100px;max-length:500;transition:all .2s ease}.reject-reason-input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #1565c01a}.reject-reason-input:disabled{background:#f5f5f5;cursor:not-allowed}.reject-reason-input::placeholder{color:var(--text-light)}.character-count{font-size:12px;color:var(--text-medium);text-align:right;margin-top:4px}.reject-form-actions{display:flex;gap:12px}.btn-cancel-reject{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:1px solid #E0E0E0;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;background:#fff;color:var(--text-dark)}.btn-cancel-reject:hover:not(:disabled){background:#f5f5f5;border-color:#bdbdbd}.btn-cancel-reject:disabled{opacity:.6;cursor:not-allowed}.btn-confirm-reject{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;background:#dc2626;color:#fff}.btn-confirm-reject:disabled{opacity:.6;cursor:not-allowed;transform:none}.confirm-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}.confirm-modal-content{background:#fff;border-radius:8px;padding:24px;max-width:480px;width:100%;border:1px solid #cbd5e1;box-shadow:0 4px 16px #0000001f;animation:slideUp .3s ease;text-align:center;position:relative}.confirm-modal-body{position:relative;transition:opacity .3s ease}.confirm-modal-body.processing{opacity:.3;pointer-events:none}.confirm-modal-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffffff2;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10;padding:20px}.loading-spinner-large{width:64px;height:64px;border:5px solid #E0E0E0;border-top-color:var(--primary-blue);border-radius:50%;animation:spin 1s linear infinite;margin:0 0 24px;flex-shrink:0}.loading-spinner-small{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:8px;vertical-align:middle}.btn-confirm-approve,.btn-confirm-reject{display:flex;align-items:center;justify-content:center;gap:8px}.confirm-modal-icon{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:36px;margin:0 auto 20px;font-weight:700;color:#fff}.confirm-modal-content:has(.btn-confirm-approve) .confirm-modal-icon,.confirm-modal-icon.approve-icon{background:#16a34a}.confirm-modal-content:has(.btn-confirm-reject) .confirm-modal-icon,.confirm-modal-icon.reject-icon{background:#dc2626}.confirm-modal-title{font-size:24px;font-weight:700;color:var(--text-dark);margin:0 0 12px}.confirm-modal-message{font-size:15px;color:var(--text-medium);line-height:1.6;margin:0 0 20px}.confirm-modal-reason{text-align:left;background:#f5f5f5;border-radius:8px;padding:16px;margin:20px 0}.confirm-modal-reason strong{display:block;font-size:13px;color:var(--text-dark);margin-bottom:8px;font-weight:600}.confirm-modal-reason p{font-size:14px;color:var(--text-medium);margin:0;line-height:1.5;white-space:pre-wrap}.confirm-modal-actions{display:flex;gap:12px;margin-top:24px}.btn-confirm-cancel,.btn-confirm-approve{flex:1;padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-confirm-cancel{background:#f8fafc;color:#1e293b;border:1px solid #cbd5e1}.btn-confirm-cancel:hover:not(:disabled){background:#f1f5f9}.btn-confirm-approve{background:#16a34a;color:#fff;border:none}.btn-confirm-approve:hover:not(:disabled){background:#15803d}.btn-confirm-reject{background:#dc2626;color:#fff;border:none}.btn-confirm-reject:hover:not(:disabled){background:#b91c1c}.btn-confirm-cancel:disabled,.btn-confirm-approve:disabled,.btn-confirm-reject:disabled{opacity:.6;cursor:not-allowed;transform:none}.vehiculos-container{background:#e2e8f0;min-height:100vh}.vehiculos-container .content-wrapper{padding:16px 20px;width:100%;max-width:100%;box-sizing:border-box}.table-container{overflow-x:auto;border-radius:8px;background:#fff;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;padding:16px;width:100%;max-width:100%;box-sizing:border-box}.vehiculos-table{width:100%;min-width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:auto}.vehiculos-table th:nth-child(1),.vehiculos-table td:nth-child(1){min-width:150px;width:20%}.vehiculos-table th:nth-child(2),.vehiculos-table td:nth-child(2){min-width:150px;width:20%}.vehiculos-table th:nth-child(3),.vehiculos-table td:nth-child(3){min-width:90px;width:10%}.vehiculos-table th:nth-child(4),.vehiculos-table td:nth-child(4){min-width:100px;width:12%}.vehiculos-table th:nth-child(5),.vehiculos-table td:nth-child(5){min-width:110px;width:12%}.vehiculos-table th:nth-child(6),.vehiculos-table td:nth-child(6){min-width:110px;width:10%;text-align:center;padding:10px 8px;vertical-align:middle}.vehiculos-table thead{background:#f8fafc;border-bottom:1px solid #cbd5e1}.vehiculos-table th{padding:12px 10px;text-align:left;font-weight:600;color:#64748b;font-size:11px;letter-spacing:.2px;border-bottom:1px solid #cbd5e1;white-space:nowrap;position:sticky;top:0;z-index:10}.vehiculos-table th:first-child{border-radius:8px 0 0;padding-left:12px}.vehiculos-table th:last-child{border-radius:0 8px 0 0;padding-right:12px}.vehiculos-table td{padding:12px 10px;border-bottom:1px solid #e2e8f0;background:#fff;transition:all .2s ease;vertical-align:middle;font-size:12px}.vehiculos-table td:first-child{padding-left:12px}.vehiculos-table td:last-child{padding-right:12px}.vehiculos-table tbody tr:hover{background:#f8fafc}.vehiculos-table tbody tr:hover td{background:transparent}.vehiculo-cell{display:flex;flex-direction:column;gap:4px;min-width:0;align-items:flex-start}.vehiculo-cell .vehiculo-modelo{font-weight:500;color:#1e293b;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.vehiculo-cell .vehiculo-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:#64748b}.vehiculo-placa{padding:2px 6px;background:#f1f5f9;color:#475569;border-radius:4px;font-weight:600;font-size:10px;letter-spacing:.3px}.vehiculo-ano,.vehiculo-color{color:#64748b;font-size:11px}.avatar{width:32px;height:32px;min-width:32px;border-radius:8px;background:#1e293b;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:11px;flex-shrink:0;position:relative;overflow:hidden}.avatar-image{width:100%;height:100%;object-fit:cover;border-radius:8px}.avatar-initials{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.sin-conductor{color:#94a3b8;font-size:12px}.status-pill.status-suspendido{background:#fef3c7;color:#b45309}.status-pill.status-eliminado{background:#fee2e2;color:#dc2626}.fotos-cell{min-width:0}.doc-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11px;font-weight:500}.doc-summary.doc-empty{color:#94a3b8}.doc-ok{color:#16a34a}.doc-pending{color:#b45309}.doc-fail{color:#dc2626}.registro-cell{display:flex;flex-direction:column;gap:1px;font-size:11px;min-width:0}.registro-relativo{font-weight:500;color:#1e293b}.registro-fecha{font-size:10px;color:#94a3b8}.vehiculos-table td:nth-child(6) .acciones{display:flex!important;flex-direction:row!important;gap:5px;align-items:center!important;justify-content:center!important}.acciones button{display:inline-flex!important;flex-shrink:0!important}.btn-action{width:26px!important;height:26px!important;min-width:26px!important;max-width:26px!important;border-radius:5px;border:none;cursor:pointer;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:12px;transition:all .2s ease;padding:0!important}.btn-action:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.btn-view{background:#1e293b;color:#fff;padding:6px 12px!important;min-width:48px!important;max-width:none!important;width:auto!important;font-size:11px!important}.btn-view:hover{background:#334155}.btn-driver{background:#64748b;color:#fff}.btn-driver:hover{background:#475569}.vehiculos-container .loading-container,.vehiculos-container .error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;min-height:300px;text-align:center}.vehiculos-container .loading-container{background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014}.loading-spinner{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#64748b;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}.loading-container p{color:#64748b;font-size:14px;font-weight:500}.vehiculos-container .error-container{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:32px;max-width:400px;box-shadow:0 2px 8px #00000014}.error-icon{font-size:32px;margin-bottom:12px}.error-container h3{color:#dc2626;font-size:15px;font-weight:600;margin-bottom:8px}.error-container p{color:#64748b;font-size:13px;margin-bottom:20px}.btn-retry{padding:8px 20px;background:#1e293b;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-retry:hover{background:#334155}.pagination-container{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:16px;padding:12px 16px;background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014}.btn-pagination{padding:8px 16px;background:#fff;color:#1e293b;border:1px solid #cbd5e1;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-pagination:hover:not(:disabled){background:#1e293b;color:#fff;border-color:#1e293b}.btn-pagination:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:13px;color:#64748b;font-weight:500}.updating-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;border-radius:8px;animation:fadeIn .2s ease}.updating-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#64748b;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:12px}.updating-text{font-size:13px;font-weight:500;color:#64748b;margin:0}.no-results{text-align:center;padding:24px;color:#64748b;font-size:13px}@media (max-width: 768px){.vehiculos-container .content-wrapper{padding:16px}.pagination-container{flex-direction:column;gap:12px}}.vehiculo-detalle-container{background:#f5f7fa;min-height:100vh;padding:24px}.btn-volver-floating{position:fixed;top:80px;right:24px;padding:12px 20px;background:linear-gradient(135deg,#546e7a,#607d8b);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:999;box-shadow:0 4px 12px #546e7a4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap}.btn-volver-floating:hover{background:linear-gradient(135deg,#607d8b,#708090);transform:translateY(-2px);box-shadow:0 6px 20px #546e7a66}.btn-volver-floating:active{transform:translateY(0);box-shadow:0 4px 12px #546e7a4d}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;padding:20px 24px;background:var(--card-white);border-radius:12px;box-shadow:0 2px 8px #0000000a}.header-info h1{font-size:28px;font-weight:700;color:var(--text-dark);margin:0 0 8px}.header-meta{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--text-medium);flex-wrap:wrap}.header-meta .separator{color:var(--text-light)}.info-card{background:var(--card-white);border-radius:12px;box-shadow:0 2px 8px #0000000a;margin-bottom:24px;overflow:hidden}.card-header{display:flex;align-items:center;gap:12px;padding:20px 24px;background:linear-gradient(135deg,#f8fafe,#f0f4f8);border-bottom:1px solid #E0E0E0}.card-icon{font-size:24px}.card-header h2{font-size:18px;font-weight:700;color:var(--text-dark);margin:0}.card-content{padding:24px}.vehicle-info-row{display:flex;flex-direction:row;gap:32px;align-items:flex-start;flex-wrap:wrap}.status-badge-large{padding:6px 14px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.status-badge-large.status-active{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);color:#2e7d32;box-shadow:0 2px 8px #2e7d3226}.status-badge-large.status-suspended{background:linear-gradient(135deg,#fff3cd,#ffe799);color:#856404;box-shadow:0 2px 8px #85640426}.status-badge-large.status-deleted{background:linear-gradient(135deg,#ffebee,#ffcdd2);color:#c62828;box-shadow:0 2px 8px #c6282826}.vehicle-detail-item{display:flex;flex-direction:column;gap:4px;min-width:120px}.detail-label{font-size:13px;color:var(--text-medium);font-weight:600}.detail-value{font-size:15px;color:var(--text-dark);font-weight:500}.status-badge-inline{display:inline-block;padding:4px 10px;border-radius:12px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.status-badge-inline.status-active{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);color:#2e7d32;box-shadow:0 2px 8px #2e7d3226}.status-badge-inline.status-suspended{background:linear-gradient(135deg,#fff3cd,#ffe799);color:#856404;box-shadow:0 2px 8px #85640426}.status-badge-inline.status-deleted{background:linear-gradient(135deg,#ffebee,#ffcdd2);color:#c62828;box-shadow:0 2px 8px #c6282826}.driver-info-section{display:flex;align-items:flex-start;gap:24px;flex-wrap:wrap}.avatar-large{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,var(--primary-blue) 0%,var(--secondary-blue) 100%);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #1565c04d;overflow:hidden;position:relative;flex-shrink:0}.avatar-image-large{width:100%;height:100%;object-fit:cover}.avatar-initials-large{font-size:48px;font-weight:700;color:#fff;display:flex;align-items:center;justify-content:center}.driver-details-info{flex:1;min-width:300px;display:flex;flex-direction:column;gap:16px}.driver-details-info h3{font-size:22px;font-weight:700;color:var(--text-dark);margin:0}.driver-contact-info{display:flex;flex-direction:column;gap:12px}.contact-item-large{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-dark)}.contact-icon-large{font-size:18px}.btn-view-driver{padding:10px 20px;background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-light) 100%);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #1565c033;width:fit-content}.btn-view-driver:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1565c04d}.vehicle-photos-grid{display:flex;flex-direction:row;gap:20px;margin-top:16px;flex-wrap:wrap}.vehicle-photo-item{display:flex;flex-direction:column;gap:8px;flex:1 1 calc(25% - 15px);min-width:180px;max-width:220px}.photo-thumbnail{position:relative;width:100%;height:200px;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,#f5f7fa,#e8e8e8);border:2px solid #E0E0E0;transition:all .3s ease}.photo-thumbnail.photo-clickable{cursor:pointer}.photo-thumbnail.photo-clickable:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000026;border-color:var(--primary-blue)}.photo-image{width:100%;height:100%;object-fit:cover;display:block}.photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:48px;color:var(--text-light)}.photo-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.photo-thumbnail:hover .photo-overlay{opacity:1}.photo-view-icon{font-size:32px;color:#fff}.photo-label{font-size:13px;font-weight:600;color:var(--text-dark);text-align:center}.photo-status-badge{position:absolute;top:8px;right:8px;padding:4px 8px;border-radius:12px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #0003}.photo-status-badge.pending{background:#fff3cd;color:#856404}.photo-status-badge.approved{background:#e8f5e9;color:#2e7d32}.photo-status-badge.rejected{background:#ffebee;color:#c62828}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;min-height:400px;text-align:center}.loading-spinner{width:48px;height:48px;border:4px solid #E0E0E0;border-top-color:var(--primary-blue);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.loading-container p{color:var(--text-medium);font-size:14px;font-weight:500}.error-container{background:#fff5f5;border:1px solid #FED7D7;border-radius:12px;padding:40px}.error-icon{font-size:48px;margin-bottom:16px}.error-container h3{color:var(--error-red);font-size:18px;font-weight:700;margin-bottom:8px}.error-container p{color:var(--text-dark);font-size:14px;margin-bottom:24px}.btn-retry{padding:10px 24px;background:var(--primary-blue);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-retry:hover{background:var(--primary-blue-light);transform:translateY(-1px);box-shadow:0 4px 8px #1565c04d}.image-modal-thumb.active{border:3px solid #2196F3!important;opacity:1!important}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.vehiculo-detalle-container{padding:16px}.detail-header{padding:16px;flex-direction:column;gap:12px}.header-info h1{font-size:22px}.header-meta{flex-direction:column;align-items:flex-start;gap:8px}.header-meta .separator{display:none}.card-content{padding:16px}.vehicle-details-grid{grid-template-columns:1fr}.driver-info-section{flex-direction:column;align-items:center;text-align:center}.driver-details-info{align-items:center;text-align:center}.vehicle-photos-grid{grid-template-columns:repeat(2,1fr);gap:12px}.btn-volver-floating{top:70px;right:16px;padding:10px 16px;font-size:13px}}.viajes-container{background:#e2e8f0;min-height:100vh}.viajes-container .content-wrapper{padding:16px 20px;width:100%;max-width:100%;box-sizing:border-box;position:relative}.viajes-container .filters-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;padding:10px 16px;background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;flex-wrap:wrap}.viajes-container .filters-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.viajes-container .filters-label{font-size:12px;font-weight:500;color:#64748b}.viajes-container .filter-pills{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.viajes-container .filter-pill{padding:6px 12px;border:1px solid #cbd5e1;background:#fff;border-radius:6px;font-size:12px;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s ease}.viajes-container .filter-pill:hover{border-color:#94a3b8;color:#1e293b}.viajes-container .filter-pill.active{background:#1e293b;border-color:#1e293b;color:#fff}.viajes-container .table-container{overflow-x:auto;border-radius:8px;background:#fff;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;padding:16px;width:100%;max-width:100%;box-sizing:border-box}.viajes-table{width:100%;min-width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:auto}.viajes-table thead{background:#f8fafc;border-bottom:1px solid #cbd5e1}.viajes-table th{padding:12px 10px;text-align:left;font-weight:600;color:#64748b;font-size:11px;letter-spacing:.2px;border-bottom:1px solid #cbd5e1;white-space:nowrap;position:sticky;top:0;z-index:10}.viajes-table th:first-child{border-radius:8px 0 0;padding-left:12px}.viajes-table th:last-child{border-radius:0 8px 0 0;padding-right:12px}.viajes-table td{padding:12px 10px;border-bottom:1px solid #e2e8f0;background:#fff;transition:all .2s ease;vertical-align:middle;font-size:12px}.viajes-table td:first-child{padding-left:12px}.viajes-table td:last-child{padding-right:12px}.viajes-table tbody tr{transition:all .2s cubic-bezier(.4,0,.2,1)}.viajes-table tbody tr:hover{background:#f8fafc}.viajes-table tbody tr:hover td{background:transparent}.viaje-id{color:#1e293b;font-weight:600;font-size:12px}.viajes-container .avatar{width:32px;height:32px;min-width:32px;border-radius:8px;background:#1e293b;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:11px;flex-shrink:0;position:relative;overflow:hidden}.viajes-container .avatar-image{width:100%;height:100%;object-fit:cover;border-radius:8px}.viajes-container .avatar-initials{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.conductor-id{font-size:10px;color:#94a3b8;font-weight:400}.location-info{max-width:220px;min-width:0}.location-name{font-size:12px;color:#1e293b;margin-bottom:4px;font-weight:500;line-height:1.4}.location-coords{font-size:11px;color:#64748b;cursor:pointer;font-weight:500;transition:all .2s ease}.location-coords:hover{color:#1e293b}.status-pill.estado-pendiente{background:#f1f5f9;color:#64748b}.status-pill.estado-asignado{background:#dbeafe;color:#2563eb}.status-pill.estado-en-curso{background:#ede9fe;color:#7c3aed}.status-pill.estado-completado{background:#dcfce7;color:#16a34a}.status-pill.estado-cancelado{background:#fee2e2;color:#dc2626}.tarifa-info{display:flex;flex-direction:column;gap:4px}.tarifa-monto{color:#16a34a;font-weight:600;font-size:12px}.tarifa-estimada{font-size:11px;color:#94a3b8}.pago-info{display:flex;flex-direction:column;gap:4px}.pago-metodo{font-size:12px;color:#1e293b;font-weight:500}.pago-estado{font-size:11px;font-weight:600}.pago-pagado{color:#16a34a}.pago-pendiente{color:#b45309}.pago-fallido{color:#dc2626}.viajes-table td .acciones{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:5px;align-items:center!important;justify-content:flex-start!important;width:100%!important;min-width:fit-content;max-width:100%;overflow:visible!important;white-space:nowrap!important;margin:0!important;padding:0!important;box-sizing:border-box}.viajes-container .btn-action{width:26px!important;height:26px!important;min-width:26px!important;max-width:26px!important;border-radius:5px;border:none;cursor:pointer;display:inline-flex!important;flex-shrink:0!important;align-items:center!important;justify-content:center!important;font-size:12px;line-height:1!important;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000001a;padding:0!important;margin:0!important;vertical-align:middle;box-sizing:border-box}.viajes-container .btn-action:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.viajes-container .btn-action.btn-view,.viajes-container .btn-action.btn-detalles{background:#1e293b;color:#fff;padding:6px 12px!important;min-width:48px!important;max-width:none!important;width:auto!important;font-size:11px!important}.viajes-container .btn-action.btn-view:hover,.viajes-container .btn-action.btn-detalles:hover{background:#334155}.viajes-container .btn-action.btn-gps{background:#7c3aed;color:#fff;padding:6px 10px!important;min-width:52px!important;max-width:none!important;width:auto!important;font-size:11px!important}.viajes-container .btn-action.btn-gps:hover{box-shadow:0 4px 12px #7c3aed4d}.viajes-container .btn-action.btn-calificaciones{background:#b45309;color:#fff;padding:6px 8px!important;min-width:32px!important;max-width:none!important;width:auto!important;font-size:14px!important}.viajes-container .btn-action.btn-calificaciones:hover{box-shadow:0 4px 12px #b453094d}.viajes-container .loading-container,.viajes-container .error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;min-height:300px;text-align:center}.viajes-container .loading-container{background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014}.viajes-container .loading-spinner{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#64748b;border-radius:50%;animation:viajes-spin .8s linear infinite;margin-bottom:16px}@keyframes viajes-spin{to{transform:rotate(360deg)}}.viajes-container .loading-container p{color:#64748b;font-size:14px;font-weight:500}.viajes-container .error-container{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:32px;max-width:400px;box-shadow:0 2px 8px #00000014}.viajes-container .error-icon{font-size:32px;margin-bottom:12px}.viajes-container .error-container h3{color:#dc2626;font-size:15px;font-weight:600;margin-bottom:8px}.viajes-container .error-container p{color:#64748b;font-size:13px;margin-bottom:20px}.viajes-container .btn-retry{padding:8px 20px;background:#1e293b;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.viajes-container .btn-retry:hover{background:#334155}.viajes-container .updating-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffffff2;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;border-radius:12px;animation:viajes-fadeIn .2s ease}@keyframes viajes-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.viajes-container .updating-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#64748b;border-radius:50%;animation:viajes-spin .8s linear infinite;margin-bottom:12px}.viajes-container .updating-text{font-size:13px;font-weight:500;color:#64748b;margin:0}.viajes-container .pagination-container{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:16px;padding:12px 16px;background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014}.viajes-container .btn-pagination{padding:8px 16px;background:#fff;color:#1e293b;border:1px solid #cbd5e1;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.viajes-container .btn-pagination:hover:not(:disabled){background:#1e293b;color:#fff;border-color:#1e293b}.viajes-container .btn-pagination:disabled{opacity:.5;cursor:not-allowed}.viajes-container .pagination-info{font-size:13px;color:#64748b;font-weight:500}.btn-limpiar{display:flex;align-items:center;gap:6px;padding:10px 18px;background:#fff;color:var(--text-medium);border:1px solid #E0E0E0;border-radius:8px;cursor:pointer;font-weight:600;font-size:13px;transition:all .2s ease;white-space:nowrap;flex-shrink:0;height:38px}.btn-limpiar:hover{background:#f5f7fa;border-color:var(--text-light);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.viajes-table .no-results{text-align:center;padding:40px 20px;color:#64748b;font-size:14px;font-weight:500}.trip-detail-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a99;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:fadeIn .2s ease;overflow-y:auto}.trip-detail-modal-content{background:#fff;border-radius:12px;max-width:880px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000040;border:1px solid #cbd5e1;animation:modalSlideIn .25s cubic-bezier(.4,0,.2,1);overflow:hidden}.trip-detail-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0}.trip-detail-modal-header h2{font-size:18px;font-weight:700;color:#1e293b;margin:0}.trip-detail-modal-close{width:32px;height:32px;border:none;background:#e2e8f0;color:#64748b;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.trip-detail-modal-close:hover{background:#fee2e2;color:#dc2626}.trip-detail-modal-body{padding:24px;overflow-y:auto;flex:1}.trip-detail-loading,.gps-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;text-align:center}.trip-detail-loading .loading-spinner,.gps-loading .loading-spinner{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#64748b;border-radius:50%;animation:viajes-spin .8s linear infinite;margin-bottom:12px}.trip-detail-loading p,.gps-loading p{margin-top:0;color:#64748b;font-size:14px;font-weight:500}.trip-detail-error,.gps-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;text-align:center}.trip-detail-error .error-icon,.gps-error .error-icon{font-size:40px;margin-bottom:12px}.trip-detail-error p,.gps-error p{color:#64748b;font-size:14px}.trip-detail-section{margin-bottom:24px}.trip-detail-section:last-child{margin-bottom:0}.trip-detail-section-title{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid #e2e8f0}.trip-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.trip-detail-item{display:flex;flex-direction:column;gap:4px;padding:12px 14px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.trip-detail-label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.trip-detail-value{font-size:13px;font-weight:500;color:#1e293b}.trip-detail-value.fare-value{color:#16a34a;font-weight:700;font-size:15px}.trip-detail-value.payment-status-paid{color:#16a34a;font-weight:600}.trip-detail-value.payment-status-pending{color:#b45309;font-weight:600}.trip-detail-value.payment-status-failed{color:#dc2626;font-weight:600}.trip-location-box{display:flex;flex-direction:column;gap:12px}.trip-location-item{display:flex;gap:14px;padding:16px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;transition:all .2s ease}.trip-location-item:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000f}.trip-location-icon{font-size:24px;flex-shrink:0}.trip-location-content{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.trip-location-label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.trip-location-address{font-size:14px;font-weight:500;color:#1e293b;line-height:1.4}.trip-location-coords{font-size:11px;color:#64748b;font-family:Consolas,Monaco,monospace;font-weight:500}.trip-location-map-btn{padding:6px 14px;background:#1e293b;color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;width:fit-content;margin-top:4px}.trip-location-map-btn:hover{background:#334155}.trip-participants-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.trip-participant-card{padding:20px;background:#f8fafc;border-radius:8px;text-align:center;border:1px solid #e2e8f0;transition:all .2s ease}.trip-participant-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000f}.trip-participant-title{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px;margin:0 0 14px}.trip-participant-avatar-wrapper{display:flex;justify-content:center;margin-bottom:12px}.trip-participant-avatar-wrapper .avatar{width:64px!important;height:64px!important;min-width:64px!important;font-size:22px!important;border-radius:50%!important}.trip-participant-avatar-wrapper .avatar-image{width:100%;height:100%;border-radius:50%}.trip-participant-avatar-wrapper .avatar-initials{font-size:22px}.trip-participant-name{font-size:15px;font-weight:600;color:#1e293b;margin-bottom:4px}.trip-participant-phone{font-size:12px;color:#64748b}.gps-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a99;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:fadeIn .2s ease;overflow-y:auto}.gps-modal-content{background:#fff;border-radius:12px;max-width:800px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000040;border:1px solid #cbd5e1;animation:modalSlideIn .25s cubic-bezier(.4,0,.2,1);overflow:hidden}.gps-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0}.gps-modal-header h2{font-size:18px;font-weight:700;color:#1e293b;margin:0}.gps-modal-close{width:32px;height:32px;border:none;background:#e2e8f0;color:#64748b;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.gps-modal-close:hover{background:#fee2e2;color:#dc2626}.gps-modal-body{padding:24px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:20px}.gps-map-section{width:100%}.gps-map-container{width:100%;height:420px;border-radius:8px;overflow:hidden;border:1px solid #e2e8f0;box-shadow:0 2px 8px #0000000f}.gps-statistics-section{background:#f8fafc;padding:20px;border-radius:8px;border:1px solid #e2e8f0}.gps-statistics-title{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid #e2e8f0}.gps-statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.gps-stat-item{display:flex;flex-direction:column;gap:4px;padding:12px;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.gps-stat-label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.gps-stat-value{font-size:15px;font-weight:700;color:#1e293b}.gps-locations-section{width:100%}.gps-locations-title{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid #e2e8f0}.gps-locations-list{display:flex;flex-direction:column;gap:10px;max-height:320px;overflow-y:auto;padding-right:6px}.gps-locations-list::-webkit-scrollbar{width:6px}.gps-locations-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.gps-locations-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.gps-location-point{padding:14px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;transition:all .2s ease}.gps-location-point:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000f}.gps-point-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.gps-point-seq{font-size:12px;font-weight:600;color:#1e293b;background:#e2e8f0;padding:4px 10px;border-radius:6px}.gps-point-time{font-size:11px;color:#64748b;font-weight:500}.gps-point-coords{font-size:12px;color:#475569;font-family:Consolas,Monaco,monospace;font-weight:500;margin-bottom:8px;padding:8px;background:#fff;border-radius:6px;border:1px solid #e2e8f0}.gps-point-details{display:flex;gap:10px;margin-bottom:10px;flex-wrap:wrap}.gps-point-speed,.gps-point-bearing{font-size:11px;color:#64748b;font-weight:500;padding:4px 8px;background:#fff;border-radius:6px;border:1px solid #e2e8f0}.gps-point-map-btn{padding:6px 12px;background:#1e293b;color:#fff;border:none;border-radius:6px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease}.gps-point-map-btn:hover{background:#334155}.ratings-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a99;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:fadeIn .2s ease;overflow-y:auto}.ratings-modal-content{background:#fff;border-radius:12px;max-width:560px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000040;border:1px solid #cbd5e1;animation:modalSlideIn .25s cubic-bezier(.4,0,.2,1);overflow:hidden}.ratings-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0}.ratings-modal-header h2{font-size:18px;font-weight:700;color:#1e293b;margin:0}.ratings-modal-close{width:32px;height:32px;border:none;background:#e2e8f0;color:#64748b;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.ratings-modal-close:hover{background:#fee2e2;color:#dc2626}.ratings-modal-body{padding:24px;overflow-y:auto;flex:1}.ratings-loading,.ratings-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;text-align:center}.ratings-loading .loading-spinner{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#64748b;border-radius:50%;animation:viajes-spin .8s linear infinite;margin-bottom:12px}.ratings-loading p{margin-top:0;color:#64748b;font-size:14px;font-weight:500}.ratings-error .error-icon{font-size:40px;margin-bottom:12px}.ratings-error p{color:#64748b;font-size:14px}.ratings-content{display:flex;flex-direction:column;gap:20px}.rating-section{padding:20px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.rating-section-title{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid #e2e8f0}.rating-display{display:flex;flex-direction:column;gap:14px}.rating-stars{display:flex;align-items:center;gap:4px;font-size:24px;line-height:1}.rating-stars .star{transition:transform .2s ease}.rating-stars .star.filled{filter:drop-shadow(0 2px 4px rgba(245,158,11,.35))}.rating-stars .star.empty{opacity:.25;filter:grayscale(100%)}.rating-value{margin-left:10px;font-size:15px;font-weight:700;color:#1e293b}.rating-feedback{padding:14px;background:#fff;border-radius:8px;border:1px solid #e2e8f0;margin-top:8px}.feedback-label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px;margin:0 0 6px}.feedback-text{font-size:14px;color:#1e293b;line-height:1.5;margin:0;font-style:italic}.rating-empty{padding:24px;text-align:center;color:#94a3b8;font-size:14px;font-style:italic}.rating-empty p{margin:0}@media (max-width: 768px){.viajes-container .content-wrapper{padding:16px}.viajes-container .table-container{padding:12px;margin:0;border-radius:8px}.viajes-table th,.viajes-table td{padding:10px 8px;font-size:12px}.viajes-container .avatar{width:32px;height:32px;font-size:12px}.conductor-name{font-size:12px}.conductor-id{font-size:10px}.status-pill{font-size:10px;padding:3px 8px}.viajes-container .btn-action{width:24px;height:24px;min-width:24px;max-width:24px;font-size:10px}.viajes-container .pagination-container{flex-direction:column;gap:12px}.viajes-container .pagination-info{order:-1}.trip-detail-modal-content,.gps-modal-content,.ratings-modal-content{max-width:100%;max-height:95vh;margin:10px}.trip-detail-modal-body,.gps-modal-body,.ratings-modal-body{padding:20px}.trip-detail-grid,.trip-participants-grid{grid-template-columns:1fr}.gps-info-header{flex-direction:column;gap:12px;align-items:flex-start}.rating-stars{font-size:24px}.rating-value{font-size:16px}}.usuarios-container{background:#e2e8f0;min-height:100vh}.usuarios-container .content-wrapper{padding:16px 20px;width:100%;max-width:100%;box-sizing:border-box;position:relative}.usuarios-container .filters-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;padding:10px 16px;background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;flex-wrap:wrap}.usuarios-container .filters-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.usuarios-container .filters-label{font-size:12px;font-weight:500;color:#64748b}.usuarios-container .filter-pills{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.usuarios-container .filter-pill{padding:6px 12px;border:1px solid #cbd5e1;background:#fff;border-radius:6px;font-size:12px;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s ease}.usuarios-container .filter-pill:hover{border-color:#94a3b8;color:#1e293b}.usuarios-container .filter-pill.active{background:#1e293b;border-color:#1e293b;color:#fff}.usuarios-container .filter-search{position:relative;min-width:220px}.usuarios-container .search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:12px;color:#64748b;pointer-events:none}.usuarios-container .search-input{width:100%;padding:8px 12px 8px 32px;border:1px solid #cbd5e1;background:#fff;border-radius:6px;font-size:12px;color:#1e293b;transition:all .2s ease}.usuarios-container .search-input:focus{outline:none;border-color:#1e293b;box-shadow:0 0 0 2px #1e293b1a}.usuarios-container .search-input::placeholder{color:#94a3b8}.usuarios-container .table-container{overflow-x:auto;border-radius:8px;background:#fff;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;padding:16px;width:100%;max-width:100%;box-sizing:border-box}.usuarios-table{width:100%;min-width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:auto}.usuarios-table thead{background:#f8fafc;border-bottom:1px solid #cbd5e1}.usuarios-table th{padding:12px 10px;text-align:left;font-weight:600;color:#64748b;font-size:11px;letter-spacing:.2px;border-bottom:1px solid #cbd5e1;white-space:nowrap;position:sticky;top:0;z-index:10}.usuarios-table th:first-child{border-radius:8px 0 0;padding-left:12px}.usuarios-table th:last-child{border-radius:0 8px 0 0;padding-right:12px}.usuarios-table td{padding:12px 10px;border-bottom:1px solid #e2e8f0;background:#fff;transition:all .2s ease;vertical-align:middle;font-size:12px}.usuarios-table td:first-child{padding-left:12px}.usuarios-table td:last-child{padding-right:12px}.usuarios-table tbody tr{transition:all .2s cubic-bezier(.4,0,.2,1)}.usuarios-table tbody tr:hover{background:#f8fafc}.usuarios-table tbody tr:hover td{background:transparent}.usuario-id{color:#1e293b;font-weight:600;font-size:12px}.conductor-info{display:flex;align-items:center;gap:10px;min-width:0}.usuarios-container .avatar{width:32px;height:32px;min-width:32px;border-radius:8px;background:#1e293b;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:11px;flex-shrink:0;position:relative;overflow:hidden}.usuarios-container .avatar-initials{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.conductor-details{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.conductor-name{font-weight:600;color:#1e293b;font-size:13px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-cell{font-size:12px;color:#1e293b;font-weight:500}.status-cell{display:flex;flex-wrap:wrap;gap:6px;align-items:center;line-height:1.2}.status-pill{display:inline-block;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;white-space:nowrap}.status-pill.status-activo{background:#dcfce7;color:#16a34a}.status-pill.status-inactivo{background:#fee2e2;color:#dc2626}.fecha-info{display:flex;flex-direction:column;gap:1px}.fecha-completa{font-size:12px;color:#1e293b;font-weight:500}.fecha-relativa{font-size:10px;color:#94a3b8}.usuarios-table td .acciones{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:5px;align-items:center!important;justify-content:flex-start!important;width:100%!important;min-width:fit-content;max-width:100%;overflow:visible!important;white-space:nowrap!important;margin:0!important;padding:0!important;box-sizing:border-box}.usuarios-container .btn-action{padding:6px 12px!important;min-width:48px!important;border-radius:5px;border:none;cursor:pointer;display:inline-flex!important;flex-shrink:0!important;align-items:center!important;justify-content:center!important;font-size:11px!important;line-height:1!important;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000001a;margin:0!important;vertical-align:middle;box-sizing:border-box}.usuarios-container .btn-action:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.usuarios-container .btn-action.btn-view{background:#1e293b;color:#fff}.usuarios-container .btn-action.btn-view:hover{background:#334155}.usuarios-container .btn-action.btn-activar{background:#16a34a;color:#fff;padding:6px 10px!important;min-width:32px!important}.usuarios-container .btn-action.btn-activar:hover{box-shadow:0 4px 12px #16a34a4d}.usuarios-container .btn-action.btn-desactivar{background:#dc2626;color:#fff;padding:6px 10px!important;min-width:32px!important}.usuarios-container .btn-action.btn-desactivar:hover{box-shadow:0 4px 12px #dc26264d}.usuarios-container .loading-container,.usuarios-container .error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;min-height:300px;text-align:center}.usuarios-container .loading-container{background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014}.usuarios-container .loading-spinner{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#64748b;border-radius:50%;animation:usuarios-spin .8s linear infinite;margin-bottom:16px}@keyframes usuarios-spin{to{transform:rotate(360deg)}}.usuarios-container .loading-container p{color:#64748b;font-size:14px;font-weight:500}.usuarios-container .error-container{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:32px;max-width:400px;box-shadow:0 2px 8px #00000014}.usuarios-container .error-container .error-icon{font-size:32px;margin-bottom:12px}.usuarios-container .error-container h3{color:#dc2626;font-size:15px;font-weight:600;margin-bottom:8px}.usuarios-container .error-container p{color:#64748b;font-size:13px;margin-bottom:20px}.usuarios-container .btn-retry{padding:8px 20px;background:#1e293b;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.usuarios-container .btn-retry:hover{background:#334155}.usuarios-container .updating-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffffff2;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;border-radius:12px;animation:usuarios-fadeIn .2s ease}@keyframes usuarios-fadeIn{0%{opacity:0}to{opacity:1}}.usuarios-container .updating-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#64748b;border-radius:50%;animation:usuarios-spin .8s linear infinite;margin-bottom:12px}.usuarios-container .updating-text{font-size:13px;font-weight:500;color:#64748b;margin:0}.usuarios-container .pagination-container{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:16px;padding:12px 16px;background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014}.usuarios-container .btn-pagination{padding:8px 16px;background:#fff;color:#1e293b;border:1px solid #cbd5e1;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.usuarios-container .btn-pagination:hover:not(:disabled){background:#1e293b;color:#fff;border-color:#1e293b}.usuarios-container .btn-pagination:disabled{opacity:.5;cursor:not-allowed}.usuarios-container .pagination-info{font-size:13px;color:#64748b;font-weight:500}.usuarios-table .no-results{text-align:center;padding:40px 20px;color:#64748b;font-size:14px;font-weight:500}.edit-modal-overlay,.create-modal-overlay,.confirm-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a99;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:usuarios-fadeIn .2s ease;overflow-y:auto}.edit-modal-content,.create-modal-content,.confirm-modal-content{background:#fff;border-radius:12px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000040;border:1px solid #cbd5e1;animation:modalSlideIn .25s cubic-bezier(.4,0,.2,1);overflow:hidden}.edit-modal-content,.create-modal-content{max-width:520px}.confirm-modal-content{max-width:440px;position:relative}.edit-modal-header,.create-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0}.edit-modal-header h2,.create-modal-header h2{font-size:17px;font-weight:700;color:#1e293b;margin:0}.edit-modal-close,.create-modal-close{width:32px;height:32px;border:none;background:#e2e8f0;color:#64748b;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.edit-modal-close:hover,.create-modal-close:hover{background:#fee2e2;color:#dc2626}.edit-modal-close:disabled,.create-modal-close:disabled{opacity:.5;cursor:not-allowed}.edit-modal-body,.create-modal-body{padding:20px;overflow-y:auto;flex:1}.edit-loading,.edit-error,.create-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.edit-loading .loading-spinner,.create-loading .loading-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#64748b;border-radius:50%;animation:usuarios-spin .8s linear infinite;margin-bottom:12px}.edit-loading p,.create-loading p{margin-top:0;color:#64748b;font-size:13px;font-weight:500}.edit-error .error-icon{font-size:40px;margin-bottom:12px}.edit-error p{color:#64748b;font-size:13px}.edit-form,.create-form{display:flex;flex-direction:column;gap:14px}.edit-form .form-group,.create-form .form-group{display:flex;flex-direction:column;gap:4px}.edit-form .form-group label,.create-form .form-group label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.edit-form .form-group input,.create-form .form-group input{padding:8px 12px;border:1px solid #cbd5e1;background:#fff;border-radius:6px;font-size:13px;color:#1e293b;transition:all .2s ease}.edit-form .form-group input:focus,.create-form .form-group input:focus{outline:none;border-color:#1e293b;box-shadow:0 0 0 2px #1e293b1a}.edit-form .form-group input.error,.create-form .form-group input.error{border-color:#dc2626}.edit-form .form-group input.valid,.create-form .form-group input.valid{border-color:#16a34a}.edit-form .error-message,.create-form .error-message{font-size:11px;color:#dc2626;font-weight:500}.edit-form .success-message,.create-form .success-message{font-size:11px;color:#16a34a;font-weight:500}.error-icon-inline,.success-icon-inline{font-size:12px;flex-shrink:0}.edit-form .form-actions,.create-form .form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:8px;padding-top:16px;border-top:1px solid #e2e8f0}.edit-form .btn-cancel,.edit-form .btn-save,.create-form .btn-cancel,.create-form .btn-save{padding:8px 20px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px;min-width:100px}.edit-form .btn-cancel,.create-form .btn-cancel{background:#fff;color:#1e293b;border:1px solid #cbd5e1}.edit-form .btn-cancel:hover:not(:disabled),.create-form .btn-cancel:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.edit-form .btn-save,.create-form .btn-save{background:#1e293b;color:#fff}.edit-form .btn-save:hover:not(:disabled),.create-form .btn-save:hover:not(:disabled){background:#334155}.edit-form .btn-cancel:disabled,.edit-form .btn-save:disabled,.create-form .btn-cancel:disabled,.create-form .btn-save:disabled{opacity:.6;cursor:not-allowed}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.confirm-modal-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffffff2;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10;border-radius:12px}.loading-spinner-large{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#64748b;border-radius:50%;animation:usuarios-spin .8s linear infinite;margin-bottom:12px}.small-spinner{width:12px;height:12px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:usuarios-spin .8s linear infinite;display:inline-block;margin-right:6px}.confirm-modal-body{padding:20px}.confirm-modal-body.processing{opacity:.5;pointer-events:none}.confirm-modal-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.confirm-modal-icon{font-size:32px;width:44px;height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.confirm-modal-title{font-size:16px;font-weight:700;color:#1e293b;margin:0}.confirm-modal-message{margin-bottom:16px}.confirm-modal-message p{font-size:13px;color:#64748b;line-height:1.5;margin:0 0 8px}.confirm-modal-message strong{color:#1e293b;font-weight:600}.confirm-warning{padding:10px 12px;background:#fffbeb;border-left:3px solid #f59e0b;border-radius:6px;font-size:12px;color:#92400e;margin-top:10px!important}.confirm-modal-actions{display:flex;gap:10px;justify-content:flex-end}.btn-cancel-confirm,.btn-confirm{padding:8px 20px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.btn-cancel-confirm{background:#fff;color:#1e293b;border:1px solid #cbd5e1}.btn-cancel-confirm:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.btn-confirm{color:#fff}.btn-confirm-activate{background:#16a34a}.btn-confirm-activate:hover:not(:disabled){background:#15803d}.btn-confirm-deactivate{background:#dc2626}.btn-confirm-deactivate:hover:not(:disabled){background:#b91c1c}.btn-cancel-confirm:disabled,.btn-confirm:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.usuarios-container .content-wrapper{padding:16px}.usuarios-container .filter-search{min-width:150px}.usuarios-container .table-container{padding:12px;margin:0;border-radius:8px}.usuarios-table th,.usuarios-table td{padding:10px 8px;font-size:12px}.usuarios-table{min-width:700px}.usuarios-container .avatar{width:32px;height:32px;font-size:12px}.conductor-name{font-size:12px}.status-pill{font-size:10px;padding:3px 8px}.usuarios-container .btn-action{padding:5px 10px!important;min-width:40px!important;font-size:10px!important}.usuarios-container .pagination-container{flex-direction:column;gap:12px}.usuarios-container .pagination-info{order:-1}.edit-modal-content{max-width:100%;max-height:95vh;margin:10px}.edit-modal-body{padding:20px}.create-modal-content{max-width:100%;max-height:95vh;margin:10px}.create-modal-body{padding:20px}}.configuracion-container{min-height:100vh;background:#e2e8f0;padding:16px 20px}.configuracion-container .content-wrapper{max-width:1200px;margin:0 auto;width:100%}.config-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;align-items:start}.config-card{background:#fff;border-radius:8px;padding:16px 18px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;transition:all .2s ease}.config-card:hover{box-shadow:0 2px 12px #0000001a}.config-card-wide{grid-column:1 / -1}.config-section{margin:0}.section-header-compact{margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #e2e8f0}.section-title-compact{font-size:15px;font-weight:600;color:#1e293b;margin:0 0 4px}.section-subtitle-compact{font-size:12px;color:#64748b;margin:0;line-height:1.4}.password-form{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 16px;align-items:start}.password-form .form-group{display:flex;flex-direction:column;gap:4px}.password-form .form-group label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.password-form .form-group input{padding:8px 12px;border:1px solid #cbd5e1;background:#fff;border-radius:6px;font-size:13px;color:#1e293b;transition:all .2s ease}.password-form .form-group input::placeholder{color:#94a3b8}.password-form .form-group input:focus{outline:none;border-color:#1e293b;box-shadow:0 0 0 2px #1e293b1a}.password-form .form-group input.valid{border-color:#16a34a}.password-form .form-group input.error{border-color:#dc2626}.error-message,.success-message{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:500;margin-top:2px}.error-message{color:#dc2626}.success-message{color:#16a34a}.error-icon-inline,.success-icon-inline{font-size:12px}.form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;padding-top:12px;margin-top:4px;border-top:1px solid #e2e8f0}.btn-save{padding:8px 20px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;background:#1e293b;color:#fff;transition:all .2s ease}.btn-save:hover:not(:disabled){background:#334155}.btn-save:disabled{opacity:.6;cursor:not-allowed}.small-spinner{width:12px;height:12px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:config-spin .8s linear infinite;display:inline-block}@keyframes config-spin{to{transform:rotate(360deg)}}.toggle-loading{display:flex;align-items:center;gap:8px;font-size:12px;color:#64748b}.toggle-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.toggle-label{display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-input{position:absolute;opacity:0;width:0;height:0}.toggle-slider{position:relative;width:44px;height:24px;background:#cbd5e1;border-radius:24px;transition:all .2s ease}.toggle-slider:after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;transition:all .2s ease}.toggle-input:checked+.toggle-slider{background:#1e293b}.toggle-input:checked+.toggle-slider:after{transform:translate(20px)}.toggle-input:disabled+.toggle-slider{opacity:.6;cursor:not-allowed}.toggle-text{font-size:13px;font-weight:600;color:#1e293b}.toggle-saving{display:flex;align-items:center;gap:6px;font-size:12px;color:#64748b}.language-selector{display:flex;gap:10px;flex-wrap:wrap}.language-option{flex:1;min-width:120px;padding:10px 14px;border:1px solid #cbd5e1;background:#fff;border-radius:6px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;font-weight:500;color:#1e293b}.language-option:hover{border-color:#94a3b8;background:#f8fafc}.language-option.active{border-color:#1e293b;background:#f1f5f9}.language-flag{font-size:20px;flex-shrink:0}.language-name{flex:1;text-align:left}.language-check{font-size:14px;color:#1e293b;font-weight:700}@media (max-width: 900px){.config-grid{grid-template-columns:1fr}.config-card-wide{grid-column:1}.password-form{grid-template-columns:1fr}}@media (max-width: 768px){.configuracion-container{padding:12px 16px}.config-card{padding:14px 16px}.section-title-compact{font-size:14px}.language-selector{flex-direction:column}.language-option{min-width:100%}}.tarifas-container{background:#e2e8f0;min-height:100vh}.tarifas-container .content-wrapper{padding:16px 20px;width:100%;max-width:100%;box-sizing:border-box}.tarifas-container .filters-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;padding:10px 16px;background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;flex-wrap:wrap}.tarifas-container .filters-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.tarifas-container .filters-label{font-size:12px;font-weight:500;color:#64748b}.tarifas-container .filter-select{padding:6px 10px;border:1px solid #cbd5e1;border-radius:6px;font-size:12px;color:#1e293b;background:#fff;cursor:pointer;transition:all .2s ease;min-width:140px}.tarifas-container .filter-select:hover{border-color:#94a3b8}.tarifas-container .filter-select:focus{outline:none;border-color:#1e293b;box-shadow:0 0 0 2px #1e293b1a}.tarifas-container .btn-clear-filters{padding:6px 12px;border:1px solid #cbd5e1;background:#fff;border-radius:6px;font-size:12px;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s ease}.tarifas-container .btn-clear-filters:hover{border-color:#94a3b8;color:#1e293b}.tarifas-container .table-container{overflow-x:auto;border-radius:8px;background:#fff;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;padding:16px;width:100%;max-width:100%;box-sizing:border-box}.rates-table{width:100%;min-width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:auto}.rates-table thead{background:#f8fafc;border-bottom:1px solid #cbd5e1}.rates-table th{padding:12px 10px;text-align:left;font-weight:600;color:#64748b;font-size:11px;letter-spacing:.2px;border-bottom:1px solid #cbd5e1;white-space:nowrap;position:sticky;top:0;z-index:10}.rates-table th:first-child{border-radius:8px 0 0;padding-left:12px}.rates-table th:last-child{border-radius:0 8px 0 0;padding-right:12px}.rates-table td{padding:12px 10px;border-bottom:1px solid #e2e8f0;background:#fff;transition:all .2s ease;vertical-align:middle;font-size:12px}.rates-table td:first-child{padding-left:12px}.rates-table td:last-child{padding-right:12px}.rates-table tbody tr:hover{background:#f8fafc}.rates-table tbody tr:hover td{background:transparent}.amount-cell{font-weight:600;color:#16a34a;font-size:12px}.rates-table td .acciones{display:flex;flex-direction:row;flex-wrap:nowrap;gap:5px;align-items:center}.tarifas-container .btn-action{width:26px;height:26px;min-width:26px;border-radius:5px;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:12px;transition:all .2s ease;box-shadow:0 1px 3px #0000001a}.tarifas-container .btn-action:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.tarifas-container .btn-action.btn-view{background:#1e293b;color:#fff}.tarifas-container .btn-action.btn-view:hover{background:#334155}.tarifas-container .btn-action.btn-delete{background:#dc2626;color:#fff}.tarifas-container .btn-action.btn-delete:hover{box-shadow:0 4px 12px #dc26264d}.tarifas-container .table-footer{margin-top:12px;padding:10px 16px;background:#fff;border-radius:8px;border:1px solid #cbd5e1;text-align:right;color:#64748b;font-size:13px;font-weight:500}.tarifas-container .loading-container,.tarifas-container .error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;min-height:300px;text-align:center}.tarifas-container .loading-container{background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014}.tarifas-container .loading-spinner{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#64748b;border-radius:50%;animation:tarifas-spin .8s linear infinite;margin-bottom:16px}@keyframes tarifas-spin{to{transform:rotate(360deg)}}.tarifas-container .loading-container p{color:#64748b;font-size:14px;font-weight:500}.tarifas-container .error-container{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:32px;max-width:400px;box-shadow:0 2px 8px #00000014}.tarifas-container .error-container .error-icon{font-size:32px;margin-bottom:12px}.tarifas-container .error-container h3{color:#dc2626;font-size:15px;font-weight:600;margin-bottom:8px}.tarifas-container .error-container p{color:#64748b;font-size:13px;margin-bottom:20px}.tarifas-container .btn-retry{padding:8px 20px;background:#1e293b;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.tarifas-container .btn-retry:hover{background:#334155}.tarifas-container .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;text-align:center}.tarifas-container .empty-icon{font-size:48px;margin-bottom:12px}.tarifas-container .empty-state h3{font-size:16px;font-weight:600;color:#1e293b;margin:0 0 8px}.tarifas-container .empty-state p{font-size:13px;color:#64748b;margin:0 0 20px}.tarifas-container .btn-primary{padding:8px 20px;background:#1e293b;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.tarifas-container .btn-primary:hover{background:#334155}@media (max-width: 768px){.tarifas-container .content-wrapper{padding:16px}.tarifas-container .filters-bar,.tarifas-container .filters-row{flex-direction:column;align-items:stretch}.tarifas-container .filter-select{min-width:100%}.rates-table{min-width:800px}.tarifas-container .table-container{padding:12px}}.tarifa-form-container{background:#e2e8f0;min-height:100vh}.tarifa-form-container .content-wrapper{padding:16px 20px;max-width:900px;margin:0 auto}.tarifa-form{background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;padding:20px 24px}.tarifa-form .form-error{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:13px;margin-bottom:20px}.tarifa-form .form-error .error-icon{font-size:18px;flex-shrink:0}.tarifa-form .form-section{margin-bottom:24px}.tarifa-form .form-section:last-of-type{margin-bottom:0}.tarifa-form .section-title{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.tarifa-form .form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:14px}.tarifa-form .form-row:last-child{margin-bottom:0}.tarifa-form .form-group{display:flex;flex-direction:column;gap:4px}.tarifa-form .form-label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.tarifa-form .required{color:#dc2626}.tarifa-form .form-input,.tarifa-form .form-select,.tarifa-form .form-textarea{padding:8px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:13px;color:#1e293b;background:#fff;transition:all .2s ease;font-family:inherit}.tarifa-form .form-input:focus,.tarifa-form .form-select:focus,.tarifa-form .form-textarea:focus{outline:none;border-color:#1e293b;box-shadow:0 0 0 2px #1e293b1a}.tarifa-form .form-input:disabled,.tarifa-form .form-select:disabled{background:#f8fafc;cursor:not-allowed;opacity:.8}.tarifa-form .form-textarea{resize:vertical;min-height:80px}.tarifa-form .form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:20px;border-top:1px solid #e2e8f0}.tarifa-form .btn-cancel,.tarifa-form .btn-submit{padding:8px 20px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:100px}.btn-cancel{background:#fff;color:#1e293b;border:1px solid #cbd5e1}.tarifa-form .btn-cancel:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.tarifa-form .btn-submit{background:#1e293b;color:#fff}.tarifa-form .btn-submit:hover:not(:disabled){background:#334155}.tarifa-form .btn-cancel:disabled,.tarifa-form .btn-submit:disabled{opacity:.6;cursor:not-allowed}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;min-height:300px;background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014}.loading-spinner{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#64748b;border-radius:50%;animation:tarifa-form-spin .8s linear infinite;margin-bottom:14px}@keyframes tarifa-form-spin{to{transform:rotate(360deg)}}.loading-container p{font-size:13px;color:#64748b;font-weight:500;margin:0}@media (max-width: 768px){.tarifa-form-container .content-wrapper,.tarifa-form{padding:16px}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.btn-cancel,.btn-submit{width:100%}}.servicios-container{background:#f5f7fa;min-height:100vh}.content-wrapper{padding:24px;width:100%;max-width:100%;box-sizing:border-box}.form-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.form-modal-content{background:var(--card-white);border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:100%;max-height:90vh;overflow-y:auto}.form-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #E0E7EF}.form-modal-header h2{font-size:20px;font-weight:700;color:var(--text-dark);margin:0}.btn-close{width:32px;height:32px;border:none;background:transparent;font-size:24px;color:var(--text-medium);cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.btn-close:hover{background:#f5f7fa;color:var(--text-dark)}.service-form{padding:24px}.form-error{display:flex;align-items:center;gap:12px;padding:16px;background:#ffebee;border:1px solid #F44336;border-radius:8px;color:#c62828;font-size:14px;margin-bottom:24px}.error-icon{font-size:20px}.form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.form-label{font-size:14px;font-weight:600;color:var(--text-dark)}.required{color:#f44336}.form-input{padding:12px;border:1px solid #E0E7EF;border-radius:8px;font-size:14px;color:var(--text-dark);background:#fff;transition:all .3s ease;font-family:inherit}.form-input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #1565c01a}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid #E0E7EF}.btn-cancel,.btn-submit{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:120px}.btn-cancel{background:#f5f7fa;color:var(--text-dark);border:1px solid #E0E7EF}.btn-cancel:hover{background:#e8eef2;border-color:var(--primary-blue);color:var(--primary-blue)}.btn-submit{background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-light) 100%);color:#fff;box-shadow:0 4px 12px #1565c040}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 6px 16px #1565c059}.table-container{background:var(--card-white);border-radius:12px;box-shadow:0 2px 8px #0000000a;overflow:hidden;width:100%;max-width:100%;box-sizing:border-box}.services-table{width:100%;min-width:100%;border-collapse:collapse;table-layout:auto}.services-table thead{background:#f5f7fa}.services-table th{padding:16px;text-align:left;font-size:13px;font-weight:700;color:var(--text-dark);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #E0E7EF}.services-table td{padding:16px;font-size:14px;color:var(--text-dark);border-bottom:1px solid #F0F4F8}.services-table tbody tr:hover{background:#f9fafb}.code-cell{font-family:Courier New,monospace;font-weight:600;color:var(--primary-blue)}.action-buttons{display:flex;gap:8px}.btn-edit,.btn-delete{width:36px;height:36px;border:none;border-radius:8px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;background:transparent}.btn-edit:hover{background:#e3f2fd;transform:scale(1.1)}.btn-delete:hover{background:#ffebee;transform:scale(1.1)}.table-footer{margin-top:16px;padding:12px;text-align:right;color:var(--text-medium);font-size:14px}.empty-state,.error-container,.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-icon,.error-icon{font-size:64px;margin-bottom:16px}.empty-state h3,.error-container h3{font-size:20px;font-weight:700;color:var(--text-dark);margin:0 0 8px}.empty-state p,.error-container p{font-size:14px;color:var(--text-medium);margin:0 0 24px}.btn-primary,.btn-retry{padding:12px 24px;background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-light) 100%);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #1565c040}.btn-primary:hover,.btn-retry:hover{transform:translateY(-2px);box-shadow:0 6px 16px #1565c059}.loading-spinner{width:40px;height:40px;border:4px solid #E0E7EF;border-top-color:var(--primary-blue);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.loading-container p{font-size:14px;color:var(--text-medium);margin:0}@media (max-width: 768px){.content-wrapper{padding:16px}.form-modal{padding:10px}.form-modal-content{max-width:100%}.form-actions{flex-direction:column-reverse}.btn-cancel,.btn-submit{width:100%}.services-table{font-size:12px}.services-table th,.services-table td{padding:12px 8px}.action-buttons{flex-direction:column}}.chat-list{display:flex;flex-direction:column;height:100%;background:var(--card-white);border-right:1px solid #E0E7EF}.chat-list-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #E0E7EF;background:#f5f7fa}.chat-list-filters{display:flex;gap:8px;padding:12px 20px;border-bottom:1px solid #E0E7EF;background:#f5f7fa}.filter-btn{flex:1;padding:8px 16px;border:1px solid #E0E7EF;border-radius:8px;background:#fff;color:var(--text-medium);font-size:13px;font-weight:500;cursor:pointer;transition:all .3s ease}.filter-btn:hover{background:#f5f7fa;border-color:var(--primary-blue);color:var(--primary-blue)}.filter-btn.active{background:var(--primary-blue);border-color:var(--primary-blue);color:#fff;font-weight:600}.chat-list-header h2{font-size:20px;font-weight:700;color:var(--text-dark);margin:0}.btn-refresh{width:32px;height:32px;border:none;background:transparent;border-radius:8px;cursor:pointer;font-size:18px;color:var(--text-medium);display:flex;align-items:center;justify-content:center;transition:all .3s ease}.btn-refresh:hover{background:#e8eef2;color:var(--primary-blue);transform:rotate(180deg)}.chat-list-items{flex:1;overflow-y:auto;padding:8px}.chat-list-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;height:100%}.chat-list-loading .loading-spinner{width:40px;height:40px;border:4px solid #E0E7EF;border-top-color:var(--primary-blue);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.chat-list-loading p{color:var(--text-medium);font-size:14px}.chat-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-medium)}.chat-list-empty .empty-icon{font-size:48px;margin-bottom:16px}.chat-list-empty p{font-size:14px;margin:0}.chat-list-item{display:flex;gap:12px;padding:12px;border-radius:12px;cursor:pointer;transition:all .3s ease;margin-bottom:4px}.chat-list-item:hover{background:#f5f7fa}.chat-list-item.active{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:1px solid var(--primary-blue)}.chat-list-item-avatar{position:relative;flex-shrink:0}.chat-list-item-avatar img,.chat-list-item-avatar .avatar-placeholder{width:48px;height:48px;border-radius:50%;object-fit:cover}.avatar-placeholder{background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-light) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px}.unread-badge{position:absolute;top:-4px;right:-4px;background:#f44336;color:#fff;border-radius:12px;padding:2px 8px;font-size:11px;font-weight:700;min-width:20px;text-align:center;border:2px solid white}.chat-list-item-content{flex:1;min-width:0}.chat-list-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:4px}.chat-list-item-header h3{font-size:14px;font-weight:600;color:var(--text-dark);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-list-item-time{font-size:11px;color:var(--text-medium);white-space:nowrap;margin-left:8px}.chat-list-item-message{font-size:13px;color:var(--text-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-list-item.active .chat-list-item-message{color:var(--text-dark)}.message-item{display:flex;margin-bottom:16px;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-item.own{justify-content:flex-end}.message-item.other{justify-content:flex-start}.message-content{max-width:70%;display:flex;flex-direction:column}.message-item.own .message-content{align-items:flex-end}.message-item.other .message-content{align-items:flex-start}.message-sender-name{font-size:12px;font-weight:600;color:var(--text-medium);margin-bottom:4px;padding:0 12px}.message-bubble{padding:12px 16px;border-radius:18px;position:relative;word-wrap:break-word;word-break:break-word}.message-item.own .message-bubble{background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-light) 100%);color:#fff;border-bottom-right-radius:4px}.message-item.other .message-bubble{background:#fff;color:var(--text-dark);border:1px solid #E0E7EF;border-bottom-left-radius:4px}.message-bubble p{margin:0;font-size:14px;line-height:1.5}.message-meta{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:11px}.message-item.own .message-meta{color:#fffc}.message-item.other .message-meta{color:var(--text-medium)}.message-time-container{display:flex;flex-direction:column;gap:2px}.message-time{opacity:.8;font-weight:500}.message-time-relative{opacity:.7;font-size:10px;font-style:italic}.message-status{font-size:12px;opacity:.9}.message-list{flex:1;overflow-y:auto;padding:20px;background:#f5f7fa;display:flex;flex-direction:column}.message-list-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;height:100%}.message-list-loading .loading-spinner{width:40px;height:40px;border:4px solid #E0E7EF;border-top-color:var(--primary-blue);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.message-list-loading p{color:var(--text-medium);font-size:14px;margin:0}.message-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-medium);height:100%}.message-list-empty .empty-icon{font-size:64px;margin-bottom:16px}.message-list-empty p{font-size:16px;margin:8px 0;color:var(--text-dark)}.message-list-empty .empty-subtitle{font-size:14px;color:var(--text-medium)}.message-list-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-medium);height:100%}.message-list-error .error-icon{font-size:64px;margin-bottom:16px}.message-list-error p{font-size:16px;margin:8px 0;color:var(--text-dark)}.message-list-error .error-message{font-size:14px;color:#f44336;background:#ffebee;padding:12px 16px;border-radius:8px;margin-top:12px}.message-input{display:flex;padding:16px;background:#fff;border-top:1px solid #E0E7EF;gap:12px;align-items:center}.message-input input{flex:1;padding:12px 16px;border:1px solid #E0E7EF;border-radius:24px;outline:none;font-size:14px;font-family:inherit;transition:all .3s ease}.message-input input:focus{border-color:var(--primary-blue);box-shadow:0 0 0 3px #1565c01a}.message-input input:disabled{background:#f5f7fa;cursor:not-allowed}.message-input .btn-send{width:44px;height:44px;border:none;background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-light) 100%);color:#fff;border-radius:50%;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 4px 12px #1565c040;flex-shrink:0}.message-input .btn-send:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #1565c059}.message-input .btn-send:active:not(:disabled){transform:translateY(0)}.message-input .btn-send:disabled{opacity:.6;cursor:not-allowed;transform:none}.sending-spinner{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.chat-window{display:flex;flex-direction:column;height:100%;background:#f5f7fa}.chat-window-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:40px;color:var(--text-medium)}.chat-window-empty .empty-icon{font-size:64px;margin-bottom:16px}.chat-window-empty h3{font-size:20px;font-weight:700;color:var(--text-dark);margin:0 0 8px}.chat-window-empty p{font-size:14px;margin:0}.chat-window-header{background:#fff;padding:16px 20px;border-bottom:1px solid #E0E7EF;box-shadow:0 2px 8px #0000000a;display:flex;align-items:center;justify-content:space-between;gap:16px}.chat-window-user{display:flex;align-items:center;gap:12px}.chat-window-user .user-avatar,.chat-window-user .avatar-placeholder{width:48px;height:48px;border-radius:50%;object-fit:cover;flex-shrink:0}.chat-window-user .avatar-placeholder{background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-light) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px}.user-info{flex:1;min-width:0}.user-info h3{font-size:16px;font-weight:700;color:var(--text-dark);margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-info p{font-size:13px;color:var(--text-medium);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.typing-indicator{display:flex;align-items:center;gap:8px;padding:8px 20px;font-size:13px;color:var(--text-medium);font-style:italic}.typing-dots{display:flex;gap:4px}.typing-dots span{width:6px;height:6px;background:var(--text-medium);border-radius:50%;animation:typing 1.4s infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.7}30%{transform:translateY(-8px);opacity:1}}.typing-text{font-size:13px}.chat-window-close{background:transparent;border:none;font-size:28px;color:var(--text-medium);cursor:pointer;padding:4px 8px;line-height:1;border-radius:4px;transition:all .2s ease;flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.chat-window-close:hover{background:#f5f7fa;color:var(--text-dark)}.chat-window-close:active{background:#e0e7ef;transform:scale(.95)}.chat-page{background:#f5f7fa;height:100vh;display:flex;flex-direction:column;overflow:hidden}.chat-container{flex:1;display:flex;height:calc(100vh - 64px);overflow:hidden;min-height:0}.chat-sidebar{width:350px;flex-shrink:0;display:flex;flex-direction:column;background:var(--card-white);border-right:1px solid #E0E7EF}.chat-main{flex:1;display:flex;flex-direction:column;background:#f5f7fa;min-width:0}@media (max-width: 1024px){.chat-sidebar{width:300px}}@media (max-width: 768px){.chat-container{flex-direction:column}.chat-sidebar{width:100%;height:40%;border-right:none;border-bottom:1px solid #E0E7EF}.chat-main{height:60%}}.bancolombia-callback-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#e2e8f0;padding:20px}.bancolombia-callback-container{background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;max-width:480px;width:100%;padding:24px}.bancolombia-header{text-align:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.bancolombia-logo{width:64px;height:64px;margin:0 auto 12px;display:block;object-fit:contain;border-radius:8px}.bancolombia-logo-placeholder{width:64px;height:64px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;background:#1e293b;border-radius:8px;color:#fff;font-size:28px;font-weight:700}.bancolombia-header h1{font-size:18px;color:#1e293b;margin:0;font-weight:600}.bancolombia-loading{text-align:center;padding:48px 20px}.bancolombia-loading .loading-spinner-large{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#64748b;border-radius:50%;animation:callback-spin .8s linear infinite;margin:0 auto}.bancolombia-loading p{margin-top:14px;color:#64748b;font-size:14px;font-weight:500}.bancolombia-error{text-align:center;padding:32px 20px}.bancolombia-error .error-icon-large{font-size:40px;margin-bottom:14px}.bancolombia-error h2{color:#dc2626;font-size:16px;font-weight:600;margin:0 0 8px}.bancolombia-error p{color:#64748b;font-size:13px;margin:0 0 16px}.bancolombia-error .error-details{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:12px;margin-top:16px;text-align:left}.bancolombia-error .error-details p{margin:4px 0;color:#991b1b;font-size:12px}.bancolombia-status-card{text-align:center;padding:20px;border-radius:8px;margin-bottom:20px;border:1px solid #cbd5e1}.bancolombia-status-card.status-success{background:#f0fdf4;border-color:#86efac}.bancolombia-status-card.status-warning{background:#fffbeb;border-color:#fcd34d}.bancolombia-status-card.status-error{background:#fef2f2;border-color:#fecaca}.bancolombia-status-card.status-info{background:#f8fafc;border-color:#cbd5e1}.bancolombia-status-card .status-icon-large{font-size:40px;margin-bottom:10px;line-height:1}.bancolombia-status-card .status-title{font-size:15px;margin:0 0 10px;color:#1e293b;font-weight:600}.bancolombia-status-card .status-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.bancolombia-status-card .status-badge.status-success{background:#dcfce7;color:#16a34a}.bancolombia-status-card .status-badge.status-warning{background:#fef3c7;color:#b45309}.bancolombia-status-card .status-badge.status-error{background:#fee2e2;color:#dc2626}.bancolombia-status-card .status-badge.status-info{background:#f1f5f9;color:#64748b}.bancolombia-details h3{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 12px}.bancolombia-details .details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.bancolombia-details .detail-item{display:flex;flex-direction:column;padding:10px 12px;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0}.bancolombia-details .detail-item.full-width{grid-column:1 / -1}.bancolombia-details .detail-label{font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px;font-weight:600}.bancolombia-details .detail-value{font-size:13px;color:#1e293b;font-weight:500;word-break:break-word}.bancolombia-details .detail-value.amount{font-size:18px;color:#16a34a;font-weight:700}.bancolombia-actions{margin-top:20px;display:flex;justify-content:center}.bancolombia-actions .btn-cerrar-webview{background:#1e293b;color:#fff;border:none;border-radius:6px;padding:10px 24px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:180px}.bancolombia-actions .btn-cerrar-webview:hover{background:#334155}@media (max-width: 640px){.bancolombia-callback-container{padding:20px 16px}.bancolombia-header h1{font-size:16px}.bancolombia-details .details-grid{grid-template-columns:1fr}}.pse-callback-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#e2e8f0;padding:20px}.pse-callback-container{background:#fff;border-radius:8px;border:1px solid #cbd5e1;box-shadow:0 2px 8px #00000014;max-width:480px;width:100%;padding:24px}.pse-header{text-align:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.pse-logo{width:64px;height:64px;margin:0 auto 12px;display:block;object-fit:contain;border-radius:8px}.pse-logo-placeholder{width:64px;height:64px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;background:#1e293b;border-radius:8px;color:#fff;font-size:28px;font-weight:700}.pse-header h1{font-size:18px;color:#1e293b;margin:0;font-weight:600}.pse-loading{text-align:center;padding:48px 20px}.pse-loading .loading-spinner-large{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#64748b;border-radius:50%;animation:callback-spin .8s linear infinite;margin:0 auto}@keyframes callback-spin{to{transform:rotate(360deg)}}.pse-loading p{margin-top:14px;color:#64748b;font-size:14px;font-weight:500}.pse-error{text-align:center;padding:32px 20px}.pse-error .error-icon-large{font-size:40px;margin-bottom:14px}.pse-error h2{color:#dc2626;font-size:16px;font-weight:600;margin:0 0 8px}.pse-error p{color:#64748b;font-size:13px;margin:0 0 16px}.pse-error .error-details{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:12px;margin-top:16px;text-align:left}.pse-error .error-details p{margin:4px 0;color:#991b1b;font-size:12px}.pse-status-card{text-align:center;padding:20px;border-radius:8px;margin-bottom:20px;border:1px solid #cbd5e1}.pse-status-card.status-success{background:#f0fdf4;border-color:#86efac}.pse-status-card.status-warning{background:#fffbeb;border-color:#fcd34d}.pse-status-card.status-error{background:#fef2f2;border-color:#fecaca}.pse-status-card.status-info{background:#f8fafc;border-color:#cbd5e1}.pse-status-card .status-icon-large{font-size:40px;margin-bottom:10px;line-height:1}.pse-status-card .status-title{font-size:15px;margin:0 0 10px;color:#1e293b;font-weight:600}.pse-status-card .status-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.pse-status-card .status-badge.status-success{background:#dcfce7;color:#16a34a}.pse-status-card .status-badge.status-warning{background:#fef3c7;color:#b45309}.pse-status-card .status-badge.status-error{background:#fee2e2;color:#dc2626}.pse-status-card .status-badge.status-info{background:#f1f5f9;color:#64748b}.pse-details h3{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 12px}.pse-details .details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.pse-details .detail-item{display:flex;flex-direction:column;padding:10px 12px;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0}.pse-details .detail-item.full-width{grid-column:1 / -1}.pse-details .detail-label{font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px;font-weight:600}.pse-details .detail-value{font-size:13px;color:#1e293b;font-weight:500;word-break:break-word}.pse-details .detail-value.amount{font-size:18px;color:#16a34a;font-weight:700}.pse-actions{margin-top:20px;display:flex;justify-content:center}.pse-actions .btn-cerrar-webview{background:#1e293b;color:#fff;border:none;border-radius:6px;padding:10px 24px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:180px}.pse-actions .btn-cerrar-webview:hover{background:#334155}@media (max-width: 640px){.pse-callback-container{padding:20px 16px}.pse-header h1{font-size:16px}.pse-details .details-grid{grid-template-columns:1fr}}.app-container{display:flex;min-height:100vh;background:#f5f7fa}.main-content{flex:1;margin-left:220px;padding:0;background:#f8fafc;transition:margin-left .25s ease;min-height:100vh}.app-container .sidebar.collapsed~.main-content,.app-container .sidebar-pro.collapsed~.main-content{margin-left:64px}@media (max-width: 768px){.main-content{margin-left:0}.app-container .sidebar.collapsed~.main-content{margin-left:0}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-blue: #1565C0;--primary-blue-light: #1976D2;--primary-blue-dark: #0D47A1;--secondary-blue: #42A5F5;--accent-orange: #FF9800;--success-green: #4CAF50;--error-red: #F44336;--warning-yellow: #FFC107;--background-gray: #F5F7FA;--card-white: #FFFFFF;--text-dark: #263238;--text-medium: #546E7A;--text-light: #90A4AE;--border-color: #E0E0E0;--shadow-sm: 0 2px 8px rgba(21, 101, 192, .08);--shadow-md: 0 4px 16px rgba(21, 101, 192, .12);--shadow-lg: 0 8px 32px rgba(21, 101, 192, .16)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f8fafc;color:var(--text-dark);font-size:14px}#root{width:100%;min-height:100vh}
