@import "https://fonts.googleapis.com/css2?family=Roboto+Flex:opsz,wght@8..144,100..1000&family=Roboto+Mono:wght@400;500;700&family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--md-ref-typeface-plain:"Roboto Flex", system-ui, -apple-system, sans-serif;--md-ref-typeface-mono:"Roboto Mono", ui-monospace, "JetBrains Mono", monospace;--md-sys-color-primary:#d0bcff;--md-sys-color-on-primary:#381e72;--md-sys-color-primary-container:#4f378b;--md-sys-color-on-primary-container:#eaddff;--md-sys-color-secondary:#ccc2dc;--md-sys-color-on-secondary:#332d41;--md-sys-color-secondary-container:#4a4458;--md-sys-color-on-secondary-container:#e8def8;--md-sys-color-tertiary:#efb8c8;--md-sys-color-on-tertiary:#492532;--md-sys-color-tertiary-container:#633b48;--md-sys-color-on-tertiary-container:#ffd8e4;--md-sys-color-error:#f2b8b5;--md-sys-color-on-error:#601410;--md-sys-color-error-container:#8c1d18;--md-sys-color-on-error-container:#f9dedc;--md-sys-color-surface:#141218;--md-sys-color-on-surface:#e6e0e9;--md-sys-color-surface-variant:#49454f;--md-sys-color-on-surface-variant:#cac4d0;--md-sys-color-surface-container-lowest:#0f0d13;--md-sys-color-surface-container-low:#1d1b20;--md-sys-color-surface-container:#211f26;--md-sys-color-surface-container-high:#2b2930;--md-sys-color-surface-container-highest:#36343b;--md-sys-color-outline:#938f99;--md-sys-color-outline-variant:#49454f;--md-sys-color-inverse-surface:#e6e0e9;--md-sys-color-inverse-on-surface:#322f35;--md-sys-typescale-display-large-font:var(--md-ref-typeface-plain);--md-sys-typescale-display-large-size:57px;--md-sys-typescale-display-large-line-height:64px;--md-sys-typescale-display-large-weight:400;--md-sys-typescale-headline-medium-font:var(--md-ref-typeface-plain);--md-sys-typescale-headline-medium-size:28px;--md-sys-typescale-headline-medium-line-height:36px;--md-sys-typescale-headline-medium-weight:600;--md-sys-typescale-title-medium-font:var(--md-ref-typeface-plain);--md-sys-typescale-title-medium-size:16px;--md-sys-typescale-title-medium-line-height:24px;--md-sys-typescale-title-medium-weight:600;--md-sys-typescale-title-medium-tracking:.15px;--md-sys-typescale-body-medium-font:var(--md-ref-typeface-plain);--md-sys-typescale-body-medium-size:14px;--md-sys-typescale-body-medium-line-height:20px;--md-sys-typescale-body-medium-weight:400;--md-sys-typescale-body-medium-tracking:.25px;--md-sys-typescale-label-large-font:var(--md-ref-typeface-plain);--md-sys-typescale-label-large-size:14px;--md-sys-typescale-label-large-line-height:20px;--md-sys-typescale-label-large-weight:600;--md-sys-typescale-label-large-tracking:.1px;--md-sys-typescale-code-font:var(--md-ref-typeface-mono);--md-sys-typescale-code-size:14px;--md-sys-typescale-code-line-height:22px;--landing-type-display:clamp(64px, 7.4vw, 128px);--landing-type-display-wide:clamp(58px, 7.2vw, 92px);--landing-type-display-tablet:clamp(64px, 12vw, 112px);--landing-type-display-mobile:clamp(52px, 17vw, 80px);--landing-type-section:clamp(52px, 7vw, 104px);--landing-type-section-mobile:clamp(46px, 14vw, 68px);--landing-type-story:clamp(36px, 4vw, 64px);--landing-type-story-mobile:42px;--landing-type-stage:clamp(24px, 2.4vw, 40px);--landing-type-proof:clamp(26px, 3vw, 46px);--landing-type-copy:clamp(18px, 1.6vw, 24px);--landing-type-copy-compact:clamp(17px, 1.45vw, 22px);--landing-type-stage-label:clamp(16px, 1.6vw, 24px);--landing-type-preview-code:clamp(10px, .78vw, 13px);--landing-type-brand:18px;--landing-type-action:15px;--landing-type-label:13px;--landing-type-meta:12px;--landing-type-micro:11px;--landing-type-node:9px;--landing-type-value:22px;--landing-type-mobile-copy:17px;--md-sys-shape-corner-none:0;--md-sys-shape-corner-xs:4px;--md-sys-shape-corner-sm:8px;--md-sys-shape-corner-md:12px;--md-sys-shape-corner-lg:16px;--md-sys-shape-corner-xl:28px;--md-sys-shape-corner-full:999px;--md-sys-elevation-0:none;--md-sys-elevation-1:0 1px 2px #0000004d, 0 1px 3px 1px #00000026;--md-sys-elevation-2:0 1px 2px #0000004d, 0 2px 6px 2px #00000026;--md-sys-elevation-3:0 4px 8px 3px #00000026, 0 1px 3px #0000004d;--md-sys-elevation-4:0 6px 10px 4px #00000026, 0 2px 3px #0000004d;--md-sys-elevation-5:0 8px 12px 6px #00000026, 0 4px 4px #0000004d;--md-sys-motion-duration-short:.2s;--md-sys-motion-duration-medium:.4s;--md-sys-motion-duration-long:.6s;--md-sys-motion-easing-emphasized:cubic-bezier(.2, 0, 0, 1);--md-sys-motion-easing-standard:cubic-bezier(.2, 0, 0, 1);--md-sys-state-hover-opacity:.08;--md-sys-state-focus-opacity:.12;--md-sys-state-pressed-opacity:.12;--md-sys-spacing-1:4px;--md-sys-spacing-2:8px;--md-sys-spacing-3:12px;--md-sys-spacing-4:16px;--md-sys-spacing-5:20px;--md-sys-spacing-6:24px;--md-sys-spacing-8:32px;--sym-ovalo-bg:var(--md-sys-color-tertiary-container);--sym-ovalo-fg:var(--md-sys-color-on-tertiary-container);--sym-proceso-bg:var(--md-sys-color-surface-container-high);--sym-proceso-fg:var(--md-sys-color-on-surface);--sym-proceso-borde:var(--md-sys-color-outline);--sym-decision-bg:var(--md-sys-color-secondary-container);--sym-decision-fg:var(--md-sys-color-on-secondary-container);--sym-io-bg:var(--md-sys-color-primary-container);--sym-io-fg:var(--md-sys-color-on-primary-container);--sym-activo-bg:var(--md-sys-color-primary);--sym-activo-fg:var(--md-sys-color-on-primary);--sym-activo-halo:0 0 0 3px var(--md-sys-color-primary), 0 0 18px 2px #d0bcff80;--sym-visitado-borde:var(--md-sys-color-outline-variant);--sym-arista:var(--md-sys-color-outline);--sym-arista-activa:var(--md-sys-color-primary)}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;min-height:100%;margin:0}body{background:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);font-family:var(--md-ref-typeface-plain);-webkit-font-smoothing:antialiased;overflow:hidden}button,textarea,input{font:inherit}.material-symbols-rounded,.md-icono{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-feature-settings:"liga";font-feature-settings:"liga";-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;direction:ltr;font-family:Material Symbols Rounded,sans-serif;font-style:normal;font-weight:400;line-height:1;display:inline-block}.md-raiz{font-family:var(--md-ref-typeface-plain);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height);letter-spacing:var(--md-sys-typescale-body-medium-tracking);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}.md-capa-estado:before{content:"";border-radius:inherit;opacity:0;pointer-events:none;transition:opacity var(--md-sys-motion-duration-short) var(--md-sys-motion-easing-standard);z-index:0;background:currentColor;position:absolute;inset:0}.md-capa-estado:hover:not(:disabled):before{opacity:var(--md-sys-state-hover-opacity)}.md-capa-estado:focus-visible:before{opacity:var(--md-sys-state-focus-opacity)}.md-foco:focus-visible{outline:3px solid var(--md-sys-color-secondary);outline-offset:2px}.md-foco{outline:none}.md-ondas{border-radius:inherit;pointer-events:none;z-index:1;position:absolute;inset:0;overflow:hidden}.md-onda{border-radius:var(--md-sys-shape-corner-full);pointer-events:none;background:currentColor;position:absolute}.md-contenido{z-index:2;white-space:nowrap;justify-content:center;align-items:center;gap:8px;display:inline-flex;position:relative}.md-boton{isolation:isolate;border-radius:var(--md-sys-shape-corner-full);min-height:40px;font-family:var(--md-ref-typeface-plain);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);letter-spacing:var(--md-sys-typescale-label-large-tracking);line-height:var(--md-sys-typescale-label-large-line-height);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;color:inherit;background:0 0;border:none;justify-content:center;align-items:center;padding:0 24px;display:inline-flex;position:relative;overflow:hidden}.md-boton--ancho{width:100%}.md-boton:disabled{cursor:not-allowed;opacity:.38}.md-boton--filled{background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);box-shadow:var(--md-sys-elevation-1)}.md-boton--tonal{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container)}.md-boton--outlined{color:var(--md-sys-color-primary);box-shadow:inset 0 0 0 1px var(--md-sys-color-outline);background:0 0}.md-boton--text{color:var(--md-sys-color-primary);background:0 0;padding:0 12px}.md-boton .md-icono{font-size:18px}.md-icon-boton{isolation:isolate;border-radius:var(--md-sys-shape-corner-full);cursor:pointer;width:40px;height:40px;color:var(--md-sys-color-on-surface-variant);-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative;overflow:hidden}.md-icon-boton:disabled{cursor:not-allowed;opacity:.38}.md-icon-boton--standard{color:var(--md-sys-color-on-surface-variant)}.md-icon-boton--filled{background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.md-icon-boton--tonal{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container)}.md-icon-boton--outlined{color:var(--md-sys-color-on-surface-variant);box-shadow:inset 0 0 0 1px var(--md-sys-color-outline)}.md-fab{isolation:isolate;cursor:pointer;background:var(--md-sys-color-primary-container);color:var(--md-sys-color-on-primary-container);box-shadow:var(--md-sys-elevation-3);font-family:var(--md-ref-typeface-plain);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);letter-spacing:var(--md-sys-typescale-label-large-tracking);-webkit-tap-highlight-color:transparent;border:none;justify-content:center;align-items:center;gap:12px;display:inline-flex;position:relative;overflow:hidden}.md-fab--sm{border-radius:var(--md-sys-shape-corner-md);width:40px;height:40px}.md-fab--md{border-radius:var(--md-sys-shape-corner-lg);width:56px;height:56px}.md-fab--lg{border-radius:var(--md-sys-shape-corner-xl);width:96px;height:96px}.md-fab--extendido{border-radius:var(--md-sys-shape-corner-lg);width:auto;height:56px;padding:0 20px}.md-fab--primario{background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.md-fab--tertiary{background:var(--md-sys-color-tertiary-container);color:var(--md-sys-color-on-tertiary-container)}.md-fab .md-icono{font-size:24px}.md-fab--lg .md-icono{font-size:36px}.md-fab:disabled{cursor:not-allowed;opacity:.38}.md-superficie{border-radius:var(--md-sys-shape-corner-lg);background:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface);position:relative}.md-superficie--interactiva{cursor:pointer;isolation:isolate;-webkit-tap-highlight-color:transparent;overflow:hidden}.md-tarjeta{border-radius:var(--md-sys-shape-corner-lg);padding:20px}.md-tarjeta--outlined{background:var(--md-sys-color-surface);box-shadow:inset 0 0 0 1px var(--md-sys-color-outline-variant)}.md-chip{isolation:isolate;border-radius:var(--md-sys-shape-corner-sm);min-height:32px;color:var(--md-sys-color-on-surface-variant);box-shadow:inset 0 0 0 1px var(--md-sys-color-outline-variant);font-family:var(--md-ref-typeface-plain);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);letter-spacing:var(--md-sys-typescale-label-large-tracking);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;gap:8px;padding:0 16px;display:inline-flex;position:relative;overflow:hidden}.md-chip--con-icono{padding-left:8px}.md-chip--seleccionado{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container);box-shadow:none}.md-chip:disabled{cursor:not-allowed;opacity:.38}.md-chip .md-icono{font-size:18px}.md-segmentado{border-radius:var(--md-sys-shape-corner-full);box-shadow:inset 0 0 0 1px var(--md-sys-color-outline);align-items:stretch;display:inline-flex;overflow:hidden}.md-segmentado__opcion{isolation:isolate;min-height:40px;color:var(--md-sys-color-on-surface);font-family:var(--md-ref-typeface-plain);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);letter-spacing:var(--md-sys-typescale-label-large-tracking);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:center;align-items:center;gap:8px;padding:0 16px;display:inline-flex;position:relative}.md-segmentado__opcion+.md-segmentado__opcion{box-shadow:inset 1px 0 0 var(--md-sys-color-outline)}.md-segmentado__opcion--activa{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container)}.md-segmentado__opcion:disabled{cursor:not-allowed;opacity:.38}.md-segmentado__opcion .md-icono{font-size:18px}.md-slider{touch-action:none;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;width:100%;height:44px;display:flex;position:relative}.md-slider--deshabilitado{cursor:not-allowed;opacity:.38}.md-slider__pista{border-radius:var(--md-sys-shape-corner-full);background:var(--md-sys-color-surface-container-highest);width:100%;height:16px;position:relative;overflow:hidden}.md-slider__relleno{border-radius:var(--md-sys-shape-corner-full);background:var(--md-sys-color-primary);position:absolute;inset:0 auto 0 0}.md-slider__pulgar{border-radius:var(--md-sys-shape-corner-full);background:var(--md-sys-color-primary);width:20px;height:20px;box-shadow:var(--md-sys-elevation-1), 0 0 0 4px var(--md-sys-color-surface);position:absolute;top:50%}.md-slider:focus-visible{outline:none}.md-slider:focus-visible .md-slider__pulgar{box-shadow:var(--md-sys-elevation-1), 0 0 0 4px var(--md-sys-color-surface), 0 0 0 8px var(--md-sys-color-secondary)}.md-tooltip-ancla{display:inline-flex;position:relative}.md-tooltip{z-index:40;transform-origin:bottom;border-radius:var(--md-sys-shape-corner-xs);background:var(--md-sys-color-inverse-surface);max-width:240px;color:var(--md-sys-color-inverse-on-surface);font-family:var(--md-ref-typeface-plain);box-shadow:var(--md-sys-elevation-2);pointer-events:none;white-space:normal;padding:6px 10px;font-size:12px;line-height:16px;position:absolute;bottom:calc(100% + 8px);left:50%}.ui-panel{background:var(--md-sys-color-surface-container-low);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-lg);flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex;overflow:hidden}.ui-panel__header{justify-content:space-between;align-items:center;gap:var(--md-sys-spacing-2);min-height:48px;padding:var(--md-sys-spacing-2) var(--md-sys-spacing-3);background:var(--md-sys-color-surface-container);border-block-end:1px solid var(--md-sys-color-outline-variant);flex:none;display:flex}.ui-panel__heading,.ui-panel__actions{align-items:center;min-width:0;display:flex}.ui-panel__heading{gap:var(--md-sys-spacing-2)}.ui-panel__actions{gap:var(--md-sys-spacing-1)}.ui-panel__icon{color:var(--md-sys-color-primary);flex:none;place-items:center;display:grid}.ui-panel__titles{flex-direction:column;min-width:0;display:flex}.ui-panel__eyebrow{color:var(--md-sys-color-primary);font-family:var(--md-ref-typeface-mono);letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:10px;font-weight:600;line-height:1.2;overflow:hidden}.ui-panel__title{color:var(--md-sys-color-on-surface);font:var(--md-sys-typescale-title-medium-weight) var(--md-sys-typescale-title-medium-size) / var(--md-sys-typescale-title-medium-line-height) var(--md-sys-typescale-title-medium-font);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.ui-panel__body{flex:auto;min-width:0;min-height:0;display:flex}.ui-panel__body>*{min-width:0;min-height:0}@media (width<=44rem){.ui-panel{border-radius:var(--md-sys-shape-corner-md)}}.ed-editor-codigo{border-radius:var(--md-sys-shape-corner-md);background-color:var(--md-sys-color-surface-container-low);height:100%;min-height:0;overflow:hidden}.ed-editor-codigo .cm-editor{height:100%}.ed-panel-pasos{--ed-pasos-lh:24px;--ed-pasos-pad:12px;border-radius:var(--md-sys-shape-corner-md);background-color:var(--md-sys-color-surface-container-low);border:1px solid var(--md-sys-color-outline-variant);height:100%;min-height:0;font-family:var(--md-ref-typeface-mono);font-size:var(--md-sys-typescale-code-size);display:flex;overflow:hidden}.ed-pasos-regleta{padding:var(--ed-pasos-pad) 10px var(--ed-pasos-pad) 8px;background-color:var(--md-sys-color-surface-container);min-width:2.4em;color:var(--md-sys-color-on-surface-variant);-webkit-user-select:none;user-select:none;border-right:1px solid var(--md-sys-color-outline-variant);flex-direction:column;flex:none;align-items:stretch;display:flex;overflow:hidden}.ed-pasos-numero{height:var(--ed-pasos-lh);line-height:var(--ed-pasos-lh);text-align:right;font-variant-numeric:tabular-nums;display:block}.ed-pasos-texto{min-width:0;padding:var(--ed-pasos-pad) 14px;resize:none;color:var(--md-sys-color-on-surface);font-family:inherit;font-size:inherit;line-height:var(--ed-pasos-lh);white-space:pre-wrap;overflow-wrap:anywhere;caret-color:var(--md-sys-color-primary);background-color:#0000;border:none;outline:none;flex:auto;margin:0;overflow:auto}.ed-pasos-texto::placeholder{color:var(--md-sys-color-on-surface-variant);opacity:.85}.ed-controles{background-color:var(--md-sys-color-surface-container);border-radius:var(--md-sys-shape-corner-lg);font-family:var(--md-ref-typeface-plain);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;display:flex}.ed-controles-grupo{gap:6px;display:flex}.ed-boton{appearance:none;cursor:pointer;border-radius:var(--md-sys-shape-corner-full);font-family:var(--md-ref-typeface-plain);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);letter-spacing:var(--md-sys-typescale-label-large-tracking);line-height:var(--md-sys-typescale-label-large-line-height);white-space:nowrap;box-shadow:var(--md-sys-elevation-1);transition:filter var(--md-sys-motion-duration-short) var(--md-sys-motion-easing-standard), box-shadow var(--md-sys-motion-duration-short) var(--md-sys-motion-easing-standard), transform var(--md-sys-motion-duration-short) var(--md-sys-motion-easing-emphasized);border:none;justify-content:center;align-items:center;gap:8px;padding:10px 20px;display:inline-flex}.ed-boton:hover:not(:disabled){filter:brightness(1.08);box-shadow:var(--md-sys-elevation-2)}.ed-boton:active:not(:disabled){box-shadow:var(--md-sys-elevation-0);transform:translateY(1px)scale(.98)}.ed-boton:focus-visible{outline:3px solid var(--md-sys-color-primary);outline-offset:2px}.ed-boton:disabled{cursor:not-allowed;opacity:.38;box-shadow:var(--md-sys-elevation-0)}.ed-boton--relleno{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.ed-boton--tonal{background-color:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container)}.ed-boton--contorno{color:var(--md-sys-color-primary);box-shadow:none;border:1px solid var(--md-sys-color-outline);background-color:#0000}.ed-boton--contorno:hover:not(:disabled){background-color:color-mix(in srgb, var(--md-sys-color-primary) 8%, transparent);box-shadow:none}.ed-boton--contorno:active:not(:disabled){box-shadow:none}.ed-velocidad{align-items:center;gap:8px;display:flex}.ed-velocidad-etiqueta{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-medium-size);letter-spacing:var(--md-sys-typescale-body-medium-tracking)}.ed-slider{width:140px;accent-color:var(--md-sys-color-primary);cursor:pointer}.ed-slider:focus-visible{outline:3px solid var(--md-sys-color-primary);outline-offset:3px}.ed-progreso{border-radius:var(--md-sys-shape-corner-full);background-color:var(--md-sys-color-surface-container-highest);color:var(--md-sys-color-on-surface);font-family:var(--md-ref-typeface-mono);font-size:var(--md-sys-typescale-code-size);font-variant-numeric:tabular-nums;margin-left:auto;padding:6px 14px}.workspace-surface-tabs{gap:var(--md-sys-spacing-1);padding:var(--md-sys-spacing-1);background:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-full);grid-template-columns:repeat(3,minmax(0,1fr));display:none}.workspace-surface-tabs__tab{justify-content:center;align-items:center;gap:var(--md-sys-spacing-2);min-height:40px;padding-inline:var(--md-sys-spacing-3);cursor:pointer;color:var(--md-sys-color-on-surface-variant);font:inherit;border-radius:var(--md-sys-shape-corner-full);background:0 0;border:0;font-weight:600;display:inline-flex}.workspace-surface-tabs__tab[aria-selected=true]{color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-secondary-container)}.workspace-surface-tabs__tab:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}@media (width<=72rem){.workspace-surface-tabs{display:grid}}@media (pointer:coarse){.workspace-surface-tabs__tab{min-height:44px}}@media (width<=30rem){.workspace-surface-tabs__tab{gap:var(--md-sys-spacing-1);padding-inline:var(--md-sys-spacing-2);font-size:12px}}@keyframes caja-recien-cambiada{0%{box-shadow:0 0 0 0 var(--md-sys-color-primary);transform:translateY(-2px)}60%{box-shadow:0 0 0 4px color-mix(in srgb, var(--md-sys-color-primary) 45%, transparent)}to{box-shadow:var(--md-sys-elevation-1);transform:translateY(0)}}.cajas-lista{flex-direction:column;gap:12px;display:flex}.cajas{gap:var(--md-sys-spacing-2);grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));display:grid}.caja{background:var(--md-sys-color-surface-container-high);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-md);min-width:0;box-shadow:var(--md-sys-elevation-1);display:grid;overflow:hidden}.caja--cambiada{animation:caja-recien-cambiada var(--md-sys-motion-duration-long) var(--md-sys-motion-easing-emphasized);border-color:var(--md-sys-color-primary)}.caja__etiqueta{background:var(--md-sys-color-surface-container-highest);color:var(--md-sys-color-on-surface-variant);font-family:var(--md-ref-typeface-mono);border-bottom:1px solid var(--md-sys-color-outline-variant);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:14px;display:flex}.caja__nombre{text-overflow:ellipsis;font-weight:750;overflow:hidden}.caja__tipo{text-transform:uppercase;letter-spacing:.06em;color:var(--md-sys-color-primary);font-size:10px}.caja__valor{font-family:var(--md-ref-typeface-mono);color:var(--md-sys-color-on-surface);word-break:break-word;padding:10px;font-size:14px}.caja__transicion{align-items:center;gap:var(--md-sys-spacing-2);overflow-wrap:anywhere;display:flex}.caja__valor-anterior{color:var(--md-sys-color-on-surface-variant);text-decoration:line-through}.caja__cambio{align-items:center;gap:var(--md-sys-spacing-1);color:var(--md-sys-color-primary);padding:0 10px 8px;font-size:11px;font-weight:650;display:inline-flex}.cajas__vacio,.consola__vacio{color:var(--md-sys-color-on-surface-variant);font-family:var(--md-ref-typeface-plain);font-size:var(--md-sys-typescale-body-medium-size);opacity:.7}.ambito{flex-direction:column;gap:8px;display:flex}.ambito__nombre{font-family:var(--md-ref-typeface-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--md-sys-color-on-surface-variant);font-size:11px}.consola{font-family:var(--md-ref-typeface-mono);color:var(--md-sys-color-on-surface);width:100%;font-size:13px}.consola code{font-family:var(--md-ref-typeface-mono);color:var(--md-sys-color-primary)}.consola__linea{white-space:pre-wrap;padding:2px 0}.consola__linea:before{content:"›";color:var(--md-sys-color-primary);margin-right:8px}.document-tabs{align-items:stretch;gap:var(--md-sys-spacing-1);max-width:100%;padding:var(--md-sys-spacing-1);border-radius:var(--md-sys-shape-corner-md);background:var(--md-sys-color-surface-container-high);scrollbar-width:thin;display:inline-flex;overflow-x:auto}.document-tabs__tab{justify-content:center;align-items:center;gap:var(--md-sys-spacing-2);min-height:44px;padding:0 var(--md-sys-spacing-4);border-radius:var(--md-sys-shape-corner-sm);color:var(--md-sys-color-on-surface-variant);font-family:var(--md-sys-typescale-label-large-font);font-size:var(--md-sys-typescale-label-large-size);font-weight:var(--md-sys-typescale-label-large-weight);line-height:var(--md-sys-typescale-label-large-line-height);letter-spacing:var(--md-sys-typescale-label-large-tracking);white-space:nowrap;cursor:pointer;transition:color var(--md-sys-motion-duration-short) var(--md-sys-motion-easing-standard), background var(--md-sys-motion-duration-short) var(--md-sys-motion-easing-standard);background:0 0;border:0;flex:none;display:inline-flex;position:relative}.document-tabs__tab:hover{color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container-highest)}.document-tabs__tab[aria-selected=true]{color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-secondary-container)}.document-tabs__tab:focus-visible{z-index:1;outline:3px solid var(--md-sys-color-secondary);outline-offset:2px}.document-tabs__label{align-items:center;display:inline-flex}.document-tabs__read-only{border-radius:var(--md-sys-shape-corner-full);color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-container-highest);letter-spacing:.3px;padding:2px 7px;font-size:11px;font-weight:600;line-height:16px}.document-tabs__tab[aria-selected=true] .document-tabs__read-only{color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-surface-container-high)}@media (prefers-reduced-motion:reduce){.document-tabs__tab{transition:none}}@media (width<=640px){.document-tabs{width:100%}.document-tabs__tab{flex:1 0 auto}}.document-workspace{min-width:0;height:100%;min-height:0;color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container-lowest);flex-direction:column;display:flex}.document-workspace__header{justify-content:space-between;align-items:center;gap:var(--md-sys-spacing-3);min-width:0;padding:var(--md-sys-spacing-2) var(--md-sys-spacing-3);border-bottom:1px solid var(--md-sys-color-outline-variant);background:var(--md-sys-color-surface-container);flex:none;display:flex}.document-workspace__heading{align-items:center;gap:var(--md-sys-spacing-2);min-width:0;display:flex}.document-workspace__title{color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-title-medium-font);font-size:var(--md-sys-typescale-title-medium-size);font-weight:var(--md-sys-typescale-title-medium-weight);line-height:var(--md-sys-typescale-title-medium-line-height);letter-spacing:var(--md-sys-typescale-title-medium-tracking);margin:0}.document-workspace__status{border-radius:var(--md-sys-shape-corner-full);color:var(--md-sys-color-on-tertiary-container);background:var(--md-sys-color-tertiary-container);font-family:var(--md-sys-typescale-label-large-font);letter-spacing:.3px;flex:none;padding:3px 9px;font-size:11px;font-weight:650;line-height:18px}.document-workspace__content{overscroll-behavior:contain;flex:auto;min-width:0;min-height:0;overflow:auto}@media (width<=760px){.document-workspace__header{flex-direction:column;align-items:stretch}}.exercise-library{gap:var(--md-sys-spacing-4);min-width:0;display:grid}.exercise-library__header,.exercise-library__heading,.exercise-library__exercise-copy{gap:var(--md-sys-spacing-2);min-width:0;display:grid}.exercise-library__mode{align-items:center;gap:var(--md-sys-spacing-1);width:fit-content;color:var(--md-sys-color-primary);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:750;display:inline-flex}.exercise-library__heading{grid-template-columns:auto minmax(0,1fr);align-items:start}.exercise-library__icon{width:44px;height:44px;color:var(--md-sys-color-primary);background:var(--md-sys-color-primary-container);border-radius:var(--md-sys-shape-corner-md);place-items:center;display:grid}.exercise-library h2,.exercise-library p{margin:0}.exercise-library h2{font-size:18px;line-height:1.25}.exercise-library p,.exercise-library__exercise-copy span{color:var(--md-sys-color-on-surface-variant);font-size:13px;line-height:1.45}.exercise-library__items{gap:var(--md-sys-spacing-2);margin:0;padding:0;list-style:none;display:grid}.exercise-library__exercise{gap:var(--md-sys-spacing-3);width:100%;min-height:64px;padding:var(--md-sys-spacing-3);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-md);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container-low);text-align:start;cursor:pointer;transition:background var(--md-sys-motion-duration-short) var(--md-sys-motion-easing-standard), border-color var(--md-sys-motion-duration-short) var(--md-sys-motion-easing-standard);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.exercise-library__exercise:hover{border-color:var(--md-sys-color-outline);background:var(--md-sys-color-surface-container-high)}.exercise-library__exercise:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}.exercise-library__number{color:var(--md-sys-color-primary);font-family:var(--md-ref-typeface-mono);font-size:12px}.exercise-library__exercise-copy strong{font-size:14px;line-height:1.3}@media (width<=30rem){.exercise-library__heading{grid-template-columns:1fr}}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}.jsi-diagrama{--xy-background-color:transparent;--xy-edge-stroke:var(--sym-arista,#938f99);--xy-handle-background-color:var(--sym-arista,#938f99);--xy-handle-border-color:transparent;--xy-controls-button-background-color:var(--sym-proceso-bg,#2b2930);--xy-controls-button-background-color-hover:var(--sym-decision-bg,#4a4458);--xy-controls-button-color:var(--sym-proceso-fg,#e6e0e9);--xy-controls-button-color-hover:var(--sym-io-fg,#eaddff);--xy-controls-button-border-color:var(--sym-arista,#938f99);width:100%;height:100%;min-height:240px;position:relative}.jsi-diagrama .react-flow{background:0 0}.jsi-diagrama-vacio{text-align:center;justify-content:center;align-items:center;padding:24px;display:flex}.jsi-diagrama-vacio p{max-width:34ch;color:var(--sym-proceso-fg,#e6e0e9);opacity:.7;font-family:var(--md-ref-typeface-plain,system-ui, sans-serif);margin:0;font-size:14px;line-height:1.5}.jsi-diagrama .react-flow__node{font-family:var(--md-ref-typeface-plain,system-ui, sans-serif);box-shadow:none;background:0 0;border:none;border-radius:0;padding:0}.jsi-nodo-root{--nbg:var(--sym-proceso-bg,#2b2930);--nfg:var(--sym-proceso-fg,#e6e0e9);width:100%;height:100%;position:relative}.jsi-visual{transform-origin:50%;position:absolute;inset:0}.jsi-forma{background:var(--nbg);transition:background-color .16s,box-shadow .16s,filter .16s,opacity .16s;position:absolute;inset:0}.jsi-etiqueta{text-align:center;color:var(--nfg);letter-spacing:.1px;pointer-events:none;justify-content:center;align-items:center;padding:0 16px;font-size:13px;font-weight:600;line-height:1.25;display:flex;position:absolute;inset:0}.jsi-nodo-root.jsi-ovalo{--nbg:var(--sym-ovalo-bg,#633b48);--nfg:var(--sym-ovalo-fg,#ffd8e4)}.jsi-nodo-root.jsi-proceso{--nbg:var(--sym-proceso-bg,#2b2930);--nfg:var(--sym-proceso-fg,#e6e0e9)}.jsi-nodo-root.jsi-decision{--nbg:var(--sym-decision-bg,#4a4458);--nfg:var(--sym-decision-fg,#e8def8)}.jsi-nodo-root.jsi-entrada-salida{--nbg:var(--sym-io-bg,#4f378b);--nfg:var(--sym-io-fg,#eaddff)}.jsi-nodo-root.jsi-activo{--nbg:var(--sym-activo-bg,#d0bcff);--nfg:var(--sym-activo-fg,#381e72)}.jsi-ovalo .jsi-forma{border-radius:999px}.jsi-proceso .jsi-forma{border:1.5px solid var(--sym-proceso-borde,#938f99);border-radius:12px}.jsi-decision .jsi-forma{clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%)}.jsi-entrada-salida .jsi-forma{clip-path:polygon(22% 0%,100% 0%,78% 100%,0% 100%)}.jsi-activo.jsi-ovalo .jsi-forma,.jsi-activo.jsi-proceso .jsi-forma{box-shadow:var(--sym-activo-halo,0 0 0 3px #d0bcff, 0 0 18px 2px #d0bcff80)}.jsi-activo.jsi-proceso .jsi-forma{border-color:#0000}.jsi-activo.jsi-decision .jsi-forma,.jsi-activo.jsi-entrada-salida .jsi-forma{filter:drop-shadow(0 0 7px var(--sym-arista-activa,#d0bcff)) drop-shadow(0 0 2px var(--sym-arista-activa,#d0bcff))}.jsi-visitado .jsi-forma{opacity:.5}.jsi-visitado .jsi-etiqueta{opacity:.6}.jsi-visitado.jsi-ovalo .jsi-forma,.jsi-visitado.jsi-proceso .jsi-forma{box-shadow:0 0 0 1.5px var(--sym-visitado-borde,#49454f)}.jsi-visitado.jsi-proceso .jsi-forma{border-color:var(--sym-visitado-borde,#49454f)}.jsi-visitado.jsi-decision .jsi-forma,.jsi-visitado.jsi-entrada-salida .jsi-forma{filter:drop-shadow(0 0 .5px var(--sym-visitado-borde,#49454f))}.jsi-diagrama .react-flow__handle{background:var(--sym-arista,#938f99);pointer-events:none;border:none;width:7px;min-width:7px;height:7px;min-height:7px}.jsi-diagrama .react-flow__controls{box-shadow:var(--md-sys-elevation-2,0 1px 2px #0000004d, 0 2px 6px 2px #00000026);border-radius:10px;overflow:hidden}.jsi-diagrama .react-flow__controls-button{border-bottom:1px solid var(--sym-arista,#938f99)}.jsi-diagrama .react-flow__controls-button svg{fill:currentColor}@media (pointer:coarse){.jsi-diagrama .react-flow__controls{margin:var(--md-sys-spacing-2)}.jsi-diagrama .react-flow__controls-button{width:44px;height:44px}}.prediction-panel{gap:var(--md-sys-spacing-3);min-width:0;padding:var(--md-sys-spacing-4);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-md);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container-lowest);margin:0;display:grid}.prediction-panel legend{padding-inline:var(--md-sys-spacing-1);color:var(--md-sys-color-primary);font-size:var(--md-sys-typescale-label-large-size);font-weight:700}.prediction-panel__intro,.prediction-panel__hint,.prediction-panel__status,.prediction-panel__comparison p{color:var(--md-sys-color-on-surface-variant);margin:0;font-size:13px;line-height:1.45}.prediction-panel__fields,.prediction-panel__field,.prediction-panel__review,.prediction-panel__comparisons,.prediction-panel__validation{gap:var(--md-sys-spacing-3);min-width:0;display:grid}.prediction-panel__field{gap:var(--md-sys-spacing-1);font-size:13px;font-weight:600;line-height:1.4}.prediction-panel__field input{width:100%;min-height:44px;padding:var(--md-sys-spacing-2) var(--md-sys-spacing-3);border:1px solid var(--md-sys-color-outline);border-radius:var(--md-sys-shape-corner-sm);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface);font:inherit}.prediction-panel__field input:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}.prediction-panel__primary,.prediction-panel__edit{justify-content:center;align-items:center;gap:var(--md-sys-spacing-2);border-radius:var(--md-sys-shape-corner-full);min-height:44px;font:inherit;cursor:pointer;font-weight:700;display:inline-flex}.prediction-panel__primary{width:100%;padding-inline:var(--md-sys-spacing-4);color:var(--md-sys-color-on-primary);background:var(--md-sys-color-primary);border:0}.prediction-panel__primary:disabled{color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-container-highest);cursor:not-allowed;opacity:.72}.prediction-panel__primary:focus-visible,.prediction-panel__edit:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}.prediction-panel__saved-header,.prediction-panel__saved-header>div,.prediction-panel__comparison-title,.prediction-panel__status{align-items:center;gap:var(--md-sys-spacing-2);display:flex}.prediction-panel__saved-header{justify-content:space-between}.prediction-panel__saved-header>div{color:var(--md-sys-color-primary)}.prediction-panel__edit{padding-inline:var(--md-sys-spacing-3);border:1px solid var(--md-sys-color-outline-variant);color:var(--md-sys-color-on-surface);background:0 0}.prediction-panel__comparison{gap:var(--md-sys-spacing-2);padding-block:var(--md-sys-spacing-3);border-block-end:1px solid var(--md-sys-color-outline-variant);display:grid}.prediction-panel__comparison-title{color:var(--md-sys-color-on-surface);align-items:flex-start;font-size:13px;line-height:1.4}.prediction-panel__comparison dl{gap:var(--md-sys-spacing-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.prediction-panel__comparison dl>div{min-width:0;padding:var(--md-sys-spacing-2);border-radius:var(--md-sys-shape-corner-sm);background:var(--md-sys-color-surface-container-high);gap:2px;display:grid}.prediction-panel__comparison dt{color:var(--md-sys-color-on-surface-variant);font-size:11px}.prediction-panel__comparison dd{overflow-wrap:anywhere;font-family:var(--md-ref-typeface-mono);margin:0;font-size:13px}.prediction-panel__validation ul{gap:var(--md-sys-spacing-2);margin:0;padding:0;list-style:none;display:grid}.prediction-panel__validation li{gap:var(--md-sys-spacing-2);color:var(--md-sys-color-error);grid-template-columns:auto minmax(0,1fr);align-items:start;font-size:13px;line-height:1.4;display:grid}.prediction-panel__validation li[data-passed=true]{color:var(--md-sys-color-primary)}@media (width<=30rem){.prediction-panel{padding:var(--md-sys-spacing-3)}.prediction-panel__comparison dl{grid-template-columns:1fr}}.guided-exercise{align-content:start;gap:var(--md-sys-spacing-5);min-width:0;color:var(--md-sys-color-on-surface);display:grid}.guided-exercise__back{align-items:center;gap:var(--md-sys-spacing-1);width:fit-content;min-height:44px;padding-inline:var(--md-sys-spacing-2);border-radius:var(--md-sys-shape-corner-sm);color:var(--md-sys-color-on-surface-variant);font:inherit;cursor:pointer;background:0 0;border:0;font-weight:650;display:inline-flex}.guided-exercise__back:hover{color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container-high)}.guided-exercise__back:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}.guided-exercise__header{gap:var(--md-sys-spacing-2);display:grid}.guided-exercise__eyebrow,.guided-exercise__title,.guided-exercise__objective,.guided-exercise__description,.guided-exercise__explanation{margin:0}.guided-exercise__eyebrow{color:var(--md-sys-color-primary);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:750}.guided-exercise__title{color:var(--md-sys-color-on-surface);font-family:var(--md-sys-typescale-headline-medium-font);font-size:clamp(18px,3vw,24px);font-weight:var(--md-sys-typescale-headline-medium-weight);overflow-wrap:anywhere;line-height:1.2}.guided-exercise__objective{gap:var(--md-sys-spacing-1);color:var(--md-sys-color-on-surface);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height);display:grid}.guided-exercise__objective-label{color:var(--md-sys-color-primary);font-size:12px;font-weight:700}.guided-exercise__description,.guided-exercise__explanation{color:var(--md-sys-color-on-surface-variant);font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height)}.guided-exercise__criteria{gap:var(--md-sys-spacing-2);display:grid}.guided-exercise__section-title{align-items:center;gap:var(--md-sys-spacing-2);color:var(--md-sys-color-on-surface);display:flex}.guided-exercise__section-title h3{margin:0;font-size:14px}.guided-exercise__section-title>span{color:var(--md-sys-color-on-surface-variant);font-family:var(--md-ref-typeface-mono);margin-inline-start:auto;font-size:11px}.guided-exercise__criteria ul{gap:var(--md-sys-spacing-2);margin:0;padding:0;list-style:none;display:grid}.guided-exercise__criteria li{gap:var(--md-sys-spacing-2);color:var(--md-sys-color-on-surface-variant);grid-template-columns:auto minmax(0,1fr);align-items:start;font-size:13px;line-height:1.4;display:grid}.guided-exercise__criteria li[data-passed=true]{color:var(--md-sys-color-primary)}.guided-exercise__criteria li[data-passed=false]{color:var(--md-sys-color-error)}.guided-exercise__explanation{border-inline-start:2px solid var(--md-sys-color-primary);padding-inline-start:var(--md-sys-spacing-3)}.guided-exercise__hints,.guided-exercise__attempts{gap:var(--md-sys-spacing-2);min-width:0;display:grid}.guided-exercise__hints>ol,.guided-exercise__attempt-list>ol,.guided-exercise__recurring-issues ul{gap:var(--md-sys-spacing-2);margin:0;padding:0;list-style:none;display:grid}.guided-exercise__hints>ol>li,.guided-exercise__recurring-issues,.guided-exercise__attempt-list>ol>li{padding:var(--md-sys-spacing-3);background:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-md)}.guided-exercise__hints li strong,.guided-exercise__recurring-issues>strong{color:var(--md-sys-color-on-surface);font-size:13px}.guided-exercise__hints li p,.guided-exercise__hint-empty,.guided-exercise__attempt-list li p{margin:var(--md-sys-spacing-1) 0 0;color:var(--md-sys-color-on-surface-variant);font-size:13px;line-height:1.45}.guided-exercise__hint-button{justify-content:center;align-items:center;gap:var(--md-sys-spacing-1);width:fit-content;min-height:40px;padding-inline:var(--md-sys-spacing-3);color:var(--md-sys-color-on-secondary-container);font:inherit;cursor:pointer;background:var(--md-sys-color-secondary-container);border-radius:var(--md-sys-shape-corner-full);border:0;font-size:13px;font-weight:700;display:inline-flex}.guided-exercise__hint-button:disabled{cursor:default;opacity:.55}.guided-exercise__hint-button:focus-visible,.guided-exercise__attempt-list>summary:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}.guided-exercise__solution-state{align-items:flex-start;gap:var(--md-sys-spacing-2);color:var(--md-sys-color-on-surface-variant);margin:0;font-size:12px;line-height:1.4;display:flex}.guided-exercise__solution-state[data-unlocked=true]{color:var(--md-sys-color-primary)}.guided-exercise__recurring-issues{gap:var(--md-sys-spacing-2);background:var(--md-sys-color-error-container);border-color:var(--md-sys-color-error);display:grid}.guided-exercise__recurring-issues li{gap:var(--md-sys-spacing-2);color:var(--md-sys-color-on-error-container);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;font-size:12px;display:grid}.guided-exercise__recurring-issues small{white-space:nowrap}.guided-exercise__attempt-list>summary{cursor:pointer;min-height:40px;color:var(--md-sys-color-primary);font-size:13px;font-weight:700}.guided-exercise__attempt-list[open]>summary{margin-block-end:var(--md-sys-spacing-2)}.guided-exercise__attempt-list>ol>li>div{gap:var(--md-sys-spacing-2);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.guided-exercise__attempt-list time{color:var(--md-sys-color-on-surface-variant);grid-column:2;font-size:11px}.guided-exercise__attempt-list li[data-passed=true]{border-color:var(--md-sys-color-primary)}@media (width<=640px){.guided-exercise{gap:var(--md-sys-spacing-4)}}@media (pointer:coarse){.guided-exercise__hint-button,.guided-exercise__attempt-list>summary{min-height:44px}}.narration-panel{gap:var(--md-sys-spacing-4);grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));width:100%;display:grid}.narration-panel__system,.narration-panel__student{align-content:start;gap:var(--md-sys-spacing-2);min-width:0;display:grid}.narration-panel__student{border-inline-start:1px solid var(--md-sys-color-outline-variant);padding-inline-start:var(--md-sys-spacing-4)}.narration-panel__eyebrow{color:var(--md-sys-color-primary);font-family:var(--md-ref-typeface-mono);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600}.narration-panel__message{color:var(--md-sys-color-on-surface);margin:0;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.55}.narration-panel__student label{color:var(--md-sys-color-primary);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:750}.narration-panel__student textarea{width:100%;min-height:76px;padding:var(--md-sys-spacing-3);resize:vertical;color:var(--md-sys-color-on-surface);font:inherit;background:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-md);font-size:16px;line-height:1.45}.narration-panel__student textarea:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:1px}.narration-panel__student textarea::placeholder,.narration-panel__student small{color:var(--md-sys-color-on-surface-variant)}.narration-panel__student small{font-size:11px}@media (width<=44rem){.narration-panel__student{border-block-start:1px solid var(--md-sys-color-outline-variant);border-inline-start:0;padding-block-start:var(--md-sys-spacing-3);padding-inline-start:0}}.output-dock{background:var(--md-sys-color-surface-container-lowest);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-lg);flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex;overflow:hidden}.output-dock__header{justify-content:space-between;align-items:center;gap:var(--md-sys-spacing-2);min-height:48px;padding-inline:var(--md-sys-spacing-2);background:var(--md-sys-color-surface-container);border-block-end:1px solid var(--md-sys-color-outline-variant);flex:none;display:flex}.output-dock__tabs{scrollbar-width:none;align-self:stretch;align-items:stretch;min-width:0;display:flex;overflow-x:auto}.output-dock__tabs::-webkit-scrollbar{display:none}.output-dock__tab,.output-dock__close{align-items:center;gap:var(--md-sys-spacing-1);cursor:pointer;min-height:40px;color:var(--md-sys-color-on-surface-variant);font:inherit;background:0 0;border:0;font-size:13px;font-weight:600;display:inline-flex}@media (width<=32rem){.output-dock__tab{padding-inline:var(--md-sys-spacing-2)}.output-dock__close-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.output-dock__tab{align-items:center;gap:var(--md-sys-spacing-1);padding-inline:var(--md-sys-spacing-3);white-space:nowrap;display:inline-flex;position:relative}.output-dock__tab:after{inset-inline:var(--md-sys-spacing-3);content:"";border-radius:var(--md-sys-shape-corner-full);background:0 0;height:2px;position:absolute;inset-block-end:0}.output-dock__tab[aria-selected=true]{color:var(--md-sys-color-primary)}.output-dock__tab[aria-selected=true]:after{background:var(--md-sys-color-primary)}.output-dock__tab:focus-visible,.output-dock__close:focus-visible{z-index:1;outline:2px solid var(--md-sys-color-primary);outline-offset:-2px}.output-dock__close{padding-inline:var(--md-sys-spacing-2);border-radius:var(--md-sys-shape-corner-full);flex:none}.output-dock__close:hover{color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container-high)}.output-dock__badge{min-width:20px;height:20px;color:var(--md-sys-color-on-primary);font-family:var(--md-ref-typeface-mono);background:var(--md-sys-color-primary);border-radius:var(--md-sys-shape-corner-full);place-items:center;padding-inline:5px;font-size:10px;display:inline-grid}.output-dock__body{min-width:0;min-height:0;padding:var(--md-sys-spacing-3);overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;overflow:auto}.output-dock__body[hidden]{display:none}@media (pointer:coarse){.output-dock__tab,.output-dock__close{min-height:44px}}.planning-panel{gap:var(--md-sys-spacing-1);flex-direction:column;min-height:180px;display:flex}.planning-panel__label{color:var(--md-sys-color-on-surface);font-size:14px;font-weight:650}.planning-panel__help{margin:0 0 var(--md-sys-spacing-2);color:var(--md-sys-color-on-surface-variant);font-size:13px;line-height:1.45}.planning-panel__input{width:100%;min-height:132px;padding:var(--md-sys-spacing-3);resize:vertical;color:var(--md-sys-color-on-surface);font-family:var(--md-ref-typeface-plain);caret-color:var(--md-sys-color-primary);background:var(--md-sys-color-surface-container-lowest);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-md);flex:auto;font-size:14px;line-height:1.55}.planning-panel__input::placeholder{color:var(--md-sys-color-on-surface-variant);opacity:.72}.planning-panel__input:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}@media (width<=44rem){.planning-panel{min-height:220px}.planning-panel__input{resize:none;min-height:168px}}.variables-panel{align-content:start;gap:var(--md-sys-spacing-4);display:grid}.variables-panel__call-stack{align-items:center;gap:var(--md-sys-spacing-2);min-width:0;padding:var(--md-sys-spacing-3);background:var(--md-sys-color-surface-container-low);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-md);grid-template-columns:auto minmax(0,1fr);display:grid}.variables-panel__call-stack>header{align-items:center;gap:var(--md-sys-spacing-2);color:var(--md-sys-color-primary);display:flex}.variables-panel__call-stack h3{letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:12px;font-weight:750}.variables-panel__call-stack ol{scrollbar-width:thin;align-items:center;min-width:0;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.variables-panel__call-stack li{align-items:center;gap:var(--md-sys-spacing-1);min-height:32px;padding-inline:var(--md-sys-spacing-2);color:var(--md-sys-color-on-surface-variant);font-family:var(--md-ref-typeface-mono);flex:none;font-size:12px;display:inline-flex}.variables-panel__call-stack li[aria-current=step]{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container);border-radius:var(--md-sys-shape-corner-full)}.variables-panel__call-stack li span{text-overflow:ellipsis;white-space:nowrap;max-width:28ch;overflow:hidden}.variables-panel__call-stack small{font-family:var(--md-ref-typeface-brand);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:700}.variables-panel__main-label--compact{display:none}.variables-panel__scope{gap:var(--md-sys-spacing-2);display:grid}.variables-panel__scope h3{color:var(--md-sys-color-primary);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11px;font-weight:750}.variables-panel__grid{gap:var(--md-sys-spacing-2);grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));display:grid}.variables-panel__card{align-content:start;gap:var(--md-sys-spacing-2);min-width:0;padding:var(--md-sys-spacing-3);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-md);display:grid}.variables-panel__card--changed{background:var(--md-sys-color-secondary-container);border-color:var(--md-sys-color-secondary)}.variables-panel__card>header{justify-content:space-between;align-items:baseline;gap:var(--md-sys-spacing-2);display:flex}.variables-panel__card>header strong{overflow-wrap:anywhere;font-family:var(--md-ref-typeface-mono);font-size:14px}.variables-panel__card>header span{color:var(--md-sys-color-on-surface-variant);font-size:11px}.variables-panel__value{min-width:0;font-family:var(--md-ref-typeface-mono);overflow-wrap:anywhere;font-size:13px}.variables-panel__change-label,.value-tree__changed{align-items:center;gap:var(--md-sys-spacing-1);width:fit-content;color:var(--md-sys-color-on-secondary-container);font-size:11px;font-weight:700;display:inline-flex}.variables-panel__transition{align-items:center;gap:var(--md-sys-spacing-2);flex-wrap:wrap;display:flex}.variables-panel__previous-value{color:var(--md-sys-color-on-surface-variant);text-decoration:line-through}.value-tree>summary{cursor:pointer;min-height:28px;color:var(--md-sys-color-primary);font-weight:700}.value-tree>summary:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}.value-tree__items,.value-tree__methods,.value-tree__properties{gap:var(--md-sys-spacing-1);padding:var(--md-sys-spacing-2) 0 0 var(--md-sys-spacing-4);margin:0;display:grid}.value-tree__items li,.value-tree__property{gap:var(--md-sys-spacing-2);grid-template-columns:minmax(52px,auto) minmax(0,1fr);align-items:start;display:grid}.value-tree__key,.value-tree__property dt{color:var(--md-sys-color-on-surface-variant)}.value-tree__property dt{gap:var(--md-sys-spacing-1);flex-wrap:wrap;display:flex}.value-tree__property dd{min-width:0;margin:0}.value-tree__property--changed,.value-tree__item--changed{padding:var(--md-sys-spacing-1);background:var(--md-sys-color-secondary-container);border-radius:var(--md-sys-shape-corner-sm)}.variables-panel__empty{color:var(--md-sys-color-on-surface-variant);margin:0}@media (pointer:coarse){.variables-panel__call-stack li{min-height:44px}.value-tree>summary{align-items:center;min-height:44px;display:flex}}@media (width<=32rem){.variables-panel__call-stack{padding:var(--md-sys-spacing-2);grid-template-columns:auto minmax(0,1fr)}.variables-panel__call-stack h3{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.variables-panel__call-stack li{min-height:36px;padding-inline:var(--md-sys-spacing-1);font-size:11px}.variables-panel__call-stack small,.variables-panel__main-label{display:none}.variables-panel__main-label--compact{display:inline}}.lab-page{gap:var(--md-sys-spacing-3);width:100%;height:var(--lab-viewport-height,100dvh);padding:max(var(--md-sys-spacing-3), env(safe-area-inset-top)) max(var(--md-sys-spacing-3), env(safe-area-inset-right)) max(var(--md-sys-spacing-3), env(safe-area-inset-bottom)) max(var(--md-sys-spacing-3), env(safe-area-inset-left));grid-template-rows:auto minmax(0,1fr);display:grid;position:relative;overflow:hidden}.lab-page__app-bar{justify-content:space-between;align-items:center;gap:var(--md-sys-spacing-4);min-width:0;display:flex}.lab-page__brand{align-items:center;gap:var(--md-sys-spacing-3);flex:0 auto;min-width:220px;display:flex}.lab-page__logo{width:44px;height:44px;padding:var(--md-sys-spacing-1);background:var(--md-sys-color-primary);border-radius:var(--md-sys-shape-corner-lg);box-shadow:var(--md-sys-elevation-2);flex:0 0 44px;place-items:center;display:grid}.lab-page__logo img{width:100%;height:100%;display:block}.lab-page__brand-copy{min-width:0}.lab-page__brand-copy h1,.lab-page__brand-copy p{margin:0}.lab-page__brand-copy h1{color:var(--md-sys-color-on-surface);font-size:22px;line-height:1.15}.lab-page__brand-copy p{max-width:58ch;color:var(--md-sys-color-on-surface-variant);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.35;overflow:hidden}.lab-page__brand-copy .lab-page__subtitle--active{color:var(--md-sys-color-primary);font-family:var(--md-ref-typeface-mono)}.lab-page__controls-scroll{overscroll-behavior-inline:contain;scrollbar-width:thin;min-width:0;overflow-x:auto}.lab-page__main,.lab-page__workbench,.lab-page__desktop,.lab-page__compact,.lab-page__compact-surfaces,.lab-page__compact-surfaces>div,.lab-page__resizable-panel{min-width:0;min-height:0}.lab-page__main,.lab-page__workbench,.lab-page__desktop,.lab-page__compact-surfaces>div,.lab-page__resizable-panel{width:100%;height:100%}.lab-page__resizable-panel{display:flex}.lab-page__compact{gap:var(--md-sys-spacing-2);grid-template-rows:auto minmax(0,1fr);width:100%;height:100%;display:grid}.lab-page__compact-surfaces{overflow:hidden}.lab-page__guide-scroll{gap:var(--md-sys-spacing-4);width:100%;height:100%;overscroll-behavior:contain;scrollbar-gutter:stable;flex-direction:column;padding-inline-end:var(--md-sys-spacing-1);display:flex;overflow:hidden auto}.lab-page__desktop-guide{width:100%;min-width:0;height:100%;min-height:0;display:flex}.lab-page__guide-rail{align-items:center;gap:var(--md-sys-spacing-3);min-width:0;padding:var(--md-sys-spacing-4) var(--md-sys-spacing-2);cursor:pointer;color:var(--md-sys-color-primary);font:inherit;background:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-lg);flex-direction:column;flex:auto;font-weight:700;display:flex}.lab-page__guide-rail span{letter-spacing:.05em;writing-mode:vertical-rl}.lab-page__guide-rail:hover{background:var(--md-sys-color-secondary-container)}.lab-page__guide-rail:focus-visible,.lab-page__guide-header button:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}.lab-page__guide-expanded{gap:var(--md-sys-spacing-3);grid-template-rows:auto minmax(0,1fr);width:100%;min-width:0;height:100%;min-height:0;display:grid}.lab-page__guide-expanded[hidden],.lab-page__guide-rail[hidden]{display:none}.lab-page__guide-header{min-height:44px;padding-inline:var(--md-sys-spacing-3);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-lg);justify-content:space-between;align-items:center;display:flex}.lab-page__guide-header>div,.lab-page__guide-header button{justify-content:center;align-items:center;display:inline-flex}.lab-page__guide-header>div{gap:var(--md-sys-spacing-2)}.lab-page__guide-header button{cursor:pointer;width:40px;height:40px;color:var(--md-sys-color-on-surface-variant);border-radius:var(--md-sys-shape-corner-full);background:0 0;border:0}.lab-page__guide-header button:hover{color:var(--md-sys-color-on-secondary-container);background:var(--md-sys-color-secondary-container)}.lab-page__code-surface,.lab-page__editor{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex}.lab-page__code-tools{align-items:center;gap:var(--md-sys-spacing-3);min-height:44px;padding:var(--md-sys-spacing-1) var(--md-sys-spacing-3);color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-container-low);border-block-end:1px solid var(--md-sys-color-outline-variant);flex:none;display:flex}.lab-page__format-button{justify-content:center;align-items:center;gap:var(--md-sys-spacing-2);min-height:36px;padding-inline:var(--md-sys-spacing-3);cursor:pointer;color:var(--md-sys-color-primary);font:inherit;border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-full);background:0 0;flex:none;font-size:12px;font-weight:700;display:inline-flex}.lab-page__format-button:hover{background:var(--md-sys-color-primary-container)}.lab-page__format-button:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}.lab-page__format-status{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.lab-page__read-only-bar{justify-content:space-between;align-items:center;gap:var(--md-sys-spacing-3);padding:var(--md-sys-spacing-2) var(--md-sys-spacing-3);color:var(--md-sys-color-on-tertiary-container);background:var(--md-sys-color-tertiary-container);flex:none;font-size:12px;line-height:1.4;display:flex}.lab-page__copy-button{justify-content:center;align-items:center;gap:var(--md-sys-spacing-2);min-height:36px;padding-inline:var(--md-sys-spacing-3);cursor:pointer;color:var(--md-sys-color-on-primary);font:inherit;background:var(--md-sys-color-primary);border-radius:var(--md-sys-shape-corner-full);border:0;flex:none;font-weight:650;display:inline-flex}.lab-page__copy-button:focus-visible{outline:2px solid var(--md-sys-color-on-tertiary-container);outline-offset:2px}.lab-page__flow-panel .ui-panel__body{background:var(--md-sys-color-surface-container-lowest);overflow:hidden}.lab-page .document-workspace{border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-lg);flex:auto;width:100%;min-width:0;overflow:hidden}.lab-page .document-workspace__content{display:flex;overflow:hidden}.lab-page__notices{z-index:20;inset-block-start:76px;inset-inline:var(--md-sys-spacing-3);gap:var(--md-sys-spacing-2);pointer-events:none;max-height:min(40dvh,280px);display:grid;position:absolute;overflow:auto}.lab-page__notice{width:min(720px,100%);padding:var(--md-sys-spacing-3) var(--md-sys-spacing-4);pointer-events:auto;border-radius:var(--md-sys-shape-corner-md);box-shadow:var(--md-sys-elevation-3);margin-inline:auto}.lab-page__notice--error{color:var(--md-sys-color-on-error-container);background:var(--md-sys-color-error-container);border:1px solid var(--md-sys-color-error)}.lab-page__notice--limit{color:var(--md-sys-color-on-tertiary-container);background:var(--md-sys-color-tertiary-container);border:1px solid var(--md-sys-color-tertiary)}.lab-page__separator{background:0 0;flex:none;position:relative}.lab-page__separator--vertical{width:var(--md-sys-spacing-3)}.lab-page__separator--horizontal{height:var(--md-sys-spacing-3)}.lab-page__separator:after{content:"";background:var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-full);transition:background var(--md-sys-motion-duration-short) var(--md-sys-motion-easing-standard);position:absolute}.lab-page__separator--vertical:after{inset-block:var(--md-sys-spacing-2);width:2px;inset-inline-start:calc(50% - 1px)}.lab-page__separator--horizontal:after{inset-inline:var(--md-sys-spacing-2);height:2px;inset-block-start:calc(50% - 1px)}.lab-page__separator[data-separator=hover]:after,.lab-page__separator[data-separator=active]:after,.lab-page__separator[data-separator=focus]:after{background:var(--md-sys-color-primary)}.lab-page__separator:focus-visible{outline:none}@media (width<=72rem){.lab-page__app-bar{align-items:stretch;gap:var(--md-sys-spacing-2);flex-direction:column}.lab-page__controls-scroll .ed-controles{width:max-content;min-width:100%}.lab-page__notices{inset-block-start:132px}}@media (width<=44rem){.lab-page{gap:var(--md-sys-spacing-2);padding:max(var(--md-sys-spacing-2), env(safe-area-inset-top)) max(var(--md-sys-spacing-2), env(safe-area-inset-right)) max(var(--md-sys-spacing-2), env(safe-area-inset-bottom)) max(var(--md-sys-spacing-2), env(safe-area-inset-left))}.lab-page__brand{min-width:0}.lab-page__logo{border-radius:var(--md-sys-shape-corner-md);flex-basis:40px;width:40px;height:40px}.lab-page__brand-copy p{display:none}.lab-page__controls-scroll{overflow:visible}.lab-page__controls-scroll .ed-controles{gap:var(--md-sys-spacing-1);width:100%;min-width:0;padding:var(--md-sys-spacing-1);border-radius:var(--md-sys-shape-corner-md);grid-template-columns:repeat(5,minmax(44px,1fr)) minmax(52px,1fr);display:grid}.lab-page__controls-scroll .ed-controles-grupo{display:contents}.lab-page__controls-scroll .ed-boton{min-width:0;min-height:44px;box-shadow:none;padding:0}.lab-page__controls-scroll .ed-boton__label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lab-page__controls-scroll .ed-velocidad{display:none}.lab-page__controls-scroll .ed-progreso{min-width:0;min-height:44px;padding:0 var(--md-sys-spacing-1);place-items:center;margin:0;font-size:12px;display:grid}.lab-page__read-only-bar{flex-direction:column;align-items:stretch}.lab-page__copy-button{min-height:44px}.lab-page__notices{inset-block-start:124px;inset-inline:var(--md-sys-spacing-2)}.lab-page .document-workspace,.output-dock{border-radius:var(--md-sys-shape-corner-md)}.lab-page .document-workspace__header{min-height:40px;padding:var(--md-sys-spacing-1) var(--md-sys-spacing-2)}.lab-page .document-workspace__title{font-size:14px}.lab-page .output-dock__body{padding:var(--md-sys-spacing-2)}.lab-page .ed-editor-codigo .cm-content,.lab-page .planning-panel__input{font-size:16px}}@media (width<=72rem) and (height<=38.75rem){.lab-page{gap:var(--md-sys-spacing-1);padding:max(var(--md-sys-spacing-1), env(safe-area-inset-top)) max(var(--md-sys-spacing-2), env(safe-area-inset-right)) max(var(--md-sys-spacing-1), env(safe-area-inset-bottom)) max(var(--md-sys-spacing-2), env(safe-area-inset-left))}.lab-page__app-bar{align-items:center;gap:var(--md-sys-spacing-2);grid-template-columns:auto minmax(0,1fr);display:grid}.lab-page__brand{gap:var(--md-sys-spacing-2);min-width:0}.lab-page__logo{border-radius:var(--md-sys-shape-corner-sm);flex-basis:36px;width:36px;height:36px;font-size:16px}.lab-page__brand-copy h1{font-size:18px}.lab-page__controls-scroll{overflow:visible}.lab-page__controls-scroll .ed-controles{gap:var(--md-sys-spacing-1);width:100%;min-width:0;padding:var(--md-sys-spacing-1);border-radius:var(--md-sys-shape-corner-md);grid-template-columns:repeat(5,minmax(44px,1fr)) minmax(52px,1fr);display:grid}.lab-page__controls-scroll .ed-controles-grupo{display:contents}.lab-page__controls-scroll .ed-boton{min-width:0;min-height:44px;box-shadow:none;padding:0}.lab-page__controls-scroll .ed-boton__label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lab-page__controls-scroll .ed-velocidad{display:none}.lab-page__controls-scroll .ed-progreso{min-height:44px;padding:0 var(--md-sys-spacing-1);place-items:center;margin:0;font-size:12px;display:grid}.lab-page__notices{inset-block-start:56px}}@media (height<=38.75rem){.lab-page__brand-copy p,.ed-velocidad{display:none}}@media (prefers-reduced-motion:reduce){.lab-page__separator:after{transition:none}}@media (pointer:coarse){.lab-page__copy-button,.lab-page__format-button{min-height:44px}.lab-page__guide-header button{width:44px;height:44px}}body.landing-active,body.landing-active #root,body.landing-active .md-raiz{height:auto;min-height:100%;overflow:visible}body.landing-active{background:var(--md-sys-color-surface-container-lowest)}.landing-page{--landing-inline:clamp(var(--md-sys-spacing-4), 3vw, 48px);min-height:100dvh;color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container-lowest);overflow:clip}.landing-page a{color:inherit;text-decoration:none}.landing-nav{z-index:20;align-items:center;gap:var(--md-sys-spacing-6);min-height:80px;padding-inline:var(--landing-inline);color:var(--md-sys-color-on-surface);grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr);display:grid;position:absolute;inset-block-start:0;inset-inline:0}.landing-nav__brand{justify-self:start;align-items:center;gap:var(--md-sys-spacing-3);width:max-content;font-size:var(--landing-type-brand);letter-spacing:-.02em;display:inline-flex}.landing-nav__brand>span{width:40px;height:40px;padding:calc(var(--md-sys-spacing-1) / 2);background:var(--md-sys-color-primary);border-radius:var(--md-sys-shape-corner-md);place-items:center;display:grid;overflow:hidden}.landing-nav__brand img,.landing-preview__brand img,.landing-brand-mark{width:100%;height:100%;display:block}.landing-brand-mark__route{stroke:var(--md-sys-color-tertiary);stroke-dasharray:900;stroke-dashoffset:900px;animation:landing-brand-route-draw .76s .18s var(--md-sys-motion-easing-emphasized) both}.landing-brand-mark__bracket{stroke:var(--md-sys-color-on-primary);transform-box:view-box;will-change:transform}.landing-brand-mark__bracket--left{animation:landing-brand-open-left .88s var(--md-sys-motion-easing-emphasized) both, landing-brand-drift-left 3.4s .88s var(--md-sys-motion-easing-emphasized) infinite}.landing-brand-mark__bracket--right{animation:landing-brand-open-right .88s var(--md-sys-motion-easing-emphasized) both, landing-brand-drift-right 3.4s .88s var(--md-sys-motion-easing-emphasized) infinite}.landing-brand-mark__nodes{fill:var(--md-sys-color-tertiary);stroke:var(--md-sys-color-on-primary);opacity:0;animation:landing-brand-nodes-in .32s .62s var(--md-sys-motion-easing-emphasized) both}@keyframes landing-brand-open-left{0%{transform:translate(18%)}72%{transform:translate(-6%)}to{transform:translate(-4%)}}@keyframes landing-brand-open-right{0%{transform:translate(-18%)}72%{transform:translate(6%)}to{transform:translate(4%)}}@keyframes landing-brand-drift-left{0%,to{transform:translate(-4%)}50%{transform:translate(-5.5%)}}@keyframes landing-brand-drift-right{0%,to{transform:translate(4%)}50%{transform:translate(5.5%)}}@keyframes landing-brand-route-draw{to{stroke-dashoffset:0}}@keyframes landing-brand-nodes-in{to{opacity:1}}.landing-nav__links{justify-content:center;align-items:center;gap:var(--md-sys-spacing-6);color:var(--md-sys-color-on-surface-variant);font-size:var(--landing-type-label);font-weight:600;display:flex}.landing-nav__links a,.landing-footer>a:last-child{padding-block:var(--md-sys-spacing-2);position:relative}.landing-nav__links a:after,.landing-footer>a:last-child:after{content:"";background:var(--md-sys-color-primary);border-radius:var(--md-sys-shape-corner-full);transform-origin:100%;height:2px;transition:transform var(--md-sys-motion-duration-medium) var(--md-sys-motion-easing-emphasized);position:absolute;inset-block-end:0;inset-inline:0;transform:scaleX(0)}.landing-nav__links a:hover:after,.landing-footer>a:last-child:hover:after{transform-origin:0;transform:scaleX(1)}.landing-nav__links a:focus-visible,.landing-nav__brand:focus-visible,.landing-footer a:focus-visible{outline:3px solid var(--md-sys-color-secondary);outline-offset:4px;border-radius:var(--md-sys-shape-corner-sm)}.landing-button{justify-content:center;align-items:center;gap:var(--md-sys-spacing-3);min-height:52px;padding-inline:var(--md-sys-spacing-6);font-size:var(--landing-type-action);letter-spacing:-.01em;background:var(--md-sys-color-primary);border-radius:var(--md-sys-shape-corner-full);box-shadow:var(--md-sys-elevation-1);transition:transform var(--md-sys-motion-duration-short) var(--md-sys-motion-easing-emphasized), box-shadow var(--md-sys-motion-duration-short) var(--md-sys-motion-easing-emphasized), background var(--md-sys-motion-duration-short) var(--md-sys-motion-easing-emphasized);font-weight:720;display:inline-flex;color:var(--md-sys-color-on-primary)!important}.landing-button:hover{background:var(--md-sys-color-secondary);box-shadow:var(--md-sys-elevation-3);transform:translateY(-2px)}.landing-button:active{box-shadow:var(--md-sys-elevation-1);transform:translateY(0)scale(.98)}.landing-button:focus-visible{outline:3px solid var(--md-sys-color-secondary);outline-offset:4px}.landing-button--small{min-height:44px;padding-inline:var(--md-sys-spacing-5);font-size:var(--landing-type-label);justify-self:end}.landing-hero{gap:0 clamp(var(--md-sys-spacing-6), 4vw, 72px);min-height:max(900px,100svh);padding:112px var(--landing-inline) 0;isolation:isolate;background:var(--md-sys-color-surface-container-lowest);grid-template-rows:minmax(760px,1fr) auto;grid-template-columns:minmax(0,.84fr) minmax(540px,1.16fr);display:grid;position:relative}.landing-hero:before{z-index:-2;content:"";background:color-mix(in srgb, var(--md-sys-color-primary-container) 16%, var(--md-sys-color-surface-container-lowest));clip-path:ellipse(62% 58% at 84% 38%);position:absolute;inset:0}.landing-hero__route{z-index:2;pointer-events:none;width:100%;height:calc(100% - 120px);fill:var(--md-sys-color-primary);color:var(--md-sys-color-primary);position:absolute;inset:0;overflow:visible}.landing-hero__route path{fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke}.landing-hero__route-base{stroke:var(--md-sys-color-outline-variant);stroke-width:2px}.landing-hero__route-active{stroke:var(--md-sys-color-primary);stroke-width:4px;filter:drop-shadow(0 0 8px color-mix(in srgb, var(--md-sys-color-primary) 70%, transparent))}.landing-hero__route circle{stroke:var(--md-sys-color-surface-container-lowest);stroke-width:5px}.landing-hero__copy{z-index:4;align-self:center;max-width:700px;padding-block-end:80px}.landing-hero h1{color:var(--md-sys-color-on-surface);font-size:var(--landing-type-display);font-variation-settings:"wdth" 88, "opsz" 144;letter-spacing:-.04em;text-wrap:balance;flex-direction:column;margin:0;font-weight:690;line-height:.88;display:flex}.landing-hero__accent{color:var(--md-sys-color-primary)}.landing-hero__copy>p{max-width:46ch;color:var(--md-sys-color-on-surface-variant);font-size:var(--landing-type-copy-compact);margin:clamp(36px,4vw,64px) 0 0;line-height:1.45}.landing-hero__copy>div{align-items:center;gap:var(--md-sys-spacing-5);margin-block-start:var(--md-sys-spacing-8);display:flex}.landing-hero__note{color:var(--md-sys-color-on-surface-variant);font-size:var(--landing-type-meta);line-height:1.4}.landing-hero__preview{z-index:3;align-self:center;min-width:0;padding-block-end:56px}.landing-preview{width:100%;min-width:0;min-height:610px;color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container-low);border-radius:var(--md-sys-shape-corner-xl);box-shadow:var(--md-sys-elevation-5);grid-template-rows:auto minmax(0,1fr) auto;margin:0;display:grid;position:relative;overflow:hidden}.landing-preview:after{content:"";pointer-events:none;background:color-mix(in srgb, var(--md-sys-color-primary-container) 28%, transparent);border-radius:var(--md-sys-shape-corner-full);filter:blur(64px);opacity:.55;position:absolute;inset:-20% 32% 52% -10%}.landing-preview__topbar,.landing-preview__caption{z-index:2;justify-content:space-between;align-items:center;gap:var(--md-sys-spacing-3);padding:var(--md-sys-spacing-4) var(--md-sys-spacing-5);background:var(--md-sys-color-surface-container);display:flex;position:relative}.landing-preview__topbar{border-block-end:1px solid var(--md-sys-color-outline-variant)}.landing-preview__brand,.landing-preview__playback{align-items:center;gap:var(--md-sys-spacing-2);display:flex}.landing-preview__brand>span{background:var(--md-sys-color-primary);border-radius:var(--md-sys-shape-corner-xs);place-items:center;width:28px;height:28px;padding:2px;display:grid}.landing-preview__brand strong{letter-spacing:-.02em;font-size:14px}.landing-preview__icon{width:32px;height:32px;color:var(--md-sys-color-on-surface-variant);border-radius:var(--md-sys-shape-corner-sm);place-items:center;display:grid}.landing-preview__icon--active{color:var(--md-sys-color-on-primary);background:var(--md-sys-color-primary)}.landing-preview__workspace{z-index:1;grid-template-rows:minmax(260px,1fr) minmax(220px,.86fr);grid-template-columns:.8fr 1.2fr;min-height:0;display:grid;position:relative}.landing-preview__panel{min-width:0;padding:var(--md-sys-spacing-5);opacity:.72;transition:opacity var(--md-sys-motion-duration-medium) var(--md-sys-motion-easing-emphasized), background var(--md-sys-motion-duration-medium) var(--md-sys-motion-easing-emphasized);position:relative}.landing-preview__panel.is-active{opacity:1;background:color-mix(in srgb, var(--md-sys-color-primary-container) 24%, transparent)}.landing-preview__panel-label{color:var(--md-sys-color-primary);font-family:var(--md-ref-typeface-mono);font-size:var(--landing-type-micro);letter-spacing:.06em;text-transform:uppercase;margin-block-end:var(--md-sys-spacing-4);font-weight:700;display:block}.landing-preview__plan,.landing-preview__flow{border-inline-end:1px solid var(--md-sys-color-outline-variant)}.landing-preview__plan,.landing-preview__code{border-block-end:1px solid var(--md-sys-color-outline-variant)}.landing-preview__plan ol{gap:var(--md-sys-spacing-2);margin:0;padding:0;list-style:none;display:grid}.landing-preview__plan li{align-items:center;gap:var(--md-sys-spacing-2);min-height:42px;padding-inline:var(--md-sys-spacing-2);color:var(--md-sys-color-on-surface-variant);font-size:var(--landing-type-meta);border-radius:var(--md-sys-shape-corner-sm);grid-template-columns:24px 1fr;line-height:1.3;display:grid}.landing-preview__plan li>span{width:22px;height:22px;font-family:var(--md-ref-typeface-mono);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-full);place-items:center;display:grid}.landing-preview__plan li.is-current{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container)}.landing-preview__code pre{margin:0;overflow:hidden}.landing-preview__code code{color:var(--md-sys-color-on-surface);font-family:var(--md-ref-typeface-mono);font-size:var(--landing-type-preview-code);line-height:1.8;display:grid}.landing-preview__code code>span{padding-inline:var(--md-sys-spacing-2);border-radius:var(--md-sys-shape-corner-xs);grid-template-columns:28px 1fr;display:grid}.landing-preview__code code>span.is-current{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container);box-shadow:inset 2px 0 0 var(--md-sys-color-primary)}.landing-preview__code i{color:var(--md-sys-color-outline);font-style:normal}.landing-preview__code b{text-overflow:ellipsis;white-space:pre;font-weight:500;overflow:hidden}.landing-preview__diagram{flex-direction:column;justify-content:center;align-items:center;display:flex}.landing-preview__diagram-step{flex-direction:column;align-items:center;display:flex}.landing-preview__node{min-width:112px;max-width:172px;min-height:30px;padding:var(--md-sys-spacing-1) var(--md-sys-spacing-3);color:var(--sym-proceso-fg);font-family:var(--md-ref-typeface-mono);font-size:var(--landing-type-node);text-align:center;background:var(--sym-proceso-bg);border:1px solid var(--sym-proceso-borde);border-radius:var(--md-sys-shape-corner-xs);place-items:center;line-height:1.2;display:grid}.landing-preview__node--terminator{color:var(--sym-ovalo-fg);background:var(--sym-ovalo-bg);border-radius:var(--md-sys-shape-corner-full)}.landing-preview__node--decision{min-width:124px;min-height:44px;color:var(--sym-decision-fg);background:var(--sym-decision-bg);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);border:0}.landing-preview__node--input-output{color:var(--sym-io-fg);background:var(--sym-io-bg);clip-path:polygon(12% 0,100% 0,88% 100%,0 100%);border:0}.landing-preview__node.is-current{color:var(--sym-activo-fg);background:var(--sym-activo-bg);border-color:var(--sym-activo-bg);box-shadow:var(--sym-activo-halo)}.landing-preview__edge{background:var(--sym-arista);width:1px;height:8px}.landing-preview__value,.landing-preview__console{min-height:62px;padding:var(--md-sys-spacing-3) var(--md-sys-spacing-4);background:var(--md-sys-color-surface-container);border-radius:var(--md-sys-shape-corner-md);justify-content:space-between;align-items:center;display:flex}.landing-preview__value>span,.landing-preview__console>span{color:var(--md-sys-color-on-surface-variant);font-family:var(--md-ref-typeface-mono);font-size:var(--landing-type-micro)}.landing-preview__value strong,.landing-preview__console code{color:var(--md-sys-color-tertiary);font-family:var(--md-ref-typeface-mono);font-size:var(--landing-type-value);font-weight:500}.landing-preview__console{margin-block-start:var(--md-sys-spacing-3)}.landing-preview__caption{border-block-start:1px solid var(--md-sys-color-outline-variant);justify-content:flex-start;min-height:56px}.landing-preview__caption>span{color:var(--md-sys-color-primary);font-family:var(--md-ref-typeface-mono);font-size:var(--landing-type-micro)}.landing-preview__caption p{min-width:0;color:var(--md-sys-color-on-surface-variant);font-size:var(--landing-type-micro);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.landing-preview__progress{gap:var(--md-sys-spacing-1);flex:none;margin-inline-start:auto;display:flex}.landing-preview__progress span{background:var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-full);width:22px;height:3px}.landing-preview__progress span.is-active{background:var(--md-sys-color-primary)}.landing-hero__stages{z-index:4;background:var(--md-sys-color-surface-container-low);border:1px solid var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-xl) var(--md-sys-shape-corner-xl) 0 0;border-block-end:0;grid-column:1/-1;grid-template-columns:repeat(3,1fr);min-height:120px;display:grid;position:relative}.landing-hero__stages>div{align-items:center;gap:var(--md-sys-spacing-3);padding-inline:clamp(var(--md-sys-spacing-4), 3vw, 48px);display:flex}.landing-hero__stages>div+div{border-inline-start:1px solid var(--md-sys-color-outline-variant)}.landing-hero__stages span{width:32px;height:32px;color:var(--md-sys-color-primary);font-family:var(--md-ref-typeface-mono);font-size:var(--landing-type-micro);border:1px solid var(--md-sys-color-primary);border-radius:var(--md-sys-shape-corner-full);place-items:center;display:grid}.landing-hero__stages strong{font-size:var(--landing-type-stage-label);letter-spacing:-.03em}.landing-statement{padding:clamp(120px, 16vw, 240px) var(--landing-inline);background:var(--md-sys-color-surface);grid-template-columns:1.3fr .7fr;gap:clamp(48px,10vw,180px);display:grid}.landing-statement h2,.landing-proof h2,.landing-close h2{max-width:12ch;font-size:var(--landing-type-section);font-variation-settings:"wdth" 92, "opsz" 120;letter-spacing:-.04em;text-wrap:balance;margin:0;font-weight:620;line-height:.94}.landing-statement p,.landing-proof__heading p,.landing-close__action>p{max-width:50ch;color:var(--md-sys-color-on-surface-variant);font-size:var(--landing-type-copy);margin:0;line-height:1.5}.landing-statement p{align-self:end}.landing-story{background:var(--md-sys-color-surface-container-lowest);height:300svh;position:relative}.landing-story__sticky{width:100%;min-height:100svh;padding:clamp(64px, 7vw, 112px) var(--landing-inline);grid-template-columns:minmax(420px,.78fr) minmax(600px,1.22fr);gap:clamp(48px,6vw,104px);display:grid;position:sticky;inset-block-start:0;overflow:hidden}.landing-story__copy{flex-direction:column;justify-content:center;min-width:0;display:flex}.landing-story__copy>h2{max-width:14ch;font-size:var(--landing-type-story);letter-spacing:-.035em;text-wrap:balance;margin:0 0 clamp(48px,7vh,80px);font-weight:600;line-height:.98}.landing-story__stage-list{padding-inline-start:var(--md-sys-spacing-6);display:grid;position:relative}.landing-story__stage-list:before,.landing-story__rail{content:"";background:var(--md-sys-color-outline-variant);border-radius:var(--md-sys-shape-corner-full);transform-origin:top;width:2px;position:absolute;inset-block:0;inset-inline-start:0}.landing-story__rail{z-index:1;background:var(--md-sys-color-primary)}.landing-story__stage-list article{padding-block:var(--md-sys-spacing-3);opacity:.22;transition:opacity var(--md-sys-motion-duration-long) var(--md-sys-motion-easing-emphasized), padding var(--md-sys-motion-duration-long) var(--md-sys-motion-easing-emphasized), grid-template-rows var(--md-sys-motion-duration-long) var(--md-sys-motion-easing-emphasized);grid-template-rows:0fr 0fr 0fr;display:grid;position:relative}.landing-story__stage-list article:before{z-index:2;content:"";background:var(--md-sys-color-outline-variant);border:3px solid var(--md-sys-color-surface-container-lowest);border-radius:var(--md-sys-shape-corner-full);width:12px;height:12px;position:absolute;inset-block-start:24px;inset-inline-start:calc(var(--md-sys-spacing-6) * -1 - 5px)}.landing-story__stage-list article.is-active{padding-block:var(--md-sys-spacing-6);opacity:1;grid-template-rows:auto auto auto}.landing-story__stage-list article.is-active:before{background:var(--md-sys-color-primary);box-shadow:0 0 18px color-mix(in srgb, var(--md-sys-color-primary) 56%, transparent)}.landing-story__stage-list article>*{overflow:hidden}.landing-story__stage-list article>span{color:var(--md-sys-color-primary);font-family:var(--md-ref-typeface-mono);font-size:var(--landing-type-micro);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.landing-story__stage-list h3{max-width:18ch;margin:var(--md-sys-spacing-2) 0 0;font-size:var(--landing-type-stage);letter-spacing:-.03em;font-weight:580;line-height:1.02}.landing-story__stage-list p{max-width:46ch;margin:var(--md-sys-spacing-3) 0 0;color:var(--md-sys-color-on-surface-variant);font-size:var(--landing-type-action);line-height:1.5}.landing-story__preview{align-self:center;min-width:0}.landing-preview--compact{min-height:min(720px,78svh);box-shadow:var(--md-sys-elevation-3)}.landing-proof{padding:clamp(120px, 14vw, 220px) var(--landing-inline);background:var(--md-sys-color-surface)}.landing-proof__heading{grid-template-columns:1.15fr .85fr;align-items:end;gap:clamp(48px,9vw,160px);padding-block-end:clamp(80px,10vw,150px);display:grid}.landing-proof__rows{border-block-start:1px solid var(--md-sys-color-outline-variant)}.landing-proof__rows article{align-items:center;gap:clamp(var(--md-sys-spacing-6), 5vw, 80px);min-height:156px;padding-block:var(--md-sys-spacing-6);border-block-end:1px solid var(--md-sys-color-outline-variant);grid-template-columns:minmax(180px,.5fr) minmax(260px,1fr) minmax(320px,.8fr);display:grid}.landing-proof__rows strong{font-size:var(--landing-type-proof);letter-spacing:-.035em;font-weight:580}.landing-proof__rows p{max-width:44ch;color:var(--md-sys-color-on-surface-variant);margin:0;font-size:16px;line-height:1.5}.landing-proof__rows code{padding:var(--md-sys-spacing-3) var(--md-sys-spacing-4);color:var(--md-sys-color-primary);font-family:var(--md-ref-typeface-mono);font-size:var(--landing-type-label);background:var(--md-sys-color-surface-container-high);border-radius:var(--md-sys-shape-corner-md);justify-self:end}.landing-close{min-height:82svh;padding:clamp(112px, 14vw, 208px) var(--landing-inline);background:var(--md-sys-color-primary-container);grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);align-items:end;gap:clamp(64px,12vw,200px);display:grid}.landing-close__copy{align-self:start}.landing-close h2{max-width:9.5ch;color:var(--md-sys-color-on-primary-container)}.landing-close__action{flex-direction:column;align-items:flex-start;display:flex}.landing-close__action>p{max-width:28ch;color:var(--md-sys-color-on-primary-container)}.landing-close .landing-button{margin-block-start:var(--md-sys-spacing-8)}.landing-footer{align-items:center;gap:var(--md-sys-spacing-6);min-height:128px;padding-inline:var(--landing-inline);color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-container-lowest);border-block-start:1px solid var(--md-sys-color-outline-variant);grid-template-columns:1fr auto 1fr;display:grid}.landing-footer p{font-size:var(--landing-type-label);margin:0}.landing-footer>a:last-child{color:var(--md-sys-color-primary);justify-self:end;font-weight:700}@media (width<=78rem){.landing-nav{grid-template-columns:1fr auto}.landing-nav__links{display:none}.landing-hero{grid-template-columns:minmax(0,.78fr) minmax(500px,1.22fr)}.landing-hero h1{font-size:var(--landing-type-display-wide)}.landing-story__sticky{grid-template-columns:minmax(330px,.7fr) minmax(520px,1.3fr)}.landing-preview__plan li{font-size:var(--landing-type-preview-code)}}@media (width<=64rem){.landing-hero{grid-template-rows:auto auto auto;grid-template-columns:1fr;min-height:auto;padding-block-start:132px}.landing-hero__copy{max-width:760px;padding-block:56px 96px}.landing-hero h1{font-size:var(--landing-type-display-tablet)}.landing-hero__preview{padding-block-end:64px}.landing-hero__route{display:none}.landing-hero__stages{grid-column:1}.landing-statement,.landing-proof__heading{gap:var(--md-sys-spacing-8);grid-template-columns:1fr}.landing-statement p,.landing-proof__heading p{justify-self:end}.landing-story{height:auto}.landing-story__sticky{grid-template-columns:1fr;min-height:auto;position:relative;overflow:visible}.landing-story__stage-list article{padding-block:var(--md-sys-spacing-5);opacity:1;grid-template-rows:auto auto auto}.landing-story__stage-list article:before{background:var(--md-sys-color-primary)}.landing-story__preview{position:sticky;inset-block-end:var(--md-sys-spacing-4)}.landing-proof__rows article{grid-template-columns:.55fr 1fr}.landing-proof__rows code{grid-column:2;justify-self:start}.landing-close{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:clamp(40px,7vw,72px)}}@media (width<=44rem){.landing-page{--landing-inline:max(var(--md-sys-spacing-4), env(safe-area-inset-left))}.landing-nav{gap:var(--md-sys-spacing-3);min-height:72px}.landing-nav__brand>span{width:36px;height:36px;font-size:var(--landing-type-label)}.landing-nav__brand strong{font-size:16px}.landing-button--small{min-height:44px;padding-inline:var(--md-sys-spacing-4);font-size:0}.landing-button--small svg{width:20px;height:20px}.landing-hero{padding-block-start:88px}.landing-hero__copy{padding-block:64px 72px}.landing-hero h1{font-size:var(--landing-type-display-mobile);line-height:.91}.landing-hero__copy>p{font-size:var(--landing-type-mobile-copy);margin-block-start:var(--md-sys-spacing-8)}.landing-hero__copy>div{flex-direction:column;align-items:flex-start}.landing-button{width:100%}.landing-preview{border-radius:var(--md-sys-shape-corner-lg);min-height:620px}.landing-preview:after{display:none}.landing-preview__workspace{grid-template-rows:auto auto auto auto;grid-template-columns:1fr}.landing-preview__panel{padding:var(--md-sys-spacing-4)}.landing-preview__plan,.landing-preview__code,.landing-preview__flow{border-inline-end:0;border-block-end:1px solid var(--md-sys-color-outline-variant)}.landing-preview__plan ol{grid-template-columns:1fr 1fr}.landing-preview__flow{min-height:250px}.landing-preview__values{gap:var(--md-sys-spacing-3);grid-template-columns:1fr 1fr;display:grid}.landing-preview__values .landing-preview__panel-label{grid-column:1/-1;margin-block-end:0}.landing-preview__console{margin-block-start:0}.landing-preview__caption p{display:none}.landing-hero__stages{border-radius:var(--md-sys-shape-corner-lg) var(--md-sys-shape-corner-lg) 0 0;min-height:92px}.landing-hero__stages>div{padding-inline:var(--md-sys-spacing-2);justify-content:center}.landing-hero__stages strong{display:none}.landing-statement,.landing-proof{padding-block:112px}.landing-statement h2,.landing-proof h2,.landing-close h2{font-size:var(--landing-type-section-mobile)}.landing-statement p,.landing-proof__heading p,.landing-close__action>p{font-size:var(--landing-type-mobile-copy)}.landing-story__sticky{gap:48px;padding-block:96px}.landing-story__copy>h2{font-size:var(--landing-type-story-mobile)}.landing-story__stage-list h3{font-size:28px}.landing-story__preview{position:relative;inset-block-end:auto}.landing-preview--compact{min-height:620px}.landing-proof__heading{padding-block-end:72px}.landing-proof__rows article{gap:var(--md-sys-spacing-3);padding-block:var(--md-sys-spacing-8);grid-template-columns:1fr}.landing-proof__rows code{grid-column:1;max-width:100%;overflow:auto}.landing-close{grid-template-columns:1fr;align-content:space-between;gap:72px;min-height:78svh;padding-block:112px}.landing-close h2{max-width:10ch}.landing-close__action>p{max-width:24ch}.landing-footer{grid-template-columns:1fr auto;min-height:112px}.landing-footer p{display:none}}@media (prefers-reduced-motion:reduce){.landing-page *,.landing-page :before,.landing-page :after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.landing-button:hover{transform:none}.landing-brand-mark__route,.landing-brand-mark__bracket,.landing-brand-mark__nodes{animation:none}.landing-brand-mark__route{stroke-dashoffset:0}.landing-brand-mark__nodes{opacity:1}.landing-brand-mark__bracket--left{transform:translate(-4%)}.landing-brand-mark__bracket--right{transform:translate(4%)}.landing-hero__route-active{filter:none}.landing-story{height:auto}.landing-story__sticky{position:relative}.landing-story__stage-list article{opacity:1;grid-template-rows:auto auto auto}}
