:root{--bg:#12141a;--bg-panel:#1a1d26;--bg-canvas:#2a2e3a;--border:#2e323d;--text:#c7ccd8;--text-dim:#a4adbe;--text-strong:#f0f2f6;--accent:#4f9cf9;--ok:#3ecf8e;--warn:#f2b544;--err:#f2685c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:calc(14px * var(--ui-scale,1))}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text)}.app{flex-direction:column;height:100%;display:flex}.workspace{flex:auto;min-width:0;min-height:0;display:flex;position:relative}.workspace>.layers{flex:none}.workspace>.dropzone{flex:auto;min-width:0}.toolbar{background:var(--bg-panel);border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:8px 14px;display:flex}.toolbar-title{color:var(--text-strong);letter-spacing:.01em;font-weight:600}.toolbar-divider{background:var(--border);align-self:stretch;width:1px;margin:0 4px}.toolbar-spacer{flex:1}.btn{border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;background:#222633;border-radius:6px;padding:6px 12px}.btn:hover:not(:disabled){border-color:var(--accent);color:var(--text-strong)}.btn:disabled{opacity:.4;cursor:default}.segmented{border:1px solid var(--border);border-radius:6px;display:flex;overflow:hidden}.segmented-option{color:var(--text-dim);font:inherit;cursor:pointer;background:#222633;border:0;padding:6px 14px}.segmented-option+.segmented-option{border-left:1px solid var(--border)}.segmented-option.is-active{background:var(--accent);color:#08111d;font-weight:600}.segmented-option:disabled{opacity:.4;cursor:default}.engine-badge{border:1px solid var(--border);color:var(--text-dim);font-size:calc(12px * var(--ui-scale,1));border-radius:999px;padding:4px 10px}.dropzone{background:var(--bg-canvas);min-height:0;position:relative}.viewer-canvas{touch-action:none;outline:none;width:100%;height:100%;display:block}.dropzone-overlay{border:2px dashed var(--accent);color:var(--text-strong);font-size:calc(18px * var(--ui-scale,1));pointer-events:none;background:#12141adb;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;inset:12px}.dropzone-hint{color:var(--text-dim);font-size:calc(13px * var(--ui-scale,1));letter-spacing:.04em;margin:0}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:24px;display:flex}.empty-state h1{color:var(--text-strong);font-size:calc(22px * var(--ui-scale,1));margin:0 0 6px;font-weight:600}.empty-state p{color:var(--text-dim);margin:0 0 20px}.empty-state-formats{color:var(--text-dim);font-size:calc(13px * var(--ui-scale,1));text-align:left;margin:0;padding:0;line-height:1.9;list-style:none}.empty-state-formats strong{color:var(--text);font-family:ui-monospace,Cascadia Code,Consolas,monospace}.cloud-badge{border:1px solid var(--border);color:var(--ok);font:inherit;font-size:calc(12px * var(--ui-scale,1));cursor:pointer;background:0 0;border-radius:999px;padding:4px 10px}.cloud-badge:hover{border-color:var(--ok)}.cloud-overlay{background:#0a0c10b8;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.cloud-panel{border:1px solid var(--border);background:var(--bg-panel);border-radius:10px;flex-direction:column;gap:14px;width:min(380px,100%);padding:22px;display:flex}.cloud-panel h2{color:var(--text-strong);font-size:calc(17px * var(--ui-scale,1));margin:0;font-weight:600}.cloud-note{color:var(--text-dim);font-size:calc(13px * var(--ui-scale,1));margin:0;line-height:1.5}.cloud-note strong{color:var(--text)}.cloud-panel label{color:var(--text-dim);font-size:calc(12px * var(--ui-scale,1));flex-direction:column;gap:5px;display:flex}.cloud-method{align-self:flex-start}.cloud-panel textarea,.cloud-panel input{border:1px solid var(--border);color:var(--text-strong);font:inherit;background:#14171f;border-radius:6px;padding:8px 10px}.cloud-panel textarea{resize:vertical;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:calc(11px * var(--ui-scale,1));overflow-wrap:anywhere}.cloud-panel textarea:focus,.cloud-panel input:focus{border-color:var(--accent);outline:none}.cloud-warn{color:var(--warn);font-size:calc(12px * var(--ui-scale,1));background:#f2b5441f;border-radius:6px;margin:0;padding:8px 10px;line-height:1.45}.cloud-help{color:var(--text-dim);font-size:calc(12px * var(--ui-scale,1))}.cloud-help summary{cursor:pointer}.cloud-help ol{margin:8px 0 0;padding-left:18px;line-height:1.6}.cloud-help code{color:var(--text);font-size:calc(11px * var(--ui-scale,1))}.cloud-error{color:var(--err);font-size:calc(12px * var(--ui-scale,1));background:#f2685c1f;border-radius:6px;margin:0;padding:8px 10px;line-height:1.45}.cloud-actions{justify-content:flex-end;gap:8px;display:flex}.btn-primary{background:var(--accent);border-color:var(--accent);color:#08111d;font-weight:600}.btn-primary:hover:not(:disabled){color:#08111d}.cloud-server{color:var(--text-dim);font-size:calc(11px * var(--ui-scale,1));text-align:center;overflow-wrap:anywhere;margin:0;font-family:ui-monospace,Cascadia Code,Consolas,monospace}.sheet-unit{appearance:none;border:1px solid var(--border);background:var(--bg-input,#080b1280);color:var(--text-dim,#98a2b3);font-size:calc(12px * var(--ui-scale,1));font-variant-numeric:tabular-nums;cursor:pointer;border-radius:6px;padding:5px 9px}.sheet-unit:not([value=""]){color:var(--text-strong);border-color:#4f9cf973}.sheet-unit:hover,.sheet-unit:focus{border-color:var(--accent);outline:none}.param-icon-option{border:1px solid var(--border);width:28px;height:24px;color:var(--text-dim,#98a2b3);cursor:pointer;background:0 0;border-radius:5px;place-items:center;padding:0;display:grid}.param-icon-option:hover{color:var(--text-strong);border-color:var(--accent)}.param-icon-option.is-active{color:var(--text-strong);border-color:var(--accent);background:#4f9cf92e}.status-bar{background:var(--bg-panel);border-top:1px solid var(--border);font-size:calc(13px * var(--ui-scale,1));align-items:center;gap:10px;padding:7px 14px;display:flex}.status-dot{background:var(--text-dim);border-radius:50%;flex:none;width:8px;height:8px}.status-loading .status-dot{background:var(--warn);animation:1s ease-in-out infinite pulse}.status-ready .status-dot{background:var(--ok)}.status-lock{color:var(--text-dim);flex:none;align-items:center;display:inline-flex}.status-locked .status-state{color:var(--text-dim)}.status-error .status-dot{background:var(--err)}@keyframes pulse{50%{opacity:.3}}.status-state{color:var(--text-dim);min-width:56px}.status-error .status-state{color:var(--err)}.status-message{color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.status-progress{background:#262a36;border-radius:7px;flex:none;width:160px;height:14px;margin-left:auto;position:relative;overflow:hidden}.status-progress-fill{background:var(--accent);transition:width .15s linear;position:absolute;inset:0 auto 0 0}.status-progress-text{text-align:center;font-size:calc(11px * var(--ui-scale,1));color:var(--text-strong);line-height:14px;display:block;position:relative}.measure-readout{border:1px solid var(--border);background:#4f9cf914;border-radius:6px;flex-direction:column;gap:3px;padding:10px;display:flex}.measure-label{color:var(--text-dim);font-size:calc(11px * var(--ui-scale,1));letter-spacing:.06em;text-transform:uppercase}.measure-value{color:var(--text-strong);font-size:calc(19px * var(--ui-scale,1));font-family:ui-monospace,Consolas,monospace}.measure-detail{color:var(--text-dim);font-size:calc(11px * var(--ui-scale,1));overflow-wrap:anywhere;font-family:ui-monospace,Consolas,monospace}kbd{border:1px solid var(--border);font-family:inherit;font-size:calc(11px * var(--ui-scale,1));background:#14171f;border-radius:3px;padding:1px 4px}.layers-head h3{color:var(--text-dim);font-size:calc(11px * var(--ui-scale,1));letter-spacing:.08em;text-transform:uppercase;margin:0 0 7px;font-weight:600}.layers{background:var(--bg-panel);border-left:1px solid var(--border);flex-direction:column;gap:8px;width:248px;padding:12px;display:flex;overflow:hidden}.layers-head{justify-content:space-between;align-items:baseline;display:flex}.layers-head h3{margin:0}.layers-close{color:var(--text-dim);cursor:pointer;font-size:calc(13px * var(--ui-scale,1));background:0 0;border:0}.layers-close:hover{color:var(--text-strong)}.layers-filter{border:1px solid var(--border);color:var(--text-strong);font:inherit;font-size:calc(12px * var(--ui-scale,1));background:#14171f;border-radius:5px;padding:6px 8px}.layers-filter:focus{border-color:var(--accent);outline:none}.layers-empty{color:var(--text-dim);font-size:calc(12px * var(--ui-scale,1));margin:0}.layers-list{margin:0;padding:0;list-style:none;overflow-y:auto}.layers-list li{font-size:calc(12px * var(--ui-scale,1));border-bottom:1px solid #2e323d80;align-items:center;gap:6px;padding:4px 0;display:flex}.layers-list li.is-off .layers-name{color:var(--text-dim);text-decoration:line-through}.layers-swatch{border-radius:2px;flex:none;width:10px;height:10px}.layers-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.layers-flag{width:22px;color:var(--text-dim);cursor:pointer;font-size:calc(11px * var(--ui-scale,1));opacity:.45;background:0 0;border:0;border-radius:4px;padding:2px 0}.layers-flag.is-on{color:var(--accent);opacity:1}.layers-flag:hover{background:#222633}.query-results{border:1px solid var(--border);border-radius:6px;flex-direction:column;display:flex;overflow:hidden}.query-results header{color:var(--text-dim);font-size:calc(11px * var(--ui-scale,1));letter-spacing:.06em;text-transform:uppercase;background:#222633;justify-content:space-between;align-items:center;padding:6px 8px;display:flex}.query-results header button{color:var(--text-dim);cursor:pointer;background:0 0;border:0}.query-results header button:hover{color:var(--text-strong)}.query-results ul{max-height:190px;margin:0;padding:0;list-style:none;overflow-y:auto}.query-results li{font-size:calc(12px * var(--ui-scale,1));border-top:1px solid #2e323d80;align-items:baseline;gap:6px;padding:4px 8px;display:flex}.query-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.query-count{color:var(--accent);font-family:ui-monospace,Consolas,monospace;font-size:calc(11px * var(--ui-scale,1))}.query-empty{color:var(--text-dim);justify-content:center}.viewer-stack,.viewer-stack .viewer-canvas{position:absolute;inset:0}.nav-cube{pointer-events:none;z-index:3;flex-direction:column;align-items:center;gap:4px;display:flex;position:absolute;top:12px;right:12px}.nav-cube svg,.nav-cube-face{pointer-events:auto}.nav-cube-extra{flex-wrap:wrap;justify-content:center;max-width:96px}.nav-cube-face polygon{fill:var(--surface,#1e2330);fill-opacity:.82;stroke:var(--text-dim,#8b93a7);stroke-width:1.2px;stroke-linejoin:round}.nav-cube-face text{fill:var(--text-dim,#8b93a7);font-size:calc(11px * var(--ui-scale,1));letter-spacing:.04em;pointer-events:none;font-family:inherit}.nav-cube-face:not(.is-absent){cursor:pointer}.nav-cube-face:not(.is-absent):hover polygon,.nav-cube-face:not(.is-absent):focus-visible polygon{fill-opacity:1;stroke:var(--accent,#4a9eff)}.nav-cube-face:not(.is-absent):hover text{fill:var(--text,#e6e9f0)}.nav-cube-face.is-absent{opacity:.35}.nav-cube-more{pointer-events:auto;gap:3px;display:flex}.nav-cube-chip{font:inherit;font-size:calc(11px * var(--ui-scale,1));border:1px solid var(--border,#2c3444);background:var(--surface,#1e2330);color:var(--text-dim,#8b93a7);cursor:pointer;border-radius:4px;padding:2px 6px}.nav-cube-chip:hover:not(:disabled){color:var(--text,#e6e9f0);border-color:var(--accent,#4a9eff)}.nav-cube-chip:disabled{opacity:.35;cursor:default}.overlay-canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.status-coords{color:var(--text-dim);font-family:ui-monospace,Consolas,monospace;font-size:calc(12px * var(--ui-scale,1));white-space:pre;margin-left:auto}.status-coords+.status-progress{margin-left:10px}.palette-select{border:1px solid var(--border);color:var(--text);font:inherit;font-size:calc(12px * var(--ui-scale,1));background:#222633;border-radius:5px;padding:6px 4px}.palette-select:focus{border-color:var(--accent);outline:none}.anno-icon small{font-size:calc(11px * var(--ui-scale,1))}.anno-icon strong{font-size:calc(14px * var(--ui-scale,1));font-weight:600}.cloud-panel select{border:1px solid var(--border);color:var(--text-strong);font:inherit;background:#14171f;border-radius:6px;width:100%;padding:8px 10px}.cloud-panel select:focus{border-color:var(--accent);outline:none}.input-with-swatch{align-items:center;gap:8px;display:flex}.aci-swatch{border:1px solid var(--border);border-radius:4px;flex:none;width:20px;height:20px}.input-hint{color:var(--text-dim);font-size:calc(11px * var(--ui-scale,1));line-height:1.4}.param-bar{background:var(--bg-panel);border-bottom:1px solid var(--border);align-items:stretch;gap:10px;min-height:52px;padding:0 10px;display:flex}.param-tool{background:var(--accent);color:#08111d;font-size:calc(12px * var(--ui-scale,1));white-space:nowrap;border-radius:999px;flex:none;align-self:center;align-items:center;gap:7px;padding:5px 5px 5px 10px;font-weight:600;display:flex}.param-close{width:20px;height:20px;color:inherit;cursor:pointer;background:#08111d38;border:0;border-radius:50%;place-items:center;display:grid}.param-close:hover{background:#08111d66}.param-scroll{scrollbar-width:thin;flex:1;align-items:stretch;gap:4px;min-width:0;display:flex;overflow:auto hidden}.param-group{border-left:1px solid #2e323db3;flex-direction:column;flex:none;justify-content:center;gap:3px;padding:5px 10px;display:flex}.param-group:first-child{border-left:0}.param-label{color:var(--text-dim);font-size:calc(11px * var(--ui-scale,1));letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;font-weight:600}.param-body{align-items:center;gap:6px;display:flex}.param-note{color:var(--text-dim);font-family:ui-monospace,Consolas,monospace;font-size:calc(11px * var(--ui-scale,1));white-space:nowrap}.param-select,.param-input{border:1px solid var(--border);max-width:190px;color:var(--text);font:inherit;font-size:calc(12px * var(--ui-scale,1));background:#222633;border-radius:5px;padding:4px 6px}.param-select-short,.param-input-short{width:68px}.param-select-tiny{width:38px}.param-select:focus,.param-input:focus{border-color:var(--accent);outline:none}.param-slider{align-items:center;gap:8px;display:flex}.param-slider input[type=range]{width:128px;accent-color:var(--accent)}.param-value{width:42px;color:var(--text-strong);font-family:ui-monospace,Consolas,monospace;font-size:calc(11px * var(--ui-scale,1))}.param-check{color:var(--text);font-size:calc(11px * var(--ui-scale,1));white-space:nowrap;cursor:pointer;align-items:center;gap:5px;display:flex}.param-check input{accent-color:var(--accent)}.param-check:has(input:disabled){opacity:.45;cursor:default}.swatch-row{gap:4px;display:flex}.swatch{cursor:pointer;border:1px solid #ffffff40;border-radius:4px;flex:none;width:20px;height:20px;padding:0}.swatch:hover{border-color:var(--text-strong)}.swatch.is-active{border-color:var(--text-strong);box-shadow:0 0 0 2px var(--accent)}.swatch.is-bylayer{background-image:linear-gradient(135deg, transparent 44%, var(--text-dim) 44%, var(--text-dim) 56%, transparent 56%);border-style:dashed}.pattern-row{gap:5px;display:flex}.pattern-tile{color:var(--text-dim);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;flex-direction:column;flex:none;align-items:center;gap:2px;padding:2px;display:flex}.pattern-tile:hover{color:var(--text-strong)}.pattern-tile.is-active{border-color:var(--accent);color:var(--text-strong)}.pattern-swatch{border:1px solid var(--border);background-color:#0e1118;background-repeat:repeat;border-radius:3px;width:30px;height:20px;display:block}.pattern-name{font-size:calc(11px * var(--ui-scale,1));letter-spacing:.02em}.segmented-compact .segmented-option{font-size:calc(11px * var(--ui-scale,1));padding:3px 7px}.dock{background:var(--bg-panel);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom,0);flex:none}.dock-active{border-bottom:1px solid var(--border);font-size:calc(12px * var(--ui-scale,1));background:#161923;align-items:center;gap:8px;padding:5px 12px;display:flex}.dock-prompt{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);flex:1;overflow:hidden}.dock-result{background:var(--lk-selection,#eef2ff);color:var(--text);font-size:calc(12px * var(--ui-scale,1));white-space:nowrap;border-radius:8px;flex:none;align-items:baseline;gap:6px;padding:2px 10px;display:inline-flex}.dock-result-label{color:var(--text-dim)}.dock-result-value{font-variant-numeric:tabular-nums;font-size:calc(14px * var(--ui-scale,1))}.dock-count{color:var(--text-dim);font-family:ui-monospace,Consolas,monospace;font-size:calc(11px * var(--ui-scale,1));flex:none}.dock-chip{border:1px solid var(--border);color:var(--text);font:inherit;font-size:calc(12px * var(--ui-scale,1));cursor:pointer;background:#222633;border-radius:999px;flex:none;align-items:center;gap:4px;padding:4px 10px;display:flex}.dock-chip:hover{border-color:var(--accent);color:var(--text-strong)}.dock-chip.is-primary{background:var(--accent);border-color:var(--accent);color:#08111d;font-weight:600}.dock-tools{align-items:center;gap:8px;padding:8px 10px;display:flex}.dock-tools-scroll{overscroll-behavior-x:contain;scrollbar-width:none;flex:1;align-items:center;gap:8px;min-width:0;display:flex;overflow-x:auto}.dock-tools-scroll::-webkit-scrollbar{display:none}.dock-btn{border:1px solid var(--border);width:82px;min-height:58px;color:var(--text);cursor:pointer;background:#222633;border-radius:12px;flex:none;place-items:center;padding:7px 5px;transition:background .12s,color .12s,border-color .12s;display:grid}.dock-btn:hover{border-color:var(--accent);color:var(--text-strong)}.dock-collapse{color:var(--text-dim);background:#171a23}.dock-tools.is-collapsed{padding-top:4px;padding-bottom:4px}.dock-sections{border-top:1px solid var(--border);scrollbar-width:none;background:#161923;align-items:stretch;display:flex;overflow-x:auto}.dock-sections::-webkit-scrollbar{display:none}.dock-section{min-width:74px;color:var(--text-dim);font:inherit;font-size:calc(11px * var(--ui-scale,1));cursor:pointer;background:0 0;border:0;border-top:2px solid #0000;flex-direction:column;flex:1 0 auto;justify-content:center;align-items:center;gap:3px;padding:7px 10px;display:flex}.dock-section:hover{color:var(--text)}.dock-section.is-active{border-top-color:var(--accent);color:var(--accent)}.floaters{z-index:4;pointer-events:none;flex-direction:column;gap:10px;width:210px;max-width:calc(100% - 24px);display:flex;position:absolute;top:12px;right:12px}.floaters>*{pointer-events:auto;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1a1d26f0}@media (width<=700px){.toolbar{scrollbar-width:none;gap:6px;padding:6px 8px;overflow-x:auto}.toolbar-title{display:none}.param-group{padding:5px 8px}.param-slider input[type=range]{width:96px}.dock-section{min-width:64px;font-size:calc(11px * var(--ui-scale,1))}.floaters{width:170px}}.btn-icon{place-items:center;width:32px;height:30px;padding:0;display:grid}.segmented-option:has(.icon){place-items:center;width:34px;padding:5px 0;display:grid}.toolbar-export{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#222633;border-radius:5px;align-items:center;gap:5px;padding:0 8px 0 7px;display:flex}.toolbar-export:hover{border-color:var(--accent);color:var(--text-strong)}.toolbar-export select{color:inherit;font:inherit;font-size:calc(12px * var(--ui-scale,1));cursor:pointer;background:0 0;border:0;padding:5px 0}.toolbar-export select:focus{outline:none}.icon{flex:none;display:block}.param-idle{color:var(--text-dim);font-size:calc(12px * var(--ui-scale,1));align-self:center}.entity-facts{grid-template-columns:auto 1fr;gap:2px 10px;margin:4px 0 2px;display:grid}.entity-facts dt{color:var(--text-dim);font-size:calc(11px * var(--ui-scale,1))}.entity-facts dd{text-align:right;color:var(--text-strong);font-family:ui-monospace,Consolas,monospace;font-size:calc(12px * var(--ui-scale,1));font-variant-numeric:tabular-nums;margin:0}.scale-options{flex-direction:column;gap:6px;max-height:320px;margin:4px 0 0;padding:0;list-style:none;display:flex;overflow-y:auto}.scale-option{border:1px solid var(--border);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:#222633;border-radius:6px;flex-direction:column;gap:3px;padding:9px 11px;display:flex}.scale-option:hover{border-color:var(--accent);background:#262b3a}.scale-label{color:var(--text-strong);font-weight:600;font-size:calc(13px * var(--ui-scale,1))}.scale-hint{color:var(--text-dim);font-size:calc(11px * var(--ui-scale,1));line-height:1.4}.viewer-stack.cursor-armed .viewer-canvas{cursor:crosshair}.viewer-stack.cursor-snapped .viewer-canvas{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28'><g fill='none' stroke='%233ecf8e' stroke-width='2'><rect x='8' y='8' width='12' height='12'/><path d='M14 0v5M14 23v5M0 14h5M23 14h5'/></g></svg>") 14 14,crosshair}.crash{border:1px solid var(--err);background:var(--bg-panel);border-radius:10px;flex-direction:column;align-items:flex-start;gap:12px;max-width:640px;margin:12vh auto;padding:24px;display:flex}.crash h1{color:var(--text-strong);font-size:calc(20px * var(--ui-scale,1));margin:0}.crash p{color:var(--text);margin:0;line-height:1.5}.crash-message{width:100%;color:var(--err);font-family:ui-monospace,Consolas,monospace;font-size:calc(12px * var(--ui-scale,1));white-space:pre-wrap;background:#14171f;border-radius:6px;margin:0;padding:12px;overflow-x:auto}.crash-actions{gap:8px;display:flex}.crash-hint{color:var(--text-dim);font-size:calc(12px * var(--ui-scale,1))}.param-value-wide{width:62px}.param-slider .param-input-short{width:74px}.unit-switch{border:1px solid var(--border);color:var(--text);font:inherit;font-size:calc(12px * var(--ui-scale,1));cursor:pointer;background:#222633;border-radius:999px;align-items:center;gap:8px;padding:4px 8px 4px 10px;display:flex}.unit-switch:hover{border-color:var(--accent);color:var(--text-strong)}.unit-switch-label{text-align:left;letter-spacing:.01em;min-width:52px;font-weight:600}.unit-switch-track{background:var(--border);border-radius:999px;flex:none;width:30px;height:16px;transition:background .15s;position:relative}.unit-switch-knob{background:var(--text-strong);border-radius:50%;width:12px;height:12px;transition:transform .15s;position:absolute;top:2px;left:2px}.unit-switch.is-metric .unit-switch-track{background:var(--accent)}.unit-switch.is-imperial .unit-switch-knob{transform:translate(14px)}.unit-switch.is-imperial .unit-switch-track{background:var(--warn)}@media (prefers-reduced-motion:reduce){.unit-switch-track,.unit-switch-knob{transition:none}}@media (width<=700px){.unit-switch-label{display:none}}.inline-field{z-index:6;border:1px solid var(--accent);background:#12141af5;border-radius:6px;align-items:center;gap:8px;padding:6px 10px;display:flex;position:absolute;transform:translate(10px,-50%);box-shadow:0 6px 20px #00000073}.inline-field-label{font-size:calc(11px * var(--ui-scale,1));letter-spacing:.02em;color:var(--text-dim,#98a2b3);white-space:nowrap}.inline-field-input{width:72px;color:var(--text-strong);font:inherit;font-size:calc(14px * var(--ui-scale,1));background:#080b12b3;border:1px solid #ffffff24;border-radius:4px;padding:3px 6px}.inline-field-input:focus{border-color:var(--accent);outline:none}.inline-text{z-index:6;border:0;border-bottom:1px solid var(--accent);text-shadow:0 0 3px #080b12e6,0 0 1px #080b12e6;background:0 0;border-radius:0;padding:0;position:absolute}.inline-text:focus{border-bottom-color:var(--accent);outline:none}:root .zoom-window-frame{z-index:10000;pointer-events:none;box-sizing:border-box;background:#087ad11f;border:2px solid #087ad1;position:fixed}.app{height:100dvh;overflow:hidden}.toolbar-title{letter-spacing:.09em;color:#f5f8ff}.toolbar-title small{font-size:calc(11px * var(--ui-scale,1));letter-spacing:.02em;color:var(--text-dim);font-weight:400}.toolbar{min-height:58px;padding-inline:max(12px, env(safe-area-inset-left))}.btn,.toolbar select{min-height:44px}.dock-tool-label{font-size:calc(11px * var(--ui-scale,1));text-align:center;max-width:76px;line-height:1.15}.dock-collapse{width:44px}button:focus-visible,select:focus-visible,input:focus-visible,canvas:focus-visible{outline:3px solid var(--lk-focus);outline-offset:3px}.empty-state{background:radial-gradient(at 50% 30%,#24364c,#151e2b 70%);padding:28px;overflow:auto}.welcome-eyebrow{font-size:calc(12px * var(--ui-scale,1));letter-spacing:.2em;color:#91bfff}.empty-state h1{letter-spacing:-.04em;margin:18px 0 12px;font-size:clamp(26px,4vw,44px)}.welcome-open{color:#102139;min-height:50px;font-size:calc(16px * var(--ui-scale,1));cursor:pointer;background:#75b5ff;border:0;border-radius:12px;margin-top:20px;padding:0 28px;font-weight:650}.welcome-drop{font-size:calc(12px * var(--ui-scale,1))}.empty-state-formats{flex-wrap:wrap;justify-content:center;gap:14px;padding:0;display:flex}.empty-state-formats li{width:210px;font-size:calc(12px * var(--ui-scale,1));border:1px solid #394b61;border-radius:12px;padding:18px;line-height:1.7;list-style:none}.empty-state-formats strong{color:#eef5ff;font-size:calc(14px * var(--ui-scale,1));display:block}@media (width<=640px){.toolbar{flex-wrap:nowrap;gap:6px;overflow-x:auto}.toolbar-title{font-size:calc(14px * var(--ui-scale,1));flex:none}.toolbar-title small,.cloud-badge,.engine-badge,.toolbar-spacer{display:none}.dock-btn{width:74px}.dock-section{min-width:56px;min-height:52px}.dock-sections{justify-content:flex-start;overflow-x:auto}.empty-state{padding:20px 16px}.empty-state-formats{gap:8px}.empty-state-formats li{text-align:left;width:100%;padding:10px 16px}.welcome-drop{margin:10px}}@media (height<=500px) and (orientation:landscape){.dock-btn{min-height:44px}.dock-section{min-height:38px}.toolbar{min-height:48px}.empty-state-formats{display:none}}.conversion-login{background:var(--bg-panel);border-bottom:1px solid var(--border);padding:12px 20px}.conversion-login summary{cursor:pointer;min-height:32px;font-weight:600}.conversion-login p{max-width:70ch;color:var(--text-dim)}.conversion-login form{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.conversion-login label{gap:6px;display:grid}.conversion-progress{background:#223851;justify-content:space-between;align-items:center;gap:16px;padding:8px 16px;display:flex}.conversion-progress button{cursor:pointer;border-radius:8px;min-height:44px;padding:8px 16px}.ifc-inspector{background:var(--bg-panel);border-left:1px solid var(--border);flex:0 0 330px;width:330px;padding:14px;overflow:auto}.ifc-inspector header{background:var(--bg-panel);z-index:1;justify-content:space-between;align-items:center;gap:8px;padding-block:8px;display:flex;position:sticky;top:-14px}.inspector-tabs{gap:6px;margin-top:8px;display:flex}.inspector-tabs button[aria-pressed=true]{border-color:var(--accent);background:#284c78}.ifc-inspector button{min-height:44px;color:var(--text-strong);border:1px solid var(--border);background:var(--bg);cursor:pointer;border-radius:6px;padding:6px 10px}.ifc-inspector p{color:var(--text-dim);font-size:calc(12px * var(--ui-scale,1))}.ifc-inspector summary{cursor:pointer;padding:12px 0;font-weight:600}.ifc-inspector dl{font-size:calc(12px * var(--ui-scale,1));overflow-wrap:anywhere}.ifc-inspector dt{color:var(--text-dim);margin-top:8px}.ifc-inspector dd{color:var(--text-strong);margin:4px 0 10px}.ifc-inspector ul{padding-left:10px;list-style:none}.tree-row{gap:4px;margin-block:4px;display:flex}.tree-row button:last-child{text-align:left;overflow-wrap:anywhere;flex:1}.tree-indent{flex:0 0 28px}@media (width<=720px){.ifc-inspector{z-index:15;width:min(90vw,340px);position:absolute;top:0;bottom:0;right:0;box-shadow:-10px 0 30px #0005}}.conversion-login input,.conversion-login button{border:1px solid var(--border);border-radius:8px;min-height:44px;padding:8px 12px}.nav-cube-extra{max-width:180px}.nav-cube-chip{min-height:32px}.param-select{min-height:40px}@media (width<=1024px){.nav-cube{display:none}}@media (height<=500px) and (orientation:landscape){.param-bar{min-height:44px;padding-block:2px}.param-group{flex-direction:row;align-items:center}.param-label{margin-right:8px}.dock-tools{padding-block:4px}.dock-btn{flex-direction:row;gap:4px;height:44px;min-height:44px}.dock-btn svg{flex-shrink:0;width:16px;height:16px}.dock-section{flex-direction:row;gap:6px;min-height:44px;padding-block:4px}.dock-section svg{width:17px;height:17px}.nav-cube{display:none}}.toolbar-secondary{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.toolbar-more,.toolbar-backdrop{display:none}.conversion-login{border:1px solid var(--border);width:min(440px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--text);border-radius:20px;margin:auto;padding:24px;overflow:auto;box-shadow:0 24px 80px #0008}.conversion-login::backdrop{background:#080f1acc}.conversion-login header{align-items:center;gap:12px;display:flex}.conversion-login h2{font-size:calc(20px * var(--ui-scale,1));flex:1;margin:0}.conversion-login form{gap:16px;display:grid}.conversion-login label{min-width:0}.conversion-login input{box-sizing:border-box;color:#fff;width:100%;font-size:calc(16px * var(--ui-scale,1));background:#101925}.conversion-login button{cursor:pointer}.conversion-login [role=alert]{color:#ffc4bb;margin:0}@media (width<=1024px){.toolbar-title{display:none}.toolbar{z-index:30;flex-shrink:0;min-height:56px;position:relative;overflow:visible}.toolbar>.toolbar-divider,.toolbar>.segmented{display:none}.toolbar>.btn,.toolbar>select{flex-shrink:0}.toolbar-more{z-index:32;margin-left:auto;display:block;position:relative}.toolbar-backdrop{z-index:30;background:#0006;border:0;display:block;position:fixed;inset:0}.toolbar-secondary{display:none}.toolbar-secondary.is-open{z-index:32;background:var(--bg-panel);border:1px solid var(--border);border-radius:16px;flex-wrap:wrap;gap:12px;max-height:55dvh;padding:18px;display:flex;position:absolute;top:calc(100% + 8px);left:8px;right:8px;overflow-y:auto;box-shadow:0 12px 40px #0006}.toolbar-secondary .toolbar-spacer,.toolbar-secondary .toolbar-divider{display:none}.toolbar-secondary .unit-switch-label{display:inline}.toolbar-secondary .cloud-badge{display:block}.dock-tools-scroll{scroll-snap-type:x proximity}.dock-btn{scroll-snap-align:start}.dock-prompt{white-space:normal;font-size:calc(11px * var(--ui-scale,1));line-height:1.3}.welcome{padding:24px 16px}}.status-details{color:#fff;background:#593337;border:1px solid #d48080;border-radius:8px;flex:none;min-height:44px;margin-left:auto;padding:6px 12px}.error-details{background:var(--bg-panel);width:min(520px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--text);border:1px solid var(--border);border-radius:18px;margin:auto;padding:24px;overflow:auto}.error-details::backdrop{background:#080f1acc}.error-details h2{font-size:calc(20px * var(--ui-scale,1));margin-top:0}.error-details pre{white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;background:#111722;border-radius:8px;padding:12px;font:14px/1.5 ui-monospace,monospace}.status-bar:has(.status-details) .status-message{flex:1;min-width:0}.drawing-fonts{font-size:calc(12px * var(--ui-scale,1));text-align:right;flex:none;padding:2px 12px}.drawing-fonts>button{font:inherit;color:var(--text-dim);cursor:pointer;background:0 0;border:0;padding:4px 8px}.drawing-fonts dialog{text-align:left;overflow-wrap:anywhere}.font-search{width:150px;min-width:100px;max-width:40vw}.font-variant{font-size:calc(12px * var(--ui-scale,1));color:var(--text-dim)}.quick-dimension{z-index:4;color:#385078;cursor:pointer;touch-action:manipulation;background:#fffffff0;border:1px solid #4a5b8233;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid;position:absolute;top:14px;left:14px;box-shadow:0 2px 8px #1f30521f}.quick-dimension:hover{background:#f0f5ff;border-color:#91b1e8}.quick-dimension[aria-pressed=true]{color:var(--lk-action);background:var(--lk-selection);border-color:#91b1e8}.quick-dimension:focus-visible{outline:2px solid var(--lk-action);outline-offset:3px}.quick-snap{left:66px}.quick-visit{left:118px}.quick-snap[data-enabled=true]{color:var(--lk-action);background:var(--lk-selection)}.param-dropdown{display:inline-flex;position:relative}.param-dropdown-button{border:1px solid var(--border);background:var(--bg-panel);min-width:60px;min-height:44px;color:var(--text-strong);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:4px;padding:0 8px;display:inline-flex}.param-dropdown-button .swatch{border:1px solid #00000026;border-radius:6px;width:24px;height:24px}.param-caret{font-size:calc(11px * var(--ui-scale,1));color:var(--text-dim)}.param-dropdown-popup{z-index:40;border:1px solid var(--border);background:#fff;border-radius:12px;min-width:228px;max-width:calc(100vw - 24px);padding:10px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 28px #0000002e}.param-dropdown-popup .swatch-row{grid-template-columns:repeat(6,32px);gap:8px;display:grid}.param-dropdown-popup .swatch{border:1px solid #00000026;border-radius:6px;width:32px;min-width:32px;height:32px;min-height:32px}.param-options{flex-direction:column;gap:2px;display:flex}.param-option{width:100%;min-height:44px;color:var(--text-strong);font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:12px;padding:4px 10px;display:flex}.param-option[aria-pressed=true]{border-color:var(--accent);background:var(--lk-selection)}.param-group .param-body:has(.param-dropdown){gap:6px;display:flex}.param-dropdown-floating{z-index:1000;overscroll-behavior:contain;width:min(260px,100vw - 24px);position:fixed;top:auto;left:auto;overflow-y:auto}.status-progress.is-indeterminate{overflow:hidden}.status-progress.is-indeterminate .status-progress-fill{will-change:transform;width:40%;animation:1.1s ease-in-out infinite status-indeterminate}@keyframes status-indeterminate{0%{transform:translate(-110%)}to{transform:translate(260%)}}@media (prefers-reduced-motion:reduce){.status-progress.is-indeterminate .status-progress-fill{animation-duration:3s}}.open-offer{background:var(--surface);border-top:1px solid var(--border);color:var(--text);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;display:flex}.layers{width:min(340px,44vw)}@media (pointer:fine){.layers-list .layers-flag{width:30px;min-width:30px;min-height:30px}}.layers-list .layers-name{white-space:normal;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;line-height:1.25;display:-webkit-box}:root{--bg:#f6f7fb;--bg-panel:#fff;--bg-canvas:#f6f7fb;--surface:#fff;--bg-input:#fff;--border:var(--lk-line);--text:var(--lk-ink);--text-dim:var(--lk-secondary);--text-strong:var(--lk-ink);--accent:var(--lk-action);--ok:#15803d;--warn:#d97706;--err:#dc2626;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-variant-numeric:tabular-nums;--ui-scale:1;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark],:root[data-theme=system].prefers-dark{--bg:#12141a;--bg-panel:#1a1d26;--bg-canvas:#2a2e3a;--surface:#1f2330;--bg-input:#171a24;--border:#2e323d;--text:#c7ccd8;--text-dim:#a4adbe;--text-strong:#f0f2f6;--accent:#4f9cf9;--ok:#3ecf8e;--warn:#f2b544;--err:#f2685c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--bg:#12141a;--bg-panel:#1a1d26;--bg-canvas:#2a2e3a;--surface:#1f2330;--bg-input:#171a24;--border:#2e323d;--text:#c7ccd8;--text-dim:#a4adbe;--text-strong:#f0f2f6;--accent:#4f9cf9;--ok:#3ecf8e;--warn:#f2b544;--err:#f2685c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}.toolbar{gap:8px;min-height:64px;padding-block:8px}.toolbar-title{flex:none;align-items:center;gap:16px;padding:8px 16px;display:flex}.toolbar-title .leko-wordmark img{width:110px}.leko-wordmark{line-height:0;display:block}.leko-wordmark img{height:auto;display:block}.leko-wordmark .leko-wordmark-dark,:root[data-theme=dark] .leko-wordmark .leko-wordmark-light,:root[data-theme=system].prefers-dark .leko-wordmark .leko-wordmark-light{display:none}:root[data-theme=dark] .leko-wordmark .leko-wordmark-dark,:root[data-theme=system].prefers-dark .leko-wordmark .leko-wordmark-dark{display:block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .leko-wordmark .leko-wordmark-light{display:none}:root:not([data-theme=light]):not([data-theme=dark]) .leko-wordmark .leko-wordmark-dark{display:block}}.toolbar-title small{color:var(--text-dim);font-size:calc(12px * var(--ui-scale,1))}.btn,.param-select,.palette-select,.sheet-unit,.toolbar-export,.param-input,.param-number,.dock-chip,.segmented,.unit-switch,.layers input,.layers select,.error-details pre{background:var(--bg-panel);color:var(--text);border-color:var(--border)}.btn{border-radius:12px;font-weight:600}.btn-icon{gap:8px;width:auto;padding-inline:12px}.toolbar-action-label{font-size:calc(12px * var(--ui-scale,1))}.toolbar-option-label{display:none}.btn-primary,.dock-chip.is-primary,.segmented-option.is-active{background:var(--accent);color:var(--lk-on-action)}button:focus-visible,select:focus-visible,input:focus-visible{outline-color:var(--accent);outline-offset:2px}.toolbar-secondary{justify-content:flex-end}.toolbar-more{z-index:32;min-width:64px;margin-left:auto;display:block;position:relative}.toolbar{z-index:30;flex-shrink:0;position:relative;overflow:visible}.toolbar:has(.toolbar-secondary.is-open){z-index:60}.toolbar-secondary{display:none}.toolbar-secondary.is-open{z-index:32;background:var(--bg-panel);border:1px solid var(--border);border-radius:16px;flex-wrap:wrap;justify-content:flex-start;gap:8px;width:min(440px,100vw - 32px);max-height:65dvh;padding:16px;display:flex;position:absolute;top:calc(100% + 8px);left:auto;right:16px;overflow:auto;box-shadow:0 16px 48px #221c5720}.toolbar-backdrop{z-index:30;background:#221c571a;border:0;display:block;position:fixed;inset:0}.toolbar-secondary .toolbar-spacer,.toolbar-secondary .toolbar-divider{display:none}.toolbar-secondary .toolbar-option-label{display:inline}.toolbar-secondary .btn{justify-content:flex-start;min-height:44px}.toolbar-secondary .cloud-badge{display:block}.toolbar-secondary .engine-badge{font-size:calc(12px * var(--ui-scale,1));color:var(--text-dim);border:0;display:block}.toolbar-secondary .unit-switch-label{display:inline}.toolbar-export select{color:var(--text)}.empty-state{background:var(--bg);padding:32px 24px}.welcome-eyebrow{color:var(--text-dim);font-size:calc(11px * var(--ui-scale,1));letter-spacing:.08em;font-weight:800}.empty-state h1{color:var(--text-strong);letter-spacing:-.02em;margin:16px 0;font-size:clamp(27px,4vw,40px);font-weight:800}.empty-state p{max-width:440px;line-height:1.6}.welcome-open{background:var(--accent);min-height:48px;color:var(--lk-on-action);font-size:calc(14px * var(--ui-scale,1));justify-content:center;align-items:center;gap:8px;margin:16px 0;padding:0 24px;font-weight:700;display:inline-flex}.empty-state-formats{gap:16px;margin-top:16px}.empty-state-formats li{border:0;border-top:1px solid var(--border);background:0 0;border-radius:0;width:200px;padding:16px}.empty-state-formats strong{color:var(--text-strong);font-family:inherit;font-size:calc(14px * var(--ui-scale,1))}.param-bar{min-height:44px;padding:4px 16px}.param-tool{background:var(--lk-selection);color:var(--accent);border-radius:8px}.param-close{color:var(--accent);background:0 0}:is(.param-bar:has(>.param-scroll:empty),.param-bar:has(>.param-scroll>.param-idle:only-child)){display:none}.dock{background:var(--bg-panel);position:relative}.dock-active{background:var(--bg);border:0;padding:4px 16px}.dock-active.is-fixed{box-sizing:border-box;flex-wrap:nowrap;height:56px;overflow:hidden}.dock-active.is-fixed .dock-prompt{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.dock-active.is-fixed .dock-chip,.dock-active.is-fixed .dock-count{flex:none}.dock-idle{color:var(--text-dim)}@media (width<=600px){.dock-active.is-fixed{height:64px;padding-inline:8px}}.dock-prompt{color:var(--text-dim)}.dock-tools{padding:8px 16px}.dock-btn{color:var(--text);background:#fff;border-color:#0000;border-radius:12px;min-height:56px}.dock-btn:hover{background:var(--bg);border-color:var(--border)}.dock-btn.is-active{background:var(--lk-selection);color:var(--accent);border-color:#cbd9ff}.dock-tool-label{font-size:calc(11px * var(--ui-scale,1));line-height:1.25}.dock-btn{background:var(--bg-panel);color:var(--text)}.dock-btn:hover{background:var(--bg)}.dock-btn.is-active{background:color-mix(in srgb, var(--accent) 14%, var(--bg-panel));border-color:color-mix(in srgb, var(--accent) 35%, transparent);color:var(--accent)}.dock-btn.is-disabled{opacity:.45}.dock-btn.has-menu{position:relative}.dock-caret{top:5px;opacity:.7;font-size:.85em;line-height:1;position:absolute;inset-inline-end:7px}.dock-menu{z-index:70;background:var(--bg-panel);color:var(--text);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:2px;padding:6px;display:flex;position:fixed;box-shadow:0 12px 32px #182c4c33}.dock-menu-item{min-height:52px;color:inherit;font:inherit;text-align:start;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:8px 12px;display:flex}.dock-menu-item:hover,.dock-menu-item:focus-visible{background:var(--bg);outline:none}.dock-menu-item.is-active{color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.dock-menu-item.is-disabled{opacity:.55;cursor:default}.dock-menu-text{flex-direction:column;gap:2px;min-width:0;display:flex}.dock-menu-text>span{font-size:calc(14px * var(--ui-scale,1));font-weight:600}.dock-menu-text small{color:var(--text-dim);font-size:calc(12px * var(--ui-scale,1));line-height:1.35}.select-options{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.select-option{align-items:center;gap:6px;min-height:44px;display:inline-flex}.dock-mode{color:var(--accent);font-weight:700}.dock-hint{color:var(--text-dim);font-size:calc(11px * var(--ui-scale,1));display:inline}.dock-collapse,.dock-next{background:var(--bg);width:44px;min-height:44px}.dock-sections{background:var(--bg-panel)}.dock-section{min-height:48px;font-size:calc(12px * var(--ui-scale,1));border-top-width:3px;flex-direction:row;gap:8px}.dock-section.is-active{color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--bg-panel))}.status-bar{background:var(--bg);color:var(--text-dim);border-top:1px solid var(--border);min-height:28px}.status-details{color:#b91c1c;background:#fff1f2;border-color:#fecaca}.conversion-login{background:#fff}.conversion-login input{color:var(--text);background:#fff;border:1px solid #c5cad5;border-radius:8px;min-height:48px}.conversion-login [role=alert]{color:#b91c1c}.conversion-progress{background:var(--lk-selection);color:var(--text-strong)}.inspector-tabs button[aria-pressed=true]{background:var(--lk-selection);color:var(--accent)}@media (width<=1024px){.toolbar-title{display:none}.toolbar{gap:8px;min-height:60px;padding:8px}.toolbar>.toolbar-divider{display:none}.toolbar-secondary.is-open{left:auto;right:16px}.toolbar>.param-select{max-width:100px}.toolbar-action-label{font-size:calc(11px * var(--ui-scale,1))}.btn-icon{padding-inline:8px}.dock-tools{gap:4px;padding-inline:8px}.dock-tools-scroll{gap:4px}.dock-btn{width:76px}.dock-collapse,.dock-next{width:44px}.empty-state-formats li{text-align:left;width:100%;padding:12px 0}.empty-state-formats{gap:0;width:min(400px,100%)}.dock-active{padding-inline:8px}.dock-prompt{font-size:calc(11px * var(--ui-scale,1));line-height:1.4}}@media (width<=370px){.toolbar-action-label{display:none}}@media (height<=500px) and (orientation:landscape){.toolbar{min-height:52px;padding-block:4px}.dock-tools{padding-block:4px}.dock-btn,.dock-sections,.dock-section{min-height:44px}.dock-active{padding-block:0}.empty-state{padding:16px}.empty-state h1{margin:8px 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.welcome-logo{margin:0 0 24px}.welcome-logo img{width:148px}.toolbar-secondary .btn-icon{align-items:center;gap:8px;display:inline-flex}.unit-switch-knob{background:#fff}kbd,.layers-filter,.inline-field-input,.inline-fields,.cloud-panel input,.cloud-panel textarea{color:var(--text);background:#fff}@media (pointer:coarse){.welcome-drop{display:none}}@media (height<=500px){.welcome-logo{display:none}}.floaters>*,.inline-fields,.query-results header,.cloud-panel select,.scale-option,.scale-option:hover,.layers-flag:hover,.crash-message{background:var(--bg-panel);color:var(--text)}.toolbar,.dock{padding-left:max(8px, env(safe-area-inset-left));padding-right:max(8px, env(safe-area-inset-right))}@media (height<=500px) and (orientation:landscape){.dock-btn{flex-direction:row;justify-content:center;align-items:center;gap:8px;width:auto;min-width:76px;max-width:156px;height:44px;padding:4px 8px;display:flex}.dock-collapse,.dock-next{width:44px;min-width:44px}.dock-tool-label{max-width:100px}}.live-cube{border:1px solid var(--border);background:#ffffffd9;border-radius:12px;gap:0;width:140px;padding:4px;display:flex;top:16px;right:16px}.live-cube .nav-cube-face polygon{fill:var(--lk-selection);fill-opacity:1;stroke:#8189a0}.live-cube .nav-cube-face:hover polygon,.live-cube .nav-cube-face:focus-visible polygon{fill:#d8e4ff;stroke:var(--accent)}.live-cube .nav-cube-face text{fill:var(--lk-ink);font-size:calc(10px * var(--ui-scale,1));letter-spacing:0;font-weight:600}.live-cube select{pointer-events:auto;border:0;border-top:1px solid var(--border);max-width:100%;min-height:44px;font:inherit;font-size:calc(12px * var(--ui-scale,1));color:var(--text);background:0 0;border-radius:0}.cube-orientation{font-size:calc(11px * var(--ui-scale,1));color:var(--text-dim);padding-bottom:4px}@media (width<=640px){.live-cube{width:116px;top:8px;right:8px}.live-cube svg{width:96px;height:96px}}@media (height<=500px) and (orientation:landscape){.live-cube{width:104px;display:flex;top:4px;right:8px}.live-cube svg{width:68px;height:68px}.live-cube select{font-size:calc(11px * var(--ui-scale,1))}.cube-orientation{display:none}}.layers-flag,.layers-close{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.layers-filter{min-height:44px}.inline-field{box-sizing:border-box;background:var(--bg-panel);border:1px solid var(--border);width:min(320px,100% - 24px);color:var(--text);border-radius:12px;grid-template-columns:1fr 1fr;gap:8px;padding:12px;display:grid;transform:translate(-50%)}.inline-field-label,.inline-field-input,.inline-field-error{grid-column:1/-1}.inline-field-input{box-sizing:border-box;width:100%;min-height:44px;font-size:calc(16px * var(--ui-scale,1));border-color:var(--border)}.inline-field button{border:1px solid var(--border);background:var(--bg-panel);min-height:44px;color:var(--text);border-radius:8px}.inline-field button:first-of-type{background:var(--accent);color:#fff}.inline-field-error{white-space:normal;color:var(--err)}.toolbar>.display-mode-select{flex:0 140px;width:140px;min-width:116px;max-width:140px}@media (width<=640px){.dock-sections{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid;overflow:visible}.dock-section{min-width:0;min-height:56px;font-size:calc(11px * var(--ui-scale,1));flex-direction:column;gap:3px;padding:5px 1px}.dock-section svg{width:20px;height:20px}.dock-section span{white-space:nowrap}.toolbar>.display-mode-select{width:34vw;max-width:140px}}.tool-input-dialog{border:1px solid var(--border);background:var(--surface);width:min(440px,100vw - 24px);max-height:calc(100dvh - 24px);color:var(--text);border-radius:16px;margin:auto;padding:0;overflow:auto}.tool-input-dialog::backdrop{background:#221c5766}.tool-input-dialog .cloud-panel{border:0;border-radius:0;width:100%}.tool-input-dialog input,.tool-input-dialog select{font-size:calc(16px * var(--ui-scale,1));min-height:44px}.tool-input-dialog .cloud-actions{flex-wrap:wrap}.dock-chip,.unit-switch{min-height:44px}.toolbar>.btn-icon{flex-shrink:0;min-width:44px}@media (width<=360px){.toolbar{gap:6px}.toolbar>.param-select{flex:80px;width:auto;min-width:0}.toolbar-more{min-width:60px}}.toolbar-secondary button.cloud-badge{min-height:44px}@media (width<=600px){.workspace>.layers{z-index:12;border:1px solid var(--border);border-radius:16px;width:auto;max-height:min(240px,75%);position:absolute;bottom:8px;left:8px;right:8px;box-shadow:0 8px 32px #221c5726}.layers-head,.layers-filter{flex-shrink:0}}.empty-state{justify-content:flex-start}.empty-state>*{flex-shrink:0}.empty-state>:first-child{margin-top:auto}.empty-state>:last-child{margin-bottom:auto}.param-bar input:not([type=checkbox]):not([type=radio]),.param-bar select{min-height:44px}.param-bar input[type=range]{height:44px}.pattern-tile,.swatch,.param-icon-option{min-width:44px;min-height:44px}@media (width<=1024px){.param-bar input:not([type=range]),.param-bar select{font-size:calc(16px * var(--ui-scale,1))}}.param-close{min-width:44px;min-height:44px}.param-scroll{scrollbar-width:thin}@media (width<=600px){.param-tool>span{display:none}.param-tool{gap:4px}}.touch-magnifier{z-index:8;pointer-events:none;color:#162746;background:#fff;border:1px solid #cbd5e1;border-radius:12px;width:156px;position:absolute;top:8px;left:8px;overflow:hidden;box-shadow:0 4px 18px #12214933}.touch-magnifier-right{left:auto;right:8px}.touch-magnifier span{font-size:calc(12px * var(--ui-scale,1));padding:5px 8px;font-weight:600;display:block}.viewer-stack .touch-magnifier-image{width:156px;height:112px;display:block;position:static}.touch-magnifier small{font-size:calc(11px * var(--ui-scale,1));padding:4px 7px;line-height:1.25;display:block}.viewer-stack,.viewer-stack canvas{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.viewer-stack input,.viewer-stack textarea,.viewer-stack [contenteditable=true]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.snap-settings{width:min(440px,100vw - 32px);max-height:calc(100dvh - 48px);padding:20px;overflow:auto}.snap-settings p{font-size:calc(13px * var(--ui-scale,1));line-height:1.45}.snap-options{gap:4px;display:grid}.snap-options label{cursor:pointer;align-items:center;gap:12px;min-height:44px;display:flex}.snap-options input{width:22px;height:22px;accent-color:var(--accent);flex:none}.snap-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.snap-actions button{min-height:44px;padding:8px 12px}.snap-heading{z-index:1;background:var(--bg-panel);align-items:center;gap:12px;padding:8px 0;display:flex;position:sticky;top:-20px}.snap-heading h2{font-size:calc(18px * var(--ui-scale,1));flex:1;margin:0}.snap-heading button{min-height:44px;padding:8px 12px}.snap-enable{align-items:center;gap:12px;min-height:48px;font-weight:600;display:flex}.snap-enable input{width:22px;height:22px;accent-color:var(--accent)}.snap-options svg{color:#087b63;flex:none}.inline-text::placeholder{color:currentColor;opacity:.45}textarea.inline-text{resize:none;overflow:hidden}.text-format-button{min-width:44px;min-height:44px}.text-format-button[aria-pressed=true]{color:var(--accent);background:var(--bg-panel);outline:2px solid var(--accent)}.inline-text{text-shadow:none;touch-action:auto;-webkit-user-select:text;user-select:text}.text-palette{grid-template-columns:repeat(7,28px);gap:5px;display:grid}.text-palette button,.text-palette input{border:1px solid #999;border-radius:3px;width:28px;height:28px;padding:0}.text-palette button[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:2px}@font-face{font-family:Bitstream Vera Sans;src:url(/fonts/Vera.ttf)format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Bitstream Vera Sans;src:url(/fonts/VeraBd.ttf)format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Bitstream Vera Sans;src:url(/fonts/VeraIt.ttf)format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Bitstream Vera Sans;src:url(/fonts/VeraBI.ttf)format("truetype");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Bitstream Vera Sans Mono;src:url(/fonts/VeraMono.ttf)format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Bitstream Vera Sans Mono;src:url(/fonts/VeraMoBd.ttf)format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Bitstream Vera Sans Mono;src:url(/fonts/VeraMoIt.ttf)format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Bitstream Vera Sans Mono;src:url(/fonts/VeraMoBI.ttf)format("truetype");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Liberation Sans;src:url(/fonts/LiberationSans-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Liberation Sans;src:url(/fonts/LiberationSans-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Liberation Sans;src:url(/fonts/LiberationSans-Italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Liberation Sans;src:url(/fonts/LiberationSans-BoldItalic.ttf)format("truetype");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Liberation Serif;src:url(/fonts/LiberationSerif-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Liberation Serif;src:url(/fonts/LiberationSerif-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Liberation Serif;src:url(/fonts/LiberationSerif-Italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Liberation Serif;src:url(/fonts/LiberationSerif-BoldItalic.ttf)format("truetype");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Liberation Mono;src:url(/fonts/LiberationMono-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Liberation Mono;src:url(/fonts/LiberationMono-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Liberation Mono;src:url(/fonts/LiberationMono-Italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Liberation Mono;src:url(/fonts/LiberationMono-BoldItalic.ttf)format("truetype");font-weight:700;font-style:italic;font-display:block}.param-bar.text-ribbon{z-index:20;flex-wrap:wrap;gap:6px 16px;min-height:0;padding:6px 12px;display:flex;position:relative;overflow:visible}.text-ribbon-main,.text-ribbon-actions{align-items:center;gap:4px;display:flex}.text-ribbon button,.text-color-menu summary{cursor:pointer;min-width:40px;height:40px;color:var(--text);background:0 0;border:0;border-radius:5px}.text-ribbon button[aria-pressed=true]{color:#2455cf;background:#e8efff}.text-ribbon select,.text-ribbon input{border:1px solid #d7dce5;border-radius:5px;padding:4px 7px}.text-ribbon-main select{width:190px}.text-ribbon .text-height{width:76px}.text-height-unit{color:var(--text-dim);font-size:calc(12px * var(--ui-scale,1))}.text-ribbon .text-ribbon-close{font-size:calc(24px * var(--ui-scale,1))}.text-color-menu summary{justify-content:center;align-items:center;gap:6px;list-style:none;display:flex}.text-color-menu summary::-webkit-details-marker{display:none}.text-color-menu summary span{font-size:calc(20px * var(--ui-scale,1));border-bottom:4px solid;line-height:22px}.text-color-menu{position:relative}.text-color-popup{background:var(--bg-panel);width:248px;color:var(--text);z-index:50;border:1px solid #d7dce5;border-radius:10px;padding:14px;position:absolute;top:44px;left:0;box-shadow:0 8px 30px #0003}.text-color-popup .text-palette{grid-template-columns:repeat(6,32px);margin:10px 0}.text-color-popup label{justify-content:space-between;align-items:center;gap:8px;display:flex}.text-layer{max-width:150px}@media (width<=600px){.param-bar.text-ribbon{gap:2px}.text-ribbon-main{width:100%}.text-ribbon-main select{flex:1;width:0;min-width:120px}.text-ribbon-actions{width:100%}.text-ribbon button,.text-color-menu summary{min-width:44px;height:44px}.text-color-popup{width:260px;left:-130px}.text-color-popup .text-palette{grid-template-columns:repeat(5,44px)}.text-color-popup .text-palette button{width:44px}.text-layer{max-width:135px;margin-left:auto}}.text-drag-handle{z-index:30;touch-action:none;color:#2455cf;width:44px;height:44px;font-size:calc(24px * var(--ui-scale,1));cursor:move;background:#fff;border:1px solid #8096bd;border-radius:8px;position:absolute}.text-ribbon-message{font-size:calc(12px * var(--ui-scale,1));width:100%}.text-color-popup{max-height:65dvh;overflow:auto}.text-color-popup .text-theme-palette{grid-template-rows:repeat(4,24px);grid-template-columns:repeat(10,20px);grid-auto-flow:column;gap:3px}.text-color-popup .text-theme-palette button{width:20px;min-width:20px;height:24px}.text-color-popup input[type=text]{width:90px}.text-eyedropper{z-index:1000;cursor:crosshair;touch-action:none;position:fixed;inset:0}.text-eyedropper>div{color:#202020;background:#fff;border-radius:8px;width:max-content;max-width:95vw;padding:10px;position:absolute;top:8px;left:50%;transform:translate(-50%);box-shadow:0 2px 12px #0004}.text-ribbon input[hidden]{display:none}@font-face{font-family:Carlito;src:url(/fonts/Carlito-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Carlito;src:url(/fonts/Carlito-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Carlito;src:url(/fonts/Carlito-Italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Carlito;src:url(/fonts/Carlito-BoldItalic.ttf)format("truetype");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Caladea;src:url(/fonts/Caladea-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Caladea;src:url(/fonts/Caladea-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Caladea;src:url(/fonts/Caladea-Italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Caladea;src:url(/fonts/Caladea-BoldItalic.ttf)format("truetype");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Lato;src:url(/fonts/Lato-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Lato;src:url(/fonts/Lato-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Lato;src:url(/fonts/Lato-Italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Lato;src:url(/fonts/Lato-BoldItalic.ttf)format("truetype");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:PT Sans;src:url(/fonts/PT_Sans-Web-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:PT Sans;src:url(/fonts/PT_Sans-Web-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:PT Sans;src:url(/fonts/PT_Sans-Web-Italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:PT Sans;src:url(/fonts/PT_Sans-Web-BoldItalic.ttf)format("truetype");font-weight:700;font-style:italic;font-display:block}.text-ribbon input,.text-ribbon select,.inline-field-input{font-size:calc(16px * var(--ui-scale,1))}.text-custom-colors{width:100%}.text-custom-colors>summary{width:auto;padding:8px 0}.text-custom-colors label{align-items:center;gap:8px;display:flex}.text-custom-colors input[type=range]{flex:1;min-width:0}.text-color-sample{border:1px solid #999;border-radius:4px;height:24px;display:block}.text-custom-colors .rgb-number{width:64px;font-size:calc(16px * var(--ui-scale,1));flex:none}.text-color-popup.text-color-floating{z-index:1001;box-sizing:border-box;overscroll-behavior:contain;position:fixed;overflow:auto}.text-color-floating button{cursor:pointer;color:var(--text)}.text-color-floating .text-palette{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.text-color-floating .text-palette button{border:1px solid #aeb5c3;border-radius:4px;width:100%;min-width:0;height:32px}.text-color-floating .palette-close{float:right;width:32px;height:32px;font-size:calc(24px * var(--ui-scale,1));background:0 0;border:0}.text-color-floating input{font-size:calc(16px * var(--ui-scale,1));min-width:0}.text-color-floating .text-eyedropper-button{border:1px solid var(--border);background:0 0;border-radius:6px;width:44px;height:44px}.text-rotation-controls{z-index:40;flex-wrap:wrap;max-width:calc(100% - 16px)}.text-rotation-controls form{flex-wrap:wrap;gap:8px;display:flex}.text-direct-frame{z-index:16;touch-action:none;cursor:move;-webkit-user-select:none;user-select:none;border:1px dashed #66717a;position:absolute}.text-direct-frame i{pointer-events:none;background:#fff;border:1px solid #65717c;border-radius:50%;width:8px;height:8px;position:absolute;transform:translate(-50%,-50%)}.text-rotation-stem{pointer-events:none;border-left:1px solid #65717c;height:28px;position:absolute;top:-28px;left:50%}.text-rotation-handle{color:#36434f;touch-action:none;cursor:grab;background:#fff;border:1px solid #65717c;border-radius:50%;width:44px;height:44px;position:absolute;top:-62px;left:calc(50% - 22px)}.text-alignment-guides{pointer-events:none;z-index:15;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.text-alignment-guides path{stroke:#65ed00;stroke-width:1.5px;stroke-dasharray:8 4;fill:none}.text-gesture-shield{z-index:14;touch-action:none;position:fixed;inset:0}.history-buttons{flex-shrink:0;gap:2px;display:flex}.history-buttons .btn{touch-action:manipulation;-webkit-user-select:none;user-select:none;width:40px;min-width:40px;height:44px}.history-backdrop{z-index:1100;background:#18243a33;justify-content:center;align-items:flex-start;padding:64px 8px 16px;display:flex;position:fixed;inset:0}.history-popup{background:var(--bg-panel);width:min(420px,100%);max-height:75dvh;color:var(--text);border-radius:12px;padding:16px;overflow:auto;box-shadow:0 8px 30px #0003}.history-popup>button{float:right}.history-popup li button{text-align:left;border:0;border-bottom:1px solid var(--border);width:100%;color:inherit;background:0 0;padding:12px}.text-frame-options{padding:6px}.text-frame-options label{align-items:center;gap:8px;margin:6px;display:inline-flex}.text-frame-options input,.text-frame-options select{font-size:calc(16px * var(--ui-scale,1))}@media (width<=600px){.toolbar .display-mode-select{flex:1;width:70px;min-width:55px}.toolbar .history-buttons .btn{width:34px;min-width:34px}.toolbar{gap:4px}}.nav-cube.live-cube{width:120px;box-shadow:none;background:0 0;border:0;border-radius:0;gap:0;padding:0;display:flex;top:12px;right:12px}.live-cube .orientation-solid{filter:drop-shadow(0 3px 3px #182c4c20);width:120px;height:112px;overflow:visible}.live-cube .nav-cube-face polygon{stroke:#6984ab;stroke-width:1px;stroke-linejoin:round;transition:fill .15s}.live-cube .nav-cube-face:hover polygon,.live-cube .nav-cube-face:focus-visible polygon{stroke:#2563eb;stroke-width:1.8px;fill:#8cb7ff!important}.live-cube .nav-cube-face text{font-size:calc(10px * var(--ui-scale,1));fill:#273e61;pointer-events:none;font-weight:650}.cube-actions{pointer-events:auto;gap:10px;display:flex}.cube-action{color:#425b7e;cursor:pointer;background:#ffffffed;border:1px solid #dbe3ef;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;box-shadow:0 2px 7px #1d355712}.cube-action:hover,.cube-action:focus-visible{color:#2563eb;background:#edf4ff}.cube-backdrop,.render-backdrop{pointer-events:auto;z-index:10;background:0 0;border:0;position:fixed;inset:0}.cube-views{z-index:11;pointer-events:auto;background:#fff;border:1px solid #e2e8f0;border-radius:16px;grid-template-columns:1fr 1fr;gap:4px;width:228px;padding:8px;display:grid;position:absolute;top:164px;right:0;box-shadow:0 12px 32px #182c4c20}.cube-views button{color:#273e61;min-height:44px;font:inherit;font-size:calc(12px * var(--ui-scale,1));cursor:pointer;background:#f5f8fc;border:0;border-radius:9px}.cube-views button:hover{background:#e6efff}.render-control{position:relative}.cut-controls{flex:none;align-items:center;gap:6px;display:flex}.cut-fill{border:1px solid var(--border);background:var(--surface);border-radius:12px;display:flex;overflow:hidden}.cut-fill-option{min-width:44px;min-height:44px;color:var(--text);font:inherit;font-size:calc(13px * var(--ui-scale,1));cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 10px;display:flex}.cut-fill-option+.cut-fill-option{border-inline-start:1px solid var(--border)}.cut-fill-option.is-on{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent);font-weight:600}.cut-fill-option:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.cut-remove,.cut-handles{align-items:center;gap:6px;display:flex}.cut-remove:disabled{opacity:.45}.cut-progress{z-index:9;background:var(--bg-panel);color:var(--text);border:1px solid var(--border);font-size:calc(13px * var(--ui-scale,1));pointer-events:none;border-radius:12px;align-items:center;gap:10px;padding:8px 14px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #182c4c1f}.cut-progress progress{width:96px;height:8px}.cut-progress-cancel{pointer-events:auto;border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:3px 10px}.render-toggle{align-items:center;gap:7px;min-height:44px;padding:0 10px;display:flex}.render-toggle span{font-size:calc(13px * var(--ui-scale,1))}.render-popover{z-index:11;background:#fff;border:1px solid #e2e8f0;border-radius:14px;width:184px;padding:6px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 12px 32px #182c4c20}.render-option{width:100%;min-height:48px;font:inherit;color:#273e61;cursor:pointer;background:#fff;border:0;border-radius:9px;align-items:center;gap:12px;padding:10px;display:flex}.render-option[aria-pressed=true]{color:#2563eb;background:#edf3ff}.render-option span:last-child{margin-left:auto}@media (height<=500px){.nav-cube.live-cube{width:104px;top:4px;right:8px}.live-cube .orientation-solid{width:100px;height:88px}.cube-views{top:0;right:116px}}.live-cube .cube-actions{position:absolute;top:64px;left:-38px}.nav-cube.live-cube .cube-action svg.icon{filter:none;flex:none;width:21px;height:21px}.nav-cube.live-cube{top:10px;right:12px}.live-cube .nav-cube-face .cube-bevel{pointer-events:none;fill:none!important;stroke:#ffffffb8!important;stroke-width:.65px!important}.live-cube .nav-cube-face text{font-family:Inter,system-ui,sans-serif;font-size:calc(8px * var(--ui-scale,1));letter-spacing:.35px;fill:#435169;font-weight:600}.live-cube .nav-cube-face:hover .cube-surface,.live-cube .nav-cube-face:focus-visible .cube-surface{stroke:#5687d6;stroke-width:1.1px;fill:#e3edff!important}.live-cube .nav-cube-face:active .cube-surface{fill:#cfdef7!important}.live-cube .cube-actions{top:18px;left:-34px}.live-cube .cube-action{box-shadow:none;color:#64748b;touch-action:manipulation;background:0 0;border:0;border-radius:12px;transition:background .15s,color .15s}.live-cube .cube-action:hover,.live-cube .cube-action:focus-visible{color:#326be6;background:#eff4fc}.live-cube .cube-action:focus-visible{outline-offset:2px;outline:2px solid #82a7ed}.nav-cube.live-cube .cube-action svg.icon{width:20px;height:20px}@media (height<=500px){.live-cube .cube-actions{top:8px}}.live-cube .nav-cube-face .cube-surface{stroke:#c8cbd0;stroke-width:.7px;stroke-linejoin:round}.live-cube .nav-cube-face text{font-size:calc(10px * var(--ui-scale,1));letter-spacing:.45px;fill:#565a60;font-weight:450}.live-cube .orientation-solid{filter:drop-shadow(0 2px 2px #1e293b18)}.live-cube .nav-cube-face{touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.nav-cube.live-cube.has-arrows{width:180px;height:180px}.live-cube.has-arrows .orientation-solid{width:120px;height:120px;position:absolute;top:30px;left:30px}.live-cube.has-arrows .cube-actions{top:0;left:0}.cube-step{color:#727982;pointer-events:auto;touch-action:manipulation;cursor:pointer;background:0 0;border:0;border-radius:12px;place-items:center;width:44px;height:44px;padding:0;display:grid;position:absolute}.nav-cube.live-cube .cube-step svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.cube-step:hover,.cube-step:focus-visible{color:#326be6;background:#eff4fce6}.cube-step:focus-visible{outline-offset:1px;outline:2px solid #82a7ed}.cube-step-up{top:0;left:68px}.cube-step-down{top:136px;left:68px}.cube-step-left{top:68px;left:0}.cube-step-right{top:68px;left:136px}.cube-step-clockwise{top:0;left:136px}.cube-step-counterclockwise{top:136px;left:0}.welcome .welcome-open{margin:8px 0 4px}.welcome .welcome-drop{color:var(--text-dim);font-size:calc(12px * var(--ui-scale,1));margin:0 0 8px}.home-recents{text-align:start;width:min(440px,100%);margin:16px 0 8px}.home-recents h2{font-size:calc(13px * var(--ui-scale,1));color:var(--text-dim);margin:0 0 8px;font-weight:700}.home-recents ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.home-recents li{gap:6px;display:flex}.home-recent-open{border:1px solid var(--border);background:var(--bg-panel);min-width:0;min-height:52px;color:var(--text);font:inherit;text-align:start;cursor:pointer;border-radius:12px;flex:1;align-items:center;gap:12px;padding:8px 12px;display:flex}.home-recent-open:hover,.home-recent-open:focus-visible{border-color:var(--accent);outline:none}.home-recent-open img{object-fit:contain;background:var(--bg);border-radius:6px;flex:none;width:44px;height:44px}.home-recent-type{background:color-mix(in srgb, var(--accent) 10%, var(--bg-panel));width:44px;height:44px;color:var(--accent);text-transform:uppercase;border-radius:8px;flex:none;place-items:center;font-size:11px;font-weight:800;display:grid}.home-recent-text{flex-direction:column;min-width:0;display:flex}.home-recent-text>span{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.home-recent-text small{color:var(--text-dim)}.home-recent-remove{border:1px solid var(--border);background:var(--bg-panel);width:44px;min-height:52px;color:var(--text-dim);cursor:pointer;border-radius:12px;flex:none;font-size:20px}.home-recent-remove:hover{color:var(--text)}.area-panel{z-index:1;border:1px solid color-mix(in srgb, var(--zone,var(--accent)) 45%, var(--border));border-left:4px solid var(--zone,var(--accent));background:color-mix(in srgb, var(--bg-panel) 82%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-width:calc(100% - 24px);color:var(--text);border-radius:14px;align-self:center;align-items:center;gap:12px;padding:8px 8px 8px 14px;display:flex;position:relative;box-shadow:0 8px 24px #14213722}.area-panel dl{gap:18px;margin:0;display:flex}.area-panel dl div{flex-direction:column;min-width:0;display:flex}.area-panel dt{font-size:calc(11px * var(--ui-scale,1));color:var(--text-dim)}.area-panel dd{font-size:calc(16px * var(--ui-scale,1));color:var(--text-strong);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-weight:700}.area-panel-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.area-panel-btn{border:1px solid var(--border);background:var(--bg-panel);min-height:40px;color:var(--text);font:inherit;font-size:calc(12px * var(--ui-scale,1));cursor:pointer;border-radius:10px;padding:0 12px}.area-panel-btn[aria-pressed=true]{border-color:var(--zone,var(--accent));color:var(--zone,var(--accent));font-weight:700}@media (width<=600px){.area-panel{flex-wrap:wrap;gap:6px 10px;width:calc(100% - 24px);padding:6px 8px 6px 12px;bottom:8px}.area-panel dl{flex:100%;gap:16px}.area-panel dd{font-size:calc(15px * var(--ui-scale,1))}.area-panel-actions{flex-wrap:nowrap;flex:100%}.area-panel-btn{flex:auto;min-height:44px;padding:0 8px;line-height:1.15}.area-panel-btn:last-child{flex:0 0 44px}}.area-panel .area-panel-m2{font-size:calc(11.5px * var(--ui-scale,1));color:var(--text-dim);font-variant-numeric:tabular-nums;white-space:nowrap}:root{--shell-card:#fff;--shell-ink:var(--text-strong);--shell-soft:var(--lk-selection);--shell-shadow:0 10px 30px #161f471f, 0 1px 3px #161f4714;--shell-radius:14px;--shell-gap:16px}:root[data-theme=dark],:root[data-theme=system].prefers-dark{--shell-card:var(--bg-panel);--shell-soft:#233150;--shell-shadow:0 10px 30px #00000073}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--shell-card:var(--bg-panel);--shell-soft:#233150;--shell-shadow:0 10px 30px #00000073}}.app{position:relative}.toolbar.leko-header{z-index:30;background:var(--shell-card);border-bottom:1px solid var(--border);flex-wrap:nowrap;align-items:center;gap:6px;min-height:56px;padding-block:6px;display:flex;position:relative;overflow:visible}.leko-header .toolbar-title{flex:none;padding:4px 10px 4px 2px;display:flex!important}.leko-header .toolbar-title .leko-wordmark img{width:100px}.leko-header .toolbar-spacer{flex:1 1 0;min-width:0;display:block}.leko-header .btn{border:1px solid var(--border);background:var(--shell-card);min-height:40px;color:var(--shell-ink);font-size:calc(13px * var(--ui-scale,1));white-space:nowrap;border-radius:10px;align-items:center;gap:6px;padding:0 12px;font-weight:500;display:inline-flex}.leko-header .btn:hover{background:#f7f9ff;border-color:#b9c7ea}.leko-header .btn.btn-primary,.leko-header .btn[aria-pressed=true]{background:var(--shell-soft);color:var(--accent);border-color:#b9c9f5}.leko-header .btn-icon{padding:0 10px}.leko-header .toolbar-actions{flex:none;align-items:center;gap:6px;display:flex}.leko-header .toolbar-actions .history-buttons .btn{background:0 0;border-color:#0000;justify-content:center;width:40px;min-width:40px;padding:0}.leko-header .render-toggle{gap:8px}.leko-header .toolbar-more{justify-content:center;width:40px;margin-left:0;padding:0;display:inline-flex!important}.leko-header .toolbar-help{background:0 0;border-color:#0000;justify-content:center;width:40px;padding:0}.leko-header .toolbar-backdrop{z-index:30;background:0 0;border:0;display:block;position:fixed;inset:0}.leko-header .toolbar-secondary{display:none!important}.leko-header .toolbar-secondary.is-open{z-index:32;background:var(--shell-card);border:1px solid var(--border);border-radius:var(--shell-radius);width:min(340px,100vw - 24px);max-height:min(70dvh,560px);box-shadow:var(--shell-shadow);flex-direction:column;align-items:stretch;gap:8px;padding:12px;position:absolute;top:calc(100% + 6px);left:auto;right:12px;overflow-y:auto;display:flex!important}.leko-header .toolbar-secondary .btn{justify-content:flex-start;width:100%;min-height:44px}.leko-header .toolbar-secondary .toolbar-option-label,.leko-header .toolbar-secondary .unit-switch-label{display:inline!important}.leko-header .toolbar-secondary .engine-badge,.leko-header .toolbar-secondary .cloud-badge{align-self:flex-start;display:block}.sheet-unit-field{font-size:calc(12px * var(--ui-scale,1));color:var(--text-dim);gap:4px;display:grid}.sheet-unit-field select{min-height:44px}.leko-header .render-popover{z-index:33;width:260px;left:auto;right:0}.leko-header .render-control .render-popover{left:0;right:auto}.export-popover .render-option span{text-align:left;display:grid;margin-left:0!important}.export-popover .render-option small,.file-tabs-menu .render-option small{color:var(--text-dim);font-size:calc(11.5px * var(--ui-scale,1))}.leko-header .toolbar-export-button+.render-backdrop+.export-popover,.leko-header .export-popover{width:280px;left:auto;right:0}.leko-header.is-render .toolbar-more{display:none!important}.file-tabs{flex:0 auto;align-items:center;gap:2px;min-width:0;display:flex}.file-tabs-list{scrollbar-width:none;align-items:center;gap:4px;min-width:0;display:flex;overflow-x:auto}.file-tabs-list::-webkit-scrollbar{display:none}.file-tab{border-radius:10px;flex:none;align-items:center;max-width:260px;display:flex}.file-tab.is-active{background:var(--shell-soft)}.file-tab>button[role=tab]{min-width:0;min-height:40px;color:var(--shell-ink);font:inherit;font-size:calc(13px * var(--ui-scale,1));cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0 4px 0 10px;display:flex}.file-tab.is-active>button[role=tab]{color:var(--accent);font-weight:600}.file-tab-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:180px;overflow:hidden}.file-tab-note{font-size:calc(11px * var(--ui-scale,1));color:var(--text-dim);font-weight:400}.file-tab-count{font-size:calc(11px * var(--ui-scale,1));color:var(--accent);background:#dfe8ff;border-radius:999px;padding:1px 6px}.file-tab-dot{background:#f59e0b;border-radius:50%;flex:none;width:7px;height:7px}.file-tab-close,.file-tab-plus{width:32px;height:40px;color:var(--text-dim);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.file-tab-close:hover,.file-tab-plus:hover{color:var(--shell-ink);background:#eef1f8}.file-tab-plus{width:40px;color:var(--shell-ink)}.file-tabs-add{flex:none;position:relative}.file-tabs-menu{width:300px!important;left:0!important;right:auto!important}.file-tabs-menu .render-option span{text-align:left;display:grid;margin-left:0!important}.shortcut-rail{top:var(--shell-gap);left:var(--shell-gap);z-index:9;background:var(--shell-card);border:1px solid var(--border);border-radius:var(--shell-radius);box-shadow:var(--shell-shadow);flex-direction:column;gap:4px;padding:6px;display:flex;position:absolute}.shortcut{color:#22306b;cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:10px;place-items:center;width:44px;height:44px;padding:0;display:grid}:root[data-theme=dark] .shortcut{color:var(--text-strong)}.shortcut:hover{background:#f1f4fb}.shortcut[aria-pressed=true]{background:var(--shell-soft);color:var(--accent)}.shortcut-snap[data-enabled=true]{color:var(--accent)}.shortcut-snap[data-enabled=false]{color:#8a93a8}.shortcut[aria-disabled=true]{opacity:.45}.shortcut:focus-visible{outline:3px solid var(--lk-focus);outline-offset:1px}.shortcut-select{position:relative}.view-context-menu .dock-menu-item{min-height:40px;padding:6px 10px}.view-context-menu .dock-menu-item.has-separator{margin-top:5px;position:relative}.view-context-menu .dock-menu-item.has-separator:before{content:"";border-top:1px solid var(--border);position:absolute;top:-3px;left:8px;right:8px}.view-context-title{color:var(--text-dim);padding:4px 10px 6px;font-size:12px;font-weight:600}.live-cube .cube-actions{flex-direction:column;gap:4px}.live-cube .cube-action.cube-fly[aria-pressed=true]{background:var(--shell-soft,#eaf1ff);color:var(--accent,#2563eb)}.shortcut-select-modes{background:var(--shell-card);border:1px solid var(--border);border-radius:var(--shell-radius);box-shadow:var(--shell-shadow);gap:4px;padding:6px;display:flex;position:absolute;top:-6px;left:calc(100% + 12px)}.nav-cube{top:var(--shell-gap)!important;right:var(--shell-gap)!important}.nav-cube .cube-actions{opacity:.9}.dock-stack{z-index:12;left:50%;bottom:var(--shell-gap);width:min(780px, calc(100% - 2 * var(--shell-gap) - 72px));max-width:calc(100% - 2 * var(--shell-gap));pointer-events:none;flex-direction:column;gap:8px;display:flex;position:absolute;transform:translate(-50%)}.dock-stack:empty{display:none}.dock-stack>*{pointer-events:auto}.dock-stack .dock{background:0 0;border:0;flex-direction:column;gap:8px;display:flex;padding:0!important}.dock-stack .dock-active,.dock-stack .dock-tools,.dock-stack .dock-sections,.dock-stack .param-bar,.dock-stack .ifc-param-bar{background:var(--shell-card);border:1px solid var(--border);border-radius:var(--shell-radius);box-shadow:var(--shell-shadow)}.dock-stack .param-bar{max-width:100%}.dock-stack .dock-active{min-height:44px;color:var(--text);padding:6px 12px}.dock-stack .dock-active.is-fixed:has(.dock-idle){display:none}.dock-stack .dock-tools{gap:4px;padding:6px}.dock-stack .dock-tools-scroll{justify-content:center;gap:2px}.dock-stack .dock-btn{width:auto;min-width:70px;min-height:58px;color:var(--shell-ink);background:0 0;border:0;border-radius:10px;gap:4px;padding:6px 8px}.dock-stack .dock-btn:hover{background:#f3f6fd;border:0}.dock-stack .dock-btn.is-active{background:var(--shell-soft);color:var(--accent)}.dock-stack .dock-btn .dock-tool-label{font-size:calc(11.5px * var(--ui-scale,1));max-width:92px}.dock-stack .dock-collapse{display:none}.dock-stack .dock-sections{background:var(--shell-card);padding:4px 6px;display:flex;overflow-x:auto}.dock-stack .dock-section{min-width:72px;min-height:52px;color:var(--shell-ink);font-size:calc(12px * var(--ui-scale,1));background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;flex:1 1 0;gap:3px}.dock-stack .dock-section.is-active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.dock-stack .dock-chip{background:var(--shell-card);color:var(--shell-ink);border-color:var(--border);min-height:36px}.dock-stack .dock-chip.is-primary{background:var(--accent);border-color:var(--accent);color:var(--lk-on-action)}.dock-stack .dock-chip.dock-text-mode[aria-pressed=true]{background:var(--shell-soft);border-color:var(--accent);color:var(--accent)}@media (pointer:coarse){.dock-stack .dock-chip.dock-text-mode{min-height:44px}}.dock-stack .dock-prompt{color:var(--text)}.dock-menu{background:var(--shell-card);border:1px solid var(--border);border-radius:var(--shell-radius);box-shadow:var(--shell-shadow)}.dock-stack .cut-controls{flex-wrap:wrap;align-items:center;gap:10px;width:100%;display:flex}.cut-controls-title{color:var(--shell-ink);font-weight:600;font-size:calc(13px * var(--ui-scale,1))}.dock-stack .cut-fill{background:0 0;border:0;gap:6px}.dock-stack .cut-fill-option,.dock-stack .cut-remove,.dock-stack .cut-handles{border:1px solid var(--border);background:var(--shell-card);min-height:40px;color:var(--shell-ink);font:inherit;font-size:calc(13px * var(--ui-scale,1));cursor:pointer;border-radius:10px;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.dock-stack .cut-fill-option.is-on{background:var(--accent);border-color:var(--accent);color:var(--lk-on-action)}.dock-stack .cut-remove:disabled{opacity:.5;cursor:default}.workspace>.ifc-inspector,.workspace>.layers{background:var(--shell-card)}.status-bar{min-height:28px;font-size:calc(12px * var(--ui-scale,1));background:var(--shell-card);border-top:1px solid var(--border)}@media (width<=1024px){.leko-header .toolbar-title{display:flex!important}.leko-header .toolbar-actions .toolbar-layers .toolbar-action-label,.leko-header .toolbar-actions .toolbar-save .toolbar-action-label,.leko-header .toolbar-actions .toolbar-export-button .toolbar-action-label{display:none}.dock-stack{width:min(720px, calc(100% - 2 * var(--shell-gap) - 64px))}.nav-cube{display:block}}@media (width<=700px){:root{--shell-gap:10px}.toolbar.leko-header{padding-inline:max(8px, env(safe-area-inset-left)) max(8px, env(safe-area-inset-right));flex-wrap:wrap;gap:4px}.leko-header .toolbar-title{order:0;padding:2px 4px}.leko-header .toolbar-title .leko-wordmark img{width:88px}.leko-header .toolbar-more{order:1;margin-left:auto}.leko-header .toolbar-help{order:2}.leko-header>.account-button-wrap{order:3}.leko-header .toolbar-spacer{flex:1 0 100%;order:4;height:0;display:block!important}.leko-header .file-tabs{flex:1 1 0;order:5}.leko-header .toolbar-actions{order:6;gap:2px}.leko-header .toolbar-action-label{display:none}.leko-header .render-toggle .toolbar-action-label{display:inline}.leko-header.is-home .toolbar-spacer,.leko-header.is-home .file-tabs:empty{display:none}.file-tab-name{max-width:120px}.leko-header .btn{min-height:44px}.file-tab>button[role=tab],.file-tab-close,.file-tab-plus{height:44px;min-height:44px}.dropzone{flex-direction:column;display:flex}.dropzone>.viewer-stack{flex:auto;min-height:0;position:relative;inset:auto}.dropzone>.empty-state{flex:auto}.dock-stack{background:var(--shell-card);border-top:1px solid var(--border);flex:none;order:2;gap:0;width:auto;max-width:none;position:relative;bottom:auto;left:auto;transform:none}.dock-stack .dock{gap:0}.dock-stack .dock-active,.dock-stack .dock-tools,.dock-stack .dock-sections,.dock-stack .param-bar,.dock-stack .ifc-param-bar{box-shadow:none;border-width:0 0 1px;border-radius:0}.dock-stack .dock-btn{min-width:60px;min-height:54px}.dock-stack .dock-tools-scroll{justify-content:space-around}.dock-stack .dock-section{min-width:0;min-height:52px;padding-inline:4px}.shortcut-rail{gap:2px;padding:4px}}@media (pointer:coarse){.leko-header .btn,.file-tab>button[role=tab],.file-tab-close,.file-tab-plus{min-height:44px}.file-tab-close{width:44px}}.file-tabs-switch{display:none;position:relative}.file-tab-count-button{border:1px solid var(--border);background:var(--shell-card);min-width:36px;height:36px;color:var(--shell-ink);font:inherit;cursor:pointer;border-radius:10px;padding:0 8px;font-weight:600}.more-phone-only{display:none!important}@media (width<=700px){.file-tab:not(.is-active){display:none}.file-tabs-switch{display:block}.file-tab-count-button{min-width:44px;min-height:44px}.more-phone-only{display:inline-flex!important}.leko-header .toolbar-actions .toolbar-sheet-unit{max-width:112px}.leko-header .toolbar-actions .history-buttons .btn{width:36px;min-width:36px}}.line-props{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.line-prop{font-size:calc(12px * var(--ui-scale,1));color:var(--text-dim);align-items:center;gap:6px;display:inline-flex}.param-summary-text{font-size:calc(12.5px * var(--ui-scale,1));color:var(--text-strong);white-space:nowrap}.dock-stack .param-bar{overflow-x:auto}.dock-stack .param-label{color:var(--shell-ink);font-weight:600}@media (width<=700px){.line-props{gap:8px}}.realistic-reset{border:1px solid var(--border);background:var(--shell-card,#fff);min-height:44px;color:var(--text-strong);font:inherit;cursor:pointer;border-radius:10px}.app.has-document{flex-direction:column;height:100dvh;display:flex}.app.has-document .document-header{display:none}.app.has-document .document-workspace{flex:auto;height:auto;min-height:0;padding-top:0}@media (width>=701px){.dock-stack:not(:empty){background:var(--shell-card);border:1px solid var(--border);border-radius:var(--shell-radius);box-shadow:var(--shell-shadow);gap:0}.dock-stack .dock{gap:0}.dock-stack .dock-active,.dock-stack .dock-tools,.dock-stack .dock-sections,.dock-stack .param-bar,.dock-stack .ifc-param-bar{border:0;border-bottom:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0}.dock-stack>:last-child,.dock-stack .dock>:last-child{border-bottom:0}.dock-stack>:first-child,.dock-stack>.dock:first-child>:first-child{border-top-left-radius:var(--shell-radius);border-top-right-radius:var(--shell-radius)}.dock-stack .dock-active,.dock-stack .dock-active.is-fixed{height:auto;min-height:40px;padding:3px 10px}.dock-stack .dock-chip{min-height:32px}.dock-stack .dock-tools{padding:2px 6px}.dock-stack .dock-btn{gap:2px;min-height:48px;padding:3px 6px}.dock-stack .dock-sections{padding:0 6px}.dock-stack .dock-section{flex-direction:row;gap:6px;min-height:40px}.dock-stack .param-bar{min-height:0;padding-block:2px}.dock-stack .param-scroll{flex-wrap:wrap;row-gap:2px;overflow:visible}}.snap-panel{left:calc(var(--shell-gap) + 68px);top:var(--shell-gap);z-index:40;border:1px solid var(--border);background:var(--shell-card,#fff);width:min(300px,100vw - 100px);max-height:calc(100% - 96px);color:var(--shell-ink,#22306b);border-radius:12px;gap:8px;padding:12px;display:grid;position:absolute;overflow:auto;box-shadow:0 8px 24px #0f172a29}.snap-panel-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.snap-panel-head button,.snap-panel-actions button{border:1px solid var(--border);min-height:36px;color:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:0 10px}.snap-panel-state{opacity:.85;margin:0;font-size:13px}.snap-panel-state[data-enabled=true]{color:var(--accent);opacity:1}.snap-panel-targets{gap:4px;display:grid}.snap-panel-targets label{cursor:pointer;align-items:center;gap:8px;min-height:32px;display:flex}.snap-panel-targets.is-off label{opacity:.55}.snap-panel-actions{flex-wrap:wrap;gap:6px;display:flex}.snap-panel-note{opacity:.75;margin:0;font-size:12px}.precision-distance:empty{display:none!important}.leko-header .header-actions{flex:none;align-items:center;gap:4px;display:inline-flex}.leko-header .header-action{width:max(var(--lk-target), 36px);min-width:max(var(--lk-target), 36px);height:max(var(--lk-target), 36px);background:0 0;border-color:#0000;justify-content:center;padding:0}.leko-header .header-action:hover:not(:disabled){background:var(--lk-hover)}.leko-header .header-actions-sep{background:var(--lk-line);width:1px;height:24px;margin:0 6px}.header-export-menu{min-width:280px;max-width:min(360px,100vw - 16px)}.header-export-head{border-bottom:1px solid var(--lk-line);gap:2px;margin-bottom:4px;padding:8px 12px 6px;display:grid}.header-export-head small{color:var(--lk-secondary);font-size:calc(11.5px * var(--ui-scale,1));line-height:1.35}.header-export-item{text-align:left;display:grid}.header-export-item small{color:var(--lk-secondary);font-size:calc(11.5px * var(--ui-scale,1));font-weight:400}.leko-header .header-export:disabled{opacity:.45}.leko-header .toolbar-actions .toolbar-sheet-unit{border:1px solid var(--border);background:var(--shell-card);max-width:170px;min-height:36px;color:var(--shell-ink);font:inherit;font-size:calc(12.5px * var(--ui-scale,1));border-radius:10px;padding:0 8px}.leko-header .toolbar-actions .toolbar-plan-view{justify-content:center;width:40px;min-width:40px;padding:0}:root{--lk-paper:#fff;--lk-canvas:#f5f7fc;--lk-ink:#211a59;--lk-secondary:#57647a;--lk-action:#2f5aeb;--lk-on-action:#fff;--lk-selection:#edf2ff;--lk-line:#d8dfeb;--lk-focus:#2449c7;--lk-success:#08745f;--lk-warning:#79510e;--lk-danger:#b32540;--lk-outline:#78849b;--lk-hover:#e4ebff;--lk-pressed:#d6e0ff;--lk-disabled-surface:#edf0f6;--lk-disabled-text:#637085;--lk-action-hover:#2449c7;--lk-action-pressed:#1c3dae;--lk-on-selection:#2449c7;--lk-icon-stroke:1.7;--lk-radius-field:10px;--lk-radius-button:12px;--lk-radius-panel:16px;--lk-radius-sheet:24px;--lk-space-1:4px;--lk-space-2:8px;--lk-space-3:12px;--lk-space-4:16px;--lk-space-6:24px;--lk-motion-micro:.14s;--lk-motion-panel:.22s;--lk-target:32px}[data-theme=dark]{--lk-paper:#1c2030;--lk-canvas:#151925;--lk-ink:#eef0fa;--lk-secondary:#bac4d8;--lk-action:#a9bbff;--lk-on-action:#151925;--lk-selection:#29385c;--lk-line:#64728c;--lk-focus:#c3cfff;--lk-success:#7ce1c4;--lk-warning:#f4ca72;--lk-danger:#ffaabd;--lk-outline:#8a97ae;--lk-hover:#334771;--lk-pressed:#405986;--lk-disabled-surface:#252c3d;--lk-disabled-text:#a8b2c7;--lk-action-hover:#c3cfff;--lk-action-pressed:#91a8fa;--lk-on-selection:#c3cfff}@media (pointer:coarse){:root{--lk-target:44px}}[data-platform=ios],[data-platform=ipados]{--lk-target:44px}[data-platform=android]{--lk-target:48px}@media (prefers-reduced-motion:reduce){:root{--lk-motion-micro:0s;--lk-motion-panel:0s}}@font-face{font-family:Inter;src:url(/assets/Inter-roman-latin-var-Dx4kXJAl.woff2)format("woff2-variations"),url(/assets/Inter-roman-latin-var-Dx4kXJAl.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root[data-theme=system].prefers-dark{--lk-paper:#1c2030;--lk-canvas:#151925;--lk-ink:#eef0fa;--lk-secondary:#bac4d8;--lk-action:#a9bbff;--lk-on-action:#151925;--lk-selection:#29385c;--lk-line:#64728c;--lk-focus:#c3cfff;--lk-success:#7ce1c4;--lk-warning:#f4ca72;--lk-danger:#ffaabd;--lk-outline:#8a97ae;--lk-hover:#334771;--lk-pressed:#405986;--lk-disabled-surface:#252c3d;--lk-disabled-text:#a8b2c7;--lk-action-hover:#c3cfff;--lk-action-pressed:#91a8fa;--lk-on-selection:#c3cfff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]):not([data-theme=system]){--lk-paper:#1c2030;--lk-canvas:#151925;--lk-ink:#eef0fa;--lk-secondary:#bac4d8;--lk-action:#a9bbff;--lk-on-action:#151925;--lk-selection:#29385c;--lk-line:#64728c;--lk-focus:#c3cfff;--lk-success:#7ce1c4;--lk-warning:#f4ca72;--lk-danger:#ffaabd;--lk-outline:#8a97ae;--lk-hover:#334771;--lk-pressed:#405986;--lk-disabled-surface:#252c3d;--lk-disabled-text:#a8b2c7;--lk-action-hover:#c3cfff;--lk-action-pressed:#91a8fa;--lk-on-selection:#c3cfff}}:root{--lk-font:"Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Roboto, sans-serif;--lk-font-display:28px;--lk-font-title:22px;--lk-font-section:18px;--lk-font-body:14px;--lk-font-input-touch:16px;--lk-font-label:12px;--lk-font-caption:11px;--lk-weight-body:400;--lk-weight-control:500;--lk-weight-emphasis:600;--lk-lh-body:1.5;--lk-lh-control:1.3;--lk-lh-heading:1.2;--lk-space-5:20px;--lk-space-8:32px;--lk-space-10:40px;--lk-space-12:48px;--lk-stroke-separator:1px;--lk-stroke-selection:2px;--lk-stroke-focus:3px;--lk-focus-offset:2px;--lk-easing:cubic-bezier(.2, 0, 0, 1);--lk-shadow:0 8px 30px #1d29520b;--lk-shadow-raised:0 10px 30px #161f471f, 0 1px 3px #161f4714;--lk-shadow-dialog:0 20px 80px #0003;--lk-scrim:#13172d66;--lk-z-overlays:10;--lk-z-toolbars:20;--lk-z-popover:40;--lk-z-tooltip:50;--lk-z-scrim:80;--lk-z-dialog:90;--lk-z-notification:100;--lk-menu-gap:8px;--lk-menu-margin:12px;--lk-menu-width:264px;--lk-menu-max-width:min(320px, calc(100vw - 24px));--lk-inspector-width:320px;--lk-inspector-max-width:360px;--lk-context-bar:48px;--lk-context-bar-max:60px;--lk-target-touch-desktop:44px;--lk-cut-handle:48px}:root[data-theme=dark],:root[data-theme=system].prefers-dark{--lk-shadow:0 8px 30px #0002;--lk-shadow-raised:0 10px 30px #00000073}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]):not([data-theme=system]){--lk-shadow:0 8px 30px #0002;--lk-shadow-raised:0 10px 30px #00000073}}:root[data-platform=ios],:root[data-platform=ipados]{--lk-target:44px}:root[data-platform=android]{--lk-target:48px}:root,:root[data-theme],:root[data-theme].prefers-dark,:root:not([data-theme=light]):not([data-theme=dark]){--bg:var(--lk-canvas);--bg-panel:var(--lk-paper);--bg-canvas:var(--lk-canvas);--surface:var(--lk-paper);--bg-input:var(--lk-paper);--border:var(--lk-line);--text:var(--lk-ink);--text-dim:var(--lk-secondary);--text-strong:var(--lk-ink);--accent:var(--lk-action);--ok:var(--lk-success);--warn:var(--lk-warning);--err:var(--lk-danger);--shell-card:var(--lk-paper);--shell-ink:var(--lk-ink);--shell-soft:var(--lk-selection);--shell-shadow:var(--lk-shadow-raised);--shell-radius:var(--lk-radius-panel);--muted:var(--lk-secondary);--line:var(--lk-line);--accent-ink:var(--lk-on-action);--danger:var(--lk-danger);--radius:var(--lk-radius-field);font-family:var(--lk-font)}body{font-family:var(--lk-font);color:var(--lk-ink);background:var(--lk-canvas)}button,input,select,textarea{font-family:inherit}:where(button,a,input,select,textarea,summary,[role=button],[role=tab],[role=menuitem],[role=menuitemradio],[role=option],[tabindex]):focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,canvas:focus-visible{outline:var(--lk-stroke-focus) solid var(--lk-focus);outline-offset:var(--lk-focus-offset)}.btn{border-color:var(--lk-outline);border-radius:var(--lk-radius-button);background:var(--lk-paper);color:var(--lk-ink);font-weight:var(--lk-weight-emphasis);transition:background var(--lk-motion-micro) var(--lk-easing)}.btn:hover:not(:disabled){background:var(--lk-hover);border-color:var(--lk-outline)}.btn:active:not(:disabled){background:var(--lk-pressed)}.btn[aria-pressed=true],.btn.is-selected{background:var(--lk-selection);color:var(--lk-on-selection);border-color:var(--lk-action);box-shadow:inset 0 calc(-1 * var(--lk-stroke-selection)) var(--lk-action)}.btn-primary,.btn.primary,.dock-chip.is-primary,.segmented-option.is-active{background:var(--lk-action);color:var(--lk-on-action);border-color:#0000}.btn-primary:hover:not(:disabled),.btn.primary:hover:not(:disabled),.dock-chip.is-primary:hover:not(:disabled){background:var(--lk-action-hover);color:var(--lk-on-action)}.btn-primary:active:not(:disabled),.btn.primary:active:not(:disabled),.dock-chip.is-primary:active:not(:disabled){background:var(--lk-action-pressed)}.btn:disabled,.btn-primary:disabled,.btn.primary:disabled,.dock-chip:disabled{background:var(--lk-disabled-surface);color:var(--lk-disabled-text);border-color:var(--lk-line);opacity:1;cursor:default}.btn.danger,.btn-danger{color:var(--lk-danger);border-color:var(--lk-danger)}.dock-btn{color:var(--lk-ink);background:var(--lk-paper)}.dock-btn:hover:not(:disabled){background:var(--lk-hover);border-color:#0000}.dock-btn:active:not(:disabled){background:var(--lk-pressed)}.dock-btn.is-active,.dock-btn[aria-pressed=true]{background:var(--lk-selection);color:var(--lk-on-selection);box-shadow:inset 0 calc(-1 * var(--lk-stroke-selection)) var(--lk-action);border-color:#0000}.dock-btn.is-disabled,.dock-btn:disabled{color:var(--lk-disabled-text);opacity:1}.dock-section.is-active,.dock-section[aria-pressed=true],.dock-section[aria-selected=true]{background:var(--lk-selection);color:var(--lk-on-selection);box-shadow:inset 0 calc(-1 * var(--lk-stroke-selection)) var(--lk-action)}.dock-section:hover:not(.is-active){background:var(--lk-hover)}.dock-menu{background:var(--lk-paper);color:var(--lk-ink);border-color:var(--lk-line);box-shadow:var(--lk-shadow-raised);z-index:var(--lk-z-popover)}.dock-menu-item:hover{background:var(--lk-hover)}.dock-menu-item.is-active{background:var(--lk-selection);color:var(--lk-on-selection)}.dock-menu-item.is-disabled{color:var(--lk-disabled-text);opacity:1}.render-option[aria-pressed=true],.render-option[aria-checked=true]{background:var(--lk-selection);color:var(--lk-on-selection)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea{border-color:var(--lk-outline)}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--lk-danger)}::placeholder{color:var(--lk-secondary);opacity:1}@media (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:max(var(--lk-font-input-touch), 1em)}.btn,.btn-icon,.dock-btn,.dock-chip,.dock-section,.dock-menu-item,.render-option,.mp-icon{min-height:var(--lk-target)}.btn-icon,.mp-icon{min-width:var(--lk-target)}}:root[data-platform=ios] :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea),:root[data-platform=android] :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){font-size:max(var(--lk-font-input-touch), 1em)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:0s!important;animation-duration:0s!important}}@media (forced-colors:active){.btn,.dock-btn,input,select{border:1px solid buttontext}.dock-btn.is-active,.btn[aria-pressed=true]{outline:2px solid highlight}}svg.icon{flex:none;overflow:visible}.lk-btn{justify-content:center;align-items:center;gap:var(--lk-space-2);min-height:max(var(--lk-target), 36px);padding:0 var(--lk-space-4);border:1px solid var(--lk-outline);border-radius:var(--lk-radius-button);background:var(--lk-paper);color:var(--lk-ink);font:var(--lk-weight-control) var(--lk-font-body)/var(--lk-lh-control) var(--lk-font);cursor:pointer;transition:background var(--lk-motion-micro) var(--lk-easing);display:inline-flex}.lk-btn:hover:not(:disabled){background:var(--lk-hover)}.lk-btn:active:not(:disabled){background:var(--lk-pressed)}.lk-btn[aria-pressed=true],.lk-btn[aria-selected=true]{background:var(--lk-selection);color:var(--lk-on-selection);border-color:var(--lk-action);box-shadow:inset 0 calc(-1 * var(--lk-stroke-selection)) var(--lk-action)}.lk-btn.is-primary{background:var(--lk-action);color:var(--lk-on-action);font-weight:var(--lk-weight-emphasis);border-color:#0000}.lk-btn.is-primary:hover:not(:disabled){background:var(--lk-action-hover)}.lk-btn.is-primary:active:not(:disabled){background:var(--lk-action-pressed)}.lk-btn.is-danger{color:var(--lk-danger);border-color:var(--lk-danger)}.lk-btn.is-quiet{background:0 0;border-color:#0000}.lk-btn:disabled{background:var(--lk-disabled-surface);color:var(--lk-disabled-text);border-color:var(--lk-line);cursor:default}.lk-btn.is-icon{width:max(var(--lk-target), 32px);min-width:max(var(--lk-target), 32px);padding:0}.lk-toolbar{gap:var(--lk-space-1);padding:var(--lk-space-1);background:var(--lk-paper);border:1px solid var(--lk-line);border-radius:var(--lk-radius-panel);box-shadow:var(--lk-shadow);display:flex}.lk-tool{min-width:74px;min-height:max(var(--lk-target), 56px);border-radius:var(--lk-radius-field);color:var(--lk-ink);font:var(--lk-weight-control) var(--lk-font-caption)/var(--lk-lh-control) var(--lk-font);cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:9px 8px;display:flex}.lk-tool:hover:not(:disabled){background:var(--lk-hover)}.lk-tool:active:not(:disabled){background:var(--lk-pressed)}.lk-tool[aria-pressed=true],.lk-tool[aria-selected=true]{background:var(--lk-selection);color:var(--lk-on-selection);box-shadow:inset 0 calc(-1 * var(--lk-stroke-selection)) var(--lk-action)}.lk-tool:disabled{color:var(--lk-disabled-text);cursor:default}.lk-field{gap:var(--lk-space-1);font-size:var(--lk-font-label);color:var(--lk-secondary);display:grid}.lk-field>span{font-weight:var(--lk-weight-control)}.lk-input{min-height:max(var(--lk-target), 36px);padding:0 var(--lk-space-3);border:1px solid var(--lk-outline);border-radius:var(--lk-radius-field);background:var(--lk-paper);color:var(--lk-ink);font:var(--lk-weight-body) var(--lk-font-body)/var(--lk-lh-control) var(--lk-font)}.lk-input:disabled{background:var(--lk-disabled-surface);color:var(--lk-disabled-text)}.lk-input[aria-invalid=true]{border-color:var(--lk-danger)}.lk-field-error{color:var(--lk-danger);font-size:var(--lk-font-label)}@media (pointer:coarse){.lk-input{font-size:var(--lk-font-input-touch)}}.lk-chip{min-height:28px;padding:0 var(--lk-space-3);border:1px solid var(--lk-outline);background:var(--lk-paper);color:var(--lk-ink);font:var(--lk-weight-control) var(--lk-font-label)/1 var(--lk-font);border-radius:999px;align-items:center;gap:6px;display:inline-flex}button.lk-chip{cursor:pointer;min-height:max(28px, min(var(--lk-target), 44px))}button.lk-chip:hover:not(:disabled){background:var(--lk-hover)}.lk-chip[aria-pressed=true],.lk-chip[aria-selected=true]{background:var(--lk-selection);color:var(--lk-on-selection);border-color:var(--lk-action)}.lk-chip.is-success{color:var(--lk-success);border-color:currentColor}.lk-chip.is-warning{color:var(--lk-warning);border-color:currentColor}.lk-chip.is-danger{color:var(--lk-danger);border-color:currentColor}.lk-tabs{gap:var(--lk-space-1);border-bottom:1px solid var(--lk-line);display:flex;overflow-x:auto}.lk-tab{align-items:center;gap:var(--lk-space-2);min-height:max(var(--lk-target), 40px);padding:0 var(--lk-space-4);border-radius:var(--lk-radius-field) var(--lk-radius-field) 0 0;color:var(--lk-secondary);font:var(--lk-weight-control) var(--lk-font-body)/1 var(--lk-font);cursor:pointer;background:0 0;border:0;display:inline-flex}.lk-tab:hover{background:var(--lk-hover);color:var(--lk-ink)}.lk-tab[aria-selected=true]{color:var(--lk-on-selection);background:var(--lk-selection);box-shadow:inset 0 calc(-1 * var(--lk-stroke-selection)) var(--lk-action)}.lk-menu{z-index:var(--lk-z-popover);width:var(--lk-menu-width);max-width:var(--lk-menu-max-width);background:var(--lk-paper);max-height:min(480px,100vh - 24px);color:var(--lk-ink);border:1px solid var(--lk-line);border-radius:var(--lk-radius-panel);box-shadow:var(--lk-shadow-raised);flex-direction:column;gap:2px;padding:6px;display:flex;position:fixed;overflow-y:auto}.lk-menu-item{align-items:center;gap:var(--lk-space-3);min-height:max(var(--lk-target), 40px);padding:0 var(--lk-space-3);border-radius:var(--lk-radius-field);color:inherit;font:var(--lk-weight-body) var(--lk-font-body)/var(--lk-lh-control) var(--lk-font);text-align:start;cursor:pointer;background:0 0;border:0;display:flex}.lk-menu-item:hover:not(:disabled),.lk-menu-item:focus-visible{background:var(--lk-hover)}.lk-menu-item[aria-checked=true]{background:var(--lk-selection);color:var(--lk-on-selection)}.lk-menu-item:disabled{color:var(--lk-disabled-text);cursor:default}.lk-propbar{align-items:center;gap:var(--lk-space-2);height:var(--lk-context-bar);max-height:var(--lk-context-bar-max);max-width:calc(100% - 24px);padding:0 var(--lk-space-3);background:var(--lk-paper);color:var(--lk-ink);border:1px solid var(--lk-line);border-radius:var(--lk-radius-button);box-shadow:var(--lk-shadow);font-size:var(--lk-font-label);z-index:var(--lk-z-popover);display:flex;overflow-x:auto}.lk-propbar .lk-input{width:72px;min-height:32px;padding:0 8px}.lk-propbar .lk-btn.is-icon{width:32px;min-width:32px;min-height:32px}@media (pointer:coarse){.lk-propbar{height:auto;min-height:56px;max-height:none}.lk-propbar .lk-input,.lk-propbar .lk-btn.is-icon{min-height:var(--lk-target);min-width:var(--lk-target)}}.lk-scrim{z-index:var(--lk-z-scrim);background:var(--lk-scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:var(--lk-space-3);place-items:center;display:grid;position:fixed;inset:0}.lk-dialog{z-index:var(--lk-z-dialog);background:var(--lk-paper);width:min(600px,100vw - 24px);max-height:85dvh;color:var(--lk-ink);border:1px solid var(--lk-line);box-shadow:var(--lk-shadow-dialog);border-radius:20px;flex-direction:column;display:flex;position:relative}.lk-dialog-head{justify-content:space-between;align-items:center;gap:var(--lk-space-3);padding:var(--lk-space-4) var(--lk-space-4) var(--lk-space-2) var(--lk-space-6);display:flex}.lk-dialog-head h2{font:var(--lk-weight-emphasis) var(--lk-font-title)/var(--lk-lh-heading) var(--lk-font);margin:0}.lk-dialog-body{padding:0 var(--lk-space-6) var(--lk-space-4);overflow:auto}.lk-dialog-actions{justify-content:flex-end;gap:var(--lk-space-2);padding:var(--lk-space-3) var(--lk-space-6) var(--lk-space-6);display:flex}@media (width<=699px){.lk-scrim{align-items:end;padding:0}.lk-dialog{border-radius:var(--lk-radius-sheet) var(--lk-radius-sheet) 0 0;width:100%;max-height:92dvh;padding-bottom:env(safe-area-inset-bottom)}}.lk-inspector{z-index:var(--lk-z-popover);top:var(--lk-space-3);right:var(--lk-space-3);bottom:var(--lk-space-3);width:var(--lk-inspector-width);max-width:var(--lk-inspector-max-width);background:var(--lk-paper);color:var(--lk-ink);border:1px solid var(--lk-line);border-radius:var(--lk-radius-panel);box-shadow:var(--lk-shadow-raised);flex-direction:column;display:flex;position:absolute;overflow:hidden}.lk-inspector>header{justify-content:space-between;align-items:center;gap:var(--lk-space-2);padding:var(--lk-space-3) var(--lk-space-3) var(--lk-space-2) var(--lk-space-4);font:var(--lk-weight-emphasis) var(--lk-font-body)/1.3 var(--lk-font);display:flex}.lk-inspector>.lk-inspector-body{padding:0 var(--lk-space-4) var(--lk-space-4);overflow:auto}@media (width<=999px){.lk-inspector{top:auto;left:var(--lk-space-3);border-radius:var(--lk-radius-sheet) var(--lk-radius-sheet) var(--lk-radius-panel) var(--lk-radius-panel);width:auto;max-width:none;max-height:45%}}.lk-tooltip{z-index:var(--lk-z-tooltip);background:var(--lk-ink);color:var(--lk-paper);font:var(--lk-weight-control) var(--lk-font-caption)/1.3 var(--lk-font);pointer-events:none;border-radius:6px;padding:4px 8px;position:fixed}.leko-wordmark img,img.leko-logo{filter:none!important;background:0 0!important}button.mp-twisty{width:max(32px, var(--lk-target));min-height:max(32px, var(--lk-target))}.drawing-fonts>button,button.lk-viewscale-trigger{min-height:32px;margin-block:-5px}button.lk-close{--lk-close-size:max(var(--lk-target,32px), 40px);color:inherit;cursor:pointer;vertical-align:middle;transition:background var(--lk-motion-micro,.12s) var(--lk-easing,ease);background:0 0;transform:none;box-sizing:border-box!important;width:var(--lk-close-size)!important;height:var(--lk-close-size)!important;border-radius:var(--lk-close-radius,50%)!important;text-indent:0!important;min-width:0!important;max-width:none!important;min-height:0!important;max-height:none!important;box-shadow:none!important;border:0!important;flex:none!important;place-content:center!important;place-items:center!important;gap:0!important;padding:0!important;font-size:0!important;line-height:0!important;display:inline-grid!important}button.lk-close.is-sm{--lk-close-size:max(var(--lk-target,32px), 32px)}button.lk-close.is-xs{--lk-close-size:28px}@media (pointer:coarse){button.lk-close.is-xs,button.lk-close.is-sm,button.lk-close{--lk-close-size:max(var(--lk-target,44px), 44px)}}:root[data-platform=ios] button.lk-close,:root[data-platform=ipados] button.lk-close,:root[data-platform=android] button.lk-close{--lk-close-size:var(--lk-target)}button.lk-close>svg{flex:none!important;grid-area:1/1!important;margin:0!important;display:block!important;position:static!important;transform:none!important}button.lk-close:before,button.lk-close:after{content:none!important}button.lk-close:hover:not(:disabled){background:color-mix(in srgb, currentColor 10%, transparent)}button.lk-close:active:not(:disabled){background:color-mix(in srgb, currentColor 16%, transparent)}button.lk-close:focus-visible{outline:var(--lk-stroke-focus,3px) solid var(--lk-focus,#4f6ef7)!important;outline-offset:var(--lk-focus-offset,2px)!important}button.lk-close:disabled{opacity:.45;cursor:default}.toolbar{padding-top:max(8px, env(safe-area-inset-top,0px))}.status-bar{padding-bottom:env(safe-area-inset-bottom,0)}.toolbar,.status-bar,.dock{padding-left:max(8px, env(safe-area-inset-left,0px));padding-right:max(8px, env(safe-area-inset-right,0px))}:root[data-touch-layout] .dock-stack{width:min(650px, calc(100% - 2 * var(--shell-gap)));bottom:max(var(--shell-gap), env(safe-area-inset-bottom,0px))}:root[data-touch-layout=phone] .dock-stack{width:auto;max-width:none;left:10px;right:10px;bottom:max(8px, env(safe-area-inset-bottom,0px));transform:none}@media (width<=700px){:root[data-touch-layout=phone] .dock-stack{box-shadow:none;background:0 0;border:0;margin:0 10px 8px;bottom:auto;left:auto;right:auto}}:root[data-touch-layout]:has(.touch-bottom-panel) .dock-stack{display:none}:root[data-touch-layout] .dock-stack .touch-dock{background:var(--lk-paper);border:1px solid var(--lk-line);box-shadow:var(--shell-shadow,var(--lk-shadow));border-radius:16px;flex-direction:column;gap:0;display:flex;overflow:hidden;padding:0!important}.touch-dock-line{font:var(--lk-weight-body) 12px/1.35 var(--lk-font);color:var(--lk-secondary);flex-wrap:wrap;align-items:center;gap:8px;min-height:28px;padding:8px 14px 2px;display:flex}.touch-dock-line .dock-prompt{color:var(--lk-ink);flex:160px;font-size:13px}.touch-dock-line .dock-chip,.touch-dock-line button{min-height:var(--lk-target)}.touch-dock-line .cut-controls{flex-wrap:wrap;gap:8px;width:100%;padding-bottom:6px;display:flex}.touch-row,.touch-tabs{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:2px;padding:4px;display:grid}.touch-tabs{border-top:1px solid var(--lk-line)}.touch-cmd,.touch-tab{min-height:max(var(--lk-target), 49px);min-width:var(--lk-target);color:var(--lk-ink);font:var(--lk-weight-control) 12px/1.15 var(--lk-font);text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:4px 2px;display:flex}.touch-cmd span,.touch-tab span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.touch-cmd:active,.touch-tab:active{background:var(--lk-pressed,#e9edf8)}.touch-cmd.is-active,.touch-tab.is-active{background:var(--lk-selection);color:var(--lk-action)}.touch-cmd.is-disabled{opacity:.45}.touch-cmd:focus-visible,.touch-tab:focus-visible,.touch-tile:focus-visible,.touch-rail-btn:focus-visible,.touch-menu-item:focus-visible,.touch-sheet-icon:focus-visible{outline:3px solid var(--lk-focus);outline-offset:1px}:root[data-touch-layout=phone][data-orientation=landscape] .touch-cmd,:root[data-touch-layout=phone][data-orientation=landscape] .touch-tab{min-height:var(--lk-target);flex-direction:row;gap:6px}:root[data-touch-layout] .dock-stack .dock-collapse,:root[data-touch-layout] .dock-stack .dock-next{display:none}:root[data-touch-layout] .dock-stack .param-bar,:root[data-touch-layout] .dock-stack .ifc-param-bar{max-width:100%;overflow-x:auto}.touch-menu,.touch-orientation{z-index:95;background:var(--lk-paper);color:var(--lk-ink);border:1px solid var(--lk-line);box-shadow:var(--lk-shadow-raised);border-radius:16px;gap:2px;padding:8px;display:grid;position:fixed}.touch-orientation{width:230px;max-height:70dvh;position:absolute;top:0;right:calc(100% + 8px);overflow:auto}.touch-menu-item{min-height:var(--lk-target);color:inherit;font:var(--lk-weight-body) 15px/1.3 var(--lk-font);text-align:start;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:6px 12px;display:flex}.touch-menu-item.is-active{background:var(--lk-selection);color:var(--lk-action)}.touch-menu-item.is-disabled{opacity:.5}.touch-menu-text{gap:2px;display:grid}.touch-menu-text small{color:var(--lk-secondary);font-size:12px}.touch-sheet-scrim{z-index:90;background:#161f4747;position:fixed;inset:0}.touch-sheet{z-index:91;left:0;right:0;bottom:var(--lk-keyboard,0px);max-height:min(70dvh, calc(100dvh - var(--lk-keyboard,0px) - 24px));background:var(--lk-paper);color:var(--lk-ink);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);transition:max-height var(--lk-motion-micro,.15s) var(--lk-easing,ease);border-radius:24px 24px 0 0;flex-direction:column;display:flex;position:fixed;box-shadow:0 -10px 30px #161f4729}.touch-sheet.is-expanded{max-height:calc(100dvh - var(--lk-keyboard,0px) - 24px)}:root[data-touch-layout^=tablet] .touch-sheet{left:12px;right:12px;bottom:calc(12px + var(--lk-keyboard,0px));border-radius:24px}:root[data-touch-layout=tablet-wide] .touch-sheet{width:min(720px,100% - 24px);margin:0 auto;left:0;right:0}.touch-sheet-grabber{cursor:grab;touch-action:none;flex:none;place-items:center;height:22px;display:grid}.touch-sheet-grabber span{background:var(--lk-outline,#c5cbd8);border-radius:3px;width:36px;height:5px}.touch-sheet-head{border-bottom:1px solid var(--lk-line);align-items:center;gap:8px;padding:0 12px 10px 16px;display:flex}.touch-sheet-head h2{font:var(--lk-weight-emphasis,600) 18px/1.3 var(--lk-font);color:var(--lk-ink);flex:1;margin:0}.touch-sheet-icon{width:var(--lk-target);height:var(--lk-target);color:var(--lk-ink);cursor:pointer;background:0 0;border:0;border-radius:12px;place-items:center;display:grid}.touch-sheet-body{overscroll-behavior:contain;padding:16px;overflow:auto}.touch-sheet-foot{border-top:1px solid var(--lk-line);justify-content:flex-end;gap:8px;padding:8px 16px 12px;display:flex}.touch-tiles{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;display:grid}:root[data-touch-layout=phone] .touch-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}:root[data-touch-layout=phone][data-orientation=landscape] .touch-tiles{grid-template-columns:repeat(6,minmax(0,1fr))}.touch-tile{border:1px solid var(--lk-line);background:var(--lk-paper);min-height:72px;color:var(--lk-ink);font:var(--lk-weight-control) 12px/1.2 var(--lk-font);text-align:center;cursor:pointer;touch-action:manipulation;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:8px 4px;display:flex}.touch-tile span{overflow-wrap:anywhere}.touch-tile small{color:var(--lk-secondary);font-size:11px}.touch-tile.is-active{background:var(--lk-selection);color:var(--lk-action);border-color:var(--lk-action)}.touch-tile.is-disabled{opacity:.5}.touch-tile.is-wide{min-height:var(--lk-target);flex-direction:row;grid-column:1/-1;justify-content:flex-start;padding:0 16px;font-size:15px}.touch-tile:active{background:var(--lk-pressed,#e9edf8)}.touch-view-rail{z-index:11;top:12px;right:max(12px, env(safe-area-inset-right,0px));gap:6px;display:grid;position:absolute}.touch-rail-btn{width:max(var(--lk-target), 44px);height:max(var(--lk-target), 44px);border:1px solid var(--lk-line);background:var(--lk-paper);color:var(--lk-ink);box-shadow:var(--lk-shadow);cursor:pointer;touch-action:manipulation;border-radius:12px;place-items:center;display:grid}.touch-rail-btn[aria-expanded=true]{background:var(--lk-selection);color:var(--lk-action)}.touch-side-panel{flex:0 0 var(--lk-inspector-width,320px);width:var(--lk-inspector-width,320px);background:var(--lk-paper);min-height:0;display:flex}.touch-side-panel>.model-panel{width:auto;max-width:none;box-shadow:none;resize:none;border-radius:0;flex:auto;position:static}.touch-bottom-panel{z-index:30;left:0;right:0;bottom:var(--lk-keyboard,0px);max-height:min(52dvh, calc(100dvh - var(--lk-keyboard,0px) - 80px));background:var(--lk-paper);padding-bottom:env(safe-area-inset-bottom,0px);border-radius:24px 24px 0 0;flex-direction:column;display:flex;position:fixed;box-shadow:0 -10px 30px #161f4729}.touch-bottom-panel.is-expanded{max-height:calc(100dvh - var(--lk-keyboard,0px) - 24px)}:root[data-touch-layout=tablet-narrow] .touch-bottom-panel{left:12px;right:12px;bottom:calc(12px + var(--lk-keyboard,0px));border-radius:24px}.touch-bottom-panel>.model-panel{width:auto;max-width:none;min-height:0;max-height:none;box-shadow:none;resize:none;background:0 0;border:0;border-radius:0;flex:auto;padding-top:0;position:static}.touch-panel-top{justify-content:center;align-items:center;min-height:30px;display:flex;position:relative}.touch-panel-top .touch-sheet-grabber{flex:1;height:30px}.touch-panel-expand{position:absolute;top:0;right:8px}.touch-bottom-panel .model-panel>header{min-height:var(--lk-target)}:root[data-touch-layout] .model-panel{font-size:14px}:root[data-touch-layout] .mp-icon,:root[data-touch-layout] .mp-eye,:root[data-touch-layout] .mp-twisty{min-width:var(--lk-target);min-height:var(--lk-target)}:root[data-touch-layout] .mp-node,:root[data-touch-layout] .mp-tabs [role=tab],:root[data-touch-layout] .mp-group summary{min-height:var(--lk-target)}:root[data-touch-layout] :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){font-size:max(16px,1em)}:root[data-touch-layout] .shortcut{min-width:var(--lk-target);min-height:var(--lk-target)}:root[data-touch-layout] .file-tab-close,:root[data-touch-layout] .toolbar button,:root[data-touch-layout] .leko-header button{min-height:var(--lk-target);min-width:var(--lk-target)}:root[data-touch-layout] .status-bar{font-size:12px}:root[data-touch-layout] .mp-name small,:root[data-touch-layout] .mp-foot,:root[data-touch-layout] .mp-quantities dd small{font-size:11px}:root[data-touch-layout=phone] .touch-header-btn{order:1}:root[data-touch-layout=phone] .leko-header .touch-header-btn{margin-left:0}:root[data-touch-layout=phone] .leko-header .touch-header-btn.is-first{margin-left:auto}:root[data-touch-layout=phone] .leko-header .toolbar-more{margin-left:0}:root[data-touch-layout] .leko-header{padding-top:max(8px, env(safe-area-inset-top,0px))}@media (width>=701px){:root[data-touch-layout] .dock-stack .touch-dock{box-shadow:none;background:0 0;border:0;border-radius:0}}:root[data-touch-layout=tablet-narrow] .toolbar.leko-header{flex-wrap:wrap;gap:6px}:root[data-touch-layout=tablet-narrow] .leko-header .toolbar-title{order:0}:root[data-touch-layout=tablet-narrow] .leko-header .touch-header-btn{order:1}:root[data-touch-layout=tablet-narrow] .leko-header .touch-header-btn.is-first{margin-left:auto}:root[data-touch-layout=tablet-narrow] .leko-header .toolbar-more{order:1}:root[data-touch-layout=tablet-narrow] .leko-header .toolbar-help{order:2}:root[data-touch-layout=tablet-narrow] .leko-header>.account-button-wrap{order:3}:root[data-touch-layout=tablet-narrow] .leko-header .toolbar-spacer{flex:1 0 100%;order:4;height:0;display:block!important}:root[data-touch-layout=tablet-narrow] .leko-header .file-tabs{flex:1 1 0;order:5}:root[data-touch-layout=tablet-narrow] .leko-header .toolbar-actions{order:6}:root[data-touch-layout=tablet-narrow] .leko-header.is-home .toolbar-spacer,:root[data-touch-layout=tablet-narrow] .leko-header.is-home .file-tabs:empty{display:none}.touch-confirm-text{white-space:pre-line;font:var(--lk-weight-body) 15px/1.45 var(--lk-font);color:var(--lk-ink);margin:0}.touch-confirm .touch-sheet-foot .lk-btn{min-height:var(--lk-target);flex:1 1 0}:root[data-touch-layout=tablet-wide] .acct-plan-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}:root[data-touch-layout=phone] .acct-plan-grid{grid-template-columns:1fr;gap:10px;display:grid}:root[data-touch-layout] .acct-currency .btn,:root[data-touch-layout] .acct-period-switch .btn,:root[data-touch-layout] .acct-compare-toggle{min-height:var(--lk-target)}:root[data-touch-layout] .acct-compare{font-size:14px}:root[data-touch-layout] .history-buttons .btn-icon{min-width:var(--lk-target)}:root[data-touch-layout] .drawing-fonts>button{min-height:var(--lk-target)}
