:root{color-scheme:light;--kz-font: "Inter Tight Variable", "Inter Tight", Arial, sans-serif;--kz-font-mono: "IBM Plex Mono", ui-monospace, Consolas, "Courier New", monospace;--kz-text-micro: 10px;--kz-text-label: 11px;--kz-text-ui: 13px;--kz-text-body: 15px;--kz-text-feature: clamp(1.65rem, 2.3vw, 2.35rem);--kz-text-section: clamp(2rem, 3vw, 3rem);--kz-text-page: clamp(2.75rem, 4.2vw, 4.5rem);--kz-text-display-lg: clamp(3.25rem, 5.4vw, 5.5rem);--kz-text-display-xl: clamp(4rem, 7vw, 7.25rem);--kz-text-hero: var(--kz-text-display-lg);--kz-leading-display: .91;--kz-leading-tight: 1.12;--kz-leading-ui: 1.4;--kz-leading-body: 1.6;--kz-tracking-display: -.045em;--kz-space-1: 4px;--kz-space-2: 8px;--kz-space-3: 12px;--kz-space-4: 16px;--kz-space-5: 24px;--kz-space-6: 32px;--kz-space-7: 48px;--kz-space-8: 64px;--kz-space-9: 80px;--kz-space-10: 112px;--kz-space-11: 144px;--kz-inset: 12px;--kz-radius: 0px;--kz-radius-control: 2px;--kz-radius-surface: 0px;--kz-z-hud: 4;--kz-z-overlay: 20;--kz-z-tooltip: 30;--kz-z-menu: 40;--kz-motion-fast: .12s;--kz-motion-base: .22s;--kz-motion-reveal: .42s;--kz-ease-standard: cubic-bezier(.2, .7, .2, 1);--kz-ease-emphasis: cubic-bezier(.16, 1, .3, 1);--kz-reveal-distance: 12px;--kz-ease: var(--kz-ease-standard);--kz-duration: var(--kz-motion-fast);--kz-duration-panel: var(--kz-motion-base);--kz-brand: #245bff;--kz-brand-hover: #1748dd;--kz-on-brand: #ffffff;--kz-focus: 0 0 0 1px var(--kz-canvas), 0 0 0 3px var(--kz-brand)}:root,[data-theme=light]{--kz-canvas: #eeece6;--kz-workspace: #eeece6;--kz-panel: #f5f3ee;--kz-elevated: #ffffff;--kz-subtle: #e5e2db;--kz-chrome: #eeece6;--kz-text: #0a0a0a;--kz-text-secondary: #4e4e49;--kz-text-muted: #77766f;--kz-rule: rgba(10, 10, 10, .16);--kz-rule-strong: rgba(10, 10, 10, .78);--kz-border: var(--kz-rule);--kz-border-subtle: rgba(10, 10, 10, .08);--kz-brand-muted: color-mix(in srgb, var(--kz-brand) 12%, transparent);--kz-accent: var(--kz-brand);--kz-accent-hover: var(--kz-brand-hover);--kz-accent-muted: var(--kz-brand-muted);--kz-on-accent: var(--kz-on-brand);--kz-success: #2f7a28;--kz-warning: #8a6a12;--kz-error: #8c2a2a;--kz-error-bg: #f3e4e0;--kz-selected: var(--kz-brand);--kz-hover: color-mix(in srgb, #000 4%, transparent);--kz-focus-ring: var(--kz-brand);--kz-stage: #e5e2db;--kz-stage-sky: #f5f3ee;--kz-stage-ground: #b0ada5;--kz-code: #f5f3ee;--kz-code-gutter: #eeece6;--kz-metal: #ddd9d2;--kz-edge-uniform: #5c5a54;--kz-edge-boundary: #4a4843;--kz-edge-inner: #5a7478;--kz-edge-bend: #8a6e3a;--kz-edge-miter: #a86840;--kz-edge-cut: #4a7a6a;--kz-edge-fillet: #7a5a80;--kz-edge-seam: #8a5860;--kz-axis-x: #c45c4a;--kz-axis-y: #5e8a52;--kz-axis-z: #3d6ebe;--kz-select-emissive: color-mix(in srgb, var(--kz-brand) 18%, #d4d2cc);--kz-hover-emissive: color-mix(in srgb, var(--kz-brand) 8%, #d4d2cc)}[data-theme=dark]{color-scheme:dark;--kz-canvas: #0c0c0d;--kz-workspace: #101011;--kz-panel: #141415;--kz-elevated: #1a1a1c;--kz-subtle: #181819;--kz-chrome: #0c0c0d;--kz-text: #f3f3ee;--kz-text-secondary: #b4b4ae;--kz-text-muted: #7d7d78;--kz-rule: rgba(255, 255, 255, .12);--kz-rule-strong: rgba(255, 255, 255, .55);--kz-border: var(--kz-rule);--kz-border-subtle: rgba(255, 255, 255, .06);--kz-brand-hover: #4c78ff;--kz-brand-muted: color-mix(in srgb, var(--kz-brand) 18%, transparent);--kz-accent: var(--kz-brand);--kz-accent-hover: var(--kz-brand-hover);--kz-accent-muted: var(--kz-brand-muted);--kz-on-accent: var(--kz-on-brand);--kz-success: #9adf6a;--kz-warning: #e8c45a;--kz-error: #f3c4c4;--kz-error-bg: #3a1818;--kz-selected: var(--kz-brand);--kz-hover: color-mix(in srgb, #fff 5%, transparent);--kz-focus-ring: var(--kz-brand);--kz-focus: 0 0 0 1px var(--kz-canvas), 0 0 0 3px var(--kz-brand);--kz-stage: #161618;--kz-stage-sky: #e8eef4;--kz-stage-ground: #3a3a3c;--kz-code: #101012;--kz-code-gutter: #0c0c0d;--kz-metal: #c5ccd2;--kz-edge-uniform: #c4c0b6;--kz-edge-boundary: #d8d4cc;--kz-edge-inner: #7aa8b0;--kz-edge-bend: #c4a050;--kz-edge-miter: #d08858;--kz-edge-cut: #5aaca0;--kz-edge-fillet: #c090d0;--kz-edge-seam: #d090a0;--kz-axis-x: #e07870;--kz-axis-y: #7aba70;--kz-axis-z: #6a90d8;--kz-select-emissive: color-mix(in srgb, var(--kz-brand) 38%, #1a1c22);--kz-hover-emissive: color-mix(in srgb, var(--kz-brand) 16%, #16161a)}:root,[data-theme=dark],[data-theme=light]{--font: var(--kz-font);--font-mono: var(--kz-font-mono);--bg: var(--kz-workspace);--fg: var(--kz-text);--panel: var(--kz-panel);--chrome: var(--kz-chrome);--border: var(--kz-border);--brand: var(--kz-text);--muted: var(--kz-text-muted);--accent: var(--kz-brand);--input-bg: var(--kz-code);--input-fg: var(--kz-text);--input-border: var(--kz-rule);--error-bg: var(--kz-error-bg);--error-fg: var(--kz-error);--hover-bg: color-mix(in srgb, var(--kz-chrome) 92%, transparent);--hover-fg: var(--kz-text);--gui-bg: var(--kz-panel);--gui-title: var(--kz-elevated);--gui-widget: var(--kz-elevated);--gui-hover: var(--kz-hover);--gui-number: var(--kz-brand);--gui-text: var(--kz-text);--stage: var(--kz-stage)}html,body,#root{font-family:var(--kz-font);font-size:var(--kz-text-ui);line-height:var(--kz-leading-ui);font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased}.kz-meta,.kz-kicker{font-size:var(--kz-text-micro);letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:var(--kz-text-muted)}.kz-label{font-size:var(--kz-text-label);letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--kz-text-muted)}.kz-display{font-weight:500;letter-spacing:var(--kz-tracking-display);line-height:var(--kz-leading-display);font-size:var(--kz-text-display-lg)}.kz-page-title{font-weight:500;letter-spacing:var(--kz-tracking-display);line-height:var(--kz-leading-display);font-size:var(--kz-text-page)}.kz-mono{font-family:var(--kz-font-mono);font-variant-numeric:tabular-nums}.kz-rule{display:block;width:100%;height:0;margin:0;border:0;border-top:1px solid var(--kz-rule)}.kz-rule.is-strong{border-top-color:var(--kz-rule-strong)}@media(prefers-reduced-motion:no-preference){.kz-fade{animation:kz-fade var(--kz-motion-fast) var(--kz-ease-standard)}.kz-rise{animation:kz-rise var(--kz-motion-reveal) var(--kz-ease-emphasis)}}@keyframes kz-fade{0%{opacity:0}to{opacity:1}}@keyframes kz-rise{0%{opacity:0;transform:translateY(var(--kz-reveal-distance))}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.kz-btn,.kz-icon-btn{touch-action:manipulation}.kz-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--kz-space-2);height:32px;padding:0 var(--kz-space-3);background:transparent;color:var(--kz-text);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);cursor:pointer;font:500 var(--kz-text-ui) / 1 var(--kz-font);transition:background var(--kz-motion-fast) var(--kz-ease-standard),border-color var(--kz-motion-fast) var(--kz-ease-standard),color var(--kz-motion-fast) var(--kz-ease-standard)}.kz-btn:hover{background:var(--kz-hover);border-color:color-mix(in srgb,var(--kz-brand) 45%,var(--kz-rule))}.kz-btn:focus-visible{outline:none;box-shadow:var(--kz-focus)}.kz-btn.is-primary{background:var(--kz-brand);color:var(--kz-on-brand);border-color:var(--kz-brand)}.kz-btn.is-primary:hover{background:var(--kz-brand-hover);border-color:var(--kz-brand-hover)}.kz-btn:disabled{opacity:.4;cursor:default}.kz-icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 7px;background:transparent;color:var(--kz-text-secondary);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);cursor:pointer;font:500 var(--kz-text-micro) / 1 var(--kz-font);letter-spacing:.08em;text-transform:uppercase;transition:background var(--kz-motion-fast) var(--kz-ease-standard),border-color var(--kz-motion-fast) var(--kz-ease-standard),color var(--kz-motion-fast) var(--kz-ease-standard)}.kz-icon-btn:hover{color:var(--kz-text);border-color:color-mix(in srgb,var(--kz-brand) 40%,var(--kz-rule))}.kz-icon-btn.is-on{color:var(--kz-brand);background:var(--kz-brand-muted);border-color:color-mix(in srgb,var(--kz-brand) 55%,var(--kz-rule))}.kz-icon-btn:focus-visible{outline:none;box-shadow:var(--kz-focus)}.kz-icon-btn:disabled{opacity:.35;cursor:default}.kz-icon-btn svg{display:block;overflow:visible;shape-rendering:geometricPrecision}.kz-icon-btn.is-glyph{width:28px;min-width:28px;padding:0}.hud-mark{position:absolute;top:3px;right:3px;width:7px;height:7px;border-radius:50%;background:var(--kz-warning);pointer-events:none}.hud-mark.is-error{background:var(--kz-error)}.kz-tooltip{position:relative;display:inline-flex}.kz-tooltip-tip{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);z-index:var(--kz-z-tooltip);padding:4px 7px;background:var(--kz-elevated);color:var(--kz-text);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);font:500 11px / 1.3 var(--kz-font);letter-spacing:0;text-transform:none;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--kz-motion-fast) var(--kz-ease-standard)}.kz-tooltip:hover .kz-tooltip-tip,.kz-tooltip:focus-within .kz-tooltip-tip{opacity:1}@media(hover:none){.kz-tooltip-tip{display:none}}@media(max-width:960px){.kz-command{top:calc(8px + env(safe-area-inset-top,0px));width:calc(100vw - 16px);max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}.kz-command-item{min-height:44px;padding:12px 10px;touch-action:manipulation}}.kz-status{display:inline-flex;align-items:center;gap:var(--kz-space-2);font:500 var(--kz-text-micro) / 1 var(--kz-font);letter-spacing:.12em;text-transform:uppercase;color:var(--kz-text-muted);background:transparent;border:0;padding:0;cursor:default}.kz-status.is-action{cursor:pointer}.kz-status.is-action:hover{color:var(--kz-text)}.kz-status-dot{width:7px;height:7px;border-radius:50%;background:var(--kz-text-muted)}.kz-status.is-live .kz-status-dot{background:var(--kz-brand)}.kz-status.is-building .kz-status-dot{background:var(--kz-warning)}.kz-status.is-error .kz-status-dot,.kz-status.is-invalid .kz-status-dot{background:var(--kz-error)}.kz-badge{display:inline-flex;align-items:center;height:18px;padding:0 6px;border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);font-size:var(--kz-text-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--kz-text-muted)}.kz-overlay-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--kz-z-overlay);pointer-events:none}.kz-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,#000 40%,transparent);pointer-events:auto}.kz-command{position:absolute;z-index:1;top:12vh;left:50%;width:min(560px,calc(100vw - 32px));max-height:min(68vh,640px);transform:translate(-50%);display:flex;flex-direction:column;background:var(--kz-elevated);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);box-shadow:0 12px 40px color-mix(in srgb,var(--kz-text) 10%,transparent);pointer-events:auto}.kz-command-search{flex:0 0 auto;width:100%;height:48px;padding:0 var(--kz-space-4);background:transparent;color:var(--kz-text);border:0;border-bottom:1px solid var(--kz-rule);font:500 16px / 1 var(--kz-font);letter-spacing:-.02em}.kz-command-search:focus{outline:none}.kz-command-list{flex:1;min-height:0;overflow:auto;padding:6px}.kz-command-heading{padding:10px 10px 4px;font:500 var(--kz-text-micro) / 1 var(--kz-font);letter-spacing:.1em;text-transform:uppercase;color:var(--kz-text-muted)}.kz-command-item{display:grid;grid-template-columns:1fr auto;gap:2px 12px;width:100%;text-align:left;padding:8px 10px;background:transparent;color:var(--kz-text);border:1px solid transparent;border-radius:var(--kz-radius-control);cursor:pointer;font:inherit}.kz-command-item:hover,.kz-command-item.is-active{background:var(--kz-hover)}.kz-command-item.is-current{border-color:color-mix(in srgb,var(--kz-brand) 50%,transparent)}.kz-command-title{font-weight:500}.kz-command-detail{grid-column:1;font-size:12px;color:var(--kz-text-muted)}.kz-command-tags{grid-column:2;grid-row:1 / span 2;align-self:center;display:flex;gap:4px}.kz-command-empty{margin:0;padding:24px 12px;text-align:center}.kz-command-foot{flex:0 0 auto;display:flex;justify-content:space-between;gap:12px;padding:8px 12px;border-top:1px solid var(--kz-rule);color:var(--kz-text-muted);font-size:var(--kz-text-micro);letter-spacing:.08em;text-transform:uppercase}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--kz-canvas);color:var(--kz-text)}a{color:var(--kz-brand);text-decoration:none}a:hover{text-decoration:underline}.app{height:100%;display:grid;grid-template-rows:44px 1fr 26px}.app-home,.app-doc{grid-template-rows:44px 1fr}.app-lab{grid-template-rows:44px 1fr 26px;overscroll-behavior:none}.topbar{position:relative;display:flex;align-items:center;gap:20px;padding:0 16px;background:var(--kz-chrome);border-bottom:1px solid var(--kz-rule-strong)}.brand{display:flex;align-items:baseline;gap:8px;font-weight:500;letter-spacing:-.03em;color:var(--kz-text);text-decoration:none;flex:0 0 auto}.brand:hover{text-decoration:none}.brand-mark{font-size:15px}.brand-slash{color:var(--kz-text-muted);font-weight:400}.brand-product{font-size:15px;letter-spacing:-.03em;color:var(--kz-text)}.topbar-context{flex:0 0 40%;width:40%;min-width:0;display:flex;justify-content:flex-start}.topbar-right{display:flex;align-items:center;gap:16px;margin-left:auto}.nav-cluster{position:relative;display:flex;align-items:center}.example-switch-row{display:flex;align-items:center;gap:6px;width:100%;min-width:0}.lab-new{position:relative;flex:0 0 auto}.lab-new-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:8;display:flex;flex-direction:column;min-width:120px;padding:6px;background:var(--kz-elevated);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);box-shadow:0 8px 24px color-mix(in srgb,var(--kz-text) 8%,transparent)}.lab-unsaved{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;background:color-mix(in srgb,var(--kz-canvas) 55%,transparent)}.lab-unsaved-card{min-width:260px;max-width:360px;padding:16px;background:var(--kz-elevated);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control)}.lab-unsaved-card p{margin:0 0 12px}.example-switch-row>.kz-tooltip{flex:0 0 auto}.example-switch{display:flex;flex-direction:column;align-items:flex-start;gap:1px;flex:1 1 auto;min-width:0;overflow:hidden;padding:4px 8px;background:transparent;color:var(--kz-text);border:1px solid transparent;border-radius:var(--kz-radius-control);cursor:pointer;font:inherit;text-align:left}.example-switch:hover{border-color:var(--kz-border);background:var(--kz-hover)}.example-switch:focus-visible{outline:none;box-shadow:var(--kz-focus)}.example-switch-title{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;letter-spacing:-.02em;color:var(--kz-brand)}.nav-menu{display:none;height:32px;padding:0 10px;background:transparent;color:var(--kz-text);border:1px solid var(--kz-border);border-radius:var(--kz-radius-control);cursor:pointer;font:500 var(--kz-text-label) / 1 var(--kz-font)}.nav-menu.is-on{color:var(--kz-brand);border-color:color-mix(in srgb,var(--kz-brand) 55%,var(--kz-rule))}.site-nav{display:flex;align-items:center;gap:2px}.nav-link{color:var(--kz-text-muted);text-decoration:none;padding:6px 8px;border-radius:0;font-weight:500}.nav-link:hover{color:var(--kz-text);text-decoration:none;background:transparent}.nav-link.is-active{color:var(--kz-brand)}.nav-link-off{cursor:default;opacity:.45}.text-btn{background:transparent;color:var(--kz-text);border:1px solid var(--kz-border);border-radius:var(--kz-radius-control);padding:8px 14px;cursor:pointer;font:inherit;font-weight:500}.text-btn:hover{border-color:color-mix(in srgb,var(--kz-brand) 70%,var(--kz-rule));background:color-mix(in srgb,var(--kz-brand) 12%,transparent)}.lab{min-height:0;min-width:0;height:100%;padding:var(--kz-space-2) var(--kz-inset) var(--kz-inset);background:var(--kz-canvas)}.lab-tabs{display:none}.lab-tab{flex:1;height:36px;background:var(--kz-chrome);color:var(--kz-text-muted);border:0;border-bottom:1px solid var(--kz-border);cursor:pointer;font:500 var(--kz-text-label) / 1 var(--kz-font);letter-spacing:.1em;text-transform:uppercase}.lab-tab.is-on{color:var(--kz-brand);border-bottom-color:var(--kz-brand)}.lab-group{height:100%;width:100%}.lab-panel{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.lab-code-panel{padding-right:8px}.lab-view-panel{padding-left:8px}.pane{background:var(--kz-panel);min-height:0;min-width:0;overflow:auto;padding:0;display:flex;flex-direction:column;flex:1}.lab-gui.pane,.pane.lab-gui{padding:0}.lab-json-head{display:flex;align-items:center;gap:10px;height:32px;padding:0 12px;border-bottom:1px solid var(--kz-border-subtle);flex:0 0 auto}.lab-json-head .editor-keys{margin-left:auto}.lab-stage{min-width:0;min-height:0;position:relative;display:flex;flex-direction:column;flex:1;background:transparent}.lab-viewport{position:relative;flex:1;min-width:0;min-height:0;display:flex;flex-direction:row;align-items:stretch}.lab-outliner{position:relative;z-index:8;width:220px;flex:0 0 220px;min-width:0;min-height:0;display:flex;flex-direction:column;margin-right:8px;background:var(--kz-panel);border:1px solid var(--kz-rule);border-radius:0;overflow:hidden}.lab-outliner-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px 4px 10px;flex:0 0 auto}.lab-outliner-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:2px;padding:0 8px 6px 10px;font:500 11px / 1.2 var(--kz-font)}.lab-outliner-crumb{padding:0;border:0;background:transparent;color:var(--kz-text-muted);cursor:pointer}.lab-outliner-crumb.is-now{color:var(--kz-text);cursor:default}.lab-outliner-sep{margin:0 4px;color:var(--kz-text-muted)}.lab-outliner-show{position:absolute;left:8px;top:8px;z-index:5;padding:4px 8px;border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);background:var(--kz-elevated);color:var(--kz-text-muted);font:500 11px / 1 var(--kz-font);cursor:pointer}.lab-outliner .lab-tree-list{flex:1;min-height:0}.lab-canvas{position:relative;flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;border-radius:0;overflow:hidden;border:1px solid var(--kz-rule);background:var(--kz-stage)}.lab-canvas-view{position:relative;flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.authoring-float{position:absolute;left:12px;top:12px;right:auto;bottom:auto;z-index:6;pointer-events:none}.authoring-float[hidden]{display:none!important}.authoring-float>*{pointer-events:auto;margin:0}.authoring-card{min-width:168px;max-width:240px;max-height:min(70vh,420px);overflow-y:auto;padding:8px;background:var(--kz-elevated);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);box-shadow:0 8px 24px color-mix(in srgb,var(--kz-text) 8%,transparent);color:var(--kz-text);font:500 var(--kz-text-ui) / 1.3 var(--kz-font)}.authoring-card.is-passive{pointer-events:none}.authoring-card.is-passive .authoring-btn,.authoring-card.is-passive .authoring-error{pointer-events:auto}.authoring-kicker,.authoring-refs,.authoring-measure{margin:0 0 6px;font:500 var(--kz-text-micro) / 1.3 var(--kz-font);color:var(--kz-text-muted);letter-spacing:.04em;text-transform:uppercase}.authoring-measure{font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:0;color:var(--kz-text)}.authoring-actions{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 6px}.authoring-btn{height:26px;padding:0 8px;background:var(--kz-hover);color:var(--kz-text);border:1px solid var(--kz-border);border-radius:var(--kz-radius-control);font:500 var(--kz-text-micro) / 1 var(--kz-font);cursor:pointer}.authoring-btn:hover{border-color:color-mix(in srgb,var(--kz-brand) 45%,var(--kz-rule))}.authoring-btn.is-on{color:var(--kz-brand);background:var(--kz-brand-muted);border-color:color-mix(in srgb,var(--kz-brand) 55%,var(--kz-rule))}.authoring-btn.is-off,.authoring-btn:disabled{opacity:.45;cursor:default}.authoring-editor{display:flex;flex-direction:column;gap:6px;margin-top:4px}.authoring-field{display:flex;flex-direction:column;gap:2px;font:500 var(--kz-text-micro) / 1.2 var(--kz-font);color:var(--kz-text-muted)}.authoring-field select,.authoring-num input{height:26px;padding:0 6px;background:var(--kz-panel);color:var(--kz-text);border:1px solid var(--kz-border);border-radius:var(--kz-radius-control);font:500 var(--kz-text-ui) / 1 var(--kz-font)}.authoring-num{display:flex;align-items:center;gap:6px}.authoring-num input{width:88px}.authoring-num input::placeholder{color:var(--kz-text-muted)}.authoring-num em{font-style:normal;color:var(--kz-text-muted)}.authoring-xyz{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px}.authoring-xyz .authoring-num input{width:100%}.authoring-error{margin:6px 0 0;color:var(--kz-error);font:500 var(--kz-text-micro) / 1.35 var(--kz-font)}.authoring-empty{position:absolute;left:50%;top:50%;z-index:3;transform:translate(-50%,-50%);padding:16px 18px;background:var(--kz-elevated);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);text-align:center}.authoring-add-part{position:absolute;left:12px;bottom:12px;z-index:3;height:28px;padding:0 10px;background:var(--kz-elevated);color:var(--kz-text);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);font:500 var(--kz-text-micro) / 1 var(--kz-font);cursor:pointer}.authoring-add-part.is-on{border-color:var(--kz-text)}.authoring-add-part-wrap{position:absolute;left:12px;bottom:12px;z-index:3}.authoring-add-part-wrap .authoring-add-part{position:static}.authoring-add-part-menu{position:absolute;left:0;bottom:34px;display:flex;flex-direction:column;gap:4px;padding:6px;background:var(--kz-elevated);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control)}.authoring-empty-title{margin:0 0 10px;font:600 var(--kz-text-ui) / 1.3 var(--kz-font)}.lab-code-panel[data-panel-size="0.0"],.lab-code-panel[data-panel-collapsible][data-panel-size="0"]{padding-right:0}.lab-manufacturing{display:none}.lab-manufacturing h2{margin:0 0 6px}.lab-manufacturing h3{margin:8px 0 4px;font-size:12px;font-weight:600;color:var(--fg);text-transform:none;letter-spacing:0}.lab-manufacturing p,.lab-manufacturing ul{margin:0 0 4px}.lab-manufacturing ul{padding-left:1.1em}.lab-ir-part+.lab-ir-part{margin-top:8px}.resize-handle{position:relative;z-index:6;flex:0 0 8px;background:transparent}.resize-handle:before{content:"";position:absolute;background:var(--border)}[data-panel-group-direction=horizontal]>.resize-handle{width:8px;margin:0 -3.5px;cursor:ew-resize}[data-panel-group-direction=horizontal]>.resize-handle:before{top:0;bottom:0;left:3.5px;width:1px}[data-panel-group-direction=vertical]>.resize-handle{height:8px;margin:-3.5px 0;cursor:ns-resize}[data-panel-group-direction=vertical]>.resize-handle:before{left:0;right:0;top:3.5px;height:1px}.resize-handle:hover:before,.resize-handle[data-resize-handle-state=hover]:before,.resize-handle[data-resize-handle-state=drag]:before,.resize-handle[data-resize-handle-active]:before{background:var(--kz-brand)}.lab-debug{display:none}.viewport-hud{position:absolute;top:12px;right:12px;z-index:var(--kz-z-hud);display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:8px;max-width:calc(100% - 24px);pointer-events:none}.viewport-hud-phone{display:none}.viewport-hud-desk{display:contents}.viewport-hud-group{display:flex;flex-wrap:nowrap;align-items:center;flex-shrink:0;gap:2px;padding:2px;background:var(--kz-elevated);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);pointer-events:auto}.viewport-hud-tools{--hud-tool: 28px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;pointer-events:none}.viewport-hud-tools .viewport-hud-group,.viewport-hud-tools .viewport-hud-pose,.viewport-hud-tools-fields{pointer-events:auto}.viewport-hud-tools-fields{display:flex;align-items:flex-start;gap:2px;padding-left:2px}.viewport-hud-tools-gap{width:var(--hud-tool);flex:0 0 var(--hud-tool)}.viewport-hud-pose{width:168px;padding:8px;background:var(--kz-elevated);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control)}.viewport-hud-pose .authoring-editor{margin-top:0}.viewport-hud-pose .authoring-kicker{margin:4px 0 2px}.viewport-hud-pose .authoring-kicker:first-child{margin-top:0}.viewport-hud-group .kz-icon-btn{color:var(--kz-text);background:transparent;border-color:transparent}.viewport-hud-group .kz-icon-btn:hover{background:var(--kz-hover);border-color:transparent}.viewport-hud-group .kz-icon-btn.is-on{color:var(--kz-brand);background:var(--kz-brand-muted);border-color:color-mix(in srgb,var(--kz-brand) 55%,var(--kz-rule))}.viewport-hud-group.is-play{gap:6px;padding:2px 10px;margin-left:6px}.viewport-hud-group.is-play input[type=range]{width:128px;height:18px;margin:0 4px;accent-color:var(--kz-brand)}.viewport-meta{position:absolute;left:14px;bottom:14px;z-index:var(--kz-z-hud);color:var(--kz-text-muted);font-size:var(--kz-text-micro);letter-spacing:.1em;pointer-events:auto;user-select:text;-webkit-user-select:text;cursor:text}.viewport-stats{position:absolute;left:14px;bottom:14px;z-index:var(--kz-z-hud);width:min(280px,calc(100% - 28px));padding:10px 10px 8px;background:var(--kz-elevated);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);color:var(--kz-text);pointer-events:auto}.viewport-stats-busy,.viewport-stats-title,.viewport-stats-meta,.viewport-stats-empty{margin:0}.viewport-stats-busy{margin-bottom:6px;font-size:var(--kz-text-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--kz-warning)}.viewport-stats-title{font:500 var(--kz-text-ui) / 1.3 var(--kz-font)}.viewport-stats-meta,.viewport-stats-empty,.viewport-stats-extra{color:var(--kz-text-muted);font-size:var(--kz-text-micro)}.viewport-stats-meta{margin-top:2px;letter-spacing:.04em;text-transform:uppercase}.viewport-stats-empty{margin-top:8px}.viewport-stats-bar{display:flex;height:5px;margin:10px 0 8px;overflow:hidden;background:var(--kz-subtle);border-radius:2px}.viewport-stats-bar span{min-width:0}.viewport-stats-bar .is-wait{background:var(--kz-text-muted)}.viewport-stats-bar .is-job{background:var(--kz-brand)}.viewport-stats-bar .is-post{background:var(--kz-text-secondary)}.viewport-stats-rows{margin:0}.viewport-stats-row{display:grid;grid-template-columns:7.5em minmax(0,1fr);gap:8px;align-items:baseline;padding:2px 0;font-size:12px;line-height:1.35}.viewport-stats-row dt{margin:0;color:var(--kz-text-muted)}.viewport-stats-row dd{margin:0;font-variant-numeric:tabular-nums}.viewport-stats-row.is-wait dt{color:var(--kz-text-muted)}.viewport-stats-row.is-job dt{color:var(--kz-brand)}.viewport-stats-row.is-post dt{color:var(--kz-text-secondary)}.viewport-stats-row.is-risk dt,.viewport-stats-row.is-risk dd{color:var(--kz-warning)}.viewport-stats-extra{margin-left:4px}.viewport-stats-copy{margin-top:8px;padding:2px 8px;font:500 var(--kz-text-micro) / 1 var(--kz-font);letter-spacing:.08em;text-transform:uppercase;color:var(--kz-text);background:transparent;border:1px solid var(--kz-border);border-radius:var(--kz-radius-control);cursor:pointer}.viewport-stats-copy:hover{border-color:var(--kz-brand)}.viewport-stats.is-embedded{position:static;left:auto;bottom:auto;width:auto;flex:1;min-height:0;overflow:auto;background:transparent;border:0;border-radius:0}.lab-drawer{position:absolute;top:56px;right:10px;bottom:36px;z-index:var(--kz-z-hud);width:min(280px,calc(100% - 20px));display:flex;flex-direction:column;background:var(--kz-elevated);border:1px solid var(--kz-border);border-radius:var(--kz-radius-control);overflow:hidden}.lab-drawer-notes{width:min(420px,calc(100% - 20px))}.lab-tree{position:absolute;top:12px;left:12px;z-index:var(--kz-z-hud);width:min(220px,calc(100% - 24px));max-height:min(56%,calc(100% - 48px));display:flex;flex-direction:column;background:var(--kz-elevated);border:1px solid var(--kz-border);border-radius:var(--kz-radius-control);overflow:hidden}.lab-tree-list{flex:1;min-height:0;overflow:auto;padding:4px 0 6px}.lab-tree-empty{margin:8px 10px;font-size:12px}.lab-tree-row{display:grid;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:4px;width:100%;height:22px;padding-right:8px;background:transparent;color:var(--kz-text);cursor:pointer;font:500 12px / 1 var(--kz-font)}.lab-tree-row.is-hover{background:var(--kz-hover)}.lab-tree-row.is-on{background:var(--kz-brand-muted);color:var(--kz-brand)}.lab-tree-row.is-dim{opacity:.45}.lab-tree-twist{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;background:transparent;color:var(--kz-text-muted);border:0;cursor:pointer;font:11px / 1 var(--kz-font)}.lab-tree-twist.is-leaf{cursor:default}.lab-tree-id{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--kz-font-mono);font-size:11px}.lab-tree-meta{color:var(--kz-text-muted);font-size:var(--kz-text-micro);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.lab-tree-row.is-on .lab-tree-meta{color:var(--kz-brand)}.lab-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:8px;height:36px;padding:0 10px;border-bottom:1px solid var(--kz-border);flex:0 0 auto}.lab-drawer .notes-scroll{padding:12px}.lab-plane{position:absolute;top:12px;right:10px;bottom:10px;z-index:var(--kz-z-hud);width:min(340px,calc(100% - 20px));display:flex;flex-direction:column;background:var(--kz-elevated);border:1px solid var(--kz-border);border-radius:var(--kz-radius-control);overflow:hidden}.lab-canvas:has(.lab-plane) .viewport-hud,.manual-viewport:has(.lab-plane) .viewport-hud{right:calc(18px + min(340px,calc(100% - 20px)))}.lab-plane-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.lab-plane .notes-scroll{flex:1;min-height:0;overflow:auto;padding:12px}.lab-plane .lab-tree-list{flex:1;min-height:0}.viewport-tools{display:none}.viewport-toggle{background:var(--kz-elevated);color:var(--kz-text);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);padding:6px 11px;cursor:pointer;font:inherit;font-weight:500}.viewport-toggle:hover{border-color:color-mix(in srgb,var(--kz-brand) 55%,var(--kz-rule))}.viewport-toggle.is-on{border-color:color-mix(in srgb,var(--kz-brand) 55%,var(--kz-rule));color:var(--kz-brand);background:var(--kz-brand-muted)}h2{margin:10px 0 8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--muted)}.pane>h2{margin:0 0 10px;flex:0 0 auto;display:flex;align-items:baseline;justify-content:space-between;gap:8px}.pane>h2 .hint{margin-left:8px}.editor-keys{font-size:10px;letter-spacing:.04em;text-transform:none;color:var(--muted);font-weight:400}.search-label{display:flex;flex-direction:column;gap:6px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--muted)}.gallery-head{display:flex;flex-direction:column;gap:6px;flex:0 0 auto}.gallery-head-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.gallery-kicker{font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--muted)}.gallery-search-row{display:flex;align-items:stretch;gap:6px}.gallery-search-row .search{flex:1;min-width:0}.gallery-step,.gallery-sort{flex:0 0 auto;background:var(--input-bg);color:var(--fg);border:1px solid var(--input-border);border-radius:var(--kz-radius-control);cursor:pointer;font:inherit;font-weight:500}.gallery-step{display:flex;align-items:center;justify-content:center;min-width:32px;padding:0 8px;font-size:18px;line-height:1}.gallery-sort{padding:2px 8px;font-size:11px;letter-spacing:.04em;color:var(--muted);text-transform:none}.gallery-step:hover:not(:disabled),.gallery-sort:hover{border-color:color-mix(in srgb,var(--kz-brand) 55%,var(--input-border))}.gallery-sort[aria-pressed=true]{color:var(--kz-brand);border-color:color-mix(in srgb,var(--kz-brand) 55%,var(--input-border))}.gallery-step:disabled{opacity:.4;cursor:default}.gallery-step:focus-visible,.gallery-sort:focus-visible{outline:none;border-color:color-mix(in srgb,var(--kz-brand) 55%,var(--input-border))}.search{width:100%;background:var(--input-bg);color:var(--input-fg);border:1px solid var(--input-border);border-radius:var(--kz-radius-control);padding:7px 9px;font:inherit;text-transform:none;letter-spacing:0}.search:focus{outline:none;border-color:color-mix(in srgb,var(--kz-brand) 55%,var(--input-border))}.gallery{display:flex;flex-direction:column;gap:2px;margin:12px 0 0;flex:1;min-height:0;overflow:auto}.gallery-item{display:block;width:100%;text-align:left;background:transparent;color:var(--fg);border:1px solid transparent;border-radius:var(--kz-radius-control);padding:7px 9px;cursor:pointer;font:inherit;font-weight:500}.gallery-item:hover{background:var(--gui-widget)}.gallery-item.is-active{background:var(--gui-hover);color:var(--kz-brand)}.note-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}.pill{font-size:10px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;color:var(--muted);border:1px solid var(--border);border-radius:var(--kz-radius-control);padding:2px 8px}.notes-scroll{min-height:0;flex:1;overflow:auto}.notes-title{margin:0 0 6px;font-size:16px;font-weight:500;letter-spacing:-.02em}.notes-summary{margin:0 0 10px;color:var(--muted)}.notes-body{font-size:13px}.notes-body p,.notes-body ul{margin:0 0 8px}.notes-body code,.doc code{font-family:var(--font-mono);font-size:12px}.notes-foot{margin:10px 0 0}.hint{margin:0;color:var(--kz-brand);font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:500}.pane.lab-json{overflow:hidden;background:var(--kz-code);border-radius:0;border:1px solid var(--kz-rule)}.program-editor{position:relative;display:flex;flex-direction:column;flex:1;min-height:0}.program-editor-host{flex:1;min-height:0}.program-editor-host .cm-editor{height:100%}.program-editor .cm-value-num{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;border:none;box-shadow:none;outline:none;text-decoration:none}.gui-host{flex:1;min-height:0;overflow:auto}.gui-host-view{flex:0 0 auto;overflow:visible}.gui-host .lil-gui{--background-color: var(--gui-bg);--text-color: var(--gui-text);--title-background-color: var(--gui-title);--widget-color: var(--gui-widget);--focus-color: var(--kz-brand);--hover-color: var(--gui-hover);--number-color: var(--gui-number);--string-color: var(--gui-text);width:100%!important;border:none;font-family:var(--font)}.muted{color:var(--muted)}.viewport{flex:1;position:relative;min-height:0;overflow:hidden}.viewport-host{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:none}.viewport-host canvas{display:block;touch-action:none}.viewport-btn{position:absolute;left:12px;bottom:12px;z-index:2}.viewport-btn:hover{border-color:color-mix(in srgb,var(--kz-brand) 55%,var(--kz-rule))}.hover-label{position:absolute;left:12px;top:12px;z-index:2;background:var(--kz-elevated);color:var(--kz-text);border:1px solid var(--kz-border);padding:3px 7px;pointer-events:none;font-size:11px;font-family:var(--kz-font-mono);border-radius:var(--kz-radius-control)}.lab-canvas-view:has(.authoring-card) .hover-label{left:264px}.viewport.is-measure .hover-label{left:12px;top:auto;bottom:12px}.inference-status{position:absolute;left:12px;bottom:12px;z-index:2;background:var(--kz-elevated);color:var(--kz-text);border:1px solid var(--kz-rule);padding:6px 10px;pointer-events:none;font-size:12px;font-family:var(--kz-font);border-radius:var(--kz-radius-control);max-width:min(420px,70%)}.viewport-measure-box{position:absolute;right:12px;bottom:12px;z-index:2;min-width:88px;padding:6px 10px;background:var(--kz-elevated);color:var(--kz-text);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);pointer-events:none;font-family:var(--kz-font-mono);font-size:13px;text-align:right}.viewport.is-measure .viewport-host canvas{cursor:crosshair}.measure-card{position:absolute;top:12px;left:12px;z-index:var(--kz-z-hud);min-width:148px;padding:10px 12px;background:var(--kz-elevated);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);pointer-events:none;color:var(--kz-text);font-family:var(--kz-font-mono);font-size:var(--kz-text-label)}.measure-card-dist{margin:0 0 8px;color:var(--kz-brand);font-size:var(--kz-text-ui);font-weight:600;letter-spacing:.02em}.measure-card-rows{margin:0}.measure-card-row{display:grid;grid-template-columns:48px 1fr;gap:8px;align-items:baseline}.measure-card-row dt{margin:0;color:var(--kz-text-muted)}.measure-card-row dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.error{flex:0 0 auto;position:relative;z-index:4;background:var(--error-bg);color:var(--error-fg);padding:8px 12px;white-space:normal;overflow-wrap:anywhere;line-height:1.4}.error-hint{margin-top:6px;font-weight:600}.check-panel{flex:1;min-height:0;overflow:auto;padding:12px;font-size:13px;line-height:1.45}.check-block{margin:0 0 16px}.check-block .kz-kicker{display:block;margin-bottom:8px}.check-block ul{margin:0;padding:0;list-style:none}.check-block li{margin:0 0 10px}.check-block.is-refuse{padding:8px 10px;background:var(--error-bg);color:var(--error-fg);border-radius:var(--kz-radius-control)}.check-type{font-family:var(--kz-font-mono);font-size:11px}.check-ids{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.check-id{display:inline;padding:0;border:0;background:none;color:var(--kz-brand);cursor:pointer;font:11px/1.4 var(--kz-font-mono)}.check-id:hover{text-decoration:underline}.check-num{font-family:var(--kz-font-mono);font-size:11px}.check-more{margin:16px 0 0}.statusbar{display:flex;align-items:center;gap:16px;padding:0 16px;background:var(--kz-chrome);border-top:1px solid var(--kz-rule-strong);color:var(--kz-text-muted);font:11px/1 var(--kz-font-mono);user-select:text;-webkit-user-select:text}.statusbar .grow{flex:1}.home{position:relative;min-height:0;height:100%;overflow:hidden;padding:var(--kz-space-5);background:var(--kz-canvas)}.home-copy{position:absolute;z-index:3;left:calc(var(--kz-space-5) + 16px);top:calc(var(--kz-space-5) + 8px);max-width:520px;pointer-events:none}.home-copy .kz-kicker{padding-bottom:var(--kz-space-3);margin:0 0 var(--kz-space-4);border-bottom:1px solid var(--kz-rule-strong)}.home-copy h1{margin:0 0 var(--kz-space-4);max-width:8.4em;font-size:var(--kz-text-display-xl)}.home-copy p{margin:0 0 var(--kz-space-2);max-width:34em;font-size:var(--kz-text-body);line-height:var(--kz-leading-body)}.home-params{pointer-events:auto;display:flex;flex-direction:column;gap:10px;margin:var(--kz-space-4) 0 var(--kz-space-3);padding:var(--kz-space-3) 0;max-width:280px;background:transparent;border:0;border-top:1px solid var(--kz-rule);border-bottom:1px solid var(--kz-rule);border-radius:0}.home-param{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center;margin:0;font-size:var(--kz-text-label);color:var(--kz-text-secondary)}.home-param output{font-family:var(--kz-font-mono);font-size:var(--kz-text-micro);color:var(--kz-text)}.home-param input[type=range]{grid-column:1 / -1;width:100%;margin:0;accent-color:var(--kz-brand)}.home-params-meta{margin:0;font-size:var(--kz-text-micro);color:var(--kz-text-muted)}.home-params-view{display:flex;flex-wrap:wrap;gap:6px}.home-actions{display:flex;gap:8px;pointer-events:auto;margin-top:18px}.home-copy .error{margin-top:12px;pointer-events:auto}.home-stage{position:relative;height:100%;display:flex;flex-direction:column;min-height:0;border-radius:0;overflow:hidden;border:1px solid var(--kz-rule);background:var(--kz-stage)}.home-wait{position:absolute;left:100px;bottom:20px;z-index:3;margin:0}.doc{overflow:auto;max-width:720px;margin:0 auto;padding:40px 24px 64px}.doc h1{margin:0 0 12px;padding-bottom:var(--kz-space-4);border-bottom:1px solid var(--kz-rule-strong);font-size:var(--kz-text-page);font-weight:500;letter-spacing:var(--kz-tracking-display);line-height:var(--kz-leading-display)}.doc h2{margin:28px 0 8px;font-size:12px}.doc pre{overflow:auto;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--kz-radius-control);padding:12px 14px;font:12px/1.5 var(--font-mono)}.app-manual{grid-template-rows:44px 1fr}.manual{min-height:0;display:grid;grid-template-columns:220px minmax(320px,min(720px,40%)) minmax(0,1fr);background:var(--kz-canvas)}.manual-toc{overflow:auto;padding:24px 12px 40px 20px;border-right:1px solid var(--border);background:var(--kz-chrome);counter-reset:manual}.manual-toc h2{margin:0 0 10px}.manual-toc-block{margin:0}.manual-toc-group{margin:16px 0 6px;font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.manual-toc-block:first-of-type .manual-toc-group{margin-top:4px}.manual-toc ol{margin:0;padding:0;list-style:none}.manual-toc li{counter-increment:manual}.manual-toc-link{display:grid;grid-template-columns:auto 1fr;column-gap:7px;row-gap:2px;align-items:start;padding:8px;border-radius:var(--kz-radius-control);color:var(--fg);text-decoration:none;line-height:1.35;border:1px solid transparent}.manual-toc-link:before{content:counter(manual) ".";grid-row:1 / span 2;padding-top:1px;color:var(--muted)}.manual-toc-title{min-width:0}.manual-toc-sum{grid-column:2;font-size:11px;line-height:1.35;color:var(--muted)}.manual-search{margin:0 0 14px}.manual-toc-link:hover{border-color:color-mix(in srgb,var(--kz-brand) 45%,var(--kz-rule))}.manual-toc-link.is-active{color:var(--kz-brand);background:color-mix(in srgb,var(--kz-brand) 10%,transparent);border-color:color-mix(in srgb,var(--kz-brand) 55%,var(--kz-rule))}.manual-body{min-width:0;margin:0;max-width:none;padding:28px 28px 56px}.manual-body>*{max-width:none}.manual-summary{margin:0 0 8px;color:var(--muted);font-size:15px;line-height:1.5}.manual-body h2{margin:34px 0 10px;padding-top:var(--kz-space-3);border-top:1px solid var(--kz-rule);font-size:var(--kz-text-feature);font-weight:500;letter-spacing:var(--kz-tracking-display);line-height:var(--kz-leading-tight);text-transform:none;color:var(--fg)}.manual-body h3{margin:24px 0 8px;font-size:14px;font-weight:600;letter-spacing:0;color:var(--fg)}.manual-prose p,.manual-prose li{line-height:1.65}.manual-prose p{margin:12px 0}.manual-prose ul,.manual-prose ol{margin:12px 0;padding-left:22px}.manual-prose li{margin:5px 0}.manual-prose a{color:var(--kz-brand)}.manual-prose strong{font-weight:600}.manual-prose code{background:var(--input-bg);border:1px solid var(--input-border);border-radius:4px;padding:1px 5px}.manual-prose blockquote{margin:14px 0;padding:2px 0 2px 14px;border-left:2px solid color-mix(in srgb,var(--kz-brand) 60%,var(--kz-rule));color:var(--muted)}.manual-prose table{width:100%;margin:16px 0;border-collapse:collapse;font-size:13px}.manual-prose th,.manual-prose td{text-align:left;vertical-align:top;padding:7px 10px;border-bottom:1px solid var(--border);line-height:1.5}.manual-prose th{color:var(--muted);font-weight:500;font-size:11px;letter-spacing:.06em;text-transform:uppercase;border-bottom-color:var(--kz-rule-strong)}.manual-prose td code{white-space:nowrap}.manual-example{margin:18px 0;border:1px solid var(--kz-rule);border-radius:0;overflow:hidden;background:var(--kz-code)}.manual-example.is-active{border-color:color-mix(in srgb,var(--kz-brand) 60%,var(--kz-rule))}.manual-example figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px 8px 14px;background:var(--kz-subtle);border-bottom:1px solid var(--kz-rule);font-size:13px}.manual-example figcaption .viewport-toggle{flex:0 0 auto;padding:4px 9px;font-size:12px;-webkit-backdrop-filter:none;backdrop-filter:none}.manual-example-actions{display:flex;align-items:center;gap:6px}.manual-example-editor{height:auto;min-height:0;max-height:907.25px}.manual-example-editor .program-editor{height:auto;max-height:inherit;flex:none}.manual-example-editor .program-editor-host{flex:none;height:auto;min-height:0}.manual-example-editor .program-editor-host .cm-editor{height:auto;max-height:907.25px;border:0;border-radius:0}.manual-pager{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:48px 0 8px;padding-top:20px;border-top:1px solid var(--border)}.manual-pager-link{display:flex;flex-direction:column;gap:3px;color:var(--fg);text-decoration:none;min-width:0}.manual-pager-link:hover{color:var(--kz-brand)}.manual-pager-link.is-next{text-align:right;justify-self:end}.manual-example pre{margin:0;border:0;border-radius:0;background:transparent;max-height:915.25px}.manual-stage{min-width:0;min-height:0;margin:16px var(--kz-space-4) var(--kz-space-4) 12px;display:flex;flex-direction:column;border:1px solid var(--kz-rule);border-radius:0;overflow:hidden;background:var(--kz-stage)}.manual-stage-empty{align-items:center;justify-content:center}.manual-stage-caption{position:absolute;top:14px;left:14px;z-index:var(--kz-z-hud);margin:0;max-width:calc(100% - 280px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;font-size:13px;color:var(--kz-text-secondary)}.manual-viewport{flex:1;min-height:0;position:relative;display:flex;flex-direction:column}.manual-numbers{flex:0 0 auto;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding:0;background:var(--border);border-top:1px solid var(--border)}.manual-numbers>div{background:var(--chrome);padding:9px 12px;min-width:0}.manual-numbers dt{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.manual-numbers dd{margin:3px 0 0;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}p.manual-numbers{display:block;padding:10px 12px;background:var(--chrome)}.manual-refused{flex:0 0 auto;display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-top:1px solid var(--border);background:var(--error-bg);color:var(--error-fg);font-size:13px;line-height:1.45;overflow-wrap:anywhere}.manual-refused-type{font-family:var(--font-mono);font-size:11px;opacity:.85}@media(max-width:1180px){.manual{grid-template-columns:minmax(0,min(720px,46%)) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.manual-toc{grid-column:1 / -1;overflow:visible;padding:8px 14px 10px;border-right:0;border-bottom:1px solid var(--border)}.manual-toc h2{display:none}.manual-toc-group{flex:1 0 100%;margin:8px 0 2px}.manual-toc ol{display:flex;flex-wrap:wrap;gap:4px}.manual-toc li{flex:0 0 auto}.manual-toc-link{padding:5px 9px;white-space:nowrap;font-size:13px;display:flex;align-items:baseline;gap:7px}.manual-toc-link:before{grid-row:auto}.manual-toc-sum{display:none}.manual-body{padding:24px 20px 56px}.manual-stage{margin:12px var(--kz-space-4) var(--kz-space-4) 8px}.manual-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:780px){.manual{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) minmax(280px,38vh)}.manual-stage{margin:0 var(--kz-space-4) var(--kz-space-4);border-left:0}.manual-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:960px){html,body,#root{height:100dvh}.app{grid-template-rows:calc(44px + env(safe-area-inset-top,0px)) 40px 1fr;min-height:100dvh}.app-lab{grid-template-rows:calc(44px + env(safe-area-inset-top,0px)) 40px 1fr;overscroll-behavior:none}.app-home,.app-doc,.app-manual{grid-template-rows:calc(44px + env(safe-area-inset-top,0px)) 1fr}.app-lab .statusbar{display:none}.lab-tabs{display:flex}.lab-tab{height:40px;touch-action:manipulation}.topbar{gap:8px;padding:env(safe-area-inset-top,0px) calc(10px + env(safe-area-inset-right,0px)) 0 calc(10px + env(safe-area-inset-left,0px))}.topbar-context{flex:1 1 0;width:auto;justify-content:flex-start}.topbar .kz-status{overflow:hidden;width:14px;font-size:0;letter-spacing:0}.nav-menu{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;touch-action:manipulation}.site-nav{display:none;position:absolute;top:calc(100% - 1px);right:0;z-index:30;flex-direction:column;align-items:stretch;gap:2px;min-width:168px;padding:8px;background:var(--kz-elevated);border:1px solid var(--kz-border);border-radius:var(--kz-radius-control)}.site-nav.is-open{display:flex}.site-nav .nav-link{min-height:44px;display:flex;align-items:center}.example-switch .kz-kicker{display:none}.example-switch-row>.kz-tooltip{display:none}.lab{padding:6px calc(6px + env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) calc(6px + env(safe-area-inset-left,0px))}.lab-code-panel,.lab-view-panel{padding:0}.app[data-pane=code] .lab-view-panel,.app[data-pane=view] .lab-code-panel,.app[data-pane=code] .resize-handle,.app[data-pane=view] .resize-handle{display:none!important}.app[data-pane=code] .lab-code-panel,.app[data-pane=view] .lab-view-panel{flex:1 1 100%!important;width:100%!important}.viewport-hud{top:8px;left:8px;right:auto;justify-content:flex-start;flex-wrap:nowrap;overflow:visible;max-width:calc(100% - 16px)}.viewport-hud-phone{display:block;pointer-events:auto}.viewport-hud-desk{display:none}.viewport-hud.is-more-open .viewport-hud-desk{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;position:absolute;top:52px;left:0;z-index:2;max-width:calc(100vw - 24px);padding:8px;background:var(--kz-elevated);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control);pointer-events:auto}.lab-canvas:has(.lab-plane) .viewport-hud,.manual-viewport:has(.lab-plane) .viewport-hud{right:auto;max-width:calc(100% - 16px)}.viewport-hud-group .kz-icon-btn,.viewport-hud-group .kz-icon-btn.is-glyph{min-width:44px;width:44px;height:44px;touch-action:manipulation}.viewport-hud-group .kz-icon-btn:not(.is-glyph){width:auto;min-width:44px;padding:0 10px}.viewport-hud-tools{--hud-tool: 44px}.lab-canvas.is-split,.manual-viewport.is-split{flex-direction:column}.lab-canvas.is-split .lab-canvas-view,.manual-viewport.is-split .lab-canvas-view{flex:1 1 48%;min-height:0}.lab-canvas.is-split .lab-plane,.manual-viewport.is-split .lab-plane{position:relative;inset:auto;width:auto;height:auto;flex:1 1 52%;max-height:none;border-radius:0;border-left:0;border-right:0;border-bottom:0}.lab-drawer-head{height:44px}.lab-plane .lab-drawer-head .kz-icon-btn{min-width:44px;min-height:36px;touch-action:manipulation}.manual-toc{display:none}.manual{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(240px,42vh)}.manual:has(.is-split){grid-template-rows:minmax(0,28vh) minmax(0,1fr)}.manual-stage{margin:0;border-radius:0;border-left:0;border-right:0;border-bottom:0}.manual-stage-caption,.viewport-meta{display:none}.home{display:flex;flex-direction:column;overflow:auto;gap:8px}.home-copy{position:relative;left:auto;top:auto;max-width:none;pointer-events:auto;z-index:1}.home-copy h1{font-size:var(--kz-text-page);max-width:none}.home-stage{flex:1 1 42vh;min-height:240px}.home-stage .viewport-btn{min-width:44px;min-height:44px}.doc{max-width:none;padding:20px calc(16px + env(safe-area-inset-right,0px)) calc(32px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px))}.feedback-signin,.feedback-signin-field{width:100%}.feedback-signin-field input,.feedback-note textarea,.library-tools input,.library-tools textarea,.feedback-view-item input,.kz-command-search{font-size:16px}.feedback-row{min-height:52px}.feedback-row-wrap{flex-direction:column}.feedback-row-actions{flex-direction:row;flex-wrap:wrap;width:100%;padding:0 0 8px 12px}.feedback-inbox-session{flex-wrap:wrap}.library-tools .kz-btn,.library-tools .text-btn,.feedback-sticky .kz-btn,.feedback-signin .kz-btn,.feedback-add-view{width:100%;min-height:44px}.feedback-inbox-btn{width:auto;min-height:32px;align-self:flex-start}.feedback-verdict-btn{min-height:44px}.feedback-tag{min-height:40px;padding:0 12px;touch-action:manipulation}.hover-label{display:none}.measure-card{top:8px;left:auto;right:8px}}@media(max-width:960px)and (orientation:landscape){.lab-canvas.is-split,.manual-viewport.is-split{flex-direction:row}.lab-canvas.is-split .lab-canvas-view,.manual-viewport.is-split .lab-canvas-view{flex:1 1 55%;min-width:0}.lab-canvas.is-split .lab-plane,.manual-viewport.is-split .lab-plane{flex:1 1 45%;max-width:45%;height:auto;border-top:0;border-left:1px solid var(--kz-border)}.manual:has(.is-split){grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.manual:has(.is-split) .manual-body{display:none}}.feedback-strip{display:flex;flex-direction:column;min-width:0}.feedback-strip.is-embedded{flex:1;min-height:0;overflow:hidden;padding:0;border:0;background:transparent;gap:0}.feedback-scroll{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:16px;padding:12px 12px 8px}.feedback-sticky{flex:0 0 auto;display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:8px 12px calc(10px + env(safe-area-inset-bottom,0px) + var(--keyboard-inset, 0px));border-top:1px solid var(--kz-border);background:var(--kz-elevated)}.feedback-block{display:flex;flex-direction:column;align-items:stretch;gap:6px;min-width:0}.feedback-block-label{margin:0;font:500 var(--kz-text-micro) / 1 var(--kz-font);letter-spacing:.08em;text-transform:uppercase;color:var(--kz-text-muted)}.feedback-verdict{display:flex;gap:8px}.feedback-verdict .kz-tooltip{flex:1 1 0;min-width:0}.feedback-verdict-btn{width:100%}.feedback-tags{display:flex;flex-wrap:wrap;gap:4px;min-width:0}.feedback-tag{height:28px;padding:0 8px;background:transparent;color:var(--kz-text-secondary);border:1px solid var(--kz-border);border-radius:var(--kz-radius-control);cursor:pointer;font:500 var(--kz-text-micro) / 1 var(--kz-font);letter-spacing:.02em}.feedback-tag:hover{color:var(--kz-text);border-color:color-mix(in srgb,var(--kz-brand) 40%,var(--kz-rule))}.feedback-tag.is-on{color:var(--kz-brand);background:var(--kz-brand-muted);border-color:color-mix(in srgb,var(--kz-brand) 55%,var(--kz-rule))}.feedback-note{display:flex;flex-direction:column;align-items:stretch;gap:6px;min-width:0}.feedback-note textarea{width:100%;min-height:72px;resize:vertical;padding:8px;background:var(--kz-canvas);color:var(--kz-text);border:1px solid var(--kz-border);border-radius:var(--kz-radius-control);font:400 var(--kz-text-ui) / 1.4 var(--kz-font)}.feedback-note textarea:focus-visible{outline:none;box-shadow:var(--kz-focus)}.feedback-note-count{align-self:flex-end;font:400 var(--kz-text-micro) / 1 var(--kz-font-mono);color:var(--kz-text-muted)}.feedback-views-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.feedback-views-count{font:400 var(--kz-text-micro) / 1 var(--kz-font-mono);color:var(--kz-text-muted)}.feedback-add-view{width:100%}.feedback-views-hint{margin:0;font:400 var(--kz-text-label) / 1.4 var(--kz-font);color:var(--kz-text-muted)}.feedback-view-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.feedback-view-item{display:flex;align-items:center;gap:6px}.feedback-view-item input{flex:1;min-width:0;height:28px;padding:0 8px;background:var(--kz-canvas);color:var(--kz-text);border:1px solid var(--kz-border);border-radius:var(--kz-radius-control);font:400 var(--kz-text-ui) / 1 var(--kz-font)}.feedback-view-item input:focus-visible{outline:none;box-shadow:var(--kz-focus)}.feedback-view-remove{height:28px;padding:0 8px;background:transparent;color:var(--kz-text-muted);border:1px solid var(--kz-border);border-radius:var(--kz-radius-control);cursor:pointer;font:500 var(--kz-text-micro) / 1 var(--kz-font)}.feedback-view-remove:hover{color:var(--kz-text)}.feedback-save{width:100%}.feedback-status{margin:0;font:400 var(--kz-text-label) / 1.4 var(--kz-font);color:var(--kz-text-muted)}.feedback-status.is-ok{color:var(--kz-brand)}.feedback-status.is-err{color:var(--kz-warning)}.feedback-inbox-btn{align-self:flex-start;margin-top:auto;padding:0;border:0;color:var(--kz-text-muted);font:500 var(--kz-text-label) / 1 var(--kz-font)}.feedback-inbox-btn:hover{color:var(--kz-text);border-color:transparent}.feedback-replay{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 8px;background:var(--kz-panel);border:1px solid var(--kz-rule);border-radius:var(--kz-radius-control)}.lab-canvas>.feedback-replay{flex:0 0 auto;margin:0;border-radius:0;border-left:0;border-right:0;border-bottom:0}.lab-plane .feedback-replay{flex:0 0 auto;margin:8px 12px 0}.feedback-inbox h1{margin-bottom:8px}.feedback-inbox-banner,.feedback-inbox-err{padding:10px 12px;border:1px solid var(--kz-border);border-radius:var(--kz-radius-control)}.feedback-inbox-err{background:var(--error-bg);color:var(--error-fg)}.feedback-signin{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:20px 0}.feedback-signin-field{display:flex;flex-direction:column;gap:4px;width:min(360px,100%);font:500 var(--kz-text-label) / 1 var(--kz-font);letter-spacing:.08em;text-transform:uppercase;color:var(--kz-text-muted)}.feedback-signin-field input{height:36px;padding:0 10px;background:var(--kz-canvas);color:var(--kz-text);border:1px solid var(--kz-border);border-radius:var(--kz-radius-control);font:400 var(--kz-text-ui) / 1 var(--kz-font);text-transform:none;letter-spacing:0}.feedback-signin-field input:focus-visible{outline:none;box-shadow:var(--kz-focus)}.feedback-inbox-session{display:flex;align-items:center;gap:12px;margin:16px 0}.feedback-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;border-top:1px solid var(--kz-rule)}.feedback-row{display:grid;grid-template-columns:52px minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:12px;row-gap:2px;width:100%;padding:12px 0;background:transparent;color:var(--kz-text);border:0;border-bottom:1px solid var(--kz-rule);border-radius:0;cursor:pointer;font:inherit;text-align:left}.feedback-row:hover{border-color:var(--kz-rule);background:var(--kz-hover)}.feedback-row-verdict{grid-row:1 / -1;align-self:center;font:600 var(--kz-text-ui) / 1 var(--kz-font);letter-spacing:.06em;text-transform:uppercase;color:var(--kz-brand)}.feedback-row-meta{display:flex;flex-wrap:wrap;gap:8px}.feedback-row-when{font:500 var(--kz-text-ui) / 1.3 var(--kz-font)}.feedback-row-tags,.feedback-row-note{color:var(--kz-text-secondary);font:400 var(--kz-text-label) / 1.4 var(--kz-font)}.feedback-row-wrap{display:flex;align-items:flex-start;gap:8px}.feedback-row-wrap .feedback-row{flex:1;min-width:0}.feedback-row-actions{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding-top:8px;flex-shrink:0}.library-tools{margin-top:20px;display:flex;flex-direction:column;gap:12px;padding-top:16px;border-top:1px solid var(--kz-border)}.library-tools-sticky{position:sticky;bottom:0;z-index:1;display:flex;flex-direction:column;gap:12px;margin:4px -12px 0;padding:10px 12px calc(8px + env(safe-area-inset-bottom,0px) + var(--keyboard-inset, 0px));background:var(--kz-elevated)}.library-check{display:flex;align-items:flex-start;gap:8px;font:400 var(--kz-text-label) / 1.4 var(--kz-font)}.library-check input{margin-top:2px}@media(max-width:960px){.feedback-signin-field input,.feedback-note textarea,.library-tools input,.library-tools textarea,.feedback-view-item input{font-size:16px}}
