:root{--lv-surface-0: #0c0e11;--lv-surface-1: #14171b;--lv-surface-2: #1a1e24;--lv-surface-3: #21262d;--lv-surface-4: #2a3038;--lv-canvas-bed: #181b21;--lv-canvas-card: #dfe6ee;--lv-canvas-sheet: rgba(178, 222, 240, .55);--lv-canvas-zip: #2f3237;--lv-canvas-shadow: #000000;--lv-canvas-handle: #ffffff;--lv-canvas-snap: #ff3db8;--lv-canvas-grid: rgba(163, 170, 180, .16);--lv-canvas-grid-minor: rgba(163, 170, 180, .06);--lv-scrim: rgba(0, 0, 0, .6);--lv-border: #262b33;--lv-border-strong: #343a44;--lv-border-control: #737a83;--lv-border-control-hover: var(--lv-text-muted);--lv-border-focus: #4aa3ff;--lv-outline-light: #ffffff;--lv-outline-dark: #000000;--lv-drawing-paper: #ffffff;--lv-text: #e8eaed;--lv-text-muted: #a3aab4;--lv-text-subtle: #767d88;--lv-text-inverse: #0c0e11;--lv-text-on-warning: #1a1a1a;--lv-accent: #4aa3ff;--lv-accent-hover: #66b4ff;--lv-accent-active: #3d8adc;--lv-accent-soft: rgba(74, 163, 255, .12);--lv-accent-soft-hover: rgba(74, 163, 255, .18);--lv-success: #4ad6a0;--lv-success-soft: rgba(74, 214, 160, .12);--lv-warning: #f5b547;--lv-warning-soft: rgba(245, 181, 71, .12);--lv-danger: #ff5c5c;--lv-danger-soft: rgba(255, 92, 92, .12);--lv-info: #4aa3ff;--lv-info-soft: rgba(74, 163, 255, .12);--lv-op-cut: #ff4d4d;--lv-op-score: #4aa3ff;--lv-op-holes: #3ecf8e;--lv-op-engrave: #c2a27c;--lv-font-sans: "Inter", "SF Pro Text", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--lv-font-mono: "JetBrains Mono", "SF Mono", "Menlo", "Consolas", "Liberation Mono", monospace;--lv-text-xs: 11px;--lv-text-sm: 12px;--lv-text-base: 13px;--lv-text-md: 14px;--lv-text-lg: 16px;--lv-text-xl: 20px;--lv-text-2xl: 24px;--lv-text-3xl: 32px;--lv-line-tight: 1.2;--lv-line-base: 1.45;--lv-line-relaxed: 1.6;--lv-weight-regular: 400;--lv-weight-medium: 500;--lv-weight-semibold: 600;--lv-weight-bold: 700;--lv-tracking-tight: -.01em;--lv-tracking-normal: 0;--lv-tracking-wide: .02em;--lv-tracking-caps: .06em;--lv-space-0: 0;--lv-space-1: 2px;--lv-space-2: 4px;--lv-space-3: 6px;--lv-space-4: 8px;--lv-space-5: 12px;--lv-space-6: 16px;--lv-space-7: 20px;--lv-space-8: 24px;--lv-space-9: 32px;--lv-space-10: 48px;--lv-space-11: 64px;--lv-control-height-sm: 26px;--lv-radius-sm: 4px;--lv-radius-md: 6px;--lv-radius-lg: 8px;--lv-radius-xl: 12px;--lv-radius-full: 9999px;--lv-shadow-xs: 0 1px 2px rgba(0, 0, 0, .35);--lv-shadow-sm: 0 2px 4px rgba(0, 0, 0, .35);--lv-shadow-md: 0 8px 16px rgba(0, 0, 0, .4);--lv-shadow-lg: 0 16px 32px rgba(0, 0, 0, .5);--lv-shadow-xl: 0 24px 48px rgba(0, 0, 0, .55);--lv-ease: cubic-bezier(.2, .8, .2, 1);--lv-ease-out: cubic-bezier(.22, 1, .36, 1);--lv-ease-in: cubic-bezier(.4, 0, 1, 1);--lv-duration-instant: 80ms;--lv-duration-fast: .12s;--lv-duration-base: .18s;--lv-duration-slow: .26s;--lv-z-base: 0;--lv-z-raised: 10;--lv-z-dropdown: 100;--lv-z-sticky: 200;--lv-z-overlay: 900;--lv-z-modal: 1000;--lv-z-toast: 1100;--lv-z-tooltip: 1200;--lv-header-height: 48px;--lv-status-bar-height: 28px;--lv-tool-palette-width: 48px;--lv-left-panel-width: 260px;--lv-right-panel-width: 320px;color-scheme:dark}:root[data-theme=light]{--lv-surface-0: #eceef1;--lv-surface-1: #ffffff;--lv-surface-2: #f6f7f9;--lv-surface-3: #e8ebef;--lv-surface-4: #dde1e6;--lv-canvas-bed: #e3e6ea;--lv-canvas-card: #dfe6ee;--lv-canvas-sheet: rgba(178, 222, 240, .55);--lv-canvas-zip: #2f3237;--lv-canvas-shadow: #000000;--lv-canvas-handle: #ffffff;--lv-canvas-snap: #c4007f;--lv-canvas-grid: rgba(40, 48, 60, .14);--lv-canvas-grid-minor: rgba(40, 48, 60, .06);--lv-scrim: rgba(20, 24, 30, .35);--lv-border: #d5d9df;--lv-border-strong: #b8bec7;--lv-border-control: #797f88;--lv-border-focus: #1a66c9;--lv-outline-light: #ffffff;--lv-outline-dark: #000000;--lv-drawing-paper: #ffffff;--lv-text: #1a1d21;--lv-text-muted: #4a525d;--lv-text-subtle: #69717c;--lv-text-inverse: #ffffff;--lv-text-on-warning: #ffffff;--lv-accent: #1a66c9;--lv-accent-hover: #1557ad;--lv-accent-active: #124a94;--lv-accent-soft: rgba(26, 102, 201, .1);--lv-accent-soft-hover: rgba(26, 102, 201, .16);--lv-success: #0c653c;--lv-success-soft: rgba(12, 101, 60, .1);--lv-warning: #9a5b00;--lv-warning-soft: rgba(154, 91, 0, .1);--lv-danger: #c62b2b;--lv-danger-soft: rgba(198, 43, 43, .1);--lv-info: #1a66c9;--lv-info-soft: rgba(26, 102, 201, .1);--lv-op-cut: #d02626;--lv-op-score: #1a66c9;--lv-op-holes: #0f7f4b;--lv-op-engrave: #7a5631;--lv-shadow-xs: 0 1px 2px rgba(16, 24, 40, .08);--lv-shadow-sm: 0 2px 4px rgba(16, 24, 40, .1);--lv-shadow-md: 0 8px 16px rgba(16, 24, 40, .12);--lv-shadow-lg: 0 16px 32px rgba(16, 24, 40, .16);--lv-shadow-xl: 0 24px 48px rgba(16, 24, 40, .2);color-scheme:light}@media (prefers-reduced-motion: reduce){:root{--lv-duration-instant: 0ms;--lv-duration-fast: 0ms;--lv-duration-base: 0ms;--lv-duration-slow: 0ms}}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{background:var(--lv-surface-0);color:var(--lv-text);font-family:var(--lv-font-sans);font-size:var(--lv-text-base);line-height:var(--lv-line-base);font-feature-settings:"cv02","cv03","cv04","cv11";overflow:hidden}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--lv-weight-semibold);letter-spacing:var(--lv-tracking-tight);line-height:var(--lv-line-tight)}h1{font-size:var(--lv-text-3xl)}h2{font-size:var(--lv-text-2xl)}h3{font-size:var(--lv-text-xl)}h4{font-size:var(--lv-text-lg)}p,ul,ol{margin:0;padding:0}ul,ol{list-style-position:inside}a{color:var(--lv-accent);text-decoration:none;transition:color var(--lv-duration-fast) var(--lv-ease)}a:hover{color:var(--lv-accent-hover)}button{background:none;border:none;color:inherit;font:inherit;cursor:pointer;padding:0}input,select,textarea{font:inherit;color:inherit}img,svg{display:block;max-width:100%}table{border-collapse:collapse}::selection{background:var(--lv-accent-soft);color:var(--lv-text)}:focus-visible{outline:2px solid var(--lv-border-focus);outline-offset:2px;border-radius:var(--lv-radius-sm)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--lv-border);border-radius:var(--lv-radius-full);border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--lv-border-strong);background-clip:padding-box;border:2px solid transparent}.lv-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lv-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--lv-space-2);height:32px;padding:0 var(--lv-space-5);border-radius:var(--lv-radius-md);background:var(--lv-surface-2);border:1px solid var(--lv-border);color:var(--lv-text);font-size:var(--lv-text-base);font-weight:var(--lv-weight-medium);line-height:1;transition:background var(--lv-duration-fast) var(--lv-ease),border-color var(--lv-duration-fast) var(--lv-ease),color var(--lv-duration-fast) var(--lv-ease);white-space:nowrap;-webkit-user-select:none;user-select:none}.lv-button:hover:not(:disabled){background:var(--lv-surface-3);border-color:var(--lv-border-strong)}.lv-button:active:not(:disabled){background:var(--lv-surface-2)}.lv-button[aria-pressed=true]{background:var(--lv-accent-soft);border-color:var(--lv-accent);color:var(--lv-accent)}.lv-button[aria-pressed=true]:hover:not(:disabled){background:var(--lv-accent-soft-hover);border-color:var(--lv-accent)}.lv-button:disabled{opacity:.5;cursor:not-allowed}.lv-button--primary{background:var(--lv-accent);border-color:var(--lv-accent);color:var(--lv-text-inverse)}.lv-button--primary:hover:not(:disabled){background:var(--lv-accent-hover);border-color:var(--lv-accent-hover)}.lv-button--primary:active:not(:disabled){background:var(--lv-accent-active);border-color:var(--lv-accent-active)}.lv-button--ghost{background:transparent;border-color:transparent;color:var(--lv-text-muted)}.lv-button--ghost:hover:not(:disabled){background:var(--lv-surface-2);color:var(--lv-text)}.lv-button--danger{background:var(--lv-danger);border-color:var(--lv-danger);color:var(--lv-text-inverse)}.lv-button--danger:hover:not(:disabled){opacity:.9}.lv-button--sm{height:var(--lv-control-height-sm);padding:0 var(--lv-space-4);font-size:var(--lv-text-sm)}.lv-button--lg{height:40px;padding:0 var(--lv-space-6);font-size:var(--lv-text-md)}.lv-button--icon{width:32px;padding:0;gap:0}.lv-button--icon.lv-button--sm{width:var(--lv-control-height-sm)}.lv-input,.lv-select,.lv-textarea{display:block;width:100%;height:32px;padding:0 var(--lv-space-4);background:var(--lv-surface-0);border:1px solid var(--lv-border-control);border-radius:var(--lv-radius-md);color:var(--lv-text);font-size:var(--lv-text-base);line-height:1;transition:border-color var(--lv-duration-fast) var(--lv-ease),background var(--lv-duration-fast) var(--lv-ease)}.lv-textarea{height:auto;min-height:64px;padding:var(--lv-space-3) var(--lv-space-4);line-height:var(--lv-line-base);resize:vertical}.lv-input:hover,.lv-select:hover,.lv-textarea:hover{border-color:var(--lv-border-control-hover)}.lv-input:focus,.lv-select:focus,.lv-textarea:focus{outline:none;border-color:var(--lv-border-focus);background:var(--lv-surface-1)}.lv-input:disabled,.lv-select:disabled,.lv-textarea:disabled{opacity:.5;cursor:not-allowed}.lv-inline-fields{display:flex;flex-wrap:wrap;gap:var(--lv-space-2);align-items:center}.lv-inline-fields>.lv-check{min-width:0}.lv-inline-fields>.lv-color-input{flex:1}.lv-color-input{padding:2px;cursor:pointer}.lv-input--error{border-color:var(--lv-danger)}.lv-input--sized{min-width:calc(var(--lv-field-chars) * 1ch + 2 * var(--lv-space-4) + 2px)}.lv-select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'><path d='M1 1l4 4 4-4' stroke='%23a3aab4' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right var(--lv-space-4) center;padding-right:var(--lv-space-8)}.lv-check{display:inline-flex;align-items:center;gap:var(--lv-space-3);cursor:pointer;-webkit-user-select:none;user-select:none}.lv-checkbox-row{display:flex;align-items:center;gap:var(--lv-space-3);cursor:pointer;-webkit-user-select:none;user-select:none;padding:var(--lv-space-2) 0;font-size:var(--lv-text-sm);line-height:1.4}.lv-checkbox-row:has(input[type=checkbox]:disabled){cursor:default}.lv-check input[type=checkbox],.lv-checkbox-row input[type=checkbox]{appearance:none;width:16px;height:16px;flex-shrink:0;border:1px solid var(--lv-border-control);border-radius:var(--lv-radius-sm);background:var(--lv-surface-0);cursor:pointer;position:relative;transition:background var(--lv-duration-fast) var(--lv-ease),border-color var(--lv-duration-fast) var(--lv-ease)}.lv-check input[type=checkbox]:checked,.lv-checkbox-row input[type=checkbox]:checked{background:var(--lv-accent);border-color:var(--lv-accent)}.lv-check input[type=checkbox]:checked:after,.lv-checkbox-row input[type=checkbox]:checked:after{content:"";position:absolute;top:2px;left:5px;width:4px;height:8px;border:solid var(--lv-text-inverse);border-width:0 2px 2px 0;transform:rotate(45deg)}.lv-checkbox-row input[type=checkbox]:disabled{cursor:not-allowed;opacity:.55}.lv-field{display:flex;flex-direction:column;gap:var(--lv-space-2);margin-bottom:var(--lv-space-5)}.lv-field__label{font-size:var(--lv-text-xs);font-weight:var(--lv-weight-medium);color:var(--lv-text-muted);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps)}.lv-field__hint{font-size:var(--lv-text-xs);color:var(--lv-text-subtle)}.lv-field__error{font-size:var(--lv-text-xs);color:var(--lv-danger)}.lv-panel{background:var(--lv-surface-1);border:1px solid var(--lv-border);border-radius:var(--lv-radius-lg);padding:var(--lv-space-6)}.lv-panel__title{font-size:var(--lv-text-md);font-weight:var(--lv-weight-semibold);margin-bottom:var(--lv-space-4)}.lv-divider{height:1px;background:var(--lv-border);margin:var(--lv-space-5) 0}.lv-tabs{display:flex;gap:var(--lv-space-1);border-bottom:1px solid var(--lv-border);margin-bottom:var(--lv-space-5)}.lv-tabs__tab{position:relative;display:inline-flex;align-items:center;gap:var(--lv-space-2);padding:var(--lv-space-3) var(--lv-space-4);background:transparent;color:var(--lv-text-muted);font-size:var(--lv-text-sm);font-weight:var(--lv-weight-medium);transition:color var(--lv-duration-fast) var(--lv-ease)}.lv-tabs__tab:after{content:"";position:absolute;bottom:-1px;left:var(--lv-space-2);right:var(--lv-space-2);height:2px;background:transparent;border-radius:var(--lv-radius-full);transition:background var(--lv-duration-fast) var(--lv-ease)}.lv-tabs__tab:hover,.lv-tabs__tab--active{color:var(--lv-text)}.lv-tabs__tab--active:after{background:var(--lv-accent)}.lv-tabs__tab-label{font-size:var(--lv-text-sm)}.lv-tabs__tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:var(--lv-radius-full);background:var(--lv-warning);color:var(--lv-text-on-warning);font-size:var(--lv-text-xs);font-weight:var(--lv-weight-semibold);margin-left:var(--lv-space-1)}.lv-tabs--vertical{display:flex;flex-direction:column;gap:2px;border-bottom:none;border-right:1px solid var(--lv-border);margin:0;padding:var(--lv-space-2) 0;width:60px;flex:0 0 60px;background:var(--lv-surface-1);align-self:stretch}.lv-inspector-rail{display:flex;flex-direction:column;flex:0 0 60px;width:60px;border-right:1px solid var(--lv-border);background:var(--lv-surface-1)}.lv-inspector-rail .lv-tabs--vertical{flex:1 1 auto;border-right:none}.lv-inspector-rail__help{display:flex;flex-direction:column;align-items:center;gap:3px;width:54px;margin:0 auto var(--lv-space-2);padding:7px 0 6px;border-radius:var(--lv-radius-md);color:var(--lv-text-muted);font-size:var(--lv-text-xs);line-height:1.2;text-decoration:none}.lv-inspector-rail__help:hover{background:var(--lv-surface-2);color:var(--lv-text)}.lv-tabs--vertical .lv-tabs__tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:54px;padding:7px 0 6px;margin:0 auto;border-radius:var(--lv-radius-md);position:relative}.lv-tabs--vertical .lv-tabs__tab:after{display:none}.lv-tabs--vertical .lv-tabs__tab:hover{background:var(--lv-surface-2)}.lv-tabs--vertical .lv-tabs__tab--active{background:var(--lv-surface-3);color:var(--lv-text)}.lv-tabs--vertical .lv-tabs__tab--active:before{content:"";position:absolute;left:-3px;top:8px;bottom:8px;width:3px;background:var(--lv-accent);border-radius:0 var(--lv-radius-full) var(--lv-radius-full) 0}.lv-tabs--vertical .lv-tabs__tab-label{display:block;font-size:var(--lv-text-xs);line-height:1.2;white-space:nowrap}.lv-tabs--vertical .lv-tabs__tab-badge{position:absolute;top:2px;right:4px;margin:0}.lv-panel-header{display:flex;align-items:center;justify-content:space-between;gap:var(--lv-space-3);padding:var(--lv-space-4) var(--lv-space-5) var(--lv-space-3);border-bottom:1px solid var(--lv-border-subtle, var(--lv-border));position:sticky;top:0;background:var(--lv-surface-1);z-index:5}.lv-panel-header__title{display:flex;align-items:center;gap:var(--lv-space-2);font-size:var(--lv-text-md);font-weight:var(--lv-weight-semibold);color:var(--lv-text)}.lv-panel-header__subtitle{font-size:var(--lv-text-xs);font-weight:var(--lv-weight-regular);color:var(--lv-text-muted)}.lv-panel-header:has(.lv-panel-header__subtitle--below){flex-wrap:wrap;row-gap:var(--lv-space-2)}.lv-panel-header__title:has(.lv-panel-header__subtitle--below){flex:1 1 8em;flex-wrap:wrap;min-width:0;row-gap:2px}.lv-panel-header__subtitle--below{flex-basis:100%;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lv-panel-header__actions{display:flex;gap:var(--lv-space-2);flex-shrink:0}.lv-badge{display:inline-flex;align-items:center;gap:var(--lv-space-2);height:20px;padding:0 var(--lv-space-3);border-radius:var(--lv-radius-full);background:var(--lv-surface-3);color:var(--lv-text-muted);font-size:var(--lv-text-xs);font-weight:var(--lv-weight-medium);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps)}.lv-badge--success{background:var(--lv-success-soft);color:var(--lv-success)}.lv-badge--warning{background:var(--lv-warning-soft);color:var(--lv-warning)}.lv-badge--danger{background:var(--lv-danger-soft);color:var(--lv-danger)}.lv-badge--info{background:var(--lv-info-soft);color:var(--lv-info)}.lv-tooltip{position:absolute;z-index:var(--lv-z-tooltip);padding:var(--lv-space-2) var(--lv-space-4);background:var(--lv-surface-4);border:1px solid var(--lv-border-strong);border-radius:var(--lv-radius-md);color:var(--lv-text);font-size:var(--lv-text-sm);white-space:nowrap;box-shadow:var(--lv-shadow-md);pointer-events:none;opacity:0;transform:translateY(-4px);transition:opacity var(--lv-duration-fast) var(--lv-ease),transform var(--lv-duration-fast) var(--lv-ease)}.lv-tooltip--visible{opacity:1;transform:translateY(0)}.lv-tooltip-kbd{display:inline-block;margin-left:var(--lv-space-3);padding:0 var(--lv-space-2);background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-sm);font-family:var(--lv-font-mono);font-size:var(--lv-text-xs);color:var(--lv-text-muted)}.lv-dialog-backdrop{position:fixed;inset:0;z-index:var(--lv-z-modal);background:var(--lv-scrim);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:var(--lv-space-8);animation:lv-fade-in var(--lv-duration-base) var(--lv-ease-out)}.lv-dialog{background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-xl);box-shadow:var(--lv-shadow-xl);width:min(520px,100%);max-height:90vh;overflow:auto;animation:lv-dialog-in var(--lv-duration-base) var(--lv-ease-out)}.lv-dialog__header{display:flex;align-items:center;justify-content:space-between;padding:var(--lv-space-6);border-bottom:1px solid var(--lv-border)}.lv-dialog__title{font-size:var(--lv-text-lg);font-weight:var(--lv-weight-semibold)}.lv-dialog__body{padding:var(--lv-space-6)}.lv-dialog__body--flush{padding:0}.lv-dialog__footer{display:flex;justify-content:flex-end;gap:var(--lv-space-3);padding:var(--lv-space-5) var(--lv-space-6);border-top:1px solid var(--lv-border)}@keyframes lv-fade-in{0%{opacity:0}to{opacity:1}}@keyframes lv-dialog-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.lv-dropdown{position:absolute;z-index:var(--lv-z-dropdown);min-width:180px;padding:var(--lv-space-2);background:var(--lv-surface-3);border:1px solid var(--lv-border-strong);border-radius:var(--lv-radius-md);box-shadow:var(--lv-shadow-md);animation:lv-dropdown-in var(--lv-duration-fast) var(--lv-ease-out)}.lv-dropdown__item{display:flex;align-items:center;gap:var(--lv-space-3);padding:var(--lv-space-3) var(--lv-space-4);border-radius:var(--lv-radius-sm);font-size:var(--lv-text-sm);color:var(--lv-text);cursor:pointer;transition:background var(--lv-duration-fast) var(--lv-ease)}.lv-dropdown__item:focus{background:var(--lv-surface-4);outline:none}.lv-dropdown__item:focus-visible{outline:2px solid var(--lv-border-focus);outline-offset:-2px}.lv-dropdown__item--danger{color:var(--lv-danger)}.lv-dropdown__item-shortcut{margin-left:var(--lv-space-3);padding:1px 6px;border-radius:var(--lv-radius-sm);background:var(--lv-surface-2);font-size:var(--lv-text-xs);color:var(--lv-text-muted);font-family:var(--lv-font-mono, ui-monospace, SFMono-Regular, monospace)}.lv-dropdown__label{padding:var(--lv-space-2) var(--lv-space-4) var(--lv-space-3);font-size:var(--lv-text-xs);color:var(--lv-text-muted);overflow-wrap:anywhere}.lv-dropdown__separator{height:1px;background:var(--lv-border);margin:var(--lv-space-2) 0}@keyframes lv-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.lv-toast-stack{position:fixed;right:var(--lv-space-6);bottom:var(--lv-space-6);z-index:var(--lv-z-toast);display:flex;flex-direction:column;gap:var(--lv-space-3);pointer-events:none}.lv-toast{display:flex;align-items:flex-start;gap:var(--lv-space-4);min-width:280px;max-width:420px;padding:var(--lv-space-4) var(--lv-space-5);background:var(--lv-surface-3);border:1px solid var(--lv-border-strong);border-radius:var(--lv-radius-md);box-shadow:var(--lv-shadow-lg);pointer-events:auto;animation:lv-toast-in var(--lv-duration-base) var(--lv-ease-out)}.lv-toast__icon{flex-shrink:0;margin-top:2px}.lv-toast__body{flex:1;min-width:0}.lv-toast__title{font-weight:var(--lv-weight-semibold);font-size:var(--lv-text-sm);margin-bottom:var(--lv-space-1)}.lv-toast__message{font-size:var(--lv-text-sm);color:var(--lv-text-muted)}.lv-toast--success{border-color:var(--lv-success)}.lv-toast--success .lv-toast__icon{color:var(--lv-success)}.lv-toast--warning{border-color:var(--lv-warning)}.lv-toast--warning .lv-toast__icon{color:var(--lv-warning)}.lv-toast--danger{border-color:var(--lv-danger)}.lv-toast--danger .lv-toast__icon{color:var(--lv-danger)}.lv-toast--info .lv-toast__icon{color:var(--lv-info)}.lv-toast-stack--anchored{position:absolute;left:50%;right:auto;bottom:var(--lv-space-6);transform:translate(-50%);max-width:calc(100% - 2 * var(--lv-space-6))}.lv-toast-stack--anchored .lv-toast{min-width:min(280px,100%)}.lv-app__body:has(>.lv-drawer--right) .lv-toast-stack--anchored{left:var(--lv-space-6);transform:none;max-width:calc(100% - min(var(--lv-drawer-right-width),85vw) - 2 * var(--lv-space-6))}.lv-app__body:has(>.lv-drawer--left) .lv-toast-stack--anchored{left:auto;right:var(--lv-space-6);transform:none;max-width:calc(100% - min(var(--lv-drawer-left-width),85vw) - 2 * var(--lv-space-6))}@keyframes lv-toast-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.lv-kbd{display:inline-block;padding:0 var(--lv-space-2);height:18px;line-height:18px;font-family:var(--lv-font-mono);font-size:var(--lv-text-xs);color:var(--lv-text-muted);background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-sm);box-shadow:0 1px 0 var(--lv-border-strong)}.lv-spinner{width:14px;height:14px;border:2px solid var(--lv-border);border-top-color:var(--lv-accent);border-radius:var(--lv-radius-full);animation:lv-spin .8s linear infinite}@keyframes lv-spin{to{transform:rotate(360deg)}}.lv-scroll{overflow-y:auto;overflow-x:hidden}.lv-fold-bends{list-style:none;margin:0;padding:0;display:grid;gap:var(--lv-space-1);font-size:var(--lv-text-sm)}.lv-fold-bends li{display:flex;justify-content:space-between;gap:var(--lv-space-2)}.lv-fold-bends li span:last-child{color:var(--lv-text-muted);font-variant-numeric:tabular-nums;text-align:right}.lv-load-errors{margin:0 0 var(--lv-space-4) 0;padding:var(--lv-space-3) var(--lv-space-4);background:var(--lv-danger-soft);border:1px solid var(--lv-danger);border-radius:var(--lv-radius-md);color:var(--lv-danger)}.lv-load-errors__title{font-weight:600;margin-bottom:var(--lv-space-1)}.lv-load-errors__outcome{font-size:var(--lv-text-sm);margin-bottom:var(--lv-space-2)}.lv-load-errors__list{margin:0;padding-left:var(--lv-space-4);font-size:var(--lv-text-xs);overflow-wrap:anywhere}.lv-piece-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--lv-space-3);overflow:auto;flex:1;padding-bottom:var(--lv-space-2)}.lv-yours-card{position:relative;display:flex;min-width:0}.lv-yours-card>.lv-template-card{flex:1;min-width:0}.lv-yours-card .lv-template-card__name{padding-inline-end:var(--lv-space-6);overflow-wrap:anywhere}.lv-yours-card__delete{position:absolute;top:var(--lv-space-2);inset-inline-end:var(--lv-space-2)}.lv-stale-page{position:fixed;top:var(--lv-space-4);left:50%;transform:translate(-50%);z-index:var(--lv-z-toast);display:flex;align-items:center;gap:var(--lv-space-4);max-width:min(640px,calc(100vw - 2 * var(--lv-space-4)));padding:var(--lv-space-3) var(--lv-space-4);background:var(--lv-surface-3);border:1px solid var(--lv-warning);border-radius:var(--lv-radius-md);box-shadow:var(--lv-shadow-lg);color:var(--lv-text);font-size:var(--lv-text-sm)}.lv-stale-page__text{flex:1}.lv-stale-page .lv-button{flex-shrink:0}.lv-app{display:grid;grid-template-rows:var(--lv-header-height) auto 1fr var(--lv-status-bar-height);grid-template-columns:minmax(0,1fr);height:100vh;background:var(--lv-surface-0)}.lv-app>.lv-app__header{grid-row:1}.lv-app>.lv-progress{grid-row:2}.lv-app>.lv-app__body{grid-row:3}.lv-app>.lv-app__status-bar{grid-row:4}.lv-app__header{grid-row:1;display:flex;align-items:center;gap:var(--lv-space-4);padding:0 var(--lv-space-6);background:var(--lv-surface-1);border-bottom:1px solid var(--lv-border);min-height:var(--lv-header-height)}.lv-app__body{grid-row:2;display:grid;overflow:hidden;position:relative}.lv-drawer__scrim{position:absolute;inset:0;background:var(--lv-scrim);z-index:var(--lv-z-overlay)}.lv-drawer{position:absolute;top:0;bottom:0;display:flex;z-index:calc(var(--lv-z-overlay) + 1);background:var(--lv-surface-1);box-shadow:var(--lv-shadow-lg);outline:none}.lv-drawer--left{left:var(--lv-tool-palette-width)}.lv-drawer--right{right:0}.lv-drawer>.lv-side-panel{flex:1;min-width:0}.lv-narrow-screen{min-height:100vh;padding:var(--lv-space-9) var(--lv-space-6);background:var(--lv-surface-0);color:var(--lv-text);display:flex;flex-direction:column;gap:var(--lv-space-6)}.lv-narrow-screen h1{font-size:var(--lv-text-xl);line-height:var(--lv-line-tight)}.lv-narrow-screen p{color:var(--lv-text-muted);line-height:var(--lv-line-relaxed)}.lv-narrow-screen__links{display:flex;flex-direction:column;gap:var(--lv-space-4)}.lv-narrow-screen__links>.lv-button{justify-content:center}.lv-app__status-bar{grid-row:3;display:flex;align-items:center;gap:var(--lv-space-5);padding:0 var(--lv-space-6);background:var(--lv-surface-1);border-top:1px solid var(--lv-border);font-size:var(--lv-text-xs);color:var(--lv-text-muted);min-height:var(--lv-status-bar-height)}.lv-brand{display:inline-flex;align-items:center;gap:var(--lv-space-3);font-weight:var(--lv-weight-semibold);font-size:var(--lv-text-md);letter-spacing:var(--lv-tracking-tight)}.lv-brand__mark{width:24px;height:24px;border-radius:var(--lv-radius-md);background:linear-gradient(135deg,var(--lv-accent) 0%,var(--lv-success) 100%);display:grid;place-items:center;color:var(--lv-text-inverse);font-weight:var(--lv-weight-bold);font-size:var(--lv-text-sm)}.lv-app__header-divider{width:1px;height:20px;background:var(--lv-border);margin:0 var(--lv-space-2)}.lv-app__header-title{flex:1;display:flex;align-items:center;gap:var(--lv-space-3);min-width:0;font-weight:var(--lv-weight-medium);color:var(--lv-text)}.lv-app__header-title .project-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:320px}.lv-app__header-actions{display:inline-flex;align-items:center;gap:var(--lv-space-3)}.lv-app__header-menus{display:inline-flex;align-items:center;gap:var(--lv-space-1);margin-left:auto;margin-right:var(--lv-space-3)}.lv-app__header-menus+.lv-app__header-actions{margin-left:0}.lv-tool-palette{display:flex;flex-direction:column;align-items:center;padding:var(--lv-space-3) 0;background:var(--lv-surface-1);border-right:1px solid var(--lv-border);gap:var(--lv-space-2)}.lv-tool-palette__group{display:flex;flex-direction:column;gap:var(--lv-space-1)}.lv-tool-palette__divider{width:24px;height:1px;background:var(--lv-border);margin:var(--lv-space-2) 0}.lv-tool-button{width:36px;height:36px;display:grid;place-items:center;border-radius:var(--lv-radius-md);background:transparent;color:var(--lv-text-muted);transition:background var(--lv-duration-fast) var(--lv-ease),color var(--lv-duration-fast) var(--lv-ease)}.lv-tool-button:hover{background:var(--lv-surface-3);color:var(--lv-text)}.lv-tool-button--active{background:var(--lv-accent-soft);color:var(--lv-accent)}.lv-tool-button--active:hover{background:var(--lv-accent-soft-hover)}.lv-tool-button--active,.lv-layer__toggle--on,.lv-status-bar__item[aria-pressed=true]{box-shadow:inset 0 -2px 0 var(--lv-accent)}.lv-side-panel{display:flex;flex-direction:column;min-height:0;background:var(--lv-surface-1)}.lv-side-panel--left{border-right:1px solid var(--lv-border)}.lv-side-panel--right{border-left:1px solid var(--lv-border)}.lv-side-panel--with-rail{flex-direction:row}.lv-side-panel--with-rail .lv-side-panel__body{flex:1;min-width:0}.lv-side-panel__header{display:flex;align-items:center;justify-content:space-between;padding:var(--lv-space-5) var(--lv-space-5);border-bottom:1px solid var(--lv-border)}.lv-side-panel__title{font-size:var(--lv-text-sm);font-weight:var(--lv-weight-semibold);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps);color:var(--lv-text-muted)}.lv-side-panel__body{flex:1;overflow-y:auto;padding:var(--lv-space-5);padding-bottom:var(--lv-space-10)}.lv-side-panel__body--flush{padding:0;padding-bottom:var(--lv-space-10)}.lv-resize-handle-bar{width:5px;cursor:col-resize;background:transparent;position:relative;z-index:var(--lv-z-raised);flex-shrink:0;transition:background var(--lv-duration-fast) var(--lv-ease)}.lv-resize-handle-bar:hover,.lv-resize-handle-bar:active{background:var(--lv-accent);opacity:.5}.lv-resize-handle-bar:active{opacity:.8}.lv-layers-list{display:flex;flex-direction:column}.lv-layer{display:flex;align-items:center;gap:var(--lv-space-3);padding:var(--lv-space-3) var(--lv-space-5);cursor:pointer;border-left:2px solid transparent;transition:background var(--lv-duration-fast) var(--lv-ease);-webkit-user-select:none;user-select:none}.lv-layer__grip{display:flex;flex:none;justify-content:center;width:var(--lv-space-5);margin-left:calc(-1 * var(--lv-space-5));margin-right:calc(-1 * var(--lv-space-3));color:var(--lv-text-muted);cursor:grab;visibility:hidden}.lv-layer:hover>.lv-layer__grip,.lv-layer:focus>.lv-layer__grip,.lv-layer--dragging>.lv-layer__grip{visibility:visible}.lv-layer:hover,.lv-layer--hovered{background:var(--lv-surface-2)}.lv-layer--selected{background:var(--lv-accent-soft);border-left-color:var(--lv-accent)}.lv-layer__swatch{width:14px;height:14px;flex-shrink:0;border-radius:var(--lv-radius-sm);box-shadow:0 0 0 1px #00000080,0 1px 3px #00000080}.lv-layer__label{flex:1;min-width:0;display:flex;flex-direction:column;gap:0;font-size:var(--lv-text-sm)}.lv-layer__label-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lv-layer__label-role{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--lv-text-xs);color:var(--lv-text-subtle);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps)}.lv-layer__place{font-size:var(--lv-text-xs);color:var(--lv-text-muted);overflow-wrap:anywhere}.lv-layer__pocket-order{flex-shrink:0;font-size:var(--lv-text-xs);color:var(--lv-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.lv-layer__line{display:flex;align-items:center;gap:var(--lv-space-2);min-width:0;min-height:20px}.lv-layer__line>.lv-layer__label-name,.lv-layer__line>.lv-layer__label-role{flex:1;min-width:0}.lv-layer__actions{display:none;flex-shrink:0;gap:0;margin-left:auto}.lv-layer__actions .lv-button--icon.lv-button--sm{width:22px;height:20px}.lv-layer:hover .lv-layer__actions,.lv-layer--selected .lv-layer__actions,.lv-layer__actions:focus-within{display:flex}.lv-layer__actions--shown{display:flex}.lv-layer:not(:hover):not(.lv-layer--selected) .lv-layer__actions--shown .lv-layer__extra,.lv-layer:not(:hover):not(.lv-layer--selected) .lv-layer__actions--shown .lv-button:not(.lv-layer__toggle--on){display:none}.lv-layer__toggle--on{color:var(--lv-accent)}.lv-layer--hidden .lv-layer__label,.lv-layer--hidden .lv-layer__swatch{opacity:.45}.lv-layer__lift{font-size:var(--lv-text-xs);color:var(--lv-text-muted);overflow-wrap:anywhere}.lv-layer--under-lift .lv-layer__swatch{opacity:.45}.lv-layer:focus-visible{outline:2px solid var(--lv-border-focus);outline-offset:-2px}.lv-layer--dragging{opacity:.5}.lv-layer--drop-before{box-shadow:inset 0 2px 0 var(--lv-accent)}.lv-layer--drop-after{box-shadow:inset 0 -2px 0 var(--lv-accent)}.lv-layers-note{display:flex;align-items:flex-start;gap:var(--lv-space-2);margin:0 var(--lv-space-3) var(--lv-space-2);padding:var(--lv-space-2) var(--lv-space-3);border-radius:var(--lv-radius-md);background:var(--lv-warning-soft);color:var(--lv-text);font-size:var(--lv-text-xs);line-height:var(--lv-line-base)}.lv-layers-note>svg{color:var(--lv-warning);flex-shrink:0;margin-top:2px}.lv-layers-note>span{flex:1;min-width:0}.lv-layers-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--lv-space-2) var(--lv-space-5)}.lv-layers-toolbar__hint{font-size:var(--lv-text-xs);color:var(--lv-text-subtle);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps)}.lv-section{padding:var(--lv-space-5) var(--lv-space-5);border-bottom:1px solid var(--lv-border)}.lv-section:last-child{border-bottom:none}.lv-section__action{margin:var(--lv-space-2) 0 var(--lv-space-3)}.lv-section__warning{margin:0 0 var(--lv-space-3);padding:var(--lv-space-2) var(--lv-space-3);border-radius:var(--lv-radius-sm);background:var(--lv-warning-soft);color:var(--lv-warning);font-size:var(--lv-text-sm)}.lv-section__error{margin:0 0 var(--lv-space-3);padding:var(--lv-space-2) var(--lv-space-3);border-radius:var(--lv-radius-sm);background:var(--lv-danger-soft);color:var(--lv-danger);font-size:var(--lv-text-sm)}.lv-section__title{display:flex;flex-wrap:wrap;gap:var(--lv-space-1) var(--lv-space-2);align-items:center;justify-content:space-between;font-size:var(--lv-text-xs);font-weight:var(--lv-weight-semibold);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps);color:var(--lv-text-muted);margin-bottom:var(--lv-space-4)}.lv-section__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--lv-space-1)}.lv-empty-state{padding:var(--lv-space-6);text-align:center;color:var(--lv-text-subtle);font-size:var(--lv-text-sm)}.lv-empty-state__icon{color:var(--lv-text-subtle);margin-bottom:var(--lv-space-3);display:inline-block}.lv-empty-state .lv-button{margin-top:var(--lv-space-3)}.lv-status-bar__item{display:inline-flex;align-items:center;gap:var(--lv-space-2);color:var(--lv-text-muted);font-family:var(--lv-font-mono);font-size:var(--lv-text-xs)}.lv-status-bar__item--interactive{cursor:pointer;padding:0 var(--lv-space-3);height:20px;border-radius:var(--lv-radius-sm);transition:background var(--lv-duration-fast) var(--lv-ease)}.lv-status-bar__item--interactive:hover{background:var(--lv-surface-3);color:var(--lv-text)}.lv-status-bar__item[aria-pressed=true]{color:var(--lv-accent)}.lv-status-bar__item[aria-pressed=false]{color:var(--lv-text-muted)}.lv-status-bar__split{display:inline-flex;align-items:center}.lv-status-bar__split>[data-testid=snap-targets]{padding:0 var(--lv-space-1)}.lv-status-dot{width:6px;height:6px;border-radius:var(--lv-radius-full);background:var(--lv-text-subtle)}.lv-status-dot--saved{background:var(--lv-success)}.lv-status-dot--saving{background:var(--lv-warning)}.lv-status-dot--error{background:var(--lv-danger)}.lv-banner{display:flex;align-items:center;gap:var(--lv-space-3);padding:var(--lv-space-3) var(--lv-space-6);font-size:var(--lv-text-sm);border-bottom:1px solid var(--lv-border)}.lv-banner--warning{background:var(--lv-warning-soft);color:var(--lv-warning);border-bottom-color:color-mix(in srgb,var(--lv-warning) 30%,transparent)}.lv-banner--info{background:var(--lv-info-soft);color:var(--lv-info);border-bottom-color:color-mix(in srgb,var(--lv-info) 30%,transparent)}.lv-banner .lv-banner__message{flex:1}.lv-banner .lv-banner__actions{display:inline-flex;gap:var(--lv-space-2)}.lv-section__note{font-weight:var(--lv-weight-regular);text-transform:none;letter-spacing:normal}.lv-link-button{background:none;border:none;padding:0;font:inherit;color:var(--lv-accent);cursor:pointer;text-decoration:underline}.lv-hint{font-size:var(--lv-text-xs);color:var(--lv-text-muted);padding:var(--lv-space-2) var(--lv-space-3)}.lv-seam-suggestions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--lv-space-1)}.lv-seam-suggestions li{display:flex;align-items:center;gap:var(--lv-space-1);font-size:var(--lv-text-sm);content-visibility:auto;contain-intrinsic-size:none auto var(--lv-control-height-sm)}.lv-seam-suggestions__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lv-feature{padding:var(--lv-space-3);margin-bottom:var(--lv-space-2);background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md)}.lv-feature__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--lv-space-2)}.lv-feature__kind{font-size:var(--lv-text-sm);font-weight:var(--lv-weight-medium)}.lv-feature__fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--lv-space-2)}.lv-feature__position{display:flex;gap:var(--lv-space-1);align-items:center}.lv-feature__position>:first-child{flex:1;min-width:0}.lv-layer-stack__header{padding-left:var(--lv-space-2)}.lv-layer-stack__header .lv-layer__label-name{font-weight:600}.lv-layer-stack__fold{flex-shrink:0}.lv-layer-stack__join{margin:0;padding:var(--lv-space-1) var(--lv-space-2)}.lv-layer--in-stack{padding-left:calc(var(--lv-space-5) + var(--lv-space-4))}.lv-multi-list{list-style:none;margin:0 0 var(--lv-space-2);padding:0;display:flex;flex-direction:column;gap:var(--lv-space-1)}.lv-multi-list>li{display:flex;align-items:baseline;justify-content:space-between;gap:var(--lv-space-2);font-size:var(--lv-text-sm)}.lv-multi-list__role{font-size:var(--lv-text-xs);color:var(--lv-text-subtle);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps)}.lv-progress{border-bottom:1px solid var(--lv-border-subtle, var(--lv-border));background:var(--lv-surface-1);overflow-x:auto}.lv-progress__steps{display:flex;gap:var(--lv-space-1);margin:0;padding:var(--lv-space-1) var(--lv-space-4);list-style:none}.lv-progress__step{display:inline-flex;align-items:center;gap:var(--lv-space-2);padding:var(--lv-space-1) var(--lv-space-3);border:0;border-radius:var(--lv-radius-sm);background:none;color:var(--lv-text-muted);font-size:var(--lv-text-xs);white-space:nowrap;cursor:pointer}.lv-progress__step:hover{background:var(--lv-surface-2);color:var(--lv-text)}.lv-progress__label{font-weight:600}.lv-progress__step[data-state=done] svg{color:var(--lv-success)}.lv-progress__step[data-state=todo]{color:var(--lv-text)}.lv-progress__step[data-state=todo] svg{color:var(--lv-warning)}.lv-progress__step[data-state=ready] svg{color:var(--lv-accent)}.lv-progress__step[data-state=waiting]{opacity:.5}.lv-progress__step[aria-current=step]{background:var(--lv-surface-2);color:var(--lv-text)}@media (max-width: 1099px){.lv-brand>:not(.lv-brand__mark){display:none}.lv-app__header-label{display:none}.lv-app__header{gap:var(--lv-space-2);padding:0 var(--lv-space-4)}}@media (max-width: 1099px){.lv-progress__step:not([aria-current=step]) .lv-progress__detail{display:none}}.lv-laser-speeds{margin:0 0 var(--lv-space-3);padding:0;border:none;container-type:inline-size}.lv-laser-speeds__grid{display:grid;grid-template-columns:max-content minmax(min-content,1fr) minmax(min-content,5em);gap:var(--lv-space-2);align-items:center;margin-bottom:var(--lv-space-2)}.lv-laser-speeds__row{display:grid;grid-column:1 / -1;grid-template-columns:subgrid;align-items:center}@container (max-width: 234.4px){.lv-laser-speeds__grid{display:flex;flex-direction:column;align-items:stretch;gap:var(--lv-space-1)}.lv-laser-speeds__row{display:flex;flex-wrap:wrap;gap:var(--lv-space-1) var(--lv-space-2)}.lv-laser-speeds__row>span:first-child{flex:0 0 100%}.lv-laser-speeds__row>.lv-input{flex:1 1 0}.lv-laser-speeds__row>.lv-field__error{flex:0 0 100%}}.lv-laser-speeds__grid--powered{grid-template-columns:max-content minmax(min-content,1fr) minmax(min-content,5em) minmax(min-content,5em)}.lv-laser-speeds__row>.lv-field__error{grid-column:1 / -1}.lv-laser-speeds__heads>span{color:var(--lv-text-muted);font-size:var(--lv-text-xs)}@container (max-width: 234.4px){.lv-laser-speeds__heads>span:first-child{display:none}.lv-laser-speeds__heads>span{flex:1 1 0;min-width:0}}.lv-laser-rows{margin-top:var(--lv-space-4)}.lv-laser-rows__list{display:flex;flex-direction:column;gap:var(--lv-space-2);margin:var(--lv-space-2) 0 0;padding:0;list-style:none}.lv-laser-row{padding:var(--lv-space-3);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md)}.lv-laser-row[data-open=true]{background:var(--lv-surface-2)}.lv-laser-row__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--lv-space-2);width:100%;padding:0;border:0;background:none;color:var(--lv-text);cursor:pointer;text-align:start;font:inherit}.lv-laser-row__head>svg{align-self:center;color:var(--lv-text-muted)}.lv-laser-row__head:focus-visible{outline:2px solid var(--lv-border-focus);outline-offset:2px;border-radius:var(--lv-radius-sm)}.lv-laser-row__title{overflow-wrap:anywhere}.lv-laser-row__line{margin-top:var(--lv-space-1);margin-inline-start:calc(14px + var(--lv-space-2));color:var(--lv-text-muted);font-size:var(--lv-text-sm)}.lv-laser-row__body:not([hidden]){display:flex;flex-direction:column;gap:var(--lv-space-3);margin-top:var(--lv-space-3)}.lv-laser-row__body .lv-laser-speeds{margin-bottom:0}.lv-laser-row__card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--lv-space-2)}.lv-laser-row__card>.lv-kerf-test{align-self:stretch;margin-top:0}.lv-laser-rows__add{display:flex;flex-direction:column;gap:var(--lv-space-2);margin-top:var(--lv-space-2);padding:var(--lv-space-3);border:1px dashed var(--lv-border);border-radius:var(--lv-radius-md)}.lv-kerf-test{display:flex;flex-direction:column;align-items:stretch;gap:var(--lv-space-2);margin-top:var(--lv-space-3)}.lv-kerf-test>.lv-button{align-self:flex-start}.lv-thread-colour{display:flex;align-items:center;gap:var(--lv-space-2)}.lv-thread-colour>.lv-select{flex:1;min-width:0}.lv-thread-colour__swatch{flex:none;width:18px;height:18px;border-radius:var(--lv-radius-sm);border:1px solid var(--lv-border)}.lv-hw-hint{font-size:var(--lv-text-xs);color:var(--lv-text-muted);margin:var(--lv-space-2) 0}.lv-hw-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:var(--lv-space-2)}.lv-hw-card{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:var(--lv-space-2);align-items:start;padding:var(--lv-space-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md);background:var(--lv-surface-2);color:var(--lv-text);text-align:left;cursor:pointer}.lv-hw-card:hover:not(:disabled){border-color:var(--lv-border-strong);background:var(--lv-surface-3)}.lv-hw-card:focus-visible{outline:2px solid var(--lv-border-focus);outline-offset:1px}.lv-hw-card:disabled{cursor:not-allowed;opacity:.6}.lv-hw-card__icon{grid-row:1 / span 3;color:var(--lv-text-muted);padding-top:2px}.lv-hw-card__name{font-size:var(--lv-text-sm);font-weight:500;line-height:1.3;overflow-wrap:anywhere}.lv-hw-card__meta{font-size:var(--lv-text-xs);color:var(--lv-text-muted);line-height:1.3;overflow-wrap:anywhere}.lv-hw-list{display:flex;flex-direction:column;gap:var(--lv-space-1)}.lv-hw-list-item{display:flex;align-items:center;gap:var(--lv-space-2);padding:var(--lv-space-1) var(--lv-space-2);border-radius:var(--lv-radius-sm)}.lv-hw-list-item:hover{background:var(--lv-surface-2)}.lv-hw-list-item__layers{font-size:var(--lv-text-xs);color:var(--lv-text-muted)}.lv-hw-list-item__fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--lv-space-2);margin-top:var(--lv-space-1)}.lv-feature__wide{grid-column:1 / -1}.lv-corners{margin-top:var(--lv-space-3)}.lv-corners__head{display:flex;align-items:center;justify-content:space-between;gap:var(--lv-space-2);margin-bottom:var(--lv-space-2)}.lv-corners__toggle{display:inline-flex;align-items:center;gap:var(--lv-space-1);font-size:var(--lv-text-xs);color:var(--lv-text-muted);cursor:pointer}.lv-corners__grid{display:flex;flex-direction:column;gap:var(--lv-space-2)}.lv-corners__row{display:flex;flex-wrap:wrap;gap:var(--lv-space-2);align-items:center}.lv-corners__row>.lv-corners__name{flex:0 0 calc(5.5 * var(--lv-text-base))}.lv-corners__row>.lv-select{flex:1.2 1 0;min-width:calc(7 * var(--lv-text-base))}.lv-corners__row>.lv-input,.lv-corners__row>span:not(.lv-corners__name){flex:1 1 0}.lv-corners__row>.lv-field__error{flex:0 0 100%}.lv-corners__name{font-size:var(--lv-text-xs);color:var(--lv-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lv-seam-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.lv-seam-row{display:flex;align-items:flex-start;gap:var(--lv-space-1);border-radius:var(--lv-radius-sm)}.lv-seam-row:hover,.lv-seam-row--hovered{background:var(--lv-surface-2)}.lv-seam-row--hidden .lv-seam-row__main{opacity:.55}.lv-seam-row--unsewn .lv-seam-row__detail:first-of-type{color:var(--lv-warning)}.lv-seam-row__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;padding:var(--lv-space-2);border:0;background:none;color:var(--lv-text);text-align:left;cursor:pointer}.lv-seam-row__main:focus-visible{outline:2px solid var(--lv-border-focus);outline-offset:-2px;border-radius:var(--lv-radius-sm)}.lv-seam-row__name{font-size:var(--lv-text-sm);overflow-wrap:anywhere}.lv-seam-row__detail{font-size:var(--lv-text-xs);color:var(--lv-text-muted);overflow-wrap:anywhere}.lv-seam-row__note{color:var(--lv-text)}.lv-seam-row__actions{display:flex;padding-top:var(--lv-space-1);opacity:0}.lv-seam-edits{display:flex;flex-wrap:wrap;gap:var(--lv-space-2);align-items:center}.lv-seam-edits .lv-button{max-width:100%;overflow-wrap:anywhere;text-align:start}.lv-seam-row:hover .lv-seam-row__actions,.lv-seam-row--selected .lv-seam-row__actions,.lv-seam-row--hidden .lv-seam-row__actions,.lv-seam-row__actions:focus-within{opacity:1}@media (hover: none){.lv-seam-row__actions{opacity:1}}.lv-seam-stats{font-size:var(--lv-text-xs);color:var(--lv-text-muted);margin-top:var(--lv-space-2)}.lv-validation-group__heading{display:flex;gap:var(--lv-space-3);padding:var(--lv-space-3) var(--lv-space-5) 0;font-size:var(--lv-text-sm)}.lv-validation-group__heading+.lv-validation-item{padding-top:var(--lv-space-2)}.lv-validation-group__heading~.lv-validation-item{padding-left:calc(var(--lv-space-5) + 14px + var(--lv-space-3))}.lv-variant{display:grid;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;column-gap:var(--lv-space-2);padding:var(--lv-space-2) 0;border-top:1px solid var(--lv-border)}.lv-variant__swatch{width:14px;height:14px;border-radius:var(--lv-radius-sm);box-shadow:0 0 0 1px #00000080,0 1px 3px #00000080}.lv-variant__name{min-width:0;overflow-wrap:anywhere;font-size:var(--lv-text-sm);font-weight:var(--lv-weight-semibold)}.lv-variant__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--lv-space-1)}.lv-variant__detail{grid-column:2 / -1;margin:0}.lv-pictures{list-style:none;margin:var(--lv-space-2) 0 0;padding:0}.lv-pictures__row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:var(--lv-space-2);padding:var(--lv-space-2) 0;border-top:1px solid var(--lv-border)}.lv-pictures__name{min-width:0;overflow-wrap:anywhere;font-size:var(--lv-text-sm);font-weight:var(--lv-weight-semibold)}.lv-pictures__row>.lv-hint{grid-column:1 / -1;margin:0}.lv-sews__lines{list-style:none;margin:0 0 var(--lv-space-3);padding:0;display:grid;gap:var(--lv-space-1)}.lv-sews__line{display:flex;gap:var(--lv-space-2);align-items:baseline;padding:var(--lv-space-1) var(--lv-space-2);border-radius:var(--lv-radius-sm);overflow-wrap:anywhere}.lv-sews__line:hover{background:var(--lv-accent-soft)}.lv-sews__n{flex:none;display:inline-grid;place-items:center;width:20px;height:20px;border:1.5px solid var(--lv-text);border-radius:50%;font-size:var(--lv-text-xs);font-weight:var(--lv-weight-medium);font-variant-numeric:tabular-nums}.lv-sews__chips{display:flex;flex-wrap:wrap;gap:var(--lv-space-2)}.lv-sews__chip{display:inline-flex;flex-wrap:wrap;align-items:baseline;max-width:100%;min-height:32px;padding:var(--lv-space-1) var(--lv-space-3);border:1.5px solid var(--lv-accent);border-radius:999px;background:var(--lv-accent-soft);color:var(--lv-text);font:inherit;font-size:var(--lv-text-sm);text-align:start;overflow-wrap:anywhere;cursor:pointer}.lv-sews__chip[aria-pressed=false]{border-style:dashed;border-color:var(--lv-warning);background:transparent}.lv-sews__chip:disabled{cursor:default}.lv-sews__state{color:var(--lv-warning)}.lv-sews__note{color:var(--lv-text-muted)}.lv-sewn-by__about{margin-bottom:var(--lv-space-2);color:var(--lv-text-muted);font-size:var(--lv-text-xs)}.lv-sewn-by__rows{display:grid;gap:var(--lv-space-2);margin:0;padding:0;list-style:none}.lv-sewn-by__row{display:grid;gap:var(--lv-space-1);padding:var(--lv-space-2);border-radius:var(--lv-radius-sm);background:var(--lv-surface-2)}.lv-sewn-by__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:var(--lv-space-2);overflow-wrap:anywhere}.lv-sewn-by__count,.lv-sewn-by__stretch{color:var(--lv-text-muted);font-size:var(--lv-text-sm)}.lv-seam-stitching__sentence{margin:0 0 var(--lv-space-2)}.lv-disclosure__button{display:flex;align-items:center;gap:var(--lv-space-2);width:100%;min-height:32px;padding:0;border:0;background:none;color:var(--lv-text-muted);cursor:pointer;text-align:start;font-size:var(--lv-text-xs);font-weight:var(--lv-weight-semibold);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps)}.lv-disclosure__button:hover{color:var(--lv-text)}.lv-disclosure__button:focus-visible{outline:2px solid var(--lv-border-focus);outline-offset:2px;border-radius:var(--lv-radius-sm)}.lv-disclosure__title{overflow-wrap:anywhere}.lv-disclosure__state{margin-inline-start:calc(14px + var(--lv-space-2));color:var(--lv-text-muted);font-size:var(--lv-text-sm)}.lv-disclosure__body:not([hidden]){margin-top:var(--lv-space-2)}.lv-disclosure__body>.lv-section{padding-inline:0}.lv-disclosure__body>.lv-section:last-child{padding-bottom:0}.lv-canvas{position:absolute;inset:0;background:radial-gradient(ellipse at center,var(--lv-surface-1) 0%,var(--lv-surface-0) 100%);overflow:hidden;min-height:0}.lv-canvas__svg{display:block;width:100%;height:100%;touch-action:none}.lv-canvas__svg:focus{outline:none}.lv-canvas [data-piece-id]:focus{outline:none}.lv-piece-focus__dark{stroke:var(--lv-outline-dark);stroke-width:6px}.lv-piece-focus__light{stroke:var(--lv-outline-light);stroke-width:2px}.lv-lift-hinge__dark{stroke:var(--lv-outline-dark);stroke-width:4px}.lv-lift-hinge__light{stroke:var(--lv-outline-light);stroke-width:2px}@media (max-resolution: 1.99dppx){.lv-canvas [data-testid=selected-edge],.lv-canvas [data-testid=selected-edge-rim]{shape-rendering:crispEdges}}@media (forced-colors: active){.lv-piece-focus__dark{stroke:none}.lv-piece-focus__light{stroke:Highlight;stroke-width:3px;stroke-dasharray:var(--lv-ring-dash)}.lv-canvas [data-testid=selected-edge]{stroke:Highlight}.lv-canvas [data-testid=selected-edge-rim]{stroke:CanvasText}.lv-canvas [data-testid=selected-edge-rim]+[data-testid=selected-edge-rim]{stroke:Canvas}.lv-canvas [data-edge-above][data-outside=true] [data-testid=edge-above]{stroke:CanvasText}.lv-canvas [data-testid=piece-edge-rim],.lv-canvas [data-testid=edge-above-rim]{stroke:none}.lv-canvas [data-testid=selection-box]{stroke:Highlight}.lv-canvas [data-testid=selection-handle]{fill:Canvas;stroke:Highlight}.lv-lift-hinge__dark{stroke:none}.lv-lift-hinge__light{stroke:Highlight;stroke-width:3px}.lv-canvas [data-testid=lift-badge] rect{fill:Canvas;stroke:CanvasText}.lv-canvas [data-testid=lift-badge] text{fill:CanvasText}.lv-stretches__badge line{stroke:CanvasText}.lv-stretches__badge circle{fill:Canvas;stroke:CanvasText}.lv-stretches__badge text{fill:CanvasText}.lv-stretches__badge[data-lit=true] circle{fill:Highlight;stroke:Highlight}.lv-stretches__badge[data-lit=true] text{fill:HighlightText}.lv-stretches__ring-dark{stroke:Canvas}.lv-stretches__ring-light{stroke:Highlight}.lv-stretches__piece{stroke:Highlight;fill:none}.lv-stretches__free{stroke:CanvasText;fill:none}.lv-stretches__chip rect{fill:Canvas;stroke:CanvasText}.lv-stretches__chip text{fill:CanvasText}}.lv-stretches__badge{cursor:default}.lv-stretches__badge line{stroke:var(--lv-accent);stroke-width:1.25px}.lv-stretches__badge circle{fill:var(--lv-surface);stroke:var(--lv-accent);stroke-width:1.5px}.lv-stretches__badge text{fill:var(--lv-text);font-weight:600;font-variant-numeric:tabular-nums}.lv-stretches__badge[data-lit=true] circle{fill:var(--lv-accent)}.lv-stretches__badge[data-lit=true] text{fill:var(--lv-text-inverse)}.lv-stretches__ring-dark{stroke:var(--lv-outline-dark);stroke-width:1.5px;vector-effect:non-scaling-stroke}.lv-stretches__ring-light{stroke:var(--lv-outline-light);stroke-width:1.5px;vector-effect:non-scaling-stroke}.lv-stretches__piece{fill:var(--lv-accent-soft);stroke:var(--lv-accent);stroke-width:2.5px}.lv-stretches__free{fill:var(--lv-warning-soft);stroke:var(--lv-warning);stroke-width:2.5px;stroke-dasharray:var(--lv-free-dash)}.lv-stretches__chip rect{fill:var(--lv-accent)}.lv-stretches__chip text{fill:var(--lv-text-inverse);font-weight:500}.lv-canvas__overlay{position:absolute;pointer-events:none}.lv-canvas__hover-label{position:absolute;width:max-content;max-width:360px;padding:var(--lv-space-1) var(--lv-space-3);background:var(--lv-surface-4);border:1px solid var(--lv-border-strong);border-radius:var(--lv-radius-sm);font-size:var(--lv-text-xs);color:var(--lv-text-muted);overflow-wrap:anywhere;pointer-events:none;z-index:2}.lv-canvas__hover-label strong{color:var(--lv-text);font-weight:600}.lv-canvas__refreshing{position:absolute;top:var(--lv-space-4);right:var(--lv-space-5);padding:var(--lv-space-2) var(--lv-space-3);background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md);font-size:var(--lv-text-xs);color:var(--lv-text-muted);pointer-events:none;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:.85}body.lv-resizing,body.lv-resizing *{cursor:var(--lv-resizing-cursor, default)!important}.lv-canvas__top{position:absolute;top:calc(20px + var(--lv-space-3));left:50%;transform:translate(-50%);z-index:5;display:flex;flex-direction:column;align-items:center;gap:var(--lv-space-2);max-width:calc(100% - 2 * var(--lv-space-5));pointer-events:none}.lv-canvas__mode-banner{display:inline-flex;max-width:100%;align-items:center;gap:var(--lv-space-3);padding:var(--lv-space-2) var(--lv-space-5);background:var(--lv-accent-soft);border:1px solid var(--lv-accent);border-radius:var(--lv-radius-full);color:var(--lv-accent);font-size:var(--lv-text-sm);font-weight:var(--lv-weight-medium);pointer-events:none;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:lv-banner-in .18s var(--lv-ease-out)}@keyframes lv-banner-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.lv-canvas__zoom-controls{position:absolute;top:var(--lv-space-4);right:var(--lv-space-5);display:flex;gap:var(--lv-space-1);padding:var(--lv-space-1);background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.lv-canvas__zoom-level{min-width:48px;display:grid;place-items:center;font-family:var(--lv-font-mono);font-size:var(--lv-text-xs);color:var(--lv-text-muted)}.lv-ruler{position:absolute;background:var(--lv-surface-1);pointer-events:none;font-size:var(--lv-text-xs);font-family:var(--lv-font-mono);color:var(--lv-text-subtle);-webkit-user-select:none;user-select:none;z-index:var(--lv-z-raised)}.lv-ruler--top{top:0;left:20px;right:0;height:20px;border-bottom:1px solid var(--lv-border)}.lv-ruler--left{top:20px;left:0;bottom:0;width:20px;border-right:1px solid var(--lv-border)}.lv-ruler__tick{position:absolute}.lv-ruler--top .lv-ruler__tick{top:0;bottom:0;border-left:1px solid var(--lv-border);padding:2px 3px;transform:translate(-.5px)}.lv-ruler--left .lv-ruler__tick{left:0;right:0;border-top:1px solid var(--lv-border);padding:2px 3px;transform:translateY(-.5px);writing-mode:vertical-rl;text-orientation:mixed}.lv-ruler__tick--minor{color:transparent}.lv-ruler--top .lv-ruler__tick--minor{border-left-color:color-mix(in srgb,var(--lv-text-muted) 15%,transparent)}.lv-ruler--left .lv-ruler__tick--minor{border-top-color:color-mix(in srgb,var(--lv-text-muted) 15%,transparent)}.lv-canvas__corner{position:absolute;top:0;left:0;width:20px;height:20px;background:var(--lv-surface-1);border-right:1px solid var(--lv-border);border-bottom:1px solid var(--lv-border);z-index:var(--lv-z-raised)}.lv-snap-indicator{fill:var(--lv-accent);stroke:var(--lv-surface-0);stroke-width:1}.lv-view-switch{display:flex;pointer-events:auto;padding:2px;border:1px solid var(--lv-border);border-radius:var(--lv-radius-md);background:var(--lv-surface-1)}.lv-start-panel{position:absolute;inset:var(--lv-space-11) var(--lv-space-5) var(--lv-space-5);z-index:4;display:flex;justify-content:center;align-items:flex-start;overflow:auto}.lv-start-panel__card{width:min(100%,1040px);padding:var(--lv-space-6);background:var(--lv-surface-1);border:1px solid var(--lv-border);border-radius:var(--lv-radius-lg);box-shadow:var(--lv-shadow-lg)}.lv-start-panel__title{margin:0 0 var(--lv-space-2);font-size:var(--lv-text-lg);font-weight:var(--lv-weight-semibold)}.lv-start-panel__products>.lv-form-picker{margin-top:var(--lv-space-5)}.lv-start-panel__products{margin-top:var(--lv-space-5)}.lv-start-panel__products>summary{cursor:pointer;font-weight:var(--lv-weight-semibold);color:var(--lv-text)}.lv-start-panel__products>.lv-hint{margin-top:var(--lv-space-2)}.lv-start-panel__other{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--lv-space-4);margin-top:var(--lv-space-5);padding-bottom:var(--lv-space-5);border-bottom:1px solid var(--lv-border)}.lv-start-panel__other>div{display:flex;flex-direction:column;align-items:flex-start;gap:var(--lv-space-2)}.lv-view-switch__option{border:none;background:none;color:var(--lv-text-muted);font:inherit;font-size:var(--lv-text-sm);padding:var(--lv-space-1) var(--lv-space-3);border-radius:var(--lv-radius-sm);cursor:pointer}.lv-view-switch__option[aria-selected=true]{background:var(--lv-surface-3);color:var(--lv-text)}.lv-view-legend{display:flex;flex-direction:column;gap:var(--lv-space-1)}.lv-view-legend__row{display:flex;align-items:center;gap:var(--lv-space-2)}.lv-view-legend__sample{flex:none}.lv-sheet-view,.lv-outside-view{--lv-sheet-view-top: calc(20px + var(--lv-space-3) * 2 + 32px);position:absolute;inset:0;display:flex;flex-direction:column;padding-top:var(--lv-sheet-view-top);background:var(--lv-surface-0)}.lv-sheet-view__stage,.lv-outside-view__stage{flex:1;min-height:0;position:relative;overflow:hidden;cursor:grab;touch-action:none}.lv-sheet-view__stage[data-dragging=true],.lv-outside-view__stage[data-dragging=true]{cursor:grabbing}.lv-sheet-view__svg,.lv-outside-view__svg{position:absolute;inset:0;width:100%;height:100%}.lv-sheet-view__blank{fill:var(--lv-surface-2);stroke:var(--lv-border);stroke-width:.5}.lv-sheet-view__used{fill:none;stroke:var(--lv-accent);stroke-width:1;stroke-dasharray:4 3}.lv-sheet-view__face-down{stroke-opacity:.35;stroke-dasharray:2 2}.lv-sheet-view__blank-label{fill:var(--lv-text-muted)}.lv-sheet-view__label{fill:var(--lv-text);stroke:var(--lv-surface-2);stroke-linejoin:round;paint-order:stroke;text-anchor:middle;dominant-baseline:central;pointer-events:none}.lv-sheet-view__leader{stroke:var(--lv-text-muted);stroke-width:1}.lv-sheet-view__summary,.lv-sheet-view__faces,.lv-sheet-view__unlabelled,.lv-outside-view__note{padding:var(--lv-space-2) var(--lv-space-4);border-top:1px solid var(--lv-border);font-size:var(--lv-text-sm);color:var(--lv-text-muted)}.lv-sheet-view__legend{display:flex;flex-wrap:wrap;gap:var(--lv-space-1) var(--lv-space-3);margin:0;padding:var(--lv-space-2) var(--lv-space-4) 0;border-top:1px solid var(--lv-border);font-size:var(--lv-text-sm);color:var(--lv-text-muted);list-style:none;counter-reset:lv-layer}.lv-sheet-view__layer{display:inline-flex;align-items:center;gap:var(--lv-space-2);text-transform:capitalize;counter-increment:lv-layer}.lv-sheet-view__layer:before{content:counter(lv-layer) "."}.lv-sheet-view__swatch{width:14px;height:3px;border-radius:2px}.lv-sheet-view__legend+.lv-sheet-view__faces{border-top:none}.lv-sheet-view__actions{padding:var(--lv-space-2) var(--lv-space-4);border-top:1px solid var(--lv-border)}.lv-sheet-view__summary--error{color:var(--lv-danger)}.lv-sheet-view__unlabelled p{margin:0 0 var(--lv-space-1)}.lv-sheet-view__unlabelled ul{margin:0 0 var(--lv-space-2);padding:0;list-style:none}.lv-sheet-view__unlabelled-blank{font-weight:600}.lv-sheet-view__unlabelled-entry{border:0;padding:0;background:none;color:var(--lv-text);font:inherit;text-align:left;cursor:default}.lv-sheet-view__unlabelled-entry:hover,.lv-sheet-view__unlabelled-entry:focus-visible{text-decoration:underline}.lv-sheet-view__unlabelled--over{position:absolute;top:calc(var(--lv-sheet-view-top) + var(--lv-space-3));right:var(--lv-space-3);max-width:min(320px,40%);max-height:40%;overflow:auto;border:1px solid var(--lv-border);border-radius:var(--lv-radius-md);background:var(--lv-surface-1);box-shadow:var(--lv-shadow-md)}.lv-sheet-view__piece--pointed path[data-kind=outline]{stroke:var(--lv-accent);stroke-width:3}.lv-steps-bar{position:absolute;left:50%;top:calc(20px + var(--lv-space-3) * 2 + 36px);transform:translate(-50%);z-index:6;display:flex;align-items:center;gap:var(--lv-space-2);width:min(640px,calc(100% - 2 * var(--lv-space-5)));padding:var(--lv-space-2) var(--lv-space-3);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md);background:var(--lv-surface-1);box-shadow:var(--lv-shadow-md)}.lv-steps-bar__text{flex:1;min-width:0}.lv-steps-bar__title{font-size:var(--lv-text-sm);font-weight:var(--lv-weight-medium);overflow-wrap:anywhere}.lv-steps-bar__detail{font-size:var(--lv-text-xs);color:var(--lv-text-muted);overflow-wrap:anywhere}.lv-steps-bar__fold{color:var(--lv-text);font-weight:var(--lv-weight-medium)}.lv-seam-split [role=button]:hover circle:last-child,.lv-seam-split [role=button]:focus-visible circle:last-child{fill:var(--lv-accent);fill-opacity:.45}.lv-seam-split [role=button]:focus-visible{outline:none}.lv-seam-split [role=button][aria-pressed=true] circle:last-child{fill-opacity:1}.lv-page{height:100vh;overflow-y:auto;padding:var(--lv-space-9) var(--lv-space-8);max-width:1160px;margin:0 auto}.lv-page__hero{display:flex;flex-direction:column;gap:var(--lv-space-3);margin-bottom:var(--lv-space-9)}.lv-page__hero h1{font-size:var(--lv-text-3xl);letter-spacing:var(--lv-tracking-tight)}.lv-page__hero .subtitle{color:var(--lv-text-muted);font-size:var(--lv-text-md)}.lv-page__section{margin-bottom:var(--lv-space-9)}.lv-page__section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--lv-space-5)}.lv-page__section-title{font-size:var(--lv-text-md);font-weight:var(--lv-weight-semibold);color:var(--lv-text)}.lv-page__section-subtitle{font-size:var(--lv-text-sm);color:var(--lv-text-muted)}.lv-create-row{display:flex;gap:var(--lv-space-3);max-width:620px;margin-bottom:var(--lv-space-8)}.lv-create-row>:first-child{flex:1}.lv-template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--lv-space-5)}.lv-template-card__icon{width:36px;height:36px;border-radius:var(--lv-radius-md);background:var(--lv-accent-soft);color:var(--lv-accent);display:grid;place-items:center}.lv-project-list{display:flex;flex-direction:column;gap:var(--lv-space-3)}.lv-project-row{display:flex;align-items:center;gap:var(--lv-space-5);padding:var(--lv-space-5) var(--lv-space-6);background:var(--lv-surface-1);border:1px solid var(--lv-border);border-radius:var(--lv-radius-lg);transition:border-color var(--lv-duration-fast) var(--lv-ease),background var(--lv-duration-fast) var(--lv-ease)}.lv-project-row:hover{border-color:var(--lv-border-strong);background:var(--lv-surface-2)}.lv-project-row__icon{width:40px;height:40px;border-radius:var(--lv-radius-md);background:var(--lv-surface-3);color:var(--lv-text-muted);display:grid;place-items:center;flex-shrink:0}.lv-project-row__body{flex:1;min-width:0}.lv-project-row__name{font-weight:var(--lv-weight-medium);font-size:var(--lv-text-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lv-project-row__name a{color:var(--lv-text)}.lv-project-row__name a:hover{color:var(--lv-accent)}.lv-project-row__meta{font-size:var(--lv-text-xs);color:var(--lv-text-muted);margin-top:2px}.lv-project-row__actions{display:inline-flex;gap:var(--lv-space-2)}@media (max-width: 599px){.lv-trash-row{flex-wrap:wrap}.lv-trash-row .lv-project-row__name{white-space:normal;overflow-wrap:anywhere}.lv-trash-row .lv-project-row__actions{flex-basis:100%;justify-content:flex-end}}.lv-validation-group{border-bottom:1px solid var(--lv-border);padding-bottom:var(--lv-space-3)}.lv-validation-item{display:flex;flex-direction:column;gap:var(--lv-space-2);padding:var(--lv-space-3) var(--lv-space-5) var(--lv-space-1);font-size:var(--lv-text-sm);cursor:pointer}.lv-validation-item:hover{background:var(--lv-surface-2)}.lv-validation-item>.lv-button{align-self:flex-start}.lv-validation-item__seams{display:flex;flex-wrap:wrap;gap:var(--lv-space-2)}.lv-validation-item__seams>.lv-button{max-width:100%;white-space:normal;text-align:start}.lv-validation-item__header{display:flex;align-items:center;gap:var(--lv-space-3)}.lv-validation-item__icon{flex-shrink:0}.lv-validation-item--error .lv-validation-item__icon{color:var(--lv-danger)}.lv-validation-item--warning .lv-validation-item__icon{color:var(--lv-warning)}.lv-validation-item--info .lv-validation-item__icon{color:var(--lv-info)}.lv-validation-item__suggestion{color:var(--lv-text-muted);font-size:var(--lv-text-xs);padding:var(--lv-space-2) var(--lv-space-5) 0 calc(var(--lv-space-5) + 14px + var(--lv-space-3))}.lv-validation-result{padding:var(--lv-space-3) var(--lv-space-5);border-bottom:1px solid var(--lv-border-subtle, var(--lv-border));color:var(--lv-text-muted);font-size:var(--lv-text-xs)}.lv-validation-result--stale{display:flex;align-items:flex-start;gap:var(--lv-space-2)}.lv-validation-result--stale svg{flex-shrink:0}.lv-stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--lv-space-3);margin-bottom:var(--lv-space-5)}.lv-stat{display:flex;flex-direction:column;gap:var(--lv-space-1);padding:var(--lv-space-4);background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md)}.lv-stat__label{font-size:var(--lv-text-xs);color:var(--lv-text-muted);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps)}.lv-stat__value{font-size:var(--lv-text-lg);font-weight:var(--lv-weight-semibold);font-variant-numeric:tabular-nums}.lv-stat__hint{font-size:var(--lv-text-xs);color:var(--lv-text-subtle)}.lv-table{width:100%;font-size:var(--lv-text-sm);border-collapse:collapse}.lv-table th,.lv-table td{padding:var(--lv-space-3) var(--lv-space-3);text-align:left}.lv-table thead th{font-size:var(--lv-text-xs);font-weight:var(--lv-weight-medium);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps);color:var(--lv-text-muted);border-bottom:1px solid var(--lv-border)}.lv-table tbody td{border-bottom:1px solid var(--lv-border)}.lv-table tfoot td{font-weight:var(--lv-weight-semibold);border-top:1px solid var(--lv-border-strong)}.lv-table .numeric{font-variant-numeric:tabular-nums;text-align:right}.lv-step-list{display:flex;flex-direction:column;gap:var(--lv-space-4)}.lv-step{display:flex;gap:var(--lv-space-4)}.lv-step__index{width:24px;height:24px;flex-shrink:0;border-radius:var(--lv-radius-full);background:var(--lv-accent-soft);color:var(--lv-accent);display:grid;place-items:center;font-size:var(--lv-text-xs);font-weight:var(--lv-weight-semibold)}.lv-step__body{flex:1;min-width:0}.lv-step__title{font-size:var(--lv-text-sm);font-weight:var(--lv-weight-medium);margin-bottom:var(--lv-space-1)}.lv-step__description{font-size:var(--lv-text-xs);color:var(--lv-text-muted)}.lv-shortcut-list{display:grid;grid-template-columns:1fr auto;gap:var(--lv-space-3) var(--lv-space-6);font-size:var(--lv-text-sm);align-items:center}.lv-shortcut-list dt{color:var(--lv-text)}.lv-shortcut-list dd{margin:0;text-align:right;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:var(--lv-space-2)}.lv-shortcut-keys{display:inline-flex;gap:var(--lv-space-1)}.lv-shortcut-or,.lv-shortcut-note{font-size:var(--lv-text-xs);color:var(--lv-text-muted)}.lv-import-summary{margin-top:var(--lv-space-5);font-size:var(--lv-text-sm);display:flex;flex-direction:column;gap:var(--lv-space-3)}.lv-import-summary p{margin:0}.lv-import-summary__title{font-size:var(--lv-text-xs);font-weight:var(--lv-weight-semibold);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps);color:var(--lv-text-muted);margin-bottom:var(--lv-space-1)}.lv-import-summary ul{margin:0;padding-left:var(--lv-space-5);color:var(--lv-text-muted)}.lv-command-input{width:100%;height:48px;padding:0 var(--lv-space-6);background:transparent;border:none;border-bottom:1px solid var(--lv-border-control);color:var(--lv-text);font-size:var(--lv-text-md);outline:none}.lv-command-input:focus{border-bottom-color:var(--lv-border-focus)}.lv-command-list{max-height:320px;overflow-y:auto;padding:var(--lv-space-3)}.lv-command-item{display:flex;align-items:center;gap:var(--lv-space-4);padding:var(--lv-space-3) var(--lv-space-4);border-radius:var(--lv-radius-sm);cursor:pointer;font-size:var(--lv-text-sm);color:var(--lv-text)}.lv-command-item--active{background:var(--lv-accent-soft);color:var(--lv-accent)}.lv-command-item__icon{color:var(--lv-text-muted)}.lv-command-item--active .lv-command-item__icon{color:var(--lv-accent)}.lv-command-item__shortcut{margin-left:auto;color:var(--lv-text-subtle)}.lv-assembly-list{display:flex;flex-direction:column;gap:var(--lv-space-2)}.lv-assembly-edge{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--lv-space-3);padding:var(--lv-space-3);background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md);font-size:var(--lv-text-sm)}.lv-assembly-edge__kind{display:inline-flex;align-items:center;gap:var(--lv-space-2);padding:2px var(--lv-space-3);background:var(--lv-accent-soft);color:var(--lv-accent);border-radius:var(--lv-radius-full);font-size:var(--lv-text-xs);font-weight:var(--lv-weight-medium);white-space:nowrap}.lv-assembly-edge__body{display:inline-flex;align-items:center;gap:var(--lv-space-2);color:var(--lv-text);overflow:hidden;min-width:0}.lv-assembly-edge__body>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lv-assembly-edge-card{border:1px solid var(--lv-border);border-radius:var(--lv-radius-md);overflow:hidden}.lv-assembly-edge-card.selected{border-color:var(--lv-accent);background:var(--lv-accent-soft)}.lv-assembly-edge-card>.lv-assembly-edge{border:none;border-radius:0}.lv-shared-edges{padding:var(--lv-space-3);background:var(--lv-surface-1);border-top:1px solid var(--lv-border)}.lv-shared-edges__title{font-size:var(--lv-text-xs);font-weight:var(--lv-weight-medium);color:var(--lv-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--lv-space-2)}.lv-shared-edges__list{display:flex;flex-direction:column;gap:var(--lv-space-1);margin-bottom:var(--lv-space-2)}.lv-shared-edges__item{display:inline-flex;align-items:center;gap:var(--lv-space-2);padding:2px var(--lv-space-2);background:var(--lv-surface-2);border-radius:var(--lv-radius-sm);font-size:var(--lv-text-xs)}.lv-shared-edges__add{display:flex;align-items:center;gap:var(--lv-space-2)}.lv-edge-picker{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--lv-space-2)}.lv-edge-picker label{display:inline-flex;align-items:center;gap:var(--lv-space-2);padding:var(--lv-space-2) var(--lv-space-3);background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-sm);cursor:pointer;font-size:var(--lv-text-sm)}.lv-edge-picker label.active{background:var(--lv-accent-soft);border-color:var(--lv-accent);color:var(--lv-accent)}.lv-edge-picker-grid{display:flex;flex-direction:column;gap:var(--lv-space-2)}.lv-edge-row{display:flex;align-items:center;gap:var(--lv-space-2);padding:var(--lv-space-2) var(--lv-space-3);background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-sm);font-size:var(--lv-text-sm)}.lv-edge-row.active{background:var(--lv-accent-soft);border-color:var(--lv-accent)}.lv-edge-row__check{display:inline-flex;align-items:center;gap:var(--lv-space-2);cursor:pointer;flex:1;min-width:0}.lv-edge-row__source{font-size:var(--lv-text-xs);padding:2px var(--lv-space-2);background:var(--lv-surface-1);border:1px solid var(--lv-border);border-radius:var(--lv-radius-sm);color:var(--lv-text-muted);cursor:pointer;flex-shrink:0}.lv-corners-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--lv-space-3)}.lv-corner-card{padding:var(--lv-space-3);background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md)}.lv-corner-card__title{font-size:var(--lv-text-xs);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps);color:var(--lv-text-muted);margin-bottom:var(--lv-space-2)}.lv-template-card{display:flex;flex-direction:column;gap:var(--lv-space-2);padding:var(--lv-space-4);background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md);cursor:pointer;text-align:left;transition:border-color var(--lv-duration-fast) var(--lv-ease),background var(--lv-duration-fast) var(--lv-ease)}.lv-template-card:disabled{opacity:.5;cursor:progress}.lv-template-card:hover{border-color:var(--lv-accent);background:var(--lv-surface-3)}.lv-template-card__header{display:flex;align-items:center;gap:var(--lv-space-2)}.lv-template-card__name{font-weight:var(--lv-weight-medium);font-size:var(--lv-text-sm)}.lv-template-card__desc{font-size:var(--lv-text-xs);color:var(--lv-text-muted);line-height:1.4}.lv-template-card__meta{display:flex;flex-wrap:wrap;gap:var(--lv-space-1) var(--lv-space-2);margin-top:var(--lv-space-1);font-size:var(--lv-text-xs);color:var(--lv-text-muted)}.lv-template-card__shape,.lv-template-card__features{white-space:nowrap;font-size:var(--lv-text-xs);padding:1px 6px;border-radius:var(--lv-radius-full);background:var(--lv-surface-3);color:var(--lv-text-subtle)}.lv-template-card__features{background:var(--lv-accent-soft);color:var(--lv-accent)}.lv-form-picker{margin-top:var(--lv-space-4)}.lv-form-picker__heading{margin:var(--lv-space-6) 0 var(--lv-space-3)}.lv-form-card{cursor:default}.lv-form-card>.lv-button{margin-top:auto;align-self:flex-start}.lv-form-card__options{display:grid;gap:var(--lv-space-2);font-size:var(--lv-text-xs);color:var(--lv-text-muted)}.lv-form-card__options label{display:grid;gap:var(--lv-space-1)}.lv-form-card__options .lv-field__label{text-transform:none;letter-spacing:normal;font-weight:inherit}.lv-form-card__options .lv-field{margin-bottom:0}.lv-form-panel__action{margin-top:var(--lv-space-3)}.lv-form-panel__action .lv-button{height:auto;min-height:32px;padding:var(--lv-space-2) var(--lv-space-4);line-height:1.4;text-align:left;white-space:normal}.lv-back-link{display:inline-flex;align-items:center;gap:var(--lv-space-2);color:var(--lv-text-muted);font-size:var(--lv-text-sm)}.lv-back-link:hover{color:var(--lv-text)}.lv-guide{max-width:860px;height:100%;overflow-y:auto;margin:0 auto;padding:var(--lv-space-9) var(--lv-space-8);color:var(--lv-text);line-height:1.5}.lv-guide__header{display:flex;flex-wrap:wrap;align-items:center;gap:var(--lv-space-4);justify-content:space-between}.lv-guide__header .lv-back-link{white-space:nowrap}@media (max-width: 599px){.lv-guide{padding:var(--lv-space-6) var(--lv-space-4)}.lv-guide__header .lv-back-link{flex-basis:100%}}.lv-guide__subtitle{font-weight:var(--lv-weight-regular);color:var(--lv-text-muted)}.lv-guide h2{margin-top:var(--lv-space-9)}.lv-guide__needs{padding-left:var(--lv-space-8)}.lv-guide__steps{list-style:none;padding:0}.lv-guide__item{--lv-guide-tick: calc(20px + var(--lv-space-3) + 2.4em);display:grid;grid-template-columns:var(--lv-guide-tick) minmax(0,1fr);gap:var(--lv-space-4);align-items:start;margin-bottom:var(--lv-space-6)}.lv-guide__tick{display:inline-flex;align-items:center;gap:var(--lv-space-3);cursor:pointer}.lv-guide__tick input{width:20px;height:20px;margin:0;accent-color:var(--lv-accent)}.lv-guide__number{min-width:2.4em;font-weight:var(--lv-weight-semibold);font-variant-numeric:tabular-nums}.lv-guide__item-body>p:first-child{margin-top:0}.lv-guide__steps p{margin:var(--lv-space-1) 0 0;color:var(--lv-text-muted)}.lv-guide__ticks-note{display:flex;align-items:center;gap:var(--lv-space-2);margin:var(--lv-space-5) 0 0;padding:var(--lv-space-3) var(--lv-space-4);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md);color:var(--lv-text-muted);font-size:var(--lv-text-sm)}.lv-guide__before{margin-top:var(--lv-space-5)}.lv-guide__issues{margin-top:var(--lv-space-3);padding:var(--lv-space-3) var(--lv-space-4);border-radius:var(--lv-radius-md);border:1px solid var(--lv-warning);background:var(--lv-warning-soft)}.lv-guide__issues--error{border-color:var(--lv-danger);background:var(--lv-danger-soft)}.lv-guide__issues h3{display:flex;align-items:center;gap:var(--lv-space-2);margin:0;font-size:var(--lv-text-sm)}.lv-guide__issues ul{margin:var(--lv-space-2) 0 0;padding-left:var(--lv-space-5)}.lv-guide__issue-fix{color:var(--lv-text-muted)}.lv-guide__size{white-space:nowrap}.lv-guide__swatch{display:inline-block;width:.9em;height:.9em;border-radius:2px;border:1px solid var(--lv-border);vertical-align:-.1em;margin-right:.3em}.lv-guide__ease{margin-top:2px;color:var(--lv-text-muted);font-size:12px}.lv-guide__turned{color:var(--lv-text-muted)}.lv-guide__sheet{display:block;width:100%;min-height:120px;background:#fff;border:1px solid var(--lv-border);margin:var(--lv-space-3) 0;padding:var(--lv-space-2)}.lv-guide__sheet-svg{display:block;width:100%;height:auto;margin:0 auto}.lv-guide__sheet .lv-sheet-view__blank{fill:#fff;stroke:#999}.lv-guide__sheet .lv-sheet-view__used{stroke:#999}.lv-guide__sheet .lv-sheet-view__blank-label{fill:#555}.lv-guide__sheet .lv-sheet-view__label{fill:#000;stroke:#fff}.lv-guide__step{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,300px);gap:var(--lv-space-4);align-items:start}@media (max-width: 599px){.lv-guide__step{grid-template-columns:minmax(0,1fr)}}.lv-guide__step-picture{width:100%;height:auto;background:#fff;outline:1px solid var(--lv-border);outline-offset:-1px;border-radius:var(--lv-radius-sm)}.lv-guide__picture-word{fill:#000;stroke:#fff;paint-order:stroke;stroke-linejoin:round;font-weight:600}.lv-guide__picture-number{font-weight:700}.lv-guide__step-frame{overflow-x:auto}@media (max-width: 599px){.lv-guide__item .lv-guide__step-frame{margin-left:calc(-1 * (var(--lv-guide-tick) + var(--lv-space-4)))}}.lv-guide__step-locator{display:flex;align-items:center;gap:var(--lv-space-3);margin-top:var(--lv-space-2);color:var(--lv-text-muted);font-size:var(--lv-text-sm)}.lv-guide__step-locator-map{flex:none;width:64px;height:auto;background:#fff;border:1px solid var(--lv-border)}@media print{.lv-guide__step-frame{overflow:visible}.lv-guide__stitch--now [data-testid=guide-lit-seam]{stroke:#000}.lv-guide__stitch--lit{stroke:#fff}.lv-guide__picture-mark{stroke:#000}.lv-guide__picture-badge{fill:#000}}.lv-guide__sheet svg path{stroke:#2b2520;stroke-width:1px;vector-effect:non-scaling-stroke}.lv-guide__table{width:100%;border-collapse:collapse}.lv-guide__table th,.lv-guide__table td{text-align:left;padding:var(--lv-space-1) var(--lv-space-2);border-bottom:1px solid var(--lv-border)}.lv-guide__problem{color:var(--lv-danger)}.lv-guide__sews{margin:var(--lv-space-1) 0 0;padding-inline-start:1.5em}.lv-guide__fold{font-weight:var(--lv-weight-medium)}@media print{:root{--lv-surface-0: #fff;--lv-text: #000;--lv-text-muted: #333;--lv-border: #bbb}.lv-guide{max-width:none;height:auto;overflow:visible;padding:0}.lv-guide__steps li{break-inside:avoid}.lv-guide__section-head{break-inside:avoid;break-after:avoid}.lv-guide h2{break-after:avoid}.lv-guide__tick input{appearance:none;border:1.5px solid #000;border-radius:2px}.lv-guide__ticks-note{display:none}.lv-guide__sheet{break-inside:avoid}.lv-guide__header .lv-back-link,.lv-guide__header .lv-button{display:none}}.lv-guide__by-hand h3{margin:var(--lv-space-8) 0 var(--lv-space-2)}.lv-table__total td{font-weight:var(--lv-weight-semibold)}.lv-capacity__why{margin:var(--lv-space-3) 0 0;font-size:var(--lv-text-xs)}.lv-capacity__note{margin:var(--lv-space-3) 0 0;color:var(--lv-text-muted);font-size:var(--lv-text-xs)}.lv-closed-section{display:block;width:100%;height:auto;margin:var(--lv-space-2) 0}.lv-unavailable{max-width:560px;margin:0 auto;padding:18vh var(--lv-space-6) var(--lv-space-8)}.lv-unavailable h1{font-size:var(--lv-text-xl);margin:0 0 var(--lv-space-2)}.lv-unavailable p{color:var(--lv-text-muted);margin:0 0 var(--lv-space-5);overflow-wrap:anywhere}.lv-unavailable__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--lv-space-4)}.lv-reading{max-width:760px;color:var(--lv-text);font-size:var(--lv-text-md);line-height:1.6}.lv-reading__home{display:inline-flex;align-items:center;gap:var(--lv-space-2);color:var(--lv-text-muted);font-size:var(--lv-text-sm)}.lv-reading h1{margin:var(--lv-space-5) 0 var(--lv-space-3);font-size:var(--lv-text-3xl)}.lv-reading__lead{margin:0;color:var(--lv-text-muted)}.lv-help__toc{display:flex;flex-wrap:wrap;gap:var(--lv-space-3);margin:var(--lv-space-6) 0 var(--lv-space-3)}.lv-help__toc a{display:inline-flex;align-items:center;gap:var(--lv-space-2);padding:var(--lv-space-2) var(--lv-space-5);border:1px solid var(--lv-border);border-radius:var(--lv-radius-full);color:var(--lv-text);font-size:var(--lv-text-sm)}.lv-reading__section{padding-top:var(--lv-space-8);border-top:1px solid var(--lv-border);margin-top:var(--lv-space-8)}.lv-reading__section h2{margin:0 0 var(--lv-space-3);font-size:var(--lv-text-2xl)}.lv-help__intro{color:var(--lv-text-muted)}.lv-help__topic h3{margin:var(--lv-space-7) 0 var(--lv-space-2);font-size:var(--lv-text-lg)}.lv-help__topic p{margin:0 0 var(--lv-space-4)}@media (max-width: 599px){.lv-reading{padding:var(--lv-space-6) var(--lv-space-4)}}.lv-guide__actions{display:flex;flex-wrap:wrap;gap:var(--lv-space-3)}.lv-guide-steps{display:flex;flex-direction:column;height:100%;color:var(--lv-text);background:var(--lv-surface-0)}.lv-guide-steps__bar{display:flex;align-items:center;justify-content:space-between;gap:var(--lv-space-4);padding:var(--lv-space-4) var(--lv-space-6);border-bottom:1px solid var(--lv-border);font-size:var(--lv-text-lg)}.lv-guide-steps__body{flex:1;min-height:0;overflow-y:auto;padding:var(--lv-space-6);font-size:24px;line-height:1.4}.lv-guide-steps__section{margin:0;font-size:var(--lv-text-lg);font-weight:var(--lv-weight-regular);color:var(--lv-text-muted)}.lv-guide-steps__number{margin:var(--lv-space-2) 0 var(--lv-space-4);font-size:40px;font-variant-numeric:tabular-nums}.lv-guide-steps__done{font-size:24px;font-weight:var(--lv-weight-regular);color:var(--lv-success)}.lv-guide-steps__body p{margin:0 0 var(--lv-space-4);color:var(--lv-text)}.lv-guide-steps .lv-guide__step{grid-template-columns:minmax(0,1fr)}.lv-guide-steps .lv-guide__step-picture{display:block;width:auto;max-width:100%;max-height:55vh;margin:0 auto}@media (orientation: landscape){.lv-guide-steps .lv-guide__step{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.lv-guide-steps .lv-guide__step-picture{max-height:60vh}}.lv-guide-steps__nav{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--lv-space-4);padding:var(--lv-space-4) var(--lv-space-6);border-top:1px solid var(--lv-border)}.lv-guide-steps__nav .lv-button,.lv-guide-steps__tick{min-height:52px;justify-content:center;font-size:var(--lv-text-lg)}.lv-guide-steps__tick{border:1px solid var(--lv-border);border-radius:var(--lv-radius-md)}.lv-guide-steps__tick input{width:28px;height:28px}.lv-sign-in{max-width:440px;margin:0 auto;padding:18vh var(--lv-space-6) var(--lv-space-8)}.lv-sign-in h1{font-size:var(--lv-text-xl);margin:0 0 var(--lv-space-4)}.lv-sign-in p{color:var(--lv-text-muted);margin:0 0 var(--lv-space-5);overflow-wrap:anywhere}.lv-sign-in__form{display:flex;flex-direction:column;gap:var(--lv-space-3)}.lv-sign-in__form p{margin-bottom:var(--lv-space-3)}.lv-sign-in .lv-sign-in__error{margin-top:var(--lv-space-5);color:var(--lv-danger)}.lv-page__account{display:flex;justify-content:flex-end;align-items:center;gap:var(--lv-space-4);min-width:0}.lv-account-menu{max-width:100%}.lv-account-menu__email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lv-close-account{display:flex;flex-direction:column;gap:var(--lv-space-3)}.lv-close-account strong{overflow-wrap:anywhere}.lv-close-account .lv-close-account__error{color:var(--lv-danger)}.lv-shared{max-width:1240px;margin:0 auto;padding:var(--lv-space-9) var(--lv-space-5);display:flex;flex-direction:column;gap:var(--lv-space-5)}.lv-shared h1{font-size:var(--lv-text-3xl);letter-spacing:var(--lv-tracking-tight);overflow-wrap:anywhere}.lv-shared__quiet{color:var(--lv-text-muted)}.lv-shared__picture{align-self:flex-start;width:auto;max-width:100%;max-height:80vh;height:auto;background:var(--lv-surface-2);border-radius:var(--lv-radius-md)}.lv-share{display:flex;flex-direction:column;gap:var(--lv-space-4)}.lv-share__make,.lv-share__made{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--lv-space-3)}.lv-share__made .lv-field{flex:1 1 16rem;min-width:0}.lv-share__note{flex-basis:100%;color:var(--lv-text-muted);font-size:var(--lv-text-sm)}.lv-share .lv-share__error{color:var(--lv-danger)}.lv-share__heading{font-size:var(--lv-text-sm);color:var(--lv-text-muted)}.lv-share__links{list-style:none;display:flex;flex-direction:column;gap:var(--lv-space-2)}.lv-share__links li{display:flex;align-items:center;justify-content:space-between;gap:var(--lv-space-3);font-size:var(--lv-text-sm)}.lv-order{max-width:1160px;height:100%;overflow-y:auto;margin:0 auto;padding:var(--lv-space-9) var(--lv-space-8);color:var(--lv-text);line-height:1.5}.lv-order__header{margin-bottom:var(--lv-space-8)}.lv-order__name{flex:1;min-width:0;margin:0;font-size:var(--lv-text-2xl);font-weight:var(--lv-weight-semibold)}.lv-order__name input{width:100%;font-size:inherit;font-weight:inherit;background:transparent}.lv-order__name input:focus{background:var(--lv-surface-1)}.lv-order__layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:var(--lv-space-9);align-items:start}.lv-order__cutting{background:var(--lv-surface-1);border:1px solid var(--lv-border);border-radius:var(--lv-radius-lg)}.lv-order__design{flex-wrap:wrap}.lv-order__design .lv-project-row__body{min-width:10rem}.lv-order__design-actions{flex-wrap:wrap;align-items:center}.lv-order__copies{display:inline-flex;align-items:center;gap:var(--lv-space-2);font-size:var(--lv-text-sm);color:var(--lv-text-muted)}.lv-order__copies input{width:4.5rem}.lv-order__add{margin-top:var(--lv-space-5);margin-bottom:0}.lv-order__picture{display:block;max-width:100%;height:auto;margin:var(--lv-space-6) 0;border:1px solid var(--lv-border);border-radius:var(--lv-radius-md)}.lv-order__file{font-family:var(--lv-font-mono);font-size:.9em;overflow-wrap:anywhere}.lv-order__missing{margin:0 0 var(--lv-space-6);padding-left:var(--lv-space-6);color:var(--lv-text-muted)}.lv-order__blanks{margin:0;padding:0;list-style:none}.lv-order__blanks li+li{margin-top:var(--lv-space-4)}.lv-order__blanks strong{display:block}.lv-order__stale{opacity:.45;pointer-events:none}.lv-order__leathers p{margin:var(--lv-space-4) 0 0}@media (max-width: 1099px){.lv-order__layout{grid-template-columns:minmax(0,1fr)}}@media (max-width: 599px){.lv-order{padding:var(--lv-space-6) var(--lv-space-4)}.lv-order__design .lv-project-row__body{flex-basis:100%}}.lv-order__cuts{margin:0;padding:0;list-style:none;overflow-wrap:anywhere}.lv-order__cuts li+li{margin-top:var(--lv-space-3)}.lv-order__quiet{color:var(--lv-text-muted)}.lv-versions{display:flex;flex-direction:column;gap:var(--lv-space-4)}.lv-versions__keep,.lv-versions__rename{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--lv-space-3)}.lv-versions__keep .lv-field,.lv-versions__rename .lv-input{flex:1 1 12rem;min-width:0}.lv-versions__note{flex-basis:100%;color:var(--lv-text-muted);font-size:var(--lv-text-sm)}.lv-versions .lv-versions__error{color:var(--lv-danger)}.lv-versions__heading{font-size:var(--lv-text-sm);color:var(--lv-text-muted)}.lv-versions__list{list-style:none;display:flex;flex-direction:column;gap:var(--lv-space-3)}.lv-versions__list li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--lv-space-2)}.lv-versions__what{display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}.lv-versions__actions{display:flex;flex-wrap:wrap;gap:var(--lv-space-1)}.lv-version{max-width:1240px;height:100%;overflow-y:auto;margin:0 auto;padding:var(--lv-space-9) var(--lv-space-5);display:grid;align-content:start;gap:var(--lv-space-5)}.lv-version h1{font-size:var(--lv-text-3xl);letter-spacing:var(--lv-tracking-tight);overflow-wrap:anywhere}.lv-version__quiet{color:var(--lv-text-muted)}.lv-version__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--lv-space-3)}.lv-version__recut{display:flex;flex-direction:column;align-items:flex-start;gap:var(--lv-space-3);max-width:28rem}.lv-version__recut .lv-field{align-self:stretch}.lv-version__recut h2,.lv-version__since h2,.lv-version__drift h2{font-size:var(--lv-text-lg);margin-bottom:var(--lv-space-2)}.lv-version__changes{display:flex;flex-direction:column;gap:var(--lv-space-2);padding-left:var(--lv-space-5);overflow-wrap:anywhere}.lv-version__changes ul{padding-left:var(--lv-space-5);color:var(--lv-text-muted);font-size:var(--lv-text-sm)}.lv-version__pictures{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:var(--lv-space-5)}.lv-version__figure{display:flex;flex-direction:column;gap:var(--lv-space-2);margin:0}.lv-version__figure img{width:100%;height:auto;max-height:70vh;object-fit:contain;background:var(--lv-drawing-paper);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md)}.lv-version__figure figcaption{color:var(--lv-text-muted);font-size:var(--lv-text-sm)}.lv-version__orders{margin:0;padding-left:var(--lv-space-5);overflow-wrap:anywhere}.lv-legal__entries{list-style:none;margin:var(--lv-space-4) 0 0;padding:0}.lv-legal__entry{padding:var(--lv-space-3) 0;border-bottom:1px solid var(--lv-border)}.lv-legal__name{font-weight:600}.lv-legal__version,.lv-legal__licence{color:var(--lv-text-muted);font-size:var(--lv-text-sm)}.lv-legal__entry summary{cursor:pointer;color:var(--lv-text-muted);font-size:var(--lv-text-sm)}.lv-legal pre{max-height:24em;overflow:auto;padding:var(--lv-space-4);background:var(--lv-surface-1);border:1px solid var(--lv-border);border-radius:var(--lv-radius-sm);font-family:var(--lv-font-mono);font-size:var(--lv-text-xs);white-space:pre-wrap;tab-size:4}.lv-legal__image{margin-top:var(--lv-space-7);overflow-x:auto}.lv-legal__table{width:100%;border-collapse:collapse;font-size:var(--lv-text-sm)}.lv-legal__table th,.lv-legal__table td{padding:var(--lv-space-2) var(--lv-space-3);border-bottom:1px solid var(--lv-border);text-align:left}.lv-legal__draft,.lv-legal__decide{padding:var(--lv-space-4) var(--lv-space-5);background:var(--lv-warning-soft);border-left:3px solid var(--lv-warning);border-radius:var(--lv-radius-sm)}.lv-legal__paragraph{margin:0 0 var(--lv-space-6)}.lv-legal__paragraph p{margin:0}.lv-legal__paragraph--to-decide{border-left:3px solid var(--lv-warning);padding-left:var(--lv-space-5)}.lv-legal__sources{margin-top:var(--lv-space-2);color:var(--lv-text-muted);font-size:var(--lv-text-xs)}.lv-legal-links{display:flex;flex-wrap:wrap;gap:var(--lv-space-5);margin-top:var(--lv-space-8);font-size:var(--lv-text-sm)}.lv-legal-links a{color:var(--lv-text-muted)}.lv-sign-in__guest{margin-top:var(--lv-space-6);padding-top:var(--lv-space-6);border-top:1px solid var(--lv-border);display:flex;flex-direction:column;align-items:flex-start;gap:var(--lv-space-3)}.lv-guest-notice{display:flex;align-items:center;gap:var(--lv-space-4);min-width:0;color:var(--lv-text-muted)}.lv-guest-notice>span{min-width:0;overflow-wrap:anywhere}.lv-app__header .lv-guest-notice>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lv-asks-for-email{display:flex;flex-direction:column;align-items:flex-start;gap:var(--lv-space-4)}.lv-asks-for-email p{margin:0;color:var(--lv-text-muted)}.lv-first-start{display:flex;flex-direction:column;align-items:flex-start;gap:var(--lv-space-5);max-width:520px;padding:var(--lv-space-6);border:1px solid var(--lv-border);border-radius:var(--lv-radius-lg);background:var(--lv-surface-2)}.lv-first-start__tools{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--lv-space-3)}.lv-first-start__tools legend{font-weight:600;margin-bottom:var(--lv-space-3)}.lv-first-start__choice{display:flex;align-items:center;gap:var(--lv-space-3)}.lv-sim{height:100vh;display:flex;flex-direction:column;background:var(--lv-surface-0);color:var(--lv-text)}.lv-sim__header{display:flex;align-items:center;gap:var(--lv-space-6);padding:var(--lv-space-4) var(--lv-space-6);border-bottom:1px solid var(--lv-border);background:var(--lv-surface-1)}.lv-sim__title{flex:1;min-width:0;font-size:var(--lv-text-lg);font-weight:var(--lv-weight-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lv-sim__subtitle{margin-left:var(--lv-space-4);font-size:var(--lv-text-sm);font-weight:var(--lv-weight-medium);color:var(--lv-text-muted)}.lv-sim__actions{display:flex;gap:var(--lv-space-4)}.lv-sim__body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr) minmax(0,300px)}.lv-sim__side{min-width:0;overflow-y:auto;background:var(--lv-surface-1);border-right:1px solid var(--lv-border)}.lv-sim__side--right{border-right:none;border-left:1px solid var(--lv-border)}.lv-sim__stage{min-width:0;min-height:0;position:relative}.lv-sim__viewport{position:absolute;inset:0}.lv-sim__viewport canvas{display:block;width:100%;height:100%}.lv-sim__overlay{position:absolute;top:var(--lv-space-4);left:var(--lv-space-4);display:flex;flex-direction:column;align-items:flex-start;gap:var(--lv-space-3);pointer-events:none}.lv-sim__overlay>*{pointer-events:auto}.lv-sim__still-note{position:absolute;left:var(--lv-space-4);right:var(--lv-space-4);bottom:var(--lv-space-4);margin:0;padding:var(--lv-space-2) var(--lv-space-3);background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md);font-size:var(--lv-text-sm);color:var(--lv-text-subtle)}.lv-sim__hand{max-width:320px;padding:var(--lv-space-2) var(--lv-space-3);background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md);font-size:var(--lv-text-sm)}.lv-sim__hand p{margin:0}.lv-sim__hand p+p{margin-top:var(--lv-space-1);color:var(--lv-text-subtle)}.lv-sim-legend{background:var(--lv-surface-2);border:1px solid var(--lv-border);border-radius:var(--lv-radius-md);padding:var(--lv-space-3) var(--lv-space-4);width:200px}.lv-sim-legend__title{font-size:var(--lv-text-xs);color:var(--lv-text-muted);margin-bottom:var(--lv-space-2)}.lv-sim-legend__bar{height:8px;border-radius:4px}.lv-sim-legend__ticks{display:flex;justify-content:space-between;font-size:var(--lv-text-xs);color:var(--lv-text-muted);margin-top:var(--lv-space-1);font-variant-numeric:tabular-nums}@media (max-width: 1099px){.lv-sim__body{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(320px,55vh) auto auto;overflow-y:auto}.lv-sim__stage{order:-1}.lv-sim__side,.lv-sim__side--right{border:none;border-top:1px solid var(--lv-border);overflow:visible}}.lv-sim-loads__empty{font-size:var(--lv-text-sm);color:var(--lv-text-subtle);margin-bottom:var(--lv-space-5)}.lv-sim-load{border:1px solid var(--lv-border);border-radius:var(--lv-radius-md);padding:var(--lv-space-4);margin-bottom:var(--lv-space-4);background:var(--lv-surface-2)}.lv-sim-load__head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--lv-space-4)}.lv-sim-load__kind{font-size:var(--lv-text-xs);font-weight:var(--lv-weight-semibold);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps);padding:var(--lv-space-1) var(--lv-space-3);border-radius:var(--lv-radius-sm);background:var(--lv-accent-soft);color:var(--lv-accent)}.lv-sim-load__kind--notes{background:var(--lv-success-soft);color:var(--lv-success)}.lv-sim-load__row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:var(--lv-space-4);margin-top:var(--lv-space-4)}.lv-sim-load__field{display:flex;flex-direction:column;gap:var(--lv-space-2);min-width:0;margin-bottom:var(--lv-space-4);font-size:var(--lv-text-xs);color:var(--lv-text-muted)}.lv-sim-load__row .lv-sim-load__field{margin-bottom:0}.lv-sim-load__field>.lv-input,.lv-sim-load__field>.lv-select{min-width:0;width:100%}.lv-sim-loads__add{display:flex;gap:var(--lv-space-4)}.lv-sim-layers__group+.lv-sim-layers__group{margin-top:var(--lv-space-3)}.lv-sim-layers__group-name{font-size:var(--lv-text-xs);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps);color:var(--lv-text-muted);margin-bottom:var(--lv-space-1)}.lv-sim-layers__list{list-style:none;margin:0;padding:0}.lv-sim-layers__hand{all:unset;cursor:pointer;border-radius:var(--lv-radius-sm);padding:0 var(--lv-space-1)}.lv-sim-layers__hand[aria-pressed=true]{background:var(--lv-accent-soft);color:var(--lv-accent)}.lv-sim-layers__hand:focus-visible{outline:2px solid var(--lv-accent);outline-offset:1px}.lv-sim-layers__item{font-size:var(--lv-text-sm);padding:2px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lv-sim-layers__foot{display:flex;align-items:center;justify-content:space-between;margin-top:var(--lv-space-4);font-size:var(--lv-text-sm)}.lv-sim-results__status{display:flex;align-items:center;flex-wrap:wrap;gap:var(--lv-space-4);font-size:var(--lv-text-sm);margin-bottom:var(--lv-space-5)}.lv-sim-dot{width:8px;height:8px;border-radius:50%;background:var(--lv-text-subtle)}.lv-sim-dot--live{background:var(--lv-success)}.lv-sim-results__muted{color:var(--lv-text-subtle);font-size:var(--lv-text-xs)}.lv-sim-results__group{margin:var(--lv-space-5) 0 var(--lv-space-6)}.lv-sim-results__group h4{font-size:var(--lv-text-xs);color:var(--lv-text-muted);text-transform:uppercase;letter-spacing:var(--lv-tracking-caps);margin-bottom:var(--lv-space-3)}.lv-sim-results__row{display:flex;justify-content:space-between;gap:var(--lv-space-5);font-size:var(--lv-text-sm);padding:var(--lv-space-2) 0;border-bottom:1px solid var(--lv-border)}.lv-sim-results__label{color:var(--lv-text-muted);min-width:0}.lv-sim-results__value{text-align:right;font-variant-numeric:tabular-nums}.lv-sim-results__note,.lv-sim-results__warning{font-size:var(--lv-text-xs);color:var(--lv-text-subtle);margin-top:var(--lv-space-3)}.lv-sim-results__warning{color:var(--lv-warning)}.lv-sim-load__hint{display:block;margin-top:var(--lv-space-1);font-size:var(--lv-text-xs);color:var(--lv-text-muted);line-height:var(--lv-line-base)}.lv-sim__stopped{margin:0 0 var(--lv-space-3);color:var(--lv-danger);font-size:var(--lv-text-sm)}.lv-print{height:100%;overflow-y:auto;padding:var(--lv-space-6) var(--lv-space-6) var(--lv-space-9);background:var(--lv-surface-2);color:var(--lv-text)}.lv-print__controls{max-width:860px;margin:0 auto var(--lv-space-6)}.lv-print__controls p{color:var(--lv-text-muted);margin:var(--lv-space-2) 0 var(--lv-space-4)}.lv-print__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--lv-space-3)}.lv-print__paper{display:inline-flex;align-items:center;gap:var(--lv-space-2)}.lv-print__subtitle{font-weight:var(--lv-weight-regular);color:var(--lv-text-muted)}.lv-print__page{width:fit-content;margin:0 auto var(--lv-space-6);background:#fff;box-shadow:0 1px 4px #00000040}.lv-print__svg{display:block;font-family:var(--lv-font-sans);fill:#000}.lv-print__svg path{fill:none}@page{margin:15mm}.lv-print__page--portrait{page:lv-portrait}.lv-print__page--landscape{page:lv-landscape}@media print{html,body,#root{height:auto;overflow:visible}.lv-print{height:auto;overflow:visible;padding:0;background:none}.lv-print__controls{display:none}.lv-print__page{margin:0;box-shadow:none;break-after:page}.lv-print__page:last-child{break-after:auto}}.lv-print__printer{display:flex;flex-wrap:wrap;align-items:center;gap:var(--lv-space-2)}@media print{body:has(.lv-print) .lv-dialog-backdrop{display:none}}
