body{background-color:#fff;margin:0}body,code{color:#1f2937}code{background-color:#f3f4f6;border-radius:3px;font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;padding:2px 4px}a{color:#2563eb;text-decoration:none}a:hover{color:#1d4ed8;text-decoration:underline}button{background-color:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px}button:hover{background-color:#1d4ed8}button:disabled{background-color:#9ca3af;cursor:not-allowed}input,select,textarea{background-color:#fff;border:1px solid #d1d5db;color:#1f2937}input:focus,select:focus,textarea:focus{border-color:#2563eb;outline:2px solid #2563eb;outline-offset:2px}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f7fafc;color:#2d3748;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6}.App{display:flex;flex-direction:column;min-height:100vh}.main-content{background:#f7fafc;flex:1 1;min-height:calc(100vh - 70px);padding-top:0}.loading-spinner{align-items:center;color:#667eea;display:flex;flex-direction:column;font-size:1.1rem;height:100vh;justify-content:center}.loading-spinner:before{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;content:"";height:50px;margin-bottom:20px;width:50px}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 15px #00000014;overflow:hidden}.card-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:20px 25px}.card-body{padding:25px}.card-footer{background:#f8fafc;border-top:1px solid #e2e8f0;padding:20px 25px}.btn{display:inline-flex;font-size:.95rem;font-weight:500;justify-content:center;line-height:1;padding:10px 20px;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2)}.btn-primary:hover{box-shadow:0 8px 25px #667eea4d;transform:translateY(-2px)}.btn-secondary{background:#e2e8f0;color:#4a5568}.btn-secondary:hover{background:#cbd5e0;transform:translateY(-1px)}.btn-success{background:#48bb78;color:#fff}.btn-success:hover{background:#38a169;transform:translateY(-1px)}.btn-danger{background:#f56565}.btn-danger:hover{background:#e53e3e}.btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.form-control{background:#fff;border:2px solid #e2e8f0;font-size:1rem;transition:all .3s ease;width:100%}.form-control:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-control.error{border-color:#f56565}.form-control.error:focus{box-shadow:0 0 0 3px #f565651a}.form-label{color:#2d3748;display:block;font-size:.95rem;font-weight:600;margin-bottom:8px}.form-error{color:#f56565;display:block;font-size:.85rem;margin-top:5px}.alert{border:1px solid;border-radius:8px;margin-bottom:20px;padding:12px 16px}.alert-success{background:#f0fff4;border-color:#9ae6b4;color:#22543d}.alert-error{background:#fed7d7;border-color:#feb2b2;color:#c53030}.alert-warning{background:#fffbeb;border-color:#fcd34d;color:#92400e}.alert-info{background:#ebf8ff;border-color:#90cdf4;color:#2c5282}.badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.badge-success{background:#c6f6d5;color:#22543d}.badge-warning{background:#fefcbf;color:#92400e}.badge-error{background:#fed7d7;color:#c53030}.badge-info{background:#bee3f8;color:#2c5282}.grid{grid-gap:20px;display:grid;gap:20px}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media (max-width:768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease-out}.slide-in-up{animation:slideInUp .6s ease-out}@media (max-width:768px){.main-content{padding:15px}.card-body{padding:20px}.btn{font-size:.9rem;padding:12px 18px}}@media (max-width:480px){.main-content{padding:10px}.card-body{padding:15px}.btn{justify-content:center;width:100%}}.dashboard{margin:0 auto;max-width:1400px;padding:30px}.dashboard-header{margin-bottom:40px;text-align:center}.dashboard-header h1{color:#2d3748;font-size:2.5rem;font-weight:700;margin-bottom:10px}.dashboard-subtitle{color:#718096;font-size:1.1rem;margin:0}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:40px}.stat-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;display:flex;gap:20px;padding:25px;transition:all .3s ease}.stat-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-5px)}.stat-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;display:flex;font-size:3rem;height:80px;justify-content:center;width:80px}.stat-content h3{color:#2d3748;font-size:2.5rem;font-weight:700;margin:0 0 5px}.stat-content p{color:#718096;font-size:1rem;font-weight:500;margin:0}.quick-actions{margin-bottom:40px}.quick-actions h2{color:#2d3748;font-size:1.8rem;font-weight:600;margin-bottom:25px}.actions-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.action-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;color:inherit;display:block;padding:25px;text-decoration:none;transition:all .3s ease}.action-card:hover{box-shadow:0 8px 30px #0000001f;text-decoration:none;transform:translateY(-5px)}.action-icon{display:block;font-size:3rem;margin-bottom:15px}.action-card h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin:0 0 10px}.action-card p{color:#718096;line-height:1.5;margin:0}.recent-activity{margin-bottom:40px}.recent-activity h2{color:#2d3748;font-size:1.8rem;font-weight:600;margin-bottom:25px}.activity-list{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden}.activity-item{border-bottom:1px solid #e2e8f0;gap:20px;padding:20px 25px;transition:background-color .2s ease}.activity-item:last-child{border-bottom:none}.activity-item:hover{background-color:#f7fafc}.activity-icon{background:#f7fafc;border-radius:12px;font-size:2rem;height:50px;width:50px}.activity-content h4{font-size:1.1rem}.activity-content p{font-size:.95rem}.activity-time{font-size:.85rem;font-weight:500}.system-status h2{color:#2d3748;font-size:1.8rem;font-weight:600;margin-bottom:25px}.status-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.status-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 15px #00000014;display:flex;gap:12px;padding:20px}.status-dot{animation:pulse 2s infinite;border-radius:50%;height:12px;width:12px}.status-dot,.status-item.online .status-dot{background:#48bb78}.status-item.offline .status-dot{background:#f56565}.status-item span:last-child{color:#2d3748;font-weight:500}.dashboard-loading{align-items:center;color:#718096;display:flex;flex-direction:column;height:400px;justify-content:center}.loading-spinner{border:4px solid #e2e8f0;border-top-color:#667eea;height:50px;margin-bottom:20px;width:50px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width:768px){.dashboard{padding:20px}.dashboard-header h1{font-size:2rem}.stats-grid{gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card{padding:20px}.stat-icon{font-size:2.5rem;height:60px;width:60px}.actions-grid{grid-template-columns:1fr}.status-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}@media (max-width:480px){.dashboard{padding:15px}.dashboard-header h1{font-size:1.8rem}.stats-grid{grid-template-columns:1fr}.activity-item,.stat-card{flex-direction:column;gap:15px;text-align:center}}.live-tracking{margin:0 auto;max-width:1600px;padding:30px}.tracking-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.tracking-controls{align-items:center;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:25px}.search-box{flex:1 1;min-width:300px}.filter-controls{display:flex;gap:15px}.filter-controls select{min-width:150px}.tracking-main{grid-gap:30px;display:grid;gap:30px;grid-template-columns:400px 1fr;height:calc(100vh - 250px);min-height:600px}.vehicle-list{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;overflow:hidden}.list-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px 25px}.list-header h3{color:#2d3748;font-weight:600;margin:0}.last-update{color:#718096;font-size:.85rem;font-weight:500}.vehicle-items{flex:1 1;overflow-y:auto;padding:10px}.vehicle-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;margin-bottom:15px;padding:20px;position:relative;transition:all .3s ease}.vehicle-item:hover{border-color:#667eea;box-shadow:0 8px 25px #0000001f;transform:translateY(-2px)}.vehicle-item.selected{background:#f7fafc;border-color:#667eea;box-shadow:0 4px 15px #667eea26}.vehicle-status{align-items:center;display:flex;gap:8px;margin-bottom:15px}.status-icon{font-size:1.2rem}.status-text{font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.vehicle-info h4{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 8px}.vehicle-info .plate{color:#667eea;font-size:.95rem;font-weight:600;margin:0 0 5px}.vehicle-info .driver{color:#718096;font-size:.9rem;margin:0}.vehicle-location{margin:15px 0}.vehicle-location .address{color:#2d3748;font-size:.95rem;font-weight:500;margin:0 0 8px}.vehicle-location .speed{color:#48bb78;font-size:.9rem;font-weight:600;margin:0 0 5px}.vehicle-location .update-time{color:#a0aec0;font-size:.8rem;margin:0}.vehicle-metrics{display:flex;gap:20px;margin-top:15px}.metric{align-items:center;display:flex;flex-direction:column;gap:5px}.metric-label{color:#718096;font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.metric-value{color:#2d3748;font-size:1rem;font-weight:600}.tracking-details{display:flex;flex-direction:column;gap:20px}.map-container{flex:1 1;min-height:300px}.map-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;width:100%}.map-overlay{background:#fffffff2;border-radius:12px;box-shadow:0 10px 30px #0003;padding:30px;text-align:center}.map-overlay h3{color:#2d3748;font-weight:700;margin:0 0 20px}.map-overlay p{color:#718096;font-size:.95rem;margin:0 0 10px}.map-controls{display:flex;gap:10px;justify-content:center;margin-top:20px}.map-controls .btn{font-size:.9rem;padding:8px 16px}.vehicle-details{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:25px}.details-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:15px}.details-header h3{color:#2d3748;font-weight:600;margin:0}.vehicle-type{background:#667eea;border-radius:20px;color:#fff;font-size:.85rem;font-weight:600;padding:6px 12px;text-transform:uppercase}.detail-section,.details-content{margin-bottom:25px}.detail-section h4{color:#2d3748;font-size:1rem;font-weight:600;margin:0 0 15px}.detail-item{padding:10px 0}.progress-bar{background:#e2e8f0;border-radius:4px;display:inline-block;height:8px;margin-right:10px;overflow:hidden;vertical-align:middle;width:60px}.progress-fill{background:#48bb78;border-radius:4px;height:100%;transition:width .3s ease}.progress-fill.fuel{background:#ed8936}.details-actions{display:flex;flex-wrap:wrap;gap:15px}.details-actions .btn{flex:1 1;min-width:120px}.no-selection{align-items:center;color:#718096;display:flex;flex-direction:column;height:100%;justify-content:center;text-align:center}.no-selection-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.no-selection h3{color:#2d3748;font-weight:600;margin:0 0 10px}.no-selection p{font-size:1rem;margin:0}.live-tracking-loading{align-items:center;color:#718096;display:flex;flex-direction:column;height:400px;justify-content:center}.live-tracking-loading .loading-spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:50px;margin-bottom:20px;width:50px}@media (max-width:1200px){.tracking-main{gap:20px;grid-template-columns:350px 1fr}}@media (max-width:992px){.tracking-main{grid-template-columns:1fr;grid-template-rows:auto 1fr}.vehicle-list{max-height:400px}}@media (max-width:768px){.live-tracking{padding:20px}.tracking-header{flex-direction:column;gap:20px;text-align:center}.header-content h1{font-size:2rem}.tracking-controls{align-items:stretch;flex-direction:column}.search-box{min-width:auto}.filter-controls{justify-content:center}.vehicle-item{padding:15px}.vehicle-metrics{gap:10px}.details-actions,.map-controls,.vehicle-metrics{flex-direction:column}.map-controls{align-items:center}}@media (max-width:480px){.live-tracking{padding:15px}.header-content h1{font-size:1.8rem}.vehicle-item{padding:12px}.vehicle-details{padding:20px}.map-overlay{margin:10px;padding:20px}}.fleet-management{margin:0 auto;max-width:1600px;padding:30px}.fleet-header{align-items:center;border-bottom:2px solid #e2e8f0;justify-content:space-between;padding-bottom:20px}.fleet-header,.fleet-tabs{display:flex;margin-bottom:30px}.fleet-tabs{background:#f7fafc;border:1px solid #e2e8f0;border-radius:12px;gap:5px;padding:8px}.fleet-content{min-height:600px}.fleet-stats{display:flex;gap:20px}.stat-number{color:#667eea;font-size:1.8rem;font-weight:700}.stat-label{font-size:.85rem}.drivers-grid,.maintenance-grid,.vehicles-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.vehicle-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:25px;transition:all .3s ease}.vehicle-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-3px)}.vehicle-header{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.vehicle-header h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin:0}.vehicle-details{margin-bottom:20px}.detail-row{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;padding:8px 0}.detail-row:last-child{border-bottom:none}.detail-row .label{color:#718096;font-size:.9rem;font-weight:500}.detail-row .value{color:#2d3748;font-size:.9rem;font-weight:600;text-align:right}.days-until{color:#ed8936;font-weight:500;margin-left:8px}.vehicle-actions{display:flex;gap:10px}.vehicle-actions .btn{flex:1 1;font-size:.9rem;padding:10px 15px}.driver-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:25px;transition:all .3s ease}.driver-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-3px)}.driver-header{border-bottom:1px solid #f7fafc;gap:15px;margin-bottom:20px;padding-bottom:15px}.driver-avatar,.driver-header{align-items:center;display:flex}.driver-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;font-size:1.5rem;font-weight:700;height:50px;justify-content:center;width:50px}.driver-info{flex:1 1}.driver-info h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin:0 0 5px}.driver-license{color:#667eea;font-size:.85rem;font-weight:600}.driver-rating{color:#f6ad55;font-size:1.1rem;font-weight:600}.driver-details{margin-bottom:20px}.violations{border-radius:12px;font-size:.8rem;font-weight:600;padding:4px 8px}.violations.clean{background:#c6f6d5;color:#22543d}.violations.warning{background:#fed7d7;color:#c53030}.driver-actions{display:flex;gap:10px}.driver-actions .btn{flex:1 1;font-size:.9rem;padding:10px 15px}.maintenance-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:25px;transition:all .3s ease}.maintenance-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-3px)}.maintenance-header{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.maintenance-header h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin:0}.priority-badge{border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.maintenance-details{margin-bottom:20px}.maintenance-actions{display:flex;gap:10px}.maintenance-actions .btn{flex:1 1;font-size:.9rem;padding:10px 15px}.fleet-loading{align-items:center;color:#718096;display:flex;flex-direction:column;height:400px;justify-content:center}.fleet-loading .loading-spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:50px;margin-bottom:20px;width:50px}@media (max-width:1200px){.drivers-grid,.maintenance-grid,.vehicles-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}}@media (max-width:768px){.fleet-management{padding:20px}.fleet-header{flex-direction:column;gap:20px;text-align:center}.header-content h1{font-size:2rem}.fleet-tabs{flex-direction:column;gap:5px}.tab-button{font-size:.9rem;padding:12px 15px}.section-header{flex-direction:column;gap:15px;text-align:center}.fleet-stats{justify-content:center}.drivers-grid,.maintenance-grid,.vehicles-grid{grid-template-columns:1fr}.driver-card,.maintenance-card,.vehicle-card{padding:20px}.driver-actions,.maintenance-actions,.vehicle-actions{flex-direction:column}}.add-driver-btn,.add-maintenance-btn,.add-vehicle-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 4px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.add-driver-btn:hover,.add-maintenance-btn:hover,.add-vehicle-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.add-driver-btn .btn-icon,.add-maintenance-btn .btn-icon,.add-vehicle-btn .btn-icon{font-size:18px;font-weight:700}.header-actions{gap:20px}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:24px;padding:24px 24px 0}.modal-header h3{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0}.modal-close{background:none;border:none;border-radius:4px;color:#718096;cursor:pointer;font-size:24px;padding:4px;transition:all .2s ease}.modal-close:hover{background:#f7fafc;color:#2d3748}.driver-form,.vehicle-form{padding:0 24px 24px}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:20px}.form-group{display:flex;flex-direction:column}.form-group label{color:#374151;font-size:14px;margin-bottom:6px}.form-group input,.form-group select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;padding:12px;transition:all .2s ease}.form-group input:focus,.form-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input::placeholder{color:#a0aec0}.form-actions{border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.cancel-btn{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#718096;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease}.cancel-btn:hover{border-color:#cbd5e0;color:#4a5568}.submit-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 4px #667eea4d;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease}.submit-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.delete-confirm-modal{max-width:500px}.delete-content{padding:0 24px 24px;text-align:center}.warning-icon{color:#f56565;font-size:48px;margin-bottom:16px}.delete-content h4{color:#2d3748;font-size:1.25rem;font-weight:600;margin:0 0 20px}.driver-info{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;margin:20px 0;padding:16px;text-align:left}.driver-info p{color:#4a5568;font-size:14px;margin:8px 0}.driver-info strong{color:#2d3748;font-weight:600}.warning-message{background:#fed7d7;border:1px solid #feb2b2;border-radius:8px;margin:20px 0;padding:12px}.warning-message p{color:#c53030;font-size:14px;font-weight:500;margin:0}.delete-btn{background:linear-gradient(135deg,#f56565,#e53e3e);border:none;border-radius:8px;box-shadow:0 2px 4px #f565654d;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease}.delete-btn:hover{box-shadow:0 4px 12px #f5656566;transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,#f56565,#e53e3e);border:none;border-radius:6px;box-shadow:0 2px 4px #f565654d;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:8px 16px;transition:all .2s ease}.btn-danger:hover{box-shadow:0 4px 8px #f5656566;transform:translateY(-1px)}@media (max-width:768px){.modal-content{margin:10px;max-height:calc(100vh - 20px)}.form-row{gap:16px;grid-template-columns:1fr}.form-actions{flex-direction:column}.cancel-btn,.delete-btn,.submit-btn{width:100%}.delete-content{padding:0 16px 16px}.driver-info{padding:12px}}@media (max-width:480px){.fleet-management{padding:15px}.header-content h1{font-size:1.8rem}.driver-card,.maintenance-card,.vehicle-card{padding:15px}.driver-header{flex-direction:column;gap:10px;text-align:center}.fleet-stats{flex-direction:column;gap:15px}}.maintenance-form{display:flex;flex-direction:column;gap:20px}.maintenance-form .form-group label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.maintenance-form .form-group input,.maintenance-form .form-group select,.maintenance-form .form-group textarea{border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-size:14px;padding:12px;transition:border-color .3s ease;width:100%}.maintenance-form .form-group input:focus,.maintenance-form .form-group select:focus,.maintenance-form .form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.maintenance-form .form-group textarea{min-height:80px;resize:vertical}.maintenance-form .form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}@media (max-width:768px){.maintenance-form .form-row{gap:15px;grid-template-columns:1fr}}.safety-monitoring{margin:0 auto;max-width:1600px;padding:30px}.safety-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.safety-overview{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.overview-card.critical{border-left:4px solid #e53e3e}.overview-card.warning{border-left:4px solid #d69e2e}.overview-card.info{border-left:4px solid #4299e1}.overview-card.success{border-left:4px solid #38a169}.safety-tabs{background:#f7fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:5px;margin-bottom:30px;padding:8px}.safety-content{min-height:600px}.overview-section{display:flex;flex-direction:column;gap:30px}.metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.metric-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:25px;text-align:center;transition:all .3s ease}.metric-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-3px)}.metric-card h3{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 20px}.metric-value{margin-bottom:15px}.metric-value .number{color:#667eea;font-size:2.5rem;font-weight:700}.metric-value .unit{color:#718096;font-size:1.2rem;margin-left:5px}.metric-card p{color:#718096;font-size:.9rem;margin:0 0 15px}.metric-trend{border-radius:20px;display:inline-block;font-size:.85rem;font-weight:600;padding:6px 12px}.metric-trend.positive{background:#c6f6d5;color:#22543d}.metric-trend.negative{background:#fed7d7;color:#c53030}.recent-activity{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:25px}.recent-activity h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin:0 0 20px}.activity-list{display:flex;flex-direction:column;gap:15px}.activity-item{align-items:center;background:#f7fafc;border-radius:12px;display:flex;gap:15px;padding:15px;transition:all .3s ease}.activity-item:hover{background:#edf2f7}.activity-icon{align-items:center;background:#fff;border-radius:50%;box-shadow:0 2px 10px #0000001a;display:flex;font-size:1.5rem;height:40px;justify-content:center;width:40px}.activity-content{flex:1 1}.activity-content h4{color:#2d3748;font-size:1rem;font-weight:600;margin:0 0 5px}.activity-content p{color:#718096;font-size:.9rem;margin:0 0 5px}.activity-time{color:#a0aec0;font-size:.8rem}.activity-severity{align-items:center;display:flex}.alerts-grid,.incidents-grid,.violations-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.alert-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:25px;transition:all .3s ease}.alert-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-3px)}.alert-card.critical{border-left:4px solid #e53e3e}.alert-card.high{border-left:4px solid #dd6b20}.alert-card.medium{border-left:4px solid #d69e2e}.alert-card.low{border-left:4px solid #38a169}.alert-header{border-bottom:1px solid #f7fafc;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.alert-header,.alert-type{align-items:center;display:flex}.alert-type{gap:10px}.type-icon{font-size:1.5rem}.type-text{color:#2d3748;font-size:1rem;font-weight:600;text-transform:capitalize}.severity-badge{border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.alert-content h3{color:#2d3748;font-size:1.2rem;font-weight:600;margin:0 0 20px}.alert-details{margin-bottom:20px}.speed-violation{color:#e53e3e!important}.alert-actions{display:flex;gap:10px}.alert-actions .btn{flex:1 1;font-size:.9rem;padding:10px 15px}.incident-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:25px;transition:all .3s ease}.incident-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-3px)}.incident-card.critical{border-left:4px solid #e53e3e}.incident-card.medium{border-left:4px solid #d69e2e}.incident-header{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.incident-header h3{color:#2d3748;font-size:1.2rem;font-weight:600;margin:0}.incident-details{margin-bottom:20px}.incident-actions{display:flex;gap:10px}.incident-actions .btn{flex:1 1;font-size:.9rem;padding:10px 15px}.violations-summary{display:flex;gap:20px}.summary-item{background:#f7fafc;border-radius:20px;color:#2d3748;font-size:.9rem;font-weight:600;padding:8px 16px}.violation-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:25px;transition:all .3s ease}.violation-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-3px)}.violation-header{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.violation-header h3{color:#2d3748;font-size:1.2rem;font-weight:600;margin:0}.violation-cost{background:#fed7d7;border-radius:20px;color:#c53030;font-size:.9rem;font-weight:600;padding:6px 12px}.violation-details{margin-bottom:20px}.points{background:#fed7d7;border-radius:12px;color:#c53030;font-size:.8rem;font-weight:600;padding:4px 8px}.violation-actions{display:flex;gap:10px}.violation-actions .btn{flex:1 1;font-size:.9rem;padding:10px 15px}.safety-loading{align-items:center;color:#718096;display:flex;flex-direction:column;height:400px;justify-content:center}.safety-loading .loading-spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:50px;margin-bottom:20px;width:50px}@media (max-width:1200px){.alerts-grid,.incidents-grid,.violations-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}}@media (max-width:768px){.safety-monitoring{padding:20px}.safety-header{flex-direction:column;gap:20px;text-align:center}.header-content h1{font-size:2rem}.safety-overview{grid-template-columns:1fr}.overview-card{padding:20px}.safety-tabs{flex-direction:column;gap:5px}.tab-button{font-size:.9rem;padding:12px 15px}.section-header{flex-direction:column;gap:15px;text-align:center}.filters{align-items:center;flex-direction:column}.alerts-grid,.incidents-grid,.metrics-grid,.violations-grid{grid-template-columns:1fr}.alert-card,.incident-card,.violation-card{padding:20px}.alert-actions,.incident-actions,.violation-actions,.violations-summary{flex-direction:column}.violations-summary{align-items:center}}@media (max-width:480px){.safety-monitoring{padding:15px}.header-content h1{font-size:1.8rem}.overview-card{flex-direction:column;padding:15px;text-align:center}.alert-card,.incident-card,.violation-card{padding:15px}.alert-header,.incident-header,.violation-header{flex-direction:column;gap:10px;text-align:center}}.user-management{margin:0 auto;max-width:1600px;padding:30px}.user-header{border-bottom:2px solid #e2e8f0;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.header-content h1{color:#2d3748;font-size:2.5rem;margin:0 0 10px}.header-content p{color:#718096;font-size:1.1rem}.header-actions{gap:15px}.user-overview{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.overview-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;display:flex;gap:20px;padding:25px;transition:all .3s ease}.overview-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-3px)}.overview-card.total{border-left:4px solid #667eea}.overview-card.active{border-left:4px solid #38a169}.overview-card.roles{border-left:4px solid #d69e2e}.overview-card.recent{border-left:4px solid #3182ce}.card-icon{align-items:center;background:#f7fafc;border-radius:50%;display:flex;font-size:2.5rem;height:60px;justify-content:center;width:60px}.card-content h3{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 10px}.card-number{color:#2d3748;display:block;font-size:2rem;font-weight:700;margin-bottom:5px}.card-content p{color:#718096;font-size:.9rem;margin:0}.user-tabs{background:#f7fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:5px;margin-bottom:30px;padding:8px}.tab-button{align-items:center;background:#0000;border:none;border-radius:8px;color:#718096;cursor:pointer;display:flex;flex:1 1;font-size:1rem;font-weight:600;gap:8px;justify-content:center;padding:15px 20px;transition:all .3s ease}.tab-button:hover{background:#667eea1a;color:#667eea}.tab-button.active{background:#667eea;box-shadow:0 4px 15px #667eea4d;color:#fff}.user-content{min-height:600px}.section-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:15px}.section-header h2{color:#2d3748;font-size:1.8rem;font-weight:600;margin:0}.filters{align-items:center;display:flex;gap:15px}.filters select{min-width:150px}.search-input{min-width:250px}.roles-grid,.users-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.user-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:25px;transition:all .3s ease}.user-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-3px)}.user-header{border-bottom:1px solid #f7fafc;gap:15px;margin-bottom:20px;padding-bottom:15px}.user-avatar,.user-header{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;font-weight:700;height:50px;justify-content:center;width:50px}.user-info{flex:1 1}.user-info h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin:0 0 5px}.username{color:#667eea;font-size:.9rem;font-weight:600}.user-status{align-items:center;display:flex}.status-badge{border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.user-details{margin-bottom:20px}.detail-item{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;padding:8px 0}.detail-item:last-child{border-bottom:none}.detail-item .label{color:#718096;font-size:.9rem;font-weight:500}.detail-item .value{color:#2d3748;font-size:.9rem;font-weight:600;text-align:right}.role-badge{border-radius:12px;color:#fff;font-size:.8rem;font-weight:600;padding:4px 8px;text-transform:uppercase}.user-permissions{margin-bottom:20px}.user-permissions h4{color:#2d3748;font-size:1rem;font-weight:600;margin:0 0 10px}.permission-tags{display:flex;flex-wrap:wrap;gap:8px}.permission-tag{background:#e2e8f0;border-radius:12px;color:#2d3748;font-size:.75rem;font-weight:600;padding:4px 8px;text-transform:uppercase}.user-actions{display:flex;flex-wrap:wrap;gap:10px}.user-actions .btn{flex:1 1;font-size:.9rem;min-width:120px;padding:10px 15px}.role-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:25px;transition:all .3s ease}.role-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-3px)}.role-header{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.role-header h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin:0}.role-name{background:#667eea;border-radius:12px;color:#fff;font-size:.8rem;font-weight:600;padding:4px 8px;text-transform:uppercase}.role-content{margin-bottom:20px}.role-description{color:#718096;font-size:.95rem;line-height:1.5;margin:0 0 15px}.role-stats{display:flex;gap:20px;margin-bottom:15px}.stat{align-items:center;display:flex;flex-direction:column;gap:5px}.stat-label{color:#718096;font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.stat-value{color:#2d3748;font-size:1.1rem;font-weight:600}.role-permissions h4{color:#2d3748;font-size:1rem;font-weight:600;margin:0 0 10px}.role-actions{display:flex;flex-wrap:wrap;gap:10px}.role-actions .btn{flex:1 1;font-size:.9rem;min-width:120px;padding:10px 15px}.permissions-overview{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:25px}.permission-categories{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.permission-category{background:#f7fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.permission-category h3{color:#2d3748;font-size:1.2rem;font-weight:600;margin:0 0 10px}.permission-category p{color:#718096;font-size:.9rem;line-height:1.5;margin:0 0 20px}.permission-items{display:flex;flex-direction:column;gap:12px}.permission-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;justify-content:space-between;padding:10px}.permission-name{color:#2d3748;font-size:.9rem;font-weight:500}.permission-status{font-size:.8rem;font-weight:600}.permission-status:contains("✅"){color:#38a169}.permission-status:contains("🔐"){color:#d69e2e}.user-loading{align-items:center;color:#718096;display:flex;flex-direction:column;height:400px;justify-content:center}.user-loading .loading-spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:50px;margin-bottom:20px;width:50px}@media (max-width:1200px){.roles-grid,.users-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.permission-categories{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media (max-width:768px){.user-management{padding:20px}.user-header{flex-direction:column;gap:20px;text-align:center}.header-content h1{font-size:2rem}.user-overview{grid-template-columns:1fr}.overview-card{padding:20px}.user-tabs{flex-direction:column;gap:5px}.tab-button{font-size:.9rem;padding:12px 15px}.section-header{flex-direction:column;gap:15px;text-align:center}.filters{align-items:center;flex-direction:column}.search-input{min-width:auto;width:100%}.roles-grid,.users-grid{grid-template-columns:1fr}.role-card,.user-card{padding:20px}.role-actions,.user-actions{flex-direction:column}.permission-categories{grid-template-columns:1fr}}@media (max-width:480px){.user-management{padding:15px}.header-content h1{font-size:1.8rem}.overview-card{flex-direction:column;padding:15px;text-align:center}.role-card,.user-card{padding:15px}.user-header{gap:10px}.permission-item,.user-header{flex-direction:column;text-align:center}.permission-item{gap:8px}}.settings{margin:0 auto;max-width:1200px;padding:24px}.settings-header{align-items:flex-start;border-bottom:2px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:32px;padding-bottom:24px}.header-content h1{color:var(--text-primary);font-size:32px;font-weight:700;margin:0 0 8px}.header-content p{color:var(--text-secondary);font-size:16px;margin:0}.header-actions{gap:12px}.btn,.header-actions{align-items:center;display:flex}.btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;text-decoration:none;transition:all .2s ease}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-1px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-secondary{background:var(--background-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.btn-secondary:hover{background:var(--background-tertiary)}.btn-warning{background:var(--warning-color);color:#fff}.btn-warning:hover{background:var(--warning-dark)}.settings-nav{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:12px;display:flex;gap:8px;margin-bottom:32px;padding:8px}.nav-button{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 16px;transition:all .2s ease}.nav-button:hover{background:var(--background-tertiary);color:var(--text-primary)}.nav-button.active{background:var(--primary-color);box-shadow:0 2px 8px #007bff4d;color:#fff}.settings-content{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:16px;overflow:hidden}.settings-section{padding:32px}.settings-section h2{align-items:center;color:var(--text-primary);display:flex;font-size:24px;font-weight:600;gap:12px;margin:0 0 24px}.settings-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.setting-item{display:flex;flex-direction:column;gap:8px}.setting-item.toggle{align-items:center;background:var(--background-primary);border:1px solid var(--border-color);border-radius:12px;flex-direction:row;justify-content:space-between;padding:16px}.setting-info{flex:1 1}.setting-item label{color:var(--text-primary);font-size:14px;font-weight:600}.setting-item p{color:var(--text-secondary);font-size:13px;line-height:1.4;margin:0}.setting-help{color:var(--text-tertiary);font-size:12px;font-style:italic}.form-control{background:var(--background-primary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:14px;padding:12px 16px;transition:border-color .2s ease}.form-control:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #007bff1a;outline:none}.form-control::placeholder{color:var(--text-tertiary)}.theme-option,.theme-options{display:flex;gap:8px}.theme-option{align-items:center;background:var(--background-primary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;flex:1 1;font-size:14px;justify-content:center;padding:12px 16px;transition:all .2s ease}.theme-option:hover{background:var(--background-secondary);border-color:var(--primary-color)}.theme-option.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.toggle-switch{display:inline-block;height:24px;position:relative;width:50px}.toggle-switch input{height:0;opacity:0;width:0}.slider{background-color:var(--border-color);border-radius:24px;bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.3s}.slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;width:18px}input:checked+.slider{background-color:var(--primary-color)}input:checked+.slider:before{transform:translateX(26px)}@media (max-width:768px){.settings{padding:16px}.settings-header{align-items:stretch;flex-direction:column;gap:16px}.header-actions{justify-content:stretch}.btn{flex:1 1;justify-content:center}.settings-nav{flex-wrap:wrap}.nav-button{min-width:120px}.settings-grid{gap:16px;grid-template-columns:1fr}.setting-item.toggle{align-items:stretch;gap:16px}.setting-item.toggle,.theme-options{flex-direction:column}}@media (max-width:480px){.settings-section{padding:20px}.nav-button{font-size:13px;min-width:100px;padding:10px 12px}.btn{font-size:13px;padding:10px 16px}}.auth-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-card{animation:slideUp .6s ease-out;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000001a;max-width:450px;padding:40px;width:100%}.auth-header{margin-bottom:30px;text-align:center}.auth-logo{align-items:center;display:flex;gap:15px;justify-content:center;margin-bottom:20px}.logo-icon{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:3rem}.auth-logo h1{color:#2d3748;font-size:2.5rem;font-weight:700;margin:0}.auth-subtitle{color:#718096;font-size:1.1rem;margin:0}.auth-form{margin-bottom:25px}.form-group{margin-bottom:20px}.form-group label{color:#2d3748;display:block;font-size:.95rem;font-weight:600;margin-bottom:8px}.form-group input{border:2px solid #e2e8f0;border-radius:10px;box-sizing:border-box;font-size:1rem;padding:15px;transition:all .3s ease;width:100%}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input.error{border-color:#f56565}.form-group input.error:focus{box-shadow:0 0 0 3px #f565651a}.error-text{color:#f56565;display:block;font-size:.85rem;margin-top:5px}.error-message{background:#fed7d7;border:1px solid #feb2b2;border-radius:8px;color:#c53030;font-size:.9rem;margin-bottom:20px;padding:12px 16px}.error-message.general{text-align:center}.form-options{flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:25px}.checkbox-label,.form-options{align-items:center;display:flex}.checkbox-label{color:#4a5568;cursor:pointer;font-size:.9rem;gap:8px}.checkbox-label input[type=checkbox]{display:none}.checkmark{border:2px solid #cbd5e0;border-radius:4px;height:18px;position:relative;transition:all .3s ease;width:18px}.checkbox-label input[type=checkbox]:checked+.checkmark{background:#667eea;border-color:#667eea}.checkbox-label input[type=checkbox]:checked+.checkmark:after{color:#fff;content:"✓";font-size:12px;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.forgot-password{color:#667eea;font-size:.9rem;font-weight:500;text-decoration:none;transition:color .3s ease}.forgot-password:hover{color:#5a67d8;text-decoration:underline}.auth-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:10px;justify-content:center;padding:15px;transition:all .3s ease;width:100%}.auth-button:hover:not(:disabled){box-shadow:0 8px 25px #667eea4d;transform:translateY(-2px)}.auth-button:disabled{cursor:not-allowed;opacity:.7;transform:none}.loading-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}.auth-footer{border-top:1px solid #e2e8f0;padding-top:20px;text-align:center}.auth-footer p{color:#718096;font-size:.95rem;margin:0}.auth-link{color:#667eea;font-weight:600;text-decoration:none;transition:color .3s ease}.auth-link:hover{color:#5a67d8;text-decoration:underline}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.email-confirmation{padding:20px 0;text-align:center}.confirmation-icon{animation:bounce 2s infinite;font-size:4rem;margin-bottom:20px}.confirmation-message{color:#2d3748;font-size:1.1rem;line-height:1.6;margin-bottom:15px}.confirmation-note{color:#718096;font-size:.9rem;font-style:italic;margin-bottom:30px}.confirmation-actions{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.auth-button.secondary{background:#e2e8f0;border:2px solid #e2e8f0;color:#4a5568}.auth-button.secondary:hover{background:#cbd5e0;border-color:#cbd5e0}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:480px){.auth-card{margin:10px;padding:30px 25px}.auth-logo h1{font-size:2rem}.logo-icon{font-size:2.5rem}.form-options{align-items:flex-start;flex-direction:column;gap:15px}.auth-button{font-size:1rem;padding:14px}}@media (prefers-color-scheme:dark){.auth-card{background:#1a202c;color:#fff}.auth-logo h1{color:#fff}.form-group label{color:#e2e8f0}.form-group input{background:#2d3748;border-color:#4a5568;color:#fff}.form-group input:focus{border-color:#667eea}.auth-footer{border-top-color:#4a5568}.auth-footer p{color:#a0aec0}}.navigation{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 10px #0000001a;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.nav-container{height:70px;justify-content:space-between;margin:0 auto;max-width:1400px;padding:0 20px}.nav-brand,.nav-brand a,.nav-container{align-items:center;display:flex}.nav-brand a{color:#fff;font-size:1.5rem;font-weight:700;text-decoration:none;transition:transform .2s ease}.nav-brand a:hover{transform:scale(1.05)}.brand-icon{font-size:2rem;margin-right:10px}.brand-text{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#fff,#f0f0f0);-webkit-background-clip:text;background-clip:text}.nav-menu{gap:20px}.nav-link,.nav-menu{align-items:center;display:flex}.nav-link{border-radius:8px;color:#ffffffe6;font-weight:500;gap:8px;padding:10px 15px;text-decoration:none;transition:all .3s ease}.nav-link:hover{background:#ffffff1a;color:#fff;transform:translateY(-2px)}.nav-link.active{background:#fff3;box-shadow:0 4px 15px #0003;color:#fff}.nav-icon{font-size:1.2rem}.nav-user{gap:15px}.nav-user,.user-info{align-items:center;display:flex}.user-info{color:#fff;gap:8px}.user-avatar{font-size:1.5rem}.user-name{font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:6px;padding:8px 16px;transition:all .3s ease}.logout-btn:hover{background:#fff3;border-color:#ffffff4d;transform:translateY(-1px)}.logout-icon{font-size:1rem}.nav-toggle{cursor:pointer;display:none;flex-direction:column;padding:5px}.hamburger{background:#fff;border-radius:2px;height:3px;margin:3px 0;transition:.3s;width:25px}.hamburger.active:first-child{transform:rotate(-45deg) translate(-5px,6px)}.hamburger.active:nth-child(2){opacity:0}.hamburger.active:nth-child(3){transform:rotate(45deg) translate(-5px,-6px)}@media (max-width:768px){.nav-container{padding:0 15px}.nav-menu{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);flex-direction:column;gap:30px;height:calc(100vh - 70px);justify-content:flex-start;left:-100%;overflow-y:auto;padding-top:40px;position:fixed;top:70px;transition:left .3s ease;width:100%}.nav-menu.active{left:0}.nav-link{border-radius:12px;font-size:1.1rem;justify-content:center;padding:15px 25px;width:80%}.nav-toggle{display:flex}.user-name{display:none}.logout-btn{font-size:.9rem;padding:6px 12px}}@media (max-width:480px){.nav-container{padding:0 10px}.brand-text{font-size:1.3rem}.brand-icon{font-size:1.8rem}.nav-link{font-size:1rem;width:90%}}
/*# sourceMappingURL=main.3a8774a0.css.map*/