html.ls-site,html.ls-site body,html.ls-site #root{height:auto;min-height:100%;overflow:auto}html.ls-site body{-webkit-user-select:text;user-select:text;background:var(--color-bg)}.ls-site-skip{position:absolute;left:8px;top:8px;z-index:40;padding:8px 12px;background:var(--color-surface-elevated);border:1px solid var(--color-border-strong);border-radius:8px;color:var(--color-text);text-decoration:none;transform:translateY(-120%)}.ls-site-skip:focus{transform:none}.ls-site-shell{min-height:100vh;display:flex;flex-direction:column;padding-top:55px;background:var(--color-bg);color:var(--color-text)}.ls-site-header{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;flex-wrap:nowrap;gap:4px;min-height:50px;padding:0 8px;background:var(--color-surface);border-bottom:1px solid var(--color-border);font-family:var(--font);font-size:13px;font-weight:400}.ls-site-brand{display:flex;align-items:center;align-self:center;gap:8px;height:55px;padding:0 12px 0 4px;text-decoration:none;color:inherit;flex:none}.ls-site-brand img,.ls-site-logo{height:55px;width:auto}.ls-site-beta{flex:none;align-self:center;margin-top:10px;padding:2px 6px;border:1px solid color-mix(in srgb,var(--color-selection) 45%,var(--color-border));border-radius:4px;background:var(--color-selection-soft);color:var(--color-selection);font-size:10px;font-weight:650;letter-spacing:.06em;line-height:1.2;text-transform:uppercase}.ls-site-brand img.ls-site-logo-light{display:block}.ls-site-brand img.ls-site-logo-dark,html[data-theme=dark] .ls-site-brand img.ls-site-logo-light{display:none}html[data-theme=dark] .ls-site-brand img.ls-site-logo-dark{display:block}.ls-site-nav{display:flex;flex-wrap:nowrap;align-items:center;gap:2px;min-width:0;margin-inline-start:4px}.ls-site-header-spacer{flex:1;min-width:8px}.ls-site-nav-wide{display:flex;flex-wrap:nowrap;align-items:center;gap:2px}.ls-site-nav-menu{display:none;position:relative}.ls-site-nav-menu summary{list-style:none;cursor:pointer;background:transparent;border:0;color:var(--color-text);padding:6px 10px;border-radius:6px;font-size:13px}.ls-site-nav-menu summary:hover{background:color-mix(in srgb,var(--color-text) 6%,var(--color-surface))}.ls-site-nav-menu summary::-webkit-details-marker{display:none}.ls-site-nav-panel{position:absolute;top:100%;right:0;display:none;flex-direction:column;min-width:180px;margin-top:0;padding:6px;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-elevated);z-index:30}.ls-site-nav-menu[open] .ls-site-nav-panel{display:flex}.ls-site-nav a:not(.ls-site-open-editor),.ls-site-nav-menu summary,.ls-site-footer-nav a,.ls-footer-links a{color:var(--color-text);text-decoration:none;font-family:var(--font);font-size:13px;font-weight:400;padding:6px 10px;border-radius:6px}.ls-site-nav a:not(.ls-site-open-editor):hover,.ls-site-footer-nav a:hover,.ls-footer-links a:hover{background:color-mix(in srgb,var(--color-text) 6%,var(--color-surface))}.ls-site-nav a:not(.ls-site-open-editor)[aria-current=page]{background:color-mix(in srgb,var(--color-text) 8%,var(--color-surface))}.ls-btn.primary.ls-site-open-editor{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;margin-inline-start:4px;padding:0 15px;border-radius:8px;font-size:12px;font-weight:600;letter-spacing:.05em;line-height:1;text-transform:uppercase;text-decoration:none;white-space:nowrap}.ls-site-open-editor:focus-visible{outline:none;box-shadow:var(--focus)}.ls-site-nav a:focus-visible,.ls-site-footer-nav a:focus-visible,.ls-guide-card:focus-visible,.ls-theme-toggle:focus-visible,.ls-site-nav-menu summary:focus-visible{outline:none;box-shadow:var(--focus)}.ls-site-main{flex:1;width:min(760px,calc(100% - 32px));margin:0 auto;padding:28px 0 64px}.ls-site-main.ls-site-wide{width:min(960px,calc(100% - 32px))}.ls-site-main h1{font-size:2rem;font-weight:600;line-height:1.2;margin:0 0 12px}.ls-site-main h2{font-size:1.35rem;font-weight:600;margin:32px 0 10px}.ls-site-main h3{font-size:1.05rem;font-weight:600;margin:22px 0 8px}.ls-site-main p,.ls-site-main li{font-size:15px;line-height:1.65;color:var(--color-text)}.ls-site-main p{margin:0 0 12px}.ls-site-main ul,.ls-site-main ol{margin:0 0 14px;padding-inline-start:1.25rem}.ls-site-lead{font-size:1.05rem;color:var(--color-text-muted);margin-bottom:20px}.ls-crumbs{display:flex;flex-wrap:wrap;gap:6px;font-size:13px;color:var(--color-text-muted);margin-bottom:16px}.ls-crumbs a{color:var(--color-text-muted)}.ls-crumbs ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:0}.ls-crumbs li:not(:last-child):after{content:"/";margin-inline-start:6px;color:var(--color-border-strong)}.ls-toc{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:14px 16px;margin:0 0 24px}.ls-toc h2{margin:0 0 8px;font-size:.95rem}.ls-toc ol{margin:0}.ls-toc a{color:var(--color-text)}.ls-callout{border:1px solid var(--color-border);border-inline-start:4px solid var(--color-primary);border-radius:10px;padding:10px 14px;margin:16px 0;background:var(--color-surface)}.ls-callout.tip{border-inline-start-color:var(--color-success)}.ls-callout.warning{border-inline-start-color:var(--color-warning)}.ls-callout.danger{border-inline-start-color:var(--color-danger)}.ls-callout strong{display:block;margin-bottom:4px}.ls-ui{display:inline-block;font-size:12.5px;font-weight:600;padding:1px 6px;border:1px solid var(--color-border-strong);border-radius:6px;background:var(--color-surface-subtle)}kbd{font-family:var(--mono);font-size:12px;padding:1px 5px;border:1px solid var(--color-border-strong);border-bottom-width:2px;border-radius:4px;background:var(--color-surface)}.ls-guide-fig{margin:16px 0 20px}.ls-guide-fig a{display:block}.ls-guide-fig img{display:block;width:100%;height:auto;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface)}.ls-guide-fig figcaption{font-size:13px;color:var(--color-text-muted);margin-top:6px}.ls-guide-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:24px 0}.ls-guide-card{display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;min-width:0}.ls-guide-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-canvas)}.ls-guide-card img{width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;background:var(--color-surface-subtle)}.ls-guide-card-body{padding:12px 14px 16px}.ls-guide-card h2{margin:0 0 6px;font-size:1.1rem}.ls-guide-card p{margin:0 0 8px;color:var(--color-text-muted);font-size:14px}.ls-guide-card .ls-mins{font-size:12px;color:var(--color-text-muted)}.ls-site-pager{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:36px;padding-top:16px;border-top:1px solid var(--color-border)}.ls-site-pager a{color:var(--color-text);font-weight:500}.ls-site-footer{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;padding:16px 20px 24px;border-top:1px solid var(--color-border);background:var(--color-surface);font-size:13px;color:var(--color-text-muted)}.ls-site-footer-nav{display:flex;flex-wrap:wrap;margin-inline-start:auto}.ls-site-actions{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.ls-guide-legend{display:flex;flex-direction:column;gap:10px;margin:8px 0 16px;padding:12px 14px;list-style:none;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px}.ls-guide-legend-item{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.45;min-width:0}.ls-guide-legend-chip{flex:none;width:18px;height:18px;margin-top:2px;border-radius:4px;border:1px solid var(--color-border-strong)}.ls-updated{color:var(--color-text-muted);font-size:13px}.ls-footer-links{display:flex;flex-wrap:wrap;align-items:center;gap:0;flex:none;padding-inline-end:8px}.ls-home-kicker{margin:0 0 8px;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.ls-btn.ls-home-cta{text-transform:uppercase;letter-spacing:.04em;font-weight:600;padding:10px 16px;font-size:13px;border-radius:8px;width:auto;max-width:none;white-space:nowrap}.ls-home-hero-actions{justify-content:center;align-items:center;flex-direction:column;gap:8px;margin:28px 0 8px}.ls-home-hero-actions .ls-btn.primary.ls-home-cta-launch{font-size:15px;padding:12px 22px}.ls-home-preview{margin:28px 0 8px}.ls-home-preview img{display:block;width:100%;height:auto;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface)}.ls-home-preview figcaption{margin-top:8px;font-size:13px;color:var(--color-text-muted)}.ls-home-section{margin-top:40px}.ls-home-benefits{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.ls-home-benefits article{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:14px 16px}.ls-home-benefits h3{margin-top:0}.ls-home-features-lead{max-width:46rem;font-size:1.05rem}.ls-home-prose{max-width:46rem}.ls-faq{max-width:46rem;display:flex;flex-direction:column;gap:8px}.ls-faq details{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;padding:10px 14px}.ls-faq summary{cursor:pointer;font-weight:650}.ls-faq details p{margin:10px 0 4px}.ls-site-ad{margin:28px 0;padding:10px 12px 12px;border:1px dashed var(--color-border-strong, var(--color-border));border-radius:10px;background:var(--color-surface)}.ls-site-ad-label{margin:0 0 8px;font-size:11px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.ls-site-ad-box{width:100%;min-height:120px}.ls-home-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.ls-home-feature{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;padding:18px 18px 16px;box-shadow:0 8px 24px color-mix(in srgb,var(--color-text) 6%,transparent)}.ls-home-feature.is-featured{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:8px 28px;align-items:center;border-color:color-mix(in srgb,var(--color-primary) 35%,var(--color-border))}.ls-home-feature-kicker{margin:0 0 6px;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary)}.ls-home-feature img{display:block;width:100%;height:auto;border:1px solid var(--color-border);border-radius:10px;margin-bottom:14px;background:var(--color-bg, #fff)}.ls-home-feature.is-featured img{margin-bottom:0}.ls-home-feature h3{margin:0 0 8px;font-size:1.28rem}.ls-home-feature p{margin:0 0 12px}.ls-home-feature a{font-weight:600}.ls-guide-group{margin-top:28px}.ls-guide-group h2{margin-bottom:10px}.ls-guide-table{width:100%;border-collapse:collapse;font-size:.95rem;margin:16px 0 24px}.ls-guide-table th,.ls-guide-table td{border:1px solid var(--color-border);padding:8px 10px;text-align:start;vertical-align:top}.ls-guide-table th{background:var(--color-surface)}.ls-home-tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px 20px;padding-inline-start:1.2rem}.ls-home-final{margin-top:48px;padding:24px 20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px}@media(max-width:900px){.ls-site-header{flex-wrap:nowrap;padding:0 8px}.ls-site-brand{padding-inline-end:4px}.ls-site-nav{width:auto}.ls-site-nav-wide{display:none}.ls-site-nav-menu{display:block}.ls-site-nav-panel .ls-btn.primary.ls-site-open-editor{width:100%;height:auto;min-height:40px;margin:0 0 6px;padding:10px 16px}.ls-site-main h1{font-size:1.6rem}.ls-footer-meta{flex-wrap:wrap}.ls-footer-links{width:100%;padding:4px 8px 6px;order:3}.ls-home-features,.ls-home-feature.is-featured{grid-template-columns:1fr}.ls-home-feature.is-featured img{margin-bottom:14px}}:root,:root[data-theme=light]{color-scheme:light;--color-bg: #F4F1EF;--color-surface: #FFFFFF;--color-surface-elevated: #FFFFFF;--color-surface-subtle: #FBF9F8;--color-canvas: #FFFFFF;--color-text: #252326;--color-text-muted: #746D72;--color-text-disabled: #AAA2A7;--color-border: #DED7D3;--color-border-strong: #C9BFBA;--color-grid-minor: #EAE5E2;--color-grid-major: #CEC6C2;--color-primary: #F17950;--color-primary-hover: #DC633F;--color-primary-active: #C95333;--color-primary-contrast: #28140D;--color-selection: #E46742;--color-selection-soft: #FCE5DC;--color-focus: #C95333;--color-success: #23866F;--color-warning: #A66A16;--color-danger: #C43D4D;--shadow-canvas: 0 2px 8px rgb(43 31 27 / 15%);--shadow-elevated: 0 10px 30px rgb(43 31 27 / 12%)}:root[data-theme=dark]{color-scheme:dark;--color-bg: #151316;--color-surface: #1D1A1E;--color-surface-elevated: #2A262B;--color-surface-subtle: #211E22;--color-canvas: #1A181B;--color-text: #F5F2F4;--color-text-muted: #B6ADB3;--color-text-disabled: #716A70;--color-border: #3D373D;--color-border-strong: #5A5158;--color-grid-minor: #302B31;--color-grid-major: #4B434A;--color-primary: #F17950;--color-primary-hover: #FF8B67;--color-primary-active: #DB633F;--color-primary-contrast: #21100B;--color-selection: #FF8B67;--color-selection-soft: #4A2B23;--color-focus: #FF9A7B;--color-success: #65C7AE;--color-warning: #E7B65D;--color-danger: #F07A88;--shadow-canvas: 0 3px 12px rgb(0 0 0 / 40%);--shadow-elevated: 0 12px 34px rgb(0 0 0 / 35%)}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-bg: #151316;--color-surface: #1D1A1E;--color-surface-elevated: #2A262B;--color-surface-subtle: #211E22;--color-canvas: #1A181B;--color-text: #F5F2F4;--color-text-muted: #B6ADB3;--color-text-disabled: #716A70;--color-border: #3D373D;--color-border-strong: #5A5158;--color-grid-minor: #302B31;--color-grid-major: #4B434A;--color-primary: #F17950;--color-primary-hover: #FF8B67;--color-primary-active: #DB633F;--color-primary-contrast: #21100B;--color-selection: #FF8B67;--color-selection-soft: #4A2B23;--color-focus: #FF9A7B;--color-success: #65C7AE;--color-warning: #E7B65D;--color-danger: #F07A88;--shadow-canvas: 0 3px 12px rgb(0 0 0 / 40%);--shadow-elevated: 0 12px 34px rgb(0 0 0 / 35%)}}:root{--font: "IBM Plex Sans", "Noto Sans", "Noto Sans Hebrew", "Noto Naskh Arabic", sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace;--focus: 0 0 0 2px color-mix(in srgb, var(--color-focus) 70%, transparent);--page: #ffffff}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{font-family:var(--font);background:var(--color-surface);color:var(--color-text);overflow:hidden;-webkit-user-select:none;user-select:none}button,input,textarea,select{font-family:inherit;color:inherit}button{cursor:pointer}input[type=checkbox],input[type=radio]{accent-color:var(--color-primary)}:focus-visible{outline:none;box-shadow:var(--focus)}.ls-app{width:100%;height:100%;min-height:0;overflow:hidden}.ls-shell{display:grid;grid-template-rows:auto minmax(0,1fr);width:100%;height:100%;min-height:0;overflow:hidden}.ls-top{display:flex;flex-direction:column;min-width:0}.ls-menubar,.ls-toolbar,.ls-status{display:flex;align-items:center;gap:4px;padding:0 8px;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.ls-menubar{min-height:50px}.ls-menubar,.ls-menubar .ls-menu{font-family:var(--font);font-size:13px;font-weight:400}.ls-theme-toggle{margin-inline-start:2px}.ls-tabs{display:flex;align-items:stretch;gap:2px;min-height:28px;padding:0 8px 0 4px;background:var(--color-surface);border-bottom:1px solid var(--color-border);overflow-x:auto;overflow-y:hidden}.ls-tab{display:flex;align-items:stretch;max-width:200px;min-width:80px;background:var(--color-surface-subtle);border:1px solid transparent;border-bottom:0;border-radius:6px 6px 0 0}.ls-tab.active{background:var(--color-surface-elevated);border-color:var(--color-border);box-shadow:inset 0 2px 0 var(--color-primary)}.ls-tab-btn{display:flex;align-items:center;gap:6px;flex:1;min-width:0;background:transparent;border:0;padding:4px 4px 4px 10px;color:inherit;font-size:12px;text-align:start}.ls-tab-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ls-tab-dot{width:6px;height:6px;border-radius:50%;background:var(--color-primary);flex:none}.ls-tab-close{background:transparent;border:0;color:var(--color-text-muted);width:22px;flex:none;font-size:14px;line-height:1;border-radius:4px;margin:3px 4px 3px 0}.ls-tab-close:hover{background:var(--color-surface);color:var(--color-text)}.ls-sheets{display:flex;align-items:center;gap:6px;flex:none;min-height:36px;padding:4px 10px;border-top:1px solid var(--color-border);background:var(--color-surface-elevated);overflow-x:auto;z-index:8}.ls-sheets-label{flex:none;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted)}.ls-sheet-tab{border:1px solid var(--color-border);background:var(--color-surface-subtle);color:var(--color-text-muted);border-radius:8px;padding:5px 12px;font-size:12px;font-weight:600}.ls-sheet-tab:hover{color:var(--color-text);border-color:var(--color-text-muted)}.ls-sheet-tab.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:none}.ls-sheet-add,.ls-sheet-del,.ls-sheet-step{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:8px;padding:5px 10px;font-size:12px}.ls-sheet-add{border-style:dashed;color:var(--color-text-muted)}.ls-sheet-step:disabled{opacity:.4;cursor:default}.ls-sheet-badge{position:absolute;bottom:12px;left:50%;transform:translate(-50%);z-index:7;pointer-events:none;padding:4px 12px;border-radius:999px;background:color-mix(in srgb,var(--color-surface-elevated) 94%,transparent);border:1px solid var(--color-border);box-shadow:var(--shadow-elevated);font-size:12px;font-weight:600;color:var(--color-text);white-space:nowrap}.ls-toolbar{flex-wrap:nowrap;min-height:40px;overflow:visible;gap:2px}.ls-toolbar-context{display:none}.ls-status{border-bottom:0;border-top:1px solid var(--color-border);font-size:11px;color:var(--color-text-muted);min-height:22px;flex-wrap:nowrap;gap:8px 12px;padding:1px 8px;overflow:hidden}.ls-content{display:grid;grid-template-columns:minmax(0,1fr) var(--right, 300px);min-width:0;min-height:0;overflow:hidden}.ls-main{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.ls-footer{position:relative;z-index:5;display:flex;flex-direction:column;flex:none;min-width:0;border-top:1px solid var(--color-border);background:var(--color-surface)}.ls-footer-meta{display:flex;align-items:center;gap:8px;min-width:0}.ls-footer-meta .ls-status{flex:1 1 auto;min-width:0;border-top:0}.ls-footer-meta .ls-status-credit{flex:none;padding-inline-end:10px}.ls-dxf-colours{width:100%;border-collapse:collapse;font-size:12px;margin:8px 0}.ls-dxf-colours th,.ls-dxf-colours td{text-align:start;padding:4px 6px;border-bottom:1px solid var(--color-border)}.ls-brand{display:flex;align-items:center;gap:8px;align-self:center;padding:0 12px 0 4px;height:55px;text-decoration:none;color:inherit}.ls-brand-logo{display:block;height:55px;width:auto}.ls-brand-beta{flex:none;align-self:center;margin-top:10px;padding:2px 6px;border:1px solid color-mix(in srgb,var(--color-selection) 45%,var(--color-border));border-radius:4px;background:var(--color-selection-soft);color:var(--color-selection);font-size:10px;font-weight:650;letter-spacing:.06em;line-height:1.2;text-transform:uppercase}.ls-menubar-nav{display:flex;align-items:center;gap:2px;min-width:0;margin-inline-start:4px}.ls-docname,.ls-docname.editing{display:inline-flex;align-items:center;gap:7px;flex:none;box-sizing:border-box;width:168px;height:34px;margin-inline:10px 14px;padding:0 11px;border:1px solid transparent;border-radius:6px;background:color-mix(in srgb,var(--color-border) 42%,var(--color-surface));color:var(--color-text);font-family:inherit;font-size:15px;font-weight:500;line-height:1.2;text-align:start;cursor:text;min-width:0;box-shadow:none;outline:none;-webkit-appearance:none;appearance:none}.ls-docname:hover:not(.editing){background:color-mix(in srgb,var(--color-border) 58%,var(--color-surface))}.ls-docname.editing{background:#fff;border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 22%,transparent);cursor:text}.ls-docname:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 22%,transparent)}:root[data-theme=dark] .ls-docname.editing{background:var(--color-surface-elevated)}.ls-docname-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:15px;height:15px;color:var(--color-text-muted);pointer-events:none}.ls-docname-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.ls-docname-field{display:flex;align-items:center;min-width:0;flex:1;height:100%}.ls-docname-text{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:500}.ls-docname-input{min-width:0;flex:1;width:100%;height:100%;margin:0;padding:0;border:0!important;border-radius:0;outline:none!important;box-shadow:none!important;background:transparent!important;color:inherit;font-family:inherit;font-size:15px;font-weight:500;line-height:1.2;-webkit-appearance:none;appearance:none}.ls-docname-input:focus,.ls-docname-input:focus-visible{border:0!important;outline:none!important;box-shadow:none!important;background:transparent!important}.ls-pop-menus{max-height:min(70vh,520px);overflow:auto;min-width:220px;padding:6px 0}.ls-pop-section{padding:6px 12px 2px;font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-muted)}.ls-pop-menu-group+.ls-pop-menu-group{margin-top:4px;border-top:1px solid var(--color-border);padding-top:4px}@media(max-width:900px){.ls-docname,.ls-docname.editing{width:120px;margin-inline:6px 8px}.ls-menubar .ls-kofi{display:none}}.ls-sep{width:1px;height:18px;background:var(--color-border);margin:0 6px}.ls-menu{background:transparent;border:0;color:var(--color-text);padding:6px 10px;border-radius:6px;font-size:13px}.ls-menu:hover,.ls-iconbtn:hover:not(:disabled),.ls-tool:hover:not(:disabled){background:color-mix(in srgb,var(--color-text) 6%,var(--color-surface))}.ls-menu:active,.ls-iconbtn:active:not(:disabled),.ls-tool:active:not(:disabled){background:color-mix(in srgb,var(--color-text) 10%,var(--color-surface))}.ls-iconbtn,.ls-tool{background:transparent;border:0;width:32px;height:32px;border-radius:6px;display:grid;place-items:center;color:var(--color-text);flex:none}.ls-tools .ls-tool{width:36px;height:36px}.ls-tools .ls-tool:disabled{opacity:.4;cursor:default;color:var(--color-text-disabled)}.ls-iconbtn:disabled,.ls-pop-item:disabled{opacity:1;cursor:default;color:var(--color-text-disabled)}.ls-iconbtn[aria-pressed=true],.ls-iconbtn[aria-pressed=true]:hover,.ls-iconbtn[aria-pressed=true]:active,.ls-tool[aria-pressed=true],.ls-tool[aria-pressed=true]:hover,.ls-tool[aria-pressed=true]:active,.ls-tool.active{background:var(--color-selection-soft);color:var(--color-selection)}.ls-body{flex:1 1 auto;display:grid;grid-template-columns:84px minmax(0,1fr) 5px;min-height:0;min-width:0;overflow:hidden}.ls-stage{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.ls-right-col{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--color-surface-subtle);border-left:1px solid var(--color-border);overflow:hidden}.ls-right{background:transparent;border-left:0;display:flex;flex-direction:column;flex:1 1 auto;min-width:0;max-width:100%;min-height:0;overflow:hidden}.ls-props-scroll{flex:1 1 auto;min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable}.ls-ad-slot{flex:0 0 250px;width:100%;height:250px;min-height:250px;max-height:250px;box-sizing:border-box;overflow:hidden;border-top:1px solid var(--color-border);background:repeating-linear-gradient(-45deg,transparent,transparent 6px,color-mix(in srgb,var(--color-border) 55%,transparent) 6px,color-mix(in srgb,var(--color-border) 55%,transparent) 7px),var(--color-surface);display:grid;place-content:center;gap:2px;text-align:center;-webkit-user-select:none;user-select:none;pointer-events:none}.ls-ad-slot--live{background:var(--color-surface)}#adsense-portal-root{position:fixed;top:0;left:0;width:0;height:0;overflow:hidden;z-index:5;pointer-events:none;box-sizing:border-box}#adsense-portal-root .adsbygoogle,#adsense-portal-root ins{display:block;width:100%;height:100%;max-width:100%;max-height:100%;overflow:hidden}#adsense-portal-root iframe{max-width:100%;max-height:100%}.ls-tools{background:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;overflow:hidden;height:100%;min-width:0;min-height:0;position:relative;z-index:6}.ls-tools-scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;display:grid;grid-template-columns:repeat(2,36px);justify-content:center;align-content:start;justify-items:center;padding:6px 4px;gap:2px 4px}.ls-workspace{display:flex;flex-direction:column;position:relative;min-width:0;min-height:0;flex:1 1 auto;background:var(--color-bg)}.ls-canvas-host{position:relative;flex:1 1 auto;min-width:0;min-height:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ls-circ-panel{position:absolute;top:12px;right:8px;z-index:12;width:min(320px,calc(100% - 16px));max-height:calc(100% - 24px);overflow:auto;pointer-events:auto;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-elevated);padding:12px 14px}.ls-circ-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.ls-circ-head h2{margin:0;font-size:15px;font-weight:650}.ls-circ-head .ls-iconbtn{width:28px;height:28px;font-size:18px;line-height:1}.ls-circ-summary{margin:0 0 10px;font-size:12px;color:var(--color-text-muted)}.ls-circ-warn{margin:0 0 8px;font-size:12px;color:var(--color-text-muted)}.ls-circ-seg{margin-bottom:4px}.ls-circ-seg-label{font-size:11px;font-weight:600;color:var(--color-text-muted);margin-bottom:4px}.ls-circ-seg .ls-seg button{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:12px;min-height:32px}.ls-circ-advanced{margin:8px 0 12px;font-size:13px}.ls-circ-advanced summary{cursor:pointer;font-weight:600;margin-bottom:8px}.ls-circ-xy{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ls-circ-advanced .ls-btn{width:100%;margin-top:4px}.ls-circ-panel .ls-actions{position:sticky;bottom:0;background:var(--color-surface-elevated);padding-top:8px}@media(max-width:720px){.ls-circ-panel{inset:auto 8px 8px;width:auto;max-height:42vh}}.ls-ref-panel{left:8px;right:auto;width:min(280px,calc(100% - 16px))}.ls-ref-disclaimer{margin:0 0 10px;font-size:11px;line-height:1.4;color:var(--color-text);background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:8px;padding:8px 9px}.ls-ref-row{display:flex;align-items:center;gap:8px;margin:4px 0 8px}.ls-ref-lock-label{font-size:12px;color:var(--color-text-muted)}.ls-ref-opacity-slider{display:block;margin:0 0 8px}.ls-ref-opacity-slider input{width:100%}.ls-ref-section-title{margin:0;font-size:13px;font-weight:650;flex:1;min-width:0}.ls-ref-opacity-row{display:flex;align-items:center;gap:8px;min-width:0;width:100%;max-width:160px}.ls-ref-opacity-row input{flex:1;min-width:0}.ls-ref-opacity-val{font-size:12px;color:var(--color-text-muted);width:36px;flex:none}.ls-ref-toolbar{display:flex;align-items:center;gap:2px;margin-top:10px;padding-top:8px;border-top:1px solid var(--color-border)}.ls-ref-toolbar-danger{margin-inline-start:auto}.ls-ref-toolbar-danger:hover:not(:disabled){color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 12%,transparent)}.ls-ref-scale-box{display:flex;flex-direction:column;gap:8px}.ls-ref-scale-help{margin:0;font-size:12px;color:var(--color-text-muted);line-height:1.35}.ls-ref-scale-hud{gap:6px}.ls-ref-scale-hud-now{font-size:10px;color:var(--color-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.ls-ref-scale-hud-input{width:64px}@media(max-width:720px){.ls-ref-panel{left:8px;right:8px;width:auto}}.ls-poly-sides{position:absolute;z-index:8;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:2px;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:6px;box-shadow:var(--shadow-canvas);pointer-events:auto;-webkit-user-select:none;user-select:none}.ls-poly-sides-btn{width:32px;height:16px;padding:0;border:0;background:transparent;color:var(--color-text-muted);font-size:8px;line-height:1;cursor:pointer}.ls-poly-sides-btn:hover{color:var(--color-selection);background:var(--color-selection-soft)}.ls-poly-sides-input{width:32px;height:22px;margin:0;padding:0;border:0;border-block:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-size:12px;font-weight:600;text-align:center;-moz-appearance:textfield}.ls-poly-sides-input::-webkit-outer-spin-button,.ls-poly-sides-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ls-poly-sides-input:focus{outline:none;color:var(--color-selection)}.ls-poly-sides-ok{margin-top:2px;height:20px;padding:0 4px;border:0;border-radius:4px;background:var(--color-selection);color:#fff;font-size:10px;font-weight:700;letter-spacing:.02em;cursor:pointer}.ls-poly-sides-ok:hover{filter:brightness(1.06)}.ls-offset-hud{position:absolute;z-index:8;display:flex;align-items:center;gap:5px;padding:3px 4px 3px 7px;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:7px;box-shadow:var(--shadow-canvas);pointer-events:auto;-webkit-user-select:none;user-select:none;cursor:default}.ls-offset-hud.invalid{border-color:var(--color-warning)}.ls-offset-hud-input{width:54px;height:22px;margin:0;padding:0 4px;border:0;background:transparent;color:var(--color-text);font-family:var(--mono);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;text-align:right}.ls-offset-hud-input:focus{outline:none;color:var(--color-selection)}.ls-offset-hud-unit{font-size:10px;color:var(--color-text-muted);margin-inline-end:2px}.ls-offset-hud-flip,.ls-offset-hud-ok{height:22px;padding:0 7px;border:0;border-radius:5px;font-size:10px;font-weight:650;cursor:pointer}.ls-offset-hud-flip{background:transparent;color:var(--color-text-muted)}.ls-offset-hud-flip:hover{color:var(--color-selection);background:var(--color-selection-soft)}.ls-offset-hud-ok{background:var(--color-selection);color:#fff}.ls-offset-hud-ok:hover{filter:brightness(1.06)}.ls-offset-hud-ok:disabled{opacity:.45;filter:none;cursor:default}.ls-canvas{position:absolute;inset:0;overflow:hidden;cursor:default;touch-action:none}.ls-canvas.space{cursor:grab}.ls-canvas svg{display:block;width:100%;height:100%}.ls-page-sheet{filter:drop-shadow(var(--shadow-canvas))}.ls-text-edit{position:absolute;z-index:6;margin:0;padding:1px 3px;border:1px solid var(--color-selection);border-radius:2px;background:var(--page);color:#111;resize:both;overflow:hidden;box-sizing:border-box}.ls-rulers-corner{position:absolute;top:0;left:0;width:20px;height:20px;background:var(--color-surface);border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);z-index:3}.ls-ruler-h,.ls-ruler-v{position:absolute;z-index:2;background:var(--color-surface);color:var(--color-text-muted);overflow:hidden}.ls-ruler-h{top:0;left:20px;right:0;height:20px;border-bottom:1px solid var(--color-border)}.ls-ruler-v{top:20px;left:0;bottom:0;width:20px;border-right:1px solid var(--color-border)}.ls-ad-slot-label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);font-weight:600}.ls-ad-slot-size{font-size:12px;font-variant-numeric:tabular-nums;color:var(--color-text-muted);opacity:.85}.ls-splitter{width:5px;cursor:col-resize;background:transparent;position:relative;z-index:4}.ls-section{border-bottom:1px solid var(--color-border);padding:8px 10px;min-width:0}.ls-section h3{margin:0 0 8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);font-weight:600}.ls-section-body{min-width:0}.ls-field{display:grid;grid-template-columns:64px minmax(0,1fr);gap:6px 8px;align-items:center;margin-bottom:4px;font-size:12px;min-width:0}.ls-field label,.ls-field-label{color:var(--color-text-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.2}.ls-field-stack{grid-template-columns:1fr;gap:2px;align-items:stretch;margin-bottom:4px}.ls-field-stack>.ls-field-label{font-size:10px;line-height:1.15;white-space:normal}.ls-field-stack>input,.ls-field-stack>select,.ls-field-stack>textarea,.ls-field-stack>.ls-numwrap{grid-column:1}.ls-field>.ls-field-msg,.ls-field>.ls-swatch-row{grid-column:1 / -1}.ls-field input,.ls-field select,.ls-field textarea{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:5px;padding:3px 6px;font-size:12px;font-variant-numeric:tabular-nums;min-width:0;width:100%;max-width:100%;min-height:26px;box-sizing:border-box}.ls-field textarea{min-height:64px;resize:vertical;-webkit-user-select:text;user-select:text}.ls-field input{-webkit-user-select:text;user-select:text}.ls-field-msg{min-height:0;font-size:10px;line-height:12px;color:var(--color-error, #c0392b);margin:0}.ls-field-has-error .ls-field-msg{min-height:12px}.ls-field-disabled{opacity:.55;pointer-events:none}.ls-scrub{cursor:ew-resize;-webkit-user-select:none;user-select:none}.ls-row{display:flex;gap:6px;flex-wrap:wrap}.ls-chip{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:6px;padding:4px 8px;font-size:11px}.ls-layer,.ls-obj{display:grid;grid-template-columns:18px 18px 1fr auto;gap:4px;align-items:center;padding:4px 6px;border-radius:6px;font-size:12px}.ls-obj.selected{background:var(--color-selection-soft)}.ls-obj:hover,.ls-layer:hover{background:var(--color-surface-elevated)}.ls-swatch{width:12px;height:12px;border-radius:3px;border:1px solid var(--color-border)}.ls-dialog-back{position:fixed;inset:0;background:color-mix(in srgb,var(--color-text) 40%,transparent);display:grid;place-items:center;z-index:20}.ls-dialog-back[hidden]{display:none!important}.ls-dialog{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:12px;min-width:420px;max-width:640px;max-height:80vh;overflow:auto;box-shadow:var(--shadow-elevated);padding:16px 18px}.ls-dialog h1{margin:0 0 4px;font-size:16px;font-weight:650}.ls-dialog h2{margin:0 0 12px;font-size:16px}.ls-dialog .ls-about-lead{margin:0 0 12px;font-size:13px;font-weight:600;color:var(--color-text)}.ls-dialog p{color:var(--color-text-muted);font-size:13px;line-height:1.45}.ls-export-dialog{min-width:400px;max-width:480px}.ls-export-dialog .ls-actions{position:sticky;bottom:0;background:var(--color-surface-elevated);padding-top:10px;margin-top:8px}.ls-export-dialog .ls-check{margin:4px 0}.ls-export-dialog .ls-kofi{margin-top:8px}.ls-export-opts{border:1px solid var(--color-border);border-radius:8px;margin:0 0 10px;padding:6px 10px 8px;min-width:0}.ls-export-opts legend{padding:0 4px;font-size:11px;font-weight:650;color:var(--color-text)}.ls-export-hint{margin:6px 0 2px;font-size:11px;line-height:1.35;color:var(--color-text-muted)}.ls-export-warn{margin:0 0 10px;padding:8px 10px;font-size:12px;line-height:1.4;color:var(--color-warning);border:1px solid var(--color-warning);border-radius:8px;background:color-mix(in srgb,var(--color-warning) 12%,transparent)}.ls-export-more{margin:0 0 8px;font-size:12px}.ls-export-more>summary{cursor:pointer;color:var(--color-text-muted);list-style:none}.ls-export-more>summary::-webkit-details-marker{display:none}.ls-export-more>summary:before{content:"▸ "}.ls-export-more[open]>summary:before{content:"▾ "}.ls-export-more .ls-check{margin-top:8px}.ls-export-dialog .ls-dxf-colours{font-size:11px}.ls-field-error{color:var(--color-error, #c0392b);font-size:12px;margin:-4px 0 8px}.ls-dialog.ls-busy,.ls-dialog-back.ls-busy{cursor:wait}.ls-nest-dialog{min-width:320px;max-width:380px}.ls-nest-lead{margin:0 0 12px;font-size:13px;color:var(--color-text-muted)}.ls-nest-fields{border:0;padding:0;margin:0}.ls-nest-summary,.ls-nest-hint{margin:8px 0 0;font-size:12px;color:var(--color-text-muted)}.ls-nest-error{margin:8px 0 0;font-size:12px;color:var(--color-error, #c0392b)}.ls-nest-wait{display:flex;align-items:center;gap:10px;margin-top:10px;font-size:13px;color:var(--color-text-muted)}.ls-hourglass{display:inline-block;font-size:18px;animation:ls-hourglass-flip 1.1s ease-in-out infinite}@keyframes ls-hourglass-flip{0%{transform:rotate(0)}45%{transform:rotate(0)}55%{transform:rotate(180deg)}to{transform:rotate(180deg)}}.ls-import-size{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:8px;padding:8px 10px;margin:0 0 12px}.ls-import-size .ls-field{margin-bottom:0}.ls-import-size .ls-field+.ls-field{margin-top:6px}.ls-import-size .ls-meta{margin:6px 0 0}.ls-import-size strong{font-weight:600;font-size:13px}.ls-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.ls-actions-wrap{flex-wrap:wrap}.ls-btn{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:8px;padding:6px 12px;font-size:13px;text-decoration:none;color:inherit;display:inline-block}.ls-btn:hover:not(:disabled){background:color-mix(in srgb,var(--color-text) 6%,var(--color-surface-elevated))}.ls-btn:active:not(:disabled){background:color-mix(in srgb,var(--color-text) 10%,var(--color-surface-elevated))}.ls-btn.primary{background:var(--color-primary);color:var(--color-primary-contrast);border-color:transparent}.ls-btn.primary:hover:not(:disabled){background:var(--color-primary-hover);color:var(--color-primary-contrast)}.ls-btn.primary:active:not(:disabled){background:var(--color-primary-active);color:var(--color-primary-contrast)}.ls-btn.primary:disabled{color:var(--color-primary-contrast)}.ls-btn.danger{color:var(--color-danger)}.ls-btn.danger:hover{background:color-mix(in srgb,var(--color-danger) 12%,var(--color-surface-subtle))}.ls-toast{position:fixed;bottom:56px;left:50%;transform:translate(-50%);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:8px;padding:8px 14px;box-shadow:var(--shadow-elevated);z-index:30;max-width:min(640px,calc(100vw - 32px));font-size:13px;line-height:1.35;white-space:normal;text-align:center;pointer-events:none}.ls-toast.info{border-color:var(--color-border);color:var(--color-text)}.ls-toast.success{border-color:var(--color-success);color:var(--color-success)}.ls-toast.warn{border-color:var(--color-warning);color:var(--color-warning)}.ls-toast.error{border-color:var(--color-danger);color:var(--color-danger)}.ls-kdesc{display:grid;grid-template-columns:160px 1fr;gap:4px 12px;font-size:13px}.ls-kdesc b{font-family:var(--mono);font-weight:500}.ls-issue{text-align:left;width:100%;background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:8px;padding:8px;margin-bottom:6px}.ls-issue strong{display:block;font-size:13px}.ls-color{width:100%;height:28px;padding:0;border:1px solid var(--color-border);border-radius:6px;background:transparent}.ls-op{display:inline-flex;align-items:center;gap:6px;font-size:12px}.ls-op i{width:8px;height:8px;border-radius:2px;display:inline-block}.ls-hint{flex:1 1 200px;min-width:120px;white-space:normal;line-height:1.35;color:var(--color-text-muted)}.ls-hint-ok{color:var(--color-success)}.ls-dim-entry{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--color-text-muted)}.ls-dim-entry input{width:88px;height:20px;font-size:11px;font-family:var(--mono);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text);padding:0 6px}.ls-mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.ls-check{display:flex;align-items:center;gap:6px;font-size:12px;margin:6px 0}.ls-tools svg,.ls-iconbtn svg,.ls-drop-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ls-tools .ls-icon-bitmap,.ls-iconbtn .ls-icon-bitmap,.ls-drop-btn .ls-icon-bitmap,.ls-flyout-item .ls-icon-bitmap{width:21px;height:21px;display:block;flex:none;object-fit:contain;pointer-events:none}:root[data-theme=dark] .ls-icon-bitmap{filter:invert(1)}@media(prefers-color-scheme:dark){:root:not([data-theme]) .ls-icon-bitmap{filter:invert(1)}}.ls-iconbtn svg.ls-bool-icon .keep,.ls-drop-btn svg.ls-bool-icon .keep{fill:currentColor;stroke:none}.ls-iconbtn svg.ls-bool-icon .ghost,.ls-drop-btn svg.ls-bool-icon .ghost{fill:none;stroke:currentColor;stroke-width:1.35}.ls-doc-status{color:var(--color-text);font-weight:500}.ls-search,.ls-layers select{width:100%;margin-bottom:6px;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:6px;padding:5px 7px;font-size:12px;color:var(--color-text)}.ls-layer input{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:6px;padding:4px 6px;font-size:12px;color:var(--color-text)}.ls-align{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}.ls-align button,.ls-bool button{width:100%;height:28px;font-size:11px}.ls-bool{display:grid;grid-template-columns:1fr 1fr;gap:4px}.ls-preview-line{stroke:var(--color-selection);fill:none;stroke-dasharray:4 3}.ls-menu-wrap{position:relative}.ls-menu-wrap:hover>.ls-pop:not([hidden]){display:flex}.ls-pop{position:absolute;top:100%;left:0;min-width:240px;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:8px;padding:6px;z-index:30;box-shadow:var(--shadow-elevated);display:flex;flex-direction:column}.ls-pop[hidden]{display:none!important}.ls-pop-item{display:flex;width:100%;justify-content:space-between;align-items:center;gap:16px;text-align:left}.ls-pop-item:hover:not(:disabled){background:var(--color-surface-subtle)}.ls-pop-label{display:inline-flex;align-items:center;gap:8px;min-width:0}.ls-pop-icon{display:grid;place-items:center;width:16px;height:16px;flex:none;color:var(--color-text-muted)}.ls-pop-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.ls-pop-sep{height:1px;background:var(--color-border);margin:4px 6px}.ls-kbd{color:var(--color-text-muted);font-size:11px;font-family:var(--mono)}.ls-context{position:fixed;top:auto;z-index:40}.ls-toolbar-spacer{flex:1;min-width:8px}.ls-zoom-cluster{display:inline-flex;align-items:center;gap:2px;flex:none}.ls-zoom-pct{display:inline-flex;align-items:center;gap:0;margin-inline-start:4px;height:28px;padding:0 2px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface-elevated);color:var(--color-text-muted);font-size:12px}.ls-zoom-pct label{display:inline-flex;align-items:center;gap:2px}.ls-zoom-nudge{width:22px;height:24px;border:0;padding:0;background:transparent;color:var(--color-text);font:inherit;font-size:15px;line-height:1;cursor:pointer;border-radius:4px}.ls-zoom-nudge:hover{background:color-mix(in srgb,var(--color-text) 8%,transparent)}.ls-zoom-pct input{width:3.2em;border:0;background:transparent;color:var(--color-text);font:inherit;font-variant-numeric:tabular-nums;text-align:end;padding:0;outline:none}.ls-menubar-spacer{flex:1;min-width:8px}.ls-kofi{display:inline-flex;align-items:center;justify-content:center;gap:5px;margin-inline-end:4px;padding:5px 11px;border-radius:6px;background:color-mix(in srgb,var(--color-danger) 10%,var(--color-surface-subtle));border:1px solid color-mix(in srgb,var(--color-danger) 18%,var(--color-border));color:var(--color-text-muted);font-size:12px;line-height:1.2;text-decoration:none;white-space:nowrap;transition:background .15s ease,color .15s ease,border-color .15s ease}.ls-kofi:hover{background:color-mix(in srgb,var(--color-danger) 16%,var(--color-surface-subtle));color:var(--color-text);border-color:color-mix(in srgb,var(--color-danger) 28%,var(--color-border))}.ls-kofi-heart{color:var(--color-danger);font-size:13px;line-height:1}.ls-dialog .ls-kofi{display:flex;width:100%;box-sizing:border-box;margin:12px 0 4px}.ls-export-btn{display:inline-flex;align-items:center;gap:6px;margin:4px 0;flex:none;white-space:nowrap}.ls-export-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ls-drop{position:relative;flex:none}.ls-drop-btn{position:relative}.ls-drop-btn.open:not([aria-pressed=true]){background:color-mix(in srgb,var(--color-text) 6%,var(--color-surface))}.ls-drop-mark{position:absolute;right:3px;bottom:3px;width:0;height:0;border-left:3px solid transparent;border-top:4px solid currentColor;opacity:.7;pointer-events:none}.ls-palette{position:absolute;z-index:40;display:flex;flex-wrap:wrap;align-items:center;gap:2px;padding:6px;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-elevated)}.ls-palette-below{top:100%;left:0;margin-top:4px}.ls-palette-above{bottom:100%;left:0;margin-bottom:4px}.ls-palette-beside{top:0;left:100%;margin-left:4px}.ls-palette-more{display:flex;flex-wrap:nowrap;gap:2px}.ls-palette-extra{flex-basis:100%;margin-top:4px;padding-top:4px;border-top:1px solid var(--color-border)}.ls-palette .ls-iconbtn svg.ls-bool-icon .keep{fill:currentColor;stroke:none}.ls-palette .ls-iconbtn svg.ls-bool-icon .ghost{fill:none;stroke:currentColor;stroke-width:1.35}.ls-snap-cluster{display:inline-flex;align-items:center;position:relative;flex:none}.ls-iconbtn-mini{width:16px;height:32px;position:relative}.ls-pop-snap{min-width:180px;padding:8px 10px}.ls-pop-check{margin:4px 0}.ls-tool-fly{position:relative;width:36px;height:36px;flex:none}.ls-tool-fly .ls-tool{width:36px;height:36px}.ls-tool-drop{position:absolute;right:1px;bottom:1px;width:12px;height:12px;padding:0;border:0;background:transparent;cursor:pointer;z-index:1}.ls-tool-drop:after{content:"";position:absolute;right:1px;bottom:1px;border-left:4px solid transparent;border-top:5px solid currentColor;opacity:.65;color:var(--color-text-muted)}.ls-tool-sep{grid-column:1 / -1;width:100%;height:1px;background:var(--color-border);margin:4px 0}.ls-tool-sep-end{margin-top:auto}.ls-symbols-tool,.ls-tool-group{position:relative;width:36px;height:36px;display:grid;place-items:center}.ls-tool-group-btn{position:relative}.ls-tool-group-mark{position:absolute;right:3px;bottom:3px;width:0;height:0;border-style:solid;border-width:0 0 5px 5px;border-color:transparent transparent currentColor transparent;opacity:.55;pointer-events:none}.ls-tool-group.open .ls-tool-group-mark,.ls-tool-group-btn.active .ls-tool-group-mark{opacity:.85}.ls-tool-group-flyout{position:fixed;left:auto;top:auto;margin-left:0;z-index:1000;min-width:148px}.ls-tool-group-flyout .ls-kbd{margin-inline-start:auto;font-size:10px;opacity:.7}.ls-colour-tool{position:relative;flex:none;width:100%;margin-top:0;padding:8px 0 4px;display:grid;place-items:center;border-top:1px solid var(--color-border);background:var(--color-surface)}.ls-colour-swatch-btn{width:76px;height:40px;padding:0;border:0;border-radius:8px;background:transparent;display:grid;place-items:center;color:var(--color-text);cursor:pointer}.ls-colour-swatch-btn:hover:not(:disabled){background:color-mix(in srgb,var(--color-text) 6%,var(--color-surface))}.ls-colour-swatch-btn:active:not(:disabled),.ls-colour-tool.open .ls-colour-swatch-btn{background:var(--color-selection-soft)}.ls-colour-swatch-btn:disabled{opacity:.45;cursor:default}.ls-colour-tool .ls-colour-swatch{width:28px;height:28px;border-radius:7px;border:1px solid color-mix(in srgb,var(--color-text) 16%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 40%,transparent),0 1px 2px #2b1f1b1a}.ls-colour-swatch{width:18px;height:18px;border-radius:4px;border:1px solid var(--color-border);box-sizing:border-box;flex:none;background:var(--color-surface-elevated)}.ls-colour-swatch.none{background-image:linear-gradient(to top right,transparent calc(50% - 1px),var(--color-danger) calc(50% - 1px),var(--color-danger) calc(50% + 1px),transparent calc(50% + 1px))}.ls-colour-swatch.mixed{background:repeating-conic-gradient(var(--color-border) 0% 25%,var(--color-surface-elevated) 0% 50%) 50% / 10px 10px}.ls-colour-pop{min-width:0;display:grid;grid-template-columns:repeat(5,28px);gap:4px;padding:8px}.ls-colour-pop-portal{position:fixed;left:auto;top:auto;margin-left:0;z-index:1000}.ls-colour-pop-swatch{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:transparent}.ls-colour-pop-swatch:hover{background:var(--color-surface-subtle)}.ls-colour-pop-swatch.active{box-shadow:inset 0 0 0 2px var(--color-selection)}.ls-colour-pop-swatch .ls-colour-swatch{width:18px;height:18px}.ls-flyout{position:absolute;left:100%;top:0;margin-left:4px;min-width:200px;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:8px;padding:6px;z-index:25;box-shadow:var(--shadow-elevated)}.ls-flyout-up{top:auto;bottom:0}.ls-flyout-item{display:flex;align-items:center;gap:8px;width:100%;background:transparent;border:0;color:var(--color-text);padding:6px 8px;border-radius:6px;font-size:12px;text-align:left}.ls-flyout-item:hover:not(:disabled),.ls-flyout-item.active{background:var(--color-surface-subtle)}.ls-flyout-item.active{color:var(--color-selection);background:var(--color-selection-soft)}.ls-flyout-item:disabled{opacity:.45;cursor:not-allowed}.ls-flyout-item svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;flex:none}.ls-section-toggle{display:flex;width:100%;justify-content:space-between;align-items:center;background:transparent;border:0;color:var(--color-text-muted);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:0;min-width:0}.ls-section-head{display:flex;align-items:center;gap:6px;padding:0 0 6px;min-width:0}.ls-section-head .ls-section-toggle{flex:1;padding:0}.ls-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px;min-width:0;margin-bottom:0}.ls-pair .ls-field{grid-template-columns:40px minmax(0,1fr);gap:4px;min-width:0;margin-bottom:0}.ls-dim-row{display:grid;grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr);gap:2px;align-items:center;min-width:0;margin-bottom:0}.ls-dim-row .ls-field{margin-bottom:0}.ls-dim-lock{display:grid;place-items:center;padding-bottom:0}.ls-dim-lock .ls-icon-toggle{width:22px;height:22px}.ls-numwrap{display:flex;align-items:center;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:5px;min-width:0;width:100%;max-width:140px;min-height:26px;box-sizing:border-box}.ls-numwrap:focus-within{border-color:var(--color-selection);box-shadow:0 0 0 2px var(--color-selection-soft)}.ls-numwrap input{border:0;background:transparent;flex:1;min-width:0;padding:2px 4px;width:auto;min-height:24px}.ls-numwrap input:focus{box-shadow:none;outline:none}.ls-unit{font-size:10px;color:var(--color-text-muted);padding-right:4px;text-transform:lowercase;flex:none}.ls-stepper{display:flex;flex-direction:column;flex:none;align-self:stretch;border-left:1px solid var(--color-border);width:16px}.ls-step{flex:1;display:grid;place-items:center;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--color-text-muted);line-height:0;min-height:0;touch-action:none;user-select:none;-webkit-user-select:none}.ls-step:first-child{border-top-right-radius:4px}.ls-step:last-child{border-bottom-right-radius:4px;border-top:1px solid var(--color-border)}.ls-step:hover:not(:disabled){background:var(--color-surface-subtle);color:var(--color-text)}.ls-step:active:not(:disabled){background:var(--color-selection-soft);color:var(--color-primary)}.ls-step:disabled{opacity:.4}.ls-type-pill{font-size:12px;color:var(--color-text);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:6px;padding:5px 8px;min-width:0;overflow:hidden;text-overflow:ellipsis}.ls-color-field{align-items:start;grid-template-columns:1fr}.ls-color-ctrl{display:flex;gap:6px;align-items:center;min-width:0}.ls-color-hex{flex:1 1 64px;min-width:0;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:6px;padding:5px 7px;font-size:12px}.ls-swatch-row{display:flex;flex-wrap:wrap;gap:4px;min-width:0}.ls-chip{flex:none}.ls-empty,.ls-meta{color:var(--color-text-muted);font-size:12px;margin:0 0 6px;line-height:1.4;word-break:break-word}.ls-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px}.ls-more{margin-top:8px;font-size:12px}.ls-more summary{cursor:pointer;color:var(--color-text-muted);margin-bottom:8px}.ls-props{width:100%;max-width:100%;overflow-x:hidden}.ls-props .ls-section,.ls-props-section{padding:4px 8px}.ls-props .ls-section-toggle{font-size:10px;letter-spacing:.06em;padding:2px 0;min-height:22px}.ls-props .ls-field{grid-template-columns:72px minmax(0,1fr);margin-bottom:3px}.ls-props .ls-pair .ls-field{grid-template-columns:auto minmax(0,1fr);gap:4px}.ls-props .ls-dim-row .ls-field{grid-template-columns:20px minmax(0,1fr);gap:4px}.ls-props .ls-dim-row .ls-numwrap{max-width:none;width:100%}.ls-props .ls-numwrap{max-width:120px;justify-self:start}.ls-props .ls-field>input,.ls-props .ls-field>select{max-width:160px;justify-self:start}.ls-obj-header{border-bottom:1px solid var(--color-border);padding:6px 8px;min-width:0}.ls-obj-header-main{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:6px;align-items:start;min-width:0}.ls-obj-kind-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:5px;background:var(--color-surface-elevated);border:1px solid var(--color-border);color:var(--color-text-muted)}.ls-obj-kind-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5}.ls-obj-header-text{min-width:0}.ls-obj-name,.ls-obj-name-static{display:block;width:100%;text-align:left;background:transparent;border:0;padding:0;margin:0;font-size:13px;font-weight:600;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ls-obj-name:hover:not(:disabled){color:var(--color-selection)}.ls-obj-name-input{width:100%;min-width:0;font-size:13px;font-weight:600;padding:2px 6px;border-radius:4px;border:1px solid var(--color-selection);background:var(--color-surface-elevated)}.ls-obj-type{font-size:11px;color:var(--color-text-muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ls-obj-header-actions{display:flex;gap:2px;align-items:center;flex:none}.ls-icon-toggle{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--color-text-muted)}.ls-icon-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5}.ls-icon-toggle:hover:not(:disabled){background:var(--color-surface-elevated);color:var(--color-text)}.ls-icon-toggle[aria-pressed=true]{color:var(--color-selection)}.ls-icon-toggle:disabled{opacity:.45}.ls-obj-more{position:relative}.ls-props-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:8;min-width:168px;padding:4px;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-elevated)}.ls-appear{display:flex;flex-direction:column;gap:2px;min-width:0;margin-top:8px;padding-top:8px;border-top:1px solid var(--color-border)}.ls-hint-inline{margin:4px 0 0;color:var(--color-text-muted);font-size:11px;line-height:1.35}.ls-link-btn{border:0;padding:0;background:transparent;color:var(--color-selection);font:inherit;text-decoration:underline;cursor:pointer}.ls-appear-row{display:grid;grid-template-columns:40px 14px minmax(0,1fr) 12px;gap:6px;align-items:center;width:100%;min-width:0;text-align:left;background:transparent;border:1px solid transparent;border-radius:5px;padding:3px 2px;color:var(--color-text);font-size:12px}.ls-appear-row:hover:not(:disabled),.ls-appear-row.open{background:var(--color-surface-elevated);border-color:var(--color-border)}.ls-appear-label{color:var(--color-text-muted);font-size:11px}.ls-appear-swatch{width:14px;height:14px;border-radius:3px;border:1px solid var(--color-border);flex:none;background-image:linear-gradient(45deg,var(--color-border-strong) 25%,transparent 25%),linear-gradient(-45deg,var(--color-border-strong) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--color-border-strong) 75%),linear-gradient(-45deg,transparent 75%,var(--color-border-strong) 75%);background-size:6px 6px;background-position:0 0,0 3px,3px -3px,-3px 0}.ls-appear-summary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.ls-appear-caret{color:var(--color-text-muted);font-size:10px}.ls-appear-panel{padding:4px 2px 8px;min-width:0}.ls-color-swatch{width:28px;height:28px;border:1px solid var(--color-border);border-radius:6px;overflow:hidden;position:relative;flex:none;background-image:linear-gradient(45deg,var(--color-border-strong) 25%,transparent 25%),linear-gradient(-45deg,var(--color-border-strong) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--color-border-strong) 75%),linear-gradient(-45deg,transparent 75%,var(--color-border-strong) 75%);background-size:8px 8px;background-position:0 0,0 4px,4px -4px,-4px 0}.ls-color-swatch input{opacity:0;position:absolute;inset:0;width:100%;height:100%;cursor:pointer}.ls-swatch.selected,.ls-chip.selected{box-shadow:0 0 0 2px var(--color-selection)}.ls-seg{display:flex;gap:4px;margin-bottom:12px}.ls-seg button{flex:1;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:8px;padding:6px 10px}.ls-seg button:hover:not(.active){background:color-mix(in srgb,var(--color-text) 6%,var(--color-surface-elevated))}.ls-seg button.active{background:var(--color-selection);color:var(--color-primary-contrast);border-color:transparent}.ls-status-item{white-space:nowrap}.ls-status-xy{flex:none}.ls-status-credit{flex:none;white-space:nowrap;font-size:11px;color:var(--color-text-muted);opacity:.85}.ls-overlays{position:fixed;inset:0;z-index:30;pointer-events:none}.ls-overlays>.ls-context,.ls-overlays>.ls-dialog-back{pointer-events:auto}.ls-status .ls-hint{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ls-layers{overflow-x:hidden;overflow-y:auto;flex:1;min-height:120px;min-width:0}.ls-layer input,.ls-obj span{min-width:0;overflow:hidden;text-overflow:ellipsis}button:disabled{color:var(--color-text-disabled);cursor:default}.ls-btn:disabled{opacity:.55}.ls-symbols-panel{position:fixed;width:min(355px,calc(100vw - 16px));max-height:min(640px,calc(100vh - 16px));display:flex;flex-direction:column;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:10px;box-shadow:var(--shadow-elevated);z-index:18;color:var(--color-text);overflow:hidden}.ls-symbols-head{display:flex;align-items:center;justify-content:space-between;padding:12px 12px 8px;flex:none}.ls-symbols-title{margin:0;font-size:15px;font-weight:650}.ls-symbols-close{width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--color-text-muted);font-size:20px;line-height:1;display:grid;place-items:center}.ls-symbols-close:hover{background:var(--color-surface-subtle);color:var(--color-text)}.ls-symbols-search-wrap{position:relative;margin:0 12px 8px;flex:none}.ls-symbols-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);font-size:14px;pointer-events:none}.ls-symbols-search{width:100%;box-sizing:border-box;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-text);padding:8px 10px 8px 28px;font-size:13px}.ls-symbols-search:focus{outline:none;border-color:var(--color-selection);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-selection) 28%,transparent)}.ls-symbols-nav{display:flex;align-items:center;gap:4px;padding:0 10px 8px;flex:none;min-width:0}.ls-symbols-nav-btn{flex:none;border:0;border-radius:6px;background:transparent;color:var(--color-text);padding:5px 8px;font-size:12px;white-space:nowrap}.ls-symbols-nav-btn:hover{background:var(--color-surface-subtle)}.ls-symbols-nav-btn.active{background:var(--color-selection-soft);color:var(--color-selection);font-weight:600}.ls-symbols-nav-icon{width:32px;height:32px;padding:0;display:grid;place-items:center}.ls-symbols-nav-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ls-symbols-cat-nav{width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--color-text-muted);font-size:18px;line-height:1;flex:none}.ls-symbols-cat-nav:hover{background:var(--color-surface-subtle);color:var(--color-text)}.ls-symbols-combo{position:relative;flex:1 1 auto;min-width:0}.ls-symbols-combo-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:6px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-text);padding:6px 8px;font-size:12px;text-align:left}.ls-symbols-combo-btn:hover{background:var(--color-surface-subtle)}.ls-symbols-combo-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ls-symbols-combo-list{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:5;margin:0;padding:4px;list-style:none;max-height:240px;overflow:auto;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-elevated)}.ls-symbols-combo-item{width:100%;border:0;border-radius:6px;background:transparent;color:var(--color-text);padding:7px 8px;font-size:12px;text-align:left}.ls-symbols-combo-item:hover,.ls-symbols-combo-item.active{background:var(--color-selection-soft);color:var(--color-selection)}.ls-symbols-meta{display:flex;justify-content:space-between;padding:6px 14px 8px;border-top:1px solid var(--color-border);font-size:11px;color:var(--color-text-muted);flex:none}.ls-symbols-grid-wrap{flex:1 1 auto;min-height:160px;overflow:auto;padding:0 10px 8px;position:relative}.ls-symbols-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}@media(max-width:720px){.ls-symbols-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.ls-symbols-cell{position:relative;aspect-ratio:1}.ls-symbols-item{width:100%;height:100%;border:1px solid transparent;border-radius:8px;background:var(--color-surface-subtle);color:var(--color-text);padding:8px;display:grid;place-items:center}.ls-symbols-item:hover{border-color:var(--color-border);background:color-mix(in srgb,var(--color-selection-soft) 55%,var(--color-surface-subtle))}.ls-symbols-item:focus-visible{outline:2px solid var(--color-selection);outline-offset:1px}.ls-symbols-cell.just-added .ls-symbols-item{box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--color-selection) 55%,transparent)}.ls-symbols-cell.pending .ls-symbols-item{border-color:var(--color-selection);background:var(--color-selection-soft)}.ls-symbols-item svg{width:100%;height:100%}.ls-symbols-stroke-svg{fill:none;stroke:currentColor;overflow:visible}.ls-symbols-item-ph{width:40%;height:40%;border-radius:4px;background:color-mix(in srgb,var(--color-text) 12%,transparent)}.ls-symbols-fav{position:absolute;top:2px;right:2px;width:22px;height:22px;border:0;border-radius:6px;background:color-mix(in srgb,var(--color-surface) 85%,transparent);color:var(--color-text-muted);font-size:12px;line-height:1;opacity:0;display:grid;place-items:center}.ls-symbols-fav svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ls-symbols-fav.on svg{fill:currentColor}.ls-symbols-cell:hover .ls-symbols-fav,.ls-symbols-cell:focus-within .ls-symbols-fav,.ls-symbols-fav.on,.ls-symbols-fav:focus-visible{opacity:1}.ls-symbols-fav.on{color:var(--color-selection)}.ls-symbols-fav:hover,.ls-symbols-fav:focus-visible{background:var(--color-surface);color:var(--color-selection)}@media(hover:none){.ls-symbols-fav{opacity:1}}.ls-symbols-status{padding:16px 8px;text-align:center;font-size:12px;color:var(--color-text-muted)}.ls-symbols-status.error{color:var(--color-selection)}.ls-symbols-retry{border:0;background:transparent;color:inherit;font:inherit;font-weight:650;cursor:pointer;text-decoration:underline;padding:0}.ls-symbols-retry{border:0;background:transparent;color:var(--color-selection);font:inherit;font-weight:650;cursor:pointer;text-decoration:underline;padding:0}.ls-symbols-status.subtle{position:sticky;top:0;z-index:1;padding:4px;background:color-mix(in srgb,var(--color-surface-elevated) 88%,transparent)}.ls-symbols-sentinel{height:1px}.ls-symbols-foot{margin:0;padding:8px 14px 12px;border-top:1px solid var(--color-border);font-size:11px;color:var(--color-text-muted);flex:none}.ls-boot{padding:24px;font-family:var(--font);color:var(--color-text-muted)}html.ls-capture .ls-ad-slot,html.ls-capture .ls-kofi,html.ls-capture .ls-status-credit,html.ls-capture .ls-footer-links{visibility:hidden!important}.ls-overlays>.ls-dialog-back.ls-box-gen-back{pointer-events:auto;place-items:stretch;padding:0;background:color-mix(in srgb,var(--color-text) 45%,transparent)}.ls-box-gen{display:flex;flex-direction:column;height:100vh;max-height:100vh;background:var(--color-bg);color:var(--color-text);font-family:var(--font)}.ls-box-gen-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--color-border);background:var(--color-surface);flex:none}.ls-box-gen-bar h2{margin:0 8px 0 0;font-size:15px}.ls-box-gen-tabs{display:flex;gap:4px}.ls-box-gen-spacer{flex:1}.ls-box-gen-body{display:grid;grid-template-columns:minmax(240px,280px) minmax(0,1fr) minmax(240px,300px);min-height:0;flex:1}.ls-box-gen-col{min-height:0;overflow:auto;padding:12px 14px 20px;border-inline-end:1px solid var(--color-border)}.ls-box-gen-side{border-inline-end:0;border-inline-start:1px solid var(--color-border)}.ls-box-gen-col h3{margin:0 0 8px;font-size:13px}.ls-box-gen-center{min-width:0;min-height:0;display:flex;flex-direction:column;padding:8px 10px 12px}.ls-box-gen-3d{flex:1;min-height:220px;background:#fff;border:1px solid var(--color-border);border-radius:8px;touch-action:none}.ls-box-gen-3d canvas{width:100%;height:100%;display:block}.ls-box-gen-note{font-size:12px;color:var(--color-text-muted);line-height:1.4;margin:0 0 10px}.ls-box-gen-err{color:var(--color-danger);font-size:12px;margin:0 0 8px}.ls-box-gen-warn{color:var(--color-text);font-size:12px;margin:0 0 8px;background:color-mix(in srgb,var(--color-primary) 14%,var(--color-surface));padding:8px;border-radius:8px}.ls-box-gen-fieldset{border:1px solid var(--color-border);border-radius:8px;margin:10px 0;padding:8px 10px}.ls-box-gen-dl{margin:0 0 12px}.ls-box-gen-dl div{display:flex;justify-content:space-between;gap:8px;font-size:12px;margin:0 0 4px}.ls-box-gen-dl dt{color:var(--color-text-muted)}.ls-box-gen-dl dd{margin:0;font-weight:600}.ls-box-gen-explode{display:flex;align-items:center;gap:8px;font-size:12px;margin:8px 0}.ls-box-gen-explode input{flex:1}.ls-box-gen-flat-wrap{display:flex;flex-direction:column;gap:6px}.ls-box-gen-sheet-nav{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:600}.ls-box-gen-flat{width:100%;height:auto;max-height:280px;background:#fff;border:1px solid var(--color-border);border-radius:8px}.ls-box-gen-board{fill:none;stroke:#8a8490;stroke-opacity:.4;stroke-dasharray:4 3}.ls-box-gen-panel{stroke-width:.35;fill-rule:evenodd}.ls-box-gen-panel:hover{stroke:#f4774d;stroke-width:.7}.ls-box-gen-label{fill:#00f;font-size:4px;font-weight:600;text-anchor:middle;dominant-baseline:middle;pointer-events:none}@media(max-width:1100px){.ls-box-gen-body{grid-template-columns:1fr 1fr;grid-template-rows:minmax(240px,1fr) auto}.ls-box-gen-center{grid-column:1 / -1;grid-row:1}}.ls-trace .ls-box-gen-bar{gap:6px}.ls-trace-settings-toggle{display:none}.ls-trace-help{position:relative}.ls-trace-help-panel{position:absolute;top:calc(100% + 6px);inset-inline-end:0;z-index:8;width:min(320px,72vw);padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-elevated);box-shadow:var(--shadow-elevated);color:var(--color-text);font-size:12px;line-height:1.45}.ls-trace-help-panel p{margin:0 0 8px}.ls-trace-help-panel p:last-child{margin:0}.ls-trace-body{display:grid;grid-template-columns:312px minmax(0,1fr);min-height:0;min-width:0;flex:1;overflow:hidden}.ls-trace-settings{display:flex;flex-direction:column;min-height:0;min-width:0;border-inline-end:1px solid var(--color-border);background:var(--color-surface)}.ls-trace-settings-scroll{flex:1;min-height:0;overflow:auto;padding:10px 12px 12px}.ls-trace-settings-foot{flex:none;padding:10px 12px 12px;border-top:1px solid var(--color-border);background:var(--color-surface)}.ls-trace-run{width:100%}.ls-trace-source{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;align-items:center;margin:0 0 12px;padding:6px;border:1px dashed var(--color-border);border-radius:8px;background:var(--color-bg)}.ls-trace-source.is-empty{grid-template-columns:1fr}.ls-trace-source img{width:44px;height:44px;object-fit:contain;background:#fff;border-radius:6px;border:1px solid var(--color-border)}.ls-trace-source-empty{width:100%;border:0;background:transparent;color:var(--color-text);font:inherit;font-size:12px;text-align:start;cursor:pointer;padding:8px 4px}.ls-trace-source-meta{min-width:0;display:flex;flex-direction:column;gap:6px}.ls-trace-filename{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600}.ls-trace-source-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ls-trace-text-action{border:0;background:transparent;padding:4px 2px;text-decoration:underline;color:var(--color-text)}.ls-trace-text-action:hover:not(:disabled){background:transparent}.ls-trace-group{margin:0 0 12px;padding-top:10px;border-top:1px solid var(--color-border)}.ls-trace-group h3{margin:0 0 8px;font-size:12px;font-weight:650}.ls-trace-ops{border:0;margin:0 0 8px;padding:0;min-width:0}.ls-trace-ops legend{font-size:12px;font-weight:650;padding:0;margin:0 0 6px}.ls-trace-op{display:grid;grid-template-columns:16px 40px minmax(0,1fr);gap:8px;align-items:center;margin:0 0 6px;padding:6px 8px;border:1px solid var(--color-border);border-radius:8px;cursor:pointer}.ls-trace-op:focus-within{outline:2px solid var(--color-primary);outline-offset:1px}.ls-trace-op.is-on{background:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface));border-color:color-mix(in srgb,var(--color-primary) 55%,var(--color-border))}.ls-trace-op strong{display:block;font-size:13px}.ls-trace-op small{display:block;color:color-mix(in srgb,var(--color-text) 72%,var(--color-text-muted));font-size:11px;line-height:1.35}.ls-trace-glyph{width:40px;height:28px;display:block;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linejoin:round}.ls-trace-glyph.is-fill{stroke:none}.ls-trace-advanced{margin:8px 0 0;font-size:12px;padding-top:8px;border-top:1px solid var(--color-border)}.ls-trace-advanced summary{cursor:pointer;font-weight:650;margin-bottom:8px}.ls-trace-preview{min-width:0;min-height:0;display:flex;flex-direction:column;padding:8px 10px 12px;overflow:hidden}.ls-trace-stage-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:6px}.ls-trace-seg{display:inline-flex;border:1px solid var(--color-border);border-radius:8px;overflow:hidden;background:var(--color-surface)}.ls-trace-seg button{border:0;background:transparent;color:inherit;font:inherit;font-size:12px;padding:6px 10px;cursor:pointer}.ls-trace-seg button+button{border-inline-start:1px solid var(--color-border)}.ls-trace-seg button.is-on{background:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface))}.ls-trace-seg button:disabled{opacity:.45;cursor:default}.ls-trace-zoom{display:flex;align-items:center;gap:4px}.ls-trace-zoom .ls-icon-toggle.is-on,.ls-trace-zoom .ls-icon-toggle[aria-pressed=true]{color:var(--color-primary)}.ls-trace-viewport{position:relative;flex:1;min-height:220px;min-width:0;overflow:auto;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:8px;background:#fff}.ls-trace-viewport.is-check{background-color:#fff;background-image:linear-gradient(45deg,rgba(0,0,0,.035) 25%,transparent 25%),linear-gradient(-45deg,rgba(0,0,0,.035) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(0,0,0,.035) 75%),linear-gradient(-45deg,transparent 75%,rgba(0,0,0,.035) 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0}.ls-trace-empty,.ls-trace-spinner{position:absolute;inset:0;display:grid;place-items:center;color:color-mix(in srgb,var(--color-text) 70%,var(--color-text-muted));font-size:13px}.ls-trace-art{position:relative;flex:none;margin:12px}.ls-trace-original,.ls-trace-svg,.ls-trace-svg svg{position:absolute;inset:0;width:100%;height:100%;display:block}.ls-trace-original{object-fit:fill;pointer-events:none}.ls-trace-svg.is-fill.is-overlay svg{opacity:.72}.ls-trace-svg.is-laser svg path{fill:none!important;stroke-width:1.5px!important;vector-effect:non-scaling-stroke}.ls-trace-svg.is-laser.is-mark svg path{stroke-width:2px!important;stroke-linecap:round;stroke-linejoin:round}.ls-trace-palette{display:flex;flex-wrap:wrap;gap:6px;margin:0}.ls-trace-swatch{position:relative;width:22px;height:22px;border-radius:4px;border:2px solid var(--color-border);padding:0;cursor:pointer}.ls-trace-swatch.is-on{border-color:var(--color-primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-primary) 40%,transparent)}.ls-trace-swatch-check{position:absolute;inset:0;display:grid;place-items:center;font-size:11px;font-weight:800;color:#111;text-shadow:0 0 2px #fff,0 0 2px #fff}.ls-trace .ls-box-gen-note{color:color-mix(in srgb,var(--color-text) 68%,var(--color-text-muted))}.ls-trace .ls-dim-row .ls-field{grid-template-columns:44px minmax(0,1fr)}.ls-trace .ls-numwrap{max-width:none}@media(max-width:900px){.ls-trace-settings-toggle{display:inline-block}.ls-trace-body{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.ls-trace-settings{max-height:46vh;border-inline-end:0;border-bottom:1px solid var(--color-border)}.ls-trace-body.is-settings-collapsed .ls-trace-settings{display:none}.ls-trace-preview{min-height:280px}}
