@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}.admin-dashboard{background:#f9fafb;font-family:Inter,sans-serif;min-height:100vh}.auth-page-admin{align-items:center;background:linear-gradient(135deg,#1e3a8a,#1e40af);display:flex;justify-content:center;min-height:100vh;padding:2rem}.auth-container-admin{max-width:450px;width:100%}.auth-card-admin{background:#fff;border-radius:24px;box-shadow:0 20px 60px #0000004d;padding:3rem 2.5rem}.auth-logo{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:20px;color:#fff;display:flex;height:80px;justify-content:center;margin:0 auto 1.5rem;width:80px}.auth-card-admin h1{color:#1f2937;font-size:2rem;margin-bottom:.5rem;text-align:center}.auth-card-admin h2{color:#6b7280;font-size:1.3rem;font-weight:500;margin-bottom:2rem;text-align:center}.btn-auth-admin{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:12px;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:1.1rem;font-weight:600;margin-top:1rem;padding:1rem;transition:all .2s;width:100%}.btn-auth-admin:hover{box-shadow:0 8px 25px #3b82f666;transform:translateY(-2px)}.auth-switch{color:#6b7280;font-size:.9375rem;margin-top:1.5rem;text-align:center}.auth-switch span{color:#3b82f6;cursor:pointer;font-weight:600;text-decoration:underline}.error-message{background:#fee2e2;border-radius:10px;color:#dc2626;font-size:.9rem;gap:.5rem;margin-bottom:1.5rem;padding:.8rem 1rem}.error-message,.message-banner{align-items:center;display:flex}.message-banner{border-radius:12px;font-weight:500;gap:.75rem;margin-bottom:2rem;padding:1rem 1.5rem}.message-banner.success{background:#d1fae5;color:#059669}.message-banner.error{background:#fee2e2;color:#dc2626}.sidebar{background:#1f2937;color:#fff;height:100vh;left:0;overflow-y:auto;padding:2rem 0;position:fixed;top:0;width:260px;z-index:100}.sidebar-logo{align-items:center;display:flex;gap:.75rem;margin-bottom:2rem;padding:0 2rem}.sidebar-logo h1{font-size:1.5rem;font-weight:700}.sidebar-nav{display:flex;flex-direction:column}.nav-item{align-items:center;border-left:3px solid #0000;color:#9ca3af;cursor:pointer;display:flex;gap:.875rem;padding:.875rem 2rem;transition:all .2s}.nav-item:hover{background:#ffffff0d;color:#fff}.nav-item.active{background:#3b82f61a;border-left-color:#3b82f6;color:#3b82f6}.topbar{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;height:70px;justify-content:space-between;left:260px;padding:0 2rem;position:fixed;right:0;top:0;z-index:90}.topbar-left h2{color:#1f2937;font-size:1.5rem}.topbar-right{align-items:center;display:flex;gap:1.5rem;position:relative}.icon-btn{background:none;border:none;border-radius:8px;color:#6b7280;cursor:pointer;padding:.5rem;position:relative;transition:all .2s}.icon-btn:hover{background:#f3f4f6;color:#1f2937}.user-menu{cursor:pointer;gap:.75rem}.user-avatar,.user-menu{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:50%;color:#fff;font-weight:600;height:40px;justify-content:center;width:40px}.dropdown-panel{background:#fff;border-radius:16px;box-shadow:0 10px 40px #00000026;min-width:320px;position:absolute;right:0;top:calc(100% + 10px);z-index:1000}.notifications-panel{width:380px}.user-menu-panel{width:280px}.panel-header{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.panel-header h3{color:#1f2937;font-size:1.125rem;font-weight:600}.badge{border-radius:10px;font-size:.75rem;padding:.25rem .5rem}.badge,.badge-mini{background:#ef4444;color:#fff;font-weight:700}.badge-mini{border-radius:8px;font-size:.675rem;margin-left:auto;padding:.125rem .375rem}.notifications-list{max-height:400px;overflow-y:auto}.notification-item{align-items:flex-start;border-bottom:1px solid #f3f4f6;cursor:pointer;display:flex;gap:1rem;padding:1rem 1.5rem;position:relative;transition:background .2s}.notification-item:hover{background:#f9fafb}.notification-item.read{opacity:.6}.notification-icon{align-items:center;background:#eff6ff;border-radius:10px;color:#3b82f6;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.notification-content{flex:1 1}.notification-content p{color:#1f2937;font-size:.9375rem;line-height:1.4;margin-bottom:.25rem}.notification-time{color:#9ca3af;font-size:.8125rem}.notification-dot{background:#3b82f6;border-radius:50%;height:8px;position:absolute;right:1.5rem;top:1.25rem;width:8px}.panel-footer{border-top:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:1rem 1.5rem}.btn-text{background:none;border:none;color:#3b82f6;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem}.btn-text:hover{color:#2563eb}.user-info-large{align-items:center;display:flex;gap:1rem;padding:1.5rem}.user-avatar-large{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:50%;color:#fff;display:flex;font-size:1.5rem;font-weight:700;height:60px;justify-content:center;width:60px}.user-info-large h3{color:#1f2937;font-size:1rem;font-weight:600;margin-bottom:.25rem}.user-info-large p{color:#6b7280;font-size:.875rem}.menu-divider{background:#f3f4f6;height:1px;margin:.5rem 0}.menu-items{padding:.5rem}.menu-item-dropdown{align-items:center;border-radius:8px;color:#4b5563;cursor:pointer;display:flex;font-size:.9375rem;gap:.75rem;padding:.75rem 1rem;transition:all .2s}.menu-item-dropdown:hover{background:#f3f4f6;color:#1f2937}.menu-item-dropdown.logout{color:#ef4444}.menu-item-dropdown.logout:hover{background:#fef2f2}.main-content{margin-left:260px;margin-top:70px;min-height:calc(100vh - 70px);padding:2rem}.dashboard-content{max-width:1400px}.page-title{color:#1f2937;font-size:2rem;margin-bottom:2rem}.alert-banner{align-items:center;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:12px;box-shadow:0 4px 12px #fbbf244d;color:#fff;display:flex;gap:1rem;margin-bottom:2rem;padding:1rem 1.5rem}.alert-banner button{background:#fff;border:none;border-radius:8px;color:#f59e0b;cursor:pointer;font-weight:600;margin-left:auto;padding:.5rem 1rem}.error-banner{background:linear-gradient(135deg,#fee2e2,#fecaca);border-left:4px solid #dc2626;border-radius:12px;box-shadow:0 4px 12px #dc262633;gap:1rem;margin-bottom:2rem;padding:1rem 1.5rem}.error-banner,.error-close{align-items:center;color:#dc2626;display:flex}.error-close{background:none;border:none;cursor:pointer;margin-left:auto;padding:.25rem}.stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.stat-card{background:#fff;border-left:4px solid;border-radius:16px;box-shadow:0 1px 3px #0000001a;display:flex;gap:1.25rem;padding:1.5rem}.stat-card.revenue{border-left-color:#10b981}.stat-card.subscribers{border-left-color:#3b82f6}.stat-card.drivers{border-left-color:#f59e0b}.stat-card.routes{border-left-color:#8b5cf6}.stat-icon{align-items:center;border-radius:12px;color:#fff;display:flex;height:60px;justify-content:center;width:60px}.stat-card.revenue .stat-icon{background:#10b981}.stat-card.subscribers .stat-icon{background:#3b82f6}.stat-card.drivers .stat-icon{background:#f59e0b}.stat-card.routes .stat-icon{background:#8b5cf6}.stat-info{flex:1 1}.stat-label{color:#6b7280;font-size:.875rem;margin-bottom:.5rem}.stat-value{color:#1f2937;font-size:2rem;font-weight:700;line-height:1;margin-bottom:.5rem}.stat-change{color:#6b7280;font-size:.875rem}.stat-change.positive{color:#10b981}.validation-stats{background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.validation-stats h2{color:#1f2937;font-size:1.25rem;margin-bottom:1.5rem}.validation-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.validation-card{align-items:center;background:#f9fafb;border-radius:12px;display:flex;gap:1rem;padding:1.5rem}.validation-card.pending{border-left:4px solid #f59e0b}.validation-card.approved{border-left:4px solid #10b981}.validation-card.rejected{border-left:4px solid #ef4444}.validation-card.pending svg{color:#f59e0b}.validation-card.approved svg{color:#10b981}.validation-card.rejected svg{color:#ef4444}.validation-card h3{color:#1f2937;font-size:2rem;line-height:1}.validation-card p{color:#6b7280;font-size:.875rem}.charts-row{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.chart-card{background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000001a;padding:2rem}.chart-card h3{color:#1f2937;font-size:1.125rem;margin-bottom:1.5rem}.chart-placeholder{align-items:center;background:#f9fafb;border-radius:12px;color:#9ca3af;display:flex;flex-direction:column;height:250px;justify-content:center}.drivers-validation-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.driver-validation-card{background:#fff;border:2px solid #f59e0b;border-radius:16px;box-shadow:0 2px 8px #00000014;padding:1.5rem}.driver-header{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;gap:1rem;margin-bottom:1rem;padding-bottom:1rem}.driver-avatar{border:3px solid #3b82f6;border-radius:50%;height:60px;object-fit:cover;width:60px}.driver-avatar.no-photo{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;display:flex;font-size:1.5rem;font-weight:700;justify-content:center}.driver-info h3{color:#1f2937;font-size:1.125rem;margin-bottom:.25rem}.driver-info p{color:#6b7280;font-size:.875rem}.driver-vehicle{align-items:center;color:#4b5563;display:flex;font-size:.9rem;gap:.5rem;margin-bottom:.75rem}.plate-badge{background:#1f2937;border-radius:6px;color:#fff;font-family:monospace;font-size:.875rem;font-weight:700;margin-left:auto;padding:.25rem .75rem}.driver-date{align-items:center;color:#6b7280;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1rem}.driver-actions{display:flex;gap:.75rem}.btn-view{align-items:center;background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem;transition:all .2s}.btn-view:hover{background:#2563eb}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:2rem}.modal-header h2{color:#1f2937;font-size:1.5rem}.close-btn{background:none;border:none;color:#6b7280;cursor:pointer;padding:.5rem}.modal-body{padding:2rem}.info-section{margin-bottom:2rem}.info-section h3{color:#1f2937;font-size:1.125rem;margin-bottom:1rem}.info-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}.info-item label{color:#6b7280;display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.info-item p{color:#1f2937;font-size:1rem;font-weight:500}.photos-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}.photo-item label{color:#6b7280;display:block;font-size:.875rem;font-weight:500;margin-bottom:.75rem}.doc-image{border:2px solid #e5e7eb;border-radius:12px;width:100%}.doc-image.profile{aspect-ratio:1;border-radius:50%;object-fit:cover}.doc-image.document{aspect-ratio:16/10;object-fit:cover}.no-photo{align-items:center;aspect-ratio:1;background:#f3f4f6;color:#9ca3af;font-size:.875rem;justify-content:center;width:100%}.no-photo,.vehicle-card{border-radius:12px;display:flex}.vehicle-card{background:#f9fafb;gap:1.5rem;padding:1.5rem}.vehicle-icon{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:12px;color:#fff;display:flex;height:60px;justify-content:center;width:60px}.vehicle-details{flex:1 1}.vehicle-row{display:flex;justify-content:space-between;margin-bottom:.75rem}.vehicle-row:last-child{margin-bottom:0}.vehicle-label{color:#6b7280;font-size:.875rem}.vehicle-value{color:#1f2937;font-weight:600}.vehicle-value.plate{background:#1f2937;border-radius:6px;color:#fff;font-family:monospace;padding:.25rem .75rem}.status-badge{border-radius:20px;display:inline-block;font-size:.875rem;font-weight:600;padding:.5rem 1rem}.status-badge.status-pending{background:#fef3c7;color:#f59e0b}.status-badge.status-approved{background:#d1fae5;color:#10b981}.status-badge.status-suspended{background:#fef3c7;border:1px solid #fbbf24;color:#92400e}.status-badge.status-rejected{background:#fee2e2;color:#ef4444}.modal-actions{display:flex;gap:1rem;margin-top:2rem}.btn-approve,.btn-reject,.btn-secondary{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;flex:1 1;font-family:Inter,sans-serif;font-weight:600;gap:.5rem;justify-content:center;padding:1rem;transition:all .2s}.btn-approve{background:#10b981;color:#fff}.btn-approve:hover{background:#059669}.btn-reject{background:#ef4444;color:#fff}.btn-reject:hover{background:#dc2626}.btn-secondary{background:#f3f4f6;color:#4b5563}.btn-secondary:hover{background:#e5e7eb}.reject-form{margin-top:1.5rem}.reject-form label{color:#374151;display:block;font-weight:600;margin-bottom:.75rem}.reject-form textarea{border:2px solid #e5e7eb;border-radius:12px;font-family:Inter,sans-serif;font-size:1rem;padding:1rem;resize:vertical;width:100%}.reject-form textarea:focus{border-color:#3b82f6;outline:none}.client-modal .modal-content{max-width:600px}.client-profile{border-bottom:1px solid #e5e7eb;margin-bottom:2rem;padding-bottom:2rem;text-align:center}.client-avatar-large{border:4px solid #3b82f6;border-radius:50%;height:120px;margin:0 auto 1rem;object-fit:cover;width:120px}.client-avatar-large.no-photo{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;display:flex;font-size:3rem;font-weight:700;justify-content:center}.client-profile h3{color:#1f2937;font-size:1.5rem}.loading-spinner{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem}.spinner{animation:spin .8s linear infinite;border:4px solid #f3f4f6;border-radius:50%;border-top-color:#3b82f6;height:50px;margin-bottom:1rem;width:50px}@keyframes spin{to{transform:rotate(1turn)}}.loading-spinner p{color:#6b7280;font-size:1rem}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center}.empty-state h3{color:#6b7280;margin-top:1rem}.empty-state p{color:#9ca3af;margin-top:.5rem}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.page-actions{display:flex;gap:1rem}.btn-primary,.btn-secondary,.filter-select{align-items:center;border-radius:10px;cursor:pointer;display:flex;font-family:Inter,sans-serif;font-size:.9375rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.btn-primary{background:#3b82f6;border:none;color:#fff}.btn-primary:hover{background:#2563eb}.btn-secondary{background:#fff;border:1px solid #e5e7eb;color:#6b7280}.btn-secondary:hover{background:#f9fafb}.filter-select{background:#fff;border:1px solid #e5e7eb;color:#374151}.table-container{background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000001a;overflow-x:auto}.data-table{border-collapse:collapse;min-width:800px;width:100%}.data-table thead{background:#f9fafb}.data-table th{color:#6b7280;font-size:.8rem;font-weight:600;letter-spacing:.05em;padding:.75rem 1rem;text-align:left;text-transform:uppercase;white-space:nowrap}.data-table td{border-top:1px solid #f3f4f6;color:#1f2937;padding:.75rem 1rem}.data-table tbody tr:hover{background:#f9fafb}.driver-cell{align-items:center;display:flex;gap:.75rem}.table-avatar{border:2px solid #e5e7eb;border-radius:50%;height:40px;object-fit:cover;width:40px}.table-avatar.no-photo{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;display:flex;font-weight:700;justify-content:center}.plan-badge{background:#f59e0b;border-radius:12px;color:#fff;display:inline-block;font-size:.8125rem;font-weight:600;padding:.375rem .875rem}.status-badge.active{background:#d1fae5;color:#10b981}.status-badge.expired,.status-badge.inactive{background:#fee2e2;color:#ef4444}.status-badge.pending{background:#fef3c7;color:#f59e0b}.amount{color:#10b981;font-weight:600}.rating{color:#f59e0b}.route-name{font-weight:500}.empty-state{color:#9ca3af;padding:4rem 2rem;text-align:center}.empty-state svg{color:#10b981;margin-bottom:1.5rem}.empty-state h3{color:#4b5563;font-size:1.25rem;margin-bottom:.5rem}.empty-state p{font-size:.9375rem}.settings-sections{grid-gap:1.5rem;display:grid;gap:1.5rem;max-width:900px}.settings-card{background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.settings-header{align-items:center;border-bottom:1px solid #f3f4f6;color:#1f2937;display:flex;gap:1rem;padding:1.5rem}.settings-header h3{font-size:1.125rem;font-weight:600}.settings-content{padding:1.5rem}.form-group{margin-bottom:1.5rem}.form-group:last-child{margin-bottom:0}.form-group label{color:#374151;display:block;font-size:.9375rem;font-weight:600;margin-bottom:.5rem}.form-group input,.form-group select{border:2px solid #e5e7eb;border-radius:10px;font-family:Inter,sans-serif;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s;width:100%}.form-group input:focus,.form-group select:focus{border-color:#3b82f6;outline:none}.toggle-item{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:1rem 0}.toggle-item:last-child{border-bottom:none}.toggle-item h4{color:#1f2937;font-size:1rem;margin-bottom:.25rem}.toggle-item p{color:#6b7280;font-size:.875rem}.toggle{display:inline-block;height:26px;position:relative;width:50px}.toggle input{height:0;opacity:0;width:0}.toggle-slider{background-color:#cbd5e1;border-radius:34px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:20px;left:3px;position:absolute;transition:.3s;width:20px}.toggle input:checked+.toggle-slider{background-color:#3b82f6}.toggle input:checked+.toggle-slider:before{transform:translateX(24px)}@media (max-width:1024px){.sidebar{transform:translateX(-100%);transition:transform .3s}.sidebar.open{transform:translateX(0)}.main-content,.topbar{left:0;margin-left:0}.charts-row,.validation-grid{grid-template-columns:1fr}}@media (max-width:768px){.drivers-validation-grid,.info-grid,.photos-grid,.stats-grid{grid-template-columns:1fr}}
/*# sourceMappingURL=main.edbeca7e.css.map*/