@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Inter:wght@400;500&display=swap");:root{--malu-lavender:#d0d8ef;--malu-porcelain:#fffdf6;--malu-vanilla:#e6ebaa;--malu-white:#ffffff;--bg:var(--malu-porcelain);--surface:var(--malu-white);--surface-alt:color-mix(in srgb,var(--malu-lavender) 28%,var(--malu-white) 72%);--text:oklch(from var(--malu-lavender) calc(l * 0.36) c h);--text-muted:oklch(from var(--malu-lavender) calc(l * 0.48) c h);--primary:oklch(from var(--malu-lavender) calc(l * 0.42) c h);--primary-strong:oklch(from var(--malu-lavender) calc(l * 0.34) c h);--accent:var(--malu-vanilla);--accent-soft:color-mix(in srgb,var(--malu-lavender) 22%,var(--malu-white) 78%);--border:color-mix(in srgb,var(--malu-lavender) 52%,var(--malu-white) 48%);--shadow:0 16px 50px color-mix(in srgb,var(--malu-lavender) 20%,transparent);--shadow-sm:0 6px 18px color-mix(in srgb,var(--malu-lavender) 14%,transparent);--cta-gradient:linear-gradient(135deg,var(--malu-vanilla),color-mix(in srgb,var(--malu-lavender) 42%,var(--malu-white) 58%));--avatar-gradient:linear-gradient(135deg,var(--malu-vanilla),color-mix(in srgb,var(--malu-lavender) 55%,var(--malu-vanilla) 45%));--header-bg:var(--malu-white);--header-border:color-mix(in srgb,var(--malu-lavender) 72%,var(--malu-vanilla) 28%);--header-shadow:0 8px 28px color-mix(in srgb,var(--malu-lavender) 14%,transparent);--hover-surface:color-mix(in srgb,var(--malu-lavender) 14%,var(--malu-white) 86%);--hover-border:color-mix(in srgb,var(--malu-lavender) 58%,var(--malu-vanilla) 42%);--focus-ring:color-mix(in srgb,var(--malu-lavender) 32%,transparent);--cta-text:var(--primary-strong);--tint-soft:color-mix(in srgb,var(--malu-lavender) 16%,transparent);--tint-mid:color-mix(in srgb,var(--malu-lavender) 28%,transparent)}:root,[data-theme=dark]{color:var(--text);background:var(--bg)}[data-theme=dark]{--malu-dusk:#374c84;--malu-powder:#97b0dc;--malu-graphite:#333333;--malu-charcoal:#222529;--malu-ink:#1a1d21;--malu-frost:#e8eef9;--bg:var(--malu-graphite);--surface:color-mix(in srgb,var(--malu-charcoal) 42%,var(--malu-dusk) 58%);--surface-alt:color-mix(in srgb,var(--malu-graphite) 55%,var(--malu-dusk) 45%);--primary:var(--malu-powder);--primary-strong:var(--malu-frost);--accent:var(--malu-powder);--accent-soft:color-mix(in srgb,var(--malu-dusk) 42%,var(--malu-graphite) 58%);--text:var(--malu-frost);--text-muted:color-mix(in srgb,var(--malu-powder) 72%,var(--malu-dusk) 28%);--border:color-mix(in srgb,var(--malu-dusk) 62%,var(--malu-charcoal) 38%);--shadow:0 16px 50px color-mix(in srgb,var(--malu-ink) 72%,transparent);--shadow-sm:0 6px 18px color-mix(in srgb,var(--malu-dusk) 45%,transparent);--cta-gradient:linear-gradient(135deg,var(--malu-powder),var(--malu-dusk));--avatar-gradient:linear-gradient(135deg,var(--malu-powder),var(--malu-dusk));--header-bg:color-mix(in srgb,var(--malu-charcoal) 55%,var(--malu-graphite) 45%);--hover-surface:color-mix(in srgb,var(--malu-dusk) 38%,var(--malu-charcoal) 62%);--hover-border:color-mix(in srgb,var(--malu-powder) 45%,var(--malu-dusk) 55%);--focus-ring:color-mix(in srgb,var(--malu-powder) 48%,transparent);--cta-text:var(--malu-ink)}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;font-family:Manrope,Inter,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button{font-family:inherit}h1,h2,h3,h4{color:var(--text)}.page-shell{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column}.page-content{flex:1 1;width:100%}.container{width:min(1200px,100%);padding:0 20px;margin:0 auto}.pill{padding:10px 16px;border-radius:999px;border:1px solid color-mix(in srgb,var(--malu-lavender) 55%,var(--malu-white) 45%);background:color-mix(in srgb,var(--malu-vanilla) 38%,var(--malu-white) 62%);color:var(--primary-strong);font-weight:600;gap:8px;width:-moz-fit-content;width:fit-content}.cta,.pill{display:inline-flex;align-items:center}.cta{gap:10px;background:var(--cta-gradient);border:none;color:var(--cta-text);padding:12px 18px;border-radius:14px;font-weight:700;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease;text-decoration:none}.cta:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.ghost-btn{padding:10px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface);font-weight:600;color:var(--text);cursor:pointer;transition:border .16s ease,box-shadow .16s ease;text-decoration:none;display:inline-flex;align-items:center;gap:8px}.ghost-btn:hover{border-color:var(--hover-border)}.card,.ghost-btn:hover{box-shadow:var(--shadow-sm)}.card{background:var(--surface);border-radius:18px;padding:22px;border:1px solid var(--border)}.grid{display:grid;grid-gap:18px;gap:18px}.tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;font-weight:600;font-size:11px;letter-spacing:.02em;text-transform:uppercase;line-height:1.4}.tag,.tag.info{background:var(--accent-soft);color:var(--primary-strong)}.tag.success{background:rgba(34,168,132,.12);color:#1d7a60}.tag.warning{background:rgba(245,178,0,.16);color:#a06600}.tag.danger{background:rgba(220,73,73,.14);color:#b03030}.tag.neutral{background:rgba(120,138,158,.16);color:#4f5b6d}.app-header{position:-webkit-sticky;position:sticky;top:0;z-index:10;background:var(--header-bg);border-bottom:1px solid var(--header-border);box-shadow:var(--header-shadow)}.app-header-inner{min-height:64px;padding:6px 0}.app-header--staff .container{width:min(1280px,100%);padding-inline:20px}.app-header-inner--staff{display:flex;align-items:center;justify-content:center;gap:clamp(24px,4vw,52px);width:100%;min-height:64px;padding:6px 0}.app-header--staff .brand{gap:10px;min-width:0;flex-shrink:0}.app-header--staff .nav-main{position:static;transform:none;justify-content:center;flex-shrink:1;min-width:0}.app-header--staff .header-actions{margin-left:0;flex-shrink:0}.brand-icon-wrap{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0;background:none;border:none;box-sizing:border-box}.brand-mark{display:block;height:38px;width:auto;max-width:none;object-fit:contain;object-position:center}.brand{display:flex;align-items:center;flex-shrink:0;text-decoration:none}.brand-label{display:flex;flex-direction:column;line-height:1.15;min-width:0}.brand-label>span{font-size:15px;font-weight:800;letter-spacing:-.01em;color:var(--text);white-space:nowrap}.brand-label small{font-size:11px;font-weight:600;letter-spacing:.01em;color:var(--text-muted);white-space:nowrap}.nav-main{display:flex;gap:4px;align-items:center;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}.nav-main::-webkit-scrollbar{display:none}.nav-link{padding:8px 10px;border-radius:10px;font-weight:600;font-size:13px;line-height:1.2;white-space:nowrap;flex-shrink:0;color:var(--text-muted);transition:background-color .16s ease,color .16s ease}.nav-link:hover{color:var(--primary-strong);background:var(--hover-surface)}.nav-link.active{color:var(--primary-strong);background:color-mix(in srgb,var(--malu-vanilla) 42%,var(--malu-white) 58%)}@media (max-width:1280px){.app-header-inner--staff{gap:20px}}@media (max-width:1100px){.app-header-inner .session-info .session-meta{display:none}.app-header-inner .session-info{max-width:140px}}@media (max-width:980px){.app-header--staff .nav-main,.brand-label small{display:none}}@media (max-width:880px){.app-header--staff .container{padding-inline:16px}.app-header-inner--staff{justify-content:center;gap:16px}}.hero-section{background:radial-gradient(circle at 16% 18%,color-mix(in srgb,var(--malu-vanilla) 32%,transparent),transparent 42%),radial-gradient(circle at 84% 6%,color-mix(in srgb,var(--malu-lavender) 38%,transparent),transparent 40%),var(--malu-porcelain);padding:64px 0 56px}.hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:center;grid-gap:40px;gap:40px}.hero-copy{display:grid;grid-gap:16px;gap:16px}.hero-title{font-size:clamp(32px,4vw,48px);margin:0;color:var(--text);line-height:1.1}.hero-title em{color:var(--primary-strong);font-style:normal}.hero-subtitle{margin:0;color:var(--text-muted);font-size:17px;line-height:1.6;max-width:560px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.hero-art{justify-self:center;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-18px)}}.section{padding:64px 0}.section-tinted{background:radial-gradient(circle at 12% 20%,color-mix(in srgb,var(--malu-lavender) 22%,transparent),transparent 34%),radial-gradient(circle at 80% 6%,color-mix(in srgb,var(--malu-vanilla) 24%,transparent),transparent 36%),var(--malu-white)}.section-header{text-align:center;display:grid;grid-gap:10px;gap:10px;margin-bottom:36px}.section-header h2{margin:0;font-size:clamp(24px,3vw,34px);color:var(--text)}.section-header p{margin:0 auto;max-width:760px;color:var(--text-muted);line-height:1.6}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:18px;gap:18px}.feature-card{display:grid;grid-gap:10px;gap:10px}.feature-icon{width:46px;height:46px;border-radius:14px;background:color-mix(in srgb,var(--malu-vanilla) 48%,var(--malu-white) 52%);border:1px solid color-mix(in srgb,var(--malu-lavender) 40%,var(--malu-white) 60%);color:var(--primary-strong);display:inline-flex;align-items:center;justify-content:center;font-size:22px}.feature-title{margin:0;font-size:18px;font-weight:800;color:var(--text)}.feature-desc{margin:0;color:var(--text-muted);line-height:1.5}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:22px;gap:22px}.plan-card{background:var(--surface);border-radius:22px;padding:28px;border:1px solid var(--border);box-shadow:var(--shadow);display:grid;grid-gap:14px;gap:14px;position:relative}.plan-card.featured{border-color:rgba(63,165,184,.4);background:linear-gradient(180deg,rgba(63,165,184,.08),white 35%)}.plan-card.featured:before{content:"Más elegido";position:absolute;top:-12px;right:20px;background:linear-gradient(135deg,#4ec5c4,#2c7a8a);color:white;font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px;box-shadow:0 8px 18px rgba(44,122,138,.25)}.plan-name{font-size:22px}.plan-name,.plan-price{margin:0;font-weight:800}.plan-price{font-size:24px;color:var(--primary-strong)}.plan-desc{margin:0;color:var(--text-muted);line-height:1.55}.plan-features{list-style:none;padding:0;margin:4px 0 0;display:grid;grid-gap:8px;gap:8px}.plan-features li{display:flex;gap:10px;align-items:flex-start;color:var(--text);font-size:14px;line-height:1.5}.plan-features li:before{content:"✓";color:var(--primary-strong);font-weight:800;flex-shrink:0;margin-top:1px}.form-shell{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:24px;gap:24px;align-items:start}.form-info{display:grid;grid-gap:14px;gap:14px}.info-card{display:grid;grid-template-columns:auto 1fr;grid-gap:12px;gap:12px;align-items:start}.info-card h3{margin:0 0 4px;font-size:17px}.info-card p{margin:0;color:var(--text-muted);line-height:1.5}.form-card{display:flex;flex-direction:column;gap:16px}.form-card h2{margin:0;text-align:center;font-size:22px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px 12px;gap:14px 12px}.form-group{display:grid;grid-gap:6px;gap:6px}.form-group label{font-weight:700;color:var(--text);font-size:14px}.input-field{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:12px;font:inherit;background:var(--surface);transition:border-color .16s ease,box-shadow .16s ease;color:var(--text)}.input-field:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}.full-width{grid-column:1/-1}.submit-btn{width:100%;padding:14px 16px;border:none;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--primary-strong));color:white;font-weight:800;font-size:15px;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease;box-shadow:0 14px 30px var(--tint-mid)}.submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 18px 36px var(--tint-mid)}.form-alert{margin:4px 0 0;padding:14px;border-radius:12px;font-weight:600;font-size:14px}.form-alert.success{background:#e8f6f0;color:#1b8a5a}.form-alert--error,.form-alert.error{background:#ffecec;color:#c62828}.form-alert--warning,.form-alert.warning{background:#fff8d6;color:#7a6800}.login-page{display:flex;align-items:center;justify-content:center;padding:clamp(24px,5vw,48px);background:radial-gradient(ellipse 80% 60% at 50% 0,color-mix(in srgb,var(--malu-lavender) 32%,transparent),transparent 70%),linear-gradient(165deg,color-mix(in srgb,var(--malu-lavender) 22%,var(--malu-porcelain) 78%) 0,var(--malu-porcelain) 48%,color-mix(in srgb,var(--malu-vanilla) 14%,var(--malu-porcelain) 86%) 100%)}.login-card{width:min(420px,100%);padding:clamp(28px,5vw,36px);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow)}.login-hero{text-align:center;margin-bottom:24px}.login-hero h2{margin:0 0 6px;color:var(--text);font-size:clamp(1.25rem,2.5vw,1.5rem)}.login-hero p{margin:0;color:var(--text-muted);font-size:14px;line-height:1.5}.login-logo-wrap{display:flex;align-items:center;justify-content:center;margin:0 auto 12px}.login-logo{width:clamp(140px,38vw,180px);height:auto;object-fit:contain;filter:drop-shadow(0 12px 24px color-mix(in srgb,var(--malu-lavender) 18%,transparent))}.login-password-wrap{position:relative}.login-password-wrap .input-field{padding-right:46px}.login-password-toggle{position:absolute;top:50%;right:10px;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer;transition:background-color .16s ease,opacity .16s ease}.login-password-toggle:hover{background:var(--hover-surface)}.login-password-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.login-password-toggle img{display:block;width:20px;height:20px;opacity:.55}.login-password-toggle[aria-pressed=true] img{opacity:1}.contact-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:24px;gap:24px;align-items:center}.contact-details{display:grid;grid-gap:10px;gap:10px}.contact-item{display:grid;grid-template-columns:auto 1fr;grid-gap:12px;gap:12px;align-items:start;padding:10px 0;border-bottom:1px dashed var(--border)}.contact-item:last-child{border-bottom:none}.contact-icon{width:40px;height:40px;border-radius:12px;background:rgba(63,165,184,.14);display:inline-flex;align-items:center;justify-content:center;font-size:18px}.contact-title{font-weight:800;color:var(--text)}.contact-text{color:var(--text-muted)}.contact-text a{color:var(--primary-strong);font-weight:600}.app-footer{background:linear-gradient(145deg,oklch(from var(--malu-lavender) calc(l * .4) c h) 0,oklch(from var(--malu-lavender) calc(l * .32) c h) 100%);color:var(--malu-porcelain);padding:48px 0 32px;margin-top:32px}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:22px;gap:22px;margin-bottom:26px}.footer-block h4{margin:0 0 10px;color:var(--malu-vanilla);font-size:15px;letter-spacing:.2px}.footer-links{list-style:none;padding:0;margin:0;display:grid;grid-gap:8px;gap:8px}.footer-links a{color:color-mix(in srgb,var(--malu-porcelain) 88%,var(--malu-lavender) 12%);transition:color .16s ease}.footer-links a:hover{color:var(--malu-vanilla)}.footer-brand{display:flex;gap:18px;align-items:center}.footer-brand-mark{object-fit:contain;filter:brightness(1.05)}.footer-title{font-weight:800;font-size:18px}.footer-tagline{margin:4px 0 0;color:color-mix(in srgb,var(--malu-porcelain) 82%,var(--malu-lavender) 18%);line-height:1.5}.footer-bottom{border-top:1px solid color-mix(in srgb,var(--malu-porcelain) 12%,transparent);padding-top:16px;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;color:color-mix(in srgb,var(--malu-porcelain) 78%,var(--malu-lavender) 22%);font-size:13px}.footer-note{color:color-mix(in srgb,var(--malu-porcelain) 72%,var(--malu-lavender) 28%)}@media (max-width:640px){.app-footer{padding:40px 0 26px}.footer-bottom{flex-direction:column;gap:6px;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.hero-art{animation:none}}.health-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:8px}.health-badge{display:inline-flex;align-items:center;padding:8px 16px;border-radius:999px;font-weight:700;font-size:13px;letter-spacing:.2px;border:1px solid transparent}.health-badge-healthy{background:#e7f6f3;color:#1b6b5a;border-color:#b8e2d6}.health-badge-degraded{background:#fff7e3;color:#8a5a00;border-color:#f3d99a}.health-badge-down{background:#ffecec;color:#b3261e;border-color:#f5b9b9;animation:healthPulse 1.6s ease-in-out infinite}@keyframes healthPulse{0%,to{box-shadow:0 0 0 0 rgba(198,40,40,.35)}50%{box-shadow:0 0 0 10px rgba(198,40,40,0)}}.health-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:14px;gap:14px}.health-grid-deps{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.health-card{padding:16px 18px;display:flex;flex-direction:column;gap:10px;border-left:4px solid var(--border);transition:border-color .2s ease,box-shadow .2s ease}.health-card-up{border-left-color:#3aa18d}.health-card-degraded{border-left-color:#d6a019}.health-card-down,.health-card-timeout{border-left-color:#c62828;background:linear-gradient(0deg,rgba(198,40,40,.04),transparent)}.health-card-skipped{border-left-color:#95a3ad;opacity:.85}.health-card-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.health-card-chips{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:11px;border:1px solid transparent;white-space:nowrap}.chip-success{background:#e7f6f3;color:#1b6b5a;border-color:#b8e2d6}.chip-warning{background:#fff7e3;color:#8a5a00;border-color:#f3d99a}.chip-danger{background:#ffecec;color:#b3261e;border-color:#f5b9b9}.chip-neutral{background:#eef3f6;color:#4a5a73;border-color:#d8e2e8}.health-dot{width:12px;height:12px;border-radius:50%;display:inline-block;flex-shrink:0}.health-dot-healthy,.health-dot-up{background:#3aa18d;box-shadow:0 0 0 4px rgba(58,161,141,.18)}.health-dot-degraded{background:#d6a019;box-shadow:0 0 0 4px rgba(214,160,25,.18)}.health-dot-down,.health-dot-timeout{background:#c62828;box-shadow:0 0 0 4px rgba(198,40,40,.18)}.health-dot-skipped{background:#95a3ad;box-shadow:0 0 0 4px rgba(149,163,173,.18)}.health-card-error{margin:0;padding:6px 8px;background:rgba(198,40,40,.06);color:#8c1f1f;font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;border-radius:6px;border:1px solid rgba(198,40,40,.18)}.health-card-foot{margin:0;display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-muted)}.health-card-foot a{color:var(--primary);font-weight:600;text-decoration:underline}.health-card-foot code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--text-muted)}@media (max-width:640px){.health-header{flex-direction:column;align-items:stretch}.health-card-row{flex-wrap:wrap}}.dt-shell{display:flex;flex-direction:column;gap:14px}.dt-toolbar{justify-content:space-between;padding:12px 14px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-sm)}.dt-toolbar,.dt-toolbar-left{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.dt-toolbar-left{flex:1 1}.dt-toolbar-right{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--text-muted)}.dt-search{position:relative;min-width:240px;flex:1 1 240px;max-width:380px}.dt-search input{width:100%;padding:9px 12px 9px 36px;border:1px solid var(--border);border-radius:10px;font-size:13px;background:color-mix(in srgb,var(--hover-surface) 55%,var(--surface) 45%);color:var(--text);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.dt-search input:focus{outline:none;background:var(--surface);border-color:var(--primary);box-shadow:0 0 0 3px rgba(63,165,184,.18)}.dt-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.dt-filter{display:inline-flex;flex-direction:column;gap:2px;font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.dt-filter input[type=date],.dt-filter input[type=text],.dt-filter select{font-size:13px;padding:7px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-weight:500;text-transform:none;letter-spacing:0;min-width:140px;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.dt-filter input[type=date]:focus,.dt-filter input[type=text]:focus,.dt-filter select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(63,165,184,.18)}.dt-clear-btn{background:none;border:1px solid transparent;color:var(--primary-strong);font-size:12px;font-weight:600;padding:6px 10px;border-radius:8px;cursor:pointer;align-self:flex-end}.dt-clear-btn:hover{background:rgba(63,165,184,.1)}.data-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-sm)}.data-table-scroll{width:100%;overflow-x:auto}.data-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13.5px;color:var(--text);background:var(--surface)}.data-table thead th{position:-webkit-sticky;position:sticky;top:0;background:var(--hover-surface);text-align:left;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding:12px 16px;border-bottom:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.data-table thead th.dt-sortable{cursor:pointer}.data-table thead th.dt-sortable:hover{color:var(--primary-strong)}.data-table thead th .dt-sort-icon{display:inline-block;margin-left:6px;width:8px;color:var(--text-muted);font-size:10px}.data-table thead th.dt-sort-asc .dt-sort-icon,.data-table thead th.dt-sort-desc .dt-sort-icon{color:var(--primary-strong)}.data-table tbody td{padding:12px 16px;border-bottom:1px solid var(--border);vertical-align:middle}.data-table tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--hover-surface) 40%,var(--surface) 60%)}.data-table tbody tr:hover td{background:var(--hover-surface)}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr.dt-row-clickable{cursor:pointer}.data-table tbody tr.dt-row-active td{background:var(--hover-surface)!important}.data-table tbody td code{background:var(--hover-surface);padding:2px 6px;border-radius:6px;font-size:11.5px;color:var(--text)}.dt-pagination{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-sm);font-size:13px;color:var(--text-muted)}.dt-pagination-info{font-weight:500}.dt-pagination-info strong{color:var(--text);font-weight:700}.dt-pagination-controls{display:flex;align-items:center;gap:6px}.dt-page-btn{min-width:32px;height:32px;padding:0 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease}.dt-page-btn:hover:not(:disabled){background:rgba(63,165,184,.08);border-color:var(--primary)}.dt-page-btn:disabled{opacity:.4;cursor:default}.dt-page-btn.dt-page-active{background:var(--primary-strong);color:#fff;border-color:var(--primary-strong)}.dt-page-size{display:inline-flex;align-items:center;gap:6px;font-size:12px}.dt-page-size select{padding:6px 8px;border:1px solid var(--border);border-radius:8px;background:#fff;font-size:12px;cursor:pointer}.dt-empty{padding:40px 24px;text-align:center;color:var(--text-muted)}.dt-empty h3{margin:0 0 6px;color:var(--text)}.dt-empty p{margin:0;font-size:13px}.dt-loading{padding:40px 24px;text-align:center;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:10px}.dt-spinner{width:24px;height:24px;border:3px solid rgba(63,165,184,.2);border-top:3px solid var(--primary-strong);border-radius:50%;animation:dt-spin .8s linear infinite}@keyframes dt-spin{to{transform:rotate(1turn)}}@media (max-width:720px){.dt-search{min-width:100%;max-width:100%}.dt-filter select{min-width:0;width:100%}}.empty-state{background:color-mix(in srgb,var(--hover-surface) 50%,var(--surface) 50%);border:1px dashed var(--border);border-radius:12px;padding:22px;text-align:center;color:var(--text-muted);margin:0}.empty-state h3{margin:0 0 4px;color:var(--text);font-size:15px}.empty-state p{margin:0;font-size:13px}.filter-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:14px;gap:14px;align-items:end;padding:18px 20px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-sm)}.filter-card .form-group label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:700}.filter-card .form-group .input-field{padding:9px 12px;border-radius:10px;font-size:13px;background:color-mix(in srgb,var(--hover-surface) 55%,var(--surface) 45%)}.filter-card .form-group .input-field:focus{background:var(--surface)}.filter-card-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:end}.danger-btn{padding:6px 12px;border:1px solid #f6c5c5;background:#fff6f6;color:#c62828;border-radius:10px;cursor:pointer;font-weight:600;font-size:12px;transition:background .15s ease,border-color .15s ease}.danger-btn:hover{background:#ffe9e9;border-color:#ef9b9b}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.page-header h1{margin:0;color:var(--text);font-size:clamp(22px,2.4vw,28px)}.page-header .page-subtitle{margin:6px 0 0;color:var(--text-muted);font-size:14px;line-height:1.5}.page-header-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.app-header-inner .session-info{text-align:right;max-width:200px;line-height:1.25}.app-header-inner .session-info .session-name{font-weight:700;font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-header-inner .session-info .session-meta{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-header-inner .session-avatar{width:40px;height:40px;border-radius:50%;background:var(--avatar-gradient);color:white;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;flex-shrink:0}.plans-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:22px}.plans-toolbar h2{margin:0;font-size:clamp(22px,2.6vw,28px)}.plans-toolbar .plans-toolbar-meta{margin:4px 0 0;color:var(--text-muted);font-size:13px}.filter-chips{display:inline-flex;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:4px;gap:2px}.filter-chips .filter-chip{border:none;background:transparent;padding:8px 14px;border-radius:999px;font-weight:600;color:var(--text-muted);cursor:pointer;font-size:13px;transition:background-color .16s ease,color .16s ease}.filter-chips .filter-chip:hover{color:var(--primary-strong)}.filter-chips .filter-chip.is-active{background:var(--cta-gradient);color:var(--cta-text);box-shadow:var(--shadow-sm)}.plan-card.is-inactive{opacity:.7;background:linear-gradient(180deg,#f4f6f8,white 55%);border-color:#d8e2e8}.plan-card.is-inactive .plan-name,.plan-card.is-inactive .plan-price{color:#4a5a73}.plan-card .plan-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.plan-card .plan-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.plan-card .plan-card-actions .cta-secondary,.plan-card .plan-card-actions .ghost-btn{padding:8px 12px;font-size:13px;border-radius:10px}.cta-secondary{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;border:1px solid rgba(63,165,184,.4);background:rgba(63,165,184,.08);color:var(--primary-strong);font-weight:700;cursor:pointer;transition:background .16s ease,border-color .16s ease}.cta-secondary:hover{background:rgba(63,165,184,.16)}.cta-secondary.danger{border-color:rgba(220,73,73,.4);background:rgba(220,73,73,.08);color:#b3261e}.cta-secondary.danger:hover{background:rgba(220,73,73,.16)}.dialog-backdrop{position:fixed;inset:0;background:rgba(15,33,49,.46);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:16px;z-index:100;animation:dialogFadeIn .14s ease-out}.dialog-card{background:var(--surface);border-radius:22px;box-shadow:0 32px 80px rgba(15,33,49,.28);width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:26px;display:grid;grid-gap:16px;gap:16px;animation:dialogSlideIn .2s ease-out}.dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.dialog-header h3{margin:0 0 4px;font-size:19px}.dialog-header p{margin:0;color:var(--text-muted);font-size:13px;line-height:1.5}.dialog-close{background:transparent;border:none;cursor:pointer;font-size:20px;color:var(--text-muted);width:30px;height:30px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center}.dialog-close:hover{background:rgba(63,165,184,.1);color:var(--primary-strong)}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}@keyframes dialogFadeIn{0%{opacity:0}to{opacity:1}}@keyframes dialogSlideIn{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0;margin-left:auto}.header-user-wrap{position:relative}.header-user-trigger{display:flex;align-items:center;gap:10px;background:transparent;border:1px solid transparent;border-radius:14px;padding:4px 8px;cursor:pointer;color:inherit;transition:background .15s ease,border-color .15s ease}.header-user-trigger.is-open,.header-user-trigger:hover{background:var(--hover-surface);border-color:var(--hover-border)}.header-user-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:248px;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:8px;z-index:60;animation:header-user-menu-in .14s ease}@keyframes header-user-menu-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.header-user-menu-head{padding:8px 12px 10px}.header-user-menu-name{font-weight:700;font-size:14px;color:var(--text)}.header-user-menu-mail{font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-user-menu-sep{height:1px;background:var(--border);margin:6px 4px}.header-user-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;background:transparent;border-radius:10px;font-size:14px;font-weight:600;color:var(--text);text-decoration:none;cursor:pointer;text-align:left}.header-user-menu-item svg{color:var(--text-muted);flex-shrink:0}.header-user-menu-item:hover{background:var(--hover-surface)}.header-user-menu-item-danger,.header-user-menu-item-danger svg{color:#b42318}.header-user-menu-item-danger:hover{background:rgba(220,38,38,.1)}.header-user-avatar{width:40px;height:40px;border-radius:50%;background:var(--avatar-gradient);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;flex-shrink:0}@media (max-width:880px){.header-user-trigger .session-info,.header-user-trigger [data-testid=session-info]{display:none}}[data-theme=dark] .app-header{-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=dark] .tag.success{background:color-mix(in srgb,var(--malu-powder) 22%,var(--malu-graphite));color:var(--malu-powder)}[data-theme=dark] .tag.warning{background:color-mix(in srgb,var(--malu-dusk) 35%,var(--malu-graphite));color:var(--malu-powder)}[data-theme=dark] .tag.danger{background:color-mix(in srgb,var(--malu-dusk) 55%,var(--malu-graphite));color:var(--malu-powder)}[data-theme=dark] .tag.neutral{background:var(--hover-surface);color:var(--text-muted)}[data-theme=dark] .app-footer{background:linear-gradient(145deg,var(--malu-dusk) 0,var(--malu-graphite) 100%);color:var(--malu-powder)}[data-theme=dark] .footer-block h4{color:var(--malu-powder)}[data-theme=dark] .footer-links a{color:color-mix(in srgb,var(--malu-powder) 88%,var(--malu-dusk) 12%)}[data-theme=dark] .footer-links a:hover{color:var(--malu-vanilla)}[data-theme=dark] .footer-bottom,[data-theme=dark] .footer-note,[data-theme=dark] .footer-tagline{color:color-mix(in srgb,var(--malu-powder) 78%,var(--malu-dusk) 22%)}[data-theme=dark] .login-page:not(.login-page--light){background:radial-gradient(ellipse 80% 60% at 50% 0,color-mix(in srgb,var(--malu-powder) 20%,transparent),transparent 72%),linear-gradient(165deg,var(--malu-charcoal) 0,color-mix(in srgb,var(--malu-dusk) 42%,var(--malu-graphite) 58%) 50%,var(--malu-graphite) 100%)}[data-theme=dark] .card:not(.login-card),[data-theme=dark] .feature-card,[data-theme=dark] .kpi-card,[data-theme=dark] .panel-card,[data-theme=dark] .staff-card{background:var(--surface);color:var(--text);border-color:var(--border)}[data-theme=dark] .brand-label span,[data-theme=dark] .footer-title,[data-theme=dark] .login-page:not(.login-page--light) .form-group label,[data-theme=dark] .login-page:not(.login-page--light) .login-hero h2,[data-theme=dark] .section-header h2,[data-theme=dark] h1,[data-theme=dark] h2,[data-theme=dark] h3,[data-theme=dark] h4{color:var(--text)}[data-theme=dark] .brand-label small{color:var(--text-muted)}[data-theme=dark] .pill{color:var(--text)}[data-theme=dark] .nav-link{color:var(--text-muted)}[data-theme=dark] .nav-link.active,[data-theme=dark] .nav-link:focus-visible,[data-theme=dark] .nav-link:hover{color:var(--malu-frost);background:var(--hover-surface)}[data-theme=dark] .ghost-btn{background:var(--surface);color:var(--text);border-color:var(--border)}[data-theme=dark] .data-table tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--malu-dusk) 16%,var(--malu-charcoal) 84%)}[data-theme=dark] .login-page:not(.login-page--light) .login-logo{filter:drop-shadow(0 12px 24px color-mix(in srgb,var(--malu-dusk) 35%,transparent))}[data-theme=dark] .data-table,[data-theme=dark] .data-table-wrap,[data-theme=dark] .dialog-card,[data-theme=dark] .dt-page-btn,[data-theme=dark] .dt-pagination,[data-theme=dark] .dt-toolbar,[data-theme=dark] .filter-card,[data-theme=dark] .filter-chips{background:var(--surface);border-color:var(--border);color:var(--text)}[data-theme=dark] .dt-filter input[type=date],[data-theme=dark] .dt-filter input[type=text],[data-theme=dark] .dt-filter select,[data-theme=dark] .dt-page-size select,[data-theme=dark] .dt-search input,[data-theme=dark] .filter-card .form-group .input-field,[data-theme=dark] .input-field,[data-theme=dark] select.input-field,[data-theme=dark] textarea.input-field{background:color-mix(in srgb,var(--malu-charcoal) 50%,var(--malu-dusk) 50%);color:var(--text);border-color:var(--border)}[data-theme=dark] .dt-filter input:focus,[data-theme=dark] .dt-filter select:focus,[data-theme=dark] .dt-search input:focus,[data-theme=dark] .filter-card .form-group .input-field:focus,[data-theme=dark] .input-field:focus{background:var(--surface);border-color:var(--primary)}[data-theme=dark] .dt-search-icon{color:var(--text-muted)}[data-theme=dark] .data-table thead th{background:color-mix(in srgb,var(--malu-dusk) 55%,var(--malu-charcoal) 45%);color:var(--text);border-bottom-color:var(--border)}[data-theme=dark] .data-table thead th .dt-sort-icon{color:var(--text-muted)}[data-theme=dark] .data-table thead th.dt-sort-asc .dt-sort-icon,[data-theme=dark] .data-table thead th.dt-sort-desc .dt-sort-icon,[data-theme=dark] .data-table thead th.dt-sortable:hover{color:var(--primary-strong)}[data-theme=dark] .data-table tbody td{color:var(--text);border-bottom-color:color-mix(in srgb,var(--malu-dusk) 35%,var(--malu-charcoal) 65%)}[data-theme=dark] .data-table tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--malu-dusk) 22%,var(--malu-charcoal) 78%)}[data-theme=dark] .data-table tbody tr:hover td{background:var(--hover-surface)}[data-theme=dark] .data-table tbody td code{background:color-mix(in srgb,var(--malu-dusk) 40%,var(--malu-charcoal) 60%);color:var(--text)}[data-theme=dark] .dt-clear-btn:hover{background:var(--hover-surface)}[data-theme=dark] .panel-alertas-period{background:linear-gradient(180deg,var(--bg) 85%,transparent)}[data-theme=dark] .panel-alertas-period-chip{background:var(--surface);border-color:var(--border);color:var(--text-muted)}[data-theme=dark] .panel-alertas-period-chip:hover{border-color:var(--hover-border);color:var(--text)}[data-theme=dark] .panel-alertas-period-chip--active{background:color-mix(in srgb,var(--malu-dusk) 65%,var(--malu-charcoal) 35%);border-color:var(--malu-powder);color:var(--malu-frost)}[data-theme=dark] .panel-alertas-period-manual{background:var(--surface);border-color:var(--border)}[data-theme=dark] .panel-alertas-period-date input[type=date]{background:color-mix(in srgb,var(--malu-charcoal) 50%,var(--malu-dusk) 50%);color:var(--text);border-color:var(--border)}[data-theme=dark] .panel-alertas-card{background:var(--surface);border-color:var(--border)}[data-theme=dark] .panel-alertas-card__metric-value,[data-theme=dark] .panel-alertas-card__title,[data-theme=dark] .panel-alertas-chart-card h3,[data-theme=dark] .panel-alertas-faculty-name{color:var(--text)}[data-theme=dark] .panel-alertas-skeleton{background:linear-gradient(90deg,color-mix(in srgb,var(--malu-dusk) 30%,var(--malu-charcoal) 70%) 25%,color-mix(in srgb,var(--malu-dusk) 45%,var(--malu-charcoal) 55%) 50%,color-mix(in srgb,var(--malu-dusk) 30%,var(--malu-charcoal) 70%) 75%);background-size:200% 100%}[data-theme=dark] .prof-period-btn:hover:not(.is-active){color:var(--text)}[data-theme=dark] .prof-period-btn.is-active{background:linear-gradient(135deg,var(--malu-powder),var(--malu-dusk));color:var(--malu-ink);box-shadow:0 4px 12px color-mix(in srgb,var(--malu-dusk) 45%,transparent)}[data-theme=dark] .prof-kpipill{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-sm)}[data-theme=dark] .prof-kpipill-warn{background:color-mix(in srgb,#f4cf86 18%,var(--surface) 82%);border-color:color-mix(in srgb,#f4cf86 45%,var(--border) 55%)}[data-theme=dark] .prof-kpipill-danger{background:color-mix(in srgb,#f0a3ad 16%,var(--surface) 84%);border-color:color-mix(in srgb,#f0a3ad 40%,var(--border) 60%)}[data-theme=dark] .prof-kpipill-ok{background:color-mix(in srgb,#b6dec8 16%,var(--surface) 84%);border-color:color-mix(in srgb,#b6dec8 40%,var(--border) 60%)}[data-theme=dark] .prof-kpi-label{color:var(--text-muted)}[data-theme=dark] .prof-kpi-value{color:var(--text)}[data-theme=dark] .prof-workspace{background:linear-gradient(180deg,color-mix(in srgb,var(--malu-charcoal) 55%,var(--malu-graphite) 45%) 0,var(--bg) 80%)}[data-theme=dark] .prof-kpibar{background:linear-gradient(180deg,color-mix(in srgb,var(--malu-dusk) 38%,var(--malu-charcoal) 62%) 0,color-mix(in srgb,var(--malu-dusk) 28%,var(--malu-graphite) 72%) 100%);border-bottom-color:var(--border)}[data-theme=dark] .prof-period-segmented{background:color-mix(in srgb,var(--malu-dusk) 35%,var(--malu-charcoal) 65%);border-color:var(--border)}[data-theme=dark] .prof-panel{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-sm)}[data-theme=dark] .prof-panel-head{border-bottom-color:var(--border)}[data-theme=dark] .prof-ai-exercises strong,[data-theme=dark] .prof-ai-section p,[data-theme=dark] .prof-inbox-name,[data-theme=dark] .prof-inbox-preview,[data-theme=dark] .prof-msg p,[data-theme=dark] .prof-panel-head strong,[data-theme=dark] .prof-panel-meta{color:var(--text)}[data-theme=dark] .prof-inbox-inactivity,[data-theme=dark] .prof-inbox-item time,[data-theme=dark] .prof-inbox-preview em{color:var(--text-muted)}[data-theme=dark] .prof-inbox-item:hover{background:var(--hover-surface)}[data-theme=dark] .prof-inbox-item{border-bottom-color:var(--border)}[data-theme=dark] .prof-inbox-item.active{background:color-mix(in srgb,var(--malu-dusk) 45%,var(--malu-charcoal) 55%);border-left-color:var(--malu-powder)}[data-theme=dark] .prof-messages{background:linear-gradient(180deg,color-mix(in srgb,var(--malu-dusk) 22%,var(--malu-charcoal) 78%),color-mix(in srgb,var(--malu-dusk) 15%,var(--bg) 85%))}[data-theme=dark] .prof-msg{background:color-mix(in srgb,var(--malu-dusk) 32%,var(--malu-charcoal) 68%);border-color:var(--border);color:var(--text)}[data-theme=dark] .prof-msg.mine{background:linear-gradient(135deg,var(--malu-powder),var(--malu-dusk));color:var(--malu-ink)}[data-theme=dark] .prof-msg.mine header,[data-theme=dark] .prof-msg.mine p{color:var(--malu-ink)}[data-theme=dark] .prof-msg-malu{background:color-mix(in srgb,var(--malu-powder) 18%,var(--surface) 82%)}[data-theme=dark] .prof-composer{background:var(--surface);border-top-color:var(--border)}[data-theme=dark] .prof-composer textarea{background:color-mix(in srgb,var(--malu-charcoal) 50%,var(--malu-dusk) 50%);color:var(--text);border-color:var(--border)}[data-theme=dark] .prof-ai-section{border-top-color:var(--border)}[data-theme=dark] .prof-ai-hint,[data-theme=dark] .prof-ai-section h3,[data-theme=dark] .prof-composer-hint{color:var(--text-muted)}[data-theme=dark] .prof-ai-replies button{background:color-mix(in srgb,var(--malu-dusk) 30%,var(--malu-charcoal) 70%);border-color:var(--border);color:var(--text)}[data-theme=dark] .prof-ai-replies button:hover{background:var(--hover-surface);border-color:var(--hover-border)}[data-theme=dark] .prof-ai-exercises li{background:color-mix(in srgb,var(--malu-dusk) 25%,var(--malu-charcoal) 75%);border-color:var(--border)}[data-theme=dark] .prof-ai-toggle{background:var(--hover-surface);color:var(--text-muted)}[data-theme=dark] .prof-ai-q{color:var(--malu-powder)}[data-theme=dark] .badge{background:color-mix(in srgb,var(--malu-dusk) 35%,var(--malu-charcoal) 65%);color:var(--text-muted)}[data-theme=dark] .badge-warn{background:color-mix(in srgb,#f4cf86 22%,var(--surface) 78%);color:#fde68a}[data-theme=dark] .badge-danger{background:color-mix(in srgb,#f0a3ad 20%,var(--surface) 80%);color:#fecaca}[data-theme=dark] .callout-info{background:color-mix(in srgb,var(--malu-dusk) 35%,var(--malu-charcoal) 65%);border-color:var(--border);color:var(--text)}[data-theme=dark] .composer-locked{background:color-mix(in srgb,#f6c57a 15%,var(--surface) 85%);border-color:color-mix(in srgb,#f6c57a 40%,var(--border) 60%);color:#fde68a}[data-theme=dark] .prof-msg-system{background:color-mix(in srgb,#f6c57a 14%,var(--surface) 86%);border-color:color-mix(in srgb,#f6c57a 35%,var(--border) 65%);color:#fde68a}[data-theme=dark] .prof-inbox-search input{background:color-mix(in srgb,var(--malu-charcoal) 50%,var(--malu-dusk) 50%);color:var(--text);border-color:var(--border)}[data-theme=dark] .prof-ai-freshness.ok{background:color-mix(in srgb,#1b6b5a 22%,var(--surface) 78%);color:#a7f3d0}[data-theme=dark] .prof-ai-freshness.busy,[data-theme=dark] .prof-ai-freshness.pending{background:color-mix(in srgb,#f4cf86 20%,var(--surface) 80%);color:#fde68a}[data-theme=dark] .prof-ai-freshness.muted{background:var(--hover-surface);color:var(--text-muted)}[data-theme=dark] .prof-ai-section-danger{background:color-mix(in srgb,#f0a3ad 18%,var(--surface) 82%);border-color:color-mix(in srgb,#f3a4af 40%,var(--border) 60%)}[data-theme=dark] .prof-ai-section-danger h3{color:#fecaca}[data-theme=dark] .prof-ai-section-danger li{color:color-mix(in srgb,#fecaca 85%,var(--text) 15%)}[data-theme=dark] .prof-msg-flag{background:color-mix(in srgb,#f0a3ad 25%,var(--surface) 75%);color:#fecaca}[data-theme=dark] .prof-empty-state{color:var(--text-muted)}[data-theme=dark] .cii-panel{background:color-mix(in srgb,var(--malu-dusk) 28%,var(--malu-charcoal) 72%);border-bottom-color:var(--border)}[data-theme=dark] .cii-panel-label,[data-theme=dark] .cii-panel-reason,[data-theme=dark] .cii-slider-row{color:var(--text-muted)}[data-theme=dark] .cii-slider-row strong{color:var(--text)}[data-theme=dark] .cii-panel-pill-empty{background:var(--hover-surface);color:var(--text-muted)}[data-theme=dark] .cii-form{border-top-color:var(--border)}[data-theme=dark] .cii-form textarea{background:color-mix(in srgb,var(--malu-charcoal) 50%,var(--malu-dusk) 50%);color:var(--text);border-color:var(--border)}[data-theme=dark] .cii-panel-bar-cell.active{box-shadow:0 0 0 2px var(--malu-powder)}[data-theme=dark] .tablero-kpi-breakdown-label,[data-theme=dark] .tablero-kpi-breakdown-value,[data-theme=dark] .tablero-kpi-value,[data-theme=dark] .tablero-page-title{color:var(--text)}[data-theme=dark] .tablero-kpi-breakdown-value--muted{color:var(--text-muted)}[data-theme=dark] .tablero-kpi-drill-link{color:var(--primary-strong)}[data-theme=dark] .agenda-tabs{background:color-mix(in srgb,var(--malu-dusk) 35%,var(--malu-charcoal) 65%)}[data-theme=dark] .agenda-tab.is-active{background:color-mix(in srgb,var(--malu-dusk) 55%,var(--malu-charcoal) 45%);color:var(--malu-frost)}[data-theme=dark] .agenda-tab{color:var(--text-muted)}[data-theme=dark] .agenda-tab:hover{color:var(--text)}[data-theme=dark] .agenda-hint{color:var(--text-muted)}[data-theme=dark] .empty-state{background:color-mix(in srgb,var(--malu-dusk) 22%,var(--malu-charcoal) 78%);border-color:var(--border);color:var(--text-muted)}[data-theme=dark] .plan-card.is-inactive{background:color-mix(in srgb,var(--malu-dusk) 25%,var(--malu-charcoal) 75%);border-color:var(--border)}[data-theme=dark] .plan-card.is-inactive .plan-name,[data-theme=dark] .plan-card.is-inactive .plan-price{color:var(--text-muted)}[data-theme=dark] .plan-card.featured{background:linear-gradient(165deg,color-mix(in srgb,var(--malu-powder) 18%,var(--surface) 82%),var(--surface) 35%)}[data-theme=dark] .chip-neutral{background:var(--hover-surface);color:var(--text-muted);border-color:var(--border)}[data-theme=dark] .chip-success,[data-theme=dark] .health-badge-healthy{background:color-mix(in srgb,#1b6b5a 22%,var(--surface) 78%);color:var(--malu-frost);border-color:color-mix(in srgb,#1b6b5a 40%,var(--border) 60%)}[data-theme=dark] .chip-warning,[data-theme=dark] .health-badge-degraded{background:color-mix(in srgb,#8a5a00 20%,var(--surface) 80%);color:var(--malu-frost);border-color:color-mix(in srgb,#f3d99a 35%,var(--border) 65%)}[data-theme=dark] .chip-danger,[data-theme=dark] .health-badge-down{background:color-mix(in srgb,#b3261e 20%,var(--surface) 80%);color:var(--malu-frost);border-color:color-mix(in srgb,#f5b9b9 35%,var(--border) 65%)}[data-theme=dark] .danger-btn{background:color-mix(in srgb,#c62828 18%,var(--surface) 82%);color:#fecaca;border-color:color-mix(in srgb,#c62828 40%,var(--border) 60%)}[data-theme=dark] .danger-btn:hover{background:color-mix(in srgb,#c62828 28%,var(--surface) 72%)}[data-theme=dark] .form-alert.success{background:color-mix(in srgb,#1b8a5a 22%,var(--surface) 78%);color:#a7f3d0}[data-theme=dark] .form-alert--error,[data-theme=dark] .form-alert.danger,[data-theme=dark] .form-alert.error{background:color-mix(in srgb,#c62828 20%,var(--surface) 80%);color:#fecaca}[data-theme=dark] .form-alert--warning,[data-theme=dark] .form-alert.warning{background:color-mix(in srgb,#7a6800 22%,var(--surface) 78%);color:#fde68a}:root:not([data-theme=dark]) .reportes-section-title,[data-theme=light] .reportes-section-title{color:var(--text)}:root:not([data-theme=dark]) .reportes-table thead tr,[data-theme=light] .reportes-table thead tr{background:var(--hover-surface)}:root:not([data-theme=dark]) .reportes-status--ok,[data-theme=light] .reportes-status--ok{background:#e6f5ec;color:#1f5a30}:root:not([data-theme=dark]) .reportes-status--partial,[data-theme=light] .reportes-status--partial{background:#fff5e6;color:#7a5300}:root:not([data-theme=dark]) .reportes-status--failed,[data-theme=light] .reportes-status--failed{background:#ffecec;color:#c62828}:root:not([data-theme=dark]) .reportes-status--pending,:root:not([data-theme=dark]) .reportes-status--skipped,[data-theme=light] .reportes-status--pending,[data-theme=light] .reportes-status--skipped{background:color-mix(in srgb,var(--hover-surface) 70%,var(--surface) 30%);color:var(--text-muted)}[data-theme=dark] .reportes-section-title{color:var(--text)}[data-theme=dark] .reportes-table thead tr{background:color-mix(in srgb,var(--malu-dusk) 55%,var(--malu-charcoal) 45%)}[data-theme=dark] .reportes-table th{color:var(--text);border-bottom-color:var(--border)}[data-theme=dark] .reportes-table td{color:var(--text);border-bottom-color:color-mix(in srgb,var(--malu-dusk) 35%,var(--malu-charcoal) 65%)}[data-theme=dark] .reportes-status--partial{background:color-mix(in srgb,#7a5300 25%,var(--surface) 75%);color:#fde68a}[data-theme=dark] .reportes-status--pending,[data-theme=dark] .reportes-status--skipped{background:var(--hover-surface);color:var(--text-muted)}[data-theme=dark] .reportes-status--ok{background:color-mix(in srgb,#1b6b5a 22%,var(--surface) 78%);color:#a7f3d0}[data-theme=dark] .reportes-status--failed{background:color-mix(in srgb,#c62828 20%,var(--surface) 80%);color:#fecaca}[data-theme=dark] .hero-section{background:radial-gradient(circle at 20% 20%,var(--hover-surface),transparent 35%),radial-gradient(circle at 80% 0,color-mix(in srgb,var(--malu-powder) 22%,transparent),transparent 32%),var(--bg)}[data-theme=dark] .section-tinted{background:var(--surface-alt)}[data-theme=dark] .nav-group-button.active,[data-theme=dark] .nav-group-button:focus-visible,[data-theme=dark] .nav-group-button:hover,[data-theme=dark] .nav-group.is-open .nav-group-button,[data-theme=dark] .nav-link.active,[data-theme=dark] .nav-link:focus-visible,[data-theme=dark] .nav-link:hover{background:var(--hover-surface);color:var(--malu-frost)}[data-theme=dark] .nav-group-panel{background:var(--malu-porcelain);border-color:color-mix(in srgb,var(--malu-lavender) 72%,var(--malu-vanilla) 28%)}[data-theme=dark] .nav-group-item{color:color-mix(in srgb,var(--malu-dusk) 42%,var(--malu-graphite) 58%)}[data-theme=dark] .nav-group-item.active,[data-theme=dark] .nav-group-item:focus-visible,[data-theme=dark] .nav-group-item:hover{color:color-mix(in srgb,var(--malu-dusk) 88%,var(--malu-charcoal) 12%);background:color-mix(in srgb,var(--malu-lavender) 38%,var(--malu-porcelain) 62%)}[data-theme=dark] .nav-group-item.active{background:color-mix(in srgb,var(--malu-lavender) 48%,var(--malu-porcelain) 52%)}[data-theme=dark] .feature-icon{background:var(--hover-surface);color:var(--primary-strong)}[data-theme=dark] .page-header h1,[data-theme=dark] .page-header p{color:var(--text)}[data-theme=dark] .home-modules-grid .home-module-card{background:var(--surface);border-color:var(--border);color:var(--text)}[data-theme=dark] .home-modules-grid .pillar-highlight-title{color:var(--text)}[data-theme=dark] .home-modules-grid .pillar-highlight-summary{color:var(--text-muted)}[data-theme=dark] .home-modules-grid .home-module-card__image{background:radial-gradient(circle at 50% 20%,color-mix(in srgb,var(--malu-powder) 20%,transparent),transparent 54%),linear-gradient(165deg,color-mix(in srgb,var(--malu-dusk) 28%,var(--malu-charcoal) 72%) 0,var(--accent-soft) 48%,color-mix(in srgb,var(--malu-dusk) 22%,var(--malu-charcoal) 78%) 100%);border-color:var(--border)}[data-theme=dark] .home-modules-grid .module-pillar-fallback-icon{color:var(--malu-frost)}[data-theme=dark] .home-modules-grid .home-module-card__enter{color:var(--malu-ink);border-color:var(--hover-border)}.login-page.login-page--light,.login-shell--light{--malu-lavender:#d0d8ef;--malu-porcelain:#fffdf6;--malu-vanilla:#e6ebaa;--malu-white:#ffffff;--bg:var(--malu-porcelain);--surface:var(--malu-white);--surface-alt:color-mix(in srgb,var(--malu-lavender) 28%,var(--malu-white) 72%);--text:oklch(from var(--malu-lavender) calc(l * 0.36) c h);--text-muted:oklch(from var(--malu-lavender) calc(l * 0.48) c h);--primary:oklch(from var(--malu-lavender) calc(l * 0.42) c h);--primary-strong:oklch(from var(--malu-lavender) calc(l * 0.34) c h);--accent:var(--malu-vanilla);--accent-soft:color-mix(in srgb,var(--malu-lavender) 40%,var(--malu-porcelain) 60%);--border:color-mix(in srgb,var(--malu-lavender) 72%,var(--malu-vanilla) 28%);--shadow:0 16px 50px color-mix(in srgb,var(--malu-lavender) 28%,transparent);--shadow-sm:0 6px 18px color-mix(in srgb,var(--malu-lavender) 18%,transparent);--cta-gradient:linear-gradient(135deg,var(--malu-vanilla) 0%,color-mix(in srgb,var(--malu-lavender) 55%,var(--malu-vanilla) 45%) 100%);--cta-text:var(--primary-strong);--hover-surface:color-mix(in srgb,var(--malu-lavender) 38%,var(--malu-porcelain) 62%);--hover-border:color-mix(in srgb,var(--malu-lavender) 78%,var(--malu-vanilla) 22%);--focus-ring:color-mix(in srgb,var(--malu-lavender) 45%,transparent);--tint-soft:color-mix(in srgb,var(--malu-lavender) 24%,transparent);--tint-mid:color-mix(in srgb,var(--malu-lavender) 38%,transparent);color:var(--text)}.login-shell--light{min-height:auto;flex:1 1;display:flex;flex-direction:column;background:radial-gradient(ellipse 80% 60% at 50% 0,color-mix(in srgb,var(--malu-lavender) 32%,transparent),transparent 70%),linear-gradient(165deg,color-mix(in srgb,var(--malu-lavender) 22%,var(--malu-porcelain) 78%) 0,var(--malu-porcelain) 48%,color-mix(in srgb,var(--malu-vanilla) 14%,var(--malu-porcelain) 86%) 100%)}html[data-theme=dark] .login-page.login-page--light,html[data-theme=dark] .login-shell--light{--bg:var(--malu-porcelain);--surface:var(--malu-white);--text:oklch(from var(--malu-lavender) calc(l * 0.36) c h);--text-muted:oklch(from var(--malu-lavender) calc(l * 0.48) c h);--primary:oklch(from var(--malu-lavender) calc(l * 0.42) c h);--primary-strong:oklch(from var(--malu-lavender) calc(l * 0.34) c h);--border:color-mix(in srgb,var(--malu-lavender) 72%,var(--malu-vanilla) 28%);--cta-gradient:linear-gradient(135deg,var(--malu-vanilla) 0%,color-mix(in srgb,var(--malu-lavender) 55%,var(--malu-vanilla) 45%) 100%);--cta-text:var(--primary-strong);--hover-surface:color-mix(in srgb,var(--malu-lavender) 38%,var(--malu-porcelain) 62%);--focus-ring:color-mix(in srgb,var(--malu-lavender) 45%,transparent);color:var(--text)}.login-page.login-page--light,html[data-theme=dark] .login-shell--light .login-page{background:radial-gradient(ellipse 80% 60% at 50% 0,color-mix(in srgb,var(--malu-lavender) 32%,transparent),transparent 70%),linear-gradient(165deg,color-mix(in srgb,var(--malu-lavender) 22%,var(--malu-porcelain) 78%) 0,var(--malu-porcelain) 48%,color-mix(in srgb,var(--malu-vanilla) 14%,var(--malu-porcelain) 86%) 100%)}.login-page.login-page--light .card.login-card,.login-page.login-page--light .login-card,html[data-theme=dark] .login-shell--light .card.login-card,html[data-theme=dark] .login-shell--light .login-card{background:var(--malu-white);color:var(--text);border-color:var(--border);box-shadow:var(--shadow)}.login-page.login-page--light .form-group label,.login-page.login-page--light .login-hero h2,.login-page.login-page--light .login-hero p,html[data-theme=dark] .login-shell--light .form-group label,html[data-theme=dark] .login-shell--light .login-hero h2,html[data-theme=dark] .login-shell--light .login-hero p{color:var(--text)}.login-page.login-page--light .login-hero p,html[data-theme=dark] .login-shell--light .login-hero p{color:var(--text-muted)}.login-page.login-page--light .input-field,html[data-theme=dark] .login-shell--light .input-field{background:var(--malu-white);color:var(--text);border-color:var(--border)}.login-page.login-page--light .submit-btn,html[data-theme=dark] .login-shell--light .submit-btn{background:var(--cta-gradient);color:var(--cta-text);box-shadow:0 4px 14px var(--tint-soft)}.login-page.login-page--light .login-logo,html[data-theme=dark] .login-shell--light .login-logo{filter:drop-shadow(0 12px 24px color-mix(in srgb,var(--malu-lavender) 18%,transparent))}.malu-ambient-backdrop{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:var(--bg)}body:has(.malu-ambient-backdrop),html:has(.malu-ambient-backdrop){background:transparent}.malu-ambient-backdrop__image{position:absolute;top:50%;left:50%;width:min(78vw,960px);height:auto;max-height:86vh;object-fit:contain;transform:translate3d(-50%,-50%,0);opacity:.17;will-change:transform;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}html[data-theme=dark] .malu-ambient-backdrop__image{opacity:.21}@media (prefers-reduced-motion:reduce){.malu-ambient-backdrop__image{will-change:auto}}@media (max-width:768px){.malu-ambient-backdrop__image{top:50%;left:50%;width:min(94vw,520px);opacity:.13}html[data-theme=dark] .malu-ambient-backdrop__image{opacity:.16}}.malu-ambient-backdrop+.page-shell{--malu-ambient-hero-fill:color-mix(in srgb,var(--bg) 46%,transparent);--malu-ambient-section-fill:color-mix(in srgb,var(--bg) 50%,transparent);--malu-ambient-wave-fill:color-mix(in srgb,color-mix(in srgb,var(--malu-lavender) 55%,var(--malu-porcelain,var(--bg)) 45%) 48%,transparent)}html[data-theme=dark] .malu-ambient-backdrop+.page-shell{--malu-ambient-hero-fill:color-mix(in srgb,var(--bg) 40%,transparent);--malu-ambient-section-fill:color-mix(in srgb,var(--surface-alt,var(--bg)) 44%,transparent);--malu-ambient-wave-fill:color-mix(in srgb,var(--bg) 42%,transparent)}.malu-ambient-backdrop+.page-shell .page-content{background:transparent}.malu-ambient-backdrop+.page-shell .activity-admin-head,.malu-ambient-backdrop+.page-shell .agenda-hero,.malu-ambient-backdrop+.page-shell .ayuda-hero,.malu-ambient-backdrop+.page-shell .cms-hero,.malu-ambient-backdrop+.page-shell .hero-section,.malu-ambient-backdrop+.page-shell .profile-hero{background:radial-gradient(ellipse 75% 50% at 8% 0,color-mix(in srgb,var(--malu-vanilla) 38%,transparent),transparent 58%),radial-gradient(ellipse 60% 45% at 100% 100%,color-mix(in srgb,var(--malu-lavender) 32%,transparent),transparent 52%),linear-gradient(165deg,var(--malu-ambient-hero-fill) 0,color-mix(in srgb,color-mix(in srgb,var(--malu-lavender) 22%,var(--malu-porcelain,var(--bg)) 78%) 46%,transparent) 48%,color-mix(in srgb,color-mix(in srgb,var(--malu-lavender) 38%,var(--malu-porcelain,var(--bg)) 62%) 46%,transparent) 100%)}.malu-ambient-backdrop+.page-shell .section-pillars.section-tinted,.malu-ambient-backdrop+.page-shell .section-tinted,.malu-ambient-backdrop+.page-shell .section.section-tinted{background:radial-gradient(circle at 12% 20%,color-mix(in srgb,var(--tint-soft) 65%,transparent),transparent 34%),radial-gradient(circle at 80% 6%,color-mix(in srgb,var(--malu-vanilla) 14%,transparent),transparent 36%),var(--malu-ambient-section-fill)}.malu-ambient-backdrop+.page-shell .portal-hero-wave{background:var(--malu-ambient-wave-fill)}.malu-ambient-backdrop+.page-shell .panel-alertas-period{background:linear-gradient(180deg,var(--malu-ambient-section-fill) 85%,transparent)}html[data-theme=dark] .malu-ambient-backdrop+.page-shell .activity-admin-head,html[data-theme=dark] .malu-ambient-backdrop+.page-shell .agenda-hero,html[data-theme=dark] .malu-ambient-backdrop+.page-shell .ayuda-hero,html[data-theme=dark] .malu-ambient-backdrop+.page-shell .cms-hero,html[data-theme=dark] .malu-ambient-backdrop+.page-shell .hero-section,html[data-theme=dark] .malu-ambient-backdrop+.page-shell .profile-hero{background:radial-gradient(ellipse 70% 45% at 10% 0,color-mix(in srgb,var(--malu-powder) 16%,transparent),transparent 55%),radial-gradient(ellipse 55% 40% at 100% 100%,color-mix(in srgb,var(--malu-dusk) 24%,transparent),transparent 52%),linear-gradient(165deg,var(--malu-ambient-hero-fill) 0,color-mix(in srgb,color-mix(in srgb,var(--malu-dusk) 40%,var(--malu-graphite,var(--bg)) 60%) 40%,transparent) 100%)}html[data-theme=dark] .malu-ambient-backdrop+.page-shell .section-pillars.section-tinted,html[data-theme=dark] .malu-ambient-backdrop+.page-shell .section-tinted,html[data-theme=dark] .malu-ambient-backdrop+.page-shell .section.section-tinted{background:radial-gradient(circle at 12% 20%,color-mix(in srgb,var(--malu-dusk) 20%,transparent),transparent 34%),radial-gradient(circle at 80% 6%,color-mix(in srgb,var(--malu-powder) 10%,transparent),transparent 36%),var(--malu-ambient-section-fill)}html[data-theme=dark] .malu-ambient-backdrop+.page-shell .portal-hero-wave{background:color-mix(in srgb,color-mix(in srgb,var(--malu-dusk) 65%,var(--malu-graphite,var(--bg)) 35%) 48%,transparent)}.malu-ambient-backdrop+.page-shell .prof-workspace{background:linear-gradient(180deg,color-mix(in srgb,color-mix(in srgb,var(--hover-surface) 35%,var(--bg) 65%) 48%,transparent) 0,color-mix(in srgb,var(--bg) 46%,transparent) 80%)}.malu-ambient-backdrop+.page-shell .panel-alertas-period{background:linear-gradient(180deg,var(--malu-ambient-section-fill) 70%,transparent)}html[data-theme=dark] .malu-ambient-backdrop+.page-shell .prof-workspace{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-alt,var(--bg)) 44%,transparent) 0,color-mix(in srgb,var(--bg) 40%,transparent) 80%)}