@charset "UTF-8";*{margin:0;padding:0;box-sizing:border-box;font-family:Segoe UI,sans-serif}body{font-family:Poppins,sans-serif;background-color:#f4f4f4;color:#333}h1,h2,h3{color:#0d47a1;margin-bottom:12px;font-weight:600}form{background-color:#fff;padding:28px;margin:20px auto;border-radius:10px;box-shadow:0 0 16px #0000000d;max-width:700px;width:100%}form label{font-weight:700;font-size:16px;display:block;margin-bottom:6px}form input,form select,form textarea{width:100%;padding:10px;border:1px solid #cfd8dc;border-radius:4px;margin-bottom:16px}button{background-color:#007bff;color:#fff;border:none;font-weight:600;border-radius:6px;padding:12px 20px;font-size:15px;cursor:pointer;transition:background-color .3s ease,transform .1s ease}button:disabled{background-color:#a1c1ea;cursor:not-allowed}button,.btn{background-color:#1976d2;color:#fff;border:none;padding:10px 18px;border-radius:5px;cursor:pointer;font-weight:500;transition:background-color .3s ease}input,select,textarea{width:100%;padding:12px;border:1px solid #ccc;border-radius:6px;font-size:15px;transition:border-color .2s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff33}a{color:#007bff;text-decoration:none}a:hover{text-decoration:underline}.card{background-color:#fff;border-left:5px solid #007BFF;padding:15px;margin:10px auto;border-radius:4px;box-shadow:0 0 4px #0000000d;max-width:auto;width:100%}.card{border:1px solid #90caf9;border-radius:6px;padding:14px;margin:10px 0;background-color:#fff;transition:transform .2s ease}.card:hover{transform:translateY(-2px);box-shadow:0 0 8px #1976d21a}.estado-aprobado{color:#2e7d32;font-weight:600}.estado-rechazado{color:#c62828;font-weight:600}.estado-en-revision{color:#0277bd;font-weight:600}.estado-iniciado{color:#377771;font-weight:600}.estado-visto-sin-validar{color:#f1c40f;font-weight:600}.link{color:#1976d2;text-decoration:none}.link:hover{text-decoration:underline}.dashboard{width:100%;margin:0 auto;padding:20px}.form-card-formularios{display:flex;width:100%;background:#fff;border-radius:6px;box-shadow:0 2px 8px #0000000d;overflow:hidden;margin-bottom:1.5rem;position:relative}.form-card__band{width:6px}.form-card__body{padding:1rem 1.5rem;flex:1;position:relative}.form-card__badge-rechazado{position:absolute;top:12px;right:12px;background:#f8d7da;color:#842029;padding:4px 8px;border-radius:4px;font-size:.85rem;display:flex;align-items:center;gap:4px}.form-card__title{margin:0 0 .75rem;font-size:1.1rem;color:#1f2937}.form-card__info p{margin:.3rem 0;font-size:.9rem;color:#374151}.form-card__btn{margin-top:1rem}html,body,#root{height:100%;min-height:100%}.login-page-container{min-height:100vh;height:100vh;box-sizing:border-box;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,var(--background-color) 0%,#ffffff 100%);padding:2rem}.login-box{margin:0 auto;max-width:420px;width:100%;background-color:#fff;padding:2.5rem;border-radius:16px;box-shadow:0 8px 24px #0000001a;transition:transform .3s ease;display:flex;flex-direction:column;align-items:center}.login-box:hover{transform:translateY(-5px)}.login-header{text-align:center;margin-bottom:2rem}.logo-container{width:120px;height:120px;margin:0 auto 1.5rem;padding:1rem;background:#f8f9fa;border-radius:50%;display:flex;align-items:center;justify-content:center}.login-header h1{color:var(--primary-color);font-size:1.75rem;margin-bottom:.5rem}.login-header h2{color:var(--primary-color);font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.welcome-message{color:var(--secondary-color);font-size:.95rem;margin-top:.5rem;line-height:1.5;text-align:center}.input-help{display:block;color:var(--secondary-color);font-size:.8rem;margin-top:.5rem;opacity:.8}.login-footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e1e1e1;text-align:center}.login-footer p{color:var(--secondary-color);font-size:.9rem;margin:0}.input-group{margin-bottom:1.5rem}.input-group label{display:flex;align-items:center;gap:.5rem;color:var(--secondary-color);margin-bottom:.5rem;font-weight:500}.input-icon{color:var(--primary-color)}.input-group input{width:100%;padding:.75rem 1rem;border:2px solid #e1e1e1;border-radius:8px;font-size:1rem;transition:all .3s ease}.input-group input:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.input-group input:disabled{background-color:#f8f9fa;cursor:not-allowed}.login-button{width:100%;padding:.875rem;background-color:var(--primary-color);color:#fff;font-weight:600;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .3s ease;font-size:1rem}.login-button:hover:not(:disabled){opacity:.9;transform:translate(3px)}.login-button:disabled{opacity:.7;cursor:not-allowed}.button-icon{transition:transform .3s ease}.login-button:hover:not(:disabled) .button-icon{transform:translate(3px)}.login-error{background-color:#fee2e2;color:#b91c1c;border-radius:8px;padding:1rem;margin-bottom:1rem;text-align:center;font-size:.95rem}@media (max-width: 480px){.login-page-container{padding:1rem}.login-box{padding:1rem;max-width:95vw}.logo-container{width:100px;height:100px}.login-header h1{font-size:1.5rem}.login-header h2{font-size:1.125rem}.back-button{top:.5rem;left:.5rem}}.admin-container{padding:0 30px;background-color:#f6f7fb;color:#333;min-height:100%}.admin-title{margin-top:10px;font-size:24px;margin-bottom:20px;color:#036}.section-title{font-size:18px;margin-bottom:10px;color:#0055a5}.form-card{background-color:#fff;padding:20px;border-radius:6px;max-width:500px;margin-bottom:30px;box-shadow:0 0 10px #0000001a}input{width:100%;padding:10px;margin-top:8px;margin-bottom:15px;border:1px solid #ccc;border-radius:4px}.btn{padding:8px 14px;border:none;border-radius:4px;cursor:pointer;font-weight:700}.btn-primary{background-color:#007bff;color:#fff}.btn-secundario{background-color:#007bff;color:#fff;margin-left:10px}.btn-back{margin-top:15px;margin-bottom:15px;background-color:#0d6efd;color:#fff;padding:8px 12px;border-radius:5px;text-decoration:none;display:inline-block}.btn-back:hover{background-color:#084eb0}.btn-link{margin-left:10px;color:#007bff;text-decoration:none;font-weight:500}.btn-link:hover{text-decoration:underline}.btn-group{margin-top:6px}.tecnicos-grid{margin-top:15px;display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.tecnico-card{border:1px solid #cfd8dc;border-radius:8px;padding:16px;background-color:#fff;width:280px;box-shadow:0 2px 5px #0000001a}.tecnico-card p{margin:6px 0}.tecnico-card .acciones{margin-top:12px;display:flex;justify-content:space-between}.activo{color:green;font-weight:700}.inactivo{color:red;font-weight:700}.btn-rojo{background-color:#e74c3c;color:#fff;font-weight:700;padding:10px 12px;border:none;border-radius:6px;cursor:pointer}.btn-rojo:hover{background-color:#c0392b}.btn-verde{background-color:#2ecc71;color:#fff;font-weight:700;padding:10px 12px;border:none;border-radius:6px;cursor:pointer}.btn-verde:hover{background-color:#27ae60}.btn-amarillo{background-color:#f1c40f;color:#fff;font-weight:700;padding:10px 12px;border:none;border-radius:6px;cursor:pointer}.btn-amarillo:hover{background-color:#d4ac0c}.detalle-formulario{max-width:1000px;margin:30px auto;padding:25px;background-color:#fff;border:1px solid #cce5ff;border-radius:6px;box-shadow:0 4px 12px #00000014}.detalle-formulario p{margin-bottom:10px}.detalle-formulario strong{display:inline-block;width:140px;color:#333}.preview-archivo{margin-top:10px}.preview-archivo img,.preview-archivo video{max-width:100%;border-radius:6px;margin-top:8px}.estado-aprobado{color:green;font-weight:700}.estado-rechazado{color:red;font-weight:700}.estado-en\ revision{color:#007bff;font-weight:700}.estado-iniciado{color:#377771;font-weight:700}.alert-warning{color:#856404;background-color:#fff3cd;padding:10px;border-radius:5px;margin-top:10px}.checkbox-container{display:grid;grid-template-columns:auto 1fr;margin-bottom:10px;align-items:center}.checkbox-label{display:contents}input[type=checkbox]{grid-column:1;width:20px;margin:0;cursor:pointer;transform:scale(1.2);transition:transform .2s ease}.checkbox-label span{grid-column:2;margin-left:10px;font-size:14px;color:#333;font-weight:500;cursor:pointer}.alert-error{background-color:#f8d7da;color:#721c24;padding:10px;margin-bottom:10px;border:1px solid #f5c6cb;border-radius:4px}.alert-success{background-color:#d4edda;color:#155724;padding:10px;margin-bottom:10px;border:1px solid #c3e6cb;border-radius:4px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.paginacion{display:flex;justify-content:center;align-items:center;margin-top:20px}.btn-paginacion{padding:6px 12px;background-color:#1d4ed8;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s ease}.btn-paginacion:disabled{background-color:#9ca3af;cursor:not-allowed}.rechazo-alert{background-color:#fff3cd;border:1px solid #ffeeba;border-radius:8px;padding:16px;margin-top:20px;display:flex;align-items:flex-start;gap:16px;color:#856404;font-family:sans-serif;box-shadow:0 2px 8px #0000000d}.rechazo-icon{font-size:2rem;margin-top:4px}.rechazo-titulo{margin:0 0 6px;font-weight:600}.rechazo-detalle{margin:0}.spinner{display:inline-block;width:16px;height:16px;border:3px solid #fff;border-top:3px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-right:8px;vertical-align:middle}.servicios-lista{list-style:none;padding-left:1.2rem;margin-top:4px}.servicios-lista li{position:relative;padding-left:1.4rem;margin-bottom:4px}.servicios-lista li:before{content:"➤";position:absolute;left:0;color:#0277bd}#scanner video,#scanner canvas.drawingBuffer{width:100%!important;height:100%!important;object-fit:contain;display:block}.selector-contratista{min-height:100vh;padding:2rem;background:linear-gradient(135deg,#f5f7fa,#e4e8eb);display:flex;flex-direction:column;align-items:center}.selector-header{text-align:center;margin-bottom:3rem}.selector-header h1{font-size:2.5rem;color:#2c3e50;margin-bottom:.5rem}.selector-header p{font-size:1.1rem;color:#666}.contratistas-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;width:100%;max-width:1200px;padding:1rem}.contratista-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;transition:all .3s ease;border:2px solid var(--primary-color);overflow:hidden}.contratista-card:hover{transform:translateY(-5px);box-shadow:0 8px 15px #0000001a}.card-content{padding:2rem;display:flex;flex-direction:column;align-items:left;gap:1.5rem}.logo-container{width:120px;height:120px;display:flex;align-items:center;justify-content:center;background:#f8f9fa;border-radius:50%;padding:1rem}.logo-container img{max-width:100%;max-height:100%;object-fit:contain}.contratista-card h3{font-size:1.25rem;color:#2c3e50;text-align:center;margin:0}.ingresar-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease}.ingresar-btn:hover{opacity:.9;transform:translate(3px)}.ingresar-btn svg{transition:transform .2s ease}.ingresar-btn:hover svg{transform:translate(3px)}.error-container{text-align:center;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;max-width:400px}.error-container h2{color:#e74c3c;margin-bottom:1rem}.error-container p{color:#666;margin-bottom:1.5rem}.error-container button{padding:.75rem 1.5rem;background-color:#3498db;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:background-color .2s ease}.error-container button:hover{background-color:#2980b9}@media (max-width: 768px){.selector-contratista{padding:1rem}.selector-header h1{font-size:2rem}.contratistas-grid{grid-template-columns:1fr;gap:1.5rem}}.back-button{position:absolute;top:2rem;left:2rem;display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background-color:#fff;color:var(--primary-color);border:2px solid var(--primary-color);border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px #0000001a}.back-button:hover{background-color:var(--primary-color);color:#fff;transform:translate(-3px)}.back-button svg{transition:transform .3s ease}.back-button:hover svg{transform:translate(-3px)}@media (max-width: 480px){.back-button{top:1rem;left:1rem;padding:.5rem 1rem;font-size:.875rem}}.login-card-content{padding:2rem;background:#fff;border-radius:16px;box-shadow:0 8px 24px #00000014;text-align:center;display:flex;flex-direction:column;align-items:stretch;gap:1.5rem}@media (max-width: 480px){.login-card-content{padding:1rem}}.login-card-content input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #2563eb26;outline:none;transition:border-color .2s,box-shadow .2s}.login-button:active{transform:scale(.97);transition:transform .1s}.sidebar-hamburger{display:none;position:fixed;top:1.5rem;left:1.5rem;z-index:1201;background:#2563eb;color:#fff;border:none;border-radius:4%;box-shadow:0 2px 8px #0000001f;padding:.7rem;cursor:pointer;transition:background .2s}.sidebar-hamburger:hover{background:#1741a6}.sidebar-hamburger svg{width:24px;height:24px;color:#fff}.sidebar-close{display:none;position:absolute;top:1.2rem;right:1.2rem;background:#324258;color:#fff;border:none;border-radius:4%;z-index:1202;cursor:pointer;padding:.5rem;box-shadow:0 2px 8px #0000001f;transition:background .2s}.sidebar-close:hover{background:#1741a6}.sidebar-close svg{width:24px;height:24px;color:#fff}.sidebar-overlay{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000040;z-index:1200}@media (max-width: 900px){.sidebar{position:fixed;left:0;top:0;height:100vh;width:260px;z-index:1202;transform:translate(-110%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 24px #0000001f}.sidebar.open{transform:translate(0)}.sidebar-hamburger,.sidebar-close,.sidebar-overlay{display:block}.main-content{margin-left:0!important}.main-header{flex-direction:column;align-items:flex-start;padding:1rem .5rem;gap:1rem}.main-header h1{font-size:1.2rem;margin-bottom:.5rem}.header-actions{width:100%;display:flex;flex-direction:column;gap:.5rem;align-items:stretch}.header-actions button,.header-actions .btn,.header-actions .btn-icon{width:100%;min-width:0;justify-content:center;font-size:1rem;padding:.7rem .5rem}.notifications-wrapper{position:static;margin-top:.5rem;width:100%;display:flex;justify-content:flex-end}.tabbs{display:flex;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:0 .5rem;gap:.5rem;background:#fff;border-bottom:1px solid #e5e7eb}.tabb{flex:0 0 auto;min-width:110px;font-size:.95rem;padding:.7rem .5rem;text-align:center;white-space:nowrap}}@media (max-width: 900px){.dashboard-layout{flex-direction:column}}.contratista-form{background-color:#fff;padding:28px;margin:20px auto;border-radius:10px;box-shadow:0 0 16px #0000000d;max-width:500px;width:100%}.form-error{border-color:#dc3545!important;box-shadow:0 0 0 2px #dc354533!important}.form-error-message{color:#dc3545;font-size:14px;margin-top:8px;font-weight:500}.autorizado-text{text-align:center;margin-top:20px;color:#6c757d;font-size:14px;font-style:italic}.autorizado-text p{margin:0}:root{--color-primary: #2E424D;--color-primary-dark: #243741;--color-secondary: #6b7280;--color-secondary-dark: #4b5563;--color-success: #2e7d32;--color-error: #c62828;--color-warning: #f1c40f;--color-info: #0277bd;--color-pending: #377771;--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #f4f4f4;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--border-radius-sm: .25rem;--border-radius-md: .5rem;--border-radius-lg: 1rem;--font-family: "Segoe UI", -apple-system, BlinkMacSystemFont, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem}body{font-family:var(--font-family);background-color:var(--bg-tertiary);color:var(--color-primary);line-height:1.6}h1,h2,h3,h4,h5,h6{color:var(--color-primary);font-weight:600;line-height:1.2}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-md)}a{color:var(--color-primary);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-primary-dark)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:500;cursor:pointer;transition:all .2s ease;border:none;font-size:var(--font-size-md)}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover{background-color:var(--color-primary-dark)}.btn-secondary{background-color:var(--color-secondary);color:#fff}.btn-secondary:hover{background-color:var(--color-secondary-dark)}.btn:disabled{opacity:.7;cursor:not-allowed}.form-group{margin-bottom:var(--spacing-lg)}.form-label{display:block;margin-bottom:var(--spacing-xs);font-weight:500;color:var(--color-primary)}.form-control{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-secondary);border-radius:var(--border-radius-md);font-size:var(--font-size-md);transition:border-color .2s ease,box-shadow .2s ease}.form-control:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #2e424d1a}.estado{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-weight:600;font-size:var(--font-size-sm)}.estado-revision{background-color:#e3f2fd;color:var(--color-info)}.container{max-width:1200px;margin:0 auto;padding:var(--spacing-lg)}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.mt-1{margin-top:var(--spacing-sm)}.mt-2{margin-top:var(--spacing-md)}.mt-3{margin-top:var(--spacing-lg)}.mt-4{margin-top:var(--spacing-xl)}.mb-1{margin-bottom:var(--spacing-sm)}.mb-2{margin-bottom:var(--spacing-md)}.mb-3{margin-bottom:var(--spacing-lg)}.mb-4{margin-bottom:var(--spacing-xl)}@media (max-width: 768px){:root{--spacing-lg: 1.25rem;--spacing-xl: 1.5rem}.container{padding:var(--spacing-md)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}}@keyframes slideIn{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.fade-in{animation:fadeIn .3s ease-in-out}.slide-in{animation:slideIn .3s ease-in-out}.card{background-color:var(--bg-primary);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);transition:transform .2s ease,box-shadow .2s ease}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.card-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-primary)}.card-content{color:var(--color-secondary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:var(--bg-primary);padding:var(--spacing-xl);border-radius:var(--border-radius-lg);width:90%;max-width:600px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:var(--shadow-lg);animation:modalFadeIn .3s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.modal-title{font-size:var(--font-size-2xl);color:var(--color-primary);margin:0}.modal-close{background:none;border:none;font-size:var(--font-size-xl);color:var(--color-secondary);cursor:pointer;padding:var(--spacing-xs);transition:color .2s ease}.modal-close:hover{color:var(--color-primary)}.alert{padding:var(--spacing-md);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg);font-weight:500}.alert-success{background-color:#e8f5e9;color:var(--color-success)}.alert-error{background-color:#ffebee;color:var(--color-error)}.alert-warning{background-color:#fff3e0;color:var(--color-warning)}.alert-info{background-color:#e3f2fd;color:var(--color-info)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px}.spinner{animation:spin 1s linear infinite;color:var(--color-primary);font-size:var(--font-size-2xl)}.tabs{display:flex;border-bottom:1px solid var(--color-secondary);margin-bottom:var(--spacing-lg)}.tab{padding:var(--spacing-md) var(--spacing-lg);border:none;background:none;color:var(--color-secondary);cursor:pointer;font-weight:500;transition:all .2s ease;border-bottom:2px solid transparent}.tab:hover{color:var(--color-primary)}.tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:600}.badge-success{background-color:#e8f5e9;color:var(--color-success)}.badge-error{background-color:#ffebee;color:var(--color-error)}.badge-warning{background-color:#fff3e0;color:var(--color-warning)}.badge-info{background-color:#e3f2fd;color:var(--color-info)}@media (max-width: 768px){.modal-content{width:95%;padding:var(--spacing-lg)}.tabs{flex-wrap:wrap}.tab{flex:1 1 auto;text-align:center}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #1f2937;--secondary-color: #3b82f6;--accent-color: #10b981;--text-primary: #1f2937;--text-secondary: #6b7280;--text-light: #9ca3af;--background-light: #f9fafb;--background-white: #ffffff;--border-color: #e5e7eb;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:var(--text-primary);background-color:var(--background-white)}.container{max-width:1200px;margin:0 auto;padding:0 20px}.btn-primary{background-color:var(--primary-color);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;text-align:center}.btn-primary:link,.btn-primary:visited{color:#fff;text-decoration:none}.btn-primary:hover{background-color:#374151;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background-color:transparent;color:var(--primary-color);border:2px solid var(--primary-color);padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;text-align:center}.btn-secondary:hover{background-color:var(--primary-color);color:#fff;transform:translateY(-2px)}.btn-large{padding:16px 32px;font-size:18px}.header-landing{background-color:var(--background-white);box-shadow:var(--shadow-sm);position:fixed;top:0;left:0;right:0;z-index:1000}.nav{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;max-width:1200px;margin:0 auto}.nav-brand{display:flex;align-items:center;gap:.75rem}.logo-svg{color:var(--primary-color);transition:all .3s cubic-bezier(.25,.46,.45,.94)}.logo-svg:hover{color:var(--secondary-color);transform:scale(1.05)}.brand-text{color:var(--primary-color);font-size:1.8rem;font-weight:700;transition:color .3s ease}.nav-brand:hover .brand-text{color:var(--secondary-color)}.nav-brand h1{color:var(--primary-color);font-size:1.8rem;font-weight:700}.nav-links{padding-left:100px;display:flex;align-items:center;gap:2rem}.nav-links a{text-decoration:none;color:var(--text-secondary);font-weight:500;transition:color .3s ease}.nav-links a:hover{color:var(--primary-color)}.mobile-menu-toggle{display:none;background:none;border:none;font-size:1.5rem;color:var(--primary-color);cursor:pointer}.hero{padding:120px 0 80px;background:linear-gradient(135deg,var(--background-light) 0%,var(--background-white) 100%)}.hero-content{max-width:1200px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.hero-text h1{font-size:3.5rem;font-weight:800;line-height:1.1;color:var(--primary-color);margin-bottom:1rem}.hero-text h2{font-size:1.5rem;color:var(--secondary-color);margin-bottom:1.5rem;font-weight:600}.hero-text p{font-size:1.2rem;color:var(--text-secondary);margin-bottom:2rem;line-height:1.7}.hero-stats{display:flex;gap:2rem;margin-bottom:2.5rem}.stat{text-align:center}.stat-number{display:block;font-size:2.5rem;font-weight:800;color:var(--primary-color)}.stat-label{font-size:.9rem;color:var(--text-secondary);font-weight:500}.hero-cta{display:flex;gap:1rem}.hero-image{display:flex;justify-content:center;align-items:center}.hero-mockup{position:relative;max-width:100%}.mockup-image{width:100%;height:auto;border-radius:12px;box-shadow:var(--shadow-xl)}.hero-logo-container{display:flex;justify-content:center;align-items:center;margin-bottom:2rem;position:relative}.logo-hat-animated{transform-origin:center;animation:hatFloat 4s ease-in-out infinite}@keyframes hatFloat{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-8px) rotate(1deg)}50%{transform:translateY(-4px) rotate(0)}75%{transform:translateY(-12px) rotate(-1deg)}}.logo-static{transform-origin:center}.hero-logo-svg:hover .logo-hat-animated{animation:hatBounce .6s ease-in-out}@keyframes hatBounce{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-15px) rotate(2deg)}}.hero-logo-container:before{content:"";position:absolute;top:-30px;left:-30px;right:-30px;bottom:-30px;background:radial-gradient(circle,rgba(59,130,246,.08) 0%,transparent 70%);border-radius:50%;animation:logoGlow 6s ease-in-out infinite alternate}@keyframes logoGlow{0%{opacity:.2;transform:scale(.98)}to{opacity:.4;transform:scale(1.02)}}.hero-logo-svg{color:var(--primary-color);filter:drop-shadow(0 10px 20px rgba(31,41,55,.1));transition:all .3s ease;width:450px;height:450px;max-width:100%;max-height:60vh}.hero-logo-svg:hover{filter:drop-shadow(0 15px 30px rgba(31,41,55,.15));transform:scale(1.02)}.section-header{text-align:center;margin-bottom:4rem}.section-header h2{font-size:2.5rem;font-weight:700;color:var(--primary-color);margin-bottom:1rem}.section-header p{font-size:1.2rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.features{padding:80px 0;background-color:var(--background-white)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.feature-card,.benefit-card{opacity:0;transform:translateY(30px);animation:fadeInUp .6s cubic-bezier(.25,.46,.45,.94) forwards}.feature-icon{width:80px;height:80px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:#fff;font-size:2rem}.feature-card h3{font-size:1.5rem;font-weight:600;color:var(--primary-color);margin-bottom:1rem}.feature-card p{color:var(--text-secondary);line-height:1.6}.benefits{padding:80px 0;background-color:var(--background-light)}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:4rem}.benefit-card{background:var(--background-white);padding:2.5rem;border-radius:12px;box-shadow:var(--shadow-md);transition:transform .3s ease}.benefit-card:hover{transform:translateY(-3px)}.benefit-icon{width:60px;height:60px;background-color:var(--accent-color);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;color:#fff;font-size:1.5rem}.benefit-card h3{font-size:1.3rem;font-weight:600;color:var(--primary-color);margin-bottom:1rem}.benefit-card p{color:var(--text-secondary);line-height:1.6}.benefits-highlight{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:12px;padding:3rem;text-align:center;color:#fff}.benefits-highlight h3{font-size:1.8rem;margin-bottom:1rem}.benefits-highlight p{font-size:1.1rem;opacity:.9}.faq{padding:80px 0;background-color:var(--background-white)}.faq-container{max-width:800px;margin:0 auto}.faq-item{border-bottom:1px solid var(--border-color);margin-bottom:1rem}.faq-question{width:100%;padding:1.5rem 0;background:none;border:none;text-align:left;font-size:1.1rem;font-weight:600;color:var(--primary-color);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:color .3s ease}.faq-question:hover{color:var(--secondary-color)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease}.faq-answer-open{max-height:200px;padding-bottom:1.5rem}.faq-answer p{color:var(--text-secondary);line-height:1.6}.demo{padding:80px 0;background-color:var(--background-light)}.demo-content{display:grid;grid-template-columns:2fr 1fr;gap:4rem;align-items:center}.demo-video{position:relative}.video-placeholder{position:relative;border-radius:12px;overflow:hidden;box-shadow:var(--shadow-xl)}.video-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#1f2937cc;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;text-align:center;padding:2rem}.play-icon{font-size:4rem;margin-bottom:1rem;opacity:.8}.video-overlay h3{font-size:1.5rem;margin-bottom:.5rem}.video-overlay p{opacity:.9;max-width:300px}.demo-image{width:100%;height:auto;display:block}.demo-info h3{font-size:1.8rem;color:var(--primary-color);margin-bottom:1rem}.demo-info p{color:var(--text-secondary);margin-bottom:2rem;line-height:1.6}.footer{background-color:var(--primary-color);color:#fff;padding:60px 0 20px}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:3rem;margin-bottom:3rem}.footer-section h3{font-size:1.3rem;margin-bottom:1.5rem;font-weight:600}.footer-section p{color:#fffc;line-height:1.6;margin-bottom:1.5rem}.social-links{display:flex;gap:1rem}.social-links a{width:40px;height:40px;background-color:#ffffff1a;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;transition:background-color .3s ease}.social-links a:hover{background-color:var(--secondary-color)}.contact-info{display:flex;flex-direction:column;gap:1rem}.contact-item{display:flex;align-items:center;gap:.75rem;color:#fffc}.footer-links{list-style:none}.footer-links li{margin-bottom:.75rem}.footer-links a{color:#fffc;text-decoration:none;transition:color .3s ease}.footer-links a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.footer-bottom p{color:#fff9;margin:0}.footer-bottom-links{display:flex;gap:2rem}.footer-bottom-links a{color:#fff9;text-decoration:none;font-size:.9rem;transition:color .3s ease}.footer-bottom-links a:hover{color:#fff}@media (max-width: 768px){.mobile-menu-toggle{display:block}.nav-links{position:fixed;top:100%;left:0;right:0;background-color:var(--background-white);flex-direction:column;padding:2rem;box-shadow:var(--shadow-lg);transform:translateY(-100%);opacity:0;visibility:hidden;transition:all .3s ease}.nav-links-open{transform:translateY(0);opacity:1;visibility:visible}.hero-content{grid-template-columns:1fr;gap:2rem;text-align:center}.hero-text h1{font-size:2.5rem}.hero-stats{justify-content:center}.hero-cta{justify-content:center;flex-wrap:wrap}.demo-content{grid-template-columns:1fr;gap:2rem}.footer-bottom{flex-direction:column;text-align:center}.section-header h2{font-size:2rem}.features-grid,.benefits-grid{grid-template-columns:1fr}.logo-svg{width:32px;height:32px}.brand-text{font-size:1.4rem}.hero-logo-svg{width:220px;height:220px}}@media (max-width: 480px){.hero-text h1{font-size:2rem}.hero-stats{flex-direction:column;gap:1rem}.hero-cta{flex-direction:column;align-items:center}.btn-large{width:100%;max-width:300px}.container{padding:0 15px}.nav-brand{gap:.5rem}.logo-svg{width:28px;height:28px}.brand-text{font-size:1.2rem}.hero-logo-svg{width:200px;height:200px}.hero{padding-bottom:30px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.feature-card,.benefit-card{animation:fadeInUp .6s ease forwards}html{scroll-behavior:smooth}.btn-primary:focus,.btn-secondary:focus,.faq-question:focus{outline:2px solid var(--secondary-color);outline-offset:2px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-100px)}to{opacity:1;transform:translateY(0)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes countUp{0%{opacity:0;transform:translateY(20px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}@keyframes rotateIn{0%{opacity:0;transform:rotate(-200deg)}to{opacity:1;transform:rotate(0)}}.animate-on-scroll{opacity:0;transform:translateY(60px);transition:all .8s cubic-bezier(.25,.46,.45,.94)}.animate-on-scroll.animate-in{opacity:1;transform:translateY(0)}.animate-counter{animation:countUp .8s cubic-bezier(.25,.46,.45,.94) forwards}.hero-text{animation:fadeInLeft 1s cubic-bezier(.25,.46,.45,.94) forwards}.hero-image{animation:fadeInRight 1s cubic-bezier(.25,.46,.45,.94) .3s forwards;opacity:0}.mockup-image{animation:float 6s ease-in-out infinite}.feature-icon{transition:all .4s cubic-bezier(.25,.46,.45,.94)}.feature-card:hover .feature-icon{animation:pulse .6s ease-in-out;transform:scale(1.1)}.benefit-icon{animation:rotateIn .8s cubic-bezier(.25,.46,.45,.94) forwards}.stat-number{display:inline-block;animation:bounceIn .8s cubic-bezier(.25,.46,.45,.94) forwards}.feature-card{transition:all .4s cubic-bezier(.25,.46,.45,.94);position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:-200px;width:200px;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.feature-card:hover:before{left:100%}.benefit-card{transition:all .4s cubic-bezier(.25,.46,.45,.94);position:relative}.benefit-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #0000001a}.btn-primary,.btn-secondary{position:relative;overflow:hidden;transition:all .3s cubic-bezier(.25,.46,.45,.94)}.btn-primary:before,.btn-secondary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn-primary:hover:before,.btn-secondary:hover:before{left:100%}.faq-question{transition:all .3s cubic-bezier(.25,.46,.45,.94)}.faq-answer{transition:all .4s cubic-bezier(.25,.46,.45,.94)}.faq-answer-open{animation:fadeInUp .4s cubic-bezier(.25,.46,.45,.94) forwards}.video-placeholder{transition:all .4s cubic-bezier(.25,.46,.45,.94)}.video-placeholder:hover{transform:scale(1.02);box-shadow:0 25px 50px #00000026}.play-icon{transition:all .3s cubic-bezier(.25,.46,.45,.94)}.video-placeholder:hover .play-icon{transform:scale(1.2);animation:pulse 1s infinite}.header-landing{animation:slideInFromTop .8s cubic-bezier(.25,.46,.45,.94) forwards}.nav-brand h1{transition:all .3s cubic-bezier(.25,.46,.45,.94)}.nav-brand h1:hover{transform:scale(1.05);color:var(--secondary-color)}.social-links a{transition:all .3s cubic-bezier(.25,.46,.45,.94)}.social-links a:hover{transform:translateY(-3px) scale(1.1);box-shadow:0 5px 15px #3b82f666}.benefits-highlight{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));background-size:200% 200%;animation:gradientShift 4s ease infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.features-grid .feature-card:nth-child(1){animation-delay:.1s}.features-grid .feature-card:nth-child(2){animation-delay:.2s}.features-grid .feature-card:nth-child(3){animation-delay:.3s}.features-grid .feature-card:nth-child(4){animation-delay:.4s}.benefits-grid .benefit-card:nth-child(1){animation-delay:.1s}.benefits-grid .benefit-card:nth-child(2){animation-delay:.25s}.benefits-grid .benefit-card:nth-child(3){animation-delay:.4s}.section-header{transition:all .8s cubic-bezier(.25,.46,.45,.94)}.section-header.animate-in{animation:fadeInUp .8s cubic-bezier(.25,.46,.45,.94) forwards}.feature-card,.benefit-card,.btn-primary,.btn-secondary{will-change:transform}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.mockup-image,.benefits-highlight{animation:none}}@media (max-width: 768px){.animate-on-scroll{transform:translateY(30px)}.hero-text,.hero-image{animation-duration:.6s}.feature-card:hover,.benefit-card:hover{transform:translateY(-3px)}}@media (max-width: 768px){.hero-logo-svg{width:200px;height:200px}}@media (max-width: 480px){.hero-logo-svg{width:160px;height:160px}}.detalle-formulario{padding:var(--spacing-lg);background-color:var(--bg-primary);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.tabs-list{display:flex;gap:var(--spacing-md);margin:var(--spacing-lg) 0;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-secondary)}.tab-button{padding:var(--spacing-sm) var(--spacing-lg);background:none;border:none;color:var(--color-secondary);cursor:pointer;font-weight:500;position:relative;transition:all .2s ease}.tab-button:hover,.tab-button.active{color:var(--color-primary)}.tab-button.active:after{content:"";position:absolute;bottom:-9px;left:0;width:100%;height:2px;background-color:var(--color-primary)}.card{background-color:var(--bg-primary);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-lg)}.card-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.admin-formulario-container .card-content{text-align:left!important;display:block!important;align-items:flex-start!important;justify-content:flex-start!important}.card-content{padding:var(--spacing-lg)}.videos-section{margin-bottom:var(--spacing-xl)}.videos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-md)}.video-container{background-color:var(--bg-secondary);border-radius:var(--border-radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.video-title{padding:var(--spacing-md);font-weight:600;color:var(--color-primary);border-bottom:1px solid var(--color-secondary)}.video-player{width:100%;aspect-ratio:16/9;background-color:#000}.dispositivos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-lg)}.dispositivo-card{background-color:var(--bg-secondary);padding:var(--spacing-lg);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm)}.dispositivo-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.dispositivo-icon{font-size:var(--font-size-xl);color:var(--color-primary)}.dispositivo-title{font-weight:600;color:var(--color-primary)}.dispositivo-info{color:var(--color-secondary);font-size:var(--font-size-sm)}.ubicacion-container{height:400px;border-radius:var(--border-radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.action-buttons{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.btn-aprobar{background-color:var(--color-success)}.btn-rechazar{background-color:var(--color-error)}.btn-visto{background-color:var(--color-warning)}.rechazo-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.rechazo-input{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-secondary);border-radius:var(--border-radius-sm);font-size:var(--font-size-md)}.rechazo-textarea{min-height:100px;resize:vertical}@media (max-width: 768px){.tabs-list{flex-wrap:wrap;gap:var(--spacing-sm)}.tab-button{flex:1 1 auto;text-align:center;padding:var(--spacing-sm)}.videos-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.btn{width:100%}}.estado-badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-weight:500;font-size:var(--font-size-sm)}.estado-aprobado{background-color:#e8f5e9;color:var(--color-success)}.estado-rechazado{background-color:#ffebee;color:var(--color-error)}.estado-pendiente{background-color:#fff3e0;color:var(--color-warning)}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#ffffffe6;display:flex;justify-content:center;align-items:center;z-index:1000}.loading-content{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 10px #0000001a;text-align:center;max-width:400px;width:90%}.progress-bar{height:10px;background:#ddd;border-radius:4px;overflow:hidden;margin:1rem 0}.progress-fill{height:100%;background:#3b82f6;border-radius:4px;transition:width .3s ease}.spinner{display:inline-block;width:12px;height:12px;border:2px solid #3b82f6;border-radius:50%;border-top-color:transparent;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.historial-item{background:#fff;border-radius:8px;padding:1rem;margin-bottom:1rem;box-shadow:0 1px 3px #0000001a}.historial-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid #eee}.historial-header .fecha{color:#666;font-size:.9rem}.historial-header .accion{font-weight:600;color:#1976d2}.historial-detalles{font-size:.95rem}.campos-modificados{margin-top:1rem;padding-top:1rem;border-top:1px solid #eee}.campo-modificado{margin-bottom:1rem}.campo-modificado h4{color:#333;margin-bottom:.5rem;font-size:1rem}.campo-modificado a{color:#1976d2;text-decoration:none;display:inline-flex;align-items:center;gap:.25rem}.campo-modificado a:hover{text-decoration:underline}.campo-modificado a:before{content:"🎥"}.campo-modificado strong{color:#555;margin-right:.5rem}.loading-container{display:flex;justify-content:center;align-items:center;padding:2rem;min-height:200px;width:100%}.loading-container.fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#ffffffe6;z-index:1000;min-height:100vh}.loading-content{display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.spinner-container{display:flex;justify-content:center;align-items:center}.spinner-container.small{font-size:1.5rem}.spinner-container.medium{font-size:2.5rem}.spinner-container.large{font-size:3.5rem}.spinner{animation:spin 1s linear infinite;color:#3b82f6;display:inline-block}.loading-message{color:#4b5563;font-size:1rem;margin:0;text-align:center}.loading-container{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0006;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:32px;border-radius:16px;width:95%;max-width:700px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 20px 40px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.modal-header h2{margin:0;font-size:1.5rem;color:#1a1a1a;font-weight:600}.close-button{position:absolute;right:24px;top:24px;background:transparent;border:none;font-size:24px;cursor:pointer;color:#666;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:4px}.close-button:hover{color:#1a1a1a}.modal-content .form-card{margin:0;padding:0;box-shadow:none;display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.modal-content .form-card label{display:block;color:#374151;font-weight:500;font-size:.9rem;margin:0}.modal-content .form-card input,.modal-content .form-card select,.modal-content .form-card textarea{width:100%;padding:10px 16px;margin:0;border:1px solid #e5e7eb;border-radius:8px;font-size:.95rem;background:#f9fafb;transition:all .2s ease}.modal-content .form-card input:focus,.modal-content .form-card select:focus,.modal-content .form-card textarea:focus{outline:none;border-color:#2563eb;background:#fff;box-shadow:0 0 0 4px #2563eb1a}.modal-content .form-card input::placeholder,.modal-content .form-card select::placeholder,.modal-content .form-card textarea::placeholder{color:#9ca3af}.modal-content .css-13cymwt-control{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;min-height:38px;margin:0;box-shadow:none}.modal-content .css-13cymwt-control:hover{border-color:#2563eb}.modal-content .css-t3ipsp-control{background:#fff!important;border-color:#2563eb!important;box-shadow:0 0 0 4px #2563eb1a!important}.modal-content .css-1dimb5e-singleValue{color:#1f2937}.modal-content .css-1nmdiq5-menu{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;margin-top:4px}.modal-content .css-1n6sfyn-MenuList{padding:4px}.modal-content .css-1n7v3ny-option{background-color:#2563eb!important;color:#fff}.modal-content .css-9gakcf-option:active{background-color:#1d4ed8!important}.modal-content .css-1pahdxg-control{border-color:#2563eb!important;box-shadow:0 0 0 4px #2563eb1a!important}.modal-actions{grid-column:1 / -1;margin-top:32px;display:flex;justify-content:flex-end;gap:12px}.btn{padding:10px 20px;border:none;border-radius:8px;cursor:pointer;font-weight:500;font-size:.95rem;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.btn-primary{background-color:#2563eb;color:#fff}.btn-primary:hover{background-color:#1d4ed8;transform:translateY(-1px)}.btn-secondary{background-color:#ef4444;color:#fff}.btn-secondary:hover{background-color:#dc2626;transform:translateY(-1px)}.alert-error{background-color:#fef2f2;color:#dc2626;padding:12px 16px;border-radius:8px;margin-bottom:20px;border:1px solid #fecaca;display:flex;align-items:center;gap:8px}.alert-success{background-color:#f0fdf4;color:#16a34a;padding:12px 16px;border-radius:8px;margin-bottom:20px;border:1px solid #bbf7d0;display:flex;align-items:center;gap:8px}.modal-content::-webkit-scrollbar{width:6px}.modal-content::-webkit-scrollbar-track{background:transparent}.modal-content::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.modal-content::-webkit-scrollbar-thumb:hover{background:#9ca3af}.modal-content .form-card .full-width,.modal-content .form-card textarea,.modal-content .form-card .css-b62m3t-container{grid-column:1 / -1}.modal-content .form-card textarea{min-height:38px;max-height:200px;line-height:1.5;padding:12px 16px;resize:none;overflow-y:hidden;transition:all .2s ease;font-family:inherit;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;width:100%}.modal-content .form-card textarea:focus{outline:none;border-color:#2563eb;background:#fff;box-shadow:0 0 0 4px #2563eb1a}.modal-content .form-card{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.modal-content .form-card>div{display:flex;flex-direction:column;gap:8px}.modal-content .form-card .full-width{grid-column:1 / -1}.modal-content .form-card .select-container{grid-column:1 / -1;margin-bottom:8px}.modal-content .form-card .textarea-container{grid-column:1 / -1}.modal-content .form-card .input-group{display:flex;flex-direction:column;gap:8px}.modal-content .form-card .input-group label{color:#374151;font-weight:500;font-size:.9rem}.input-error{border-color:#ef4444!important;background-color:#fef2f2!important}.error-message{color:#ef4444;font-size:.8rem;margin-top:4px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{animation:spin 1s linear infinite;margin-right:8px}.btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.input-error .css-13cymwt-control{border-color:#ef4444!important;background-color:#fef2f2!important}.input-error .css-13cymwt-control:hover{border-color:#dc2626!important}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.3rem;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + .85rem);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.5rem;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem}@media (max-width: 400px),(max-height: 550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem}.react-datepicker__children-container{width:13.8rem;margin:.4rem;padding-right:.2rem;padding-left:.2rem;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.dashboard-layout{display:flex;height:100vh;font-family:Arial,sans-serif}.sidebar{width:240px;background:#1f2937;color:#fff;display:flex;flex-direction:column}.sidebar-brand{padding:1rem;font-size:1.25rem;font-weight:700}.sidebar nav ul{list-style:none;padding:0;margin:0}.sidebar nav li{display:flex;align-items:center;padding:.75rem 1rem;cursor:pointer;transition:background .2s}.sidebar nav li:hover,.sidebar nav li.active{background:#374151}.sidebar nav li svg{margin-right:.5rem}.sidebar-footer{margin-top:auto;padding:1rem;display:flex;align-items:center}.user-info{display:flex;align-items:center;gap:.5rem}.user-avatar{width:2rem;height:2rem;border-radius:50%;background:#4b5563;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600}.main-content{flex:1;background:#f3f4f6;overflow-y:auto;padding:0}.main-header{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:1rem 2rem;border-bottom:1px solid #e5e7eb;margin-bottom:1rem}.main-header h1{margin:0;font-size:1.5rem;color:#1e3a8a}.header-actions{display:flex;align-items:center;gap:.5rem}.header-actions button{display:inline-flex;align-items:center;gap:.25rem;padding:.5rem 1rem;font-size:.875rem;border-radius:4px;border:none;cursor:pointer;background:#3b82f6;color:#fff;transition:background .2s,transform .1s}.header-actions button:hover{background:#2563eb;transform:translateY(-1px)}.header-actions .btn-outline{background:none;border:1px solid #3b82f6;color:#3b82f6}.header-actions .btn-outline:hover{background:#e0f2fe;color:#1e40af}.notifications-wrapper{position:relative}.btn-icon{color:#000;background:none;border:none;cursor:pointer;padding:.5rem}.btn-icon:hover{background:#0000000d;border-radius:4px}.notifications-wrapper .badge{position:absolute;top:4px;right:4px;background:#dc2626;color:#fff;border-radius:50%;font-size:.65rem;padding:2px 5px}.notifications-dropdown{position:absolute;right:0;top:100%;margin-top:.5rem;width:260px;max-height:300px;overflow-y:auto;background:#fff;border:1px solid #e5e7eb;border-radius:4px;box-shadow:0 4px 8px #0000001a;z-index:100}.dropdown-header{padding:.5rem 1rem;display:flex;justify-content:space-around;align-items:center}.dropdown-btn{display:flex;justify-content:center;align-items:center}.btn-ver-formulario{gap:.25rem;padding:.5rem 1rem;font-size:.875rem;border-radius:4px;border:none;cursor:pointer;background:#3b82f6;color:#fff;transition:background .2s,transform .1s}.btn-clear{background-color:#fff;color:#000;border:none;margin:.5rem;padding:2px 4px;border-radius:5px;cursor:pointer}.btn-clear:hover{background-color:#fff;border:1px solid #000}.notification-item{padding:8px 12px;border-bottom:1px solid #f3f4f6}.notification-item.nuevo{background:#fefce8}.notification-item.leido{background:#fff}.notification-item:last-child{border-bottom:none}.notification-empty{padding:12px;text-align:center;color:#6b7280;font-size:.875rem}.notif-message{font-size:.875rem}.notif-time{font-size:.75rem;color:#9ca3af;margin-top:2px}.tabbs{display:flex;border-bottom:1px solid #e5e7eb;background:#fff;padding:0 2rem;margin-bottom:1rem}.tabb{padding:.75rem 1rem;background:none;border:none;cursor:pointer;color:#6b7280;transition:background .2s,color .2s}.tabb:hover{background:#f3f4f6}.tabb.active{border-bottom:2px solid #3b82f6;color:#111827;font-weight:500}.search-bar{padding:0 2rem;margin-bottom:1rem}.search-bar input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:4px}.table-section{padding:0 2rem 2rem;background:#fff;border-radius:4px}.table-footer{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-top:1px solid #e5e7eb}.table-info{font-size:.875rem;color:#6b7280}.pagination button{padding:.5rem 1rem;border-radius:4px;border:1px solid #d1d5db;background:#fff;cursor:pointer;transition:background .2s}.pagination button:hover:not(:disabled){background:#f3f4f6}.pagination button:disabled{opacity:.5;cursor:not-allowed}.badge-success{background:#10b9811a;color:#10b981}.badge-error{background:#ef44441a;color:#ef4444}.badge-warning{background:#f59e0b1a;color:#f59e0b}.badge-info{background:#3b82f61a;color:#3b82f6}.badge-purple{background:#8b5cf61a;color:#8b5cf6}.badge-default{background:#f1f5f9;color:#64748b}.page-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;background:#fff;padding:1rem 2rem;border-bottom:1px solid #e5e7eb;margin-bottom:1rem}.page-header .page-title{font-size:1.75rem;color:#1e3a8a;margin:0;flex:1 1 auto}.page-header .page-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}@media (min-width: 640px){.page-header .page-actions{margin-top:0}}.date-navigator{display:flex;align-items:baseline;padding:0 2rem;gap:8px}.boton-flecha-fecha{background-color:#3b82f6;padding:8px 12px;border-radius:4px}.boton-flecha-fecha:hover{background-color:#0056b3}.data-table-container{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.data-table th,.data-table td{padding:.75rem 1rem;border-bottom:1px solid #eee}.data-table .empty-table{text-align:center;padding:2rem;color:#999}.badge-aprobado{background-color:#10b981;padding:6px 12px;border-radius:16px;font-size:14px;font-weight:600;color:#fff}.badge-rechazado{background-color:#ef4444;padding:6px 12px;border-radius:16px;font-size:14px;font-weight:600;color:#fff}.badge-en-revision{background-color:#3b82f6;padding:6px 12px;border-radius:16px;font-size:14px;font-weight:600;color:#fff}.badge-iniciado{background-color:#6b7280;padding:6px 12px;border-radius:16px;font-size:14px;font-weight:600;color:#fff}.badge-visto-sin-validar{background-color:#f59e0b;padding:6px 12px;border-radius:16px;font-size:14px;font-weight:600;color:#fff}.address-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.address-cell:hover{overflow:visible;white-space:normal}.btn-icon{background:#3b82f6;border:none;color:#fff;padding:6px;border-radius:4px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:1rem}.btn-icon:hover{background:#2563eb}.table-footer{display:flex;align-items:center;justify-content:space-between;padding-top:.5rem;font-size:.85rem}.table-footer button{color:#000}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.6;color:#333;background-color:#f5f5f5}.container{max-width:1200px;margin:0 auto;padding:24px}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.title{font-size:28px;font-weight:700;margin-bottom:4px}.subtitle{color:#666;font-size:14px}.badge{padding:6px 12px;border-radius:16px;font-size:14px;font-weight:600;color:#fff}.badge-visto{background-color:#f59e0b}.badge-pendiente{background-color:#6b7280}.badge-en{background-color:#3b82f6}.card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}.card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;margin-bottom:20px}.full-width{grid-column:1 / -1}.card-header{padding:16px;border-bottom:1px solid #eee}.card-title{font-size:18px;font-weight:600;display:flex;align-items:center}.card-description{color:#666;font-size:14px;margin-top:4px}.card-content{padding:16px}.icon{width:20px;height:20px;margin-right:8px}.icon-small{width:16px;height:16px;margin-right:8px}.icon-tiny{width:12px;height:12px;margin-right:4px}.with-icon{display:flex;align-items:center}.info-group{display:flex;flex-direction:column;gap:12px}.info-item{margin-bottom:8px}.info-label{font-size:14px;font-weight:500;color:#666;display:block;margin-bottom:2px}.checklist{list-style-type:disc;padding-left:20px;margin-top:8px}.checklist li{margin-bottom:4px;font-size:14px}.tabs{margin-bottom:20px}.tabs-list{display:flex;border-bottom:1px solid #ddd;margin-bottom:16px;flex-wrap:wrap}.tabs-list button:hover{color:#333}.tab{padding:12px 20px;background:none;border:none;cursor:pointer;font-size:16px;font-weight:500;color:#666;border-bottom:2px solid transparent;transition:all .2s}.tab:hover{color:#333}.tab.active{color:#2563eb;border-bottom:2px solid #2563eb}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px;text-align:left;border-bottom:1px solid #eee}.table th{font-weight:600;color:#666}.monospace{font-family:monospace;font-size:14px}.videos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.video-container{margin-bottom:16px}.video-title{font-size:16px;font-weight:500;margin-bottom:8px}.video{width:100%;border-radius:4px;border:1px solid #eee}.map-container{height:400px;border-radius:4px;margin-bottom:16px}.location-placeholder{height:100px;background-color:#f5f5f5;border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#666}.file-container{margin-top:20px;padding:16px;border:1px solid #eee;border-radius:4px}.file-title{font-size:16px;font-weight:500;margin-bottom:8px}.file-link{display:flex;align-items:center;color:#2563eb;text-decoration:none}.file-link:hover{text-decoration:underline}.no-content{text-align:center;padding:32px;color:#666}.action-buttons{display:flex;gap:12px;margin-top:24px;margin-bottom:16px}.btn{padding:10px 16px;border:none;border-radius:4px;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-success{background-color:#10b981;color:#fff}.btn-success:hover{background-color:#059669}.btn-warning{background-color:#f59e0b;color:#fff}.btn-warning:hover{background-color:#d97706}.btn-danger{background-color:#ef4444;color:#fff}.btn-danger:hover{background-color:#dc2626}.btn-secondary{background-color:#6b7280;color:#fff}.btn-secondary:hover{background-color:#4b5563}.btn:disabled{opacity:.6;cursor:not-allowed}.rechazo-container{margin-top:16px;padding:16px;border:1px solid #fee2e2;border-radius:4px;background-color:#fef2f2}.rechazo-titulo{font-size:18px;font-weight:600;margin-bottom:16px;color:#b91c1c}.rechazo-campo{margin-bottom:16px}.rechazo-label{display:block;font-weight:500;margin-bottom:8px}.rechazo-input,.rechazo-select{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;margin-bottom:4px;font-family:inherit}.rechazo-input{resize:vertical}.contador-caracteres{font-size:12px;color:#666;text-align:right;margin-top:4px}.mensaje-error{color:#dc2626;font-size:12px;margin-top:4px}.input-error{border-color:#dc2626;background-color:#fef2f2}.checkbox-container{display:flex;align-items:flex-start;margin-bottom:16px}.checkbox-label{display:flex;align-items:flex-start;cursor:pointer}.checkbox-label input{margin-right:8px;margin-top:3px}.rechazo-botones{display:flex;gap:12px;justify-content:flex-end}.text-error{color:#ef4444}.historial-container{max-height:600px;overflow-y:auto}.historial-timeline{position:relative;padding-left:30px}.historial-timeline:before{content:"";position:absolute;top:0;bottom:0;left:8px;width:2px;background-color:#e5e7eb}.historial-item{position:relative;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #f3f4f6}.historial-item:last-child{margin-bottom:0;border-bottom:none}.historial-icono{position:absolute;left:-30px;top:0;width:24px;height:24px;border-radius:50%;background-color:#e5e7eb;display:flex;align-items:center;justify-content:center;z-index:1}.historial-icono.accion-creacion{background-color:#3b82f6;color:#fff}.historial-icono.accion-aprobacion{background-color:#10b981;color:#fff}.historial-icono.accion-rechazo{background-color:#ef4444;color:#fff}.historial-icono.accion-revision{background-color:#f59e0b;color:#fff}.historial-icono.accion-edicion{background-color:#8b5cf6;color:#fff}.historial-contenido{padding-left:8px}.historial-encabezado{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.historial-accion{font-size:16px;font-weight:600;margin:0}.historial-fecha{font-size:12px;color:#6b7280;display:flex;align-items:center}.historial-usuario{font-size:14px;color:#4b5563;margin-bottom:8px}.historial-detalles{font-size:14px;margin-bottom:12px}.historial-cambio-estado{display:flex;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}.historial-estado{padding:2px 8px;border-radius:12px;font-size:12px;font-weight:500}.historial-flecha{color:#6b7280;margin:0 4px}.estado-pendiente{background-color:#e5e7eb;color:#4b5563}.estado-en{background-color:#dbeafe;color:#1e40af}.estado-aprobado{background-color:#d1fae5;color:#065f46}.estado-rechazado{background-color:#fee2e2;color:#b91c1c}.estado-visto{background-color:#fef3c7;color:#92400e}.historial-campos{background-color:#f9fafb;border-radius:4px;padding:12px;margin-top:8px}.historial-campos-titulo{font-size:14px;font-weight:500;margin-bottom:8px}.historial-campos-lista{list-style-type:none}.historial-campo-item{margin-bottom:8px;font-size:13px}.historial-campo-nombre{font-weight:500;display:block;margin-bottom:4px}.historial-campo-valores{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-left:12px}.historial-campo-anterior{text-decoration:line-through;color:#ef4444}.historial-campo-flecha{color:#6b7280;margin:0 4px}.historial-campo-nuevo{color:#10b981}.estadisticas-tabs{display:flex;border-bottom:1px solid #ddd;margin-bottom:20px;flex-wrap:wrap}.estadisticas-tab{padding:10px 16px;background:none;border:none;cursor:pointer;font-size:14px;font-weight:500;color:#666;border-bottom:2px solid transparent;transition:all .2s}.estadisticas-tab:hover{color:#333}.estadisticas-tab.active{color:#2563eb;border-bottom:2px solid #2563eb}.estadisticas-contenido{padding:20px}.estadisticas-resumen{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.estadisticas-card{background-color:#f8fafc;border-radius:8px;padding:16px;box-shadow:0 1px 3px #0000001a}.estadisticas-card-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.estadisticas-card-header h3{margin:0;font-size:14px;color:#64748b}.estadisticas-card-valor{font-size:24px;font-weight:600;color:#0f172a}.estadisticas-seccion{margin-bottom:30px}.estadisticas-seccion h3{font-size:16px;color:#334155;margin-bottom:16px}.grafico-barras{display:flex;flex-direction:column;gap:12px}.grafico-barra-container{display:grid;grid-template-columns:200px 1fr 60px;align-items:center;gap:12px}.grafico-etiqueta{font-size:14px;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grafico-barra{height:24px;background-color:#e2e8f0;border-radius:4px;overflow:hidden}.grafico-barra-relleno{height:100%;background-color:#3b82f6;transition:width .3s ease}.grafico-valor{font-size:14px;font-weight:500;color:#64748b;text-align:right}.sin-datos{text-align:center;padding:40px;color:#64748b}.sin-datos p{margin:0;font-size:16px}.accion-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:500;color:#fff;margin-right:4px;margin-bottom:4px}.acciones-tipo-lista{display:flex;flex-wrap:wrap;gap:4px}.estadisticas-no-data{text-align:center;padding:20px;color:#6b7280;font-style:italic}.grafico-donut-container{display:flex;flex-direction:column;align-items:center;margin-top:20px}.grafico-donut{position:relative;width:200px;height:200px;border-radius:50%;background-color:#f3f4f6;margin-bottom:20px}.grafico-donut-segmento{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;clip-path:polygon(50% 50%,50% 0%,100% 0%,100% 100%,0% 100%,0% 0%,50% 0%);transform:rotate(var(--start-angle));background-color:var(--color)}.grafico-donut-segmento:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;background-color:#f3f4f6;clip-path:polygon(50% 50%,50% 0%,100% 0%,100% 100%,0% 100%,0% 0%,50% 0%);transform:rotate(calc(var(--end-angle) - var(--start-angle)))}.grafico-donut-centro{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:120px;height:120px;border-radius:50%;background-color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 10px #0000000d}.grafico-donut-centro span:first-child{font-size:28px;font-weight:700;color:#111827}.grafico-donut-subtitulo{font-size:12px;color:#6b7280;text-align:center}.grafico-donut-tooltip{position:absolute;top:-40px;left:50%;transform:translate(-50%);background-color:#111827;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;opacity:0;transition:opacity .2s;pointer-events:none;white-space:nowrap}.grafico-donut-segmento:hover .grafico-donut-tooltip{opacity:1}.grafico-leyenda{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:16px}.grafico-leyenda-item{display:flex;align-items:center;font-size:14px}.grafico-leyenda-color{width:12px;height:12px;border-radius:2px;margin-right:6px}.estadisticas-timeline{margin-top:32px}.timeline-container{position:relative;height:80px;margin:40px 0}.timeline-line{position:absolute;top:50%;left:0;right:0;height:2px;background-color:#e5e7eb}.timeline-punto{position:absolute;top:50%;transform:translateY(-50%);width:12px;height:12px;border-radius:50%;background-color:#3b82f6;cursor:pointer}.timeline-tooltip{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background-color:#111827;color:#fff;padding:8px;border-radius:4px;font-size:12px;opacity:0;transition:opacity .2s;pointer-events:none;white-space:nowrap;z-index:10}.timeline-punto:hover .timeline-tooltip{opacity:1}.timeline-fechas{position:absolute;bottom:-30px;left:0;right:0;display:flex;justify-content:space-between;font-size:12px;color:#6b7280}.estadisticas-cards-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-top:24px}@media (max-width: 768px){.card-grid,.videos-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.btn{width:100%}.historial-encabezado{flex-direction:column;align-items:flex-start}.historial-fecha{margin-top:4px}.estadisticas-resumen{grid-template-columns:1fr}.grafico-barra-container{flex-direction:column;align-items:flex-start}.grafico-barra-etiqueta{width:100%;margin-bottom:4px}.grafico-donut-container{flex-direction:column}.timeline-tooltip{width:150px;white-space:normal;text-align:center}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;color:#6b7280}.spinner{animation:spin 1s linear infinite;font-size:24px;margin-bottom:16px;color:#2563eb}.historial-container{padding:1rem;background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.historial-item{padding:1rem;border-left:3px solid #3b82f6;margin-bottom:1rem;background-color:#f8fafc;border-radius:0 8px 8px 0;transition:all .3s ease}.historial-item:hover{transform:translate(4px);box-shadow:0 2px 4px #0000000d}.historial-header{margin-bottom:1rem}.historial-titulo{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.historial-titulo h4{margin:0;color:#1e40af;font-weight:600}.fecha,.historial-usuario{display:flex;align-items:center;gap:.5rem;color:#64748b;font-size:.875rem}.icon-small{font-size:1rem;color:#64748b}.campos-modificados{display:flex;flex-direction:column;gap:.75rem;padding:.75rem;background-color:#fff;border-radius:6px;border:1px solid #e2e8f0}.campo-modificado{display:flex;flex-direction:column;gap:.25rem}.campo-nombre{font-weight:500;color:#475569;font-size:.875rem}.campo-valores{display:flex;align-items:center;gap:.5rem;margin-left:1rem;font-size:.875rem}.valor-anterior{color:#dc2626;text-decoration:line-through;background-color:#fef2f2;padding:.25rem .5rem;border-radius:4px}.valor-nuevo{color:#059669;background-color:#f0fdf4;padding:.25rem .5rem;border-radius:4px}.flecha{color:#64748b;font-weight:700}.historial-item.creacion{border-left-color:#3b82f6}.historial-item.edicion{border-left-color:#8b5cf6}.historial-item.completar{border-left-color:#10b981}.historial-item.rechazo{border-left-color:#ef4444}.historial-item.revision{border-left-color:#f59e0b}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.historial-item{animation:slideIn .3s ease-out}.estadisticas-contenedor{display:flex;flex-direction:column;gap:2rem;padding:1rem}.estadisticas-resumen{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.estadistica-card{background-color:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;transition:transform .2s ease}.estadistica-card:hover{transform:translateY(-2px)}.estadistica-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.estadistica-header .icon{font-size:1.5rem;color:#3b82f6}.estadistica-header h3{margin:0;font-size:1rem;color:#1f2937}.estadistica-valor{font-size:2rem;font-weight:600;color:#1f2937;margin-bottom:.5rem}.estadistica-subtexto{font-size:.875rem;color:#6b7280}.estadistica-seccion{background-color:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.estadistica-seccion h3{margin:0 0 1.5rem;color:#1f2937;font-size:1.25rem;display:flex;align-items:center;gap:.75rem}.icon-titulo{color:#3b82f6;font-size:1.25rem}.grafico-barras{display:flex;flex-direction:column;gap:1rem}.barra-container{display:grid;grid-template-columns:200px 1fr auto;align-items:center;gap:1rem}.barra-etiqueta{font-size:.875rem;color:#4b5563;display:flex;align-items:center;gap:.5rem}.barra{height:8px;background-color:#e5e7eb;border-radius:4px;overflow:hidden}.barra-relleno{height:100%;background-color:#3b82f6;border-radius:4px;transition:width .3s ease}.barra-valor{font-size:.875rem;font-weight:500;color:#4b5563;min-width:4rem;text-align:right}.tabla-actividad{display:flex;flex-direction:column;gap:1rem}.actividad-tecnico{background-color:#f8fafc;border-radius:8px;padding:1rem;border-left:3px solid #3b82f6}.tecnico-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.tecnico-nombre{font-weight:500;color:#1f2937;display:flex;align-items:center;gap:.5rem}.tecnico-total{font-size:.875rem;color:#6b7280;background-color:#f1f5f9;padding:.25rem .75rem;border-radius:9999px}.tecnico-detalles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.detalle-item{display:flex;flex-direction:column;gap:.25rem}.detalle-label{font-size:.75rem;color:#6b7280}.detalle-valor{font-size:.875rem;color:#1f2937}.flujo-estados{display:flex;flex-direction:column;gap:1rem}.estado-cambio{background-color:#f8fafc;border-radius:8px;padding:1rem}.estado-header{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.estado-anterior,.estado-nuevo{font-size:.875rem;padding:.25rem .75rem;border-radius:9999px}.estado-anterior{background-color:#e5e7eb;color:#4b5563}.estado-nuevo{background-color:#dbeafe;color:#1e40af}.estado-detalles{display:flex;gap:1rem;font-size:.875rem;color:#6b7280}.actividad-diaria{display:flex;flex-direction:column;gap:1rem}.dia-actividad{background-color:#f8fafc;border-radius:8px;padding:1rem}.dia-fecha{font-size:.875rem;font-weight:500;color:#1f2937;margin-bottom:.5rem}.dia-detalles{display:flex;flex-direction:column;gap:.25rem}.dia-total{font-size:.875rem;color:#3b82f6;font-weight:500}.dia-tipos{font-size:.875rem;color:#6b7280}.icon-small{font-size:1rem;color:#6b7280}.sin-datos{text-align:center;padding:2rem;color:#6b7280;font-size:.875rem}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.estadistica-card,.estadistica-seccion{animation:slideIn .3s ease-out forwards}@media (max-width: 768px){.barra-container{grid-template-columns:1fr;gap:.5rem}.barra-valor{text-align:left}.tecnico-detalles{grid-template-columns:1fr}.estado-header{flex-direction:column;align-items:flex-start;gap:.5rem}.estado-detalles{flex-direction:column}}.tecnicos-view-container{max-width:1200px;margin:0 auto;padding:20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.tecnicos-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.tecnicos-header h1{color:#333;margin:0}.filtros-container{background-color:#f9f9f9;border-radius:8px;padding:16px;margin-bottom:20px;box-shadow:0 2px 4px #0000000d}.filtro-grupo{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.filtro-input{position:relative;flex:1;min-width:200px}.filtro-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#666}.filtro-input input{width:100%;padding:10px 10px 10px 35px;border:1px solid #ddd;border-radius:4px;font-size:14px}.filtro-select{padding:10px;border:1px solid #ddd;border-radius:4px;background-color:#fff;min-width:150px;font-size:14px}.tecnicos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-bottom:20px}.tecnico-card{background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a;transition:transform .2s,box-shadow .2s}.tecnico-card:hover{transform:translateY(-3px);box-shadow:0 4px 12px #00000026}.tecnico-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:#f5f5f5;border-bottom:1px solid #eee}.tecnico-id{font-weight:600;color:#555}.tecnico-estado{display:flex;align-items:center;gap:5px;font-size:13px;font-weight:500;padding:4px 8px;border-radius:4px}.tecnico-estado.activo{background-color:#e6f7e6;color:#2e7d32}.tecnico-estado.inactivo{background-color:#ffebee;color:#c62828}.tecnico-info{padding:16px}.tecnico-info h3{margin:0 0 8px;color:#333}.tecnico-info p{margin:4px 0;color:#666;font-size:14px}.tecnico-acciones{display:flex;padding:12px 16px;gap:10px;border-top:1px solid #eee}.btn-ver,.btn-toggle{flex:1;padding:8px;border:none;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;font-weight:500;transition:background-color .2s}.btn-ver{background-color:#e3f2fd;color:#1565c0}.btn-ver:hover{background-color:#bbdefb}.btn-toggle.activar{background-color:#e8f5e9;color:#2e7d32}.btn-toggle.activar:hover{background-color:#c8e6c9}.btn-toggle.desactivar{background-color:#ffebee;color:#c62828}.btn-toggle.desactivar:hover{background-color:#ffcdd2}.no-resultados{grid-column:1 / -1;text-align:center;padding:40px;background-color:#f9f9f9;border-radius:8px;color:#666}.paginacion{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:20px}.btn-pagina{display:flex;align-items:center;gap:6px;background-color:#f0f0f0;border:none;border-radius:4px;padding:8px 16px;cursor:pointer;transition:background-color .2s}.btn-pagina:hover:not(:disabled){background-color:#e0e0e0}.btn-pagina:disabled{opacity:.5;cursor:not-allowed}.pagina-info{font-size:14px;color:#666}@media (max-width: 768px){.tecnicos-header{flex-direction:column;align-items:flex-start;gap:10px}.filtro-grupo{flex-direction:column}.filtro-input,.filtro-select{width:100%}.tecnicos-grid{grid-template-columns:1fr}}
