:root{--bg-primary:#182228;--bg-secondary:#222d35;--bg-card:#2b3942e6;--border-color:#90ab8b33;--text-primary:#ebf4dd;--text-secondary:#b6c7b5;--primary:#5a7863;--primary-hover:#4d6955;--accent:#90ab8b;--accent-cream:#ebf4dd;--slate:#3b4953;--danger:#f87171;--success:#90ab8b}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}h1,h2,h3,h4,.brand-name,.auth-title{letter-spacing:-.02em;font-family:Outfit,sans-serif}.center-screen{justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.loading-card,.forbidden-card{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-color);text-align:center;border-radius:8px;width:100%;max-width:480px;padding:2.5rem;box-shadow:0 25px 50px -12px #00000080}.spinner{border:3px solid #6366f133;border-top-color:var(--primary);border-radius:50%;width:40px;height:40px;margin:0 auto 1.25rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{color:var(--text-secondary);font-size:.95rem}.auth-container{background:radial-gradient(circle at 50% 0,#6366f126 0%,#0000 60%);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.auth-card{background:var(--bg-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-color);text-align:center;border-radius:20px;width:100%;max-width:500px;padding:3rem;box-shadow:0 25px 50px -12px #0009}.auth-badge{color:var(--accent);letter-spacing:.05em;text-transform:uppercase;background:#6366f126;border:1px solid #6366f14d;border-radius:9999px;margin-bottom:1.5rem;padding:.35rem .85rem;font-size:.75rem;font-weight:600;display:inline-block}.auth-title{background:linear-gradient(135deg,#fff 0%,#cbd5e1 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.75rem;font-size:2rem;font-weight:700}.auth-subtitle{color:var(--text-secondary);margin-bottom:2rem;font-size:.95rem;line-height:1.5}.features-grid{text-align:left;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem;display:grid}.feature-item{border:1px solid var(--border-color);background:#0f172a80;border-radius:12px;align-items:center;gap:.75rem;padding:1rem;display:flex}.feature-icon{font-size:1.5rem}.feature-item strong{color:var(--text-primary);font-size:.85rem;display:block}.feature-item p{color:var(--text-secondary);margin-top:.2rem;font-size:.75rem}.btn-primary{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-hover) 100%);color:#fff;cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;gap:.75rem;width:100%;padding:.85rem 1.4rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex;box-shadow:0 4px 14px #5a786359}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #5a786373}.btn-arrow{transition:transform .2s}.btn-primary:hover .btn-arrow{transform:translate(4px)}.auth-footer{color:var(--text-secondary);margin-top:2rem;font-size:.8rem}.auth-footer code{color:var(--accent);background:#38bdf81a;border-radius:4px;padding:.2rem .4rem}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-navbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border-color);z-index:50;background:#0f172acc;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex;position:sticky;top:0}.brand{align-items:center;gap:.75rem;font-size:1.15rem;font-weight:700;display:flex}.brand-logo{color:var(--primary);font-size:1.5rem}.navbar-actions{align-items:center;gap:1.25rem;display:flex}.user-greeting{color:var(--text-secondary);font-size:.9rem}.user-greeting strong{color:var(--text-primary)}.btn-secondary{border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;background:#ffffff0d;border-radius:6px;padding:.5rem .95rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .2s}.btn-secondary:hover{background:#ffffff1a}.dashboard-content{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:2.5rem 2rem}.welcome-banner{background:linear-gradient(135deg,#5a786333 0%,#3b495340 100%);border:1px solid #90ab8b4d;border-radius:8px;margin-bottom:2rem;padding:1.75rem 2rem}.welcome-banner h2{margin-bottom:.5rem;font-size:1.5rem}.welcome-banner p{color:var(--text-secondary);font-size:.95rem}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem;display:grid}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:1.75rem;box-shadow:0 10px 30px -10px #0006}.card.full-width{grid-column:1/-1}.card h3{color:var(--text-primary);margin-bottom:1.25rem;font-size:1.15rem}.info-row{border-bottom:1px solid #ffffff0a;justify-content:space-between;padding:.6rem 0;font-size:.9rem;display:flex}.info-row:last-child{border-bottom:none}.info-label{color:var(--text-secondary)}.info-value code{color:var(--accent);background:#38bdf81a;border-radius:4px;padding:.15rem .4rem}.badges-wrap{flex-wrap:wrap;gap:.5rem;display:flex}.badge{letter-spacing:.02em;border-radius:4px;padding:.3rem .65rem;font-size:.78rem;font-weight:600}.users-tabs-bar{border-bottom:1px solid var(--border-color);gap:.5rem;margin-bottom:1.75rem;display:flex}.tab-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:6px 6px 0 0;align-items:center;gap:.55rem;margin-bottom:-1px;padding:.65rem 1.15rem;font-family:inherit;font-size:.88rem;font-weight:600;transition:all .15s;display:inline-flex}.tab-btn.active{color:var(--text-primary);border-bottom-color:var(--accent);background:#90ab8b24}.tab-count-badge{color:var(--accent-cream);background:#90ab8b40;border-radius:4px;padding:.1rem .45rem;font-size:.72rem;font-weight:700}.badge-role{color:#a5b4fc;background:#6366f133;border:1px solid #6366f166}.badge-perm{color:#6ee7b7;background:#10b98126;border:1px solid #10b9814d}.badge-mini{color:var(--text-secondary);background:#ffffff14;border-radius:4px;padding:.2rem .5rem;font-size:.7rem}.modules-list{flex-direction:column;gap:.75rem;display:flex}.module-link{border:1px solid var(--border-color);color:var(--text-primary);background:#ffffff08;border-radius:10px;justify-content:space-between;align-items:center;padding:.85rem 1rem;text-decoration:none;transition:all .2s;display:flex}.module-link:hover{background:#6366f11a;border-color:#6366f14d}.forbidden-icon{color:#f59e0b;margin-bottom:1rem;font-size:3rem}.text-muted{color:var(--text-secondary);font-size:.85rem}.rule-editor-dialog{box-sizing:border-box;color:#ebf4dd;background:#1c272e;border:1px solid #52675c;border-radius:12px;width:min(900px,100vw - 3rem);max-width:none;max-height:calc(100dvh - 3rem);margin:auto;padding:0;position:fixed;inset:0;overflow-y:auto}.rule-editor-dialog::backdrop{background:#000000a6}.rule-editor-dialog .local-ai-panel{border:0;margin:0}.rule-editor-dialog .rule-editor-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem;margin:1.25rem 0;display:grid}.rule-editor-dialog .rule-editor-fields input,.rule-editor-dialog .rule-editor-fields select{box-sizing:border-box;width:100%}.rule-editor-dialog .rule-editor-fields .rule-editor-active{flex-direction:row;align-self:center;align-items:center}.rule-editor-dialog .rule-editor-active input{width:auto;margin:0}.rule-editor-dialog .rule-editor-actions{border-top:1px solid #52675c;justify-content:flex-end;gap:.75rem;padding-top:1rem;display:flex}.rule-editor-dialog .rule-editor-actions button{width:auto}@media (width<=600px){.rule-editor-dialog{width:calc(100vw - 1rem);max-height:calc(100dvh - 1rem)}.rule-editor-dialog .rule-editor-fields{grid-template-columns:minmax(0,1fr)}.rule-editor-dialog .rule-editor-actions{flex-wrap:wrap}}.local-ai-panel{color:#ebf4dd;overflow-wrap:anywhere;background:#1c272e;border:1px solid #90ab8b4d;border-radius:12px;margin-bottom:1rem;padding:1.2rem}.local-ai-panel h2{font-size:1.15rem}.local-ai-panel p{font-size:.9rem}.local-ai-controls{flex-wrap:wrap;align-items:end;gap:.8rem;margin:.8rem 0;display:flex}.local-ai-panel label{flex-direction:column;gap:.4rem;min-width:0;display:flex}.local-ai-panel input,.local-ai-panel select,.local-ai-panel textarea{color:#ebf4dd;background:#10161a;border:1px solid #52675c;border-radius:6px;max-width:100%;padding:.6rem}.local-ai-panel textarea{box-sizing:border-box;width:100%;min-height:8rem}.local-ai-panel progress{width:100%}.local-ai-panel pre{max-height:20rem;overflow:auto}.local-ai-answer{white-space:pre-wrap}.agent-action-item{border-bottom:1px solid #90ab8b33;padding:.85rem 0}.agent-action-item:last-child{border-bottom:0}.agent-action-item p{margin:.35rem 0}.agent-action-item .meta-chip{margin-left:.6rem}.local-ai-draft{gap:.8rem;margin-bottom:1rem;display:grid}.monitoreo-container{box-sizing:border-box;color:#ebf4dd;background:#162026;border:1px solid #90ab8b33;border-radius:12px;flex-direction:column;width:100%;height:100%;max-height:100%;display:flex;overflow:hidden}.monitoreo-topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:10;background:#162026f2;border-bottom:1px solid #90ab8b2e;flex-direction:column;flex-shrink:0;gap:.85rem;padding:1.25rem 1.75rem .85rem;display:flex}.monitoreo-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.monitoreo-title h1{color:#ebf4dd;letter-spacing:-.01em;align-items:center;gap:.75rem;margin:0;font-family:Outfit,sans-serif;font-size:1.55rem;font-weight:800;display:flex}.monitoreo-title h1 span{color:#90ab8b;font-weight:700}.monitoreo-title p{color:#9bb0a5;margin:.25rem 0 0;font-size:.84rem;line-height:1.4}.monitoreo-actions{align-items:center;gap:.75rem;display:flex}.status-badge-active{color:#6ee7b7;background:#6ee7b71f;border:1px solid #6ee7b759;border-radius:9999px;align-items:center;gap:.45rem;padding:.35rem .85rem;font-size:.76rem;font-weight:700;display:inline-flex}.status-dot-pulse{background:#6ee7b7;border-radius:50%;width:7px;height:7px;animation:1.8s infinite pulse-dot;box-shadow:0 0 8px #6ee7b7}@keyframes pulse-dot{0%{opacity:.7;transform:scale(.95)}50%{opacity:1;transform:scale(1.3)}to{opacity:.7;transform:scale(.95)}}.browser-ai-banner{background:linear-gradient(135deg,#5a786326 0%,#222d3573 100%);border:1px solid #90ab8b40;border-radius:10px;flex-direction:column;gap:.5rem;padding:.85rem 1.15rem;display:flex}.browser-ai-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.85rem;display:flex}.browser-ai-info{align-items:center;gap:.75rem;display:flex}.ai-chip{color:#ebf4dd;text-transform:uppercase;letter-spacing:.04em;background:#5a786340;border:1px solid #90ab8b59;border-radius:6px;padding:.2rem .55rem;font-size:.72rem;font-weight:700}.browser-ai-select{color:#ebf4dd;cursor:pointer;background:#1a232a;border:1px solid #90ab8b59;border-radius:6px;outline:none;padding:.45rem .75rem;font-size:.82rem;font-weight:600;transition:border-color .2s}.browser-ai-select:focus{border-color:#6ee7b7}.browser-ai-progress-bar{background:#0000004d;border-radius:3px;width:100%;height:5px;overflow:hidden}.browser-ai-progress-fill{background:linear-gradient(90deg,#5a7863,#6ee7b7);height:100%;transition:width .3s}.tabs-navigation{background:#00000040;border:1px solid #90ab8b2e;border-radius:10px;align-items:center;gap:.4rem;padding:.3rem;display:flex;overflow-x:auto}.tab-btn{color:#90ab8b;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:7px;align-items:center;gap:.5rem;padding:.5rem 1.05rem;font-size:.85rem;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.tab-btn:hover{color:#ebf4dd;background:#90ab8b1a}.tab-btn.active{color:#ebf4dd;background:linear-gradient(135deg,#5a7863,#324338);border:1px solid #90ab8b66;box-shadow:0 3px 10px #5a786366}.monitoreo-viewport{flex-direction:column;flex:1;gap:1.5rem;min-height:0;padding:1.5rem 1.75rem 3rem;display:flex;overflow:hidden auto}.monitoreo-viewport::-webkit-scrollbar{width:7px;height:7px}.monitoreo-viewport::-webkit-scrollbar-track{background:#16202699}.monitoreo-viewport::-webkit-scrollbar-thumb{background:#90ab8b59;border-radius:4px}.monitoreo-viewport::-webkit-scrollbar-thumb:hover{background:#90ab8b99}.kpi-cards-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.kpi-card{background:linear-gradient(145deg,#1c272e 0%,#131b20 100%);border:1px solid #90ab8b33;border-radius:12px;flex-direction:column;gap:.45rem;padding:1.25rem 1.4rem;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #00000040}.kpi-card-header{color:#90ab8b;text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;align-items:center;font-size:.78rem;font-weight:700;display:flex}.kpi-value-row{align-items:baseline;gap:.5rem;display:flex}.kpi-number{color:#ebf4dd;font-family:Outfit,sans-serif;font-size:2.1rem;font-weight:800;line-height:1.1}.kpi-subtext{color:#9bb0a5;font-size:.84rem}.agents-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.75rem;display:grid}.agent-mini-card{background:#1a232ab3;border:1px solid #90ab8b2e;border-radius:8px;align-items:center;gap:.75rem;padding:.85rem 1rem;transition:all .2s;display:flex}.agent-mini-card.active{background:#5a786324;border-color:#6ee7b766}.agent-mini-card:hover{border-color:#90ab8b59;transform:translateY(-1px)}.scenarios-bar{background:#1a232acc;border:1px solid #90ab8b33;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.scenarios-btn-group{flex-wrap:wrap;gap:.5rem;display:flex}.scenario-btn{color:#ebf4dd;cursor:pointer;background:#3b49534d;border:1px solid #90ab8b38;border-radius:6px;padding:.45rem .85rem;font-size:.8rem;font-weight:600;transition:all .2s}.scenario-btn:hover{color:#ebf4dd;background:#5a78634d;border-color:#90ab8b}.alertas-list{flex-direction:column;gap:1rem;display:flex}.alerta-item-card{background:linear-gradient(145deg,#1c272e 0%,#141c22 100%);border:1px solid #90ab8b33;border-radius:12px;flex-direction:column;gap:.85rem;padding:1.35rem 1.5rem;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;box-shadow:0 4px 16px #0000004d}.alerta-item-card:hover{transform:translateY(-1px);box-shadow:0 6px 20px #0006}.alerta-item-card.sev-CRITICA{border-left:5px solid #f87171}.alerta-item-card.sev-ALTA{border-left:5px solid #fb923c}.alerta-item-card.sev-PREVENTIVA{border-left:5px solid #facc15}.alerta-item-card.sev-MEDIA{border-left:5px solid #38bdf8}.alerta-item-card.sev-INFORMATIVA{border-left:5px solid #90ab8b}.alerta-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.alerta-title-group{flex-wrap:wrap;align-items:center;gap:.75rem;min-width:0;display:flex}.alerta-title{overflow-wrap:anywhere;color:#ebf4dd;margin:0;font-family:Outfit,sans-serif;font-size:1.15rem;font-weight:700}.sev-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;padding:.25rem .6rem;font-size:.72rem;font-weight:700}.sev-badge.CRITICA{color:#fca5a5;background:#ef444426;border:1px solid #ef444459}.sev-badge.ALTA{color:#fdba74;background:#f9731626;border:1px solid #f9731659}.sev-badge.PREVENTIVA{color:#fde047;background:#eab30826;border:1px solid #eab30859}.sev-badge.MEDIA{color:#67e8f9;background:#06b6d426;border:1px solid #06b6d459}.sev-badge.INFORMATIVA{color:#ebf4dd;background:#90ab8b26;border:1px solid #90ab8b59}.alerta-meta-chips{color:#9bb0a5;flex-wrap:wrap;gap:.5rem;font-size:.8rem;display:flex}.meta-chip{overflow-wrap:anywhere;color:#9bb0a5;background:#162026b3;border:1px solid #90ab8b29;border-radius:5px;max-width:100%;padding:.25rem .55rem;font-size:.78rem}.alerta-body-grid{grid-template-columns:1fr;gap:.75rem;display:grid}.alerta-explanation-box{color:#ebf4dd;background:#162026a6;border:1px solid #90ab8b2e;border-radius:8px;padding:.85rem 1.15rem;font-size:.88rem;line-height:1.5}.alerta-recommendation-box{color:#ebf4dd;background:#5a78631f;border:1px solid #90ab8b52;border-radius:8px;padding:.85rem 1.15rem;font-size:.88rem;line-height:1.5}.alerta-actions-row{border-top:1px solid #90ab8b26;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding-top:.75rem;display:flex}.btn-primary{color:#ebf4dd;cursor:pointer;background:linear-gradient(135deg,#5a7863 0%,#4d6955 100%);border:1px solid #90ab8b66;border-radius:6px;align-items:center;gap:.45rem;padding:.55rem 1.1rem;font-size:.85rem;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 4px 14px #5a786359}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 18px #5a786373}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{color:#ebf4dd;cursor:pointer;background:#3b49534d;border:1px solid #90ab8b40;border-radius:6px;align-items:center;gap:.45rem;padding:.5rem .95rem;font-size:.825rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-secondary:hover:not(:disabled){background:#90ab8b26;border-color:#90ab8b66}.btn-success{color:#6ee7b7;cursor:pointer;background:#6ee7b72e;border:1px solid #6ee7b773;border-radius:6px;align-items:center;gap:.45rem;padding:.5rem .95rem;font-size:.825rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-success:hover{background:#6ee7b74d}.btn-warning{color:#fde047;cursor:pointer;background:#eab3082e;border:1px solid #eab30873;border-radius:6px;align-items:center;gap:.45rem;padding:.5rem .95rem;font-size:.825rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-warning:hover{background:#eab3084d}.tools-panel{background:linear-gradient(145deg,#1c272e 0%,#141c22 100%);border:1px solid #90ab8b40;border-radius:14px;flex-direction:column;gap:1.5rem;padding:1.75rem;display:flex;box-shadow:0 8px 24px #0000004d}.slider-group{flex-direction:column;gap:.5rem;display:flex}.slider-label-row{color:#ebf4dd;justify-content:space-between;font-size:.875rem;font-weight:600;display:flex}.custom-range{accent-color:#90ab8b;cursor:pointer;width:100%}.data-table-wrap{background:#16202699;border:1px solid #90ab8b33;border-radius:10px;overflow-x:auto}.custom-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.custom-table th{color:#90ab8b;text-transform:uppercase;letter-spacing:.05em;background:#1a232af2;border-bottom:1px solid #90ab8b40;padding:.85rem 1rem;font-family:Outfit,sans-serif;font-size:.78rem;font-weight:700}.custom-table td{color:#ebf4dd;border-bottom:1px solid #90ab8b1a;padding:.85rem 1rem}.custom-table tr:hover td{background:#90ab8b0d}.portal-socio-container{box-sizing:border-box;color:#ebf4dd;background:#162026;flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.portal-topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10;background:#162026f2;border-bottom:1px solid #90ab8b26;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 2rem 1rem;display:flex}.portal-title-group h1{color:#ebf4dd;align-items:center;gap:.6rem;margin:0;font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:800;display:flex}.portal-title-group h1 span{color:#90ab8b}.portal-title-group p{color:#90ab8b;margin:.25rem 0 0;font-size:.85rem}.portal-tabs-nav{background:#00000040;border:1px solid #90ab8b33;border-radius:10px;align-items:center;gap:.4rem;padding:.3rem;display:flex}.portal-tab-btn{color:#90ab8b;cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:.5rem;padding:.55rem 1.1rem;font-size:.875rem;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.portal-tab-btn:hover{color:#ebf4dd;background:#90ab8b1a}.portal-tab-btn.active{color:#ebf4dd;background:linear-gradient(135deg,#5a7863,#324338);border:1px solid #90ab8b66;box-shadow:0 3px 10px #5a786366}.tab-badge-pill{color:#ebf4dd;background:#ebf4dd26;border-radius:12px;padding:.15rem .45rem;font-size:.7rem;font-weight:700}.portal-viewport{flex-direction:column;flex:1;gap:1.5rem;padding:1.5rem 2rem 2.5rem;display:flex;overflow-y:auto}.perfil-grid{grid-template-columns:1fr 1.35fr;align-items:start;gap:1.75rem;display:grid}@media (width<=980px){.perfil-grid{grid-template-columns:1fr}}.digital-card-container{background:linear-gradient(145deg,#1c272e 0%,#131b20 100%);border:1px solid #90ab8b59;border-radius:16px;flex-direction:column;gap:1.25rem;padding:1.75rem;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 30px #0006,inset 0 1px #ebf4dd1a}.digital-card-container:before{content:"";pointer-events:none;background:radial-gradient(circle,#6ee7b714 0%,#0000 70%);width:100%;height:100%;position:absolute;top:-50%;right:-50%}.card-header-badge{z-index:2;justify-content:space-between;align-items:center;display:flex;position:relative}.card-brand{letter-spacing:.05em;color:#ebf4dd;font-family:Outfit,sans-serif;font-size:1.15rem;font-weight:900}.card-brand span{color:#6ee7b7}.card-status-badge{color:#6ee7b7;background:#6ee7b726;border:1px solid #6ee7b766;border-radius:20px;align-items:center;gap:.4rem;padding:.3rem .75rem;font-size:.75rem;font-weight:700;display:inline-flex}.card-status-badge .dot{background:#6ee7b7;border-radius:50%;width:7px;height:7px;box-shadow:0 0 8px #6ee7b7}.qr-display-box{background:#fff;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;width:220px;height:220px;margin:.5rem auto;padding:1.25rem;display:flex;position:relative;box-shadow:0 8px 24px #00000059}.qr-display-box img{object-fit:contain;width:100%;height:100%;display:block}.card-bottom-info{border-top:1px solid #90ab8b33;justify-content:space-between;align-items:flex-end;padding-top:1rem;display:flex}.card-client-name{color:#ebf4dd;margin:0;font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:700}.card-client-code{color:#90ab8b;margin:.2rem 0 0;font-family:monospace;font-size:.85rem}.card-nfc-tag{color:#90ab8b;align-items:center;gap:.4rem;font-size:.75rem;display:flex}.qr-actions-row{justify-content:center;gap:.6rem;display:flex}.qr-btn{color:#ebf4dd;cursor:pointer;background:#ffffff0d;border:1px solid #90ab8b40;border-radius:8px;align-items:center;gap:.45rem;padding:.5rem .9rem;font-size:.8rem;font-weight:600;transition:all .2s;display:inline-flex}.qr-btn:hover{color:#6ee7b7;background:#5a78634d;border-color:#6ee7b7}.profile-details-card{background:#1a232a;border:1px solid #90ab8b33;border-radius:16px;flex-direction:column;gap:1.5rem;padding:1.75rem;display:flex}.section-subtitle{color:#ebf4dd;align-items:center;gap:.5rem;margin:0;font-family:Outfit,sans-serif;font-size:1.15rem;font-weight:700;display:flex}.profile-fields-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;display:grid}@media (width<=600px){.profile-fields-grid{grid-template-columns:1fr}}.field-item{background:#16202680;border:1px solid #90ab8b1f;border-radius:8px;flex-direction:column;gap:.3rem;padding:.85rem 1rem;display:flex}.field-label{text-transform:uppercase;letter-spacing:.05em;color:#90ab8b;font-size:.75rem;font-weight:600}.field-value{color:#ebf4dd;font-size:.95rem;font-weight:600}.field-value code{color:#6ee7b7;background:#6ee7b71a;border-radius:4px;padding:.15rem .4rem;font-family:monospace}.turnstile-instructions-box{background:#5a786326;border:1px dashed #90ab8b59;border-radius:10px;align-items:flex-start;gap:.85rem;padding:1rem 1.25rem;display:flex}.turnstile-instructions-box .info-icon{color:#6ee7b7;flex-shrink:0;margin-top:.15rem}.turnstile-instructions-box p{color:#ebf4dd;margin:0;font-size:.85rem;line-height:1.4}.inscripcion-summary-hero{background:linear-gradient(135deg,#1e2a32 0%,#162026 100%);border:1px solid #90ab8b4d;border-radius:16px;grid-template-columns:2fr 1fr;align-items:center;gap:2rem;padding:1.75rem 2rem;display:grid}@media (width<=900px){.inscripcion-summary-hero{grid-template-columns:1fr}}.plan-title-badge{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.plan-title-badge h2{color:#ebf4dd;margin:0;font-family:Outfit,sans-serif;font-size:1.6rem;font-weight:800}.matricula-tag{color:#6ee7b7;background:#6ee7b726;border:1px solid #6ee7b74d;border-radius:6px;padding:.2rem .6rem;font-family:monospace;font-size:.8rem}.plan-specs-row{flex-wrap:wrap;gap:1.5rem;margin-top:1rem;display:flex}.spec-chip{color:#90ab8b;align-items:center;gap:.45rem;font-size:.85rem;display:flex}.spec-chip strong{color:#ebf4dd}.metrics-card-cluster{background:#162026b3;border:1px solid #90ab8b33;border-radius:12px;flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.metric-bar-group{flex-direction:column;gap:.4rem;display:flex}.metric-labels{color:#90ab8b;justify-content:space-between;font-size:.8rem;display:flex}.metric-labels strong{color:#6ee7b7}.progress-track{background:#ffffff14;border-radius:6px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#5a7863,#6ee7b7);border-radius:6px;height:100%;transition:width .4s}.section-block{background:#1a232a;border:1px solid #90ab8b33;border-radius:16px;flex-direction:column;gap:1.25rem;padding:1.75rem;display:flex}.table-responsive{width:100%;overflow-x:auto}.custom-data-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.custom-data-table th{color:#90ab8b;text-transform:uppercase;letter-spacing:.05em;background:#16202666;border-bottom:1px solid #90ab8b33;padding:.85rem 1rem;font-size:.78rem;font-weight:600}.custom-data-table td{color:#ebf4dd;border-bottom:1px solid #90ab8b1a;padding:1rem}.custom-data-table tbody tr:hover{background:#90ab8b0d}.badge-payment{border-radius:6px;align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.75rem;font-weight:700;display:inline-flex}.badge-payment.PAGADO{color:#6ee7b7;background:#6ee7b726;border:1px solid #6ee7b759}.badge-payment.PENDIENTE{color:#f59e0b;background:#f59e0b26;border:1px solid #f59e0b59}.plan-subtabs{border-bottom:1px solid #90ab8b2e;gap:.5rem;padding-bottom:.75rem;display:flex}.plan-subtab-btn{color:#90ab8b;cursor:pointer;background:0 0;border:1px solid #90ab8b33;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s;display:inline-flex}.plan-subtab-btn.active{color:#ebf4dd;background:#5a7863;border-color:#6ee7b7}.plan-hero-card{background:linear-gradient(135deg,#1c272e 0%,#151e24 100%);border:1px solid #90ab8b40;border-radius:14px;flex-direction:column;gap:.75rem;padding:1.5rem;display:flex}.plan-hero-card h3{color:#ebf4dd;margin:0;font-family:Outfit,sans-serif;font-size:1.35rem}.plan-coach-info{color:#6ee7b7;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;display:flex}.days-pills-row{gap:.5rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.day-pill{color:#90ab8b;cursor:pointer;white-space:nowrap;background:#162026cc;border:1px solid #90ab8b33;border-radius:8px;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s}.day-pill.active{color:#6ee7b7;background:#324338;border-color:#6ee7b7;box-shadow:0 2px 8px #6ee7b733}.ejercicios-list{flex-direction:column;gap:1rem;display:flex}.ejercicio-card{background:#1a232a;border:1px solid #90ab8b2e;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:1.25rem;padding:1.25rem 1.5rem;transition:transform .15s,border-color .15s;display:grid}.ejercicio-card:hover{border-color:#90ab8b66;transform:translateY(-2px)}.ejercicio-card.completed{opacity:.65;background:#1a232a80}.ejercicio-order-badge{color:#6ee7b7;background:#5a78634d;border:1px solid #90ab8b66;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-family:Outfit,sans-serif;font-size:1rem;font-weight:700;display:flex}.ejercicio-main-info h4{color:#ebf4dd;margin:0;font-size:1.05rem}.ejercicio-tags{flex-wrap:wrap;gap:.5rem;margin-top:.35rem;display:flex}.tag-mini{color:#90ab8b;background:#90ab8b1f;border-radius:4px;padding:.15rem .5rem;font-size:.72rem;font-weight:600}.ejercicio-stats-grid{align-items:center;gap:1.25rem;display:flex}.stat-box{flex-direction:column;align-items:center;display:flex}.stat-box .val{color:#ebf4dd;font-family:Outfit,sans-serif;font-size:1.15rem;font-weight:800}.stat-box .lbl{color:#90ab8b;text-transform:uppercase;font-size:.68rem}.check-complete-btn{color:#90ab8b;cursor:pointer;background:#16202699;border:1px solid #90ab8b4d;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.check-complete-btn.active{color:#162026;background:#6ee7b7;border-color:#6ee7b7}.macros-grid{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}@media (width<=768px){.macros-grid{grid-template-columns:repeat(2,1fr)}}.macro-box{text-align:center;background:#1a232a;border:1px solid #90ab8b33;border-radius:12px;flex-direction:column;gap:.25rem;padding:1.25rem;display:flex}.macro-box .macro-number{color:#6ee7b7;font-family:Outfit,sans-serif;font-size:1.6rem;font-weight:800}.macro-box .macro-name{color:#90ab8b;font-size:.8rem;font-weight:600}.comidas-timeline{flex-direction:column;gap:1rem;display:flex}.comida-card{background:#1a232a;border:1px solid #90ab8b2e;border-radius:12px;grid-template-columns:80px 1fr auto;align-items:center;gap:1.25rem;padding:1.25rem 1.5rem;display:grid}@media (width<=600px){.comida-card{grid-template-columns:1fr}}.comida-time{color:#6ee7b7;text-align:center;background:#6ee7b71a;border-radius:8px;padding:.4rem;font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:700}.comida-info h5{color:#ebf4dd;margin:0 0 .25rem;font-size:1rem}.comida-info p{color:#90ab8b;margin:0;font-size:.85rem}.comida-cals{color:#ebf4dd;text-align:right;font-family:Outfit,sans-serif;font-size:1rem;font-weight:700}:root{--ch-cream:#ebf4dd;--ch-sage:#90ab8b;--ch-moss:#5a7863;--ch-moss-hover:#4b6653;--ch-slate:#3b4953;--gym-bg:#162026;--gym-surface:#222d35;--gym-surface-hover:#2a3741;--gym-card:#222d35eb;--gym-border:#90ab8b33;--gym-border-hover:#90ab8b73;--gym-primary:var(--ch-moss);--gym-primary-light:var(--ch-sage);--gym-primary-glow:#5a786359;--gym-accent-cyan:var(--ch-sage);--gym-success:var(--ch-sage);--gym-text:var(--ch-cream);--gym-text-muted:#b7c7b6;--gym-text-dim:#7f9284}.landing-wrapper{background-color:var(--gym-bg);color:var(--gym-text);min-height:100vh;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;overflow-x:hidden}.landing-container{max-width:1240px;margin:0 auto;padding:0 1.75rem}.landing-section{padding:6rem 0;position:relative}h1,h2,h3,h4,.brand-name,.section-title,.hero-heading,.plan-name{letter-spacing:-.025em;font-family:Outfit,sans-serif;font-weight:800}.section-header{margin-bottom:3.5rem}.section-header.text-center{text-align:center;max-width:780px;margin-left:auto;margin-right:auto}.section-header.text-left{text-align:left;max-width:780px}.section-kicker{color:var(--ch-sage);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.82rem;font-weight:800;display:inline-flex}.section-title{color:var(--ch-cream);margin-bottom:.85rem;font-size:2.6rem;font-weight:800;line-height:1.15}.section-subtitle{color:var(--gym-text-muted);font-size:1.05rem;line-height:1.6}.gym-btn{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.65rem;padding:.85rem 1.75rem;font-family:Plus Jakarta Sans,sans-serif;font-size:.95rem;font-weight:700;text-decoration:none;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.gym-btn-primary{background:var(--ch-cream);color:#162026;font-weight:800;box-shadow:0 4px 15px #ebf4dd26}.gym-btn-primary:hover{background:#fff;transform:translateY(-2px);box-shadow:0 8px 25px #ebf4dd40}.gym-btn-cobalt{background:var(--ch-moss);color:var(--ch-cream);box-shadow:0 4px 15px var(--gym-primary-glow);border:1px solid #90ab8b59}.gym-btn-cobalt:hover{background:var(--ch-moss-hover);border-color:var(--ch-sage);transform:translateY(-2px);box-shadow:0 8px 25px #5a786380}.gym-btn-outline{border-color:var(--gym-border);color:var(--ch-cream);background:#ebf4dd0a}.gym-btn-outline:hover{border-color:var(--gym-border-hover);background:#ebf4dd14;transform:translateY(-2px)}.gym-navbar{z-index:100;-webkit-backdrop-filter:blur(20px)saturate(180%);background:#12191ee0;border-bottom:1px solid #90ab8b29;transition:all .3s;position:sticky;top:0;left:0;right:0}.navbar-inner{justify-content:space-between;align-items:center;gap:1.5rem;height:68px;display:flex}.navbar-brand{color:var(--ch-cream);flex-shrink:0;align-items:center;gap:.75rem;text-decoration:none;display:flex}.brand-icon{background:linear-gradient(135deg, var(--ch-moss), #324338);width:38px;height:38px;color:var(--ch-cream);border:1px solid #90ab8b59;border-radius:9px;justify-content:center;align-items:center;transition:transform .2s;display:flex;box-shadow:0 4px 12px #5a786340}.navbar-brand:hover .brand-icon{transform:rotate(-6deg)scale(1.05)}.brand-name{letter-spacing:-.01em;color:var(--ch-cream);font-family:Outfit,sans-serif;font-size:1.25rem;font-weight:900}.brand-name span{color:var(--ch-sage);font-weight:800}.desktop-nav{align-items:center;display:flex}.nav-links{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#3b495347;border:1px solid #90ab8b24;border-radius:9999px;align-items:center;gap:.35rem;margin:0;padding:.25rem .4rem;list-style:none;display:flex}.nav-link{white-space:nowrap;color:var(--gym-text-muted);border-radius:9999px;padding:.38rem .85rem;font-size:.84rem;font-weight:600;text-decoration:none;transition:all .18s;display:inline-block}.nav-link:hover{color:var(--ch-cream);background:#ebf4dd14}.nav-actions{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.nav-login-btn{color:var(--ch-cream);white-space:nowrap;background:#3b495366;border:1px solid #90ab8b59;border-radius:9999px;align-items:center;gap:.5rem;padding:.5rem 1.15rem;font-size:.85rem;font-weight:700;text-decoration:none;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.nav-login-btn:hover{background:var(--ch-moss);border-color:var(--ch-sage);transform:translateY(-1px);box-shadow:0 4px 15px #5a786359}.mobile-menu-btn{color:var(--ch-cream);cursor:pointer;background:#3b495366;border:1px solid #90ab8b40;border-radius:8px;justify-content:center;align-items:center;padding:.45rem;transition:all .2s;display:none}.mobile-menu-btn:hover{background:#5a786366}.mobile-nav-drawer{border-top:1px solid #90ab8b26;flex-direction:column;gap:1.25rem;padding:1rem 0 1.5rem;animation:.2s ease-out navDrawerFade;display:flex}@keyframes navDrawerFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.mobile-nav-links{flex-direction:column;gap:.35rem;display:flex}.mobile-nav-link{color:var(--ch-cream);border-radius:8px;padding:.65rem .85rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:background .15s}.mobile-nav-link:hover{background:#ebf4dd0f}.mobile-nav-actions{border-top:1px solid #90ab8b1f;flex-direction:column;gap:.75rem;padding-top:.75rem;display:flex}.mobile-login-link{color:var(--ch-cream);background:#3b495333;border:1px solid #90ab8b40;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.65rem;font-size:.88rem;font-weight:700;text-decoration:none;display:flex}.hero-section{border-bottom:1px solid #90ab8b29;align-items:center;min-height:calc(100vh - 68px);padding:6.5rem 0 5.5rem;display:flex;position:relative;overflow:hidden}.hero-bg-layer{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.hero-bg-image{object-fit:cover;object-position:center 36%;filter:brightness(.65)contrast(1.1);width:100%;height:100%;transform:scale(1.02)}.hero-bg-overlay{background:linear-gradient(90deg, #12191ef2 0%, #162026d6 48%, #1620266b 100%), linear-gradient(180deg, #12191e4d 0%, #162026a6 75%, var(--gym-bg) 100%);width:100%;height:100%;position:absolute;top:0;left:0}.hero-container-content{z-index:2;width:100%;position:relative}.hero-text-content{flex-direction:column;align-items:flex-start;max-width:720px;display:flex}.hero-minimal-kicker{color:var(--ch-sage);text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:.65rem;margin-bottom:1.25rem;font-size:.85rem;font-weight:800;display:inline-flex}.hero-minimal-kicker:before{content:"";background:var(--ch-sage);width:8px;height:8px;box-shadow:0 0 10px var(--ch-sage);border-radius:50%;display:inline-block}.hero-heading{letter-spacing:-.03em;color:var(--ch-cream);text-shadow:0 4px 24px #0009;margin-bottom:1.5rem;font-family:Outfit,sans-serif;font-size:4rem;font-weight:900;line-height:1.1}.hero-heading em{color:var(--ch-sage);font-style:normal}.hero-description{color:#ebf4ddd1;text-shadow:0 2px 10px #00000080;max-width:620px;margin-bottom:2.5rem;font-size:1.15rem;font-weight:400;line-height:1.7}.hero-buttons-row{flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.stats-strip{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#12191ef5;border-top:1px solid #90ab8b26;border-bottom:1px solid #90ab8b26;padding:2.25rem 0;position:relative}.stats-strip-grid{grid-template-columns:repeat(4,1fr);align-items:center;gap:2rem;display:grid}.stats-strip-item{text-align:center;flex-direction:column;align-items:center;display:flex;position:relative}.stats-strip-item:not(:last-child):after{content:"";background:#90ab8b26;width:1px;height:70%;position:absolute;top:15%;right:-1rem}.stats-strip-value{color:var(--ch-cream);letter-spacing:-.03em;font-family:Outfit,sans-serif;font-size:2.4rem;font-weight:900;line-height:1}.stats-strip-label{color:var(--ch-sage);text-transform:uppercase;letter-spacing:.08em;margin-top:.5rem;font-size:.76rem;font-weight:700}.disciplines-grid{grid-template-columns:repeat(3,1fr);gap:1.75rem;display:grid}.discipline-card{background:var(--gym-surface);border:1px solid var(--gym-border);border-radius:18px;flex-direction:column;height:100%;transition:all .25s;display:flex;overflow:hidden}.discipline-card:hover{border-color:var(--gym-border-hover);background:var(--gym-surface-hover);transform:translateY(-4px);box-shadow:0 15px 35px -10px #0006}.discipline-img-wrapper{height:220px;position:relative;overflow:hidden}.discipline-img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.discipline-card:hover .discipline-img{transform:scale(1.05)}.discipline-tag-badge{color:var(--ch-cream);text-transform:uppercase;letter-spacing:.04em;background:#162026e0;border:1px solid #90ab8b4d;border-radius:6px;padding:.35rem .75rem;font-size:.72rem;font-weight:700;position:absolute;top:1rem;left:1rem}.discipline-content{flex-direction:column;flex-grow:1;padding:1.75rem;display:flex}.discipline-category{color:var(--ch-sage);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.4rem;font-size:.75rem;font-weight:700}.discipline-title{color:var(--ch-cream);margin-bottom:.65rem;font-size:1.35rem;font-weight:800}.discipline-desc{color:var(--gym-text-muted);margin-bottom:1.25rem;font-size:.88rem;line-height:1.55}.discipline-benefits{border-top:1px solid var(--gym-border);flex-direction:column;gap:.45rem;margin-bottom:1.5rem;padding-top:1rem;list-style:none;display:flex}.discipline-benefit-item{color:var(--gym-text-muted);align-items:center;gap:.5rem;font-size:.82rem;display:flex}.discipline-benefit-item svg{color:var(--ch-sage);flex-shrink:0}.steps-timeline-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;display:grid}.step-card{background:var(--gym-surface);border:1px solid var(--gym-border);border-radius:16px;flex-direction:column;height:100%;padding:2.25rem 1.75rem;transition:all .25s;display:flex}.step-card:hover{border-color:var(--gym-border-hover);transform:translateY(-3px)}.step-header-index{color:var(--ch-sage);margin-bottom:1.25rem;font-family:Outfit,sans-serif;font-size:1.35rem;font-weight:900}.step-title{color:var(--ch-cream);margin-bottom:.75rem;font-size:1.2rem;font-weight:800}.step-desc{color:var(--gym-text-muted);flex-grow:1;margin-bottom:1.5rem;font-size:.9rem;line-height:1.55}.step-action-link{color:var(--ch-cream);align-items:center;gap:.4rem;margin-top:auto;font-size:.85rem;font-weight:700;text-decoration:none;transition:color .15s;display:inline-flex}.step-action-link:hover{color:var(--ch-sage)}.mobile-showcase-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:4.5rem;display:grid}.iphone-mockup-frame{border:10px solid var(--ch-slate);background:#111a1f;border-radius:44px;width:100%;max-width:350px;margin:0 auto;overflow:hidden;box-shadow:0 30px 60px -15px #0009}.iphone-notch{background:var(--ch-slate);border-bottom-right-radius:14px;border-bottom-left-radius:14px;justify-content:center;align-items:center;gap:.5rem;width:130px;height:22px;margin:0 auto;display:flex}.notch-speaker{background:#1f2a31;border-radius:2px;width:44px;height:4px}.notch-camera{background:#11181c;border-radius:50%;width:8px;height:8px}.phone-screen{background:#192329;flex-direction:column;gap:1rem;padding:1.5rem 1.25rem 2rem;display:flex}.phone-app-bar{border-bottom:1px solid #90ab8b26;justify-content:space-between;align-items:center;padding-bottom:.75rem;display:flex}.phone-brand-title{color:var(--ch-cream);font-family:Outfit,sans-serif;font-size:.95rem;font-weight:800}.phone-brand-title span{color:var(--ch-sage)}.phone-status-pill{border:1px solid var(--ch-sage);color:var(--ch-cream);background:#5a78634d;border-radius:9999px;align-items:center;gap:.35rem;padding:.2rem .6rem;font-size:.68rem;font-weight:700;display:inline-flex}.phone-user-box{background:#ebf4dd0a;border:1px solid #90ab8b26;border-radius:12px;padding:1rem}.phone-user-tag{color:var(--ch-sage);text-transform:uppercase;margin-bottom:.25rem;font-size:.68rem;font-weight:800}.phone-user-name{color:var(--ch-cream);font-family:Outfit,sans-serif;font-size:1.05rem;font-weight:800}.phone-user-plan{color:var(--gym-text-muted);font-size:.75rem}.phone-qr-box{background:var(--ch-cream);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;padding:1.25rem;display:flex}.phone-qr-desc{color:#1a242a;text-align:center;font-size:.7rem;font-weight:700}.phone-verified-card{border:1px solid var(--ch-sage);background:#5a786340;border-radius:10px;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.phone-verified-card svg{color:var(--ch-cream);flex-shrink:0}.phone-verified-title{color:var(--ch-cream);font-size:.75rem;font-weight:800}.phone-verified-sub{color:var(--gym-text-muted);font-size:.68rem}.showcase-features-list{flex-direction:column;gap:1.25rem;margin:2.25rem 0 2.5rem;list-style:none;display:flex}.showcase-feature-item{align-items:flex-start;gap:1.25rem;display:flex}.showcase-feature-icon{width:42px;height:42px;color:var(--ch-cream);background:#5a786340;border:1px solid #90ab8b59;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.showcase-feature-text h4{color:var(--ch-cream);margin-bottom:.3rem;font-size:1.1rem;font-weight:800}.showcase-feature-text p{color:var(--gym-text-muted);font-size:.9rem;line-height:1.55}.roles-tabs-nav{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:3rem;display:flex}.role-tab-btn{background:var(--gym-surface);border:1px solid var(--gym-border);color:var(--gym-text-muted);cursor:pointer;border-radius:8px;align-items:center;gap:.6rem;padding:.75rem 1.6rem;font-family:Plus Jakarta Sans,sans-serif;font-size:.9rem;font-weight:700;transition:all .2s;display:flex}.role-tab-btn:hover{color:var(--ch-cream);border-color:var(--gym-border-hover)}.role-tab-btn.active{background:var(--ch-moss);color:var(--ch-cream);border-color:var(--ch-sage);box-shadow:0 4px 15px var(--gym-primary-glow)}.role-panel-content{background:var(--gym-surface);border:1px solid var(--gym-border);border-radius:20px;grid-template-columns:1.15fr .85fr;align-items:center;gap:3.5rem;padding:3.5rem;display:grid}.role-badge-tag{color:var(--ch-cream);text-transform:uppercase;background:#5a786340;border:1px solid #90ab8b59;border-radius:6px;margin-bottom:1rem;padding:.35rem .85rem;font-size:.75rem;font-weight:800;display:inline-block}.role-title{color:var(--ch-cream);margin-bottom:1rem;font-size:1.85rem;font-weight:800;line-height:1.3}.role-desc{color:var(--gym-text-muted);margin-bottom:2rem;font-size:.95rem;line-height:1.65}.role-features-list{flex-direction:column;gap:.9rem;list-style:none;display:flex}.role-feature-item{color:var(--gym-text-muted);align-items:flex-start;gap:.75rem;font-size:.92rem;display:flex}.role-feature-item strong{color:var(--ch-cream)}.role-feature-item svg{color:var(--ch-sage);flex-shrink:0;margin-top:.2rem}.role-visual-preview{border:1px solid var(--gym-border);background:#172228;border-radius:16px;flex-direction:column;gap:1.5rem;padding:2.25rem;display:flex}.preview-tag{color:var(--ch-sage);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:800}.preview-headline{color:var(--ch-cream);font-family:Outfit,sans-serif;font-size:1.35rem;font-weight:800}.preview-stat-box{border:1px solid var(--gym-border);background:#ebf4dd0a;border-radius:12px;padding:1.25rem}.preview-stat-number{color:var(--ch-cream);font-family:Outfit,sans-serif;font-size:1.75rem;font-weight:900}.preview-stat-label{color:var(--gym-text-muted);font-size:.8rem}.preview-highlight-box{background:#5a786333;border:1px solid #90ab8b59;border-radius:10px;padding:1rem 1.25rem}.preview-highlight-title{color:var(--ch-cream);margin-bottom:.25rem;font-size:.82rem;font-weight:800}.preview-highlight-sub{color:var(--gym-text-muted);font-size:.78rem}.pricing-grid{grid-template-columns:repeat(4,1fr);align-items:stretch;gap:1.5rem;display:grid}.pricing-card{background:var(--gym-surface);border:1px solid var(--gym-border);border-radius:18px;flex-direction:column;height:100%;padding:2.25rem 1.75rem;transition:border-color .2s,transform .2s;display:flex;position:relative}.pricing-card:hover{border-color:var(--gym-border-hover);transform:translateY(-4px)}.pricing-card.popular{border:2px solid var(--ch-sage);box-shadow:0 10px 30px -10px var(--gym-primary-glow);background:linear-gradient(#28373f 0%,#1d272d 100%)}.popular-badge{background:var(--ch-moss);color:var(--ch-cream);border:1px solid var(--ch-sage);letter-spacing:.05em;text-transform:uppercase;border-radius:9999px;align-items:center;gap:.35rem;padding:.3rem .9rem;font-size:.72rem;font-weight:800;display:flex;position:absolute;top:-13px;left:50%;transform:translate(-50%)}.plan-header-tag{color:var(--ch-sage);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.78rem;font-weight:700}.plan-name{color:var(--ch-cream);margin-bottom:1rem;font-size:1.55rem;font-weight:800}.plan-price-wrap{align-items:baseline;gap:.4rem;margin-bottom:1rem;display:flex}.plan-price-amount{color:var(--ch-cream);letter-spacing:-.03em;font-family:Outfit,sans-serif;font-size:2.3rem;font-weight:900}.plan-price-period{color:var(--gym-text-muted);font-size:.88rem}.plan-desc{color:var(--gym-text-muted);border-bottom:1px solid var(--gym-border);margin-bottom:1.5rem;padding-bottom:1.25rem;font-size:.88rem;line-height:1.5}.plan-features-list{flex-direction:column;flex-grow:1;gap:.65rem;margin-bottom:2rem;list-style:none;display:flex}.plan-feature-item{color:var(--gym-text-muted);align-items:flex-start;gap:.55rem;font-size:.84rem;display:flex}.plan-feature-item svg{color:var(--ch-sage);flex-shrink:0;margin-top:.15rem}.cta-banner-wrapper{border:1px solid var(--gym-border-hover);background:linear-gradient(135deg,#24323a 0%,#1c272e 100%);border-radius:20px;justify-content:space-between;align-items:center;padding:3.5rem;display:flex;position:relative;overflow:hidden}.cta-banner-content{max-width:650px}.cta-banner-title{color:var(--ch-cream);margin-bottom:.75rem;font-size:2.2rem;font-weight:900;line-height:1.2}.cta-banner-desc{color:var(--gym-text-muted);font-size:1.05rem;line-height:1.6}.cta-banner-actions{flex-wrap:wrap;flex-shrink:0;gap:1rem;display:flex}.gym-footer{border-top:1px solid var(--gym-border);background:#11181d;padding:5rem 0 2.5rem}.footer-top-grid{grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:3.5rem;margin-bottom:3.5rem;display:grid}.footer-brand-desc{color:var(--gym-text-muted);margin:1.25rem 0 1.5rem;font-size:.88rem;line-height:1.65}.footer-social-links{gap:.75rem;display:flex}.social-icon-btn{background:var(--gym-surface);border:1px solid var(--gym-border);width:40px;height:40px;color:var(--gym-text-muted);border-radius:8px;justify-content:center;align-items:center;text-decoration:none;transition:all .2s;display:flex}.social-icon-btn:hover{background:var(--ch-moss);color:var(--ch-cream);border-color:var(--ch-sage)}.footer-col-title{color:var(--ch-cream);margin-bottom:1.25rem;font-family:Outfit,sans-serif;font-size:1.05rem;font-weight:800}.footer-nav-list{flex-direction:column;gap:.65rem;list-style:none;display:flex}.footer-nav-link{color:var(--gym-text-muted);font-size:.88rem;text-decoration:none;transition:color .15s}.footer-nav-link:hover{color:var(--ch-cream)}.footer-schedule-list{flex-direction:column;gap:.6rem;font-size:.85rem;list-style:none;display:flex}.footer-schedule-item{border-bottom:1px solid #90ab8b1a;justify-content:space-between;padding-bottom:.4rem;display:flex}.footer-schedule-item span:first-child{color:var(--gym-text-muted)}.footer-schedule-item span:last-child{color:var(--ch-cream);font-weight:700}.footer-contact-items{color:var(--gym-text-muted);flex-direction:column;gap:.75rem;font-size:.88rem;display:flex}.footer-contact-item{align-items:flex-start;gap:.65rem;display:flex}.footer-contact-item svg{color:var(--ch-sage);flex-shrink:0;margin-top:.2rem}.footer-bottom-bar{border-top:1px solid var(--gym-border);color:var(--gym-text-dim);justify-content:space-between;align-items:center;padding-top:2rem;font-size:.82rem;display:flex}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#11181dd1;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-dialog{background:#1e282f;border:1px solid #90ab8b4d;border-radius:20px;width:100%;max-width:520px;position:relative;overflow:hidden;box-shadow:0 30px 60px -15px #000000b3}.modal-header-banner{background:var(--gym-surface);border-bottom:1px solid var(--gym-border);padding:1.75rem 2rem 1.25rem;position:relative}.modal-close-btn{color:var(--ch-cream);cursor:pointer;background:#ebf4dd14;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:absolute;top:1.25rem;right:1.25rem}.modal-close-btn:hover{background:#ebf4dd29}.modal-selected-badge{color:var(--ch-cream);background:#5a786340;border:1px solid #90ab8b66;border-radius:9999px;align-items:center;gap:.4rem;margin-bottom:.5rem;padding:.25rem .75rem;font-size:.72rem;font-weight:800;display:inline-flex}.modal-title{color:var(--ch-cream);font-size:1.45rem;font-weight:800}.modal-body{padding:2rem}.modal-form{flex-direction:column;gap:1.15rem;display:flex}.modal-form-group{flex-direction:column;gap:.4rem;display:flex}.modal-label{color:var(--gym-text-muted);font-size:.8rem;font-weight:700}.modal-input,.modal-select{border:1px solid var(--gym-border);width:100%;color:var(--ch-cream);background:#172127;border-radius:8px;padding:.8rem 1rem;font-family:inherit;font-size:.9rem;transition:border-color .15s}.modal-input:focus,.modal-select:focus{border-color:var(--ch-sage);outline:none}.modal-select option{color:var(--ch-cream);background:#1e282f}.modal-success-screen{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:2.5rem 2rem;display:flex}.success-icon-bubble{border:1px solid var(--ch-sage);width:64px;height:64px;color:var(--ch-cream);background:#5a786340;border-radius:50%;justify-content:center;align-items:center;display:flex}@media (width<=1080px){.hero-heading{font-size:3.4rem}.disciplines-grid,.pricing-grid,.steps-timeline-grid,.footer-top-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=990px){.desktop-nav{display:none}.mobile-menu-btn{display:flex}}@media (width<=860px){.hero-section{min-height:auto;padding:6rem 0 4.5rem}.hero-heading{font-size:2.75rem}.stats-strip-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.stats-strip-item:nth-child(2):after{display:none}.mobile-showcase-grid{grid-template-columns:1fr}.role-panel-content{grid-template-columns:1fr;padding:2rem}.cta-banner-wrapper{text-align:left;flex-direction:column;gap:2rem;padding:3rem 2rem}}@media (width<=540px){.brand-name span{display:none}.nav-login-btn{padding:.45rem .85rem;font-size:.8rem}.hero-minimal-kicker{font-size:.76rem}.hero-heading{font-size:2.3rem}.hero-description{margin-bottom:2rem;font-size:1rem}.hero-buttons-row{flex-direction:column;width:100%}.hero-buttons-row .gym-btn{justify-content:center;width:100%}.stats-strip-grid{grid-template-columns:1fr 1fr;gap:1.25rem 1rem}.stats-strip-item:after{display:none}.stats-strip-value{font-size:1.85rem}}@media (width<=600px){.disciplines-grid,.pricing-grid,.steps-timeline-grid,.footer-top-grid{grid-template-columns:1fr}}.offline-floating-banner{color:#fff;z-index:1000;background:linear-gradient(90deg,#991b1b,#b91c1c);border-bottom:1px solid #ffffff26;justify-content:space-between;align-items:center;padding:8px 16px;font-size:13px;animation:.3s ease-out slideDown;display:flex;box-shadow:0 4px 12px #0003}.offline-banner-content{align-items:center;gap:10px;display:flex}.banner-icon{color:#fca5a5;flex-shrink:0}.offline-banner-badge{background:#00000059;border:1px solid #fff3;border-radius:9999px;padding:2px 8px;font-size:12px;font-weight:600}.conflict-alert-banner{color:#fef3c7;background:#78350f;border-bottom:1px solid #92400e;align-items:center;gap:8px;padding:6px 16px;font-size:13px;display:flex}.connectivity-pill-container{align-items:center;gap:8px;display:flex}.status-pill{-webkit-user-select:none;user-select:none;border-radius:9999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:500;transition:all .2s;display:inline-flex}.status-pill-online{color:#10b981;background:#10b9811a;border:1px solid #10b9814d}.status-pill-offline{color:#f59e0b;background:#f59e0b1f;border:1px solid #f59e0b59}.status-dot-pulse{border-radius:50%;width:7px;height:7px;animation:2s infinite pulseDot}.pending-sync-btn{color:#38bdf8;cursor:pointer;background:#0ea5e926;border:1px solid #0ea5e959;border-radius:9999px;align-items:center;gap:5px;padding:4px 9px;font-size:12px;font-weight:600;transition:background .2s;display:inline-flex}.pending-sync-btn:hover:not(:disabled){background:#0ea5e940}.pending-sync-btn:disabled{opacity:.6;cursor:not-allowed}.pending-sync-btn.syncing{color:#818cf8;background:#6366f133;border-color:#6366f166}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.3)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.shell-layout-wrapper{color:#ebf4dd;background-color:#162026;height:100vh;max-height:100vh;font-family:Plus Jakarta Sans,sans-serif;display:flex;position:relative;overflow:hidden}.shell-sidebar{z-index:90;background:#1a232a;border-right:1px solid #90ab8b29;flex-direction:column;flex-shrink:0;justify-content:space-between;width:270px;height:100vh;transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;position:sticky;top:0}.sidebar-top{flex-direction:column;padding:1.5rem 1.25rem 1rem;display:flex;overflow-y:auto}.sidebar-brand{color:inherit;border-bottom:1px solid #90ab8b24;align-items:center;gap:.85rem;margin-bottom:1.5rem;padding-bottom:1.5rem;text-decoration:none;display:flex}.sidebar-brand-icon{color:#ebf4dd;background:linear-gradient(135deg,#5a7863,#324338);border:1px solid #90ab8b66;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex;box-shadow:0 4px 12px #5a78634d}.sidebar-brand-info{flex-direction:column;display:flex}.sidebar-brand-name{letter-spacing:-.01em;color:#ebf4dd;font-family:Outfit,sans-serif;font-size:1.2rem;font-weight:900;line-height:1.1}.sidebar-brand-name span{color:#90ab8b;font-weight:800}.sidebar-brand-badge{text-transform:uppercase;letter-spacing:.06em;color:#90ab8b;align-items:center;gap:.35rem;margin-top:.25rem;font-size:.68rem;font-weight:800;display:inline-flex}.sidebar-nav-section{flex-direction:column;gap:.4rem;display:flex}.sidebar-section-title{text-transform:uppercase;letter-spacing:.1em;color:#9bb0a5;padding:.5rem .75rem .25rem;font-size:.72rem;font-weight:800}.sidebar-nav-list{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.sidebar-nav-link{color:#c5d3c8;border:1px solid #0000;border-radius:5px;justify-content:space-between;align-items:center;padding:.65rem .85rem;font-size:.88rem;font-weight:600;text-decoration:none;transition:all .18s cubic-bezier(.16,1,.3,1);display:flex}.sidebar-link-content{align-items:center;gap:.75rem;display:flex}.sidebar-nav-link:hover{color:#ebf4dd;background:#ebf4dd0f}.sidebar-nav-link.active{color:#ebf4dd;background:#5a786347;border-color:#90ab8b59;box-shadow:0 4px 14px #0003}.sidebar-nav-link.active .sidebar-link-icon{color:#90ab8b}.mfe-pill-badge{letter-spacing:.05em;color:#ebf4dd;text-transform:uppercase;background:#5a786366;border:1px solid #90ab8b59;border-radius:4px;padding:.15rem .45rem;font-size:.65rem;font-weight:800}.mfe-pill-badge.native-badge{color:#90ab8b;background:#90ab8b29;border-color:#90ab8b59}.sidebar-footer{background:#16202666;border-top:1px solid #90ab8b24;flex-direction:column;gap:.85rem;padding:1rem 1.25rem 1.25rem;display:flex}.sidebar-user-card{background:#3b495340;border:1px solid #90ab8b26;border-radius:6px;align-items:center;gap:.75rem;padding:.6rem .75rem;display:flex}.sidebar-user-avatar{color:#ebf4dd;background:#5a7863;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.88rem;font-weight:800;display:flex}.sidebar-user-info{flex-direction:column;display:flex;overflow:hidden}.sidebar-user-name{color:#ebf4dd;white-space:nowrap;text-overflow:ellipsis;font-size:.84rem;font-weight:700;overflow:hidden}.sidebar-user-role-badge{color:#90ab8b;text-transform:uppercase;letter-spacing:.04em;font-size:.68rem;font-weight:700}.sidebar-footer-actions{flex-direction:column;gap:.4rem;display:flex}.sidebar-action-btn{color:#9bb0a5;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:.65rem;width:100%;padding:.55rem .75rem;font-family:inherit;font-size:.84rem;font-weight:600;text-decoration:none;transition:all .15s;display:flex}.sidebar-action-btn:hover{color:#ebf4dd;background:#ebf4dd0f}.sidebar-action-btn.logout:hover{color:#fca5a5;background:#ef44441f;border-color:#ef444440}.shell-main-area{background:#162026;flex-direction:column;flex:1;min-width:0;height:100vh;max-height:100vh;display:flex;overflow:hidden}.shell-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:80;background:#1a232ad9;border-bottom:1px solid #90ab8b29;flex-shrink:0;justify-content:space-between;align-items:center;height:52px;padding:0 1.5rem;display:flex}.shell-header-left{align-items:center;gap:1rem;display:flex}.sidebar-mobile-toggle{color:#ebf4dd;cursor:pointer;background:#3b495366;border:1px solid #90ab8b40;border-radius:8px;padding:.45rem;display:none}.shell-breadcrumb{color:#9bb0a5;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.shell-breadcrumb-separator{color:#90ab8b66}.shell-breadcrumb-current{color:#ebf4dd;font-weight:700}.shell-header-right{align-items:center;gap:1rem;display:flex}.sso-status-pill{color:#ebf4dd;background:#5a786333;border:1px solid #90ab8b4d;border-radius:9999px;align-items:center;gap:.45rem;padding:.35rem .75rem;font-size:.76rem;font-weight:700;display:inline-flex}.sso-status-dot{background:#90ab8b;border-radius:50%;width:7px;height:7px;box-shadow:0 0 8px #90ab8b}#microfrontend-container{box-sizing:border-box;flex-direction:column;flex:1;width:100%;min-height:0;padding:.65rem 1.25rem;display:flex;overflow-y:auto}#microfrontend-container::-webkit-scrollbar{width:7px;height:7px}#microfrontend-container::-webkit-scrollbar-track{background:#16202680}#microfrontend-container::-webkit-scrollbar-thumb{background:#90ab8b4d;border-radius:4px}#microfrontend-container::-webkit-scrollbar-thumb:hover{background:#90ab8b80}.sidebar-backdrop{display:none}@media (width<=960px){.shell-sidebar{position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:10px 0 30px #00000080}.shell-sidebar.mobile-open{transform:translate(0)}.sidebar-mobile-toggle{justify-content:center;align-items:center;display:flex}.sidebar-backdrop.active{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:85;background:#0009;display:block;position:fixed;inset:0}.shell-header{padding:0 1rem}#microfrontend-container{padding:1.25rem 1rem 2.5rem}}
