:root{--bg: #f7f9fb;--card: #ffffff;--card-alt: oklch(.97 .005 235);--border: #e2e7ec;--border-soft: #eef1f5;--ink: oklch(.28 .02 230);--muted: oklch(.55 .02 230);--faint: oklch(.65 .015 230);--accent: oklch(.55 .13 225);--accent-ink: #ffffff;--accent-soft: oklch(.94 .03 225);--accent-text: oklch(.48 .13 225);--nav-bg: #ffffff;--nav-ink: oklch(.28 .02 230);--nav-muted: oklch(.5 .02 230);--input-bg: #ffffff;--input-border: oklch(.85 .01 230);--radius-lg: 14px;--radius-md: 12px;--radius-sm: 6px;--radius-pill: 20px;--ok-bg: oklch(.95 .03 155);--ok-text: oklch(.48 .1 155);--warn-bg: oklch(.96 .04 85);--warn-text: oklch(.55 .11 75);--err-bg: oklch(.95 .03 25);--err-text: oklch(.5 .13 25);--danger: oklch(.5 .13 25);--danger-ink: #ffffff;--font-display: "Bricolage Grotesque", "Trebuchet MS", sans-serif;--font-body: "Schibsted Grotesk", "Trebuchet MS", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--text-micro: 11px;--text-xs: 12px;--text-sm: 13px;--text-body: 14px;--text-lead: 16px;--text-h3: 18px;--text-h2: 22px;--text-h1: 28px;--leading-tight: 1.25;--leading-snug: 1.4;--leading-normal: 1.55;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--measure-prose: 66ch;--measure-form: 760px;--measure-app: 1440px;color-scheme:light}[data-tema=oscuro]{--bg: oklch(.19 .015 230);--card: oklch(.23 .015 230);--card-alt: oklch(.26 .015 230);--border: oklch(.31 .015 230);--border-soft: oklch(.27 .015 230);--ink: oklch(.93 .01 230);--muted: oklch(.68 .015 230);--faint: oklch(.5 .015 230);--accent: oklch(.7 .12 225);--accent-ink: oklch(.16 .02 230);--accent-soft: oklch(.3 .05 230);--accent-text: oklch(.75 .11 222);--nav-bg: oklch(.22 .015 230);--nav-ink: oklch(.93 .01 230);--nav-muted: oklch(.62 .015 230);--input-bg: oklch(.21 .015 230);--input-border: oklch(.34 .015 230);--radius-lg: 14px;--radius-md: 12px;--radius-sm: 6px;--radius-pill: 20px;--ok-bg: oklch(.3 .05 155);--ok-text: oklch(.78 .1 155);--warn-bg: oklch(.32 .05 80);--warn-text: oklch(.8 .1 85);--err-bg: oklch(.3 .05 25);--err-text: oklch(.78 .1 25);--danger: oklch(.78 .1 25);--danger-ink: oklch(.2 .03 25);color-scheme:dark}[data-tema=institucional]{--bg: #f2f4f7;--card: #ffffff;--card-alt: oklch(.95 .008 250);--border: #dde1e8;--border-soft: #eceef2;--ink: oklch(.25 .02 250);--muted: oklch(.5 .02 250);--faint: oklch(.62 .015 250);--accent: oklch(.42 .09 250);--accent-ink: #ffffff;--accent-soft: oklch(.93 .02 250);--accent-text: oklch(.42 .09 250);--nav-bg: oklch(.3 .06 250);--nav-ink: #ffffff;--nav-muted: oklch(.78 .03 250);--input-bg: #ffffff;--input-border: oklch(.78 .02 250);--radius-lg: 4px;--radius-md: 4px;--radius-sm: 4px;--radius-pill: 4px;--ok-bg: oklch(.93 .03 155);--ok-text: oklch(.42 .09 155);--warn-bg: oklch(.95 .05 85);--warn-text: oklch(.5 .1 75);--err-bg: oklch(.93 .04 25);--err-text: oklch(.45 .12 25);--danger: oklch(.45 .12 25);--danger-ink: #ffffff;--font-display: "IBM Plex Serif", Georgia, serif;--font-body: "IBM Plex Sans", "Helvetica Neue", system-ui, sans-serif;--font-mono: "IBM Plex Mono", monospace;color-scheme:light}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}a{color:var(--accent-text)}a:hover{color:var(--accent)}button,input{font:inherit;color:inherit}input::placeholder{color:var(--faint);opacity:1}@keyframes facta-girar{to{transform:rotate(360deg)}}@keyframes facta-ping{0%{transform:scale(1);opacity:.5}to{transform:scale(2.2);opacity:0}}@keyframes facta-brillo{to{transform:translate(320%)}}@keyframes facta-trazo{0%{stroke-dashoffset:26}}@keyframes facta-deslizar{0%{opacity:0;transform:translateY(-6px)}}.facta-pulso{animation:facta-pulso 1.8s ease-in-out infinite}@keyframes facta-pulso{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.78)}}@media(prefers-reduced-motion:reduce){.facta-anim,.facta-pulso{animation:none!important}}input:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.app-header-inner,.page-shell,.onboarding-layout{width:min(100%,1180px);margin:0 auto}.facta-shimmer{display:block;background:var(--card-alt);background-image:linear-gradient(100deg,var(--card-alt) 40%,var(--border) 50%,var(--card-alt) 60%);background-size:200% 100%;animation:facta-shimmer 1.4s linear infinite}@keyframes facta-shimmer{to{background-position-x:-200%}}@media(prefers-reduced-motion:reduce){.facta-shimmer{animation:none;background-image:none}}.mobile-only{display:none}@media(max-width:720px){.mobile-only{display:contents}.desktop-only{display:none!important}}:root{--pad-x: 24px}@media(max-width:720px){:root{--pad-x: 16px}}@media(min-width:721px)and (max-width:1023px){:root{--pad-x: 20px}}@media(min-width:1440px){:root{--pad-x: 32px}}.page{width:100%;margin-inline:auto;padding-inline:var(--pad-x);padding-block:var(--space-5)}.page--prose{max-width:calc(var(--measure-prose) + 2 * var(--pad-x))}.page--form{max-width:calc(var(--measure-form) + 2 * var(--pad-x))}.page--app{max-width:calc(var(--measure-app) + 2 * var(--pad-x))}.page--flush{padding-block:0}.page-pad{padding:22px 28px;width:min(100%,1180px);margin:0 auto;box-sizing:border-box}.form-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.onboarding-header{padding:0 28px}.onboarding-main{padding:28px}.onboarding-layout{display:grid;grid-template-columns:minmax(0,660px) 280px;gap:20px;align-items:start}.onboarding-content{display:flex;flex-direction:column;align-items:stretch;gap:20px;min-width:0}.onboarding-rail{position:sticky;top:82px;min-width:0}.hscroll{overflow-x:auto;scrollbar-width:none}.hscroll::-webkit-scrollbar{display:none}@media(max-width:720px){.page-pad{padding:16px}.form-grid-2{grid-template-columns:minmax(0,1fr)}.onboarding-header{padding:0 16px}.onboarding-main{padding:20px 16px}.onboarding-layout{display:flex;flex-direction:column-reverse;width:100%;gap:14px}.onboarding-content{width:100%;gap:16px}.onboarding-rail{position:static;width:100%}}.login-mobile-brand{display:none}@media(max-width:760px){.login-side-panel{display:none!important}.login-mobile-brand{display:flex}}.admin-row{transition:background .12s ease,border-color .12s ease}.admin-row:hover,.admin-row:focus-within{border-color:var(--accent)!important;background:var(--accent-soft)}.admin-row .admin-row-open{visibility:hidden}.admin-row:hover .admin-row-open,.admin-row:focus-within .admin-row-open{visibility:visible}@media(hover:none){.admin-row .admin-row-open{visibility:visible}}
