.brand-logo-container{display:flex;justify-content:center;position:absolute;width:clamp(280px,90%,600px);left:clamp(10px,5vw,140px);top:0;right:0}.brand-logo{max-width:80%;height:auto;display:flex;flex-direction:column;align-items:center;margin-bottom:3.5rem}@media (max-width: 600px){.brand-logo{margin-bottom:3rem}}.nps-container{text-align:center;margin:10px;background-color:#f5f5f5;padding:20px;border-radius:15px;box-shadow:0 2px 8px #0000001a}.nps-slider-wrapper{margin:20px 0;position:relative}.nps-slider-background{position:relative;display:flex;justify-content:space-between;align-items:center;width:100%;height:30px;background-color:transparent}.nps-progress-bar{position:absolute;top:0;left:0;height:100%;background-color:#00800033;border-radius:15px;z-index:1}.nps-circle{position:relative;width:24px;height:24px;border-radius:50%;background-color:#fff;z-index:2;border:1px solid #ccc;cursor:pointer;transition:transform .3s ease,background-color .3s ease}.nps-circle.selected{background-color:#0080004d}.nps-circle.highlighted{background-color:#006400;transform:scale(1.15)}.nps-values{display:flex;justify-content:space-between;margin-top:10px;font-size:14px}.nps-value{color:#888}.nps-value.highlighted{font-weight:700;color:#006400}@media (max-width: 768px){.nps-circle{width:20px;height:20px}.nps-values{font-size:18px}}.nps-text-wrapper{margin-top:15px}.nps-textarea{width:clamp(200px,70vw,600px);height:clamp(100px,25vh,300px);padding:15px;font-size:16px;border:1px solid #ccc;border-radius:5px}@media (max-width: 600px){.survey-completed,.survey-already-completed{padding:2rem .5rem}}.custom-button{padding:10px 20px;color:#fff;font-size:16px;border:none;border-radius:5px;cursor:pointer;transition:background-color .3s}.custom-button:hover{background-color:#45a049}.full-width{width:90%}.centered{display:block;margin:0 auto}body .question{background:#f1eded;font-family:system-ui;margin-top:8rem}.survey-completed,.survey-already-completed{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:1rem;background:#f1eded;box-sizing:border-box}.survey-completed h2,.survey-already-completed h2{color:#4caf50;font-size:1.75rem;margin:.5rem 0;text-align:center;width:100%}.survey-completed p,.survey-already-completed p{font-size:16px;color:#555}.survey-page{display:flex;flex-direction:column;min-height:100vh;background:#661515;align-items:center;justify-content:center}.survey-content{width:100%;max-width:500px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.survey-page{display:flex;flex-direction:column;min-height:100vh;background:#f1eded}.survey-content{flex-direction:column;display:flex;align-items:center;padding:0}.dashboard-container{flex:1;background:#f8f9fa;padding:0;margin:0;overflow-x:hidden}.dashboard-header{background:#fff;padding:10px 32px;border-bottom:1px solid #e9ecef;box-shadow:0 2px 4px #0000000a}.header-content{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto}.header-title h1{font-size:22px;font-weight:600;color:#2c3e50;margin:0}.header-actions{display:flex;align-items:center;gap:16px}.upload-button{display:flex;align-items:center;gap:8px;padding:12px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500;font-size:14px;transition:all .3s ease;box-shadow:0 2px 8px #667eea4d}.upload-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.upload-icon{font-size:16px;font-weight:700}.upload-text{font-size:14px}.dashboard-stats{padding:10px 32px;max-width:1200px;margin:0 auto}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px;margin-bottom:10px}.stat-card{background:#fff;border-radius:12px;padding:12px;box-shadow:0 2px 8px #0000000f;border:1px solid #e9ecef;transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.stat-content{display:flex;flex-direction:column;gap:8px}.stat-label{font-size:14px;font-weight:500;color:#6c757d;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:22px;font-weight:700;color:#2c3e50;line-height:1}.stat-subtitle{font-size:14px;color:#6c757d;font-weight:500}.stat-details{display:flex;flex-direction:column;gap:12px}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f1f3f4}.stat-row:last-child{border-bottom:none}.stat-row .stat-subtitle{font-size:13px;color:#6c757d}.stat-row .stat-value{font-size:20px;font-weight:600;color:#2c3e50}.dashboard-charts{padding:0 32px 10px;max-width:1200px;margin:0 auto}.charts-grid{display:grid;grid-template-columns:2fr 1fr;gap:10px;grid-template-areas:"chart-bar chart-gauge" "chart-bar chart-average"}.chart-bar{grid-area:chart-bar}.chart-gauge{grid-area:chart-gauge}.chart-average{grid-area:chart-average}.chart-container{background:#fff;border-radius:12px;padding:12px;box-shadow:0 2px 8px #0000000f;border:1px solid #e9ecef;transition:all .3s ease}.chart-container:hover{transform:translateY(-1px);box-shadow:0 4px 16px #0000001a}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.chart-header h3{font-size:14px;font-weight:600;color:#2c3e50;margin:0}.chart-container.chart-gauge .chart-header,.chart-container.chart-average .chart-header{justify-content:center}.chart-container.chart-gauge .chart-header h3,.chart-container.chart-average .chart-header h3{text-align:center}@media (max-width: 768px){.chart-header{justify-content:center!important;flex-direction:column;gap:8px}.chart-header h3{text-align:center!important;margin:0}.chart-filter{display:none}}.chart-filter select{padding:8px 12px;border:1px solid #e9ecef;border-radius:6px;background:#fff;font-size:14px;color:#495057;cursor:pointer}.chart-content{display:flex;align-items:center;justify-content:center;min-height:180px;height:100%}.chart-container.chart-bar .chart-content{min-height:220px;align-items:flex-start;padding-top:8px}.average-value{font-size:24px;font-weight:700;color:#2c3e50;text-align:center}@media (max-width: 1024px){.charts-grid{grid-template-columns:1fr;grid-template-areas:"chart-bar" "chart-gauge" "chart-average"}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}@media (min-width: 1025px) and (max-width: 1400px){.charts-grid{grid-template-columns:2fr 1fr;grid-template-areas:"chart-bar chart-gauge" "chart-bar chart-average";grid-template-rows:1fr 1fr}.chart-container.chart-bar{grid-row:span 2}.chart-container.chart-gauge,.chart-container.chart-average{grid-row:span 1}.dashboard-container{padding-left:40px}.dashboard-header,.dashboard-stats{padding:10px 32px 10px 72px}.dashboard-charts{padding:0 32px 10px 72px}}@media (min-width: 1401px){.charts-grid{grid-template-columns:2fr 1fr;grid-template-areas:"chart-bar chart-gauge" "chart-bar chart-average";grid-template-rows:1fr 1fr}.chart-container.chart-bar{grid-row:span 2}.chart-container.chart-gauge,.chart-container.chart-average{grid-row:span 1}}@media (max-width: 768px){.dashboard-header{padding:16px 20px}.header-content{flex-direction:column;gap:16px;align-items:flex-start}.header-title h1{font-size:24px}.upload-button{width:100%;justify-content:center}.dashboard-stats{padding:20px}.stats-grid{grid-template-columns:1fr;gap:16px}.stat-card{padding:20px}.stat-value{font-size:28px}.dashboard-charts{padding:0 20px 20px}.chart-container{padding:20px}.chart-header{flex-direction:column;gap:12px;align-items:center;justify-content:center}.chart-header h3{font-size:16px;text-align:center}.average-value{font-size:28px}.dashboard-container,.dashboard-container.expanded,.dashboard-container.collapsed{margin-left:0;padding-top:20px;padding-right:80px}}@media (max-width: 480px){.dashboard-header{padding:12px 16px}.header-title h1{font-size:20px}.dashboard-stats,.stat-card{padding:16px}.stat-value{font-size:24px}.dashboard-charts{padding:0 16px 16px}.chart-container{padding:16px}.average-value{font-size:24px}}.sidebar-container{font-family:var(--font-family);position:fixed;top:0;left:0;height:100%;background-color:#1e1e2e;color:#fff;transition:width var(--transition-duration) ease;z-index:1000;display:flex;flex-direction:column}.sidebar-container.expanded{width:210px}.sidebar-logo{width:100%;height:65%}.sidebar-logo-expanded{display:flex;align-items:center;justify-content:center;gap:20px}.sidebar-logo-expanded img{width:48%}.sidebar-logo-expanded span{position:relative;font-size:1.5rem}.sidebar-container.collapsed{width:80px}.sidebar-header{display:flex;align-items:center;justify-content:center;padding:10px;height:60px;background-color:#151521;border-bottom:1px solid #2e2e3e}.collapse-button{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer}.sidebar-options{list-style:none;margin:1;padding-left:1%;flex-grow:1}.sidebar-options li{display:flex;align-items:center;padding:15px;cursor:pointer;transition:background-color var(--transition-duration) ease,color var(--transition-duration) ease}.sidebar-options li:hover{background-color:#2e2e3e;color:#4caf50}.sidebar-icon{font-size:1.5rem;margin-right:15px}.sidebar-icon.collapsed{margin-right:0}.sidebar-text{flex-grow:1;text-align:left;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity var(--transition-duration) ease}.sidebar-container.collapsed .sidebar-text{opacity:0;width:0}.sidebar-footer{display:flex;align-items:center;padding:15px;border-top:1px solid #2e2e3e;background-color:#151521;cursor:pointer;transition:background-color var(--transition-duration) ease,color var(--transition-duration) ease}.sidebar-footer:hover{background-color:#2e2e3e}.sidebar-footer .logout-icon{font-size:1.5rem;margin-right:15px}.sidebar-footer .logout-text{flex-grow:1;text-align:left;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity var(--transition-duration) ease}.sidebar-container.collapsed .sidebar-footer .logout-text{opacity:0;width:0}.dashboard-container{margin-left:80px;transition:margin-left var(--transition-duration) ease}.dashboard-container.collapsed{margin-left:80px}@media (max-width: 768px){.sidebar-container{width:100%!important;height:auto;position:relative;background-color:#1e1e2e;z-index:1000}.sidebar-container.expanded,.sidebar-container.collapsed{width:100%!important}.sidebar-header{height:50px;padding:8px;justify-content:space-between;align-items:center}.sidebar-logo{width:40px;height:40px}.sidebar-logo-expanded{gap:10px}.sidebar-logo-expanded img{width:40px;height:40px}.sidebar-options{padding:0;margin:0}.sidebar-options li{padding:12px 15px;border-bottom:1px solid #2e2e3e;justify-content:flex-start}.sidebar-options li:last-child{border-bottom:none}.sidebar-icon{font-size:1.2rem;margin-right:12px;min-width:20px}.sidebar-container.collapsed .sidebar-text,.sidebar-container.collapsed .logout-text{opacity:1;width:auto}.sidebar-footer{padding:12px 15px;border-top:1px solid #2e2e3e}.dashboard-container,.dashboard-container.expanded,.dashboard-container.collapsed{margin-left:0;margin-top:0}.sidebar-options li span,.sidebar-footer .logout-info{font-size:14px;font-weight:500}.sidebar-options li:hover,.sidebar-footer:hover{background-color:#2e2e3e;transform:none}.sidebar-text,.logout-text{white-space:normal;line-height:1.4}}@media (min-width: 769px) and (max-width: 1024px){.sidebar-container.expanded{width:180px}.sidebar-container.collapsed{width:70px}.dashboard-container.expanded{margin-left:180px}.dashboard-container.collapsed{margin-left:70px}.sidebar-icon{font-size:1.3rem}.sidebar-options li span,.sidebar-footer .logout-info{font-size:13px}}@media (max-width: 480px){.sidebar-container{font-size:14px}.sidebar-header{height:45px;padding:6px 12px}.sidebar-logo,.sidebar-logo-expanded img{width:35px;height:35px}.sidebar-options li{padding:10px 12px}.sidebar-icon{font-size:1.1rem;margin-right:10px}.sidebar-options li span,.sidebar-footer .logout-info{font-size:13px}.sidebar-footer{padding:10px 12px}}@media (max-width: 768px) and (orientation: landscape){.sidebar-container{height:100vh;overflow-y:auto}.sidebar-options{max-height:60vh;overflow-y:auto}}.mobile-menu-button{position:fixed;top:20px;right:20px;z-index:1001;background:#1e1e2e;color:#fff;border:none;border-radius:8px;padding:12px;cursor:pointer;box-shadow:0 4px 12px #0000004d;transition:all .3s ease;display:none}.mobile-menu-button:hover{background:#2e2e3e;transform:scale(1.05)}.mobile-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mobile-sidebar{position:fixed;top:0;left:-100%;width:280px;height:100vh;background:#1e1e2e;color:#fff;z-index:1000;transition:left .3s ease;display:flex;flex-direction:column;overflow-y:auto}.mobile-sidebar.open{left:0}@media (max-width: 768px){.mobile-menu-button{display:block}.sidebar-container{display:none}.dashboard-container,.dashboard-container.expanded,.dashboard-container.collapsed{margin-left:0;padding-top:20px;padding-right:0}}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slideOut{0%{transform:translate(0)}to{transform:translate(-100%)}}.mobile-sidebar.open{animation:slideIn .3s ease}.mobile-sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #2e2e3e;background:#151521}.mobile-logo-container{display:flex;align-items:center}.mobile-logo{width:40px;height:40px;object-fit:contain}.mobile-close-btn{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:8px;border-radius:4px;transition:background-color .3s ease}.mobile-close-btn:hover{background:#2e2e3e}.mobile-sidebar-options{list-style:none;margin:0;padding:0;flex-grow:1}.mobile-sidebar-options li{display:flex;align-items:center;padding:18px 20px;border-bottom:1px solid #2e2e3e;cursor:pointer;transition:background-color .2s ease;min-height:60px}.mobile-sidebar-options li:last-child{border-bottom:none}.mobile-sidebar-options li:active{background:#2e2e3e}.mobile-sidebar-icon{font-size:1.4rem;margin-right:16px;color:#fff;min-width:24px}.mobile-sidebar-text{font-size:16px;font-weight:500;color:#fff;font-family:var(--font-family)}.mobile-sidebar-footer{display:flex;align-items:center;padding:20px;border-top:1px solid #2e2e3e;background:#151521;cursor:pointer;transition:background-color .2s ease;margin-top:auto}.mobile-sidebar-footer:active{background:#2e2e3e}.mobile-sidebar-footer .mobile-sidebar-icon{margin-right:16px}@media (max-width: 480px){.mobile-sidebar-text{font-size:15px}.mobile-sidebar-icon{font-size:1.3rem}.mobile-sidebar-options li{padding:16px 18px;min-height:55px}.mobile-logo{width:35px;height:35px}}.loading-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#f0f0f0b3;display:flex;justify-content:center;align-items:center;z-index:9999}.loading-gif{width:180px}.CircularProgressbar{width:100%;vertical-align:middle}.CircularProgressbar .CircularProgressbar-path{stroke:#3e98c7;stroke-linecap:round;-webkit-transition:stroke-dashoffset .5s ease 0s;transition:stroke-dashoffset .5s ease 0s}.CircularProgressbar .CircularProgressbar-trail{stroke:#d6d6d6;stroke-linecap:round}.CircularProgressbar .CircularProgressbar-text{fill:#3e98c7;font-size:20px;dominant-baseline:middle;text-anchor:middle}.CircularProgressbar .CircularProgressbar-background{fill:#d6d6d6}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-background{fill:#3e98c7}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-text{fill:#fff}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-path{stroke:#fff}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-trail{stroke:transparent}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f5f5f5,#e9ecef);font-family:var(--font-family);padding:20px;box-sizing:border-box}.login-card{background:#fff;border-radius:16px;box-shadow:0 10px 30px #0000001a;padding:40px;width:100%;max-width:400px;position:relative;overflow:hidden}.login-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#007bff,#0056b3)}.login-header{text-align:center;margin-bottom:30px}.logo-container{margin-bottom:20px}.login-logo{height:60px;width:auto;object-fit:contain}.login-header h1{color:#7c7474;font-size:24px;font-weight:700;margin:0 0 8px;font-family:var(--font-family)}.login-header p{color:#6c757d;font-size:14px;margin:0;font-family:var(--font-family)}.login-form{display:flex;flex-direction:column;gap:20px}.input-group{display:flex;flex-direction:column;gap:8px}.input-group label{font-size:14px;font-weight:600;color:#495057;font-family:var(--font-family)}.input-group input{padding:12px 16px;border:2px solid #e9ecef;border-radius:8px;font-size:14px;font-family:var(--font-family);transition:all .3s ease;background:#f8f9fa}.input-group input:focus{outline:none;border-color:#007bff;background:#fff;box-shadow:0 0 0 3px #007bff1a}.password-input-container{position:relative;display:flex;align-items:center}.password-input-container input{padding-right:50px;width:100%}.password-toggle-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:#6c757d;cursor:pointer;padding:8px;border-radius:4px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-size:16px}.password-toggle-btn:hover{color:#007bff;background:#007bff1a}.password-toggle-btn:focus{outline:none;color:#007bff;background:#007bff1a}.error-message{background:#f8d7da;color:#721c24;padding:12px 16px;border-radius:8px;border:1px solid #f5c6cb;font-size:14px;font-family:var(--font-family);display:flex;align-items:center;gap:8px}.error-message:before{content:"⚠️";font-size:16px}.login-btn{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none;padding:14px 24px;border-radius:8px;font-size:16px;font-weight:600;font-family:var(--font-family);cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #007bff4d}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.loading-spinner{display:flex;align-items:center;justify-content:center;gap:12px}.spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.login-footer{text-align:center;margin-top:30px;padding-top:20px;border-top:1px solid #e9ecef}.login-footer p{color:#6c757d;font-size:12px;margin:0;font-family:var(--font-family)}@media (max-width: 480px){.login-container{padding:10px}.login-card{padding:30px 20px;border-radius:12px}.login-header h1{font-size:20px}.login-header p{font-size:13px}.input-group input{padding:10px 14px;font-size:16px}.login-btn{padding:12px 20px;font-size:16px}}@media (max-width: 360px){.login-card{padding:25px 15px}.login-header h1{font-size:18px}.login-form{gap:16px}}@media (prefers-color-scheme: dark){.login-container{background:linear-gradient(135deg,#2d3748,#1a202c)}.login-card{background:#2d3748;color:#fff}.login-header h1{color:#e2e8f0}.login-header p{color:#a0aec0}.input-group label{color:#e2e8f0}.input-group input{background:#4a5568;border-color:#4a5568;color:#fff}.input-group input:focus{background:#2d3748;border-color:#007bff}.input-group input::placeholder{color:#a0aec0}.password-toggle-btn{color:#a0aec0}.password-toggle-btn:hover{color:#007bff;background:#007bff33}.password-toggle-btn:focus{color:#007bff;background:#007bff33}.login-footer p{color:#a0aec0}}html,body,:root{--font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;--transition-duration: .5s;height:100%;margin:0;padding:0}.batch-content{width:95%;margin-top:2.5%;justify-self:center;padding:20px;background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.batch-content p{text-align:center;font-size:1.2rem;color:#555}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;color:#fff;font-size:24px;display:flex;justify-content:center;align-items:center;z-index:9999}.batch-info{display:grid;grid-template-columns:1fr 1fr;gap:8px}.info-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.batch-actions{display:flex;gap:8px;justify-content:flex-end}.batch-actions .action-button{flex:1;margin-right:0;padding:10px 16px;font-size:14px;font-weight:500}.status-pill{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-pill.Pendiente{background-color:#fff3cd;color:#856404}.status-pill.Parcial{background-color:#d1ecf1;color:#0c5460}.status-pill.Completado{background-color:#d4edda;color:#155724}.batches-container{display:flex;height:100vh;font-family:var(--font-family);overflow-x:hidden}.dashboard-container{flex:1;padding:20px;background:#f5f5f5;transition:margin-left .3s ease;overflow-x:hidden}.dashboard-container.collapsed{margin-left:60px}.dashboard-container.expanded{margin-left:250px}.dashboard-header{background:#fff;border-radius:12px;padding:15px 30px;margin-bottom:20px;box-shadow:0 4px 6px #0000000d;text-align:center;box-sizing:border-box;border:1px solid #e9ecef}.header-title h1{color:#7c7474;margin:0;font-size:18px;font-weight:700;padding:0}.batch-content{width:100%;margin:0;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000000d;padding:30px;min-height:calc(100vh - 200px);box-sizing:border-box;overflow-x:hidden;border:1px solid #e9ecef}.batch-list{margin-bottom:30px}.batch-item{background:#fff;border-radius:10px;padding:20px;margin-bottom:15px;box-shadow:0 2px 4px #0000000d;border:1px solid #e9ecef;transition:all .3s ease}.batch-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.batch-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.batch-title{font-weight:600;color:#495057;font-size:16px;margin:0}.batch-date{color:#6c757d;font-size:14px;margin:0}.batch-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-bottom:15px}.stat-item{text-align:center;padding:12px;background:#f1f3f4;border-radius:8px;border:1px solid #e9ecef}.stat-label{font-size:12px;color:#6c757d;text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}.stat-value{font-size:18px;font-weight:600;color:#495057}.batch-actions{display:flex;gap:10px;justify-content:flex-end}.download-btn{padding:8px 16px;background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #007bff33}.download-btn:hover{background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-1px);box-shadow:0 4px 8px #007bff4d}.pagination-container{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:30px;padding:20px;background:#f1f3f4;border-radius:10px;border:1px solid #e9ecef}.pagination-info{color:#495057;font-size:14px;font-weight:500}.pagination-button{padding:8px 16px;background:#fff;border:2px solid #e9ecef;border-radius:6px;color:#495057;font-weight:500;cursor:pointer;transition:all .3s ease;font-size:14px}.pagination-button:hover:not(:disabled){border-color:#007bff;color:#007bff;transform:translateY(-1px);box-shadow:0 2px 4px #007bff1a}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-button.active{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border-color:#007bff;box-shadow:0 2px 4px #007bff33}.loading-message{text-align:center;padding:40px;color:#6c757d;font-size:16px;background:#f1f3f4;border-radius:10px;border:1px solid #e9ecef}@media (max-width: 768px){.dashboard-container{margin-left:0!important;padding:10px}.dashboard-header{padding:12px 20px}.batch-content{padding:20px}.batch-header{flex-direction:column;align-items:flex-start;gap:10px}.batch-stats{grid-template-columns:1fr}.batch-actions{justify-content:center}.pagination-container{flex-direction:column;gap:10px}}.batch-list-container{padding:20px;background-color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;margin:20px auto;max-width:95%}.batch-list-container h2{font-size:1.5rem;margin-bottom:20px;color:#222;font-weight:700;text-align:center}.batch-table{width:100%;border-collapse:collapse;font-size:1rem;color:#333}.batch-table thead{background-color:#f9fafb}.batch-table th{text-align:left;padding:12px 16px;font-weight:700;color:#000;border-bottom:2px solid #ddd}.batch-table td{text-align:left;padding:12px 16px;border-bottom:1px solid #eee}.batch-table tr:last-child td{border-bottom:none}.batch-table tbody tr:hover{background-color:#f1f1f1;transition:background-color .3s ease}.action-button{padding:6px 12px;font-size:.9rem;color:#fff;background-color:#007bff;border:none;border-radius:7px;cursor:pointer;transition:background-color .3s ease;display:inline-block;margin-right:8px}.action-button:hover{background-color:#0056b3}.action-button.delete{background-color:#dc3545}.action-button.delete:hover{background-color:#a71d2a}.action-button.download-button{background-color:#28a745}.action-button.download-button:hover{background-color:#218838}.batch-cards{display:flex;flex-direction:column;gap:16px}.batch-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000000f;transition:all .3s ease}.batch-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.batch-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;gap:12px}.batch-name{font-size:16px;font-weight:600;color:#2c3e50;margin:0;flex:1;word-break:break-word}.batch-id{font-size:14px;font-weight:500;color:#6c757d;background:#f8f9fa;padding:4px 8px;border-radius:6px;white-space:nowrap}.batch-card-content{display:flex;flex-direction:column;gap:12px}.batch-info{display:grid;grid-template-columns:1fr;gap:8px}.batch-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.batch-actions .action-button{flex:1;margin-right:0;padding:12px 16px;font-size:14px;font-weight:500;background-color:#28a745}.batch-actions .action-button:hover{background-color:#218838}@media (max-width: 768px){.batch-list-container{padding:16px;margin:16px auto;max-width:100%}.batch-list-container h2{font-size:1.3rem;margin-bottom:16px}.batch-table{display:none}.batch-cards{display:flex}}@media (min-width: 769px){.batch-cards{display:none}.batch-table{display:table}}.pagination-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:24px}.pagination-btn{background:#4f46e5;color:#fff;border:none;outline:none;padding:8px 18px;border-radius:6px;font-size:15px;font-weight:500;transition:background .15s,color .15s,box-shadow .15s;cursor:pointer;box-shadow:0 1px 4px #0001}.pagination-btn:disabled,.pagination-btn[aria-disabled=true]{background:#e5e7eb;color:#aaa;cursor:not-allowed;box-shadow:none}.pagination-info{font-size:16px;color:#4f4f4f;font-weight:400}.clients-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000a;overflow:hidden;margin-top:24px}.clients-table th,.clients-table td{padding:16px 20px;text-align:left}.clients-table th{background:#f7f7fa;font-weight:600;color:#333;border-bottom:2px solid #ececec}.clients-table tr:not(:last-child) td{border-bottom:1px solid #ececec}.client-row{cursor:pointer;transition:background .18s}.client-row:hover{background:#f0f4ff}@media (max-width: 600px){.clients-table th,.clients-table td{padding:10px 8px;font-size:14px}}.consulta-casos-layout{display:flex;height:100vh;font-family:var(--font-family);overflow-x:hidden}.consulta-casos-container{flex:1;padding:20px;background:#f5f5f5;transition:margin-left .3s ease;overflow-x:hidden}.consulta-casos-container.collapsed{margin-left:60px}.consulta-casos-container.expanded{margin-left:250px}.consulta-header{background:#fff;border-radius:8px;padding:15px 30px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a;text-align:center;box-sizing:border-box}.consulta-header h1{color:#7c7474;margin:0;font-size:18px;font-weight:700;padding:0}.consulta-casos{width:100%;margin:0;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:30px;min-height:calc(100vh - 200px);box-sizing:border-box;overflow-x:hidden}.search-container{background:#f1f3f4;border-radius:12px;padding:30px;margin-bottom:30px;box-shadow:0 4px 6px #0000000d;width:100%;box-sizing:border-box;border:1px solid #e9ecef}.search-type-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:30px}.search-type-selector label{display:flex;align-items:center;gap:12px;cursor:pointer;padding:16px 20px;background:#fff;border-radius:10px;border:2px solid #e9ecef;transition:all .3s ease;font-family:var(--font-family);font-weight:500;box-sizing:border-box;position:relative;overflow:hidden}.search-type-selector label:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#007bff,#0056b3);opacity:0;transition:opacity .3s ease;z-index:0}.search-type-selector label:hover{border-color:#007bff;transform:translateY(-2px);box-shadow:0 4px 12px #007bff26}.search-type-selector input[type=radio]{margin:0;z-index:1;position:relative}.search-type-selector input[type=radio]:checked+span{color:#007bff;font-weight:600}.search-type-selector input[type=radio]:checked~label{border-color:#007bff;background:linear-gradient(135deg,#f8f9ff,#e3f2fd);box-shadow:0 4px 12px #007bff26}.search-type-selector span{z-index:1;position:relative}.search-inputs{margin-bottom:30px;max-width:100%;width:100%;box-sizing:border-box}.input-group{margin-bottom:20px;width:100%}.input-group label{display:block;margin-bottom:8px;font-weight:600;color:#495057;font-family:var(--font-family);font-size:14px;text-transform:uppercase;letter-spacing:.5px}.input-group input{width:100%;padding:16px 20px;border:2px solid #e9ecef;border-radius:10px;font-size:16px;transition:all .3s ease;font-family:var(--font-family);box-sizing:border-box;background:#fff;color:#495057}.input-group input:hover{background:#f8f9fa;border-color:#dee2e6;color:#495057}.input-group input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;transform:translateY(-1px);background:#fff;color:#495057}.input-group input::placeholder{color:#adb5bd}.search-info{margin-top:8px;color:#6c757d;font-size:12px;font-style:italic}.search-info small{color:#007bff;font-weight:500}.date-inputs{display:grid;grid-template-columns:1fr 1fr;gap:20px;width:100%}.search-actions{display:flex;gap:15px;justify-content:flex-start;flex-wrap:wrap}.search-btn,.clear-btn{padding:16px 32px;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:var(--font-family);box-sizing:border-box;text-transform:uppercase;letter-spacing:.5px;position:relative;overflow:hidden}.search-btn{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;box-shadow:0 4px 12px #007bff4d}.search-btn:hover:not(:disabled){background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-2px);box-shadow:0 6px 20px #007bff66}.search-btn:disabled{background:#ccc;cursor:not-allowed;transform:none;box-shadow:none}.clear-btn{background:linear-gradient(135deg,#6c757d,#545b62);color:#fff;box-shadow:0 4px 12px #6c757d4d}.clear-btn:hover{background:linear-gradient(135deg,#545b62,#495057);transform:translateY(-2px);box-shadow:0 6px 20px #6c757d66}.results-container{background:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 6px #0000000d;width:100%;box-sizing:border-box;border:1px solid #e9ecef}.results-container h3{margin-bottom:25px;color:#495057;border-bottom:2px solid #e9ecef;padding-bottom:15px;font-family:var(--font-family);font-weight:600}.results-table{overflow-x:auto;width:100%;box-sizing:border-box;border-radius:8px;border:1px solid #e9ecef}.results-table table{width:100%;border-collapse:collapse;margin-top:15px;font-family:var(--font-family);min-width:600px;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 4px #0000000d;border:1px solid #e9ecef}.results-table thead{background:#f8f9fa}.results-table th{background:#f8f9fa;font-weight:600;color:#495057;font-size:14px;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e9ecef;border-top:none}.results-table th,.results-table td{padding:16px 20px;text-align:left;border-bottom:1px solid #e9ecef;word-wrap:break-word}.results-table tbody tr{transition:all .3s ease}.results-table tr:hover{background:linear-gradient(135deg,#f8f9ff,#e3f2fd);transform:translateY(-1px);box-shadow:0 2px 8px #0000000d}.status{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status.enviado{background:#d4edda;color:#155724}.status.pendiente{background:#fff3cd;color:#856404}.status.error{background:#f8d7da;color:#721c24}.status.respondida{background:#d1ecf1;color:#0c5460}.no-results{text-align:center;padding:60px 40px;color:#6c757d;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;box-shadow:0 2px 4px #0000000d;font-family:var(--font-family);width:100%;box-sizing:border-box;border:1px solid #e9ecef}.no-results p{font-size:16px;margin:0;opacity:.8}@media (max-width: 768px){.consulta-casos-container{margin-left:0!important;padding:10px}.consulta-header{padding:12px 20px}.consulta-casos,.search-container{padding:20px}.search-type-selector{grid-template-columns:1fr;gap:10px}.search-type-selector label{min-width:auto}.date-inputs{grid-template-columns:1fr}.search-actions{flex-direction:column}.results-table{font-size:14px}.results-table th,.results-table td{padding:12px 16px}.results-table table{min-width:400px}}.results-cards{display:flex;flex-direction:column;gap:16px}.result-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000000f;transition:all .3s ease}.result-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.result-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;gap:12px}.service-number{font-size:18px;font-weight:700;color:#2c3e50;margin:0;flex:1;word-break:break-word}.result-card-content{display:flex;flex-direction:column;gap:12px}.result-info{display:grid;grid-template-columns:1fr;gap:8px}.info-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid #f1f3f4}.info-row:last-child{border-bottom:none}.info-label{font-size:14px;font-weight:500;color:#6c757d}.info-value{font-size:14px;font-weight:600;color:#2c3e50}.info-value.status{padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}@media (max-width: 768px){.consulta-casos-container{margin-left:0!important;padding:10px}.consulta-header{padding:12px 20px}.consulta-casos,.search-container{padding:20px}.search-type-selector{grid-template-columns:1fr;gap:10px}.search-type-selector label{min-width:auto}.date-inputs{grid-template-columns:1fr}.search-actions{flex-direction:column}.results-table{display:none}.results-cards{display:flex}}@media (min-width: 769px){.results-cards{display:none}.results-table{display:block}}.dashboard-layout{display:flex;min-height:100vh;font-family:var(--font-family)}.reports-content{padding:10px 16px;max-width:1200px;margin:0 auto;width:100%}.reports-container .dashboard-header{background:#fff;padding:10px 16px;border-bottom:1px solid #e9ecef;box-shadow:0 2px 4px #0000000a}.reports-container .header-title h1{font-size:22px;font-weight:600;color:#2c3e50;margin:0}.reports-header{text-align:center;margin-bottom:30px;padding:20px 0}.reports-header h2{color:#2c3e50;font-size:22px;margin-bottom:10px;font-weight:600}.reports-header p{color:#6c757d;font-size:14px;margin:0;font-weight:500}.reports-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin-bottom:30px}.report-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:16px;transition:all .3s ease;display:flex;flex-direction:column;position:relative;box-shadow:0 2px 8px #0000000f}.report-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.report-card.disabled{opacity:.65;filter:grayscale(.15)}.report-card.disabled .generate-btn,.report-card.disabled .download-btn{cursor:not-allowed;pointer-events:none;opacity:.9}.report-card.disabled .generate-btn{background:#adb5bd;color:#fff}.report-icon{font-size:1.5rem;color:#667eea;margin-bottom:8px;text-align:center}.report-info h3{color:#2c3e50;font-size:14px;margin-bottom:8px;font-weight:600}.report-info p{color:#6c757d;font-size:13px;line-height:1.4;margin-bottom:12px;flex-grow:1}.report-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px}.last-generated{color:#6c757d;display:flex;align-items:center;gap:4px}.status{padding:3px 8px;border-radius:12px;font-size:11px;font-weight:500}.status.available{background-color:#d4edda;color:#155724}.status.processing{background-color:#fff3cd;color:#856404}.report-actions{margin-top:auto}.download-btn,.generate-btn{width:100%;padding:12px 16px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .25s ease;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:48px;box-shadow:0 3px 10px #0000000f}.download-btn{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.download-btn:hover{background:linear-gradient(135deg,#218838,#1ea085);transform:translateY(-1px)}.generate-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.generate-btn:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);transform:translateY(-1px)}.reports-filters{background:#fff;border-radius:12px;padding:28px;border:1px solid #e9ecef;box-shadow:0 2px 8px #0000000f;margin-top:20px}.reports-filters h3{color:#2c3e50;font-size:18px;margin-bottom:8px;font-weight:600}.filter-controls{display:grid;grid-template-columns:1fr 1fr 260px;gap:24px;align-items:end;justify-content:flex-start}.filter-group{display:flex;flex-direction:column;flex:1 1 auto;padding:0 8px;max-width:100%}.filter-group label{color:#495057;font-weight:600;margin-bottom:8px;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.filter-group select,.filter-group input{width:100%;padding:12px 14px;border:1px solid #e9ecef;border-radius:8px;font-size:14px;background-color:#fff;transition:all .2s ease;color:#495057;font-weight:500;height:48px;box-sizing:border-box}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea26;transform:translateY(-1px)}.date-input{width:100%;font-family:inherit;padding:10px 12px;border:1px solid #e9ecef;border-radius:8px;font-size:14px;background-color:#fff;transition:all .2s ease;color:#495057;font-weight:500;margin-top:6px;box-sizing:border-box;height:48px}@media (max-width: 768px){.date-input{padding:8px 12px;margin-top:0;font-size:13px;height:36px}}@media (max-width: 480px){.date-input{padding:8px 12px;margin-top:0;font-size:13px;height:44px}}.filter-description{color:#6c757d;font-size:14px;margin-bottom:32px;line-height:1.5;font-weight:400}.generate-consolidated-btn{width:100%;padding:12px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;margin-top:0;box-shadow:0 4px 12px #667eea40;white-space:nowrap;flex-shrink:0;height:48px;border:none}.generate-consolidated-btn.compact{display:inline-flex;align-items:center;gap:12px;padding:12px 16px}.generate-consolidated-btn .btn-left{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#ffffff14;border-radius:8px;flex-shrink:0}.generate-consolidated-btn .btn-left svg{width:18px;height:18px}.generate-consolidated-btn .btn-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1}.generate-consolidated-btn .btn-title{font-size:14px;font-weight:700}.generate-consolidated-btn .btn-subtitle{font-size:11px;opacity:.9;margin-top:2px}.consolidated-info{margin-bottom:8px}.count-pill{display:inline-block;padding:8px 12px;border-radius:999px;background:#f1f3f5;color:#495057;font-weight:600;font-size:13px}.count-pill.loading{background:linear-gradient(90deg,#eef2ff,#f8fafc);color:#6c757d}.count-pill.error{background:#fff5f5;color:#b91c1c}.count-pill.muted{opacity:.7}.progress-wrap{margin-top:8px}.progress-bar{height:8px;background:#e9ecef;border-radius:999px;overflow:hidden}.progress-fill{height:100%;width:0%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .2s ease}.progress-text{margin-top:6px;font-size:12px;color:#6c757d;font-weight:600}.generate-consolidated-btn:hover:not(:disabled){background:linear-gradient(135deg,#5a6fd8,#6a4190);transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.generate-consolidated-btn:disabled{background:#6c757d;cursor:not-allowed;transform:none}@media (max-width: 768px){.generate-consolidated-btn{padding:10px 12px;font-size:13px;margin-top:0;height:44px}.generate-consolidated-btn.compact{width:100%;justify-content:flex-start;padding:12px 14px;gap:10px}.generate-consolidated-btn.compact .btn-left{width:40px;height:40px}.generate-consolidated-btn .btn-title{font-size:15px}.generate-consolidated-btn .btn-subtitle{font-size:12px}}@media (max-width: 480px){.generate-consolidated-btn{padding:8px 10px;font-size:12px;margin-top:0;height:44px}.generate-consolidated-btn.compact{width:100%;justify-content:flex-start;padding:12px}.generate-consolidated-btn.compact .btn-left{width:36px;height:36px}.generate-consolidated-btn .btn-title{font-size:14px}.generate-consolidated-btn .btn-subtitle{font-size:11px}}@media (max-width: 1024px){.reports-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}@media (min-width: 1025px) and (max-width: 1400px){.reports-content{padding-left:72px}}@media (min-width: 1401px){.reports-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.reports-content{padding-left:32px}}@media (max-width: 768px){.reports-container .dashboard-header{padding:12px 20px 12px 8px}.reports-container .header-title h1{font-size:22px}.reports-content{padding:12px 18px 12px 0}.reports-header{margin-bottom:18px;padding:12px 0}.reports-header h2{font-size:20px}.reports-grid{grid-template-columns:1fr;gap:16px;padding:0 8px 0 0}.report-card{padding:16px;margin:0 8px 0 0}.report-icon{font-size:1.8rem;margin-bottom:10px}.report-info h3{font-size:15px}.report-info p{font-size:13px}.report-meta{font-size:13px;margin-bottom:12px}.status{font-size:12px;padding:4px 10px}.download-btn,.generate-btn{padding:10px 14px;font-size:13px;height:44px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.reports-filters{padding:20px;margin:12px 8px 0 0}.reports-filters h3{font-size:18px;margin-bottom:10px}.filter-controls{display:grid;grid-template-columns:1fr;gap:16px;align-items:stretch;justify-content:stretch;padding:6px 4px}.filter-group{min-width:auto;max-width:none;flex:none;padding:0 4px}.filter-group label{font-size:13px;margin-bottom:6px}.filter-group select,.filter-group input{padding:10px 14px;font-size:14px;height:44px;width:100%;box-sizing:border-box}.reports-container .dashboard-container,.reports-container .dashboard-container.expanded,.reports-container .dashboard-container.collapsed{margin-left:0;padding-top:16px;padding-right:40px}}@media (max-width: 480px){.reports-container .dashboard-header{padding:10px 24px 10px 0}.reports-container .header-title h1{font-size:20px}.reports-content{padding:10px 20px 10px 0}.reports-header h2{font-size:20px}.reports-grid{padding:0 6px 0 0}.report-card{padding:16px;margin:0 6px 0 0}.report-icon{font-size:1.8rem}.report-info h3{font-size:15px}.report-info p{font-size:13px}.report-meta{flex-direction:column;align-items:flex-start;gap:8px;font-size:12px}.download-btn,.generate-btn{padding:10px 14px;font-size:13px}.reports-filters{padding:20px;margin:0 6px 0 0}.filter-group select,.filter-group input{padding:10px 14px;font-size:14px;height:44px;width:100%}.filter-controls{flex-direction:column;gap:24px;align-items:stretch;justify-content:flex-start}.filter-group{min-width:auto;max-width:none;flex:1;padding:0 2px}}
