.login-card{max-width:440px;width:100%;min-height:600px;display:flex;flex-direction:column;justify-content:center;background:rgba(10,31,61,.67);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:2.5rem 2rem 2rem;border-radius:24px;box-shadow:0 25px 50px -12px #0009;border:1px solid rgba(255,255,255,.08);color:#fff;text-align:center}.login-card .logo-placeholder{display:flex;justify-content:center;margin-bottom:1.2rem}.login-card .logo-placeholder img{max-height:75px;width:auto}.login-card .login-title,.login-card .recover-title,.login-card .session-title{font-size:1.3rem;font-weight:600;margin-bottom:1.8rem;letter-spacing:.5px;color:#fff}.login-card .session-title{margin-bottom:2rem}.login-card .recover-sub,.login-card .session-sub{font-size:.9rem;opacity:.8;margin-bottom:1.5rem;line-height:1.4}.login-card .timer{font-size:1.1rem;font-weight:600;color:#f7b31c;background:rgba(247,179,28,.15);padding:.6rem 1rem;border-radius:40px;display:inline-block;margin-bottom:2rem;border:1px solid rgba(247,179,28,.2)}.login-card .form-group{text-align:left;margin-bottom:1.2rem}.login-card .form-group label{display:block;font-size:.9rem;font-weight:500;margin-bottom:.3rem;color:#fff}.login-card .form-group input{width:100%;padding:.75rem 1rem;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:rgba(255,255,255,.08);color:#fff;font-size:.95rem;outline:none;font-family:inherit;transition:border-color .2s,background .2s}.login-card .form-group input::placeholder{color:#fff6;font-weight:300}.login-card .form-group input:focus{border-color:#f7b31c;background:rgba(255,255,255,.12)}.login-card .password-wrapper{position:relative;display:flex;align-items:center}.login-card .password-wrapper input{padding-right:2.8rem}.login-card .toggle-password{position:absolute;right:.85rem;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.login-card .eye-icon{width:20px;height:20px}.login-card .forgot-link{text-align:right;margin:-.2rem 0 1.2rem}.login-card .forgot-link span,.login-card .back-link,.login-card .cancel-link{color:#ffffffb3;font-size:.8rem;text-decoration:none;transition:color .2s;cursor:pointer;background:none;border:none;padding:0}.login-card .forgot-link span:hover,.login-card .back-link:hover,.login-card .cancel-link:hover{color:#f7b31c;text-decoration:underline}.login-card .back-link,.login-card .cancel-link{display:inline-block;margin-top:1rem;font-size:.9rem}.login-card .btn-login,.login-card .btn-recover{width:100%;padding:.85rem;background:#f7b31c;border:none;border-radius:40px;font-size:1.1rem;font-weight:700;color:#0a1f3d;cursor:pointer;transition:background .2s,transform .1s;letter-spacing:.5px;box-shadow:0 8px 20px -6px #f7b31c4d}.login-card .btn-login:hover,.login-card .btn-recover:hover{background:#e6a317;transform:scale(.98)}.login-card .btn-login:active,.login-card .btn-recover:active{transform:scale(.96)}.login-card .btn-login:disabled,.login-card .btn-recover:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-card .btn-cancel{width:100%;padding:.85rem;background:transparent;border:1px solid rgba(255,255,255,.25);border-radius:40px;font-size:1rem;font-weight:600;color:#fff;cursor:pointer;transition:background .2s,border-color .2s;margin-top:.5rem}.login-card .btn-cancel:hover{background:rgba(255,255,255,.05);border-color:#fff6}.login-card .loader{display:flex;justify-content:center;align-items:center;margin-bottom:1.5rem;height:40px}.login-card .jimu-primary-loading{position:relative;width:13.6px;height:32px;background:#f7b31c;animation:loading-keys-app-loading .8s infinite ease-in-out;animation-delay:.16s;text-indent:-9999em;margin:0 auto}.login-card .jimu-primary-loading:before,.login-card .jimu-primary-loading:after{content:"";position:absolute;top:0;width:13.6px;height:32px;background:#f7b31c;animation:loading-keys-app-loading .8s infinite ease-in-out}.login-card .jimu-primary-loading:before{left:-19.992px;animation-delay:0s}.login-card .jimu-primary-loading:after{left:19.992px;animation-delay:.32s}@keyframes loading-keys-app-loading{0%,80%,to{opacity:.75;box-shadow:0 0 #f7b31c;height:32px}40%{opacity:1;box-shadow:0 -8px #f7b31c;height:40px}}.login-card .recover-message-area{margin-bottom:1.2rem}.login-card .recover-loader{display:flex;flex-direction:column-reverse;align-items:center;justify-content:center;gap:.7rem;padding:.4rem 0}.login-card .recover-loader-text{font-size:.9rem;font-weight:500;color:#f7b31c}.login-card .jimu-primary-loading-sm{position:relative;width:8px;height:19px;background:#f7b31c;animation:loading-keys-app-loading-sm .8s infinite ease-in-out;animation-delay:.16s;text-indent:-9999em;margin:0 auto}.login-card .jimu-primary-loading-sm:before,.login-card .jimu-primary-loading-sm:after{content:"";position:absolute;top:0;width:8px;height:19px;background:#f7b31c;animation:loading-keys-app-loading-sm .8s infinite ease-in-out}.login-card .jimu-primary-loading-sm:before{left:-12px;animation-delay:0s}.login-card .jimu-primary-loading-sm:after{left:12px;animation-delay:.32s}@keyframes loading-keys-app-loading-sm{0%,80%,to{opacity:.75;box-shadow:0 0 #f7b31c;height:19px}40%{opacity:1;box-shadow:0 -5px #f7b31c;height:24px}}.login-card .recover-success{display:flex;align-items:flex-start;gap:.6rem;text-align:left;font-size:.9rem;color:#fff;line-height:1.4}.login-card .recover-success .success-icon{width:50px;height:50px;flex-shrink:0;margin-top:1px}.login-card .error-message{text-align:left;font-size:.85rem;color:#ff8a80;background:rgba(255,82,82,.12);border:1px solid rgba(255,82,82,.3);border-radius:12px;padding:.65rem .9rem;margin-bottom:1.2rem}.login-card .footer{margin-top:2.2rem;font-size:.7rem;color:#ffffffdc;display:flex;flex-direction:column;gap:.2rem;letter-spacing:.3px}.login-card .footer .version{font-weight:300;opacity:.6}@media (max-width: 480px){.login-card{padding:2rem 1.2rem 1.5rem}.login-card .login-title,.login-card .session-title{font-size:1.2rem}}.swal-glass-popup{background:rgba(10,31,61,.85)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);border-radius:20px!important;box-shadow:0 25px 50px -12px #0009;color:#fff;font-family:Inter,sans-serif}.swal-glass-title{color:#fff!important;font-weight:700!important;font-size:1.15rem!important}.swal-glass-text{color:#ffffffbf!important;font-size:.9rem!important;line-height:1.5}.swal-glass-confirm-btn{background:#f7b31c!important;color:#0a1f3d!important;font-weight:700!important;border-radius:30px!important;padding:10px 24px!important;box-shadow:0 8px 20px -6px #f7b31c4d}.swal-glass-confirm-btn:focus{box-shadow:0 0 0 3px #f7b31c66!important}.swal-glass-cancel-btn{background:transparent!important;border:1px solid rgba(255,255,255,.2)!important;color:#fffc!important;font-weight:600!important;border-radius:30px!important;padding:10px 20px!important;box-shadow:none!important}.swal-glass-popup .swal2-icon{border-color:transparent!important}.swal-glass-popup .swal2-icon.swal2-success{border-color:#22c55e66!important;animation:swalGlassRingSuccess 2s ease-out infinite}.swal-glass-popup .swal2-icon.swal2-success [class^=swal2-success-line]{background-color:#4ade80!important}.swal-glass-popup .swal2-icon.swal2-success .swal2-success-ring{border-color:#4ade804d!important}.swal-glass-popup .swal2-success-circular-line-left,.swal-glass-popup .swal2-success-circular-line-right,.swal-glass-popup .swal2-success-fix{background-color:transparent!important}.swal-glass-popup .swal2-icon.swal2-error{border-color:#ef444466!important;animation:swalGlassRingDanger 1.8s ease-out infinite}.swal-glass-popup .swal2-icon.swal2-error [class^=swal2-x-mark-line]{background-color:#f87171!important}.swal-glass-popup .swal2-icon.swal2-warning{border-color:#f7b31c66!important;color:#f7b31c!important}@keyframes swalGlassRingSuccess{0%{box-shadow:0 0 #22c55e66}to{box-shadow:0 0 0 20px #22c55e00}}@keyframes swalGlassRingDanger{0%{box-shadow:0 0 #ef444466}to{box-shadow:0 0 0 20px #ef444400}}.swal-glass-popup .swal2-html-container,.swal-glass-popup .swal2-input,.swal-glass-popup textarea{color:#fff}.swal-glass-popup .swal2-input{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.15)!important;color:#fff!important}:root{--color-navy: #172B57;--color-blue-action: #2890FF;--color-page-bg: #EEF2F5;--color-card-bg: #FDFDFD;--color-card-label-bg: #DCDCDC;--color-card-label-text: #2E66B4;--color-title: #172B57}.simple-layout{background-color:#172b57;background-image:linear-gradient(0deg,#172b57 0%,#2890ff 100%)}.logged-layout{margin:0;padding:88px 24px 24px;background-color:var(--color-page-bg);min-height:100vh;box-sizing:border-box}.report-card{background:var(--color-card-bg);border-radius:12px;box-shadow:0 2px 8px #172b5714;transition:transform .2s ease,box-shadow .2s ease;cursor:pointer}.report-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #172b5726}.report-card-badge{display:inline-block;background:var(--color-card-label-bg);color:var(--color-card-label-text);font-size:12px;font-weight:600;padding:4px 12px;border-radius:20px;letter-spacing:.3px}.kpi-card{background:var(--color-card-bg);border-radius:12px;padding:20px;box-shadow:0 2px 8px #172b5714;border-left:4px solid var(--color-blue-action)}.pulse-green{background:#14ae67;box-shadow:0 0 #14ae67b3;animation:pulse-green-animation 2s infinite}@keyframes pulse-green-animation{0%{transform:scale(.95);box-shadow:0 0 #14ae67b3}70%{transform:scale(1);box-shadow:0 0 0 6px #14ae6700}to{transform:scale(.95);box-shadow:0 0 #14ae6700}}.reporte-card{position:relative;background:#fff;border-radius:18px;padding:20px 20px 18px;border:1px solid rgba(10,31,61,.05);box-shadow:0 2px 10px #00000005;transition:all .25s;display:flex;flex-direction:column;height:100%}.reporte-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #0a1f3d12;border-color:#f7b31c33}.reporte-card.type-chart{background:#f5faff}.reporte-card.type-tabla{background:#fffaf0}.reporte-card.type-descargable{background:#f3fdf6}.reporte-card .card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:10px}.reporte-card .card-header h4{font-size:1rem;font-weight:700;color:#0a1f3d;margin:0;line-height:1.3}.reporte-card .badge-tipo{font-size:.6rem;font-weight:700;text-transform:uppercase;padding:2px 12px;border-radius:30px;background:#e0f2fe;color:#0369a1;white-space:nowrap;flex-shrink:0}.reporte-card .badge-tipo.tabla{background:#fef3c7;color:#b45309}.reporte-card .badge-tipo.descargable{background:#dcfce7;color:#166534}.reporte-card .card-body{flex:1;min-height:40px;margin-bottom:14px}.reporte-card .descripcion{font-size:.9rem;color:#475569;line-height:1.4;margin:0}.reporte-card .card-footer{display:flex;justify-content:flex-end;align-items:center;padding-top:12px;border-top:1px solid #f1f5f9}.btn-ver-reporte{background:transparent;border:1.5px solid #1b5694;color:#1b5694;padding:5px 18px;border-radius:30px;font-weight:600;font-size:.8rem;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:6px;font-family:inherit}.btn-ver-reporte:hover{background:#1b5694;color:#fff;box-shadow:0 4px 12px #1b569440;transform:translateY(-1px)}.reporte-card.compact{padding:14px 14px 12px;border-radius:14px}.reporte-card.compact .card-header{margin-bottom:6px}.reporte-card.compact .card-header h4{font-size:.88rem}.reporte-card.compact .badge-tipo{font-size:.55rem;padding:2px 9px}.reporte-card.compact .card-body{min-height:28px;margin-bottom:10px}.reporte-card.compact .descripcion{font-size:.8rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.reporte-card.compact .card-footer{padding-top:8px}.reporte-card.compact .btn-ver-reporte{padding:4px 14px;font-size:.75rem}.mini-chart-card{background:#fff;border-radius:16px;border:1px solid rgba(10,31,61,.04);box-shadow:0 2px 12px #00000005;padding:16px 18px;display:flex;flex-direction:column;gap:10px;transition:all .2s}.mini-chart-card:hover{box-shadow:0 8px 24px #0a1f3d14;transform:translateY(-2px)}.mini-chart-card-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.mini-chart-card-title{display:flex;align-items:center;gap:8px;font-weight:700;font-size:.85rem;color:#0a1f3d;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-chart-card-icon{display:inline-flex;color:#f7b31c;flex-shrink:0}.mini-chart-card-icon svg{font-size:1.05rem}.mini-chart-card-link{display:inline-flex;align-items:center;gap:4px;background:transparent;border:none;color:#2b6cb0;font-weight:600;font-size:.72rem;cursor:pointer;padding:0;white-space:nowrap;font-family:inherit}.mini-chart-card-link:hover{text-decoration:underline}.mini-chart-card-link svg{font-size:.8rem}.mini-chart-card-kpi{display:flex;align-items:baseline;gap:8px}.mini-chart-card-kpi-label{color:#94a3b8;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.mini-chart-card-kpi-value{color:#172b57;font-size:1.1rem;font-weight:700}.mini-chart-card-body{flex:1;min-height:120px;display:flex;flex-direction:column;justify-content:center}.mini-chart-card-loading{display:flex;align-items:center;justify-content:center;height:120px}.mini-chart-card-loading .spinner{width:22px;height:22px;border:3px solid rgba(10,31,61,.1);border-top-color:#2b6cb0;border-radius:50%;animation:glass-spin .8s linear infinite}.mini-chart-card-empty{text-align:center;color:#94a3b8;font-size:.78rem;padding:20px 0}.mini-chart-card-mini-list{display:flex;flex-direction:column;gap:6px}.mini-chart-card-mini-list-row{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;padding:4px 0;border-bottom:1px solid #f1f5f9}.mini-chart-card-mini-list-row:last-child{border-bottom:none}.mini-chart-card-mini-list-rank{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#eff6ff;color:#2b6cb0;font-size:.65rem;font-weight:700;flex-shrink:0;margin-right:8px}.mini-chart-card-mini-list-label{flex:1;color:#334155;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-chart-card-mini-list-value{color:#172b57;font-weight:700;white-space:nowrap;margin-left:8px}.mini-charts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}@media (max-width: 640px){.mini-charts-grid{grid-template-columns:1fr}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:28px;flex-wrap:wrap;gap:16px}.page-title{font-size:1.8rem;font-weight:700;color:#0a1f3d;margin:0 0 4px}.page-description{color:#64748b;font-size:.95rem;max-width:600px;margin:0}.reportes-grid-compact{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}.kpi-card{background:#fff;border-radius:12px;padding:20px;border:1px solid rgba(10,31,61,.04);border-left:4px solid #2890ff;box-shadow:0 2px 12px #00000005;display:flex;flex-direction:column;gap:4px;height:100%}.kpi-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.kpi-label{color:#64748b;font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.4px}.kpi-icon{opacity:.75;display:flex;flex-shrink:0}.kpi-icon svg{font-size:1.35rem}.kpi-value{color:#0a1f3d;font-weight:700;font-size:1.4rem;line-height:1.2}.kpi-subvalue{color:#94a3b8;font-size:.78rem}.btn-primary-outline{background:transparent;border:2px solid #0a1f3d;color:#0a1f3d;padding:10px 24px;border-radius:12px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px;white-space:nowrap;font-family:inherit}.btn-primary-outline:hover{background:#0a1f3d;color:#fff;box-shadow:0 8px 24px #0a1f3d26}.filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:16px;background:#fff;padding:14px 20px;border-radius:12px;border:1px solid #e8ecf1;box-shadow:0 2px 8px #00000005;margin-bottom:20px}.search-wrapper{flex:1;display:flex;align-items:center;background:#f7f8fa;border-radius:30px;padding:0 16px;border:1px solid #e8ecf1;transition:border-color .2s;min-width:200px}.search-wrapper:focus-within{border-color:#2b6cb0;box-shadow:0 0 0 3px #2b6cb014}.search-wrapper svg{color:#a0aec0;margin-right:10px;font-size:1.1rem}.search-wrapper input{border:none;background:transparent;padding:10px 0;width:100%;font-size:.9rem;outline:none;color:#1a202c;font-family:inherit}.search-wrapper input::placeholder{color:#cbd5e0}.filter-group{display:flex;gap:6px;flex-wrap:wrap}.filter-btn{padding:6px 16px;border-radius:30px;border:1px solid #e8ecf1;background:transparent;color:#4a5568;font-weight:500;font-size:.8rem;cursor:pointer;transition:all .2s;font-family:inherit}.filter-btn:hover{background:#f0f2f5;border-color:#d0d5dd}.filter-btn.active{background:#2b6cb0;border-color:#2b6cb0;color:#fff}.filter-btn:disabled{opacity:.4;cursor:not-allowed}.filter-btn:disabled:hover{background:transparent;border-color:#e8ecf1}.chip-toggle{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 10px;border-radius:30px;border:1px solid #e8ecf1;background:#fff;color:#4a5568;font-weight:500;font-size:.85rem;cursor:pointer;transition:all .2s;font-family:inherit}.chip-toggle:hover{border-color:#cbd5e0;background:#f7f8fa}.chip-toggle-box{width:16px;height:16px;border-radius:4px;border:1.5px solid #cbd5e0;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#fff;transition:all .2s}.chip-toggle-box svg{font-size:.7rem;color:#fff;opacity:0;transform:scale(.6);transition:all .15s}.chip-toggle.active{border-color:#2b6cb0;background:rgba(43,108,176,.06);color:#172b57;font-weight:600}.chip-toggle.active .chip-toggle-box{background:#2b6cb0;border-color:#2b6cb0}.chip-toggle.active .chip-toggle-box svg{opacity:1;transform:scale(1)}.chip-toggle:disabled{opacity:.4;cursor:not-allowed}.chip-toggle:disabled:hover{background:#fff;border-color:#e8ecf1}@media (max-width: 768px){.filter-bar{flex-direction:column;align-items:stretch}.filter-group{justify-content:center}.page-header{flex-direction:column;align-items:stretch}.btn-primary-outline{justify-content:center}}.glass-modal-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(10,31,61,.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);align-items:center;justify-content:center;z-index:999;padding:1rem}.glass-modal-overlay.active{display:flex}.glass-modal-card{width:100%;max-width:460px;background:rgba(10,31,61,.67);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);border-radius:20px;box-shadow:0 25px 50px -12px #0009;color:#fff;overflow:hidden;animation:glassModalPop .2s ease;max-height:85vh;display:flex;flex-direction:column}.glass-modal-card-sm{max-width:400px}@keyframes glassModalPop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.glass-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.glass-modal-header h3{font-size:1.1rem;font-weight:700;color:#fff;margin:0}.glass-modal-close{background:transparent;border:none;color:#fff9;font-size:1rem;cursor:pointer;width:32px;height:32px;border-radius:8px;transition:all .2s;display:flex;align-items:center;justify-content:center}.glass-modal-close:hover{background:rgba(255,255,255,.08);color:#fff}.glass-modal-body{padding:22px 24px;overflow-y:auto;overflow-x:hidden}.glass-modal-body-centered{text-align:center;padding:32px 24px 8px}.glass-modal-body-centered h3{font-size:1.15rem;font-weight:700;color:#fff;margin:14px 0 10px}.glass-modal-body-centered p{color:#ffffffbf;font-size:.88rem;line-height:1.5;margin:0 0 6px}.glass-modal-body-centered .danger-text{color:#fca5a5}.glass-disclaimer{display:flex;align-items:flex-start;gap:10px;background:rgba(247,179,28,.1);border:1px solid rgba(247,179,28,.25);border-radius:10px;padding:12px 14px;margin-bottom:18px;font-size:.8rem;color:#ffffffd9;line-height:1.4}.glass-disclaimer svg{color:#f7b31c;margin-top:2px;flex-shrink:0}.glass-icon-circle{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin:0 auto;background:rgba(247,179,28,.15);color:#f7b31c;animation:glassIconRing 2s ease-out infinite}.glass-icon-circle:hover{animation-play-state:paused}.glass-icon-circle.success{background:rgba(34,197,94,.15);color:#4ade80;animation-name:glassIconRingSuccess}.glass-icon-circle.danger{background:rgba(239,68,68,.15);color:#f87171;animation-name:glassIconRingDanger;animation-duration:1.8s}@keyframes glassIconRing{0%{box-shadow:0 0 #f7b31c66}to{box-shadow:0 0 0 30px #f7b31c00}}@keyframes glassIconRingSuccess{0%{box-shadow:0 0 #22c55e66}to{box-shadow:0 0 0 30px #22c55e00}}@keyframes glassIconRingDanger{0%{box-shadow:0 0 #ef444466}to{box-shadow:0 0 0 30px #ef444400}}.glass-modal-body .form-group{margin-bottom:16px;text-align:left}.glass-modal-body .form-group label{display:block;font-size:.85rem;font-weight:600;color:#fff;margin-bottom:6px}.glass-modal-body .form-group .required{color:#f7b31c}.glass-modal-body .form-group input:not([type=checkbox]),.glass-modal-body .form-group select{width:100%;padding:10px 14px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:rgba(255,255,255,.08);color:#fff;font-size:.9rem;font-family:inherit;outline:none;transition:border-color .2s,background .2s}.glass-modal-body .form-group input::placeholder{color:#fff6}.glass-modal-body .form-group input:focus,.glass-modal-body .form-group select:focus{border-color:#f7b31c;background:rgba(255,255,255,.12)}.glass-modal-body .form-group select option{background:#0a1f3d;color:#fff}.glass-confirm-input{width:100%;margin-top:6px;padding:10px 14px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:rgba(255,255,255,.08);color:#fff;font-size:.9rem;text-align:center;font-weight:700;letter-spacing:1px;outline:none;font-family:inherit}.glass-confirm-input:focus{border-color:#f7b31c;background:rgba(255,255,255,.12)}.glass-modal-body .form-group .switch-label{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;font-weight:600;color:#fff;margin-bottom:0}.toggle-switch{position:relative;display:inline-block;width:42px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background:rgba(255,255,255,.2);border-radius:30px;transition:.2s}.toggle-slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.2s}.toggle-switch input:checked+.toggle-slider{background:#f7b31c}.toggle-switch input:checked+.toggle-slider:before{transform:translate(18px)}.glass-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid rgba(255,255,255,.08);flex-shrink:0}.glass-modal-footer-centered{justify-content:center;padding-bottom:28px}.btn-glass-cancel{background:transparent;border:1px solid rgba(255,255,255,.2);color:#fffc;font-weight:600;font-size:.88rem;padding:10px 20px;border-radius:30px;cursor:pointer;transition:all .2s;font-family:inherit}.btn-glass-cancel:hover{background:rgba(255,255,255,.06);border-color:#ffffff59}.btn-glass-save{background:#f7b31c;border:none;color:#0a1f3d;font-weight:700;font-size:.88rem;padding:10px 24px;border-radius:30px;cursor:pointer;transition:background .2s,transform .1s;font-family:inherit}.btn-glass-save:hover{background:#e6a317}.btn-glass-save:disabled{opacity:.6;cursor:not-allowed}.btn-glass-confirm{background:#f7b31c;border:none;color:#0a1f3d;font-weight:700;font-size:.88rem;padding:10px 24px;border-radius:30px;cursor:pointer;transition:background .2s;font-family:inherit}.btn-glass-confirm.confirm-activate{background:#22c55e;color:#fff}.btn-glass-confirm.confirm-activate:hover{background:#16a34a}.btn-glass-confirm.confirm-deactivate{background:#ef4444;color:#fff}.btn-glass-confirm.confirm-deactivate:hover{background:#dc2626}.btn-glass-delete{background:#ef4444;border:none;color:#fff;font-weight:700;font-size:.88rem;padding:10px 24px;border-radius:30px;cursor:pointer;transition:background .2s;font-family:inherit}.btn-glass-delete:hover{background:#dc2626}.btn-glass-delete:disabled{opacity:.5;cursor:not-allowed}.loading-row{display:flex;align-items:center;justify-content:center;gap:12px;padding:60px 0;color:#94a3b8;font-size:.95rem}.spinner{width:28px;height:28px;border:3px solid rgba(10,31,61,.1);border-top-color:#2b6cb0;border-radius:50%;animation:glass-spin .8s linear infinite}@keyframes glass-spin{to{transform:rotate(360deg)}}.spin-icon{animation:glass-spin .8s linear infinite}.table-container{background:#fff;border-radius:20px;border:1px solid rgba(10,31,61,.04);box-shadow:0 2px 12px #00000005;overflow:hidden;margin-top:8px}.table-container table{width:100%;border-collapse:collapse;font-size:.95rem}.table-container thead{background:#f8fafc;border-bottom:1px solid #e2e8f0}.table-container th{text-align:left;padding:16px 20px;font-weight:600;color:#0a1f3d;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px}.table-container td{padding:16px 20px;border-bottom:1px solid #f1f5f9;color:#1e293b;vertical-align:middle}.table-container tbody tr:last-child td{border-bottom:none}.table-container tbody tr:hover{background:#fafcff}@media (max-width: 768px){.table-container{overflow-x:auto}.table-container table{min-width:700px}}.action-btns{display:flex;gap:6px;justify-content:flex-end}.action-btns .btn-icon{background:transparent;border:none;color:#94a3b8;width:32px;height:32px;border-radius:8px;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.action-btns .btn-icon:hover{background:#f1f5f9;color:#0a1f3d}.action-btns .btn-icon.delete:hover{color:#ef4444;background:#fef2f2}.action-btns .btn-icon.disabled{opacity:.3;cursor:not-allowed}.action-btns .btn-icon.disabled:hover{background:transparent;color:#94a3b8}.glass-modal-card-lg{max-width:820px!important;width:95%!important}@media (max-width: 640px){.glass-modal-card-lg{max-width:100%!important;width:98%!important;max-height:98vh}}.glass-modal-card-builder{max-width:780px!important;width:95%!important}@media (max-width: 640px){.glass-modal-card-builder{max-width:100%!important;width:98%!important;max-height:98vh}}.form-hint{font-size:.78rem;color:#ffffff8c;margin-top:-2px;margin-bottom:12px}.form-hint svg{margin-right:4px;font-size:.85rem;vertical-align:middle}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 14px;border-radius:40px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.status-badge.active{background:#dcfce7;color:#166534}.status-badge.inactive{background:#fee2e2;color:#991b1b}.status-badge.neutral{background:#f1f5f9;color:#64748b}.status-badge .dot{width:6px;height:6px;border-radius:50%;display:inline-block}.status-badge.active .dot{background:#22c55e}.status-badge.inactive .dot{background:#ef4444}.status-badge.neutral .dot{background:#94a3b8}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:.88rem}.detail-row:last-child{border-bottom:none}.detail-label{color:#fff9;font-weight:600}.detail-row span:last-child{color:#fff;font-weight:600}.glass-modal-body .password-wrapper{position:relative;display:flex;align-items:center}.glass-modal-body .password-wrapper input{padding-right:4.6rem}.glass-modal-body .password-actions{position:absolute;right:.85rem;display:flex;align-items:center;gap:8px}.glass-modal-body .toggle-password{position:static;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;color:#fff9}.glass-modal-body .toggle-password:hover{color:#f7b31c}.glass-modal-body .form-group input:disabled{opacity:.5;cursor:not-allowed}.custom-select{position:relative;width:100%}.custom-select-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;font-family:inherit;text-align:left}.custom-select-trigger:disabled{opacity:.5;cursor:not-allowed}.custom-select-chevron{flex-shrink:0;transition:transform .2s ease}.custom-select-trigger.open .custom-select-chevron{transform:rotate(180deg)}.custom-select-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:20;list-style:none;margin:0;padding:6px;max-height:240px;overflow-y:auto;animation:glassModalPop .15s ease}.custom-select-option{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;border-radius:8px;font-size:.9rem;cursor:pointer;transition:background .15s ease}.glass-modal-body .form-group .custom-select-trigger{width:100%;padding:10px 14px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:rgba(255,255,255,.08);color:#fff;font-size:.9rem;transition:border-color .2s,background .2s}.glass-modal-body .form-group .custom-select-trigger:hover{background:rgba(255,255,255,.1)}.glass-modal-body .form-group .custom-select-trigger.open{border-color:#f7b31c;background:rgba(255,255,255,.12)}.glass-modal-body .custom-select-placeholder{color:#fff6}.glass-modal-body .custom-select-chevron{color:#ffffff80}.glass-modal-body .custom-select-menu{background:rgba(15,35,66,.97);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 12px 32px #0006}.glass-modal-body .custom-select-option{color:#ffffffd9}.glass-modal-body .custom-select-option:hover{background:rgba(255,255,255,.08)}.glass-modal-body .custom-select-option.selected{background:rgba(247,179,28,.12);color:#f7b31c;font-weight:600}.glass-modal-body .custom-select-option svg{color:#f7b31c;font-size:1rem}.form-group label{display:block;font-weight:600;font-size:.85rem;color:#0a1f3d;margin-bottom:6px;letter-spacing:.3px}.form-group .form-control{width:100%;padding:12px 16px;border-radius:12px;border:1.5px solid #e2e8f0;background:#f8fafc;font-size:.95rem;color:#0f172a;transition:all .2s;font-family:inherit;outline:none}.form-group .form-control:focus{border-color:#f7b31c;box-shadow:0 0 0 4px #f7b31c14;background:#fff}.form-group .form-control:disabled{opacity:.6;cursor:not-allowed}.form-group .password-wrapper{position:relative;display:flex;align-items:center}.form-group .password-wrapper .form-control{padding-right:2.8rem}.form-group .password-wrapper .toggle-password{position:absolute;right:.85rem;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;color:#94a3b8}.form-group .password-wrapper .toggle-password:hover{color:#f7b31c}.log-empty{display:flex;align-items:center;justify-content:center;gap:8px;color:#22c55e;font-weight:600;padding:20px 0;text-align:center;background:#f0fdf4;border-radius:12px}.incidents-table-wrapper{max-height:400px;overflow-y:auto}.incidents-table{width:100%;border-collapse:collapse;font-size:.85rem}.incidents-table thead{background:#f8fafc;position:sticky;top:0}.incidents-table th{text-align:left;padding:10px 14px;font-weight:700;color:#0a1f3d;font-size:.75rem;text-transform:uppercase;border-bottom:1px solid #e2e8f0}.incidents-table td{padding:10px 14px;border-bottom:1px solid #f1f5f9}.incidents-table tbody tr:hover{background:#fafcff}.mono-bold{font-family:monospace;font-weight:700;color:#0a1f3d}.mono-muted{font-family:monospace;color:#64748b;font-size:.78rem}.muted-cell{color:#64748b;font-size:.78rem}.incident-chip{padding:2px 10px;border-radius:30px;font-size:.68rem;font-weight:700}.incident-chip.severe{background:#fee2e2;color:#991b1b}.incident-chip.warning{background:#fef3c7;color:#b45309}.incident-chip.info{background:#e0f2fe;color:#0369a1}.incident-chip.success{background:#dcfce7;color:#166534}.btn-secondary{background:transparent;border:2px solid #1b5694;color:#1b5694;padding:10px 24px;border-radius:12px;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font-family:inherit}.btn-secondary:hover:not(:disabled){background:#1b5694;color:#fff;transform:translateY(-2px);box-shadow:0 8px 24px #1b569433}.btn-secondary.danger{border-color:#ef4444;color:#ef4444}.btn-secondary.danger:hover:not(:disabled){background:#ef4444;color:#fff;box-shadow:0 8px 24px #ef444433}.btn-secondary.small{padding:6px 16px;font-size:.78rem}.btn-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none!important}@media (max-width: 640px){.incidents-table{min-width:700px}.incidents-table-wrapper{overflow-x:auto}}.form-group .custom-select-trigger{padding:12px 16px;border-radius:12px;border:1.5px solid #e2e8f0;background:#f8fafc;font-size:.95rem;color:#0f172a;transition:all .2s}.form-group .custom-select-trigger:hover{background-color:#f1f5f9}.form-group .custom-select-trigger.open{border-color:#f7b31c;box-shadow:0 0 0 4px #f7b31c14;background:#fff}.form-group .custom-select-chevron{color:#64748b}.form-group .custom-select-placeholder{color:#cbd5e1}.form-group .custom-select-menu{background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;box-shadow:0 12px 32px #0a1f3d1f}.form-group .custom-select-option{color:#0f172a}.form-group .custom-select-option:hover{background:#f1f5f9}.form-group .custom-select-option.selected{background:rgba(247,179,28,.1);color:#b45309;font-weight:600}.form-group .custom-select-option svg{color:#f7b31c;font-size:1rem}.report-form-container{background:#fff;border-radius:20px;border:1px solid rgba(10,31,61,.04);box-shadow:0 2px 12px #00000005;padding:40px 48px;max-width:700px;margin:20px auto 0;width:100%}.report-form-container .form-group{margin-bottom:28px}.report-form-container .form-group:last-of-type{margin-bottom:32px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-actions{display:flex;gap:16px;flex-wrap:wrap;border-top:1px solid #f1f5f9;padding-top:32px}.btn-download{background:#0a1f3d;border:2px solid #0a1f3d;color:#fff;padding:12px 32px;border-radius:12px;font-weight:700;font-size:.95rem;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:10px;box-shadow:0 4px 16px #0a1f3d26;font-family:inherit}.btn-download:hover:not(:disabled){background:#1b5694;border-color:#1b5694;transform:translateY(-2px);box-shadow:0 8px 24px #1b569440}.btn-download:disabled,.btn-extract:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn-extract{background:transparent;border:2px solid #1b5694;color:#1b5694;padding:12px 32px;border-radius:12px;font-weight:700;font-size:.95rem;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:10px;font-family:inherit}.btn-extract:hover:not(:disabled){background:#1b5694;color:#fff;transform:translateY(-2px);box-shadow:0 8px 24px #1b569433}.status-message{display:flex;align-items:flex-start;gap:12px;margin-top:24px;padding:14px 18px;border-radius:12px;font-size:.88rem;line-height:1.5}.status-message.info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.status-message.success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.status-message.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.status-message svg:first-child{margin-top:2px;flex-shrink:0}.status-message span{flex:1}.status-close{background:transparent;border:none;color:inherit;cursor:pointer;opacity:.6;padding:2px;flex-shrink:0;display:flex}.status-close:hover{opacity:1}@media (max-width: 768px){.report-form-container{padding:28px 20px;margin:16px auto 0}.form-row{grid-template-columns:1fr;gap:0}.form-actions{flex-direction:column}.btn-download,.btn-extract{justify-content:center;width:100%}}.user-report-header{background:linear-gradient(160deg,rgba(20,45,82,.9),rgba(10,31,61,.95));border-radius:20px;padding:26px 30px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;color:#fff;box-shadow:0 25px 50px -12px #0006;margin-bottom:28px}.user-report-header-left{display:flex;align-items:center;gap:18px}.report-icon{width:54px;height:54px;border-radius:14px;background:rgba(247,179,28,.15);color:#f7b31c;display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0}.user-report-eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.8px;color:#f7b31c;font-weight:700}.user-report-title{font-size:1.5rem;font-weight:800;margin:2px 0 4px}.user-report-meta{font-size:.85rem;color:#ffffffb3;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dot-sep{opacity:.5}.related-reports-section{margin-bottom:28px}.related-reports-section h3{font-size:1.05rem;font-weight:700;color:#0a1f3d;display:flex;align-items:center;gap:10px;margin-bottom:16px}.related-reports-section h3 svg{color:#f7b31c}.related-reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.related-report-chip{background:#fff;border:1px solid rgba(10,31,61,.05);box-shadow:0 2px 10px #00000005;border-radius:16px;padding:14px 18px;display:flex;align-items:center;gap:14px;cursor:pointer;transition:all .2s}.related-report-chip:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0a1f3d12;border-color:#f7b31c40}.related-icon{width:42px;height:42px;border-radius:10px;background:rgba(27,86,148,.08);color:#1b5694;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.related-info{display:flex;flex-direction:column;flex:1;min-width:0}.related-name{font-weight:700;color:#0a1f3d;font-size:.9rem}.related-type{font-size:.75rem;color:#94a3b8}.related-arrow{color:#cbd5e1;font-size:.8rem;flex-shrink:0}@media (max-width: 768px){.user-report-header{flex-direction:column;align-items:stretch}}.welcome-banner{padding:24px 30px;border-radius:20px;color:#fff;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:28px;background:linear-gradient(160deg,rgba(20,45,82,.85),rgba(10,31,61,.92));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);box-shadow:0 25px 50px -12px #0009,inset 0 1px #ffffff1f}.welcome-admin-name{color:#f7b31c}.welcome-admin-subtitle{margin:2px 0 6px;font-size:.85rem;color:#ffffffa6}.welcome-admin-subtitle strong{color:#ffffffe6;font-weight:700}.welcome-admin-meta svg{color:#f7b31c}.welcome-banner h2{font-weight:700;font-size:1.5rem;margin:0;display:flex;align-items:center;gap:8px}.welcome-banner h2 span,.welcome-banner .welcome-icon{color:#f7b31c}.welcome-banner p{color:#b0cce6;margin:4px 0 0;font-size:.9rem}.welcome-banner .badge-dorado,.user-report-header .badge-dorado{background:#f7b31c;color:#0a1f3d;padding:6px 20px;border-radius:40px;font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:6px;white-space:nowrap}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:32px}.stat-card{background:#fff;padding:20px 18px;border-radius:16px;box-shadow:0 2px 8px #0000000a;border:1px solid rgba(10,31,61,.06);transition:all .2s}.stat-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #0a1f3d14}.stat-card .label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8}.stat-card .value{font-size:1.8rem;font-weight:800;color:#0a1f3d;margin-top:4px}.stat-card .change{font-size:.7rem;font-weight:600;color:#10b981;background:#ecfdf5;padding:2px 10px;border-radius:30px;display:inline-flex;align-items:center;gap:4px;margin-top:6px}.stat-card .change.down{color:#ef4444;background:#fef2f2}.stat-card .change.neutral{color:#64748b;background:#f1f5f9}.reportes-section{margin-top:40px}.reportes-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:12px}.reportes-section .section-header.section-header-stacked{flex-direction:column;align-items:flex-start;gap:14px}.reportes-section .section-header.section-header-stacked .filtros-actions{width:100%}.reportes-section .section-header h3{font-size:1.3rem;font-weight:700;color:#0a1f3d;display:flex;align-items:center;gap:10px;margin:0}.reportes-section .section-header h3 svg{color:#f7b31c}.filtros-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.filtros-actions .search-box{display:flex;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:30px;padding:2px 6px 2px 14px;transition:border-color .2s}.filtros-actions .search-box:focus-within{border-color:#1b5694}.filtros-actions .search-box input{border:none;outline:none;padding:6px 0;font-size:.85rem;width:180px;background:transparent;color:#0a1f3d;font-family:inherit}.filtros-actions .search-box input::placeholder{color:#94a3b8}.filtros-actions .search-box svg{color:#1b5694;font-size:1.1rem}.btn-filtro{background:#f1f5f9;border:1px solid transparent;padding:6px 16px;border-radius:30px;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.3px;color:#1e293b;cursor:pointer;transition:all .2s;font-family:inherit;white-space:nowrap}.btn-filtro:hover{background:#e2e8f0}.btn-filtro.active{background:#1b5694;color:#fff;border-color:#1b5694}.reportes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:24px}.reportes-subsection{margin-top:28px}.reportes-subsection:first-of-type{margin-top:24px}.subsection-header{display:flex;align-items:center;gap:8px;font-size:.95rem;font-weight:700;color:#0a1f3d;margin-bottom:14px;padding-bottom:8px;border-bottom:2px solid #f1f5f9}.subsection-header.type-chart{border-bottom-color:#0ea5e940}.subsection-header.type-chart svg{color:#0ea5e9}.subsection-header.type-tabla{border-bottom-color:#f59e0b4d}.subsection-header.type-tabla svg{color:#f59e0b}.subsection-count{font-size:.7rem;font-weight:700;color:#64748b;background:#f1f5f9;padding:2px 10px;border-radius:20px;margin-left:2px}.reportes-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 0;background:#fdfdfd;border-radius:12px;border:1px dashed #cbd5e1;color:#64748b;grid-column:1 / -1}@media (max-width: 768px){.dashboard-grid{grid-template-columns:1fr 1fr}.welcome-banner{flex-direction:column;align-items:flex-start}.reportes-grid{grid-template-columns:1fr}.reportes-section .section-header{flex-direction:column;align-items:stretch}.filtros-actions{width:100%}.filtros-actions .search-box{flex:1}.filtros-actions .search-box input{width:100%}}@media (max-width: 480px){.dashboard-grid{grid-template-columns:1fr}.stat-card .value{font-size:1.4rem}.btn-filtro{font-size:.65rem;padding:4px 10px}}.builder-section{border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;margin-bottom:18px;background:rgba(255,255,255,.04)}.builder-section-title{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.builder-section-title svg{color:#f7b31c;font-size:1.1rem;margin-top:3px;flex-shrink:0}.builder-section-title strong{display:block;color:#fff;font-size:.95rem;font-weight:700}.builder-section-title span{display:block;color:#fff9;font-size:.78rem;margin-top:2px}.builder-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.builder-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.metrics-header{display:flex;justify-content:space-between;align-items:center;margin:16px 0 10px}.metrics-header span{font-size:.85rem;font-weight:700;color:#fff}.btn-add-metric{background:transparent;border:none;color:#f7b31c;font-weight:600;font-size:.8rem;cursor:pointer;display:flex;align-items:center;gap:6px;font-family:inherit}.btn-add-metric:hover{text-decoration:underline}.metrics-list{display:flex;flex-direction:column;gap:8px}.metric-row{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:8px;align-items:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:8px 10px}.metric-row input{padding:7px 10px;border:1px solid rgba(255,255,255,.15);border-radius:8px;font-size:.82rem;font-family:inherit;outline:none;background:rgba(255,255,255,.08);color:#fff;width:100%}.metric-row input:focus{border-color:#f7b31c;background:rgba(255,255,255,.12)}.btn-remove-metric{background:transparent;border:none;color:#f87171;cursor:pointer;width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center}.btn-remove-metric:hover{background:rgba(239,68,68,.15)}.btn-remove-metric:disabled{opacity:.3;cursor:not-allowed}.form-group-switch-inline{display:flex;align-items:flex-end}.switch-label-light{display:flex;align-items:center;gap:10px;font-size:.85rem;font-weight:600;color:#fff;cursor:pointer}.toggle-switch-light{position:relative;display:inline-block;width:40px;height:22px;flex-shrink:0}.toggle-switch-light input{opacity:0;width:0;height:0}.toggle-slider-light{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(255,255,255,.2);border-radius:30px;cursor:pointer;transition:.2s}.toggle-slider-light:before{content:"";position:absolute;height:16px;width:16px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.2s}.toggle-switch-light input:checked+.toggle-slider-light{background:#f7b31c}.toggle-switch-light input:checked+.toggle-slider-light:before{transform:translate(18px)}.builder-section-collapsible{padding:0;overflow:hidden}.builder-accordion-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;background:transparent;border:none;padding:16px 20px;cursor:pointer;text-align:left;font-family:inherit}.builder-accordion-toggle strong{display:block;color:#fff;font-size:.95rem}.builder-accordion-toggle span{display:block;color:#fff9;font-size:.78rem;margin-top:2px}.builder-accordion-toggle svg{color:#fff9;transition:transform .2s;flex-shrink:0}.builder-accordion-toggle.open svg{transform:rotate(180deg)}.builder-accordion-body{padding:0 20px 20px;border-top:1px solid rgba(255,255,255,.1)}.chip-group-label{font-size:.82rem;font-weight:600;color:#fff;margin:12px 0 8px}.chip-group{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:6px 14px;border-radius:30px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);color:#ffffffbf;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:inherit}.chip:hover{background:rgba(255,255,255,.12)}.chip.chip-active{background:#f7b31c;color:#0a1f3d;border-color:#f7b31c}.chip.chip-active:hover{background:#e6a317}.chip.chip-base{background:rgba(34,197,94,.15);color:#4ade80;border-color:#22c55e40;cursor:default}.chip-small{padding:3px 10px;font-size:.68rem}.excel-toggles-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:14px 16px;margin-bottom:18px}.excel-toggles-row .switch-label-light span{display:block;font-size:.82rem;font-weight:600;color:#fff}.excel-toggles-row .switch-label-light small{display:block;font-size:.7rem;color:#ffffff80;font-weight:400}.base-columns-box{margin-top:16px;padding:12px 16px;background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.2);border-radius:10px;font-size:.82rem;color:#4ade80}.base-columns-box strong{display:block;margin-bottom:8px;color:#fff}.columns-list{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:8px}.column-row{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:rgba(255,255,255,.05);border-radius:8px;font-size:.85rem;color:#fff;font-weight:600}.column-row-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.column-row-key{font-size:.72rem;font-weight:400;color:#ffffff80}.btn-remove-column{background:transparent;border:none;color:#f87171;cursor:pointer;width:24px;height:24px;border-radius:6px;display:flex;align-items:center;justify-content:center}.btn-remove-column:hover{background:rgba(239,68,68,.15)}.empty-columns-text{color:#ffffff80;font-size:.85rem;font-style:italic;text-align:center;padding:16px 0}@media (max-width: 640px){.builder-grid-2,.builder-grid-3,.excel-toggles-row,.metric-row{grid-template-columns:1fr}}.stats-mini{display:flex;gap:24px;margin-bottom:28px;flex-wrap:wrap}.stat-mini-item{background:#fff;padding:8px 20px 8px 16px;border-radius:40px;border:1px solid rgba(10,31,61,.06);display:flex;align-items:center;gap:10px;font-size:.85rem;box-shadow:0 2px 6px #00000005}.stat-mini-label{color:#64748b;font-weight:500}.stat-mini-value{font-weight:700;color:#0a1f3d;background:#f1f5f9;padding:0 10px;border-radius:30px;font-size:.9rem}.report-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-bottom:32px}.report-card{background:#fff;border-radius:20px;padding:20px 20px 16px;border:1px solid rgba(10,31,61,.04);box-shadow:0 2px 12px #00000005;transition:all .25s ease;display:flex;flex-direction:column}.report-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #0a1f3d14;border-color:#f7b31c33}.report-card .card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}.report-card .report-name{font-size:1.1rem;font-weight:700;color:#0a1f3d;margin:0}.report-card .report-type{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;padding:3px 12px;border-radius:40px;white-space:nowrap;flex-shrink:0}.report-card .type-download{background:#e0f2fe;color:#0369a1}.report-card .type-visual{background:#fef3c7;color:#b45309}.report-card .type-table{background:#dcfce7;color:#166534}.report-card .report-path{font-family:monospace;font-size:.72rem;color:#94a3b8;background:#f8fafc;padding:2px 6px;border-radius:4px;display:inline-block;margin-bottom:8px;width:fit-content}.report-card .report-desc{color:#475569;font-size:.9rem;margin:0 0 16px;line-height:1.4;flex:1}.report-card .card-footer{display:flex;justify-content:flex-end;align-items:center;padding-top:12px;border-top:1px solid #f1f5f9;flex-wrap:wrap;gap:8px}.report-card .card-actions{display:flex;gap:6px}.report-card .action-btn{background:transparent;border:none;color:#94a3b8;width:30px;height:30px;border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.report-card .action-btn:hover{background:#f1f5f9;color:#0a1f3d}.report-card .action-btn.delete:hover{color:#ef4444;background:#fef2f2}.report-card .action-btn.disabled{opacity:.3;cursor:not-allowed}.reportes-empty{grid-column:1 / -1;text-align:center;padding:40px;color:#94a3b8}@media (max-width: 768px){.report-grid{grid-template-columns:1fr}.stats-mini{justify-content:center}}.badge-report{background:#e0f2fe;color:#0369a1;padding:2px 12px;border-radius:40px;font-size:.75rem;font-weight:600;display:inline-block}.badge-report.asignado{background:#dcfce7;color:#166534}.roles-badge{background:#f1f5f9;color:#475569;padding:2px 12px;border-radius:40px;font-size:.75rem;font-weight:600;display:inline-block}.roles-badge.asignado{background:#fef3c7;color:#b45309}.view-reports-list{display:flex;flex-direction:column;gap:8px}.view-report-chip{display:flex;align-items:center;gap:10px;padding:10px 14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:10px;font-size:.88rem;font-weight:600;color:#fff}.view-report-chip svg{color:#f7b31c;font-size:1.1rem}.empty-reports-text{color:#ffffff80;font-size:.9rem;font-style:italic;text-align:center;padding:20px 0}.checkbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 20px;background:rgba(255,255,255,.04);border-radius:10px;padding:12px 16px;border:1px solid rgba(255,255,255,.06)}.glass-modal-body .checkbox-item{display:flex;align-items:center;gap:8px;font-size:.82rem;color:#ffffffd9;cursor:pointer;padding:3px 0}.glass-modal-body .checkbox-item input[type=checkbox]{width:15px;height:15px;accent-color:#f7b31c;cursor:pointer;flex-shrink:0}#reportsWithPermissions{display:flex;flex-direction:column;gap:12px;margin-top:6px}.report-permission-item{background:rgba(255,255,255,.03);border-radius:10px;padding:12px 16px;border:1px solid rgba(255,255,255,.06);transition:border-color .2s}.report-permission-item:hover{border-color:#f7b31c33}.report-header{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px}.report-header .checkbox-item{font-size:.85rem}.report-header .report-type-badge{margin-left:auto}.report-header .badge-tipo{font-size:.6rem;font-weight:700;text-transform:uppercase;padding:2px 12px;border-radius:30px;background:#e0f2fe;color:#0369a1;white-space:nowrap;flex-shrink:0}.report-header .badge-tipo.tabla{background:#fef3c7;color:#b45309}.report-header .badge-tipo.descargable{background:#dcfce7;color:#166534}.report-description{font-size:.72rem;color:#ffffff80;background:rgba(255,255,255,.05);padding:2px 12px;border-radius:20px}.role-selector{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.06)}.role-selector-label{display:block;font-size:.76rem;font-weight:500;color:#ffffffa6;margin-bottom:6px}.role-selector-options{display:flex;flex-wrap:wrap;gap:4px 14px}.role-selector-options .checkbox-item{font-size:.75rem;padding:2px 0}.role-selector-options .checkbox-item input[type=checkbox]{width:13px;height:13px}.role-hint{font-size:.7rem;color:#ffffff59;margin-top:4px}.role-hint svg{margin-right:4px;font-size:.8rem;vertical-align:middle}@media (max-width: 640px){.checkbox-grid{grid-template-columns:1fr}.report-header{flex-direction:column;align-items:flex-start;gap:4px}}.user-cell{display:flex;align-items:center;gap:12px}.user-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#1b5694,#0a1f3d);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;flex-shrink:0;border:2px solid #f7b31c}.user-info-col{display:flex;flex-direction:column;gap:2px}.user-cell .user-name{font-weight:700;color:#0a1f3d;font-size:.95rem}.user-cell .user-name .self-tag{font-weight:400;color:#94a3b8;font-size:.75rem}.user-cell .user-email{font-size:.8rem;color:#64748b;font-weight:400;display:flex;align-items:center;gap:4px}.user-cell .user-email svg{font-size:.8rem;color:#94a3b8}.area-tag{background:#f1f5f9;color:#475569;padding:2px 14px;border-radius:40px;font-size:.8rem;font-weight:500;display:inline-block}.role-tag{background:#e0f2fe;color:#0369a1;padding:2px 14px;border-radius:40px;font-size:.8rem;font-weight:500;display:inline-block}.last-connection{color:#64748b;font-size:.9rem;font-weight:500}.readonly-status-note{display:flex;align-items:flex-start;gap:8px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:10px 12px;font-size:.78rem;color:#ffffffb3;line-height:1.4;margin-top:4px}.readonly-status-note svg{color:#f7b31c;margin-top:2px;flex-shrink:0}.bulk-info-text{font-size:.85rem;color:#ffffffb3;line-height:1.5;margin-bottom:18px}.dropzone{border:2px dashed rgba(255,255,255,.25);background:rgba(255,255,255,.04);border-radius:14px;padding:32px 20px;text-align:center;cursor:pointer;transition:all .2s;margin-bottom:18px}.dropzone:hover,.dropzone.drag-active{border-color:#f7b31c;background:rgba(247,179,28,.06)}.dropzone-icon{font-size:2.2rem;color:#fff6;margin-bottom:10px}.dropzone-icon.success{color:#4ade80}.dropzone-title{font-size:.92rem;font-weight:600;color:#fff;margin-bottom:4px}.dropzone-title.success{color:#4ade80}.dropzone-sub{font-size:.8rem;color:#ffffff80}.bulk-template-row{display:flex;justify-content:center}.btn-download-template{background:transparent;border:1.5px solid #38bdf8;color:#38bdf8;padding:8px 18px;border-radius:30px;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px;font-family:inherit}.btn-download-template:hover{background:rgba(56,189,248,.1)}.level-badge{display:inline-block;background:#f1f5f9;color:#475569;padding:2px 12px;border-radius:40px;font-size:.75rem;font-weight:600}.level-badge.level-1{background:#dbeafe;color:#1e40af;font-weight:700}.level-badge.level-2{background:#e0f2fe;color:#0369a1}.role-code{font-weight:600;color:#0a1f3d;letter-spacing:.3px}.system-tag{background:#f1f5f9;color:#475569;padding:2px 14px;border-radius:40px;font-size:.75rem;font-weight:500;display:inline-block}.system-tag.personalizado{background:#fef3c7;color:#b45309}.page-header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.chart-filters-bar{display:flex;align-items:center;gap:24px;flex-wrap:wrap;background:#fff;padding:16px 20px;border-radius:14px;border:1px solid #e8ecf1;box-shadow:0 2px 8px #00000005;margin-bottom:20px}.chart-filter-item{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.chart-filter-item label{font-size:.8rem;font-weight:700;color:#64748b;white-space:nowrap;text-transform:uppercase;letter-spacing:.3px}.chart-filter-item .form-group{margin-bottom:0;min-width:160px}.chart-filter-item .custom-select-trigger{padding:8px 14px}.chart-filters-bar .btn-download{margin-left:auto;padding:9px 22px}.filter-chip-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.filter-chip{padding:3px 14px;border-radius:30px;font-size:.75rem;font-weight:700}.filter-chip.blue{background:#eff6ff;color:#1d4ed8}.filter-chip.green{background:#f0fdf4;color:#15803d}.filter-chip.purple{background:#faf5ff;color:#7e22ce}.chart-card-header.dark{background:#172b57;color:#fff}.chart-card{background:#fff;border-radius:20px;border:1px solid rgba(10,31,61,.04);box-shadow:0 2px 12px #00000005;overflow:hidden}.chart-card-header{padding:16px 24px;border-bottom:1px solid #f1f5f9;font-weight:700;color:#0a1f3d;font-size:.95rem;background:rgba(43,108,176,.02)}.chart-card-body{padding:28px;display:flex;justify-content:center}.chart-scroll-wrapper{width:100%;height:500px;overflow-x:auto}.chart-scroll-wrapper-inner{min-width:800px;height:100%}.chart-empty-state{padding:60px 20px;text-align:center;color:#94a3b8;font-weight:500;width:100%}.chart-toggle-label{display:flex;align-items:center;gap:10px;font-size:.82rem;font-weight:700;color:#475569;cursor:pointer;white-space:nowrap}.chart-toggle{position:relative;display:inline-block;width:38px;height:21px;flex-shrink:0}.chart-toggle input{opacity:0;width:0;height:0}.chart-toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:#cbd5e1;border-radius:30px;cursor:pointer;transition:.2s}.chart-toggle-slider:before{content:"";position:absolute;height:15px;width:15px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.2s}.chart-toggle input:checked+.chart-toggle-slider{background:#2890ff}.chart-toggle input:checked+.chart-toggle-slider:before{transform:translate(17px)}.chart-card-header.with-total{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.chart-card-header .chart-total{color:#2890ff}.chart-grid-2col{display:grid;grid-template-columns:2fr 1fr;gap:24px;align-items:stretch}.chart-summary-list{display:flex;flex-direction:column;gap:16px}.chart-summary-row{display:flex;justify-content:space-between;align-items:center;gap:10px}.chart-summary-row-label{display:flex;align-items:center;gap:10px;font-weight:700;color:#0a1f3d;font-size:.88rem}.chart-summary-dot{width:12px;height:12px;border-radius:4px;flex-shrink:0}.chart-summary-row-value{text-align:right}.chart-summary-row-value strong{display:block;color:#0a1f3d;font-size:.88rem;font-weight:700}.chart-summary-row-value span{color:#94a3b8;font-size:.75rem}@media (max-width: 900px){.chart-grid-2col{grid-template-columns:1fr}}.chart-grid-hero{display:grid;grid-template-columns:5fr 7fr;gap:24px;align-items:stretch}@media (max-width: 900px){.chart-grid-hero{grid-template-columns:1fr}}.chart-kpi-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width: 900px){.chart-kpi-row{grid-template-columns:1fr}}.chart-kpi-row-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}@media (max-width: 1100px){.chart-kpi-row-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.chart-kpi-row-4{grid-template-columns:1fr}}.chart-table-total-row{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;background:#f8fafc;border-top:1px solid #f1f5f9;font-weight:700}.chart-table-total-row .total-label{color:#0a1f3d}.chart-table-total-row .total-value{color:#2890ff}.chart-grid-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width: 1024px){.chart-grid-3col{grid-template-columns:1fr}}.chart-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px;border-bottom:1px solid #e8ecf1;padding-bottom:12px}.chart-tab-btn{padding:10px 22px;border-radius:30px;border:1px solid #e8ecf1;background:#fff;color:#475569;font-weight:700;font-size:.85rem;cursor:pointer;transition:all .2s;font-family:inherit}.chart-tab-btn:hover{background:#f0f2f5}.chart-tab-btn.active{background:#172b57;border-color:#172b57;color:#fff}.chart-empty-card{background:#fff;border-radius:20px;border:1px solid rgba(10,31,61,.04);box-shadow:0 2px 12px #00000005;padding:60px 24px;text-align:center}.chart-empty-card svg{font-size:3rem;color:#0a1f3d1f;margin-bottom:12px}.chart-empty-card h3{color:#475569;font-weight:700;margin:0 0 6px}.chart-empty-card p{color:#94a3b8;font-size:.88rem;margin:0}@media (max-width: 768px){.chart-filters-bar .btn-download{margin-left:0;width:100%;justify-content:center}.chart-card-body{padding:16px}}.config-wrapper{max-width:1100px;margin:0 auto;width:100%}.config-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:12px;align-items:start}.config-card{background:#ffffff;border-radius:16px;padding:24px 28px 22px;border:1px solid #e8ecf1;box-shadow:0 2px 8px #00000005;transition:all .25s ease;display:flex;flex-direction:column}.config-card:hover{box-shadow:0 8px 24px #0000000a;border-color:#d0d5dd}.config-card .card-title{font-size:.9rem;font-weight:700;color:#0a1f3d;margin-bottom:18px;display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid #f0f2f5}.config-card .card-title svg{color:#f7b31c;font-size:1.1rem}.form-group-clarity{margin-bottom:18px}.form-group-clarity label{display:block;font-weight:500;font-size:.85rem;color:#4a5568;margin-bottom:5px;letter-spacing:.2px}.form-group-clarity .form-control{width:100%;padding:10px 14px;border-radius:10px;border:1px solid #e8ecf1;background:#f7f8fa;font-size:.95rem;color:#1a202c;transition:all .2s;font-family:inherit;outline:none}.form-group-clarity .form-control:focus{border-color:#f7b31c;box-shadow:0 0 0 3px #f7b31c14;background:#ffffff}.form-group-clarity .form-control::placeholder{color:#cbd5e0}.form-group-clarity .password-wrapper{position:relative;display:flex;align-items:center}.form-group-clarity .password-wrapper .form-control{padding-right:2.6rem}.form-group-clarity .toggle-password{position:absolute;right:12px;cursor:pointer;color:#a0aec0;transition:color .2s;background:none;border:none;display:flex;align-items:center;justify-content:center;padding:0}.form-group-clarity .toggle-password:hover{color:#4a5568}.field-hint{font-size:.78rem;margin-top:6px}.field-hint.error{color:#ef4444}.field-hint.success{color:#22c55e;display:flex;align-items:center;gap:4px}.field-hint.success svg{font-size:.95rem}.config-card .btn-group{display:flex;gap:12px;margin-top:6px;flex-wrap:wrap}.btn-primary-clarity{background:#0a1f3d;border:1px solid #0a1f3d;color:#fff;padding:10px 28px;border-radius:10px;font-weight:700;font-size:.9rem;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px;flex:1;justify-content:center;font-family:inherit}.btn-primary-clarity:hover:not(:disabled){background:#1b5694;border-color:#1b5694;transform:translateY(-2px);box-shadow:0 4px 12px #1b569440}.btn-primary-clarity:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn-secondary-clarity{background:transparent;border:1px solid #e8ecf1;color:#4a5568;padding:10px 28px;border-radius:10px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px;flex:1;justify-content:center;font-family:inherit}.btn-secondary-clarity:hover{background:#f0f2f5;border-color:#d0d5dd;color:#0a1f3d}.security-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 14px;border-radius:30px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;background:#dcfce7;color:#166534;align-self:flex-start;margin-bottom:14px}.security-badge.weak{background:#fef3c7;color:#b45309}.security-badge .dot{width:6px;height:6px;border-radius:50%;background:#22c55e;display:inline-block}.security-badge.weak .dot{background:#eab308}.requisitos-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.requisitos-list li{display:flex;align-items:center;gap:10px;font-size:.85rem;color:#4a5568;padding:8px 12px;border-radius:8px;transition:all .2s;background:#f7f8fa}.requisitos-list li .check-icon{color:#a0aec0;font-size:1rem;display:flex;flex-shrink:0}.requisitos-list li.valid{background:rgba(34,197,94,.08);color:#166534;font-weight:600}.requisitos-list li.valid .check-icon{color:#22c55e}.info-box{background:#fefce8;border-left:3px solid #f7b31c;border-radius:8px;padding:14px 18px;margin-top:16px}.info-box p{font-size:.85rem;color:#4a5568;display:flex;align-items:flex-start;gap:10px;margin:0 0 6px;line-height:1.5}.info-box p:last-child{margin-bottom:0}.info-box svg{color:#f7b31c;font-size:1rem;margin-top:2px;flex-shrink:0}.config-card .last-change-note{margin-top:14px;border-top:1px solid #f0f2f5;padding-top:14px;font-size:.8rem;color:#a0aec0;display:flex;align-items:center;gap:6px}@media (max-width: 768px){.config-layout{grid-template-columns:1fr}.btn-primary-clarity,.btn-secondary-clarity{flex:1 1 100%}}.admin-panel-container{max-width:1300px;margin:0 auto;display:flex;flex-direction:column;gap:24px}.section-title-plain{font-size:1.1rem;font-weight:700;color:#0a1f3d;margin:4px 0 -4px}.running-job-card{background:#fff;border-left:6px solid #1b5694;border-radius:16px;padding:20px 24px;border:1px solid rgba(10,31,61,.04);box-shadow:0 4px 20px #0a1f3d0f}.running-job-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:10px}.running-job-title{display:flex;align-items:center;gap:12px;font-weight:700;color:#0a1f3d;font-size:.95rem;flex-wrap:wrap}.pulse-dot{width:12px;height:12px;border-radius:50%;background:#1b5694;animation:pulseDot 1.5s infinite ease-in-out;flex-shrink:0}@keyframes pulseDot{0%,to{transform:scale(.85);opacity:.6}50%{transform:scale(1.15);opacity:1}}.running-job-chips{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.job-chip{padding:3px 12px;border-radius:30px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;background:#e0f2fe;color:#0369a1}.job-chip.outline{background:transparent;border:1px solid #bae6fd;color:#0369a1}.running-job-percent{font-weight:700;color:#1b5694;font-size:.9rem}.running-job-step{font-size:.85rem;color:#475569;font-weight:600;margin-bottom:10px}.running-job-step span{color:#0a1f3d;font-weight:700}.progress-bar-track{width:100%;height:10px;background:#f1f5f9;border-radius:10px;overflow:hidden;margin-bottom:12px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#1b5694,#2890ff);border-radius:10px;transition:width .4s ease}.running-job-warning{display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:700;color:#b91c1c}.job-result-message{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.job-result-message>span{flex:1;min-width:240px}.period-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.period-card{background:#fff;border-radius:20px;padding:22px 24px;border:1px solid rgba(10,31,61,.04);border-left:4px solid transparent;box-shadow:0 2px 12px #00000005;transition:all .25s ease;display:flex;flex-direction:column}.period-card.period-daily{border-left-color:#14ae67}.period-card.period-weekly{border-left-color:#2890ff}.period-card.period-monthly{border-left-color:#ff8006}.period-card.period-yearly{border-left-color:#be0001}.period-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #0a1f3d14}.period-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:14px;border-bottom:1px solid #f1f5f9;margin-bottom:14px}.period-title{font-size:1rem;font-weight:700;color:#0a1f3d;margin:0 0 4px}.period-subtitle{font-size:.78rem;color:#64748b;margin:0}.period-range{display:block;font-size:.8rem;font-weight:700;color:#1b5694;margin-top:6px}.period-year-select{width:110px;flex-shrink:0}.period-jobs-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto}.job-trigger-btn{display:flex;align-items:center;gap:8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:9px 12px;font-size:.8rem;font-weight:600;color:#334155;cursor:pointer;transition:all .2s;text-align:left;font-family:inherit}.job-trigger-btn svg{font-size:1rem;color:#1b5694;flex-shrink:0}.job-trigger-btn:hover:not(:disabled){background:#fff;border-color:#1b5694;box-shadow:0 4px 12px #0a1f3d14}.job-trigger-btn:disabled{opacity:.5;cursor:not-allowed}.admin-table-card{background:#fff;border-radius:20px;border:1px solid rgba(10,31,61,.04);box-shadow:0 2px 12px #00000005;overflow:hidden}.admin-table-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:20px 24px;border-bottom:1px solid #f1f5f9}.admin-table-title{display:flex;align-items:center;gap:10px;font-size:1rem;font-weight:700;color:#0a1f3d}.admin-table-title svg{color:#f7b31c;font-size:1.2rem}.admin-table-card .table-container{border:none;border-radius:0;box-shadow:none;margin-top:0}.admin-table-card .incidents-table-wrapper{padding:8px 10px 4px}.admin-table-card .log-empty{margin:16px}.cron-icon{color:#1b5694;display:inline-flex}@media (max-width: 640px){.period-jobs-grid{grid-template-columns:1fr}.period-card-header{flex-direction:column}.period-year-select{width:100%}.job-result-message{flex-direction:column;align-items:stretch}}.monitoreo-container{max-width:1300px;margin:0 auto;display:flex;flex-direction:column;gap:24px}.disk-critical-alert{display:flex;align-items:center;gap:12px;background:#fef2f2;border:1px solid #fecaca;color:#991b1b;font-weight:700;font-size:.9rem;padding:16px 20px;border-radius:14px;animation:pulseAlert 2.5s infinite ease-in-out}@keyframes pulseAlert{0%{box-shadow:0 0 #f4433633}50%{box-shadow:0 0 10px #f4433680}to{box-shadow:0 0 #f4433633}}.monitor-grid{display:grid;grid-template-columns:1fr 1fr 2fr;grid-template-rows:auto auto;gap:24px;align-items:stretch}.monitor-card.card-risk{grid-column:1;grid-row:1}.monitor-card.card-db{grid-column:2;grid-row:1}.monitor-card.card-users{grid-column:1;grid-row:2}.monitor-card.card-resources{grid-column:2;grid-row:2}.monitor-grid .storage-card{grid-column:3;grid-row:1 / span 2}.monitor-card{background:#fff;border-radius:20px;padding:24px 28px;border:1px solid rgba(10,31,61,.04);box-shadow:0 2px 12px #00000005;transition:all .2s;display:flex;flex-direction:column;border-left:6px solid transparent}.monitor-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0a1f3d0f}.monitor-card.risk-bajo{border-left-color:#22c55e}.monitor-card.risk-medio{border-left-color:#eab308}.monitor-card.risk-alto{border-left-color:#f97316}.monitor-card.risk-critico{border-left-color:#ef4444;animation:pulseBorder 2s infinite ease-in-out}@keyframes pulseBorder{0%{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 12px #ef4444cc}to{box-shadow:0 0 #ef444466}}.card-title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#94a3b8;margin-bottom:12px;display:flex;align-items:center;gap:6px}.card-title svg{color:#f7b31c;font-size:1rem}.card-value-row{display:flex;align-items:center;gap:10px}.card-value{font-size:1.8rem;font-weight:700;color:#0a1f3d;line-height:1.2}.pulse-dot-green{width:10px;height:10px;border-radius:50%;background:#22c55e;animation:pulseGreen 1.5s infinite ease-in-out}@keyframes pulseGreen{0%,to{transform:scale(.85);opacity:.5}50%{transform:scale(1.15);opacity:1}}.card-sub{font-size:.85rem;color:#475569;margin-top:4px;line-height:1.4}.resource-item{display:flex;justify-content:space-between;align-items:center;padding:2px 0}.resource-item .label{font-weight:600;color:#475569;font-size:.8rem}.resource-item .value{font-weight:700;color:#0a1f3d;font-size:.8rem}.resource-bar{width:100%;height:6px;background:#f1f5f9;border-radius:10px;margin-top:4px;overflow:hidden}.resource-bar .fill{height:100%;border-radius:10px;transition:width .6s ease}.fill.green{background:#22c55e}.fill.yellow{background:#eab308}.fill.red{background:#ef4444}.db-item{display:flex;justify-content:space-between;align-items:center;padding:4px 0;border-bottom:1px solid #f1f5f9;font-size:.85rem}.db-item:last-child{border-bottom:none}.db-name{font-weight:500;color:#475569}.db-status{font-weight:700;color:#22c55e}.db-status.error{color:#ef4444}.security-badge{display:inline-block;background:#dcfce7;color:#166534;padding:4px 18px;border-radius:40px;font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.security-badge.small{padding:2px 10px;font-size:.65rem}.security-badge.bajo{background:#dcfce7;color:#166534}.security-badge.medio{background:#fef3c7;color:#b45309}.security-badge.alto{background:#ffedd5;color:#c2410c}.security-badge.critico{background:#fee2e2;color:#991b1b}.storage-card{grid-column:1 / -1;background:#fff;border-radius:20px;padding:24px 28px;border:1px solid rgba(10,31,61,.04);box-shadow:0 2px 12px #00000005}.disks-list{display:flex;flex-direction:column;gap:14px}.disk-item{padding:14px 16px;border:1px solid rgba(10,31,61,.05);border-radius:12px;background:#fafcff}.disk-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.disk-name{font-weight:700;color:#0a1f3d;font-size:.88rem}.disk-fs{font-weight:400;color:#64748b;font-size:.75rem;font-family:monospace}.disk-item-meta{display:flex;justify-content:space-between;font-size:.78rem;color:#64748b;margin-bottom:6px}.bitacora-card{grid-column:1 / -1;background:#fff;border-radius:20px;padding:24px 28px;border:1px solid rgba(10,31,61,.04);box-shadow:0 2px 12px #00000005}.bitacora-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid #f1f5f9}.bitacora-summary{font-size:.85rem;color:#475569;margin-top:4px}.action-row{display:flex;gap:16px;flex-wrap:wrap}@media (max-width: 1024px){.monitor-grid{grid-template-columns:repeat(2,1fr)}.monitor-card.card-risk,.monitor-card.card-db,.monitor-card.card-users,.monitor-card.card-resources{grid-column:auto;grid-row:auto}.monitor-grid .storage-card,.bitacora-card{grid-column:1 / -1;grid-row:auto}}@media (max-width: 640px){.monitor-grid{grid-template-columns:1fr}.monitor-grid .storage-card,.bitacora-card{grid-column:1;grid-row:auto}.monitor-card{padding:20px}.action-row{flex-direction:column}.btn-secondary{justify-content:center;width:100%}}.estaciones-wrapper{max-width:1200px;margin:0 auto;width:100%}.estaciones-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;margin-top:12px}.estacion-card{background:#ffffff;border-radius:16px;padding:20px 22px 18px;border:1px solid #e8ecf1;box-shadow:0 2px 8px #00000005;transition:all .25s ease;display:flex;flex-direction:column;position:relative}.estacion-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000000f;border-color:#d0d5dd}.estacion-card.inactiva{opacity:.6}.estacion-card .card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.estacion-card .iata-code{font-size:1.6rem;font-weight:600;color:#1a202c;letter-spacing:1px}.estacion-card .badge-tipo{font-size:.6rem;font-weight:600;text-transform:uppercase;padding:3px 14px;border-radius:30px;background:rgba(43,108,176,.06);color:#2b6cb0;border:1px solid #e8ecf1}.estacion-card .badge-tipo.internacional{background:rgba(201,168,76,.06);color:#c9a84c;border-color:#c9a84c33}.estacion-card .card-body{flex:1;display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.estacion-card .card-body .detalle{font-size:.85rem;color:#4a5568;display:flex;align-items:center;gap:8px}.estacion-card .card-body .detalle svg{color:#a0aec0;font-size:1rem}.estacion-card .status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 14px;border-radius:30px;font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.3px;background:#e6f7e6;color:#2d7a2d;align-self:flex-start;margin-top:4px}.estacion-card .status-badge.inactivo{background:rgba(148,163,184,.15);color:#64748b}.estacion-card .status-badge .dot{width:6px;height:6px;border-radius:50%;background:#2d7a2d;display:inline-block}.estacion-card .status-badge.inactivo .dot{background:#94a3b8}.estacion-card .card-actions{display:flex;gap:8px;justify-content:flex-end;border-top:1px solid #f0f2f5;padding-top:14px;margin-top:4px}.estacion-card .card-actions .btn-icon{background:transparent;border:none;color:#a0aec0;width:32px;height:32px;border-radius:8px;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.estacion-card .card-actions .btn-icon:hover{background:#f0f2f5;color:#2b6cb0}.estacion-card .card-actions .btn-icon.deactivate:hover{color:#ef4444;background:#fef2f2}.estacion-card .card-actions .btn-icon.activate:hover{color:#16a34a;background:#f0fdf4}.estacion-card .card-actions .btn-icon.delete:hover{color:#e53e3e;background:rgba(229,62,62,.06)}.empty-row{grid-column:1 / -1;text-align:center;padding:40px;color:#a0aec0}@media (max-width: 768px){.estaciones-grid{grid-template-columns:1fr}}.history-page-container{display:flex;flex-direction:column;gap:24px}.search-bar-container{display:flex;background:#ffffff;padding:16px 20px;border-radius:12px;box-shadow:0 4px 12px #0a1f3d08;border:1px solid rgba(10,31,61,.05)}.search-input-wrapper{position:relative;display:flex;align-items:center;flex:1}.search-icon{position:absolute;left:12px;color:#94a3b8}.search-input{width:100%;padding:10px 12px 10px 44px;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;color:#1e293b;outline:none;transition:all .2s ease;font-family:inherit}.search-input:focus{border-color:#172b57;box-shadow:0 0 0 3px #172b5726}.history-card{background:#ffffff;border-radius:16px;box-shadow:0 6px 16px #0a1f3d08;border:1px solid rgba(10,31,61,.05);overflow:hidden}.history-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#64748b;gap:16px}.history-table-wrapper{overflow-x:auto;scrollbar-width:thin}.history-table{width:100%;border-collapse:collapse;text-align:left}.history-table th{background:#f8fafc;padding:16px 20px;font-size:.75rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.history-table td{padding:16px 20px;border-bottom:1px solid #f1f5f9;font-size:.88rem;color:#334155}.history-table tr:hover td{background:#f8fafc}.email-cell{color:#64748b}.method-chip{display:inline-block;padding:4px 10px;border-radius:9999px;font-size:.75rem;font-weight:600}.chip-self{background:rgba(56,189,248,.12);color:#0369a1}.chip-email{background:rgba(34,197,94,.12);color:#15803d}.chip-admin{background:rgba(245,158,11,.12);color:#b45309}.chip-default{background:rgba(100,116,139,.12);color:#475569}.admin-name{font-weight:600;color:#b45309}.self-label{color:#94a3b8;font-style:italic}.error-logs-container{display:flex;flex-direction:column;gap:24px}.logs-card{background:#ffffff;border-radius:16px;box-shadow:0 6px 16px #0a1f3d08;border:1px solid rgba(10,31,61,.05);overflow:hidden}.logs-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#64748b;gap:16px}.empty-icon{font-size:3rem!important;color:#cbd5e1}.logs-table-wrapper{overflow-x:auto;scrollbar-width:thin}.logs-table{width:100%;border-collapse:collapse;text-align:left}.logs-table th{background:#f8fafc;padding:16px 20px;font-size:.75rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.logs-table td{padding:16px 20px;border-bottom:1px solid #f1f5f9;font-size:.88rem;color:#334155;vertical-align:middle}.logs-table tr:hover td{background:#f8fafc}.expand-trigger-cell{padding:16px 8px!important;text-align:center}.btn-expand-row{background:transparent;border:none;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;border-radius:4px;transition:background .2s,color .2s}.btn-expand-row:hover{background:rgba(10,31,61,.04);color:#172b57}.date-cell{font-family:monospace;font-weight:600;color:#475569!important}.user-cell{font-weight:600;color:#172b57!important}.report-cell{font-weight:600;color:#1b5694!important;text-transform:uppercase;font-size:.8rem}.error-message-cell{max-width:400px}.error-message-text{color:#ef4444;font-weight:500;word-break:break-word}.row-expanded-parent td{border-bottom:none!important;background:#fffcfc!important}.row-expanded-stack td{background:#fffcfc!important;padding-top:0!important;padding-bottom:20px!important}.stack-container-cell{border-bottom:1px solid #f1f5f9}.stack-wrapper{margin-left:40px;margin-right:20px;padding:16px;background:#0f172a;border-radius:8px;border-left:4px solid #ef4444;box-shadow:inset 0 2px 4px #0003}.stack-title{color:#94a3b8;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.stack-trace{margin:0;font-family:Courier New,Courier,monospace;font-size:.8rem;color:#f8fafc;overflow-x:auto;white-space:pre-wrap;word-break:break-all;max-height:250px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.stack-trace::-webkit-scrollbar{height:4px;width:4px}.stack-trace::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:4px}.app-shell{display:flex;flex-direction:column;min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;padding:0 32px;height:80px;background:#ffffff;border-bottom:1px solid rgba(10,31,61,.06);box-shadow:0 4px 20px #00000005;flex-shrink:0;z-index:100;position:relative}.topbar-left{display:flex;align-items:center;gap:20px}.hamburger-btn{display:flex;flex-direction:column;justify-content:center;align-items:center;width:44px;height:44px;border-radius:12px;border:none;background:transparent;cursor:pointer;transition:background .2s ease;padding:0;gap:5px}.hamburger-btn:hover{background:rgba(10,31,61,.04)}.hamburger-btn span{display:block;width:22px;height:2.5px;background:#0a1f3d;border-radius:10px;transition:all .3s cubic-bezier(.68,-.55,.265,1.55);transform-origin:center}.hamburger-btn.active span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}.hamburger-btn.active span:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger-btn.active span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}.topbar-logo{display:flex;align-items:center;gap:10px;cursor:pointer}.topbar-logo img{height:36px;width:auto}.nav-tabs{position:relative;display:flex;align-items:center;gap:4px;height:48px;background:linear-gradient(160deg,rgba(20,45,82,.85),rgba(10,31,61,.92));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);border-radius:40px;padding:0 6px;box-shadow:inset 0 1px 3px #0a1f3d33}.tab-indicator{position:absolute;top:4px;left:0;height:40px;border-radius:30px;background:rgba(255,255,255,.16);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.25);box-shadow:0 4px 16px #0a1f3d40,inset 0 1px #ffffff40;border-bottom:2px solid #f7b31c;transition:transform .3s ease,width .3s ease;z-index:1}.tab-link{position:relative;z-index:2;font-weight:500;color:#ffffffb3;font-size:.85rem;padding:8px 22px;border-radius:30px;transition:all .2s;cursor:pointer;background:transparent;border:none;letter-spacing:.2px;font-family:inherit}.tab-link:hover{color:#fff}.tab-link.active{font-weight:700;color:#fff}.topbar-right{position:relative;display:flex;align-items:center;gap:24px}.notification-bell{position:relative;color:#64748b;cursor:pointer;transition:color .2s;background:transparent;border:none;display:flex;align-items:center;justify-content:center;padding:6px}.notification-bell:hover{color:#f7b31c}.notification-bell .badge{position:absolute;top:0;right:0;min-width:18px;height:18px;background:#ef4444;color:#fff;font-size:.6rem;font-weight:700;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid #fff;animation:badge-pulse 2.5s ease-in-out infinite}@keyframes badge-pulse{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 4px #ef444400}}.user-profile{display:flex;align-items:center;gap:12px;cursor:pointer;padding:6px 12px 6px 6px;border-radius:40px;transition:background .2s;background:transparent;border:none;font-family:inherit}.user-profile:hover{background:rgba(10,31,61,.04)}.user-profile .avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#1b5694,#0a1f3d);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1rem;border:2px solid #f7b31c;flex-shrink:0}.user-profile .user-info{display:flex;flex-direction:column;line-height:1.2;text-align:left}.user-profile .user-info .name{font-weight:600;color:#0a1f3d;font-size:.9rem}.user-profile .user-info .role{font-size:.7rem;color:#94a3b8;font-weight:500;text-transform:uppercase;letter-spacing:.3px}.chevron-icon{color:#94a3b8;font-size:.9rem;display:flex;transition:transform .25s cubic-bezier(.34,1.56,.64,1),color .2s}.user-profile.open .chevron-icon{transform:rotate(180deg);color:#f7b31c}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(10,31,61,.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:200;opacity:0;pointer-events:none;transition:opacity .4s ease}.drawer-overlay.open{opacity:1;pointer-events:all}.drawer{position:fixed;top:0;left:0;width:100%;max-width:360px;height:100%;background:rgba(10,31,61,.67);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-right:1px solid rgba(255,255,255,.08);box-shadow:8px 0 40px #0009;z-index:300;transform:translate(-110%);transition:transform .4s cubic-bezier(.23,1,.32,1);display:flex;flex-direction:column;padding:32px 24px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#f7b31c transparent}.drawer.open{transform:translate(0)}.drawer-header{display:flex;align-items:center;gap:16px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.06)}.drawer-header .avatar-lg{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#f7b31c,#e09e10);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;color:#0a1f3d;flex-shrink:0;border:2px solid rgba(247,179,28,.4)}.drawer-header .drawer-user h3{margin:0;color:#fff;font-size:1.1rem;font-weight:700;line-height:1.3}.drawer-header .drawer-user p{margin:0;color:#94b8d4;font-size:.8rem;font-weight:500;display:flex;align-items:center;gap:4px;line-height:1.3}.drawer-header .drawer-user .role-icon{color:#f7b31c;font-size:.95rem}.drawer-header .drawer-user .drawer-user-puesto{margin-top:6px;display:flex;align-items:center;gap:4px;color:#ffffff7a;font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.4px}.drawer-header .drawer-user .puesto-icon{color:#f7b31c99;font-size:.85rem}.drawer-nav{flex:1;display:flex;flex-direction:column;gap:6px}.drawer-nav .nav-section{margin-top:16px}.drawer-nav .nav-section:first-of-type{margin-top:0}.drawer-nav .nav-section .section-title{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:#f7b31c;padding:8px 12px 4px;opacity:.7}.drawer-nav .nav-item,.drawer-footer .nav-item{display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:12px;color:#cbd5e1;text-decoration:none;font-weight:500;font-size:.99rem;transition:all .2s ease;position:relative;border-left:3px solid transparent;cursor:pointer;background:none;border-top:none;border-right:none;border-bottom:none;width:100%;text-align:left;font-family:inherit}.drawer-nav .nav-item svg,.drawer-footer .nav-item svg{width:20px;font-size:1.1rem;color:#64748b;transition:color .2s}.drawer-nav .nav-item:hover{background:rgba(255,255,255,.05);color:#fff}.drawer-nav .nav-item:hover svg{color:#f7b31c}.drawer-nav .nav-item.active{background:rgba(247,179,28,.08);color:#fff;border-left-color:#f7b31c}.drawer-nav .nav-item.active svg{color:#f7b31c}.drawer-footer{margin-top:auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.06)}.drawer-footer .nav-item{color:#94a3b8}.drawer-footer .nav-item:hover{color:#f87171;background:rgba(248,113,113,.08)}.drawer-footer .nav-item:hover svg{color:#f87171}.drawer::-webkit-scrollbar{width:4px}.drawer::-webkit-scrollbar-thumb{background:#f7b31c;border-radius:10px}.main-content{flex:1;padding:32px 40px;overflow-y:auto;background:#eef2f5}.page-transition{animation:pageFadeIn .22s ease-out}@keyframes pageFadeIn{0%{opacity:0}to{opacity:1}}.user-dropdown{position:absolute;top:calc(100% + 10px);right:0;border-radius:16px;box-shadow:0 12px 40px #0a1f3d59;border:1px solid rgba(255,255,255,.08);padding:18px 20px 16px;min-width:240px;opacity:0;visibility:hidden;transform:translateY(-6px);z-index:1000;pointer-events:none;background:rgba(10,31,61,0);backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);transition:background .25s cubic-bezier(.22,1,.36,1),backdrop-filter .25s cubic-bezier(.22,1,.36,1),opacity .2s cubic-bezier(.22,1,.36,1),visibility .2s cubic-bezier(.22,1,.36,1),transform .2s cubic-bezier(.22,1,.36,1)}.user-dropdown.open{background:rgba(10,31,61,.85);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.user-dropdown:before{content:"";position:absolute;top:-8px;right:20px;width:14px;height:14px;background:rgba(10,31,61,.85);transform:rotate(45deg);border-left:1px solid rgba(255,255,255,.08);border-top:1px solid rgba(255,255,255,.08);border-radius:4px 0 0}.user-dropdown .dropdown-item{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.08)}.user-dropdown .dropdown-item:last-of-type{border-bottom:none}.dropdown-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}.dropdown-icon.icon-blue{background:rgba(56,189,248,.15);color:#38bdf8}.dropdown-icon.icon-gold{background:rgba(247,179,28,.15);color:#f7b31c}.user-dropdown .dropdown-item .info{display:flex;flex-direction:column;min-width:0}.user-dropdown .dropdown-item .info .label{font-size:.65rem;text-transform:uppercase;letter-spacing:.4px;color:#94b8d4;font-weight:600}.user-dropdown .dropdown-item .info .value{font-size:.9rem;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-dropdown .dropdown-divider{height:1px;background:rgba(255,255,255,.08);margin:10px 0}.user-dropdown .btn-logout{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:8px 0;background:rgba(248,113,113,.12);border:none;border-radius:30px;color:#f87171;font-weight:600;font-size:.85rem;cursor:pointer;transition:background .2s;font-family:inherit;margin-top:4px}.user-dropdown .btn-logout:hover{background:rgba(248,113,113,.22)}.notification-dropdown{position:absolute;top:calc(100% + 10px);right:-60px;width:320px;border-radius:18px;box-shadow:0 12px 40px #0a1f3d59;border:1px solid rgba(255,255,255,.08);padding:14px;opacity:0;visibility:hidden;transform:translateY(-6px);pointer-events:none;z-index:1000;background:rgba(10,31,61,0);backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);transition:background .25s cubic-bezier(.22,1,.36,1),backdrop-filter .25s cubic-bezier(.22,1,.36,1),opacity .2s cubic-bezier(.22,1,.36,1),visibility .2s cubic-bezier(.22,1,.36,1),transform .2s cubic-bezier(.22,1,.36,1)}.notification-dropdown.open{background:rgba(10,31,61,.85);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.notification-dropdown:before{content:"";position:absolute;top:-8px;right:71px;width:14px;height:14px;background:rgba(10,31,61,.85);transform:rotate(45deg);border-left:1px solid rgba(255,255,255,.08);border-top:1px solid rgba(255,255,255,.08);border-radius:4px 0 0}.notification-header{display:flex;justify-content:space-between;align-items:center;padding:6px 10px 12px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:6px;font-size:.9rem;font-weight:700;color:#fff}.notification-empty{padding:24px 10px;text-align:center;color:#94b8d4;font-size:.85rem}@media (max-width: 640px){.user-dropdown{right:-10px;min-width:200px}.user-dropdown:before{right:16px}.notification-dropdown{right:-60px;width:280px}.notification-dropdown:before{right:70px}}@media (max-width: 768px){.topbar{padding:0 16px;height:68px}.user-profile .user-info{display:none}.drawer{max-width:300px;padding:24px 16px}.main-content{padding:20px 16px}}.notification-list{max-height:280px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(247,179,28,.4) transparent}.notification-list::-webkit-scrollbar{width:4px}.notification-list::-webkit-scrollbar-thumb{background:rgba(247,179,28,.4);border-radius:10px}.notification-item{display:flex;gap:12px;padding:10px;border-radius:10px;margin-bottom:4px;cursor:pointer;transition:background .2s;color:#fff;text-align:left}.notification-item:hover{background:rgba(255,255,255,.05)}.notification-item.unread{background:rgba(247,179,28,.06)}.notification-item.unread:hover{background:rgba(247,179,28,.1)}.notification-icon-wrapper{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;flex-shrink:0}.notification-icon-wrapper.info{background:rgba(56,189,248,.15);color:#38bdf8}.notification-icon-wrapper.success{background:rgba(34,197,94,.15);color:#22c55e}.notification-icon-wrapper.warning{background:rgba(245,158,11,.15);color:#f59e0b}.notification-icon-wrapper.error{background:rgba(239,68,68,.15);color:#ef4444}.notification-content{flex:1;min-width:0}.notification-title{font-size:.85rem;font-weight:600;margin-bottom:2px;display:block}.notification-message{font-size:.75rem;color:#94b8d4;line-height:1.3;display:block;word-break:break-word}.notification-time{font-size:.65rem;color:#64748b;margin-top:4px;display:block}.btn-mark-all{background:transparent;border:none;color:#f7b31c;font-size:.75rem;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s;font-family:inherit}.btn-mark-all:hover{background:rgba(247,179,28,.1)}*,*:before,*:after{box-sizing:border-box}body{margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{scrollbar-width:thin;scrollbar-color:#f7b31c transparent}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#f7b31c;border-radius:10px}*::-webkit-scrollbar-thumb:hover{background:#e6a317}
