html{background-color:var(--bg)}html[data-theme=light]{color-scheme:light}@font-face{font-family:Monaspace Argon;src:url(https://cdn.jsdelivr.net/gh/githubnext/monaspace@main/fonts/webfonts/MonaspaceArgon-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Monaspace Argon;src:url(https://cdn.jsdelivr.net/gh/githubnext/monaspace@main/fonts/webfonts/MonaspaceArgon-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Monaspace Argon;src:url(https://cdn.jsdelivr.net/gh/githubnext/monaspace@main/fonts/webfonts/MonaspaceArgon-SemiBold.woff2) format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Monaspace Argon;src:url(https://cdn.jsdelivr.net/gh/githubnext/monaspace@main/fonts/webfonts/MonaspaceArgon-Bold.woff2) format("woff2");font-weight:700;font-display:swap}:root{--accent-blue:#0070f3;--accent-violet:#8a8a8a;--accent-pink:#ff0080;--accent-cyan:#50e3c2;--accent-amber:#f5a623;--accent-green:#0bce83;--accent-red:#ee0000;--val-pos:#34d399;--val-neg:#f87171;--val-pend:#fb923c;--val-pos-bg:rgba(52,211,153,0.13);--val-neg-bg:rgba(248,113,113,0.13);--val-pend-bg:rgba(251,146,60,0.13);--val-pos-bd:rgba(52,211,153,0.30);--val-neg-bd:rgba(248,113,113,0.30);--val-pend-bd:rgba(251,146,60,0.30);--st-pagando:#fbbf24;--st-pagando-bg:rgba(251,191,36,0.14);--st-pagando-bd:rgba(251,191,36,0.34);--st-facturar:#a3a3a3;--st-facturar-bg:rgba(163,163,163,0.13);--st-facturar-bd:rgba(163,163,163,0.30);--st-facturado:#d08b3c;--st-facturado-bg:rgba(208,139,60,0.14);--st-facturado-bd:rgba(208,139,60,0.34);--bg:#0a0a0a;--bg-elev-1:#121212;--bg-elev-2:#171717;--bg-elev-3:#1f1f1f;--text:#f5f5f5;--text-secondary:#b3b3b3;--text-muted:#8a8a8a;--text-tertiary:#6a6a6a;--text-disabled:#4a4a4a;--border-subtle:#1a1a1a;--border:#262626;--border-strong:#333333;--font-body:"Hanken Grotesk","Helvetica Neue",Helvetica,Arial,sans-serif;--font-display:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;--font-mono:"Monaspace Argon","JetBrains Mono","IBM Plex Mono",ui-monospace,monospace;--fs-display-xl:56px;--fs-display:44px;--fs-h1:32px;--fs-h2:24px;--fs-h3:18px;--fs-body:14px;--fs-body-sm:13px;--fs-caption:12px;--fs-micro:11px;--fs-mini:10px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--ls-display:-0.04em;--ls-tight:-0.02em;--ls-normal:0;--ls-mono:-0.01em;--ls-eyebrow:0.06em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:128px;--radius-sm:4px;--radius:6px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--t-fast:120ms;--t-base:180ms;--t-slow:260ms;--ease:cubic-bezier(0.4,0,0.2,1);--topbar-h:56px;--sidebar-w:240px;--sidebar-w-mini:56px;--shadow-sm:0 1px 2px rgba(0,0,0,0.04);--shadow:0 2px 8px rgba(0,0,0,0.06);--shadow-lg:0 8px 24px rgba(0,0,0,0.08)}[data-theme=light]{--bg:#ffffff;--bg-elev-1:#fafafa;--bg-elev-2:#f5f5f5;--bg-elev-3:#ededed;--text:#0a0a0a;--text-secondary:#404040;--text-muted:#6a6a6a;--text-tertiary:#8a8a8a;--text-disabled:#c0c0c0;--border-subtle:#f0f0f0;--border:#e5e5e5;--border-strong:#d4d4d4;--val-pos:#16a34a;--val-neg:#dc2626;--val-pend:#ea580c;--val-pos-bg:rgba(22,163,74,0.10);--val-neg-bg:rgba(220,38,38,0.10);--val-pend-bg:rgba(234,88,12,0.10);--val-pos-bd:rgba(22,163,74,0.28);--val-neg-bd:rgba(220,38,38,0.28);--val-pend-bd:rgba(234,88,12,0.28);--st-pagando:#ca8a04;--st-pagando-bg:rgba(202,138,4,0.10);--st-pagando-bd:rgba(202,138,4,0.30);--st-facturar:#737373;--st-facturar-bg:rgba(115,115,115,0.09);--st-facturar-bd:rgba(115,115,115,0.28);--st-facturado:#92400e;--st-facturado-bg:rgba(146,64,14,0.09);--st-facturado-bd:rgba(146,64,14,0.30)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;color-scheme:dark}[data-theme=light]{color-scheme:light}body{background:var(--bg);font-family:var(--font-body);font-size:var(--fs-body);font-weight:var(--fw-regular);line-height:1.5;-moz-osx-font-smoothing:grayscale;font-feature-settings:"kern" 1;transition:background var(--t-base) var(--ease),color var(--t-base) var(--ease)}body,h1,h2,h3,h4,h5,h6{margin:0;color:var(--text)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);line-height:1.15}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}p{margin:0}a{transition:color var(--t-fast) var(--ease)}button{cursor:pointer;border:0;background:transparent}button,input,select,textarea{font-family:inherit;color:inherit}input,select,textarea{font-size:inherit}::selection{background:rgba(130,130,130,.35)}.is-hidden{display:none!important}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}@import url("https://cdn.jsdelivr.net/npm/@tabler/icons-webfont@3.31.0/dist/tabler-icons.min.css");.app{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-w);flex-shrink:0}.app.sidebar-collapsed .sidebar{width:var(--sidebar-w-mini)}.app-main{flex:1 1;min-width:0}.app-main,.sidebar{display:flex;flex-direction:column}.sidebar{background:var(--bg);border-right:1px solid var(--border);padding:var(--space-4) 0;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:visible;z-index:30;transition:width var(--t-base) var(--ease)}.sidebar-head{padding:0 var(--space-3);margin-bottom:var(--space-5);display:flex;align-items:center;gap:var(--space-3);min-height:44px}.sidebar-head svg{display:none}.sidebar-brand{font-family:var(--font-display);font-size:38px;font-weight:800;letter-spacing:-.045em;line-height:1;color:var(--text);white-space:nowrap;overflow:hidden;transition:opacity var(--t-fast) var(--ease)}.sidebar nav{flex:1 1;padding:0 var(--space-2);overflow-y:auto;overflow-x:hidden}.sidebar-section{padding:var(--space-5) var(--space-3) var(--space-2);font-family:var(--font-body);font-size:var(--fs-micro);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--ls-eyebrow);white-space:nowrap;overflow:hidden;transition:opacity var(--t-fast) var(--ease)}.sidebar-section:first-child{padding-top:0}.sidebar-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--fs-body-sm);color:var(--text-secondary);border-radius:var(--radius);transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease);white-space:nowrap;overflow:hidden}.sidebar-link:hover{color:var(--text);background:var(--bg-elev-1)}.sidebar-link.active{color:var(--text);background:var(--bg-elev-3)}.sidebar-link svg{width:16px;height:16px;opacity:.7;stroke:currentColor;fill:none;stroke-width:1.6;flex-shrink:0}.sidebar-link.active svg{opacity:1}.sidebar-link i.ti{font-size:18px;line-height:1;opacity:.7;flex-shrink:0;width:18px;text-align:center}.app.sidebar-collapsed .sidebar-link i.ti,.sidebar-link.active i.ti{opacity:1}.sidebar-link .nav-label{transition:opacity var(--t-fast) var(--ease)}.sidebar-link .nav-end{margin-left:auto}.sidebar-foot{padding:var(--space-2);border-top:1px solid var(--border);position:relative}.avatar{width:28px;height:28px;border-radius:var(--radius-full);background:var(--bg-elev-3);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:var(--fw-semibold);flex-shrink:0;border:1px solid var(--border)}.avatar,.user-info{color:var(--text-secondary)}.user-info{flex:1 1;font-size:var(--fs-body-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:opacity var(--t-fast) var(--ease)}.app.sidebar-collapsed .sidebar-brand,.app.sidebar-collapsed .sidebar-foot .icon-btn:last-child,.app.sidebar-collapsed .sidebar-link .nav-end,.app.sidebar-collapsed .sidebar-link .nav-label,.app.sidebar-collapsed .sidebar-section,.app.sidebar-collapsed .user-info{display:none!important}.app.sidebar-collapsed .sidebar-link{justify-content:center;padding:var(--space-2) 0;gap:0}.app.sidebar-collapsed .sidebar-link svg{opacity:1}.app.sidebar-collapsed .sidebar-head{justify-content:center;padding:0}.app.sidebar-collapsed .sidebar-foot{justify-content:center;padding:var(--space-3) 0}.app.sidebar-collapsed nav{padding:0 var(--space-1)}.topbar{gap:var(--space-4);padding:0 var(--space-5);height:var(--topbar-h);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;background:var(--bg);z-index:10}.crumbs,.topbar{display:flex;align-items:center}.crumbs{font-family:var(--font-body);font-size:var(--fs-body-sm);color:var(--text-muted);gap:var(--space-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crumbs .sep{color:var(--text-tertiary)}.crumbs b{color:var(--text);font-weight:var(--fw-medium)}.topbar-spacer{flex:1 1}.topbar-actions{display:flex;gap:var(--space-2);align-items:center}.icon-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:var(--radius);color:var(--text-secondary);transition:all var(--t-fast) var(--ease);flex-shrink:0}.icon-btn:hover{background:var(--bg-elev-1);color:var(--text);border-color:var(--border)}.icon-btn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6}.icon-btn.has-border{border-color:var(--border)}.user-menu{position:relative;width:100%}.user-trigger{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2);border-radius:var(--radius);background:transparent;cursor:pointer;border:0;text-align:left;transition:background var(--t-fast) var(--ease)}.user-trigger:hover{background:var(--bg-elev-2)}.user-trigger .user-info{flex:1 1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:1px}.user-trigger .user-info-name{font-family:var(--font-body);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--text)}.user-trigger .user-info-email,.user-trigger .user-info-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.user-trigger .user-info-email{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--text-muted)}.user-trigger .user-caret{width:14px;height:14px;color:var(--text-tertiary);flex-shrink:0}.user-dropdown{position:absolute;left:var(--space-2);bottom:calc(100% + 6px);min-width:260px;background:var(--bg-elev-1);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-2);z-index:50;display:none}.user-dropdown.open{display:block;animation:fadeUp var(--t-fast) var(--ease)}@keyframes fadeUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.user-dropdown .dd-head{padding:var(--space-3);border-radius:var(--radius);margin-bottom:var(--space-2);display:flex;align-items:center;gap:var(--space-3)}.user-dropdown .dd-head .dd-info{flex:1 1;min-width:0}.user-dropdown .dd-head .dd-name{font-family:var(--font-body);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--text)}.user-dropdown .dd-head .dd-email{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--text-muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dropdown .dd-divider{height:1px;background:var(--border);margin:var(--space-2) 0}.dd-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius);font-family:var(--font-body);font-size:var(--fs-body-sm);color:var(--text-secondary);cursor:pointer;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease);text-align:left}.dd-item:hover{background:var(--bg-elev-3);color:var(--text)}.dd-item svg{width:14px;height:14px;opacity:.6;stroke:currentColor;fill:none;stroke-width:1.6}.dd-item .dd-shortcut{margin-left:auto;font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--text-tertiary)}.dd-item .dd-end{margin-left:auto}.dd-item.danger,.dd-item.danger:hover{color:var(--accent-red)}.dd-item.danger:hover{background:rgba(238,0,0,.08)}.theme-switch{display:flex;gap:2px;background:var(--bg-elev-3);border-radius:var(--radius);padding:2px;margin-left:auto}.theme-switch button{width:28px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:4px;color:var(--text-tertiary);transition:all var(--t-fast) var(--ease)}.theme-switch button.active{background:var(--bg);color:var(--text)}.theme-switch button svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:1.8}.onboarding-card{background:var(--bg-elev-1);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:var(--space-7);padding:var(--space-5) var(--space-5) var(--space-4)}.ob-head{display:flex;align-items:flex-start;gap:var(--space-5);margin-bottom:var(--space-4);flex-wrap:wrap}.ob-head .ob-info{flex:1 1;min-width:240px}.ob-eyebrow{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--accent-violet);margin-bottom:var(--space-2)}.ob-titulo{font-family:var(--font-display);font-size:var(--fs-h2);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);line-height:1.2;margin:0}.ob-lede{margin-top:var(--space-2);font-size:var(--fs-body-sm);color:var(--text-secondary);line-height:1.5}.ob-progress{text-align:center;padding:var(--space-3) var(--space-5);background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);flex-shrink:0}.ob-progress-num{font-family:var(--font-display);font-size:26px;font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);line-height:1;color:var(--text)}.ob-progress-num.is-done{color:var(--accent-green)}.ob-progress-lab{font-size:var(--fs-mini);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;margin-top:var(--space-2)}.ob-cerrar,.ob-progress-lab{font-family:var(--font-mono);color:var(--text-muted)}.ob-cerrar{background:transparent;border:1px solid var(--border);border-radius:var(--radius);padding:4px 10px;cursor:pointer;font-size:var(--fs-micro);align-self:flex-start;transition:all var(--t-fast) var(--ease)}.ob-cerrar:hover{color:var(--text);border-color:var(--border-strong)}.ob-pasos{list-style:none;margin:0;padding:0;counter-reset:paso}.ob-paso{display:grid;grid-template-columns:32px 1fr auto;grid-gap:var(--space-4);gap:var(--space-4);align-items:center;padding:var(--space-3) var(--space-2);border-top:1px solid var(--border-subtle)}.ob-paso:first-child{border-top:none}.ob-paso .ob-marca{width:28px;height:28px;border-radius:var(--radius-full);background:var(--bg-elev-3);border:2px solid var(--border-strong);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--text-muted);counter-increment:paso}.ob-paso .ob-marca:before{content:counter(paso)}.ob-paso .ob-marca svg{width:14px;height:14px;display:none}.ob-paso.is-done .ob-marca{background:var(--accent-green);border-color:var(--accent-green);color:#0a0a0a}.ob-paso.is-done .ob-marca:before{content:""}.ob-paso.is-done .ob-marca svg{display:block;stroke:#0a0a0a}.ob-paso .ob-info-paso{display:flex;flex-direction:column;gap:2px;min-width:0}.ob-paso .ob-nombre{font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--text)}.ob-paso .ob-detalle,.ob-paso.is-done .ob-nombre{color:var(--text-muted)}.ob-paso .ob-detalle{font-family:var(--font-mono);font-size:var(--fs-micro)}.ob-paso .ob-cta{display:inline-flex;align-items:center;padding:6px 14px;border:1px solid var(--border-strong);background:transparent;color:var(--text);font-size:var(--fs-caption);font-weight:var(--fw-medium);border-radius:var(--radius);transition:all var(--t-fast) var(--ease);white-space:nowrap}.ob-paso .ob-cta:hover{background:var(--text);color:var(--bg);border-color:var(--text)}.ob-paso.is-done .ob-cta{border-color:var(--border);color:var(--text-muted)}.ob-paso.is-done .ob-cta:hover{background:var(--bg-elev-3);color:var(--text)}.dash-top{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-4);gap:var(--space-4);align-items:stretch;margin-bottom:var(--space-6)}.dash-top.solo{grid-template-columns:1fr}@media (max-width:920px){.dash-top{grid-template-columns:1fr}}.ed-hero-card{position:relative;overflow:hidden;border-radius:0;min-height:340px;background:#15151b;border:1px solid var(--border);display:flex;align-items:flex-end}.ed-hero-cover{position:absolute;inset:0;background:#15151b 50%/cover no-repeat}.ed-hero-card:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(12,12,16,0) 35%,rgba(12,12,16,.55) 68%,rgba(12,12,16,.9))}.ed-hero-info{position:relative;z-index:1;padding:var(--space-6);width:100%}.ed-hero-info .eyebrow{font-family:var(--font-mono);font-size:var(--fs-caption);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:rgba(255,255,255,.72);margin-bottom:var(--space-3)}.ed-hero-info h1{font-family:var(--font-display);font-size:var(--fs-h1);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);line-height:1.08;color:#fff}.ed-hero-info .lede{font-family:var(--font-body);font-size:var(--fs-body);color:rgba(255,255,255,.84);margin-top:var(--space-3);max-width:46ch}.ed-hero-info .btn-primary{margin-top:var(--space-4)}.dash-top .onboarding-card{margin-bottom:0;border-radius:0}.u-resumen{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.u-total{font-family:var(--font-body);font-weight:var(--fw-semibold);color:var(--text);font-size:var(--fs-body-sm);margin-right:var(--space-1)}.u-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-full);background:var(--bg-elev-2);border:1px solid var(--border);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--text-secondary);white-space:nowrap}.u-chip b{color:var(--text);font-weight:var(--fw-semibold)}.u-chip-principal{background:var(--bg-elev-3);border-color:var(--accent-blue)}.u-chip-principal b{color:var(--accent-blue)}.u-chip-principal .u-chip-tipo{color:var(--text-muted);font-weight:400;margin-left:3px}.u-accesorios{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--text-muted);white-space:nowrap}.cobranza-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elev-1);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-5)}.cob-top{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-3)}.cob-figs{display:flex;align-items:baseline;gap:var(--space-2)}.cob-pct{font-family:var(--font-display);font-size:32px;font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--accent-green);line-height:1}.cob-cap{color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--ls-eyebrow)}.cob-amounts,.cob-cap{font-size:var(--fs-body-sm)}.cob-amounts{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-mono);color:var(--text-secondary);flex-wrap:wrap}.cob-amounts b{color:var(--text);font-weight:var(--fw-semibold)}.cob-sep{color:var(--text-tertiary)}.cob-bar{position:relative;height:10px;border-radius:var(--radius-full);background:var(--bg-elev-3);overflow:hidden;display:flex}.cob-seg{height:100%;transition:width var(--t-slow) var(--ease)}.cob-seg.pagado{background:var(--accent-green)}.cob-legend{display:flex;gap:var(--space-5);margin-top:var(--space-3);font-size:var(--fs-micro);font-family:var(--font-mono);color:var(--text-muted)}.cob-legend .dot{display:inline-block;width:8px;height:8px;border-radius:var(--radius-full);margin-right:4px;vertical-align:middle}.cob-legend .dot.pagado{background:var(--accent-green)}.cob-legend .dot.parcial{background:var(--accent-amber)}.cob-legend .dot.pend{background:var(--text-tertiary)}.cob-legend b{color:var(--text)}.mant-progreso{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elev-1);padding:var(--space-4) var(--space-5);margin:var(--space-5) 0}.mp-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-3)}.mp-title{font-size:var(--fs-body-sm);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--ls-eyebrow)}.mp-pct{font-family:var(--font-display);font-weight:var(--fw-semibold);color:var(--accent-green)}.mp-bar{display:flex;height:10px;border-radius:var(--radius-full);overflow:hidden;background:var(--bg-elev-3)}.mp-seg{height:100%;transition:width var(--t-slow) var(--ease)}.mp-seg.ejec{background:var(--accent-green)}.mp-seg.pend{background:var(--accent-amber)}.mp-seg.prog{background:var(--accent-blue)}.mp-legend{display:flex;gap:var(--space-5);margin-top:var(--space-3);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--text-muted)}.mp-legend .dot{display:inline-block;width:8px;height:8px;border-radius:var(--radius-full);margin-right:4px;vertical-align:middle}.mp-legend .dot.ejec{background:var(--accent-green)}.mp-legend .dot.pend{background:var(--accent-amber)}.mp-legend .dot.prog{background:var(--accent-blue)}.mp-legend b{color:var(--text)}.ed-switcher{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 4px 0 9px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elev-1);color:var(--text-secondary);flex-shrink:0}.ed-switcher svg{width:14px;height:14px;opacity:.7;flex-shrink:0}.ed-switcher select{border:0;background:transparent;color:var(--text);font-family:var(--font-body);font-size:var(--fs-body-sm);padding:0 4px;max-width:200px;cursor:pointer}.ed-switcher select:focus{outline:none}.pythagoras-fab{position:fixed;right:24px;bottom:24px;z-index:200;gap:8px;padding:10px 18px 10px 14px;border-radius:var(--radius-full);background:var(--accent-violet);color:#fff;cursor:pointer;font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:14px;transition:transform var(--t-fast) var(--ease),filter var(--t-fast) var(--ease)}.pythagoras-fab:hover{filter:brightness(1.08)}.pythagoras-fab.hidden{display:none}.pythagoras-spark{width:18px;height:18px;flex-shrink:0}.pythagoras-panel{position:fixed;right:24px;bottom:24px;z-index:200;width:384px;height:564px;max-height:calc(100vh - 48px);display:none;flex-direction:column;background:var(--bg-elev-1);border:1px solid var(--border);border-radius:var(--radius-xl);overflow:hidden}.pythagoras-panel.open{display:flex;animation:fadeUp var(--t-base) var(--ease)}.pythagoras-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(20,19,30,.05),transparent)}.pythagoras-id{display:flex;align-items:center;gap:10px;min-width:0}.pythagoras-id .pythagoras-spark{width:22px;height:22px;color:var(--accent-violet)}.pythagoras-name{font-weight:var(--fw-bold);color:var(--accent-violet);font-size:15px;line-height:1.1}.pythagoras-hl{color:var(--accent-violet);font-weight:var(--fw-semibold)}.pythagoras-sub{font-size:var(--fs-micro);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px}.pythagoras-x{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);color:var(--text-muted);background:transparent}.pythagoras-x:hover{background:var(--bg-elev-3);color:var(--text)}.pythagoras-x svg{width:16px;height:16px}.pythagoras-msgs{padding:var(--space-4);display:flex;gap:var(--space-3)}.pythagoras-msg{max-width:88%;padding:10px 12px;border-radius:12px;font-size:var(--fs-body-sm);word-wrap:break-word}.pythagoras-msg.user{background:var(--accent-violet);color:#fff}.pythagoras-msg.savia{background:var(--bg-elev-3);color:var(--text);font-family:var(--font-mono)}.pythagoras-msg.savia code{background:var(--bg);padding:1px 5px;border-radius:4px;font-size:.92em}.pythagoras-msg.typing{display:inline-flex;gap:4px;align-items:center}.pythagoras-msg.typing span{width:6px;height:6px;border-radius:50%;background:var(--text-muted);animation:saviaBlink 1.2s infinite}.pythagoras-msg.typing span:nth-child(2){animation-delay:.2s}.pythagoras-msg.typing span:nth-child(3){animation-delay:.4s}@keyframes saviaBlink{0%,60%,to{opacity:.25}30%{opacity:1}}.pythagoras-input{display:flex;align-items:flex-end;gap:8px;padding:var(--space-3);border-top:1px solid var(--border)}.pythagoras-input textarea{flex:1 1;resize:none;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:8px 10px;color:var(--text);font-family:var(--font-body);font-size:var(--fs-body-sm);line-height:1.4;max-height:120px}.pythagoras-input textarea:focus{outline:none;border-color:var(--accent-violet)}.pythagoras-send{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius);background:var(--accent-violet);color:#fff}.pythagoras-send:hover{filter:brightness(1.12)}.pythagoras-send:disabled{cursor:default}.pythagoras-attach{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius);border:1px solid var(--border);color:var(--text-muted)}.pythagoras-attach:hover{color:var(--text);border-color:var(--border-strong)}.pythagoras-attach svg{width:16px;height:16px}.pythagoras-chip{display:flex;align-items:center;gap:6px;margin:0 var(--space-3) var(--space-2);padding:6px 8px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--text-secondary)}.pythagoras-chip span{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pythagoras-chip-x{width:18px;height:18px;flex-shrink:0;border-radius:4px;color:var(--text-muted);font-size:15px;line-height:1;display:inline-flex;align-items:center;justify-content:center;background:transparent}.pythagoras-chip-x:hover{background:var(--bg-elev-3);color:var(--text)}.pythagoras-msg.pythagoras-card{max-width:100%;width:100%;background:var(--bg-elev-2);font-family:var(--font-body)}.sc-title{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:15px;color:var(--text)}.sc-meta{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--text-muted);margin-top:2px}.sc-rows{margin:var(--space-3) 0 0;display:flex;flex-direction:column;gap:4px}.sc-row{font-size:var(--fs-body-sm);color:var(--text-secondary)}.sc-row span{font-family:var(--font-display);font-weight:var(--fw-bold);color:var(--text)}.sc-row.sc-sub{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--text-muted);padding-left:var(--space-2)}.sc-actions{display:flex;gap:8px;margin-top:var(--space-4);flex-wrap:wrap}.sc-btn{padding:7px 14px;border-radius:var(--radius);border:1px solid var(--border-strong);background:transparent;color:var(--text);font-size:var(--fs-body-sm);font-weight:var(--fw-medium)}.sc-btn:hover{background:var(--bg-elev-3)}.sc-btn.primary{background:var(--accent-violet);border-color:var(--accent-violet);color:#fff}.sc-btn.primary:hover{filter:brightness(1.1);background:var(--accent-violet)}.sc-cancel,.sc-creando{font-family:var(--font-mono);font-size:var(--fs-body-sm);color:var(--text-muted)}.main{padding:var(--space-6) var(--space-6) var(--space-9);max-width:1400px;margin:0 auto;width:100%}.main-head{margin-bottom:var(--space-7)}.main-head .eyebrow{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--text-muted);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;margin-bottom:var(--space-3)}.main-head h1{font-family:var(--font-display);font-size:var(--fs-h1);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight)}.main-head .lede{font-family:var(--font-body);font-size:var(--fs-body);color:var(--text-secondary);margin-top:var(--space-3);max-width:60ch}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1px;gap:1px;background:var(--border-subtle);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-7)}.stat-cell{background:var(--bg);padding:var(--space-5)}.stat-cell .stat-label{font-family:var(--font-body);font-size:var(--fs-caption);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--ls-eyebrow);margin-bottom:var(--space-3)}.stat-cell .stat-value{font-family:var(--font-display);font-size:var(--fs-display);font-weight:var(--fw-semibold);letter-spacing:var(--ls-display);line-height:1}.stat-cell .stat-unit{font-family:var(--font-body);font-size:var(--fs-body);color:var(--text-muted);margin-left:var(--space-2);font-weight:var(--fw-regular);letter-spacing:0}.stat-cell .stat-delta{font-family:var(--font-mono);font-size:var(--fs-caption);margin-top:var(--space-3);color:var(--text-tertiary);display:inline-flex;align-items:center;gap:var(--space-2)}.stat-cell .stat-delta.up{color:var(--accent-green)}.stat-cell .stat-delta.down{color:var(--accent-red)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);height:32px;padding:0 var(--space-4);font-family:var(--font-body);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);transition:all var(--t-fast) var(--ease);text-decoration:none}.btn:hover{background:var(--bg-elev-1);border-color:var(--border-strong)}.btn:active{transform:translateY(1px)}.btn-primary{color:var(--bg)}.btn-primary,.btn-primary:hover{background:var(--text);border-color:var(--text)}.btn-primary:hover{opacity:.9}.btn-ghost{border-color:transparent;background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-elev-1);color:var(--text)}.btn-danger{color:var(--accent-red);border-color:var(--border)}.btn-danger:hover{background:rgba(238,0,0,.08);border-color:rgba(238,0,0,.4)}.btn-sm{height:28px;padding:0 var(--space-3);font-size:var(--fs-caption)}.btn-lg{height:40px;padding:0 var(--space-5);font-size:var(--fs-body)}.btn svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.6}.input,.select,.textarea{width:100%;padding:var(--space-2) var(--space-3);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-family:var(--font-body);font-size:var(--fs-body-sm);transition:border-color var(--t-fast) var(--ease)}.input{height:36px}.textarea{min-height:88px;padding:var(--space-3);resize:vertical}.select{height:36px;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M3 4.5l3 3 3-3' stroke='%23999' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--text-tertiary)}.label{display:block;font-family:var(--font-body);font-size:var(--fs-caption);color:var(--text-secondary);margin-bottom:var(--space-2);font-weight:var(--fw-medium)}.label.required:after{content:" *";color:var(--accent-red)}.field{margin-bottom:var(--space-4)}.hint{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--text-tertiary);margin-top:var(--space-2)}.section{margin-bottom:var(--space-7)}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--border);gap:var(--space-4)}.section-head h2{font-family:var(--font-display);font-size:var(--fs-h2);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight)}.section-head .aside{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--text-muted);letter-spacing:var(--ls-eyebrow);text-transform:uppercase}.seg-nav{display:inline-flex;gap:2px;padding:3px;background:var(--bg-elev-1);border:1px solid var(--border-subtle);border-radius:var(--radius);margin-bottom:var(--space-6)}.seg-nav .seg-link{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-family:var(--font-body);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);color:var(--text-muted);border-radius:var(--radius-sm);text-decoration:none;white-space:nowrap;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.seg-nav .seg-link:hover{color:var(--text);background:var(--bg-elev-2)}.seg-nav .seg-link.active{background:var(--text);color:var(--bg)}.table{width:100%;border-collapse:collapse}.table,.table thead th{font-family:var(--font-body)}.table thead th{text-align:left;padding:var(--space-2) var(--space-3);white-space:nowrap;font-size:var(--fs-micro);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--ls-eyebrow);font-weight:var(--fw-semibold);background:var(--bg-elev-1);border-bottom:2px solid var(--text)}.table thead th.num{text-align:right}.table thead th.center{text-align:center}.table tbody tr{transition:background var(--t-fast) var(--ease)}.table tbody tr:nth-child(odd){background:rgba(128,128,128,.05)}.table tbody td{padding:9px var(--space-3);font-family:var(--font-body);font-size:var(--fs-body-sm);color:var(--text-secondary);vertical-align:middle;border-bottom:1px solid var(--border-subtle)}.table tbody td.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.table tbody td.mono{font-family:var(--font-mono)}.table tbody td.center{text-align:center}.table tbody td.razon{font-weight:var(--fw-semibold);color:var(--text)}.table tbody tr:hover td{background:var(--bg-elev-1);color:var(--text)}.table tbody tr:last-child td{border-bottom:0}.table tfoot td{padding:9px var(--space-3);font-family:var(--font-body);font-size:var(--fs-body-sm);color:var(--text);font-weight:var(--fw-semibold);background:var(--bg-elev-1);border-top:2px solid var(--text)}.table tfoot td.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.table tr.row-group td{font-family:var(--font-body);font-size:var(--fs-caption);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-eyebrow);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border);border-bottom:1px solid var(--border-subtle)}.table tr.row-group td,.table tr.row-group:hover td{background:var(--bg-elev-2);color:var(--text)}.table tr.row-group td.num{letter-spacing:0}.table tr.row-subtotal td{color:var(--text);font-weight:var(--fw-semibold);border-top:2px solid var(--text)}.table tr.row-subtotal td,.table tr.row-subtotal:hover td{background:var(--bg-elev-1)}.table tr.ug-head{cursor:pointer}.table tr.ug-head>td{background:var(--bg-elev-1);font-weight:var(--fw-semibold);color:var(--text);border-top:1px solid var(--border)}.table tr.ug-head:hover>td{background:var(--bg-elev-2)}.ug-caret{display:inline-block;width:12px;margin-right:var(--space-2);color:var(--text-muted);transition:transform var(--t-fast) var(--ease)}.table tr.ug-head.is-open .ug-caret{transform:rotate(90deg)}.ug-count{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--text-muted);margin-left:var(--space-3);font-weight:var(--fw-regular);letter-spacing:var(--ls-eyebrow);text-transform:uppercase}.table tr.ug-total>td{font-weight:var(--fw-semibold);color:var(--text);border-top:2px solid var(--text)}.table .row-sub,.table tr.ug-total>td{background:var(--bg-elev-1)}.table .row-sub td:first-child:before{content:"↳ ";color:var(--text-muted)}.table td .sub-exp{display:block;font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--text-muted)}.table.table--dense tbody td,.table.table--dense tfoot td,.table.table--dense thead th,.table.table--dense tr.row-group td,.table.table--dense tr.ug-head>td,.table.table--dense tr.ug-total>td{padding:5px var(--space-2)}.table.table--sticky thead th{position:-webkit-sticky;position:sticky;top:0;z-index:1;background:var(--bg-elev-1)}.table .cell-input,.table .cell-select{width:100%;height:30px;padding:0 var(--space-2);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-mono);font-size:var(--fs-caption)}.table .cell-input:focus,.table .cell-select:focus{outline:none;border-color:var(--text-tertiary)}.table .cell-input.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.table .cell-input.dirty{border-color:var(--accent-blue)}.table-wrap{overflow-x:auto}.val-pos{color:var(--val-pos)}.val-neg{color:var(--val-neg)}.val-pend{color:var(--val-pend)}.table td.val-pos,.table th.val-pos{color:var(--val-pos)!important}.table td.val-neg,.table th.val-neg{color:var(--val-neg)!important}.table td.val-pend,.table th.val-pend{color:var(--val-pend)!important}.table td.val-strong{font-weight:var(--fw-semibold)}.callout{font-family:var(--font-mono);font-size:var(--fs-body-sm);line-height:1.6;padding:var(--space-4) var(--space-5);border-left:2px solid var(--accent-blue);background:var(--bg-elev-1);margin:var(--space-4) 0;border-radius:0 var(--radius) var(--radius) 0;color:var(--text-secondary)}.callout.warning{border-color:var(--accent-amber)}.callout.danger{border-color:var(--accent-red)}.callout.success{border-color:var(--accent-green)}.callout.savia{border-color:var(--border-strong)}.callout .callout-title{display:block;font-family:var(--font-body);font-weight:var(--fw-semibold);color:var(--text);font-size:var(--fs-body-sm);margin-bottom:var(--space-2)}.callout.savia .callout-title:before{content:"△ ";color:var(--text-secondary)}.code,code,kbd{font-size:.92em;background:var(--bg-elev-2);padding:2px 6px;border-radius:var(--radius-sm);color:var(--text)}.code,code,kbd,pre{font-family:var(--font-mono)}pre{font-size:var(--fs-body-sm);background:var(--bg-elev-1);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4);overflow-x:auto;line-height:1.6}.badge{display:inline-flex;align-items:center;gap:var(--space-1);font-family:var(--font-mono);font-size:var(--fs-micro);padding:2px 8px;border-radius:var(--radius-full);background:var(--bg-elev-2);color:var(--text-secondary);letter-spacing:var(--ls-mono);border:1px solid var(--border-subtle)}.badge.live{background:rgba(11,206,131,.1);color:var(--accent-green);border-color:rgba(11,206,131,.25)}.badge.warn{background:rgba(245,166,35,.1);color:var(--accent-amber);border-color:rgba(245,166,35,.25)}.badge.danger{background:rgba(238,0,0,.1);color:var(--accent-red);border-color:rgba(238,0,0,.25)}.badge.info{background:rgba(0,112,243,.1);color:var(--accent-blue);border-color:rgba(0,112,243,.25)}.badge.savia{background:var(--bg-elev-3);color:var(--text-secondary);border-color:var(--border-strong)}.badge.ok{background:var(--val-pos-bg);color:var(--val-pos);border-color:var(--val-pos-bd)}.badge.pend{background:var(--val-pend-bg);color:var(--val-pend);border-color:var(--val-pend-bd)}.badge.neg{background:var(--val-neg-bg);color:var(--val-neg);border-color:var(--val-neg-bd)}.badge .dot{width:6px;height:6px;border-radius:var(--radius-full);background:currentColor}hr{border:0;border-top:1px solid var(--border);margin:var(--space-5) 0}.empty{padding:var(--space-8) var(--space-5);text-align:center;border:1px dashed var(--border);border-radius:var(--radius-lg)}.empty .empty-title{font-family:var(--font-display);font-size:var(--fs-h3);margin-bottom:var(--space-3)}.empty .empty-text{color:var(--text-muted);max-width:40ch;margin:0 auto var(--space-5)}.alert,.empty .empty-text{font-family:var(--font-body);font-size:var(--fs-body-sm)}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius)}.alert-danger{background:rgba(238,0,0,.08);color:var(--accent-red);border:1px solid rgba(238,0,0,.2)}.alert-success{background:rgba(11,206,131,.08);color:var(--accent-green);border:1px solid rgba(11,206,131,.2)}.alert-info{background:rgba(0,112,243,.08);color:var(--accent-blue);border:1px solid rgba(0,112,243,.2)}@media (max-width:1080px){.stat-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.app{grid-template-columns:1fr}.sidebar{display:none}.main{padding:var(--space-5)}.stat-grid{grid-template-columns:1fr}}.pythagoras-fab{width:60px;height:60px;padding:0;border-radius:50%;background:#fff;border:1px solid rgba(20,19,30,.14);color:inherit;display:inline-flex;align-items:center;justify-content:center}.pythagoras-fab>span{display:none}.pythagoras-fab .pythagoras-flor-svg{width:40px;height:40px}.pythagoras-fab:hover{transform:translateY(-1px)}.pythagoras-panel{--pyt-bg:#161618;--pyt-surface:#232327;--pyt-hover:#26262b;--pyt-ink:#ededf0;--pyt-muted:#9a99a3;--pyt-line:rgba(255,255,255,.09);--pyt-line-strong:rgba(255,255,255,.17);--pyt-inverse:#ededf0;--pyt-oninverse:#161618;--pyt-codebg:#0f0f11;--pyt-codetext:#e8e8ea;width:440px;max-width:calc(100vw - 32px);top:16px;right:16px;bottom:16px;height:auto;max-height:none;background:var(--pyt-bg);border:1px solid var(--pyt-line-strong);border-radius:18px;color:var(--pyt-ink);font-family:var(--font-display)}[data-theme=light] .pythagoras-panel{--pyt-bg:#fff;--pyt-surface:#f4f4f5;--pyt-hover:#f6f6f7;--pyt-ink:#1c1b22;--pyt-muted:#8c8a96;--pyt-line:rgba(20,19,30,.09);--pyt-line-strong:rgba(20,19,30,.14);--pyt-inverse:#1c1b22;--pyt-oninverse:#fff;--pyt-codebg:#ffffff;--pyt-codetext:#34343c}.pythagoras-panel.expanded{width:680px}.pythagoras-flor-svg g{transform-origin:32px 32px}.pythagoras-flor-svg ellipse{mix-blend-mode:multiply}@keyframes pythagoras-giro{to{transform:rotate(1turn)}}.pythagoras-top{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;flex:none}.pythagoras-top-r{display:flex;gap:4px}.pythagoras-ic{width:34px;height:34px;border-radius:9px;border:0;background:transparent;color:var(--pyt-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.pythagoras-ic:hover{background:var(--pyt-hover);color:var(--pyt-ink)}.pythagoras-ic svg{width:18px;height:18px}.pythagoras-body{min-height:0;overflow:hidden}.pythagoras-body,.pythagoras-hero{flex:1 1;display:flex;flex-direction:column}.pythagoras-hero{align-items:center;justify-content:center;text-align:center;padding:8px 24px 0;overflow-y:auto}.pythagoras-body.chatting .pythagoras-hero{display:none}.pythagoras-flor-lg .pythagoras-flor-svg{width:64px;height:64px}.pythagoras-name-row{margin-top:14px;display:inline-flex;align-items:center;gap:9px}.pythagoras-name{font-size:25px;font-weight:800;letter-spacing:-.02em;color:var(--pyt-ink);font-family:var(--font-display)}.pythagoras-beta{font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;background:var(--pyt-surface);padding:3px 8px;border-radius:999px}.pythagoras-beta,.pythagoras-sub{font-family:var(--font-mono);color:var(--pyt-muted)}.pythagoras-sub{margin-top:8px;font-size:11px;max-width:none}.pythagoras-tag{margin-top:12px;font-size:14px;color:var(--pyt-muted);max-width:28ch;line-height:1.5}.pythagoras-sugg{width:100%;margin-top:22px}.pythagoras-q{width:100%;display:flex;align-items:center;gap:11px;padding:13px 10px;background:transparent;border:0;border-top:1px solid var(--pyt-line);color:var(--pyt-ink);font-family:var(--font-display);font-size:13.5px;text-align:left;cursor:pointer}.pythagoras-q:last-child{border-bottom:1px solid var(--pyt-line)}.pythagoras-q:hover{background:var(--pyt-hover)}.pythagoras-q svg{width:19px;height:19px;color:var(--pyt-ink);flex-shrink:0}.pythagoras-q span{flex:1 1}.pythagoras-msgs{display:none;flex:1 1;min-height:0;overflow-y:auto;padding:16px;flex-direction:column;gap:10px;background:var(--pyt-bg)}.pythagoras-body.chatting .pythagoras-msgs{display:flex}.pythagoras-msg{max-width:84%;padding:10px 13px;border-radius:14px;font-size:13.5px;line-height:1.5}.pythagoras-msg.user{align-self:flex-end;background:var(--pyt-inverse);color:var(--pyt-oninverse);border-bottom-right-radius:4px}.pythagoras-msg.savia{align-self:flex-start;color:var(--pyt-ink);border-bottom-left-radius:4px}.pythagoras-msg.savia,.pythagoras-msg.savia code{background:var(--pyt-surface)}.pythagoras-input{display:block;padding:12px 14px 15px;border-top:1px solid var(--pyt-line);flex:none}.pythagoras-field{display:block;border:1px solid var(--pyt-line-strong);border-radius:16px;padding:9px 11px 7px;background:var(--pyt-bg)}.pythagoras-field:focus-within{border-color:var(--pyt-muted)}.pythagoras-field textarea{display:block;width:100%;border:0;outline:0;resize:none;padding:0;line-height:1.45;font-family:var(--font-display);font-size:14px;color:var(--pyt-ink);background:transparent;min-height:22px;max-height:120px}.pythagoras-field textarea::placeholder{color:var(--pyt-muted)}.pythagoras-input-row{display:flex;align-items:center;justify-content:space-between;margin-top:5px}.pythagoras-attach{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;color:var(--pyt-muted);background:transparent;border:0;cursor:pointer;padding:0;border-radius:9px}.pythagoras-attach:hover{background:var(--pyt-hover);color:var(--pyt-ink)}.pythagoras-attach svg{width:18px;height:18px}.pythagoras-send{width:34px;height:34px;border-radius:50%;border:0;background:var(--pyt-inverse);color:var(--pyt-oninverse);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.pythagoras-send svg{width:16px;height:16px}.pythagoras-send:disabled{opacity:.5}.pythagoras-chip{background:var(--pyt-surface);border:1px solid var(--pyt-line);color:var(--pyt-ink)}.pythagoras-hist{position:absolute;inset:0;background:var(--pyt-bg);border-radius:18px;display:none;flex-direction:column;z-index:5}.pythagoras-hist.open{display:flex}.pythagoras-new{margin:0 14px;height:44px;border:1px solid var(--pyt-line-strong);border-radius:12px;background:var(--pyt-bg);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--font-display);font-weight:500;font-size:14px;color:var(--pyt-ink)}.pythagoras-new:hover{background:var(--pyt-hover)}.pythagoras-new svg{width:16px;height:16px}.pythagoras-hist-list{flex:1 1;overflow-y:auto;padding:14px 10px}.pythagoras-hist-foot{border-top:1px solid var(--pyt-line);padding:12px 16px;display:flex;gap:9px;font-size:13px}.pythagoras-av,.pythagoras-hist-foot{align-items:center;color:var(--pyt-ink)}.pythagoras-av{width:26px;height:26px;border-radius:50%;background:var(--pyt-surface);display:inline-flex;justify-content:center;font-weight:600;font-size:12px}.pythagoras-empty{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--pyt-muted);padding:0 30px}.pythagoras-empty h3{font-size:16px;font-weight:600;color:var(--pyt-ink)}.pythagoras-empty p{font-size:13px;margin-top:6px;max-width:24ch;line-height:1.5}.pythagoras-empty svg{width:60px;height:60px;color:var(--pyt-muted);margin-bottom:14px}.pythagoras-card{background:var(--pyt-surface);border:1px solid var(--pyt-line)}.pythagoras-card,.pythagoras-card .sc-title{color:var(--pyt-ink)}.pythagoras-card .sc-meta,.pythagoras-card .sc-row.sc-sub,.pythagoras-card .sc-sub{color:var(--pyt-muted)}.pythagoras-card .sc-row span,.sc-btn{color:var(--pyt-ink)}.sc-btn{border:1px solid var(--pyt-line-strong);background:var(--pyt-bg)}.sc-btn.primary{background:var(--pyt-inverse);border-color:var(--pyt-inverse);color:var(--pyt-oninverse)}.pythagoras-hl,.pythagoras-name.pythagoras-hl{color:var(--pyt-ink)}.modal-backdrop .modal{border-radius:0}.pythagoras-cfg-panel{position:absolute;inset:0;background:var(--pyt-bg);border-radius:18px;display:none;flex-direction:column;z-index:6}.pythagoras-cfg-panel.open{display:flex}.pythagoras-cfg-title{font-size:15px;font-weight:700;color:var(--pyt-ink);font-family:var(--font-display)}.pythagoras-cfg-body{flex:1 1;overflow-y:auto;padding:4px 18px 22px}.pythagoras-cfg-lbl{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--pyt-muted);margin:16px 0 6px}.pythagoras-cfg-prov{font-size:13px;color:var(--pyt-ink);background:var(--pyt-surface);border:1px solid var(--pyt-line);border-radius:10px;padding:9px 11px;line-height:1.5}.pythagoras-cfg-inp,.pythagoras-cfg-sel{width:100%;border:1px solid var(--pyt-line-strong);border-radius:10px;padding:9px 11px;font-size:13.5px;color:var(--pyt-ink);background:var(--pyt-bg);font-family:var(--font-display)}.pythagoras-cfg-keyrow{display:flex;gap:7px}.pythagoras-cfg-keyrow .pythagoras-cfg-inp{flex:1 1}.pythagoras-cfg-btn{border:0;border-radius:10px;background:var(--pyt-inverse);color:var(--pyt-oninverse);padding:0 15px;font-size:13px;font-weight:600;cursor:pointer;flex:none}.pythagoras-cfg-btn:hover{filter:brightness(1.15)}.pythagoras-cfg-note{font-size:11.5px;color:var(--pyt-muted);line-height:1.5;margin-top:8px}.pythagoras-cfg-ok{color:#0a9d63;font-size:12px;margin-top:8px;min-height:15px;font-family:var(--font-mono)}.pythagoras-cfg-clear{margin-top:16px;width:100%;border:1px solid var(--pyt-line-strong);border-radius:10px;background:var(--pyt-bg);color:var(--pyt-ink);padding:10px;font-size:12.5px;cursor:pointer;font-family:var(--font-display)}.pythagoras-cfg-clear:hover{background:var(--pyt-hover)}.pythagoras-cfg-meter{margin-top:20px;border-top:1px solid var(--pyt-line);padding-top:14px;font-family:var(--font-mono);font-size:12px;color:var(--pyt-ink);line-height:1.7}.pythagoras-cfg-bar{height:7px;border-radius:4px;background:var(--pyt-surface);overflow:hidden;margin:8px 0 6px}.pythagoras-cfg-bar i{display:block;height:100%;background:var(--pyt-ink);border-radius:4px}.pythagoras-cfg-buy{display:block;width:100%;margin:12px 0 4px;border:1px solid var(--pyt-line-strong);border-radius:10px;background:var(--pyt-bg);color:var(--pyt-ink);padding:9px;font-size:12.5px;font-family:var(--font-display);cursor:pointer}.pythagoras-cfg-buy:hover{background:var(--pyt-hover)}.pythagoras-cfg-ses{margin-top:16px;color:var(--pyt-muted)}.pythagoras-cfg-fine{display:block;margin-top:8px;color:var(--pyt-muted);font-size:11px}.pythagoras-meta{align-self:flex-start;font-family:var(--font-mono);font-size:10.5px;color:#a7a7ae;margin:-3px 0 2px 3px}.pythagoras-hi{display:flex;align-items:center;border-radius:10px;margin:1px 4px}.pythagoras-hi:hover{background:var(--pyt-hover)}.pythagoras-hi.activo{background:var(--pyt-surface)}.pythagoras-hi-open{flex:1 1;min-width:0;text-align:left;background:transparent;border:0;cursor:pointer;padding:9px 10px;display:flex;flex-direction:column;gap:3px}.pythagoras-hi-title{font-family:var(--font-display);font-size:13.5px;color:var(--pyt-ink);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pythagoras-hi-date{font-family:var(--font-mono);font-size:10px;color:var(--pyt-muted)}.pythagoras-hi-acts{display:flex;gap:1px;padding-right:6px;opacity:0;transition:opacity .12s}.pythagoras-hi.activo .pythagoras-hi-acts,.pythagoras-hi:hover .pythagoras-hi-acts{opacity:1}.pythagoras-hi-ic{width:27px;height:27px;border:0;background:transparent;color:var(--pyt-muted);border-radius:7px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex:none}.pythagoras-hi-ic:hover{background:var(--pyt-surface);color:var(--pyt-ink)}.pythagoras-hi-ic.on{color:var(--pyt-ink)}.pythagoras-hi-ic svg{width:15px;height:15px}.pythagoras-hi-ren{width:calc(100% - 16px);margin:4px 8px;border:1px solid var(--pyt-line-strong);border-radius:8px;padding:7px 9px;font-family:var(--font-display);font-size:13.5px;color:var(--pyt-ink);outline:none;background:var(--pyt-bg)}.pythagoras-tool{align-self:flex-start;border:1px solid var(--pyt-line);border-radius:8px;padding:5px 9px;margin:1px 0}.pythagoras-ctx,.pythagoras-tool{font-family:var(--font-mono);font-size:11px;color:var(--pyt-ink);background:var(--pyt-surface)}.pythagoras-ctx{display:flex;align-items:center;gap:6px;margin:0 14px 8px;padding:6px 9px;border:1px solid var(--pyt-line);border-radius:9px}.pythagoras-ctx span{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--pyt-ink)}.pythagoras-ctx em{font-style:normal;color:var(--pyt-muted);flex:none}.pythagoras-ctx-x{width:18px;height:18px;border:0;background:transparent;color:var(--pyt-muted);font-size:15px;line-height:1;border-radius:4px;cursor:pointer;flex:none}.pythagoras-ctx-x:hover{background:var(--pyt-surface);color:var(--pyt-ink)}.pythagoras-fab{background:transparent;border:0;box-shadow:none;width:78px;height:78px}.pythagoras-fab:hover{transform:translateY(-2px);filter:none}.pythagoras-fab .pythagoras-flor-svg{width:74px;height:74px}.pythagoras-flor-svg{filter:invert(1)}[data-theme=light] .pythagoras-flor-svg{filter:none}.pythagoras-chip.has-thumb{padding:5px 8px}.pythagoras-chip-thumb{width:32px;height:32px;object-fit:cover;border-radius:6px;flex:none;border:1px solid var(--pyt-line)}.pythagoras-msg-thumb{max-width:190px;max-height:190px;border-radius:10px;display:block}.pythagoras-msg.user .pythagoras-msg-thumb{margin:0 0 2px}.pythagoras-panel.pythagoras-drag:after{content:"Suelta el archivo aquí";position:absolute;inset:10px;border:2px dashed var(--pyt-line-strong);border-radius:14px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:13px;color:var(--pyt-muted);background:var(--pyt-surface);z-index:30;pointer-events:none}.pythagoras-code{position:relative;margin:8px 0;border-radius:10px;overflow:hidden;background:var(--pyt-codebg);border:1px solid var(--pyt-line-strong)}.pythagoras-code pre{margin:0;padding:32px 12px 12px;overflow-x:auto;background:transparent;border:0;border-radius:0}.pythagoras-msg.savia .pythagoras-code code{font-size:12px;line-height:1.55;white-space:pre;padding:0}.pythagoras-code-copy,.pythagoras-msg.savia .pythagoras-code code{font-family:var(--font-mono);color:var(--pyt-codetext);background:transparent}.pythagoras-code-copy{position:absolute;top:7px;right:7px;border:1px solid var(--pyt-line-strong);font-size:10.5px;padding:3px 9px;border-radius:6px;cursor:pointer;z-index:1}.pythagoras-code-copy:hover{background:var(--pyt-hover)}.docbar{gap:var(--space-4);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border);background:var(--bg-elev-1);position:-webkit-sticky;position:sticky;top:var(--topbar-h);z-index:9}.docbar,.docbar-l,.docbar-r{display:flex;align-items:center;flex-wrap:wrap}.docbar-l{gap:var(--space-4);flex:1 1 auto;min-width:0}.docbar-r{gap:var(--space-2);margin-left:auto}.db-field{display:inline-flex;align-items:center;gap:var(--space-2);flex-shrink:0}.db-field>label{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.db-field .input,.db-field .select{height:30px;width:auto;font-size:var(--fs-caption)}.db-field .select{max-width:300px;min-width:96px}.db-div{width:1px;height:20px;background:var(--border);flex-shrink:0}.db-ico{position:relative;width:30px;height:30px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:var(--bg);color:var(--text-muted);border:0;cursor:pointer;transition:all var(--t-fast) var(--ease)}.db-ico i{font-size:15px}.db-ico:hover{background:var(--bg-elev-2);color:var(--text)}.db-seg{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;flex-shrink:0}.db-seg .db-ico+.db-ico{border-left:1px solid var(--border)}.db-toggle{border:1px solid var(--border);border-radius:var(--radius)}.db-ico.is-active,.db-ico.is-active:hover,.db-toggle:has(.db-chk:checked),.db-toggle:has(.db-chk:checked):hover{background:var(--text);color:var(--bg)}.db-chk{position:absolute;opacity:0;width:0;height:0}.db-more{position:relative;flex-shrink:0}.db-menu{display:none;position:absolute;right:0;top:calc(100% + 6px);min-width:220px;padding:var(--space-1);background:var(--bg-elev-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:30}.db-more.open .db-menu{display:block}.db-mi{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);text-align:left;font-family:var(--font-body);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);color:var(--text);background:transparent;border:0;border-radius:var(--radius);cursor:pointer}.db-mi:hover{background:var(--bg-elev-2)}.db-mi i{font-size:15px;color:var(--text-muted)}.db-mi.danger,.db-mi.danger i{color:var(--accent-red)}.db-sep{height:1px;margin:var(--space-1) 0;background:var(--border)}@media print{.docbar{display:none!important}}.dc-backdrop{display:none;position:fixed;inset:0;z-index:120;background:rgba(0,0,0,.6);align-items:center;justify-content:center;padding:var(--space-5)}.dc-modal{position:relative;width:100%;max-width:720px;max-height:92vh;display:flex;flex-direction:column;background:var(--bg-elev-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.dc-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);flex-shrink:0}.dc-head h3{font-family:var(--font-display);font-size:var(--fs-h3);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight)}.dc-x{width:30px;height:30px;border:0;background:transparent;color:var(--text-muted);font-size:22px;line-height:1;cursor:pointer;border-radius:var(--radius)}.dc-x:hover{background:var(--bg-elev-2);color:var(--text)}.dc-candado{padding:var(--space-3) var(--space-5);background:rgba(238,0,0,.07);border-bottom:1px solid var(--border);color:var(--accent-red);font-size:var(--fs-caption);line-height:1.5;flex-shrink:0}.dc-body{padding:var(--space-4) var(--space-5);overflow-y:auto;flex:1 1}.dc-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.dc-lbl{flex:0 0 76px;font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted)}.dc-in{flex:1 1;min-width:0;height:32px;padding:0 var(--space-2);border:0;background:transparent;color:var(--text);font-family:var(--font-body);font-size:var(--fs-body-sm)}.dc-in:focus{outline:none}.dc-row-r{flex:1 1;display:flex;align-items:center;gap:var(--space-3);min-width:0}.dc-sel{border:1px solid var(--border);border-radius:var(--radius);height:30px;max-width:260px;background:var(--bg)}.dc-chk{display:inline-flex;gap:6px;white-space:nowrap;font-size:var(--fs-caption);color:var(--text-secondary);cursor:pointer}.dc-chk,.dc-tabs{align-items:center}.dc-tabs{display:flex;gap:var(--space-2);margin:var(--space-4) 0 var(--space-2)}.dc-tab{height:26px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text-muted);font-size:var(--fs-caption);font-weight:var(--fw-medium);cursor:pointer}.dc-tab.is-on{background:var(--text);color:var(--bg);border-color:var(--text)}.dc-tabs-nota{font-size:var(--fs-caption);color:var(--text-tertiary);margin-left:auto}.dc-cuerpo{width:100%;min-height:220px;max-height:40vh;overflow-y:auto;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--fs-body-sm);line-height:1.6}.dc-cuerpo:focus{outline:none;border-color:var(--border-strong)}.dc-code{font-family:var(--font-mono);font-size:12px;white-space:pre;resize:vertical}.dc-adj{margin-top:var(--space-4)}.dc-adj-tit{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-2)}.dc-adj-it{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:4px;border:1px solid var(--border);border-radius:var(--radius);font-size:var(--fs-body-sm);color:var(--text);cursor:pointer}.dc-adj-it:hover{background:var(--bg-elev-2)}.dc-adj-it i{color:var(--text-muted)}.dc-adj-it em{color:var(--text-tertiary);font-size:var(--fs-caption);font-style:normal;margin-left:auto}.dc-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--border);flex-shrink:0}.dc-foot-r{display:flex;gap:var(--space-2)}.dc-prev{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;background:var(--bg-elev-1)}.dc-prev-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border);font-size:var(--fs-body-sm);color:var(--text-secondary)}.dc-prev-bar .btn{margin-left:auto}.dc-prev-frame{flex:1 1;width:100%;border:0;background:#f4f4f4}.dc-acciones{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-3)}.dc-acciones .btn i{font-size:14px}.dc-destino{margin-top:6px;font-size:var(--fs-caption);line-height:1.5;color:var(--accent-red)}.dc-destino.is-real{color:var(--accent-green,#16a34a)}.dc-destino .dc-malo{color:var(--accent-red)}.dc-candado .dc-chk{color:var(--text);font-size:var(--fs-body-sm)}body{background:var(--bg,#0a0a0a);color:var(--text,#f5f5f5);font-family:var(--font-body,system-ui,-apple-system,"Segoe UI",sans-serif);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}*{box-sizing:border-box}