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}.dashboard-container{color:#333;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.bg-white{background-color:#fff}.p-4{padding:1rem}.p-6{padding:1.5rem}.rounded-lg{border-radius:.5rem}.shadow-sm{box-shadow:0 1px 2px 0 #0000000d}.border-l-4{border-left-style:solid;border-left-width:4px}.border-blue-500{border-color:#3b82f6}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.text-gray-800{color:#1f2937}.text-gray-700{color:#374151}.text-gray-600{color:#4b5563}.text-gray-500{color:#6b7280}.text-white{color:#fff}.flex{display:flex}.grid{display:grid}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.col-span-3{grid-column:span 3/span 3}.col-span-9{grid-column:span 9/span 9}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-x-2>*+*{margin-left:.5rem}.space-y-2>*+*{margin-top:.5rem}.space-y-4>*+*{margin-top:1rem}.mb-1{margin-bottom:.25rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.justify-between{justify-content:space-between}.items-center{align-items:center}.flex-1{flex:1 1}.block{display:block}.w-full{width:100%}.border{border-style:solid;border-width:1px}.border-gray-300{border-color:#d1d5db}.border-gray-200{border-color:#e5e7eb}.border-b{border-bottom-style:solid;border-bottom-width:1px}button,input,select{outline:none}input:focus,select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f640}button{cursor:pointer;transition:all .2s}.bg-gray-50{background-color:#f9fafb}.bg-gray-100{background-color:#f3f4f6}.bg-gray-200{background-color:#e5e7eb}.bg-blue-600{background-color:#2563eb}.hover\:bg-gray-300:hover{background-color:#d1d5db}.rounded-md{border-radius:.375rem}.rounded-full{border-radius:9999px}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.min-w-full{min-width:100%}.text-left{text-align:left}.text-center{text-align:center}.overflow-x-auto{overflow-x:auto}.hover\:bg-gray-50:hover{background-color:#f9fafb}.h-96{height:24rem}.fixed{position:fixed}.bottom-6{bottom:1.5rem}.right-6{right:1.5rem}.max-w-sm{max-width:24rem}.notification{align-items:center;animation:slideIn .3s forwards;background-color:#fff;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;justify-content:space-between;opacity:0;padding:.75rem 1rem;transform:translateY(1rem)}.notification.Pendiente{border-left:4px solid #ef5ba1}.notification.Proceso{border-left:4px solid #ffea00}.notification.Listo{border-left:4px solid #00a651}.notification.error{border-left:4px solid #ef4444}@media (max-width:1024px){.grid-cols-12{grid-template-columns:1fr}.col-span-3,.col-span-9{grid-column:span 1/span 1}.grid-cols-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.grid-cols-4{grid-template-columns:1fr}.h-96{height:18rem}}.history-dashboard{width:100%}.history-loading{align-items:center;color:#666;display:flex;flex-direction:column;justify-content:center;padding:40px}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-top-color:#3498db;height:40px;margin-bottom:16px;width:40px}.history-empty{align-items:center;color:#999;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.history-empty svg{margin-bottom:16px;opacity:.5}.history-empty p{font-size:16px;margin:0}.history-filters{background:#f8f9fa;border-radius:12px;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px;padding:16px}.filter-btn{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#666;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 16px;transition:all .3s ease}.filter-btn:hover{border-color:#3498db;color:#3498db;transform:translateY(-2px)}.filter-btn.active{background:#3498db;border-color:#3498db;color:#fff}.filter-btn svg{flex-shrink:0}.history-timeline{padding-left:40px;position:relative}.history-timeline:before{background:linear-gradient(180deg,#3498db,#2ecc71);bottom:0;content:"";left:20px;position:absolute;top:0;width:2px}.timeline-item{margin-bottom:32px;position:relative}.timeline-marker{align-items:center;background:#3498db;border:4px solid #fff;border-radius:50%;box-shadow:0 2px 8px #00000026;display:flex;height:40px;justify-content:center;left:-28px;position:absolute;top:0;width:40px;z-index:1}.timeline-marker svg{stroke:#fff}.timeline-content{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;overflow:hidden;transition:all .3s ease}.timeline-content:hover{box-shadow:0 4px 16px #0000001f}.timeline-header{border-bottom:1px solid #f0f0f0;cursor:pointer;padding:16px 20px}.timeline-title{align-items:center;display:flex;gap:12px;margin-bottom:8px}.type-badge{align-items:center;background:#3498db;color:#fff;display:inline-flex}.status-badge,.type-badge{border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px}.status-badge.status-pendiente{background:#fee;color:#c33}.status-badge.status-proceso{background:#ffeaa7;color:#d63031}.status-badge.status-listo{background:#d4edda;color:#155724}.timeline-meta{align-items:center;color:#666;display:flex;font-size:13px;gap:16px}.timeline-date{font-weight:500}.timeline-user{color:#3498db}.expand-btn{background:none;border:none;justify-content:center;margin-left:auto;padding:4px}.timeline-comment{align-items:flex-start;background:#f8f9fa;color:#555;display:flex;font-size:14px;gap:8px;line-height:1.6;padding:12px 20px}.timeline-comment svg{stroke:#3498db;flex-shrink:0;margin-top:2px}.timeline-details{background:#fafbfc;border-top:1px solid #f0f0f0;padding:20px}.detail-section{margin-bottom:20px}.detail-section:last-child{margin-bottom:0}.detail-section h5{color:#333;font-size:16px;font-weight:600;margin:0 0 16px}.detail-section h6{color:#555;font-size:14px;font-weight:600;margin:0 0 8px}.detail-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-label{color:#888;font-size:12px;font-weight:600;text-transform:uppercase}.detail-value{color:#333;font-size:14px;font-weight:500}.detail-box{border-radius:8px;margin-bottom:12px;padding:16px}.detail-box.success{background:#d4edda;border-left:4px solid #2ecc71}.detail-box.warning{background:#fff3cd;border-left:4px solid #f39c12}.detail-box p{color:#333;line-height:1.6;margin:0}.detail-photos{margin-top:16px}.photos-grid-mini{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));margin-top:12px}.photo-mini{border-radius:6px;cursor:pointer;height:80px;object-fit:cover;transition:transform .2s ease;width:100%}.photo-mini:hover{transform:scale(1.05)}.completion-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:16px 0}.stat-box{align-items:center;background:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;padding:20px}.stat-number{color:#3498db;font-size:32px;font-weight:700}.stat-label{color:#666;font-size:13px;margin-top:4px}.coordinates-summary{background:#fff;border-radius:8px;margin-top:20px;padding:16px}.coordinates-list{display:flex;flex-direction:column;gap:12px;margin-top:12px}.coordinate-summary-item{align-items:flex-start;background:#f8f9fa;border-left:3px solid #3498db;border-radius:8px;display:flex;gap:12px;padding:12px}.coord-number{align-items:center;background:#3498db;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:13px;font-weight:700;height:32px;justify-content:center;width:32px}.coord-info{flex:1 1}.coord-info p{font-size:13px;line-height:1.5;margin:0 0 4px}.coord-comment{color:#333}.coord-work{color:#2ecc71}.coord-issues{color:#f39c12}.coord-photos{color:#3498db;flex-shrink:0;font-size:12px}.image-modal{align-items:center;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.image-modal-content{max-height:90vh;max-width:90vw;position:relative}.image-modal-content img{border-radius:8px;max-height:90vh;max-width:100%}.image-modal-close{align-items:center;background:#fff;border:none;border-radius:50%;cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;right:0;top:-40px;transition:all .3s ease;width:36px}.image-modal-close:hover{background:#e74c3c}.image-modal-close:hover svg{stroke:#fff}@media (max-width:768px){.history-timeline{padding-left:30px}.timeline-marker{height:32px;left:-23px;width:32px}.history-filters{flex-direction:column}.filter-btn{justify-content:center;width:100%}.completion-stats,.detail-grid{grid-template-columns:1fr}}.supervisor-dashboard *{box-sizing:border-box}:root{--sd-primary:#3498db;--sd-primary-hover:#2980b9;--sd-danger:#e74c3c;--sd-danger-hover:#c0392b;--sd-success:#2ecc71;--sd-success-hover:#27ae60;--sd-warning:#f39c12;--sd-warning-hover:#e67e22;--sd-accent1:#008f45;--sd-accent2:#0057a6;--sd-bg-light:#f8f9fa;--sd-bg-white:#fff;--sd-text-dark:#2c3e50;--sd-text-light:#7f8c8d;--sd-border:#e0e0e0;--sd-shadow:#0000001a;--sd-shadow-lg:#00000026}.supervisor-dashboard{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;padding:20px}.supervisor-dashboard .dashboard-header{align-items:center;background:#fff;background:var(--sd-bg-white);border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--sd-shadow);display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:25px;padding:25px 30px}.supervisor-dashboard .header-left .dashboard-title{align-items:center;color:#0057a6;color:var(--sd-accent2);display:flex;font-size:28px;font-weight:700;gap:12px;margin:0}.supervisor-dashboard .dashboard-title svg{color:#008f45;color:var(--sd-accent1)}.supervisor-dashboard .header-right{display:flex;flex-wrap:wrap;gap:12px}.supervisor-dashboard .view-toggle-btn{align-items:center;background:#f8f9fa;background:var(--sd-bg-light);border:2px solid #0000;border-radius:8px;color:#2c3e50;color:var(--sd-text-dark);cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s ease}.supervisor-dashboard .view-toggle-btn:hover{background:#e9ecef;transform:translateY(-2px)}.supervisor-dashboard .view-toggle-btn.active{background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--sd-primary) 0,var(--sd-primary-hover) 100%);border-color:#3498db;border-color:var(--sd-primary);box-shadow:0 4px 12px #3498db4d;color:#fff;color:var(--sd-bg-white)}.supervisor-dashboard .pdf-btn{align-items:center;background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--sd-danger) 0,var(--sd-danger-hover) 100%);border:none;border-radius:8px;color:#fff;color:var(--sd-bg-white);cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s ease}.supervisor-dashboard .pdf-btn:hover:not(:disabled){box-shadow:0 6px 20px #e74c3c66;transform:translateY(-2px)}.supervisor-dashboard .pdf-btn:disabled{cursor:not-allowed;opacity:.6}.supervisor-dashboard .dashboard-view{animation:sdFadeIn .5s ease}@keyframes sdFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.supervisor-dashboard .stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.supervisor-dashboard .stat-card{align-items:center;background:#fff;background:var(--sd-bg-white);border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--sd-shadow);display:flex;gap:20px;overflow:hidden;padding:25px;position:relative;transition:all .3s ease}.supervisor-dashboard .stat-card:before{background:#3498db;background:var(--sd-primary);content:"";height:100%;left:0;position:absolute;top:0;width:5px}.supervisor-dashboard .stat-card:hover{box-shadow:0 8px 25px #00000026;box-shadow:0 8px 25px var(--sd-shadow-lg);transform:translateY(-5px)}.supervisor-dashboard .stat-card.total:before{background:#3498db;background:var(--sd-primary)}.supervisor-dashboard .stat-card.pending:before{background:#e74c3c;background:var(--sd-danger)}.supervisor-dashboard .stat-card.process:before{background:#f39c12;background:var(--sd-warning)}.supervisor-dashboard .stat-card.completed:before{background:#2ecc71;background:var(--sd-success)}.supervisor-dashboard .stat-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;height:70px;justify-content:center;width:70px}.supervisor-dashboard .stat-card.total .stat-icon,.supervisor-dashboard .stat-icon{background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--sd-primary) 0,var(--sd-primary-hover) 100%)}.supervisor-dashboard .stat-card.pending .stat-icon{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--sd-danger) 0,var(--sd-danger-hover) 100%)}.supervisor-dashboard .stat-card.process .stat-icon{background:linear-gradient(135deg,#f39c12,#e67e22);background:linear-gradient(135deg,var(--sd-warning) 0,var(--sd-warning-hover) 100%)}.supervisor-dashboard .stat-card.completed .stat-icon{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--sd-success) 0,var(--sd-success-hover) 100%)}.supervisor-dashboard .stat-icon svg{color:#fff;color:var(--sd-bg-white)}.supervisor-dashboard .stat-content h3{color:#2c3e50;color:var(--sd-text-dark);font-size:36px;font-weight:700;margin:0 0 8px}.supervisor-dashboard .stat-content p{color:#7f8c8d;color:var(--sd-text-light);font-size:16px;font-weight:500;margin:0}.supervisor-dashboard .charts-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:30px}.supervisor-dashboard .chart-card{background:#fff;background:var(--sd-bg-white);border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--sd-shadow);padding:25px}.supervisor-dashboard .chart-title{align-items:center;color:#2c3e50;color:var(--sd-text-dark);display:flex;font-size:18px;font-weight:600;gap:10px;margin:0 0 20px}.supervisor-dashboard .chart-title:before{background:linear-gradient(135deg,#008f45,#0057a6);background:linear-gradient(135deg,var(--sd-accent1) 0,var(--sd-accent2) 100%);border-radius:2px;content:"";height:24px;width:4px}.supervisor-dashboard .summary-table{background:#fff;background:var(--sd-bg-white);border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--sd-shadow);padding:25px}.supervisor-dashboard .summary-title{color:#2c3e50;color:var(--sd-text-dark);font-size:20px;font-weight:600;margin:0 0 20px}.supervisor-dashboard .table-container{overflow-x:auto}.supervisor-dashboard .summary-table table{border-collapse:initial;border-spacing:0;width:100%}.supervisor-dashboard .summary-table thead{background:linear-gradient(135deg,#0057a6,#3498db);background:linear-gradient(135deg,var(--sd-accent2) 0,var(--sd-primary) 100%)}.supervisor-dashboard .summary-table thead th{color:#fff;color:var(--sd-bg-white);font-size:14px;font-weight:600;letter-spacing:.5px;padding:15px;text-align:left;text-transform:uppercase}.supervisor-dashboard .summary-table thead th:first-child{border-radius:8px 0 0 0}.supervisor-dashboard .summary-table thead th:last-child{border-radius:0 8px 0 0}.supervisor-dashboard .summary-table tbody tr{transition:background .2s ease}.supervisor-dashboard .summary-table tbody tr:hover{background:#f8f9fa;background:var(--sd-bg-light)}.supervisor-dashboard .summary-table tbody td{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--sd-border);color:#2c3e50;color:var(--sd-text-dark);padding:15px}.supervisor-dashboard .sector-name-cell{font-weight:600}.supervisor-dashboard .status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.supervisor-dashboard .status-badge:before{content:"●";font-size:10px}.supervisor-dashboard .status-badge.status-pendiente{background:#e74c3c1a;color:#e74c3c;color:var(--sd-danger)}.supervisor-dashboard .status-badge.status-proceso{background:#f39c121a;color:#f39c12;color:var(--sd-warning)}.supervisor-dashboard .status-badge.status-listo{background:#2ecc711a;color:#2ecc71;color:var(--sd-success)}.supervisor-dashboard .assignment-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:600;padding:4px 10px}.supervisor-dashboard .assignment-badge.accepted{background:#2ecc711a;color:#2ecc71;color:var(--sd-success)}.supervisor-dashboard .assignment-badge.pending{background:#e74c3c1a;color:#e74c3c;color:var(--sd-danger)}.supervisor-dashboard .action-btn{border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;padding:6px 16px;transition:all .2s ease}.supervisor-dashboard .action-btn.view{background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--sd-primary) 0,var(--sd-primary-hover) 100%);color:#fff;color:var(--sd-bg-white)}.supervisor-dashboard .action-btn:hover{box-shadow:0 4px 12px #00000026;box-shadow:0 4px 12px var(--sd-shadow-lg);transform:translateY(-2px)}.supervisor-dashboard .cards-view{animation:sdFadeIn .5s ease}.supervisor-dashboard .search-section{margin-bottom:25px}.supervisor-dashboard .search-box{max-width:500px;position:relative}.supervisor-dashboard .search-box svg{color:#7f8c8d;color:var(--sd-text-light);left:15px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.supervisor-dashboard .search-box input{background:#fff;background:var(--sd-bg-white);border:2px solid #e0e0e0;border:2px solid var(--sd-border);border-radius:10px;font-size:16px;padding:15px 15px 15px 45px;transition:all .3s ease;width:100%}.supervisor-dashboard .search-box input:focus{border-color:#3498db;border-color:var(--sd-primary);box-shadow:0 0 0 4px #3498db1a;outline:none}.supervisor-dashboard .sector-cards-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.supervisor-dashboard .sector-card-modern{background:#fff;background:var(--sd-bg-white);border-radius:16px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--sd-shadow);cursor:pointer;overflow:hidden;padding:25px;position:relative;transition:all .3s ease}.supervisor-dashboard .sector-card-modern:before{background:linear-gradient(90deg,#008f45,#0057a6);background:linear-gradient(90deg,var(--sd-accent1) 0,var(--sd-accent2) 100%);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.supervisor-dashboard .sector-card-modern:hover:before{transform:scaleX(1)}.supervisor-dashboard .sector-card-modern:hover{box-shadow:0 12px 30px #00000026;box-shadow:0 12px 30px var(--sd-shadow-lg);transform:translateY(-8px)}.supervisor-dashboard .card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.supervisor-dashboard .card-icon{align-items:center;border-radius:12px;box-shadow:0 4px 12px #0000001a;box-shadow:0 4px 12px var(--sd-shadow);display:flex;height:60px;justify-content:center;width:60px}.supervisor-dashboard .status-dot{animation:sdPulse 2s infinite;border-radius:50%;height:12px;width:12px}.supervisor-dashboard .status-dot.pendiente{background:#e74c3c;background:var(--sd-danger)}.supervisor-dashboard .status-dot.proceso{background:#f39c12;background:var(--sd-warning)}.supervisor-dashboard .status-dot.listo{background:#2ecc71;background:var(--sd-success)}@keyframes sdPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}.supervisor-dashboard .card-body{margin-bottom:20px}.supervisor-dashboard .card-title{color:#2c3e50;color:var(--sd-text-dark);font-size:20px;font-weight:700;margin:0 0 15px}.supervisor-dashboard .card-info{display:flex;flex-direction:column;gap:10px}.supervisor-dashboard .info-item{align-items:center;color:#7f8c8d;color:var(--sd-text-light);display:flex;font-size:14px;gap:10px}.supervisor-dashboard .info-item svg{color:#3498db;color:var(--sd-primary);flex-shrink:0}.supervisor-dashboard .location-link{align-items:center;background:#f8f9fa;background:var(--sd-bg-light);border-radius:8px;color:#3498db;color:var(--sd-primary);display:inline-flex;font-size:14px;font-weight:600;gap:8px;margin-top:10px;padding:8px 16px;text-decoration:none;transition:all .2s ease}.supervisor-dashboard .location-link:hover{background:#3498db;background:var(--sd-primary);color:#fff;color:var(--sd-bg-white);transform:translateX(3px)}.supervisor-dashboard .card-footer{border-top:1px solid #e0e0e0;border-top:1px solid var(--sd-border);padding-top:15px}.supervisor-dashboard .assignment-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px;transition:all .3s ease;width:100%}.supervisor-dashboard .assignment-btn.accept{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--sd-success) 0,var(--sd-success-hover) 100%);color:#fff;color:var(--sd-bg-white)}.supervisor-dashboard .assignment-btn.reject{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--sd-danger) 0,var(--sd-danger-hover) 100%);color:#fff;color:var(--sd-bg-white)}.supervisor-dashboard .assignment-btn:hover{box-shadow:0 6px 20px #00000026;box-shadow:0 6px 20px var(--sd-shadow-lg);transform:translateY(-2px)}.supervisor-dashboard .details-view{animation:sdFadeIn .5s ease}.supervisor-dashboard .back-button{align-items:center;background:#fff;background:var(--sd-bg-white);border:2px solid #e0e0e0;border:2px solid var(--sd-border);border-radius:8px;color:#2c3e50;color:var(--sd-text-dark);cursor:pointer;display:inline-flex;font-weight:600;gap:8px;margin-bottom:20px;padding:12px 20px;transition:all .3s ease}.supervisor-dashboard .back-button:hover{border-color:#3498db;border-color:var(--sd-primary);color:#3498db;color:var(--sd-primary);transform:translateX(-5px)}.supervisor-dashboard .details-container{background:#fff;background:var(--sd-bg-white);border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--sd-shadow);padding:30px}.supervisor-dashboard .details-header{align-items:center;border-bottom:2px solid #e0e0e0;border-bottom:2px solid var(--sd-border);display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:30px;padding-bottom:25px}.supervisor-dashboard .details-header-left{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.supervisor-dashboard .details-header-left h2{color:#2c3e50;color:var(--sd-text-dark);font-size:28px;margin:0}.supervisor-dashboard .status-badge-large{border-radius:25px;font-size:14px;font-weight:700;letter-spacing:1px;padding:8px 20px;text-transform:uppercase}.supervisor-dashboard .status-badge-large.pendiente{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--sd-danger) 0,var(--sd-danger-hover) 100%);color:#fff;color:var(--sd-bg-white)}.supervisor-dashboard .status-badge-large.proceso{background:linear-gradient(135deg,#f39c12,#e67e22);background:linear-gradient(135deg,var(--sd-warning) 0,var(--sd-warning-hover) 100%);color:#fff;color:var(--sd-bg-white)}.supervisor-dashboard .status-badge-large.listo{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--sd-success) 0,var(--sd-success-hover) 100%);color:#fff;color:var(--sd-bg-white)}.supervisor-dashboard .details-header-right{display:flex;flex-wrap:wrap;gap:12px}.supervisor-dashboard .action-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s ease}.supervisor-dashboard .accept-btn{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--sd-success) 0,var(--sd-success-hover) 100%);color:#fff;color:var(--sd-bg-white)}.supervisor-dashboard .reject-btn{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--sd-danger) 0,var(--sd-danger-hover) 100%);color:#fff;color:var(--sd-bg-white)}.supervisor-dashboard .edit-btn{background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--sd-primary) 0,var(--sd-primary-hover) 100%);color:#fff;color:var(--sd-bg-white)}.supervisor-dashboard .action-button:hover{box-shadow:0 6px 20px #00000026;box-shadow:0 6px 20px var(--sd-shadow-lg);transform:translateY(-2px)}.supervisor-dashboard .brigade-section{background:#f8f9fa;background:var(--sd-bg-light);border-radius:12px;margin-bottom:30px;padding:25px}.supervisor-dashboard .section-title{align-items:center;color:#2c3e50;color:var(--sd-text-dark);display:flex;font-size:20px;font-weight:600;gap:12px;margin:0 0 20px}.supervisor-dashboard .section-title svg{color:#0057a6;color:var(--sd-accent2)}.supervisor-dashboard .members-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.supervisor-dashboard .member-card-modern{align-items:center;background:#fff;background:var(--sd-bg-white);border-radius:12px;box-shadow:0 2px 8px #0000001a;box-shadow:0 2px 8px var(--sd-shadow);display:flex;gap:15px;padding:20px;transition:all .3s ease}.supervisor-dashboard .member-card-modern:hover{box-shadow:0 6px 20px #00000026;box-shadow:0 6px 20px var(--sd-shadow-lg);transform:translateY(-3px)}.supervisor-dashboard .member-avatar-large{align-items:center;background:linear-gradient(135deg,#008f45,#0057a6);background:linear-gradient(135deg,var(--sd-accent1) 0,var(--sd-accent2) 100%);border-radius:50%;color:#fff;color:var(--sd-bg-white);display:flex;flex-shrink:0;font-size:20px;font-weight:700;height:50px;justify-content:center;width:50px}.supervisor-dashboard .member-info h4{color:#2c3e50;color:var(--sd-text-dark);font-size:16px;margin:0 0 5px}.supervisor-dashboard .member-info p{color:#7f8c8d;color:var(--sd-text-light);font-size:13px;margin:0}.supervisor-dashboard .history-section{background:#f8f9fa;background:var(--sd-bg-light);border-radius:12px;padding:25px}.modal-overlay-modern{align-items:center;animation:sdFadeIn .3s ease;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.modal-content-modern{animation:sdSlideUp .3s ease;background:#fff;background:var(--sd-bg-white);border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:550px;overflow:hidden;width:90%}@keyframes sdSlideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.modal-header-modern{align-items:center;background:linear-gradient(135deg,#0057a6,#3498db);background:linear-gradient(135deg,var(--sd-accent2) 0,var(--sd-primary) 100%);color:#fff;color:var(--sd-bg-white);display:flex;justify-content:space-between;padding:25px 30px}.modal-header-modern h3{font-size:22px;font-weight:700;margin:0}.modal-close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.modal-close-btn svg{color:#fff;color:var(--sd-bg-white)}.modal-close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.modal-body-modern{max-height:calc(90vh - 180px);overflow-y:auto;padding:30px}.form-group-modern label{color:#2c3e50;color:var(--sd-text-dark);display:block;font-size:14px;font-weight:600;margin-bottom:10px}.form-input-modern,.form-select-modern,.form-textarea-modern{border:2px solid #e0e0e0;border:2px solid var(--sd-border);border-radius:8px;font-family:inherit;font-size:15px;padding:12px 15px;transition:all .3s ease;width:100%}.form-input-modern:focus,.form-select-modern:focus,.form-textarea-modern:focus{border-color:#3498db;border-color:var(--sd-primary);box-shadow:0 0 0 4px #3498db1a;outline:none}.form-textarea-modern{min-height:100px;resize:vertical}.modal-footer-modern{background:#f8f9fa;background:var(--sd-bg-light);display:flex;gap:12px;justify-content:flex-end;padding:20px 30px}.modal-btn{border:none;border-radius:8px;cursor:pointer;font-size:15px;font-weight:600;padding:12px 24px;transition:all .3s ease}.cancel-btn{background:#fff;background:var(--sd-bg-white);border:2px solid #e0e0e0;border:2px solid var(--sd-border);color:#2c3e50;color:var(--sd-text-dark)}.cancel-btn:hover{background:#f8f9fa;background:var(--sd-bg-light);border-color:#2c3e50;border-color:var(--sd-text-dark)}.confirm-btn{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--sd-success) 0,var(--sd-success-hover) 100%);color:#fff;color:var(--sd-bg-white)}.confirm-btn:hover{box-shadow:0 6px 20px #2ecc7166;transform:translateY(-2px)}@media (max-width:1024px){.supervisor-dashboard .charts-grid{grid-template-columns:1fr}.supervisor-dashboard .details-header{align-items:flex-start;flex-direction:column}.supervisor-dashboard .details-header-right{width:100%}.supervisor-dashboard .action-button{flex:1 1}}@media (max-width:768px){.supervisor-dashboard{padding:15px}.supervisor-dashboard .dashboard-header{padding:20px}.supervisor-dashboard .header-left .dashboard-title{font-size:22px}.supervisor-dashboard .members-grid,.supervisor-dashboard .sector-cards-grid,.supervisor-dashboard .stats-grid{grid-template-columns:1fr}.modal-content-modern{width:95%}.supervisor-dashboard .table-container{overflow-x:scroll}.supervisor-dashboard .summary-table table{min-width:600px}}@media (max-width:480px){.supervisor-dashboard .header-right{width:100%}.supervisor-dashboard .pdf-btn,.supervisor-dashboard .view-toggle-btn{flex:1 1;justify-content:center}.supervisor-dashboard .stat-card{flex-direction:column;text-align:center}.supervisor-dashboard .details-header-left{align-items:flex-start;flex-direction:column}.supervisor-dashboard .action-button{justify-content:center;width:100%}}.modal-body-modern::-webkit-scrollbar,.supervisor-dashboard .table-container::-webkit-scrollbar{height:8px;width:8px}.modal-body-modern::-webkit-scrollbar-track,.supervisor-dashboard .table-container::-webkit-scrollbar-track{background:#f8f9fa;background:var(--sd-bg-light)}.modal-body-modern::-webkit-scrollbar-thumb,.supervisor-dashboard .table-container::-webkit-scrollbar-thumb{background:#7f8c8d;background:var(--sd-text-light);border-radius:4px}.modal-body-modern::-webkit-scrollbar-thumb:hover,.supervisor-dashboard .table-container::-webkit-scrollbar-thumb:hover{background:#2c3e50;background:var(--sd-text-dark)}.progress-cell{display:flex;flex-direction:column;gap:4px}.progress-bar-mini{background-color:#e0e0e0;border-radius:4px;height:8px;overflow:hidden;width:100px}.progress-fill-mini{border-radius:4px;height:100%;transition:width .3s ease}.progress-text-mini{color:#666;font-size:11px}.card-progress{margin:12px 0}.progress-bar-card{background-color:#e0e0e0;border-radius:3px;height:6px;margin-bottom:6px;overflow:hidden;width:100%}.progress-fill-card{border-radius:3px;height:100%;transition:width .3s ease}.progress-label{color:#666;font-size:12px;font-weight:500}.coordinates-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;padding:24px}.progress-chart{background:#f8f9fa;border-radius:8px;margin:20px 0;padding:20px}.coordinates-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-top:20px}.coordinate-card{background:#fff;border:2px solid #e0e0e0;border-radius:10px;padding:16px;transition:all .3s ease}.coordinate-card.completed{background:linear-gradient(135deg,#fff,#f0fff4);border-color:#2ecc71}.coordinate-card.pending{background:linear-gradient(135deg,#fff,#fff5f5);border-color:#e74c3c}.coordinate-card.completed:hover{box-shadow:0 4px 12px #2ecc7133;transform:translateY(-2px)}.coordinate-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.coordinate-number{align-items:center;border-radius:50%;display:flex;font-size:16px;font-weight:700;height:36px;justify-content:center;width:36px}.coordinate-card.completed .coordinate-number{background:#2ecc71;color:#fff}.coordinate-card.pending .coordinate-number{background:#e74c3c;color:#fff}.coordinate-status{border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px}.coordinate-status.completed{background:#d4edda;color:#155724}.coordinate-status.pending{background:#f8d7da;color:#721c24}.coordinate-body{gap:8px}.coordinate-body,.coordinate-info{display:flex;flex-direction:column}.coordinate-info{gap:4px}.coordinate-label{color:#333;font-size:14px;font-weight:600}.coordinate-coords{color:#666;font-family:monospace;font-size:12px}.coordinate-meta{border-top:1px solid #e0e0e0;display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;padding-top:8px}.completion-date{color:#666;font-size:11px}.has-comment,.has-photos{align-items:center;color:#3498db;display:flex;font-size:11px;gap:4px}.coordinate-modal{max-width:600px}.coordinate-detail-section{background:#f8f9fa;border-radius:8px;margin-bottom:20px;padding:16px}.coordinate-detail-section h4{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.coordinate-detail-section p{color:#666;line-height:1.6;margin:8px 0}.photos-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));margin-top:12px}.photo-thumbnail{border-radius:8px;cursor:pointer;height:120px;object-fit:cover;transition:transform .2s ease;width:100%}.photo-thumbnail:hover{transform:scale(1.05)}.date-filters-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:20px;padding:20px}.filters-container{display:flex;flex-wrap:wrap;gap:12px}.filter-chip{align-items:center;background:#f8f9fa;border:2px solid #e0e0e0;border-radius:25px;color:#666;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .3s ease}.filter-chip:hover{background:#ebf5fb;border-color:#3498db;transform:translateY(-2px)}.filter-chip.active{background:#3498db;border-color:#3498db;color:#fff}.custom-date-inputs{align-items:flex-end;border-top:1px solid #e0e0e0;display:flex;gap:16px;margin-top:16px;padding-top:16px}.date-input-group{display:flex;flex-direction:column;gap:8px}.date-input-group label{color:#666;font-size:13px;font-weight:500}.date-input{border:2px solid #e0e0e0;border-radius:8px;font-size:14px;padding:10px 16px;transition:all .3s ease}.date-input:focus{border-color:#3498db;outline:none}.apply-filter-btn{background:#3498db;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:10px 24px;transition:all .3s ease}.apply-filter-btn:hover{background:#2980b9;transform:translateY(-2px)}:root{--bf-primary:#3498db;--bf-primary-hover:#2980b9;--bf-success:#2ecc71;--bf-success-hover:#27ae60;--bf-danger:#e74c3c;--bf-danger-hover:#c0392b;--bf-accent1:#008f45;--bf-accent2:#0057a6;--bf-bg-light:#f8f9fa;--bf-bg-white:#fff;--bf-text-dark:#2c3e50;--bf-text-light:#7f8c8d;--bf-border:#e0e0e0;--bf-shadow:#0000001a;--bf-shadow-lg:#00000026}.brigade-form-container{animation:bfSlideUp .4s ease;background:#fff;background:var(--bf-bg-white);border-radius:16px;box-shadow:0 4px 20px #0000001a;box-shadow:0 4px 20px var(--bf-shadow);margin:0 auto;max-width:600px;overflow:hidden}@keyframes bfSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.brigade-form-header{background:linear-gradient(135deg,#0057a6,#3498db);background:linear-gradient(135deg,var(--bf-accent2) 0,var(--bf-primary) 100%);overflow:hidden;padding:30px;position:relative;text-align:center}.brigade-form-header:before{animation:bfRotate 20s linear infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;position:absolute;right:-50%;top:-50%;width:200%}@keyframes bfRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.form-icon{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:50%;display:flex;height:70px;justify-content:center;margin:0 auto 15px;position:relative;width:70px;z-index:1}.form-icon svg,.form-title{color:#fff;color:var(--bf-bg-white)}.form-title{font-size:24px;font-weight:700;margin:0;position:relative;z-index:1}.brigade-form{padding:0}.form-content{padding:30px}.form-group{margin-bottom:25px;position:relative}.form-group.has-error .brigade-input,.form-group.has-error .brigade-textarea{background:#e74c3c0d;border-color:#e74c3c;border-color:var(--bf-danger)}.form-label{align-items:center;color:#2c3e50;color:var(--bf-text-dark);display:flex;font-size:15px;font-weight:600;gap:8px;margin-bottom:10px}.form-label svg{color:#3498db;color:var(--bf-primary);flex-shrink:0}.required{color:var(--bf-danger);font-weight:700;margin-left:4px}.optional{color:#7f8c8d;color:var(--bf-text-light);font-size:12px;font-style:italic;font-weight:400;margin-left:4px}.brigade-input,.brigade-textarea{background:#fff;background:var(--bf-bg-white);border:2px solid #e0e0e0;border:2px solid var(--bf-border);border-radius:10px;color:#2c3e50;color:var(--bf-text-dark);font-family:inherit;font-size:15px;padding:14px 18px;transition:all .3s ease;width:100%}.brigade-input:focus,.brigade-textarea:focus{background:#fff;background:var(--bf-bg-white);border-color:#3498db;border-color:var(--bf-primary);box-shadow:0 0 0 4px #3498db1a;outline:none}.brigade-input::placeholder,.brigade-textarea::placeholder{color:#7f8c8d;color:var(--bf-text-light);opacity:.7}.brigade-textarea{line-height:1.6;min-height:100px;resize:vertical}.input-error{animation:bfShake .5s;border-color:var(--bf-danger)}@keyframes bfShake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.error-message{align-items:center;color:#e74c3c;color:var(--bf-danger);display:flex;font-size:13px;font-weight:500;gap:6px;margin-top:8px}.error-message svg{flex-shrink:0}.input-hint{color:#7f8c8d;color:var(--bf-text-light);font-size:12px;margin-top:6px;text-align:right}.form-actions{background:#f8f9fa;background:var(--bf-bg-light);border-top:1px solid #e0e0e0;border-top:1px solid var(--bf-border);padding:25px 30px}.brigade-button{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;flex:1 1;font-size:15px;font-weight:600;gap:10px;justify-content:center;overflow:hidden;padding:14px 24px;position:relative;transition:all .3s ease}.brigade-button:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.brigade-button:hover:before{height:300px;width:300px}.brigade-button span,.brigade-button svg,.brigade-button:not(:empty){position:relative;z-index:1}.save-button{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--bf-success) 0,var(--bf-success-hover) 100%);box-shadow:0 4px 12px #2ecc714d;color:#fff;color:var(--bf-bg-white)}.save-button:hover{box-shadow:0 6px 20px #2ecc7166;transform:translateY(-2px)}.save-button:active{transform:translateY(0)}.cancel-button{background:#fff;background:var(--bf-bg-white);border:2px solid #e0e0e0;border:2px solid var(--bf-border);box-shadow:none;color:#2c3e50;color:var(--bf-text-dark)}.cancel-button:hover{background:#f8f9fa;background:var(--bf-bg-light);border-color:#2c3e50;border-color:var(--bf-text-dark);box-shadow:0 4px 12px #0000001a;box-shadow:0 4px 12px var(--bf-shadow);transform:translateY(-2px)}.cancel-button:active{transform:translateY(0)}.brigade-button:disabled{cursor:not-allowed;opacity:.6;transform:none!important}@media (max-width:768px){.brigade-form-container{border-radius:0;box-shadow:none}.brigade-form-header{padding:25px 20px}.form-icon{height:60px;width:60px}.form-icon svg{height:28px;width:28px}.form-title{font-size:20px}.form-content{padding:20px}.form-actions{flex-direction:column;padding:20px}.brigade-button{width:100%}}@media (max-width:480px){.brigade-form-header{padding:20px 15px}.form-actions,.form-content{padding:15px}.brigade-input,.brigade-textarea{font-size:14px;padding:12px 15px}.brigade-button{font-size:14px;padding:12px 20px}}@keyframes bfPulse{0%,to{opacity:1}50%{opacity:.5}}.brigade-input:focus+.input-hint,.brigade-textarea:focus+.input-hint{color:#3498db;color:var(--bf-primary);font-weight:500}.brigade-textarea::-webkit-scrollbar{width:8px}.brigade-textarea::-webkit-scrollbar-track{background:#f8f9fa;background:var(--bf-bg-light);border-radius:4px}.brigade-textarea::-webkit-scrollbar-thumb{background:#7f8c8d;background:var(--bf-text-light);border-radius:4px}.brigade-textarea::-webkit-scrollbar-thumb:hover{background:#2c3e50;background:var(--bf-text-dark)}:root{--bl-primary:#3498db;--bl-primary-hover:#2980b9;--bl-success:#2ecc71;--bl-success-hover:#27ae60;--bl-danger:#e74c3c;--bl-danger-hover:#c0392b;--bl-warning:#f39c12;--bl-accent1:#008f45;--bl-accent2:#0057a6;--bl-purple:#9b59b6;--bl-orange:#e67e22;--bl-bg-light:#f8f9fa;--bl-bg-white:#fff;--bl-text-dark:#2c3e50;--bl-text-light:#7f8c8d;--bl-border:#e0e0e0;--bl-shadow:#0000001a;--bl-shadow-lg:#00000026}.brigade-container-modern{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:25px}.brigade-header-modern{animation:blSlideDown .5s ease;background:#fff;background:var(--bl-bg-white);border-radius:16px;box-shadow:0 4px 20px #0000001a;box-shadow:0 4px 20px var(--bl-shadow);margin-bottom:25px;padding:30px}@keyframes blSlideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.header-content{flex-wrap:wrap;justify-content:space-between}.header-content,.header-title-section{align-items:center;display:flex;gap:20px}.title-icon{align-items:center;background:linear-gradient(135deg,#0057a6,#3498db);background:linear-gradient(135deg,var(--bl-accent2) 0,var(--bl-primary) 100%);border-radius:16px;box-shadow:0 6px 20px #3498db4d;display:flex;height:70px;justify-content:center;width:70px}.title-icon svg{color:#fff;color:var(--bl-bg-white)}.page-title{color:#2c3e50;color:var(--bl-text-dark);font-size:32px;font-weight:700;margin:0}.page-subtitle{color:#7f8c8d;color:var(--bl-text-light);font-size:15px;margin:5px 0 0}.header-actions{align-items:center;display:flex;gap:12px}.btn-primary{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--bl-success) 0,var(--bl-success-hover) 100%);border-radius:10px;box-shadow:0 4px 12px #2ecc714d;color:var(--bl-bg-white);font-size:15px;gap:10px;padding:14px 28px}.btn-primary:hover{box-shadow:0 6px 20px #2ecc7166;transform:translateY(-2px)}.btn-primary.btn-danger{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--bl-danger) 0,var(--bl-danger-hover) 100%);box-shadow:0 4px 12px #e74c3c4d}.btn-primary.btn-danger:hover{box-shadow:0 6px 20px #e74c3c66}.stats-section{grid-gap:20px;animation:blFadeIn .6s ease;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:25px}@keyframes blFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.stat-card{align-items:center;background:#fff;background:var(--bl-bg-white);border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--bl-shadow);display:flex;gap:20px;overflow:hidden;padding:25px;position:relative;transition:all .3s ease}.stat-card:before{background:#3498db;background:var(--bl-primary);content:"";height:100%;left:0;position:absolute;top:0;width:5px}.stat-card:hover{box-shadow:0 8px 25px #00000026;box-shadow:0 8px 25px var(--bl-shadow-lg);transform:translateY(-5px)}.stat-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;height:65px;justify-content:center;width:65px}.stat-icon.total{background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--bl-primary) 0,var(--bl-primary-hover) 100%)}.stat-icon.active{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--bl-success) 0,var(--bl-success-hover) 100%)}.stat-icon.inactive{background:linear-gradient(135deg,#f39c12,#e67e22);background:linear-gradient(135deg,var(--bl-warning) 0,var(--bl-orange) 100%)}.stat-icon.members{background:linear-gradient(135deg,#9b59b6,#8e44ad);background:linear-gradient(135deg,var(--bl-purple) 0,#8e44ad 100%)}.stat-icon svg{color:#fff;color:var(--bl-bg-white)}.stat-content h3{color:#2c3e50;color:var(--bl-text-dark);font-size:32px;font-weight:700;margin:0 0 5px}.stat-content p{color:#7f8c8d;color:var(--bl-text-light);font-size:14px;font-weight:500;margin:0}.brigade-form-wrapper{animation:blSlideDown .5s ease;margin-bottom:25px}.brigade-list-section{background:#fff;background:var(--bl-bg-white);border-radius:16px;box-shadow:0 4px 20px #0000001a;box-shadow:0 4px 20px var(--bl-shadow);padding:25px}.list-controls-modern{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:25px}.controls-left{display:flex;flex:1 1;flex-wrap:wrap;gap:15px}.search-box-modern{flex:1 1;min-width:250px;position:relative}.search-box-modern svg{color:#7f8c8d;color:var(--bl-text-light);left:15px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.search-box-modern input{border:2px solid #e0e0e0;border:2px solid var(--bl-border);border-radius:10px;font-size:15px;padding:12px 45px;transition:all .3s ease;width:100%}.search-box-modern input:focus{border-color:#3498db;border-color:var(--bl-primary);box-shadow:0 0 0 4px #3498db1a;outline:none}.clear-search-btn{align-items:center;background:#f8f9fa;background:var(--bl-bg-light);border:none;border-radius:50%;cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:all .2s ease;width:28px}.clear-search-btn:hover{background:#e74c3c;background:var(--bl-danger);color:#fff;color:var(--bl-bg-white)}.filter-group{display:flex;gap:10px}.filter-select{background:#fff;background:var(--bl-bg-white);border:2px solid #e0e0e0;border:2px solid var(--bl-border);border-radius:10px;cursor:pointer;font-size:14px;padding:12px 15px;transition:all .3s ease}.filter-select:focus{border-color:#3498db;border-color:var(--bl-primary);box-shadow:0 0 0 4px #3498db1a;outline:none}.controls-right{align-items:center;display:flex;gap:15px}.view-toggles{background:#f8f9fa;background:var(--bl-bg-light);border-radius:10px;gap:5px;padding:5px}.view-btn{background:#0000;border:none;border-radius:8px;color:#7f8c8d;color:var(--bl-text-light);cursor:pointer;padding:10px;transition:all .2s ease}.view-btn:hover{background:#fff;background:var(--bl-bg-white)}.view-btn.active{background:#3498db;background:var(--bl-primary);color:#fff;color:var(--bl-bg-white)}.export-buttons-modern{display:flex;gap:10px}.btn-export{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 16px;transition:all .3s ease}.btn-export.excel{background:linear-gradient(135deg,#217346,#1d6f42);box-shadow:0 2px 8px #2173464d;color:#fff;color:var(--bl-bg-white)}.btn-export.excel:hover{box-shadow:0 4px 12px #21734666;transform:translateY(-2px)}.btn-export.csv{background:linear-gradient(135deg,#e67e22,#d35400);background:linear-gradient(135deg,var(--bl-orange) 0,#d35400 100%);box-shadow:0 2px 8px #e67e224d;color:#fff;color:var(--bl-bg-white)}.btn-export.csv:hover{box-shadow:0 4px 12px #e67e2266;transform:translateY(-2px)}.brigades-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:25px}.brigades-list{display:flex;flex-direction:column;gap:15px;margin-bottom:25px}.brigade-card-modern{background:#fff;background:var(--bl-bg-white);border-left:4px solid #0000;border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--bl-shadow);padding:20px;transition:all .3s ease}.brigade-card-modern:hover{border-left-color:#3498db;border-left-color:var(--bl-primary);box-shadow:0 8px 25px #00000026;box-shadow:0 8px 25px var(--bl-shadow-lg);transform:translateY(-5px)}.card-header-modern{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--bl-border);display:flex;gap:15px;margin-bottom:15px;padding-bottom:15px}.brigade-avatar{align-items:center;background:linear-gradient(135deg,#008f45,#0057a6);background:linear-gradient(135deg,var(--bl-accent1) 0,var(--bl-accent2) 100%);border-radius:12px;box-shadow:0 4px 12px #0057a64d;color:#fff;color:var(--bl-bg-white);display:flex;flex-shrink:0;font-size:24px;font-weight:700;height:60px;justify-content:center;width:60px}.brigade-info{flex:1 1;min-width:0}.brigade-name-modern{color:#2c3e50;color:var(--bl-text-dark);font-size:20px;font-weight:700;margin:0 0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brigade-description-modern{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#7f8c8d;color:var(--bl-text-light);display:-webkit-box;font-size:14px;line-height:1.5;margin:0;overflow:hidden}.card-body-modern{margin-bottom:15px}.members-section{background:#f8f9fa;background:var(--bl-bg-light);border-radius:8px;padding:12px}.members-header{align-items:center;display:flex;gap:10px;justify-content:space-between}.members-header>div:first-child{align-items:center;display:flex;gap:8px}.members-header svg{color:#3498db;color:var(--bl-primary)}.members-count-badge{color:#2c3e50;color:var(--bl-text-dark);font-size:14px;font-weight:600}.expand-btn{align-items:center;background:#fff;background:var(--bl-bg-white);border:1px solid #e0e0e0;border:1px solid var(--bl-border);border-radius:6px;color:#3498db;color:var(--bl-primary);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px;transition:all .2s ease}.expand-btn:hover{background:#3498db;background:var(--bl-primary);border-color:#3498db;border-color:var(--bl-primary);color:#fff;color:var(--bl-bg-white)}.members-list-expanded{grid-gap:10px;animation:blSlideDown .3s ease;border-top:1px solid #e0e0e0;border-top:1px solid var(--bl-border);display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin-top:12px;padding-top:12px}.member-item{align-items:center;background:#fff;background:var(--bl-bg-white);border-radius:6px;display:flex;font-size:13px;gap:10px;padding:8px}.member-avatar-small{align-items:center;background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--bl-success) 0,var(--bl-success-hover) 100%);border-radius:50%;color:#fff;color:var(--bl-bg-white);display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:32px;justify-content:center;width:32px}.card-actions-modern{border-top:1px solid #e0e0e0;border-top:1px solid var(--bl-border);display:flex;gap:10px;padding-top:15px}.action-btn-modern{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;justify-content:center;padding:10px;transition:all .3s ease}.action-btn-modern.edit{background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--bl-primary) 0,var(--bl-primary-hover) 100%);color:#fff;color:var(--bl-bg-white)}.action-btn-modern.pdf{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--bl-danger) 0,var(--bl-danger-hover) 100%);color:#fff;color:var(--bl-bg-white)}.action-btn-modern.delete{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;color:var(--bl-bg-white)}.action-btn-modern:hover{box-shadow:0 4px 12px #00000026;box-shadow:0 4px 12px var(--bl-shadow-lg);transform:translateY(-2px)}.empty-state-modern,.error-state,.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.spinner-modern{animation:blSpin 1s linear infinite;border:4px solid var(--bl-bg-light);border-top-color:var(--bl-primary)}@keyframes blSpin{to{transform:rotate(1turn)}}.error-state svg{color:#e74c3c;color:var(--bl-danger);margin-bottom:20px}.error-state h3{color:#2c3e50;color:var(--bl-text-dark);font-size:24px;margin:0 0 10px}.error-state p{color:#7f8c8d;color:var(--bl-text-light);margin:0 0 20px}.btn-retry{align-items:center;background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--bl-primary) 0,var(--bl-primary-hover) 100%);border:none;border-radius:8px;color:#fff;color:var(--bl-bg-white);cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.btn-retry:hover{box-shadow:0 4px 12px #3498db66;transform:translateY(-2px)}.empty-state-modern svg{color:#ccc;margin-bottom:20px}.empty-state-modern h3{color:#2c3e50;color:var(--bl-text-dark);font-size:24px;margin:0 0 10px}.empty-state-modern p{color:#7f8c8d;color:var(--bl-text-light);margin:0 0 20px;max-width:500px}.btn-clear-filters{background:#f8f9fa;background:var(--bl-bg-light);border:2px solid #e0e0e0;border:2px solid var(--bl-border);border-radius:8px;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease}.btn-clear-filters:hover{background:#3498db;background:var(--bl-primary);border-color:#3498db;border-color:var(--bl-primary);color:#fff;color:var(--bl-bg-white)}.pagination-modern{align-items:center;display:flex;gap:8px;justify-content:center;margin-top:25px}.page-numbers-modern{align-items:center;display:flex;gap:5px}.page-btn-modern{align-items:center;background:#f8f9fa;background:var(--bl-bg-light);border:2px solid #e0e0e0;border:2px solid var(--bl-border);border-radius:8px;cursor:pointer;display:flex;font-weight:600;height:40px;justify-content:center;min-width:40px;transition:all .2s ease}.page-btn-modern:hover:not(:disabled){transform:translateY(-2px)}.page-btn-modern.active,.page-btn-modern:hover:not(:disabled){background:#3498db;background:var(--bl-primary);border-color:#3498db;border-color:var(--bl-primary);color:#fff;color:var(--bl-bg-white)}.page-btn-modern:disabled{cursor:not-allowed;opacity:.4}.ellipsis-modern{color:#7f8c8d;color:var(--bl-text-light);padding:0 5px}.pagination-info-modern{color:#7f8c8d;color:var(--bl-text-light);font-size:14px;margin-top:15px;text-align:center}@media (max-width:1024px){.brigades-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.brigade-container-modern{padding:15px}.brigade-header-modern{padding:20px}.header-content{align-items:flex-start;flex-direction:column}.header-title-section{width:100%}.title-icon{height:60px;width:60px}.page-title{font-size:24px}.stats-section{grid-template-columns:1fr}.list-controls-modern{align-items:stretch;flex-direction:column}.controls-left,.controls-right{flex-direction:column;width:100%}.search-box-modern{min-width:100%}.filter-group{flex-direction:column}.export-buttons-modern,.view-toggles{width:100%}.btn-export,.view-btn{flex:1 1}.brigades-grid,.members-list-expanded{grid-template-columns:1fr}.card-actions-modern{flex-wrap:wrap}}@media (max-width:480px){.brigade-header-modern{padding:15px}.header-title-section{align-items:flex-start;flex-direction:column}.title-icon{height:50px;width:50px}.page-title{font-size:20px}.card-header-modern,.stat-card{flex-direction:column;text-align:center}.brigade-avatar{margin:0 auto}.pagination-modern{flex-wrap:wrap}}@keyframes blPulse{0%,to{opacity:1}50%{opacity:.5}}.loading-state p{animation:blPulse 1.5s ease-in-out infinite}.brigade-list-section::-webkit-scrollbar{width:8px}.brigade-list-section::-webkit-scrollbar-track{background:#f8f9fa;background:var(--bl-bg-light)}.brigade-list-section::-webkit-scrollbar-thumb{background:#7f8c8d;background:var(--bl-text-light);border-radius:4px}.brigade-list-section::-webkit-scrollbar-thumb:hover{background:#2c3e50;background:var(--bl-text-dark)}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74d3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-container-width:fit-content;--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset),env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset),env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset),env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset),env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-padding:14px;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-toast-shadow:0px 4px 12px #0000001a;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:0.2}.Toastify__toast-container{box-sizing:border-box;color:#fff;display:flex;flex-direction:column;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:fit-content;width:var(--toastify-container-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--top-center{align-items:center;left:50%;top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top);transform:translateX(-50%)}.Toastify__toast-container--top-right{align-items:end;right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--bottom-left{bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{align-items:center;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{align-items:end;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right)}.Toastify__toast{--y:0;align-items:center;border-radius:6px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;box-shadow:var(--toastify-toast-shadow);box-sizing:border-box;display:flex;flex:1 1 auto;font-family:sans-serif;font-family:var(--toastify-font-family);margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);padding:14px;padding:var(--toastify-toast-padding);position:relative;touch-action:none;width:320px;width:var(--toastify-toast-width);word-break:break-word;z-index:0}@media only screen and (max-width:480px){.Toastify__toast-container{left:env(safe-area-inset-left);margin:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:env(safe-area-inset-right)}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:320px;width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s;width:100%}.Toastify__toast--stacked[data-collapsed] .Toastify__close-button,.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{bottom:100%;content:"";height:calc(var(--g)*1px);left:0;position:absolute;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{bottom:0;content:"";height:100%;left:0;position:absolute;right:0;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{display:flex;flex-shrink:0;margin-inline-end:10px;width:22px}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74d3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74d3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;position:absolute;right:6px;top:6px;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:auto}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:100%;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:1}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{border-bottom-left-radius:0;left:auto;right:0;transform-origin:right}.Toastify__progress-bar--wrp{border-bottom-left-radius:6px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:6px;border-bottom-right-radius:var(--toastify-toast-bd-radius);bottom:0;height:5px;left:0;overflow:hidden;position:absolute;width:100%}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{height:100%;opacity:.2;opacity:var(--toastify-color-progress-bgo);width:100%}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{opacity:1;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg)}to{opacity:0;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(-110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-duration:.3s;animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-duration:.3s;animation-name:Toastify__slideOutRight;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-duration:.3s;animation-name:Toastify__slideOutUp;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-duration:.3s;animation-name:Toastify__slideOutDown;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}:root{--rf-primary:#3498db;--rf-primary-hover:#2980b9;--rf-success:#2ecc71;--rf-success-hover:#27ae60;--rf-danger:#e74c3c;--rf-danger-hover:#c0392b;--rf-warning:#f39c12;--rf-accent1:#008f45;--rf-accent2:#0057a6;--rf-purple:#9b59b6;--rf-bg-light:#f8f9fa;--rf-bg-white:#fff;--rf-text-dark:#2c3e50;--rf-text-light:#7f8c8d;--rf-border:#e0e0e0;--rf-shadow:#0000001a;--rf-shadow-lg:#00000026}.role-form-container-modern{animation:rfSlideUp .4s ease;background:#fff;background:var(--rf-bg-white);border-radius:16px;box-shadow:0 4px 20px #0000001a;box-shadow:0 4px 20px var(--rf-shadow);margin:0 auto;max-width:800px;overflow:hidden}@keyframes rfSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.form-header-role{background:linear-gradient(135deg,#9b59b6,#8e44ad);background:linear-gradient(135deg,var(--rf-purple) 0,#8e44ad 100%);overflow:hidden;padding:40px 30px;position:relative;text-align:center}.form-header-role:before{animation:rfRotate 20s linear infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;position:absolute;right:-50%;top:-50%;width:200%}@keyframes rfRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.form-icon-role{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:50%;display:flex;height:80px;justify-content:center;margin:0 auto 20px;position:relative;width:80px;z-index:1}.form-icon-role svg,.form-title-role{color:#fff;color:var(--rf-bg-white)}.form-title-role{font-size:28px;font-weight:700;margin:0 0 10px;position:relative;z-index:1}.form-subtitle-role{color:#ffffffe6;font-size:15px;margin:0;position:relative;z-index:1}.role-form-modern{padding:0}.form-content-role{padding:35px 30px}.form-group-role{margin-bottom:28px;position:relative}.form-group-role.has-error .form-input-role,.form-group-role.has-error .form-textarea-role{background:#e74c3c0d;border-color:#e74c3c;border-color:var(--rf-danger)}.form-label-role{align-items:center;color:#2c3e50;color:var(--rf-text-dark);display:flex;font-size:15px;font-weight:600;gap:8px;margin-bottom:12px}.form-label-role svg{color:#9b59b6;color:var(--rf-purple);flex-shrink:0}.required-role{color:#e74c3c;color:var(--rf-danger);font-weight:700;margin-left:4px}.optional-role{color:#7f8c8d;color:var(--rf-text-light);font-size:12px;font-style:italic;font-weight:400;margin-left:4px}.form-input-role,.form-textarea-role{background:#fff;background:var(--rf-bg-white);border:2px solid #e0e0e0;border:2px solid var(--rf-border);border-radius:10px;color:#2c3e50;color:var(--rf-text-dark);font-family:inherit;font-size:15px;line-height:1.5;padding:14px 18px;transition:all .3s ease;width:100%}.form-textarea-role{min-height:120px;resize:vertical}.form-input-role:focus,.form-textarea-role:focus{background:#fff;background:var(--rf-bg-white);border-color:#9b59b6;border-color:var(--rf-purple);box-shadow:0 0 0 4px #9b59b61a;outline:none}.form-input-role::placeholder,.form-textarea-role::placeholder{color:#7f8c8d;color:var(--rf-text-light);opacity:.7}.input-error{animation:rfShake .5s;border-color:var(--rf-danger)}@keyframes rfShake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.error-message-role{align-items:center;color:#e74c3c;color:var(--rf-danger);display:flex;font-size:13px;font-weight:500;gap:6px;margin-top:8px}.error-message-role svg{flex-shrink:0}.input-hint-role{color:#7f8c8d;color:var(--rf-text-light);font-size:12px;margin-top:6px;text-align:right}.form-tips-role{background:linear-gradient(135deg,#9b59b60d,#8e44ad0d);border-left:4px solid #9b59b6;border-left:4px solid var(--rf-purple);border-radius:10px;display:flex;flex-direction:column;gap:12px;padding:20px}.tip-item-role{align-items:start;color:#2c3e50;color:var(--rf-text-dark);display:flex;font-size:14px;gap:12px}.tip-item-role svg{color:#9b59b6;color:var(--rf-purple);flex-shrink:0;margin-top:2px}.form-actions-role{background:#f8f9fa;background:var(--rf-bg-light);border-top:1px solid #e0e0e0;border-top:1px solid var(--rf-border);display:flex;gap:12px;padding:25px 30px}.cancel-button-role,.submit-button-role{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;flex:1 1;font-size:15px;font-weight:600;gap:10px;justify-content:center;overflow:hidden;padding:14px 24px;position:relative;transition:all .3s ease}.cancel-button-role:before,.submit-button-role:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.cancel-button-role:hover:before,.submit-button-role:hover:before{height:300px;width:300px}.cancel-button-role svg,.submit-button-role svg{position:relative;z-index:1}.submit-button-role{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--rf-success) 0,var(--rf-success-hover) 100%);box-shadow:0 4px 12px #2ecc714d;color:#fff;color:var(--rf-bg-white)}.submit-button-role:hover{box-shadow:0 6px 20px #2ecc7166;transform:translateY(-2px)}.cancel-button-role{background:#fff;background:var(--rf-bg-white);border:2px solid #e0e0e0;border:2px solid var(--rf-border);box-shadow:none;color:#2c3e50;color:var(--rf-text-dark)}.cancel-button-role:hover{background:#f8f9fa;background:var(--rf-bg-light);border-color:#2c3e50;border-color:var(--rf-text-dark);box-shadow:0 4px 12px #0000001a;box-shadow:0 4px 12px var(--rf-shadow);transform:translateY(-2px)}@media (max-width:768px){.form-header-role{padding:30px 20px}.form-icon-role{height:70px;width:70px}.form-icon-role svg{height:30px;width:30px}.form-title-role{font-size:24px}.form-content-role{padding:25px 20px}.form-actions-role{padding:20px}}@media (max-width:480px){.form-header-role{padding:25px 15px}.form-content-role{padding:20px 15px}.form-actions-role{flex-direction:column-reverse;padding:15px}.cancel-button-role,.submit-button-role{width:100%}.form-input-role,.form-textarea-role{font-size:14px;padding:12px 15px}.form-tips-role{padding:15px}}.form-input-role:focus+.input-hint-role,.form-textarea-role:focus+.input-hint-role{color:#9b59b6;color:var(--rf-purple);font-weight:500}.cancel-button-role:disabled,.submit-button-role:disabled{cursor:not-allowed;opacity:.6;transform:none!important}:root{--rl-primary:#0059a8;--rl-primary-hover:#2980b9;--rl-success:#2ecc71;--rl-success-hover:#27ae60;--rl-danger:#e74c3c;--rl-danger-hover:#c0392b;--rl-warning:#f39c12;--rl-purple:#d4209e;--rl-purple-hover:#ad4475;--rl-accent1:#008f45;--rl-accent2:#0057a6;--rl-bg-light:#f8f9fa;--rl-bg-white:#fff;--rl-text-dark:#2c3e50;--rl-text-light:#7f8c8d;--rl-border:#e0e0e0;--rl-shadow:#0000001a;--rl-shadow-lg:#00000026}.role-management-container{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:25px}.role-header-modern{animation:rlSlideDown .5s ease;background:#fff;background:var(--rl-bg-white);border-radius:16px;box-shadow:0 4px 20px #0000001a;box-shadow:0 4px 20px var(--rl-shadow);margin-bottom:25px;padding:30px}@keyframes rlSlideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.header-content-role{flex-wrap:wrap;justify-content:space-between}.header-content-role,.header-title-section-role{align-items:center;display:flex;gap:20px}.title-icon-role{align-items:center;background:linear-gradient(135deg,#d4209e,#ad4475);background:linear-gradient(135deg,var(--rl-purple) 0,var(--rl-purple-hover) 100%);border-radius:16px;box-shadow:0 6px 20px #9b59b64d;display:flex;height:70px;justify-content:center;width:70px}.title-icon-role svg{color:#fff;color:var(--rl-bg-white)}.page-title-role{color:#2c3e50;color:var(--rl-text-dark);font-size:32px;font-weight:700;margin:0}.page-subtitle-role{color:#7f8c8d;color:var(--rl-text-light);font-size:15px;margin:5px 0 0}.header-actions-role{align-items:center;display:flex;gap:12px}.btn-primary-role{align-items:center;background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--rl-success) 0,var(--rl-success-hover) 100%);border:none;border-radius:10px;box-shadow:0 4px 12px #2ecc714d;color:#fff;color:var(--rl-bg-white);cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:10px;padding:14px 28px;transition:all .3s ease}.btn-primary-role:hover{box-shadow:0 6px 20px #2ecc7166;transform:translateY(-2px)}.btn-primary-role.btn-danger-role{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--rl-danger) 0,var(--rl-danger-hover) 100%);box-shadow:0 4px 12px #e74c3c4d}.btn-primary-role.btn-danger-role:hover{box-shadow:0 6px 20px #e74c3c66}.stats-section-role{grid-gap:20px;animation:rlFadeIn .6s ease;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:25px}@keyframes rlFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.stat-card-role{align-items:center;background:#fff;background:var(--rl-bg-white);border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--rl-shadow);display:flex;gap:20px;overflow:hidden;padding:25px;position:relative;transition:all .3s ease}.stat-card-role:before{content:"";height:100%;left:0;position:absolute;top:0;width:5px}.stat-card-role.total:before{background:#d4209e;background:var(--rl-purple)}.stat-card-role.with-desc:before{background:#2ecc71;background:var(--rl-success)}.stat-card-role.without-desc:before{background:#f39c12;background:var(--rl-warning)}.stat-card-role.active:before{background:#0059a8;background:var(--rl-primary)}.stat-card-role:hover{box-shadow:0 8px 25px #00000026;box-shadow:0 8px 25px var(--rl-shadow-lg);transform:translateY(-5px)}.stat-icon-role{align-items:center;border-radius:12px;display:flex;flex-shrink:0;height:65px;justify-content:center;width:65px}.stat-card-role.total .stat-icon-role{background:linear-gradient(135deg,#d4209e,#ad4475);background:linear-gradient(135deg,var(--rl-purple) 0,var(--rl-purple-hover) 100%)}.stat-card-role.with-desc .stat-icon-role{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--rl-success) 0,var(--rl-success-hover) 100%)}.stat-card-role.without-desc .stat-icon-role{background:linear-gradient(135deg,#f39c12,#e67e22);background:linear-gradient(135deg,var(--rl-warning) 0,#e67e22 100%)}.stat-card-role.active .stat-icon-role{background:linear-gradient(135deg,#0059a8,#2980b9);background:linear-gradient(135deg,var(--rl-primary) 0,var(--rl-primary-hover) 100%)}.stat-icon-role svg{color:#fff;color:var(--rl-bg-white)}.stat-content-role h3{color:#2c3e50;color:var(--rl-text-dark);font-size:32px;font-weight:700;margin:0 0 5px}.stat-content-role p{color:#7f8c8d;color:var(--rl-text-light);font-size:14px;font-weight:500;margin:0}.form-wrapper-role{animation:rlSlideDown .5s ease;margin-bottom:25px}.role-list-section-modern{background:#fff;background:var(--rl-bg-white);border-radius:16px;box-shadow:0 4px 20px #0000001a;box-shadow:0 4px 20px var(--rl-shadow);padding:25px}.list-controls-role{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:25px}.controls-left-role{display:flex;flex:1 1;flex-wrap:wrap;gap:15px}.search-box-role{flex:1 1;min-width:250px;position:relative}.search-box-role svg{color:#7f8c8d;color:var(--rl-text-light);left:15px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.search-box-role input{border:2px solid #e0e0e0;border:2px solid var(--rl-border);border-radius:10px;font-size:15px;padding:12px 45px;transition:all .3s ease;width:100%}.search-box-role input:focus{border-color:#d4209e;border-color:var(--rl-purple);box-shadow:0 0 0 4px #9b59b61a;outline:none}.clear-search-btn-role{align-items:center;background:#f8f9fa;background:var(--rl-bg-light);border:none;border-radius:50%;cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:all .2s ease;width:28px}.clear-search-btn-role:hover{background:#e74c3c;background:var(--rl-danger);color:#fff;color:var(--rl-bg-white)}.filter-select-role{background:#fff;background:var(--rl-bg-white);border:2px solid #e0e0e0;border:2px solid var(--rl-border);border-radius:10px;cursor:pointer;font-size:14px;padding:12px 15px;transition:all .3s ease}.filter-select-role:focus{border-color:#d4209e;border-color:var(--rl-purple);box-shadow:0 0 0 4px #9b59b61a;outline:none}.controls-right-role{align-items:center;display:flex;gap:15px}.view-toggles-role{background:#f8f9fa;background:var(--rl-bg-light);border-radius:10px;display:flex;gap:5px;padding:5px}.view-btn-role{background:#0000;border:none;border-radius:8px;color:#7f8c8d;color:var(--rl-text-light);cursor:pointer;padding:10px;transition:all .2s ease}.view-btn-role:hover{background:#fff;background:var(--rl-bg-white)}.view-btn-role.active{background:#d4209e;background:var(--rl-purple);color:#fff;color:var(--rl-bg-white)}.roles-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:25px}.roles-list{display:flex;flex-direction:column;gap:15px;margin-bottom:25px}.role-card-modern{background:#fff;background:var(--rl-bg-white);border-left:4px solid #0000;border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--rl-shadow);padding:20px;transition:all .3s ease}.role-card-modern:hover{border-left-color:#d4209e;border-left-color:var(--rl-purple);box-shadow:0 8px 25px #00000026;box-shadow:0 8px 25px var(--rl-shadow-lg);transform:translateY(-5px)}.role-card-header{display:flex;gap:15px;margin-bottom:15px}.role-avatar-modern{align-items:center;background:linear-gradient(135deg,#d4209e,#ad4475);background:linear-gradient(135deg,var(--rl-purple) 0,var(--rl-purple-hover) 100%);border-radius:12px;box-shadow:0 4px 12px #9b59b64d;color:#fff;color:var(--rl-bg-white);display:flex;flex-shrink:0;font-size:24px;font-weight:700;height:60px;justify-content:center;width:60px}.role-info-card{flex:1 1;min-width:0}.role-name-card{color:#2c3e50;color:var(--rl-text-dark);font-size:20px;font-weight:700;margin:0 0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-description-card{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;line-height:1.5;overflow:hidden}.role-description-card,.role-no-description{color:#7f8c8d;color:var(--rl-text-light);font-size:14px;margin:0}.role-no-description{font-style:italic;opacity:.7}.role-card-footer{border-top:1px solid #e0e0e0;border-top:1px solid var(--rl-border);justify-content:space-between;padding-top:15px}.role-badge,.role-card-footer{align-items:center;display:flex}.role-badge{background:linear-gradient(135deg,#9b59b61a,#8e44ad1a);border-radius:20px;color:#d4209e;color:var(--rl-purple);font-size:12px;font-weight:600;gap:6px;padding:6px 12px}.role-badge svg{flex-shrink:0}.role-card-actions{display:flex;gap:8px}.action-btn-role{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .3s ease}.action-btn-role.edit{background:linear-gradient(135deg,#0059a8,#2980b9);background:linear-gradient(135deg,var(--rl-primary) 0,var(--rl-primary-hover) 100%);color:#fff;color:var(--rl-bg-white)}.action-btn-role.delete{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--rl-danger) 0,var(--rl-danger-hover) 100%);color:#fff;color:var(--rl-bg-white)}.action-btn-role:hover{box-shadow:0 4px 12px #00000026;box-shadow:0 4px 12px var(--rl-shadow-lg);transform:translateY(-2px)}.empty-state-role,.loading-state-role{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.spinner-role{animation:rlSpin 1s linear infinite;border:4px solid #f8f9fa;border-top-color:#d4209e;border:4px solid var(--rl-bg-light);border-radius:50%;border-top-color:var(--rl-purple);height:50px;margin-bottom:20px;width:50px}@keyframes rlSpin{to{transform:rotate(1turn)}}.empty-state-role svg{color:#ccc;margin-bottom:20px}.empty-state-role h3{color:#2c3e50;color:var(--rl-text-dark);font-size:24px;margin:0 0 10px}.empty-state-role p{color:#7f8c8d;color:var(--rl-text-light);margin:0 0 20px;max-width:500px}.btn-clear-filters-role{background:#f8f9fa;background:var(--rl-bg-light);border:2px solid #e0e0e0;border:2px solid var(--rl-border);border-radius:8px;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease}.btn-clear-filters-role:hover{background:#d4209e;background:var(--rl-purple);border-color:#d4209e;border-color:var(--rl-purple);color:#fff;color:var(--rl-bg-white)}.pagination-role{align-items:center;display:flex;gap:8px;justify-content:center;margin-top:25px}.page-numbers-role{align-items:center;display:flex;gap:5px}.page-btn-role{align-items:center;background:#f8f9fa;background:var(--rl-bg-light);border:2px solid #e0e0e0;border:2px solid var(--rl-border);border-radius:8px;cursor:pointer;display:flex;font-weight:600;height:40px;justify-content:center;min-width:40px;transition:all .2s ease}.page-btn-role:hover:not(:disabled){transform:translateY(-2px)}.page-btn-role.active,.page-btn-role:hover:not(:disabled){background:#d4209e;background:var(--rl-purple);border-color:#d4209e;border-color:var(--rl-purple);color:#fff;color:var(--rl-bg-white)}.page-btn-role:disabled{cursor:not-allowed;opacity:.4}.ellipsis-role{padding:0 5px}.ellipsis-role,.pagination-info-role{color:#7f8c8d;color:var(--rl-text-light)}.pagination-info-role{font-size:14px;margin-top:15px;text-align:center}@media (max-width:1024px){.roles-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.role-management-container{padding:15px}.role-header-modern{padding:20px}.header-content-role{align-items:flex-start;flex-direction:column}.header-title-section-role{width:100%}.title-icon-role{height:60px;width:60px}.page-title-role{font-size:24px}.stats-section-role{grid-template-columns:1fr}.list-controls-role{align-items:stretch;flex-direction:column}.controls-left-role,.controls-right-role{flex-direction:column;width:100%}.search-box-role{min-width:100%}.view-toggles-role{width:100%}.view-btn-role{flex:1 1}.roles-grid{grid-template-columns:1fr}}@media (max-width:480px){.role-header-modern{padding:15px}.header-title-section-role{align-items:flex-start;flex-direction:column}.title-icon-role{height:50px;width:50px}.page-title-role{font-size:20px}.role-card-header,.stat-card-role{flex-direction:column;text-align:center}.role-card-header{align-items:center}.role-card-footer{flex-direction:column;gap:15px}.role-badge,.role-card-actions{justify-content:center;width:100%}.pagination-role{flex-wrap:wrap}}:root{--uf-primary:#3498db;--uf-primary-hover:#2980b9;--uf-success:#2ecc71;--uf-success-hover:#27ae60;--uf-danger:#e74c3c;--uf-danger-hover:#c0392b;--uf-warning:#f39c12;--uf-accent1:#008f45;--uf-accent2:#0057a6;--uf-bg-light:#f8f9fa;--uf-bg-white:#fff;--uf-text-dark:#2c3e50;--uf-text-light:#7f8c8d;--uf-border:#e0e0e0;--uf-shadow:#0000001a;--uf-shadow-lg:#00000026}.user-form-container-modern{animation:ufSlideUp .4s ease;background:#fff;background:var(--uf-bg-white);border-radius:16px;box-shadow:0 4px 20px #0000001a;box-shadow:0 4px 20px var(--uf-shadow);margin:0 auto;max-width:800px;overflow:hidden}@keyframes ufSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.form-header-modern{background:linear-gradient(135deg,#0057a6,#3498db);background:linear-gradient(135deg,var(--uf-accent2) 0,var(--uf-primary) 100%);overflow:hidden;padding:30px;position:relative;text-align:center}.form-header-modern:before{animation:ufRotate 20s linear infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;position:absolute;right:-50%;top:-50%;width:200%}@keyframes ufRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.form-icon-modern{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:50%;display:flex;height:70px;justify-content:center;margin:0 auto 15px;position:relative;width:70px;z-index:1}.form-icon-modern svg,.form-title-modern{color:#fff;color:var(--uf-bg-white)}.form-title-modern{font-size:24px;font-weight:700;margin:0;position:relative;z-index:1}.user-form-modern{padding:0}.form-content-modern{padding:30px}.form-group-modern{margin-bottom:25px;position:relative}.form-group-modern.has-error .form-input-modern,.form-group-modern.has-error .form-select-modern{background:#e74c3c0d;border-color:#e74c3c;border-color:var(--uf-danger)}.form-label-modern{align-items:center;color:#2c3e50;color:var(--uf-text-dark);display:flex;font-size:15px;font-weight:600;gap:8px;margin-bottom:10px}.form-label-modern svg{color:#3498db;color:var(--uf-primary);flex-shrink:0}.required-modern{color:#e74c3c;color:var(--uf-danger);font-weight:700;margin-left:4px}.optional-modern{color:#7f8c8d;color:var(--uf-text-light);font-size:12px;font-style:italic;font-weight:400;margin-left:4px}.form-input-modern,.form-select-modern{background:#fff;background:var(--uf-bg-white);border:2px solid #e0e0e0;border:2px solid var(--uf-border);border-radius:10px;color:#2c3e50;color:var(--uf-text-dark);font-family:inherit;font-size:15px;padding:14px 18px;transition:all .3s ease;width:100%}.form-input-modern:focus,.form-select-modern:focus{background:#fff;background:var(--uf-bg-white);border-color:#3498db;border-color:var(--uf-primary);box-shadow:0 0 0 4px #3498db1a;outline:none}.form-input-modern::placeholder{color:#7f8c8d;color:var(--uf-text-light);opacity:.7}.input-error{animation:ufShake .5s;border-color:var(--uf-danger)}@keyframes ufShake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.error-message-modern{align-items:center;color:#e74c3c;color:var(--uf-danger);display:flex;font-size:13px;font-weight:500;gap:6px;margin-top:8px}.error-message-modern svg{flex-shrink:0}.input-hint-modern{color:#7f8c8d;color:var(--uf-text-light);font-size:12px;margin-top:6px;text-align:right}.password-input-wrapper{position:relative}.toggle-password-btn{align-items:center;background:#0000;border:none;color:#7f8c8d;color:var(--uf-text-light);cursor:pointer;display:flex;justify-content:center;padding:5px;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:color .2s ease}.toggle-password-btn:hover{color:#3498db;color:var(--uf-primary)}.password-strength{align-items:center;display:flex;gap:10px;margin-top:10px}.strength-bar{background:#f8f9fa;background:var(--uf-bg-light);border-radius:3px;flex:1 1;height:6px;overflow:hidden}.strength-fill{border-radius:3px;height:100%;transition:all .3s ease}.strength-label{font-size:12px;font-weight:600;min-width:60px;text-align:right}.form-row-modern{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.form-actions-modern{background:#f8f9fa;background:var(--uf-bg-light);border-top:1px solid #e0e0e0;border-top:1px solid var(--uf-border);display:flex;gap:12px;padding:25px 30px}.cancel-button-modern,.submit-button-modern{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;flex:1 1;font-size:15px;font-weight:600;gap:10px;justify-content:center;overflow:hidden;padding:14px 24px;position:relative;transition:all .3s ease}.cancel-button-modern:before,.submit-button-modern:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.cancel-button-modern:hover:before,.submit-button-modern:hover:before{height:300px;width:300px}.cancel-button-modern svg,.submit-button-modern svg{position:relative;z-index:1}.submit-button-modern{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--uf-success) 0,var(--uf-success-hover) 100%);box-shadow:0 4px 12px #2ecc714d;color:#fff;color:var(--uf-bg-white)}.submit-button-modern:hover{box-shadow:0 6px 20px #2ecc7166;transform:translateY(-2px)}.cancel-button-modern{background:#fff;background:var(--uf-bg-white);border:2px solid #e0e0e0;border:2px solid var(--uf-border);box-shadow:none;color:#2c3e50;color:var(--uf-text-dark)}.cancel-button-modern:hover{background:#f8f9fa;background:var(--uf-bg-light);border-color:#2c3e50;border-color:var(--uf-text-dark);box-shadow:0 4px 12px #0000001a;box-shadow:0 4px 12px var(--uf-shadow);transform:translateY(-2px)}.form-loading-modern{align-items:center;background:#fff;background:var(--uf-bg-white);border-radius:16px;box-shadow:0 4px 20px #0000001a;box-shadow:0 4px 20px var(--uf-shadow);display:flex;flex-direction:column;justify-content:center;padding:60px 40px}.spinner-modern{animation:ufSpin 1s linear infinite;border:4px solid #f8f9fa;border-top-color:#3498db;border:4px solid var(--uf-bg-light);border-radius:50%;border-top-color:var(--uf-primary);height:50px;margin-bottom:20px;width:50px}@keyframes ufSpin{to{transform:rotate(1turn)}}.form-loading-modern p{color:#7f8c8d;color:var(--uf-text-light);font-size:15px;margin:0}@media (max-width:768px){.form-row-modern{gap:25px;grid-template-columns:1fr}.form-header-modern{padding:25px 20px}.form-icon-modern{height:60px;width:60px}.form-icon-modern svg{height:28px;width:28px}.form-title-modern{font-size:20px}.form-actions-modern,.form-content-modern{padding:20px}}@media (max-width:480px){.form-header-modern{padding:20px 15px}.form-content-modern{padding:15px}.form-actions-modern{flex-direction:column-reverse;padding:15px}.cancel-button-modern,.submit-button-modern{width:100%}.form-input-modern,.form-select-modern{font-size:14px;padding:12px 15px}}.form-input-modern:focus+.input-hint-modern,.form-select-modern:focus+.input-hint-modern{color:#3498db;color:var(--uf-primary);font-weight:500}.cancel-button-modern:disabled,.submit-button-modern:disabled{cursor:not-allowed;opacity:.6;transform:none!important}:root{--ul-primary:#3498db;--ul-primary-hover:#2980b9;--ul-success:#2ecc71;--ul-success-hover:#27ae60;--ul-danger:#e74c3c;--ul-danger-hover:#c0392b;--ul-warning:#f39c12;--ul-accent1:#008f45;--ul-accent2:#0057a6;--ul-purple:#9b59b6;--ul-bg-light:#f8f9fa;--ul-bg-white:#fff;--ul-text-dark:#2c3e50;--ul-text-light:#7f8c8d;--ul-border:#e0e0e0;--ul-shadow:#0000001a;--ul-shadow-lg:#00000026}.user-management-container{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:25px}.user-header-modern{animation:ulSlideDown .5s ease;background:#fff;background:var(--ul-bg-white);border-radius:16px;box-shadow:0 4px 20px #0000001a;box-shadow:0 4px 20px var(--ul-shadow);margin-bottom:25px;padding:30px}@keyframes ulSlideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.header-content-user{flex-wrap:wrap;justify-content:space-between}.header-content-user,.header-title-section-user{align-items:center;display:flex;gap:20px}.title-icon-user{align-items:center;background:linear-gradient(135deg,#0057a6,#3498db);background:linear-gradient(135deg,var(--ul-accent2) 0,var(--ul-primary) 100%);border-radius:16px;box-shadow:0 6px 20px #3498db4d;display:flex;height:70px;justify-content:center;width:70px}.title-icon-user svg{color:#fff;color:var(--ul-bg-white)}.page-title-user{color:#2c3e50;color:var(--ul-text-dark);font-size:32px;font-weight:700;margin:0}.page-subtitle-user{color:#7f8c8d;color:var(--ul-text-light);font-size:15px;margin:5px 0 0}.header-actions-user{align-items:center;display:flex;gap:12px}.btn-primary-user{align-items:center;background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--ul-success) 0,var(--ul-success-hover) 100%);border:none;border-radius:10px;box-shadow:0 4px 12px #2ecc714d;color:#fff;color:var(--ul-bg-white);cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:10px;padding:14px 28px;transition:all .3s ease}.btn-primary-user:hover{box-shadow:0 6px 20px #2ecc7166;transform:translateY(-2px)}.btn-primary-user.btn-danger-user{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--ul-danger) 0,var(--ul-danger-hover) 100%);box-shadow:0 4px 12px #e74c3c4d}.btn-primary-user.btn-danger-user:hover{box-shadow:0 6px 20px #e74c3c66}.stats-section-user{grid-gap:20px;animation:ulFadeIn .6s ease;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:25px}@keyframes ulFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.stat-card-user{align-items:center;background:#fff;background:var(--ul-bg-white);border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--ul-shadow);display:flex;gap:20px;overflow:hidden;padding:25px;position:relative;transition:all .3s ease}.stat-card-user:before{content:"";height:100%;left:0;position:absolute;top:0;width:5px}.stat-card-user.total:before{background:#3498db;background:var(--ul-primary)}.stat-card-user.role-1:before{background:#2ecc71;background:var(--ul-success)}.stat-card-user.role-2:before{background:#f39c12;background:var(--ul-warning)}.stat-card-user.role-3:before{background:#9b59b6;background:var(--ul-purple)}.stat-card-user:hover{box-shadow:0 8px 25px #00000026;box-shadow:0 8px 25px var(--ul-shadow-lg);transform:translateY(-5px)}.stat-icon-user{align-items:center;border-radius:12px;display:flex;flex-shrink:0;height:65px;justify-content:center;width:65px}.stat-card-user.total .stat-icon-user{background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--ul-primary) 0,var(--ul-primary-hover) 100%)}.stat-card-user.role-1 .stat-icon-user{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--ul-success) 0,var(--ul-success-hover) 100%)}.stat-card-user.role-2 .stat-icon-user{background:linear-gradient(135deg,#f39c12,#e67e22);background:linear-gradient(135deg,var(--ul-warning) 0,#e67e22 100%)}.stat-card-user.role-3 .stat-icon-user{background:linear-gradient(135deg,#9b59b6,#8e44ad);background:linear-gradient(135deg,var(--ul-purple) 0,#8e44ad 100%)}.stat-icon-user svg{color:#fff;color:var(--ul-bg-white)}.stat-content-user h3{color:#2c3e50;color:var(--ul-text-dark);font-size:32px;font-weight:700;margin:0 0 5px}.stat-content-user p{color:#7f8c8d;color:var(--ul-text-light);font-size:14px;font-weight:500;margin:0}.form-wrapper-user{animation:ulSlideDown .5s ease;margin-bottom:25px}.user-list-section-modern{background:#fff;background:var(--ul-bg-white);border-radius:16px;box-shadow:0 4px 20px #0000001a;box-shadow:0 4px 20px var(--ul-shadow);padding:25px}.list-controls-user{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:25px}.controls-left-user{display:flex;flex:1 1;flex-wrap:wrap;gap:15px}.search-box-user{flex:1 1;min-width:250px;position:relative}.search-box-user svg{color:#7f8c8d;color:var(--ul-text-light);left:15px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.search-box-user input{border:2px solid #e0e0e0;border:2px solid var(--ul-border);border-radius:10px;font-size:15px;padding:12px 45px;transition:all .3s ease;width:100%}.search-box-user input:focus{border-color:#3498db;border-color:var(--ul-primary);box-shadow:0 0 0 4px #3498db1a;outline:none}.clear-search-btn-user{align-items:center;background:#f8f9fa;background:var(--ul-bg-light);border:none;border-radius:50%;cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:all .2s ease;width:28px}.clear-search-btn-user:hover{background:#e74c3c;background:var(--ul-danger);color:#fff;color:var(--ul-bg-white)}.filter-group-user{display:flex;gap:10px}.filter-select-user{background:#fff;background:var(--ul-bg-white);border:2px solid #e0e0e0;border:2px solid var(--ul-border);border-radius:10px;cursor:pointer;font-size:14px;padding:12px 15px;transition:all .3s ease}.filter-select-user:focus{border-color:#3498db;border-color:var(--ul-primary);box-shadow:0 0 0 4px #3498db1a;outline:none}.controls-right-user{align-items:center;display:flex;gap:15px}.view-toggles-user{background:#f8f9fa;background:var(--ul-bg-light);border-radius:10px;display:flex;gap:5px;padding:5px}.view-btn-user{background:#0000;border:none;border-radius:8px;color:#7f8c8d;color:var(--ul-text-light);cursor:pointer;padding:10px;transition:all .2s ease}.view-btn-user:hover{background:#fff;background:var(--ul-bg-white)}.view-btn-user.active{background:#3498db;background:var(--ul-primary);color:#fff;color:var(--ul-bg-white)}.users-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:25px}.users-list{display:flex;flex-direction:column;gap:15px;margin-bottom:25px}.user-card-modern{background:#fff;background:var(--ul-bg-white);border-left:4px solid #0000;border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--ul-shadow);padding:20px;transition:all .3s ease}.user-card-modern:hover{border-left-color:#3498db;border-left-color:var(--ul-primary);box-shadow:0 8px 25px #00000026;box-shadow:0 8px 25px var(--ul-shadow-lg);transform:translateY(-5px)}.user-card-header{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--ul-border);display:flex;gap:15px;margin-bottom:15px;padding-bottom:15px}.user-avatar-modern{align-items:center;background:linear-gradient(135deg,#008f45,#0057a6);background:linear-gradient(135deg,var(--ul-accent1) 0,var(--ul-accent2) 100%);border-radius:12px;box-shadow:0 4px 12px #0057a64d;color:#fff;color:var(--ul-bg-white);display:flex;flex-shrink:0;font-size:24px;font-weight:700;height:60px;justify-content:center;width:60px}.user-info-modern{flex:1 1;min-width:0}.user-name-modern{color:#2c3e50;color:var(--ul-text-dark);font-size:18px;font-weight:700;margin:0 0 8px}.user-email-modern,.user-name-modern{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email-modern{color:#7f8c8d;color:var(--ul-text-light);font-size:14px;margin:0}.user-card-body{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.user-detail-item{align-items:center;background:#f8f9fa;background:var(--ul-bg-light);border-radius:8px;display:flex;font-size:14px;gap:10px;padding:8px 12px}.user-detail-item svg{color:#3498db;color:var(--ul-primary);flex-shrink:0}.user-role-badge{font-weight:600}.user-brigade-text,.user-role-badge{color:#2c3e50;color:var(--ul-text-dark)}.user-card-actions{border-top:1px solid #e0e0e0;border-top:1px solid var(--ul-border);display:flex;gap:10px;padding-top:15px}.action-btn-user{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;justify-content:center;padding:10px;transition:all .3s ease}.action-btn-user.edit{background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--ul-primary) 0,var(--ul-primary-hover) 100%);color:#fff;color:var(--ul-bg-white)}.action-btn-user.delete{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--ul-danger) 0,var(--ul-danger-hover) 100%);color:#fff;color:var(--ul-bg-white)}.action-btn-user:hover{box-shadow:0 4px 12px #00000026;box-shadow:0 4px 12px var(--ul-shadow-lg);transform:translateY(-2px)}.empty-state-user,.loading-state-user{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.spinner-user{animation:ulSpin 1s linear infinite;border:4px solid #f8f9fa;border-top-color:#3498db;border:4px solid var(--ul-bg-light);border-radius:50%;border-top-color:var(--ul-primary);height:50px;margin-bottom:20px;width:50px}@keyframes ulSpin{to{transform:rotate(1turn)}}.empty-state-user svg{color:#ccc;margin-bottom:20px}.empty-state-user h3{color:#2c3e50;color:var(--ul-text-dark);font-size:24px;margin:0 0 10px}.empty-state-user p{color:#7f8c8d;color:var(--ul-text-light);margin:0 0 20px;max-width:500px}.btn-clear-filters-user{background:#f8f9fa;background:var(--ul-bg-light);border:2px solid #e0e0e0;border:2px solid var(--ul-border);border-radius:8px;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease}.btn-clear-filters-user:hover{background:#3498db;background:var(--ul-primary);border-color:#3498db;border-color:var(--ul-primary);color:#fff;color:var(--ul-bg-white)}.pagination-user{align-items:center;display:flex;gap:8px;justify-content:center;margin-top:25px}.page-numbers-user{align-items:center;display:flex;gap:5px}.page-btn-user{align-items:center;background:#f8f9fa;background:var(--ul-bg-light);border:2px solid #e0e0e0;border:2px solid var(--ul-border);border-radius:8px;cursor:pointer;display:flex;font-weight:600;height:40px;justify-content:center;min-width:40px;transition:all .2s ease}.page-btn-user:hover:not(:disabled){transform:translateY(-2px)}.page-btn-user.active,.page-btn-user:hover:not(:disabled){background:#3498db;background:var(--ul-primary);border-color:#3498db;border-color:var(--ul-primary);color:#fff;color:var(--ul-bg-white)}.page-btn-user:disabled{cursor:not-allowed;opacity:.4}.ellipsis-user{padding:0 5px}.ellipsis-user,.pagination-info-user{color:#7f8c8d;color:var(--ul-text-light)}.pagination-info-user{font-size:14px;margin-top:15px;text-align:center}@media (max-width:1024px){.users-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.user-management-container{padding:15px}.user-header-modern{padding:20px}.header-content-user{align-items:flex-start;flex-direction:column}.header-title-section-user{width:100%}.title-icon-user{height:60px;width:60px}.page-title-user{font-size:24px}.stats-section-user{grid-template-columns:1fr}.list-controls-user{align-items:stretch;flex-direction:column}.controls-left-user,.controls-right-user{flex-direction:column;width:100%}.search-box-user{min-width:100%}.filter-group-user{flex-direction:column}.view-toggles-user{width:100%}.view-btn-user{flex:1 1}.users-grid{grid-template-columns:1fr}}@media (max-width:480px){.user-header-modern{padding:15px}.header-title-section-user{align-items:flex-start;flex-direction:column}.title-icon-user{height:50px;width:50px}.page-title-user{font-size:20px}.stat-card-user,.user-card-header{flex-direction:column;text-align:center}.user-avatar-modern{margin:0 auto}.pagination-user{flex-wrap:wrap}}:root{--sf-primary:#3498db;--sf-primary-hover:#2980b9;--sf-success:#2ecc71;--sf-success-hover:#27ae60;--sf-danger:#e74c3c;--sf-danger-hover:#c0392b;--sf-warning:#f39c12;--sf-info:#17a2b8;--sf-accent1:#008f45;--sf-accent2:#0057a6;--sf-bg-light:#f8f9fa;--sf-bg-white:#fff;--sf-text-dark:#2c3e50;--sf-text-light:#7f8c8d;--sf-border:#e0e0e0;--sf-shadow:#0000001a;--sf-shadow-lg:#00000026}.modal-overlay-sector{align-items:center;animation:sfFadeIn .3s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes sfFadeIn{0%{opacity:0}to{opacity:1}}.modal-content-sector{animation:sfSlideUp .4s ease;background:#fff;background:var(--sf-bg-white);border-radius:16px;box-shadow:0 10px 40px #00000026;box-shadow:0 10px 40px var(--sf-shadow-lg);max-height:90vh;max-width:700px;overflow-y:auto;width:95%}@keyframes sfSlideUp{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header-sector{align-items:center;background:linear-gradient(135deg,#17a2b8,#138496);background:linear-gradient(135deg,var(--sf-info) 0,#138496 100%);display:flex;gap:20px;overflow:hidden;padding:30px;position:relative}.modal-header-sector:before{animation:sfRotate 20s linear infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;position:absolute;right:-50%;top:-50%;width:200%}@keyframes sfRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.header-icon-sector{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:50%;display:flex;flex-shrink:0;height:60px;justify-content:center;position:relative;width:60px;z-index:1}.header-icon-sector svg,.modal-header-sector h3{color:#fff;color:var(--sf-bg-white)}.modal-header-sector h3{font-size:24px;font-weight:700;margin:0 0 5px;position:relative;z-index:1}.modal-subtitle-sector{color:#ffffffe6;font-size:14px;margin:0;position:relative;z-index:1}.modal-close-sector{align-items:center;background:#fff3;border:none;border-radius:50%;cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;right:20px;top:20px;transition:all .3s ease;width:40px;z-index:2}.modal-close-sector:hover{background:#ffffff4d;transform:rotate(90deg)}.modal-close-sector svg{color:#fff;color:var(--sf-bg-white)}.sector-form-modern{padding:0}.form-content-sector{padding:30px}.form-group-sector{margin-bottom:25px;position:relative}.form-group-sector.has-error input,.form-group-sector.has-error select{background:#e74c3c0d;border-color:#e74c3c;border-color:var(--sf-danger)}.form-group-sector label{align-items:center;color:#2c3e50;color:var(--sf-text-dark);display:flex;font-size:15px;font-weight:600;gap:8px;margin-bottom:10px}.form-group-sector label svg{color:#17a2b8;color:var(--sf-info);flex-shrink:0}.required-sector{color:#e74c3c;color:var(--sf-danger);font-weight:700;margin-left:4px}.form-group-sector input,.form-group-sector select{background:#fff;background:var(--sf-bg-white);border:2px solid #e0e0e0;border:2px solid var(--sf-border);border-radius:10px;color:#2c3e50;color:var(--sf-text-dark);font-family:inherit;font-size:15px;padding:12px 16px;transition:all .3s ease;width:100%}.form-group-sector input:focus,.form-group-sector select:focus{border-color:#17a2b8;border-color:var(--sf-info);box-shadow:0 0 0 4px #17a2b81a;outline:none}.form-group-sector input::placeholder{color:#7f8c8d;color:var(--sf-text-light);opacity:.7}.input-error{animation:sfShake .5s;border-color:#e74c3c;border-color:var(--sf-danger)}@keyframes sfShake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.error-message-sector{align-items:center;color:#e74c3c;color:var(--sf-danger);display:flex;font-size:13px;font-weight:500;gap:6px;margin-top:8px}.error-message-sector svg{flex-shrink:0}.input-hint-sector{color:#7f8c8d;color:var(--sf-text-light);font-size:12px;margin-top:6px;text-align:right}.form-row-sector{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:25px}.coordinates-section-sector{background:linear-gradient(135deg,#17a2b80d,#1384960d);border-left:4px solid #17a2b8;border-left:4px solid var(--sf-info);border-radius:12px;margin-top:25px;padding:20px}.coordinates-header-sector{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.coord-title-sector{align-items:center;display:flex;gap:10px}.coord-title-sector svg{color:#17a2b8;color:var(--sf-info)}.coord-title-sector h4{color:#2c3e50;color:var(--sf-text-dark);font-size:18px;margin:0}.btn-add-coordinate-sector{align-items:center;background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--sf-success) 0,var(--sf-success-hover) 100%);border:none;border-radius:8px;box-shadow:0 2px 8px #2ecc714d;color:#fff;color:var(--sf-bg-white);cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 16px;transition:all .3s ease}.btn-add-coordinate-sector:hover{box-shadow:0 4px 12px #2ecc7166;transform:translateY(-2px)}.coordinate-card-sector{background:#fff;background:var(--sf-bg-white);border:2px solid #e0e0e0;border:2px solid var(--sf-border);border-radius:12px;margin-top:15px;padding:20px}.coordinate-card-header-sector{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--sf-border);display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.coord-badge-sector{background:linear-gradient(135deg,#17a2b81a,#1384961a);border-radius:20px;color:#17a2b8;color:var(--sf-info);display:inline-block;font-size:14px;font-weight:600;padding:8px 16px}.btn-delete-coordinate-sector{align-items:center;background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--sf-danger) 0,var(--sf-danger-hover) 100%);border:none;border-radius:8px;color:#fff;color:var(--sf-bg-white);cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:8px 14px;transition:all .3s ease}.btn-delete-coordinate-sector:hover{box-shadow:0 4px 12px #e74c3c66;transform:translateY(-2px)}.coordinate-inputs-sector{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.pagination-controls-sector{display:flex;gap:12px;justify-content:space-between;margin-top:20px}.btn-paginate-sector{align-items:center;background:#f8f9fa;background:var(--sf-bg-light);border:2px solid #e0e0e0;border:2px solid var(--sf-border);border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-weight:600;gap:8px;justify-content:center;padding:10px 16px;transition:all .3s ease}.btn-paginate-sector:hover:not(:disabled){background:#17a2b8;background:var(--sf-info);border-color:#17a2b8;border-color:var(--sf-info);color:#fff;color:var(--sf-bg-white);transform:translateY(-2px)}.btn-paginate-sector:disabled{cursor:not-allowed;opacity:.4}.no-coordinates-sector{color:#7f8c8d;color:var(--sf-text-light);padding:50px 20px;text-align:center}.no-coordinates-sector svg{color:#ccc;margin-bottom:20px}.no-coordinates-sector p{color:#2c3e50;color:var(--sf-text-dark);font-size:16px;margin:10px 0}.no-coordinates-hint-sector{color:#7f8c8d;color:var(--sf-text-light);font-size:14px}.form-actions-sector{background:#f8f9fa;background:var(--sf-bg-light);border-top:1px solid #e0e0e0;border-top:1px solid var(--sf-border);display:flex;gap:12px;padding:25px 30px}.btn-cancel-sector,.btn-submit-sector{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;flex:1 1;font-size:15px;font-weight:600;gap:10px;justify-content:center;padding:14px 24px;transition:all .3s ease}.btn-cancel-sector{background:#fff;background:var(--sf-bg-white);border:2px solid #e0e0e0;border:2px solid var(--sf-border);color:#2c3e50;color:var(--sf-text-dark)}.btn-cancel-sector:hover{background:#f8f9fa;background:var(--sf-bg-light);border-color:#2c3e50;border-color:var(--sf-text-dark);transform:translateY(-2px)}.btn-submit-sector{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--sf-success) 0,var(--sf-success-hover) 100%);box-shadow:0 4px 12px #2ecc714d;color:#fff;color:var(--sf-bg-white)}.btn-submit-sector:hover{box-shadow:0 6px 20px #2ecc7166;transform:translateY(-2px)}.modal-content-sector::-webkit-scrollbar{width:8px}.modal-content-sector::-webkit-scrollbar-track{background:#f8f9fa;background:var(--sf-bg-light)}.modal-content-sector::-webkit-scrollbar-thumb{background:#7f8c8d;background:var(--sf-text-light);border-radius:4px}.modal-content-sector::-webkit-scrollbar-thumb:hover{background:#2c3e50;background:var(--sf-text-dark)}@media (max-width:768px){.modal-content-sector{border-radius:0;max-height:100vh;max-width:100%;width:100%}.modal-header-sector{padding:25px 20px}.header-icon-sector{height:50px;width:50px}.modal-header-sector h3{font-size:20px}.form-content-sector{padding:20px}.form-row-sector{gap:25px}.coordinate-inputs-sector,.form-row-sector{grid-template-columns:1fr}.form-actions-sector{padding:20px}}@media (max-width:480px){.modal-header-sector{padding:20px 15px}.form-content-sector{padding:15px}.form-actions-sector{flex-direction:column-reverse;padding:15px}.pagination-controls-sector{flex-direction:column}.coordinate-card-header-sector{align-items:flex-start;flex-direction:column;gap:10px}}:root{--sl-primary:#3498db;--sl-primary-hover:#2980b9;--sl-success:#2ecc71;--sl-success-hover:#27ae60;--sl-danger:#e74c3c;--sl-danger-hover:#c0392b;--sl-warning:#f39c12;--sl-info:#17a2b8;--sl-info-hover:#138496;--sl-accent1:#008f45;--sl-accent2:#0057a6;--sl-bg-light:#f8f9fa;--sl-bg-white:#fff;--sl-text-dark:#2c3e50;--sl-text-light:#7f8c8d;--sl-border:#e0e0e0;--sl-shadow:#0000001a;--sl-shadow-lg:#00000026}.sectors-management-container{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:25px}.sectors-header-modern{animation:slSlideDown .5s ease;background:#fff;background:var(--sl-bg-white);border-radius:16px;box-shadow:0 4px 20px #0000001a;box-shadow:0 4px 20px var(--sl-shadow);margin-bottom:25px;padding:30px}@keyframes slSlideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.header-content-sectors{flex-wrap:wrap;justify-content:space-between}.header-content-sectors,.header-title-section-sectors{align-items:center;display:flex;gap:20px}.title-icon-sectors{align-items:center;background:linear-gradient(135deg,#17a2b8,#138496);background:linear-gradient(135deg,var(--sl-info) 0,var(--sl-info-hover) 100%);border-radius:16px;box-shadow:0 6px 20px #17a2b84d;display:flex;height:70px;justify-content:center;width:70px}.title-icon-sectors svg{color:#fff;color:var(--sl-bg-white)}.page-title-sectors{color:#2c3e50;color:var(--sl-text-dark);font-size:32px;font-weight:700;margin:0}.page-subtitle-sectors{color:#7f8c8d;color:var(--sl-text-light);font-size:15px;margin:5px 0 0}.header-actions-sectors{align-items:center;display:flex;gap:12px}.btn-primary-sectors{align-items:center;background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--sl-success) 0,var(--sl-success-hover) 100%);border:none;border-radius:10px;box-shadow:0 4px 12px #2ecc714d;color:#fff;color:var(--sl-bg-white);cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:10px;padding:14px 28px;transition:all .3s ease}.btn-primary-sectors:hover{box-shadow:0 6px 20px #2ecc7166;transform:translateY(-2px)}.stats-section-sectors{grid-gap:20px;animation:slFadeIn .6s ease;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:25px}@keyframes slFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.stat-card-sectors{align-items:center;background:#fff;background:var(--sl-bg-white);border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--sl-shadow);display:flex;gap:20px;overflow:hidden;padding:25px;position:relative;transition:all .3s ease}.stat-card-sectors:before{content:"";height:100%;left:0;position:absolute;top:0;width:5px}.stat-card-sectors.total:before{background:#17a2b8;background:var(--sl-info)}.stat-card-sectors.pending:before{background:#f39c12;background:var(--sl-warning)}.stat-card-sectors.progress:before{background:#3498db;background:var(--sl-primary)}.stat-card-sectors.completed:before{background:#2ecc71;background:var(--sl-success)}.stat-card-sectors:hover{box-shadow:0 8px 25px #00000026;box-shadow:0 8px 25px var(--sl-shadow-lg);transform:translateY(-5px)}.stat-icon-sectors{align-items:center;border-radius:12px;display:flex;flex-shrink:0;height:65px;justify-content:center;width:65px}.stat-card-sectors.total .stat-icon-sectors{background:linear-gradient(135deg,#17a2b8,#138496);background:linear-gradient(135deg,var(--sl-info) 0,var(--sl-info-hover) 100%)}.stat-card-sectors.pending .stat-icon-sectors{background:linear-gradient(135deg,#f39c12,#e67e22);background:linear-gradient(135deg,var(--sl-warning) 0,#e67e22 100%)}.stat-card-sectors.progress .stat-icon-sectors{background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--sl-primary) 0,var(--sl-primary-hover) 100%)}.stat-card-sectors.completed .stat-icon-sectors{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--sl-success) 0,var(--sl-success-hover) 100%)}.stat-icon-sectors svg{color:#fff;color:var(--sl-bg-white)}.stat-content-sectors h3{color:#2c3e50;color:var(--sl-text-dark);font-size:32px;font-weight:700;margin:0 0 5px}.stat-content-sectors p{color:#7f8c8d;color:var(--sl-text-light);font-size:14px;font-weight:500;margin:0}.filter-section-sectors{background:#fff;background:var(--sl-bg-white);border-radius:16px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--sl-shadow);margin-bottom:25px;padding:25px}.search-box-sectors{margin-bottom:20px;position:relative;width:90%}.search-box-sectors svg{color:#7f8c8d;color:var(--sl-text-light);left:15px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.search-box-sectors input{border:2px solid #e0e0e0;border:2px solid var(--sl-border);border-radius:10px;font-size:15px;padding:12px 45px;transition:all .3s ease;width:100%}.search-box-sectors input:focus{border-color:#17a2b8;border-color:var(--sl-info);box-shadow:0 0 0 4px #17a2b81a;outline:none}.clear-search-btn-sectors{align-items:center;background:#f8f9fa;background:var(--sl-bg-light);border:none;border-radius:50%;cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:all .2s ease;width:28px}.clear-search-btn-sectors:hover{background:#e74c3c;background:var(--sl-danger);color:#fff;color:var(--sl-bg-white)}.filters-row-sectors{display:flex;flex-wrap:wrap;gap:15px}.filter-date-sectors,.filter-select-sectors{background:#fff;background:var(--sl-bg-white);border:2px solid #e0e0e0;border:2px solid var(--sl-border);border-radius:10px;cursor:pointer;flex:1 1;font-size:14px;min-width:180px;padding:12px 15px;transition:all .3s ease}.filter-date-sectors:focus,.filter-select-sectors:focus{border-color:#17a2b8;border-color:var(--sl-info);box-shadow:0 0 0 4px #17a2b81a;outline:none}.btn-clear-filters-sectors{background:#f8f9fa;background:var(--sl-bg-light);border:2px solid #e0e0e0;border:2px solid var(--sl-border);border-radius:10px;cursor:pointer;font-weight:600;padding:12px 20px;transition:all .2s ease;white-space:nowrap}.btn-clear-filters-sectors:hover{background:#17a2b8;background:var(--sl-info);border-color:#17a2b8;border-color:var(--sl-info);color:#fff;color:var(--sl-bg-white)}.view-controls-sectors{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.view-toggles-sectors{background:#f8f9fa;background:var(--sl-bg-light);border-radius:10px;display:flex;gap:5px;padding:5px}.view-toggle-sectors{background:#0000;border:none;border-radius:8px;color:#7f8c8d;color:var(--sl-text-light);cursor:pointer;padding:10px;transition:all .2s ease}.view-toggle-sectors:hover{background:#fff;background:var(--sl-bg-white)}.view-toggle-sectors.active{background:#17a2b8;background:var(--sl-info);color:#fff;color:var(--sl-bg-white)}.results-info-sectors{color:#7f8c8d;color:var(--sl-text-light);font-size:14px}.sectors-grid-modern{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:25px}.sector-card-modern{background:#fff;background:var(--sl-bg-white);border-left:4px solid #0000;border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--sl-shadow);overflow:hidden;transition:all .3s ease}.sector-card-modern:hover{border-left-color:#17a2b8;border-left-color:var(--sl-info);box-shadow:0 8px 25px #00000026;box-shadow:0 8px 25px var(--sl-shadow-lg);transform:translateY(-5px)}.sector-card-header-modern{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--sl-border);display:flex;gap:15px;padding:20px}.sector-avatar-modern{align-items:center;background:linear-gradient(135deg,#17a2b8,#138496);background:linear-gradient(135deg,var(--sl-info) 0,var(--sl-info-hover) 100%);border-radius:10px;color:#fff;color:var(--sl-bg-white);display:flex;flex-shrink:0;font-size:20px;font-weight:700;height:50px;justify-content:center;width:50px}.sector-title-modern{flex:1 1;min-width:0}.sector-title-modern h3{color:#2c3e50;color:var(--sl-text-dark);font-size:18px;font-weight:700;margin:0 0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge-sectors{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:4px 10px;text-transform:uppercase}.status-pending-sector{background:#f39c121a;color:#f39c12}.status-in-progress-sector{background:#3498db1a;color:#3498db}.status-completed-sector{background:#2ecc711a;color:#2ecc71}.sector-card-body-modern{display:flex;flex-direction:column;gap:12px;padding:20px}.sector-detail-item{align-items:center;color:#2c3e50;color:var(--sl-text-dark);display:flex;font-size:14px;gap:10px}.sector-detail-item svg{color:#17a2b8;color:var(--sl-info);flex-shrink:0}.sector-card-footer-modern{border-top:1px solid #e0e0e0;border-top:1px solid var(--sl-border);display:flex;gap:10px;justify-content:flex-end;padding:15px 20px}.action-btn-sectors{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .3s ease}.action-btn-sectors.edit{background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--sl-primary) 0,var(--sl-primary-hover) 100%);color:#fff;color:var(--sl-bg-white)}.action-btn-sectors.delete{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--sl-danger) 0,var(--sl-danger-hover) 100%);color:#fff;color:var(--sl-bg-white)}.action-btn-sectors:hover{box-shadow:0 4px 12px #00000026;box-shadow:0 4px 12px var(--sl-shadow-lg);transform:translateY(-2px)}.sectors-table-container{background:#fff;background:var(--sl-bg-white);border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--sl-shadow);margin-bottom:25px;overflow:hidden}.sectors-table-modern{border-collapse:collapse;width:100%}.sectors-table-modern th{background:#f8f9fa;background:var(--sl-bg-light);border-bottom:2px solid #e0e0e0;border-bottom:2px solid var(--sl-border);font-weight:600;text-align:left}.sectors-table-modern td,.sectors-table-modern th{color:#2c3e50;color:var(--sl-text-dark);font-size:14px;padding:15px 20px}.sectors-table-modern td{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--sl-border)}.sectors-table-modern tr:hover{background:#f8f9fa;background:var(--sl-bg-light)}.sector-name-cell{font-weight:600}.action-buttons-table{display:flex;gap:8px}.empty-state-sectors,.loading-state-sectors{align-items:center;background:#fff;background:var(--sl-bg-white);border-radius:16px;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.spinner-sectors{animation:slSpin 1s linear infinite;border:4px solid #f8f9fa;border-top-color:#17a2b8;border:4px solid var(--sl-bg-light);border-radius:50%;border-top-color:var(--sl-info);height:50px;margin-bottom:20px;width:50px}@keyframes slSpin{to{transform:rotate(1turn)}}.empty-state-sectors svg{color:#ccc;margin-bottom:20px}.empty-state-sectors h3{color:#2c3e50;color:var(--sl-text-dark);font-size:24px;margin:0 0 10px}.empty-state-sectors p{color:#7f8c8d;color:var(--sl-text-light);margin:0 0 20px;max-width:500px}.pagination-sectors{align-items:center;display:flex;gap:8px;justify-content:center;margin-top:25px}.page-numbers-sectors{align-items:center;display:flex;gap:5px}.page-btn-sectors{align-items:center;background:#f8f9fa;background:var(--sl-bg-light);border:2px solid #e0e0e0;border:2px solid var(--sl-border);border-radius:8px;cursor:pointer;display:flex;font-weight:600;height:40px;justify-content:center;min-width:40px;transition:all .2s ease}.page-btn-sectors:hover:not(:disabled){transform:translateY(-2px)}.page-btn-sectors.active,.page-btn-sectors:hover:not(:disabled){background:#17a2b8;background:var(--sl-info);border-color:#17a2b8;border-color:var(--sl-info);color:#fff;color:var(--sl-bg-white)}.page-btn-sectors:disabled{cursor:not-allowed;opacity:.4}.ellipsis-sectors{color:#7f8c8d;color:var(--sl-text-light);padding:0 5px}.confirm-dialog-sectors{animation:slFadeIn .3s ease;background:#fff;background:var(--sl-bg-white);border-radius:16px;box-shadow:0 10px 40px #00000026;box-shadow:0 10px 40px var(--sl-shadow-lg);max-width:450px;padding:30px;width:90%}.confirm-icon-sectors{align-items:center;background:linear-gradient(135deg,#e74c3c1a,#c0392b1a);border-radius:50%;display:flex;height:80px;justify-content:center;margin:0 auto 20px;width:80px}.confirm-icon-sectors svg{color:#e74c3c;color:var(--sl-danger)}.confirm-dialog-sectors h3{color:#2c3e50;color:var(--sl-text-dark);font-size:24px;margin:0 0 15px;text-align:center}.confirm-dialog-sectors p{color:#7f8c8d;color:var(--sl-text-light);line-height:1.6;margin:0 0 25px;text-align:center}.confirm-actions-sectors{display:flex;gap:12px}.btn-cancel-confirm,.btn-confirm-delete{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-cancel-confirm{background:#f8f9fa;background:var(--sl-bg-light);color:#2c3e50;color:var(--sl-text-dark)}.btn-cancel-confirm:hover{background:#e0e0e0;background:var(--sl-border)}.btn-confirm-delete{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--sl-danger) 0,var(--sl-danger-hover) 100%);color:#fff;color:var(--sl-bg-white)}.btn-confirm-delete:hover{box-shadow:0 4px 12px #e74c3c66;transform:translateY(-2px)}@media (max-width:1024px){.sectors-grid-modern{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.sectors-management-container{padding:15px}.sectors-header-modern{padding:20px}.header-content-sectors{align-items:flex-start;flex-direction:column}.title-icon-sectors{height:60px;width:60px}.page-title-sectors{font-size:24px}.stats-section-sectors{grid-template-columns:1fr}.filters-row-sectors{flex-direction:column}.filter-date-sectors,.filter-select-sectors{min-width:100%}.view-controls-sectors{align-items:flex-start;flex-direction:column;gap:15px}.sectors-grid-modern{grid-template-columns:1fr}.sectors-table-container{overflow-x:auto}}@media (max-width:480px){.sectors-header-modern{padding:15px}.header-title-section-sectors{align-items:flex-start;flex-direction:column}.title-icon-sectors{height:50px;width:50px}.page-title-sectors{font-size:20px}.sector-card-header-modern,.stat-card-sectors{flex-direction:column;text-align:center}.sector-avatar-modern{margin:0 auto}.confirm-actions-sectors{flex-direction:column-reverse}}.modal-overlay{padding:1rem}.modal-content{animation:fadeInUp .3s;background-color:#fff;background-color:var(--bg-card);border-radius:8px;border-radius:var(--radius);box-shadow:0 10px 25px #0003;max-width:500px;padding:2rem;position:relative;width:100%}.modal-close{background:none;border:none;border-radius:50%;color:#6c757d;color:var(--text-muted);cursor:pointer;font-size:1.5rem;line-height:1;padding:.25rem .5rem;position:absolute;right:.75rem;top:.75rem;transition:all .3s ease;transition:var(--transition)}.modal-close:hover{background-color:#0000000d;color:#e74c3c;color:var(--danger-color)}.modal-content form{display:flex;flex-direction:column;gap:1.25rem}.modal-content h2{border-bottom:2px solid #3498db;border-bottom:2px solid var(--primary-color);color:#3498db;color:var(--primary-color);font-size:1.5rem;margin-bottom:1.5rem;margin-top:0;padding-bottom:.75rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:#333;color:var(--text-dark);font-size:.95rem}.modal-content input[type=text]{border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius);font-size:1rem;padding:.75rem 1rem;transition:all .3s ease;transition:var(--transition);width:100%}.modal-content input[type=text]:focus{border-color:#3498db;border-color:var(--primary-color);box-shadow:0 0 0 3px #3498db33;outline:none}.modal-content textarea{border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius);font-family:inherit;font-size:1rem;min-height:120px;padding:.75rem 1rem;resize:vertical;transition:all .3s ease;transition:var(--transition);width:100%}.modal-content textarea:focus{border-color:#3498db;border-color:var(--primary-color);box-shadow:0 0 0 3px #3498db33;outline:none}.modal-content button[type=submit]{background-color:#3498db;background-color:var(--primary-color);border:none;border-radius:8px;border-radius:var(--radius);color:#fff;cursor:pointer;font-weight:600;margin-top:.5rem;padding:.75rem 1.25rem;transition:all .3s ease;transition:var(--transition)}.modal-content button[type=submit]:hover{background-color:#2980b9;background-color:var(--primary-hover)}.required-field:after{color:#e74c3c;color:var(--danger-color);content:"*";margin-left:.25rem}.form-actions{gap:1rem;margin-top:.5rem}.btn-cancel-form{background-color:#f8f9fa;background-color:var(--bg-light);border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius);cursor:pointer;font-weight:500;padding:.75rem 1.25rem;transition:all .3s ease;transition:var(--transition)}.btn-cancel-form:hover{background-color:#e9ecef}.form-error{color:#e74c3c;color:var(--danger-color);font-size:.85rem;margin-top:.25rem}.input-icon-wrapper{position:relative}.input-icon{color:#6c757d;color:var(--text-muted);left:.75rem;top:50%;transform:translateY(-50%)}.input-with-icon{padding-left:2.5rem}.modal-content button:focus,.modal-content input:focus,.modal-content select:focus,.modal-content textarea:focus{box-shadow:0 0 0 3px #3498db33;outline:none}@media (max-width:576px){.modal-content{padding:1.5rem}.form-actions{flex-direction:column;gap:.5rem}.form-actions button{width:100%}}.loading-button{padding-left:2.5rem!important;position:relative}.loading-button:before{animation:spin 1s ease-in-out infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;content:"";height:1rem;left:1rem;position:absolute;top:50%;transform:translateY(-50%);width:1rem}.tooltip{cursor:help;display:inline-block;margin-left:.5rem;position:relative}.tooltip-icon{align-items:center;background-color:#6c757d;background-color:var(--text-muted);border-radius:50%;color:#fff;display:inline-flex;font-size:12px;font-weight:700;height:18px;justify-content:center;width:18px}.tooltip-text{background-color:#333;border-radius:6px;bottom:125%;color:#fff;font-size:.85rem;left:50%;opacity:0;padding:.5rem;position:absolute;text-align:center;transform:translateX(-50%);transition:opacity .3s;visibility:hidden;width:200px;z-index:1}.tooltip:hover .tooltip-text{opacity:1;visibility:visible}:root{--danger-color:#e74c3c;--danger-hover:#c0392b;--success-hover:#27ae60;--bg-light:#f8f9fa;--bg-card:#fff;--text-dark:#333;--text-muted:#6c757d;--border-color:#dee2e6;--shadow:0 4px 6px #0000001a;--radius:8px;--transition:all 0.3s ease}.circunscripciones-container{color:#333;color:var(--text-dark);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1200px;padding:2rem}.circunscripciones-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.circunscripciones-header h2{color:#3498db;color:var(--primary-color);font-size:1.8rem;margin:0;position:relative}.circunscripciones-header h2:after{background-color:#3498db;background-color:var(--primary-color);bottom:-8px;content:"";height:3px;left:0;position:absolute;width:60px}.filter-section{margin-bottom:1.5rem}.search-box{max-width:400px;position:relative}.search-box input{border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius);font-size:1rem;padding:.75rem 1rem .75rem 2.5rem;transition:all .3s ease;transition:var(--transition);width:100%}.search-box input:focus{border-color:#3498db;border-color:var(--primary-color);box-shadow:0 0 0 3px #3498db33;outline:none}.search-icon{color:#6c757d;color:var(--text-muted);left:12px;position:absolute;top:50%;transform:translateY(-50%)}.view-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.view-toggles{background-color:#f8f9fa;background-color:var(--bg-light);border-radius:8px;border-radius:var(--radius);display:flex;overflow:hidden}.view-toggle{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:.6rem 1rem;transition:all .3s ease;transition:var(--transition)}.view-toggle.active{background-color:#3498db;background-color:var(--primary-color);color:#fff}.view-toggle:not(.active):hover{background-color:#3498db1a}.results-info{color:#6c757d;color:var(--text-muted);font-size:.9rem}.circunscripciones-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:2rem}.circunscripcion-card{background-color:#fff;background-color:var(--bg-card);border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius);box-shadow:0 4px 6px #0000001a;box-shadow:var(--shadow);display:flex;flex-direction:column;overflow:hidden;transition:all .3s ease;transition:var(--transition)}.circunscripcion-card:hover{box-shadow:0 10px 15px #0000001a;transform:translateY(-5px)}.circunscripcion-card-header{background-color:#3498db;background-color:var(--primary-color);color:#fff;padding:1.25rem}.circunscripcion-card-header h3{font-size:1.2rem;font-weight:600;margin:0}.circunscripcion-card-body{flex-grow:1;padding:1.25rem}.circunscripcion-card-body p{color:#6c757d;color:var(--text-muted);line-height:1.6;margin:0}.circunscripcion-card-footer{background-color:#f8f9fa;background-color:var(--bg-light);display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.25rem}.circunscripciones-table{border-collapse:initial;border-radius:8px;border-radius:var(--radius);border-spacing:0;box-shadow:0 4px 6px #0000001a;box-shadow:var(--shadow);margin-bottom:2rem;overflow:hidden;width:100%}.circunscripciones-table th{background-color:#f8f9fa;background-color:var(--bg-light);border-bottom:2px solid #dee2e6;border-bottom:2px solid var(--border-color);font-weight:600;padding:1rem;text-align:left}.circunscripciones-table td{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color);padding:1rem;vertical-align:middle}.circunscripciones-table tr:last-child td{border-bottom:none}.circunscripciones-table tr:hover{background-color:#3498db0d}.action-buttons{display:flex;gap:.5rem}.pagination-container{align-items:center;display:flex;gap:1rem;justify-content:center;margin-top:2rem}.pagination-button{background-color:#f8f9fa;background-color:var(--bg-light);border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius);cursor:pointer;font-size:.9rem;padding:.6rem 1rem;transition:all .3s ease;transition:var(--transition)}.pagination-button:hover:not(:disabled){background-color:#3498db;background-color:var(--primary-color);border-color:#3498db;border-color:var(--primary-color);color:#fff}.pagination-button:disabled{cursor:not-allowed;opacity:.5}.pagination-info{color:#6c757d;color:var(--text-muted);font-size:.9rem}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:3rem;text-align:center}.loading-spinner{animation:spin 1s ease-in-out infinite;border:3px solid #3498db33;border-radius:50%;border-top:3px solid var(--primary-color);height:40px;margin-bottom:1rem;width:40px}.no-results{background-color:#f8f9fa;background-color:var(--bg-light);border-radius:8px;border-radius:var(--radius);color:#6c757d;color:var(--text-muted);padding:3rem;text-align:center}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.confirm-dialog{animation:fadeInUp .3s;background-color:#fff;background-color:var(--bg-card);border-radius:8px;border-radius:var(--radius);box-shadow:0 10px 25px #0003;max-width:450px;padding:1.5rem;width:100%}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.confirm-dialog h3{color:#e74c3c;color:var(--danger-color);margin-top:0}.confirm-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.btn-primary{align-items:center;background-color:#3498db;background-color:var(--primary-color);border:none;border-radius:8px;border-radius:var(--radius);color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;padding:.75rem 1.25rem;transition:all .3s ease;transition:var(--transition)}.btn-primary:hover{background-color:#2980b9;background-color:var(--primary-hover)}.btn-edit{background-color:#3498db;background-color:var(--primary-color);border:none;border-radius:8px;border-radius:var(--radius);color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .3s ease;transition:var(--transition)}.btn-edit:hover{background-color:#2980b9;background-color:var(--primary-hover)}.btn-delete{background-color:#e74c3c;background-color:var(--danger-color);border:none;border-radius:8px;border-radius:var(--radius);color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .3s ease;transition:var(--transition)}.btn-delete:hover{background-color:#c0392b;background-color:var(--danger-hover)}.btn-cancel{background-color:#f8f9fa;background-color:var(--bg-light);border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius);cursor:pointer;font-weight:500;padding:.6rem 1.25rem;transition:all .3s ease;transition:var(--transition)}.btn-cancel:hover{background-color:#e9ecef}.btn-confirm{background-color:#e74c3c;background-color:var(--danger-color);border:none;border-radius:8px;border-radius:var(--radius);color:#fff;cursor:pointer;font-weight:500;padding:.6rem 1.25rem;transition:all .3s ease;transition:var(--transition)}.btn-confirm:hover{background-color:#c0392b;background-color:var(--danger-hover)}@media (max-width:768px){.circunscripciones-container{padding:1rem}.circunscripciones-header,.view-controls{align-items:flex-start;flex-direction:column}.circunscripciones-grid{grid-template-columns:1fr}.circunscripciones-table{display:block;overflow-x:auto}.pagination-container{flex-wrap:wrap}}.btn-cancel,.btn-confirm,.btn-delete,.btn-edit,.btn-primary,.circunscripcion-card,.pagination-button,.view-toggle,input{transition:all .3s ease;transition:var(--transition)}.completion-dialog-overlay{animation:fadeIn .2s ease}.completion-dialog{max-height:90vh;max-width:600px;overflow-y:auto;width:95%}.completion-dialog-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:24px}.close-btn,.completion-dialog-header h2{font-size:20px}.close-btn{background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;height:32px;transition:all .2s;width:32px}.close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.completion-dialog-body{padding:24px}.sector-info{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;margin-bottom:24px;padding:12px 16px}.form-group{margin-bottom:20px}.form-group label{color:#2c3e50;font-weight:600}.required{color:#e74c3c;margin-right:4px}.form-group textarea{border:2px solid #e0e0e0;border-radius:8px;font-family:inherit;font-size:14px;padding:12px;resize:vertical;transition:border-color .2s;width:100%}.form-group textarea:focus{border-color:#667eea;outline:none}.form-actions{border-top:2px solid #f0f0f0;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.btn{border:none;border-radius:8px;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s}.btn-secondary{background:#f0f0f0;color:#333}.btn-secondary:hover{background:#e0e0e0}.btn-success{background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff}.btn-success:hover{box-shadow:0 4px 12px #2ecc7166;transform:translateY(-2px)}.btn:disabled{cursor:not-allowed;opacity:.6}:root{--map-primary:#3498db;--map-primary-hover:#2980b9;--map-success:#2ecc71;--map-success-hover:#27ae60;--map-danger:#e74c3c;--map-danger-hover:#c0392b;--map-warning:#f39c12;--map-warning-hover:#e67e22;--map-info:#17a2b8;--map-purple:#9b59b6;--map-purple-hover:#8e44ad;--map-orange:#e67e22;--map-bg-light:#f8f9fa;--map-bg-white:#fff;--map-text-dark:#2c3e50;--map-text-light:#7f8c8d;--map-border:#e0e0e0;--map-shadow:#0000001a;--map-shadow-lg:#00000026}.mapa-container{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:16px;box-shadow:0 4px 20px #0000001a;box-shadow:0 4px 20px var(--map-shadow);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:calc(100vh - 50px);padding:25px}.mapa-header{animation:mapSlideDown .5s ease;background:#fff;background:var(--map-bg-white);border-radius:12px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--map-shadow);margin-bottom:20px;padding:25px 30px}@keyframes mapSlideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.mapa-titulo{align-items:center;color:#3498db;color:var(--map-primary);display:flex;font-size:28px;font-weight:700;gap:15px;margin:0 0 20px;position:relative}.mapa-titulo:before{content:"🗺️";font-size:32px}.mapa-titulo:after{background:linear-gradient(90deg,#3498db,#2ecc71);background:linear-gradient(90deg,var(--map-primary) 0,var(--map-success) 100%);border-radius:2px;bottom:-10px;content:"";height:4px;left:0;position:absolute;width:100px}.mapa-controls{align-items:stretch;display:flex;flex-wrap:wrap;gap:12px}.search-container{flex:1 1 300px;min-width:250px;position:relative}.mapa-input{background:#fff;background:var(--map-bg-white);border:2px solid #e0e0e0;border:2px solid var(--map-border);border-radius:10px;box-shadow:0 2px 8px #0000000d;font-size:15px;padding:14px 18px 14px 45px;transition:all .3s ease;width:100%}.search-container:before{content:"🔍";font-size:18px;left:15px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.mapa-input:focus{border-color:#3498db;border-color:var(--map-primary);box-shadow:0 0 0 4px #3498db1a;outline:none}.sugerencias-lista{animation:mapFadeIn .2s ease;background:#fff;background:var(--map-bg-white);border-radius:10px;box-shadow:0 8px 25px #00000026;box-shadow:0 8px 25px var(--map-shadow-lg);left:0;list-style:none;margin:0;max-height:300px;overflow-y:auto;padding:8px 0;position:absolute;right:0;top:calc(100% + 5px);z-index:1000}@keyframes mapFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.sugerencia-item{align-items:center;cursor:pointer;display:flex;gap:10px;padding:12px 18px;transition:all .2s ease}.sugerencia-item:before{content:"📍";font-size:16px}.sugerencia-item:hover{background:linear-gradient(90deg,#3498db1a,#2ecc711a);padding-left:22px}.button{align-items:center;border:none;border-radius:10px;box-shadow:0 2px 8px #0000001a;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:14px 20px;transition:all .3s ease;white-space:nowrap}.button svg{flex-shrink:0}.button:not(.button-secondary):not(.button-danger):not(.button-warning):not(.button-success){background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--map-primary) 0,var(--map-primary-hover) 100%);color:#fff;color:var(--map-bg-white)}.button:not(.button-secondary):not(.button-danger):not(.button-warning):not(.button-success):hover{box-shadow:0 6px 20px #3498db66;transform:translateY(-2px)}.button-secondary{background:#fff;background:var(--map-bg-white);border:2px solid #e0e0e0;border:2px solid var(--map-border);color:#2c3e50;color:var(--map-text-dark)}.button-secondary:hover{background:#f8f9fa;background:var(--map-bg-light);border-color:#2c3e50;border-color:var(--map-text-dark);transform:translateY(-2px)}.button-danger{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--map-danger) 0,var(--map-danger-hover) 100%);color:#fff;color:var(--map-bg-white)}.button-danger:hover{box-shadow:0 6px 20px #e74c3c66;transform:translateY(-2px)}.button-warning{background:linear-gradient(135deg,#f39c12,#e67e22);background:linear-gradient(135deg,var(--map-warning) 0,var(--map-warning-hover) 100%);color:#fff;color:var(--map-bg-white)}.button-warning:hover{box-shadow:0 6px 20px #f39c1266;transform:translateY(-2px)}.button-success{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--map-success) 0,var(--map-success-hover) 100%);color:#fff;color:var(--map-bg-white)}.button-success:hover{box-shadow:0 6px 20px #2ecc7166;transform:translateY(-2px)}.button-primary{background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--map-primary) 0,var(--map-primary-hover) 100%);color:#fff;color:var(--map-bg-white)}.button-primary:hover{box-shadow:0 6px 20px #3498db66;transform:translateY(-2px)}.mapa-content{background:#fff;background:var(--map-bg-white);border-radius:12px;box-shadow:0 4px 20px #0000001a;box-shadow:0 4px 20px var(--map-shadow);height:calc(100vh - 250px);min-height:600px;overflow:hidden;position:relative}.loading-indicator{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#fffffff2;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1000}.spinner{animation:mapSpin 1s linear infinite;border:4px solid #3498db33;border-top:4px solid var(--map-primary);height:50px;margin-bottom:15px;width:50px}@keyframes mapSpin{to{transform:rotate(1turn)}}.loading-indicator:after{color:#2c3e50;color:var(--map-text-dark);content:"Cargando mapa...";font-size:16px;font-weight:600}.sectores-programados-panel{animation:mapSlideIn .5s ease;background:#fff;background:var(--map-bg-white);border-radius:12px;box-shadow:0 8px 25px #00000026;box-shadow:0 8px 25px var(--map-shadow-lg);display:flex;flex-direction:column;left:20px;max-height:calc(100% - 140px);overflow:hidden;position:absolute;top:20px;width:380px;z-index:10}@keyframes mapSlideIn{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}.sectores-programados-header{align-items:center;background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--map-primary) 0,var(--map-primary-hover) 100%);color:#fff;color:var(--map-bg-white);display:flex;flex-shrink:0;justify-content:space-between;padding:20px}.sectores-programados-header h3{align-items:center;display:flex;font-size:18px;font-weight:700;gap:10px;margin:0}.sectores-programados-header h3:before{content:"📅";font-size:20px}.badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff40;border-radius:20px;font-size:13px;font-weight:600;padding:6px 14px}.sectores-programados-body{flex:1 1;overflow-y:auto;padding:15px}.sectores-programados-body::-webkit-scrollbar{width:6px}.sectores-programados-body::-webkit-scrollbar-track{background:#f1f1f1}.sectores-programados-body::-webkit-scrollbar-thumb{background:#bbb;border-radius:3px}.sectores-programados-body::-webkit-scrollbar-thumb:hover{background:#999}.no-sectores{color:#7f8c8d;color:var(--map-text-light);font-size:14px;padding:40px 20px;text-align:center}.no-sectores:before{content:"📭";display:block;font-size:48px;margin-bottom:15px}.fecha-grupo{margin-bottom:25px}.fecha-grupo:last-child{margin-bottom:0}.fecha-titulo{background:linear-gradient(90deg,#3498db1a,#2ecc711a);border-left:4px solid #3498db;border-left:4px solid var(--map-primary);border-radius:8px;color:#2c3e50;color:var(--map-text-dark);font-size:14px;font-weight:700;margin-bottom:12px;padding:8px 12px;text-transform:capitalize}.sectores-lista{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.sector-item{background:#f8f9fa;background:var(--map-bg-light);border-left:4px solid #0000;border-radius:10px;cursor:pointer;overflow:hidden;padding:14px;position:relative;transition:all .3s ease}.sector-item:before{background:linear-gradient(90deg,#3498db0d,#0000);content:"";height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .3s ease;width:100%}.sector-item:hover{background:#fff;background:var(--map-bg-white);border-left-color:#3498db;border-left-color:var(--map-primary);box-shadow:0 4px 15px #0000001a;box-shadow:0 4px 15px var(--map-shadow);transform:translateX(5px)}.sector-item:hover:before{opacity:1}.sector-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px;position:relative;z-index:1}.sector-name{color:#2c3e50;color:var(--map-text-dark);font-size:15px;font-weight:600}.sector-status-badge{border-radius:12px;color:#fff;color:var(--map-bg-white);font-size:11px;font-weight:700;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.sector-description{color:#7f8c8d;color:var(--map-text-light);font-size:13px;line-height:1.5;margin:0;position:relative;z-index:1}.legend-toggle-btn{align-items:center;border:none;border-radius:50%;bottom:20px;box-shadow:0 3px 10px #0003;cursor:pointer;display:flex;font-size:20px;height:45px;justify-content:center;width:45px;z-index:10000}.legend,.legend-toggle-btn{background:#fff;position:absolute;right:20px}.legend{animation:fadeIn .2s ease-in-out;border-radius:10px;bottom:80px;box-shadow:0 3px 12px #0003;max-width:240px;padding:14px 18px;z-index:9999}.legend-item{gap:8px;margin-bottom:6px}.legend-title{border-bottom:2px solid #e0e0e0;border-bottom:2px solid var(--map-border);font-size:15px;font-weight:700;margin-bottom:12px;padding-bottom:10px}.legend-item,.legend-title{color:#2c3e50;color:var(--map-text-dark)}.legend-item{font-size:13px;margin-bottom:10px}.legend-item:hover{transform:translateX(3px)}.legend-item:last-child{margin-bottom:0}.legend-color{border-radius:4px;box-shadow:0 2px 4px #0000001a;box-shadow:0 2px 4px var(--map-shadow);height:18px;margin-right:10px;width:18px}.popup-container{background:#fff;background:var(--map-bg-white);border-radius:12px;box-shadow:0 8px 25px #00000026;box-shadow:0 8px 25px var(--map-shadow-lg);overflow:hidden;width:280px}.popup-header{color:#fff;color:var(--map-bg-white);padding:15px 18px}.popup-header h3{font-size:17px;font-weight:700;margin:0}.popup-body{padding:15px 18px}.popup-body p{color:#2c3e50;color:var(--map-text-dark);font-size:14px;margin:8px 0}.popup-button{background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--map-primary) 0,var(--map-primary-hover) 100%);border:none;border-radius:8px;color:#fff;color:var(--map-bg-white);cursor:pointer;font-weight:600;margin-top:12px;padding:10px;transition:all .3s ease;width:100%}.popup-button:hover{box-shadow:0 4px 12px #3498db66;transform:translateY(-2px)}.modo-edicion-panel{animation:mapSlideInRight .5s ease;background:#fff;background:var(--map-bg-white);border-radius:12px;box-shadow:0 8px 25px #00000026;box-shadow:0 8px 25px var(--map-shadow-lg);overflow:hidden;position:absolute;right:20px;top:20px;width:350px;z-index:1000}@keyframes mapSlideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}.modo-edicion-header{align-items:center;background:linear-gradient(135deg,#9b59b6,#8e44ad);background:linear-gradient(135deg,var(--map-purple) 0,var(--map-purple-hover) 100%);color:#fff;color:var(--map-bg-white);display:flex;justify-content:space-between;padding:18px 20px}.modo-edicion-header h3{align-items:center;display:flex;font-size:17px;font-weight:700;gap:10px;margin:0}.modo-edicion-header h3:before{content:"✏️";font-size:20px}.close-button{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;color:var(--map-bg-white);cursor:pointer;display:flex;font-size:20px;height:32px;justify-content:center;transition:all .3s ease;width:32px}.close-button:hover{background:#ffffff4d;transform:rotate(90deg)}.modo-edicion-body{padding:20px}.modo-edicion-info{align-items:flex-start;background:linear-gradient(135deg,#9b59b61a,#8e44ad1a);border-left:4px solid #9b59b6;border-left:4px solid var(--map-purple);border-radius:10px;display:flex;gap:12px;margin-bottom:15px;padding:14px}.modo-edicion-info svg{color:#9b59b6;color:var(--map-purple);flex-shrink:0;margin-top:2px}.modo-edicion-info p{line-height:1.6;margin:0}.modo-edicion-info p,.puntos-counter{color:#2c3e50;color:var(--map-text-dark);font-size:14px}.puntos-counter{align-items:center;background:linear-gradient(135deg,#2ecc711a,#27ae601a);border-left:4px solid #2ecc71;border-left:4px solid var(--map-success);border-radius:10px;display:flex;gap:10px;margin-bottom:15px;padding:14px}.puntos-counter:before{content:"📍";font-size:20px}.puntos-counter strong{color:#2ecc71;color:var(--map-success);font-weight:700}.modo-edicion-actions{display:flex;flex-direction:column;gap:10px}.modo-edicion-actions .button{justify-content:center;width:100%}.sector-info-panel{animation:mapSlideInRight .5s ease;background:#fff;background:var(--map-bg-white);border-radius:12px;box-shadow:0 8px 25px #00000026;box-shadow:0 8px 25px var(--map-shadow-lg);display:flex;flex-direction:column;max-height:calc(100% - 40px);overflow:hidden;position:absolute;right:20px;top:20px;width:420px;z-index:1000}.sector-info-header{background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--map-primary) 0,var(--map-primary-hover) 100%);color:#fff;color:var(--map-bg-white);flex-shrink:0;padding:22px 25px;position:relative}.sector-info-header.status-pendiente{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--map-danger) 0,var(--map-danger-hover) 100%)}.sector-info-header.status-proceso{background:linear-gradient(135deg,#f39c12,#e67e22);background:linear-gradient(135deg,var(--map-warning) 0,var(--map-warning-hover) 100%)}.sector-info-header.status-listo{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--map-success) 0,var(--map-success-hover) 100%)}.sector-info-title{font-size:20px;font-weight:700;line-height:1.4;margin:0;padding-right:40px}.sector-info-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;color:var(--map-bg-white);cursor:pointer;display:flex;font-size:22px;height:36px;justify-content:center;position:absolute;right:18px;top:18px;transition:all .3s ease;width:36px}.sector-info-close:hover{background:#ffffff4d;transform:rotate(90deg)}.sector-info-body{flex:1 1;overflow-y:auto;padding:25px}.sector-info-body::-webkit-scrollbar{width:6px}.sector-info-body::-webkit-scrollbar-track{background:#f1f1f1}.sector-info-body::-webkit-scrollbar-thumb{background:#bbb;border-radius:3px}.sector-info-body::-webkit-scrollbar-thumb:hover{background:#999}.sector-info-row{align-items:flex-start;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--map-border);display:flex;padding:14px 0;transition:all .2s ease}.sector-info-row:hover{background:#3498db08;border-radius:6px;margin-left:-10px;padding-left:10px}.sector-info-row:last-child{border-bottom:none}.sector-info-label{flex-shrink:0;font-weight:700;padding-right:15px;width:45%}.sector-info-label,.sector-info-value{color:#2c3e50;color:var(--map-text-dark);font-size:14px}.sector-info-value{line-height:1.6;width:55%;word-break:break-word}.sector-status{align-items:center;border-radius:20px;color:#fff;color:var(--map-bg-white);display:inline-flex;font-size:12px;font-weight:700;gap:6px;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase}.sector-status:before{animation:pulse 2s infinite;content:"●";font-size:10px}.status-pendiente{background:linear-gradient(135deg,#e74c3c,#c0392b);background:linear-gradient(135deg,var(--map-danger) 0,var(--map-danger-hover) 100%)}.status-proceso{background:linear-gradient(135deg,#f39c12,#e67e22);background:linear-gradient(135deg,var(--map-warning) 0,var(--map-warning-hover) 100%)}.status-listo{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--map-success) 0,var(--map-success-hover) 100%)}.history-section{border-top:2px solid #e0e0e0;border-top:2px solid var(--map-border);margin-top:15px;padding-top:20px}.history-title{align-items:center;color:#2c3e50;color:var(--map-text-dark);display:flex;font-size:15px;font-weight:700;gap:8px;margin-bottom:15px}.history-title:before{content:"📋";font-size:18px}.history-list{list-style:none;margin:0;padding:0}.history-item{background:#f8f9fa;background:var(--map-bg-light);border-left:4px solid #3498db;border-left:4px solid var(--map-primary);border-radius:10px;margin-bottom:10px;padding:14px;transition:all .2s ease}.history-item:hover{background:#fff;background:var(--map-bg-white);box-shadow:0 2px 8px #0000001a;box-shadow:0 2px 8px var(--map-shadow);transform:translateX(5px)}.history-item:last-child{margin-bottom:0}.history-comment{color:#2c3e50;color:var(--map-text-dark);font-size:13px;font-weight:600;line-height:1.6;margin-bottom:8px}.history-date{align-items:center;color:#7f8c8d;color:var(--map-text-light);display:flex;font-size:12px;gap:6px}.history-date:before{content:"📅";font-size:12px}.history-more{background:linear-gradient(135deg,#3498db1a,#2ecc711a);border-radius:8px;color:#3498db;color:var(--map-primary);font-size:13px;font-weight:600;margin-top:10px;padding:12px;text-align:center}.sector-info-actions{border-top:2px solid #e0e0e0;border-top:2px solid var(--map-border);display:flex;flex-shrink:0;gap:12px;margin-top:20px;padding-top:20px}.sector-info-actions .button{flex:1 1}.sector-info-value a{align-items:center;color:#3498db;color:var(--map-primary);display:inline-flex;font-weight:600;gap:5px;text-decoration:none;transition:all .2s ease}.sector-info-value a:hover{color:#2980b9;color:var(--map-primary-hover);transform:translateX(3px)}.sector-info-value a:after{content:"↗";font-size:14px}.user-location-pulse{height:20px;width:20px}@media (max-width:1200px){.mapa-controls{gap:10px}.button{font-size:13px;padding:12px 16px}.sectores-programados-panel{width:320px}.sector-info-panel{width:360px}}@media (max-width:992px){.mapa-container{padding:15px}.mapa-header{padding:20px}.mapa-titulo{font-size:24px}.modo-edicion-panel,.sector-info-panel,.sectores-programados-panel{left:15px;right:15px;width:calc(100% - 30px)}.sector-info-panel{max-height:60vh}}@media (max-width:768px){.mapa-controls{flex-direction:column}.search-container{flex:1 1 100%}.button{justify-content:center;width:100%}.mapa-content{height:calc(100vh - 350px);min-height:400px}.sector-info-row{flex-direction:column;gap:8px}.sector-info-label,.sector-info-value{width:100%}.sector-info-actions{flex-direction:column}.legend{bottom:10px;left:10px;min-width:auto;right:10px}}@media (max-width:480px){.mapa-container{padding:10px}.mapa-header{padding:15px}.mapa-titulo{font-size:20px}.mapa-titulo:before{font-size:24px}.mapa-content{border-radius:8px}}.ol-zoom{border-radius:8px;box-shadow:0 2px 10px #0000001a;box-shadow:0 2px 10px var(--map-shadow)}.ol-zoom,.ol-zoom button{background:#fff;background:var(--map-bg-white)}.ol-zoom button{border-radius:4px;color:#2c3e50;color:var(--map-text-dark);margin:2px}.ol-zoom button:hover{background:#3498db;background:var(--map-primary);color:#fff;color:var(--map-bg-white)}.ol-attribution{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#fffc;font-size:11px}.users-online-panel{background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000026;display:flex;flex-direction:column;max-height:calc(100vh - 200px);position:absolute;right:20px;top:120px;width:300px;z-index:10}.users-panel-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:16px}.users-panel-header h3{align-items:center;display:flex;font-size:16px;font-weight:600;gap:8px;margin:0}.socket-status{align-items:center;color:#666;display:flex;font-size:12px;gap:6px}.status-dot{border-radius:50%;height:8px;width:8px}.status-dot.connected{animation:pulse 2s infinite;background-color:#2ecc71}.status-dot.disconnected{background-color:#e74c3c}.users-panel-body{max-height:500px;overflow-y:auto}.users-list{list-style:none;margin:0;padding:0}.user-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;gap:12px;padding:12px 16px;transition:background .2s}.user-item:hover{background:#f8f9fa}.user-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:14px;font-weight:700;height:30px;justify-content:center;width:30px}.user-info{flex:1 1}.user-name{color:#333;font-size:14px;font-weight:600}.user-role{color:#666;font-size:12px}.user-location-time{color:#999;font-size:11px;margin-top:2px}.btn-locate{background:none;border:none;cursor:pointer;font-size:18px;opacity:.6;padding:4px;transition:opacity .2s}.btn-locate:hover{opacity:1}.no-users{color:#999;font-size:14px;padding:40px 20px;text-align:center}.legend-divider{background:#e0e0e0;height:1px;margin:8px 0}.legend-subtitle{color:#666;font-size:12px;font-weight:600;margin:8px 0 4px}.supervisor-info-banner{align-items:center;animation:slideIn .3s ease-out;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 2px 8px #667eea4d;color:#fff;display:flex;gap:12px;margin-bottom:16px;padding:12px 20px}.supervisor-info-banner svg{flex-shrink:0}.supervisor-info-banner span{font-size:14px;font-weight:500}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.active-tracking-banner{box-shadow:0 4px 12px #667eea66;min-width:400px}.tracking-info{gap:8px}.tracking-progress{font-size:14px;font-weight:600}.button-sm{font-size:14px;padding:8px 16px}.completion-dialog-overlay{align-items:center;animation:fadeIn .3s ease;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.completion-dialog{animation:slideUp .3s ease;border-radius:12px;box-shadow:0 10px 40px #0000004d;padding:24px}.completion-dialog-header{margin-bottom:20px}.completion-dialog-header h2{font-size:24px}.completion-dialog-body{margin:20px 0}.completion-dialog-body p{margin:10px 0}.completion-dialog-actions{justify-content:flex-end;margin-top:20px}.button-full-width{justify-content:center;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateX(-50%) translateY(-20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@media (max-width:768px){.active-tracking-banner{flex-direction:column;gap:12px;min-width:auto;padding:12px;width:90%}.completion-dialog{padding:16px;width:95%}}.tracking-info{align-items:center;display:flex;flex:1 1;gap:10px}.tracking-progress{background:#fff3;border-radius:20px;font-size:15px;font-weight:700;padding:8px 16px;white-space:nowrap}.legend-item{align-items:center;border-radius:8px;display:flex;gap:10px;padding:8px 12px;transition:all .2s ease}.legend-item:hover{background:#0000000d;transform:translateX(4px)}.legend-color{border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0003;flex-shrink:0;height:24px;width:24px}.completion-dialog{animation:slideUp .4s cubic-bezier(.68,-.55,.265,1.55);background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;padding:32px;width:90%}.completion-dialog-header h2{animation:bounce .6s ease;color:#2ecc71;font-size:28px;margin:0;text-align:center}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.completion-dialog-body{background:#f8f9fa;border-radius:12px;margin:24px 0;padding:20px}.completion-dialog-body p{font-size:16px;line-height:1.5;margin:12px 0}.completion-dialog-body p strong{color:#2c3e50;font-weight:600}.completion-dialog-actions{display:flex;gap:12px;justify-content:center;margin-top:24px}.completion-dialog-actions .button{border-radius:12px;flex:1 1;font-size:16px;font-weight:600;padding:14px 24px;transition:all .3s ease}.completion-dialog-actions .button-success:hover{box-shadow:0 4px 12px #2ecc7166;transform:scale(1.05)}@media (max-width:768px){.active-tracking-banner{flex-direction:column;gap:12px;min-width:auto;padding:16px;width:90%}.tracking-progress{text-align:center;width:100%}.completion-dialog{padding:24px;width:95%}.completion-dialog-header h2{font-size:24px}.completion-dialog-actions{flex-direction:column}.completion-dialog-actions .button{width:100%}}.user-location-pulse{animation:pulse-animation 2s infinite;background:#3498db66;border:2px solid #3498dbcc;border-radius:50%;height:30px;pointer-events:none;width:30px}@keyframes pulse-animation{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}to{opacity:1;transform:scale(1)}}.active-tracking-banner{align-items:center;animation:slideDown .3s ease;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:30px;box-shadow:0 8px 20px #667eea66;color:#fff;display:flex;gap:20px;left:50%;min-width:450px;padding:16px 24px;position:absolute;top:80px;transform:translateX(-50%);z-index:1000}.tracking-info svg{animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.sector-update-notification{align-items:center;animation:slideInRight .3s ease,fadeOut .3s ease 2.7s;background:linear-gradient(135deg,#2ecc71,#27ae60);border-radius:12px;box-shadow:0 4px 12px #2ecc7166;color:#fff;display:flex;gap:12px;max-width:350px;padding:16px 20px;position:fixed;right:20px;top:100px;z-index:10000}.sector-update-notification svg{flex-shrink:0}@keyframes slideInRight{0%{opacity:0;transform:translateX(400px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeOut{to{opacity:0;transform:translateX(400px)}}@keyframes pulseGlow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.ol-viewport canvas{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;image-rendering:pixelated}.ol-layer{opacity:1!important}@keyframes pulse-point{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.ol-viewport{image-rendering:optimizeQuality}:root{--color-principal:#0059a8;--color-hover:#f36c21;--color-titulo:#67c0ec;--color-boton-cerrar-sesion:#ef5ba1;--text-color:#333;--text-light:#666;--background-color:#f8f9fa;--card-background:#fff;--border-color:#e0e0e0;--error-color:#e74c3c;--success-color:#2ecc71;--shadow-color:#0000001a;--input-background:#f5f5f5;--input-focus:#e8f0fe}.login-container{align-items:center;background-color:#f8f9fa;background-color:var(--background-color);background-image:url(/static/media/logoAdn.e22b0c7fe27eb2676a2e.png),linear-gradient(135deg,#0059a81a,#67c0ec1a);background-position:50%;background-repeat:no-repeat;background-size:cover;display:flex;justify-content:center;min-height:100vh;padding:20px;width:100vw}.login-card{animation:fadeIn .5s ease-out;background-color:#fff;background-color:var(--card-background);border-radius:12px;border-top:4px solid #0059a8;border-top:4px solid var(--color-principal);box-shadow:0 8px 20px #0000001a;box-shadow:0 8px 20px var(--shadow-color);max-width:420px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;width:100%}.login-card:hover{box-shadow:0 12px 25px #0059a833;transform:translateY(-5px)}.login-header{background-color:#67c0ec0d;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color);padding:30px 30px 20px;text-align:center}.login-header h2{color:#67c0ec;color:var(--color-titulo);font-size:28px;font-weight:600;margin:0 0 10px}.login-header p{color:#ef5ba1;color:var(--color-boton-cerrar-sesion);font-size:16px;margin:0}.login-form{padding:30px}.form-group{margin-bottom:24px}.form-group label{color:#0059a8;color:var(--color-principal);display:block;font-size:14px;font-weight:500;margin-bottom:8px}.input-container{align-items:center;display:flex;position:relative}.input-icon{color:#0059a8;color:var(--color-principal);font-size:16px;left:12px;position:absolute}.input-container input{background-color:#f5f5f5;background-color:var(--input-background);border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:8px;color:#333;color:var(--text-color);font-size:16px;padding:12px 12px 12px 40px;transition:all .3s ease;width:100%}.input-container input:focus{background-color:#e8f0fe;background-color:var(--input-focus);border-color:#0059a8;border-color:var(--color-principal);box-shadow:0 0 0 3px #0059a81a;outline:none}.input-container input.input-error{background-color:#e74c3c0d;border-color:#e74c3c;border-color:var(--error-color)}.toggle-password{align-items:center;background:none;border:none;color:#666;color:var(--text-light);cursor:pointer;display:flex;font-size:16px;justify-content:center;padding:0;position:absolute;right:12px;transition:color .3s ease}.toggle-password:hover{color:#f36c21;color:var(--color-hover)}.error-text{animation:fadeIn .3s ease;color:#e74c3c;color:var(--error-color);display:block;font-size:12px;margin-top:5px}.error-message{animation:fadeIn .3s ease;background-color:#e74c3c1a;border-left:4px solid #e74c3c;border-left:4px solid var(--error-color);border-radius:4px;margin:20px 30px 0;padding:12px 20px}.error-message p{color:#e74c3c;color:var(--error-color);font-size:14px;margin:0}.login-button{align-items:center;background-color:#0059a8;background-color:var(--color-principal);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;justify-content:center;padding:14px;position:relative;transition:background-color .3s ease,transform .1s ease;width:100%}.login-button:hover{background-color:#f36c21;background-color:var(--color-hover)}.login-button:active{transform:scale(.98)}.login-button:disabled{background-color:#666;background-color:var(--text-light);cursor:not-allowed}.login-button.loading{background-color:#f36c21;background-color:var(--color-hover);cursor:wait}.spinner{animation:spin .8s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}.input-container input:focus+.input-icon{color:#f36c21;color:var(--color-hover)}.login-card:after{background:linear-gradient(90deg,#0059a8,#67c0ec,#f36c21);background:linear-gradient(to right,var(--color-principal),var(--color-titulo),var(--color-hover));bottom:0;content:"";height:5px;left:0;opacity:0;position:absolute;transition:opacity .3s ease;width:100%}.login-card:hover:after{opacity:1}@media (max-width:480px){.login-card{max-width:100%}.login-header{padding:20px 20px 15px}.login-header h2{font-size:24px}.login-form{padding:20px}.form-group{margin-bottom:20px}.input-container input{font-size:15px;padding:10px 10px 10px 36px}.login-button{padding:12px}}.error-container{align-items:center;background-color:#f5f7fa;display:flex;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;justify-content:center;min-height:100vh;padding:20px}.error-card{animation:fadeIn .5s ease-in-out;background-color:#fff;border-radius:12px;box-shadow:0 10px 25px #0000001a;max-width:500px;padding:48px;text-align:center;width:100%}.error-icon{align-items:center;background:linear-gradient(135deg,#f06,#4c83ff);border-radius:50%;display:inline-flex;height:130px;justify-content:center;margin-bottom:24px;width:130px}.error-code{color:#fff;font-size:48px;font-weight:700}.error-title{color:#333;font-size:28px;margin-bottom:16px}.error-message{color:#666;font-size:16px;line-height:1.5;margin-bottom:32px}.error-button{background:linear-gradient(135deg,#4c83ff,#2962ff);border-radius:50px;box-shadow:0 4px 15px #4c83ff4d;color:#fff;display:inline-block;font-weight:600;padding:12px 28px;text-decoration:none;transition:all .3s ease}.error-button:hover{box-shadow:0 8px 20px #4c83ff66;transform:translateY(-3px)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:600px){.error-card{padding:32px 24px}.error-icon{height:100px;width:100px}.error-code{font-size:36px}.error-title{font-size:22px}}:root{--primary-color:#3498db;--primary-hover:#2980b9;--primary-bg:#0059a8;--accent-color:#f36c21;--accent-hover:#e45e1a;--highlight-color:#67c0ec;--danger-color:#ef5ba1;--danger-hover:#d60909;--text-light:#fff;--sidebar-width:250px;--sidebar-collapsed-width:60px;--transition-speed:0.3s;--box-shadow:0 2px 10px #00000026;--header-height:60px}.app-container{overflow:hidden}.app-container,.sidebar{display:flex;height:100vh}.sidebar{background-color:#0059a8;background-color:var(--primary-bg);box-shadow:0 2px 10px #00000026;box-shadow:var(--box-shadow);flex-direction:column;left:0;padding:0;position:fixed;top:0;transition:all .3s ease;transition:all var(--transition-speed) ease;width:250px;width:var(--sidebar-width);z-index:100}.sidebar.collapsed{width:60px;width:var(--sidebar-collapsed-width)}.menu-button{align-items:center;background:none;background-color:#0059a8;background-color:var(--primary-bg);border:none;color:#67c0ec;color:var(--highlight-color);cursor:pointer;display:flex;font-size:24px;height:60px;height:var(--header-height);justify-content:center;padding:0;transition:color .3s;transition:color var(--transition-speed);width:100%}.menu-button:hover{background-color:#f36c21;background-color:var(--accent-color);color:#fff;color:var(--text-light)}.titulo-sidebar{color:#67c0ec;color:var(--highlight-color);font-size:1.5em;margin:0;overflow:hidden;padding:15px 0;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%}.sidebar.collapsed .titulo-sidebar{display:none}.lista-sidebar{list-style:none;margin:0;overflow-y:auto;padding:0;width:100%}.lista-sidebar li{margin-bottom:5px;width:100%}.lista-sidebar li a{align-items:center;border-radius:0;color:#fff;color:var(--text-light);display:flex;font-size:1.1em;overflow:hidden;padding:12px 16px;text-decoration:none;transition:background-color .3s;transition:background-color var(--transition-speed);white-space:nowrap}.lista-sidebar li a .icon{font-size:1.2em;margin-right:10px;min-width:24px;text-align:center}.sidebar.collapsed .lista-sidebar li a{justify-content:center;padding:12px 0}.sidebar.collapsed .lista-sidebar li a .icon{font-size:1.5em;margin-right:0}.lista-sidebar li a:hover{background-color:#f36c21;background-color:var(--accent-color)}.sidebar.collapsed .lista-sidebar li a .text{display:none}.lista-sidebar li button{align-items:center;background-color:#ef5ba1;background-color:var(--danger-color);border:none;border-radius:0;color:#fff;color:var(--text-light);cursor:pointer;display:flex;font-size:1.1em;padding:12px 16px;transition:background-color .3s;transition:background-color var(--transition-speed);white-space:nowrap;width:100%}.lista-sidebar li button .icon{font-size:1.2em;margin-right:10px;min-width:24px;text-align:center}.sidebar.collapsed .lista-sidebar li button{justify-content:center;padding:12px 0}.sidebar.collapsed .lista-sidebar li button .icon{font-size:1.5em;margin-right:0}.sidebar.collapsed .lista-sidebar li button .text{display:none}.lista-sidebar li button:hover{background-color:#d60909;background-color:var(--danger-hover)}.main-content{flex-grow:1;margin-left:250px;margin-left:var(--sidebar-width);overflow-y:auto;padding:20px;transition:margin-left .3s ease;transition:margin-left var(--transition-speed) ease;width:calc(100% - 250px);width:calc(100% - var(--sidebar-width))}.main-content.collapsed{margin-left:60px;margin-left:var(--sidebar-collapsed-width);width:calc(100% - 60px);width:calc(100% - var(--sidebar-collapsed-width))}.sidebar.collapsed .lista-sidebar li{position:relative}.sidebar.collapsed .lista-sidebar li:hover:after{background-color:#333;border-radius:4px;color:#fff;content:attr(data-title);font-size:14px;left:100%;margin-left:10px;padding:5px 8px;position:absolute;top:50%;transform:translateY(-50%);white-space:nowrap;z-index:101}@media (max-width:768px){.sidebar{left:0;position:fixed;top:0;transform:translateX(-100%)}.sidebar.collapsed{overflow:hidden;width:0}.sidebar:not(.collapsed){max-width:300px;transform:translateX(0);width:100%}.main-content,.main-content.collapsed{margin-left:0;width:100%}.mobile-menu-overlay{background-color:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:90}.sidebar:not(.collapsed)+.mobile-menu-overlay{display:block}}
/*# sourceMappingURL=main.e4c59816.css.map*/