:root{--text:#4f5561;--muted:#707888;--text-h:#17181c;--bg:#f6f5f1;--panel:#fff;--border:#d9d6cd;--preview-wash:#5f6b7a;--control-bg:#efeee8;--button-hover:#f1f4f8;--focus:#2e86ab;--source-bg:#101216;--source-text:#f3f6f8;--shadow:#1e222c14 0 14px 34px;--sans:Inter, ui-sans-serif, system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:16px/1.45 var(--sans);letter-spacing:0;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}h1,h2,p{margin:0}h1,h2{color:var(--text-h);letter-spacing:0;font-weight:650}h1{font-size:clamp(34px,6vw,56px);line-height:1}h2{font-size:18px;line-height:1.2}.app-shell{grid-template-rows:auto minmax(560px,1fr);gap:12px;min-width:0;min-height:100svh;padding:12px clamp(12px,2vw,28px);display:grid;overflow-x:hidden}.top-control-area{gap:10px;width:min(100%,1680px);min-width:0;margin:0 auto;display:grid}.app-header{text-align:left;justify-content:space-between;align-items:center;gap:16px;min-width:0;margin:0;display:flex}.app-header h1{font-size:clamp(22px,3vw,34px);line-height:1.05}.app-header p{color:var(--text);margin-top:4px;font-size:13px;line-height:1.35}.status-strip{flex-wrap:wrap;justify-content:end;gap:8px;min-width:220px;display:flex}.status-strip span{border:1px solid var(--border);background:var(--panel);color:var(--muted);border-radius:999px;padding:7px 10px;font-size:13px;line-height:1}.toolbar{border:1px solid var(--border);background:var(--panel);width:100%;min-width:0;max-height:min(34svh,320px);box-shadow:var(--shadow);border-radius:8px;flex-wrap:wrap;place-content:flex-start;align-items:flex-start;gap:8px 10px;margin:0;padding:10px;display:flex;overflow:auto}.control-group{flex-wrap:wrap;flex:0 auto;align-items:center;gap:10px;min-width:0;display:flex}.control-stack{flex:280px;gap:5px;min-width:0;display:grid}.example-control-stack{flex:1 0 100%;max-height:none;padding-right:0;overflow:visible}.example-control-group{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;width:100%;display:grid}.control-label{color:var(--muted);font-size:13px;font-weight:650}.toolbar-select,.toolbar-text-input,.direct-create-field input,.direct-create-field select,.direct-coordinate-list textarea,.work-plane-fixed input,.custom-work-plane-field input{border:1px solid var(--border);min-height:34px;color:var(--text-h);background:#fff;border-radius:5px;font-size:13px}.toolbar-select{max-width:160px;padding:6px 28px 6px 10px}.toolbar-text-input{width:min(220px,100%);min-width:150px;font-family:var(--mono);padding:6px 10px}.filename-field{grid-template-columns:auto minmax(150px,220px);align-items:center;gap:6px;min-width:0;display:inline-grid}.file-action-strip{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.camera-panel{grid-template-rows:auto;gap:8px;max-height:min(34svh,300px);padding:10px 12px;overflow:auto}.camera-summary-row{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.camera-summary-toggle{min-width:0;min-height:34px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;flex-wrap:wrap;flex:160px;align-items:center;gap:6px;padding:5px 7px;display:flex}.camera-summary-toggle:hover{background:var(--button-hover)}.camera-summary-toggle:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.camera-disclosure{width:1ch;color:var(--muted);font-family:var(--mono);font-size:13px;line-height:1}.camera-summary{min-width:0;color:var(--text-h);overflow-wrap:anywhere;font-size:12px;font-weight:650;line-height:1.3}.camera-status{min-width:0;font-size:12px}.camera-details{grid-template-columns:minmax(280px,.9fr) minmax(300px,1.2fr) minmax(190px,.45fr);align-items:start;gap:8px;min-width:0;display:grid}.camera-orientation-panel{grid-template-columns:minmax(170px,1fr) 150px;align-items:center;gap:10px;min-width:0;display:grid}.camera-field-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:7px;min-width:0;display:grid}.camera-field,.camera-preset-field{min-width:0;color:var(--muted);grid-template-columns:52px minmax(0,1fr);align-items:center;gap:6px;font-size:13px;font-weight:650;display:inline-grid}.camera-slider-inputs{grid-template-columns:minmax(110px,1fr) 72px;align-items:center;gap:8px;min-width:0;display:grid}.camera-slider{width:100%;min-width:0;accent-color:var(--accent)}.camera-number-input,.camera-preset-field select{border:1px solid var(--border);width:100%;min-width:0;min-height:30px;color:var(--text-h);font-family:var(--mono);background:#fff;border-radius:5px;padding:5px 6px;font-size:13px}.camera-preset-field{grid-template-columns:auto minmax(120px,1fr)}.camera-reference-graphic{aspect-ratio:15/11;width:150px;max-width:100%;color:var(--muted);fill:currentColor;stroke:currentColor}.camera-reference-axis{fill:none;stroke-width:2px}.camera-reference-arc{fill:none;stroke:var(--accent);stroke-width:1.6px}.camera-reference-origin{fill:var(--accent);stroke:none}.camera-reference-graphic text{fill:var(--text-h);stroke:none;font-family:var(--mono);font-size:11px}.camera-help{color:var(--muted);margin:0;font-size:11px;line-height:1.35}.work-plane-control{border:1px solid var(--border);background:var(--control-bg);border-radius:7px;flex:420px;gap:8px;min-width:0;max-height:220px;padding:8px 10px;display:grid;overflow:auto}.work-plane-summary-row{flex-wrap:wrap;align-items:center;gap:8px 12px;min-width:0;display:flex}.work-plane-summary-toggle{min-width:0;min-height:34px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;flex-wrap:wrap;flex:280px;align-items:center;gap:8px;padding:6px 8px;display:flex}.work-plane-summary-toggle:hover{background:var(--button-hover)}.work-plane-summary-toggle:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.work-plane-disclosure{width:1ch;color:var(--muted);font-family:var(--mono);font-size:13px;line-height:1}.work-plane-summary{min-width:0;color:var(--text-h);overflow-wrap:anywhere;font-size:13px;font-weight:650;line-height:1.3}.work-plane-status{flex:260px}.work-plane-preset-row{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.work-plane-details{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:10px;min-width:0;display:grid}.work-plane-panel{border:1px solid var(--border);background:var(--panel);border-radius:6px;gap:10px;min-width:0;padding:10px;display:grid}.work-plane-section-heading{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.work-plane-section-heading h3{min-width:0;color:var(--text-h);overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:700;line-height:1.25}.work-plane-preset-field{color:var(--muted);grid-template-columns:auto minmax(120px,160px);align-items:center;gap:6px;font-size:13px;font-weight:650;display:inline-grid}.work-plane-preset-field .toolbar-select{width:100%;max-width:none}.work-plane-fixed{color:var(--muted);grid-template-columns:auto 60px;align-items:center;gap:6px;font-size:13px;font-weight:650;display:inline-grid}.work-plane-fixed input{width:100%;min-width:0;min-height:30px;font-family:var(--mono);padding:5px 6px}.custom-work-plane-form{align-content:start}.work-plane-vector-stack{gap:8px;min-width:0;display:grid}.work-plane-vector-row{grid-template-columns:minmax(58px,74px) repeat(3,minmax(72px,1fr));align-items:center;gap:8px;min-width:0;display:grid}.work-plane-vector-label,.work-plane-picked-count{color:var(--muted);font-size:13px;font-weight:650;line-height:1.3}.custom-work-plane-field{min-width:0;color:var(--muted);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px;font-size:13px;font-weight:650;display:inline-grid}.custom-work-plane-field input{width:100%;min-width:0;min-height:30px;font-family:var(--mono);padding:5px 6px}.work-plane-action-row{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.work-plane-control .toolbar-button:disabled{border-color:color-mix(in srgb, var(--border) 72%, transparent);background:#fbfbfa}.variable-manager{border:1px solid var(--border);background:var(--control-bg);border-radius:7px;flex:380px;gap:8px;min-width:0;max-height:220px;padding:8px 10px;display:grid;overflow:auto}.variable-manager-summary-row{flex-wrap:wrap;align-items:center;gap:8px 12px;min-width:0;display:flex}.variable-manager-summary-toggle{min-width:0;min-height:34px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;flex-wrap:wrap;flex:280px;align-items:center;gap:8px;padding:6px 8px;display:flex}.variable-manager-summary-toggle:hover{background:var(--button-hover)}.variable-manager-summary-toggle:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.variable-manager-disclosure{width:1ch;color:var(--muted);font-family:var(--mono);font-size:13px;line-height:1}.variable-manager-summary{min-width:0;color:var(--text-h);overflow-wrap:anywhere;font-size:13px;font-weight:650;line-height:1.3}.variable-manager-status{flex:260px}.variable-manager-details{gap:8px;min-width:0;max-height:260px;display:grid;overflow:auto}.variable-empty-state{color:var(--muted);font-size:13px}.variable-row{border:1px solid var(--border);background:#fff;border-radius:7px;grid-template-columns:minmax(100px,160px) minmax(150px,1fr) minmax(84px,max-content) minmax(92px,max-content) max-content;align-items:center;gap:6px 8px;min-width:0;padding:7px 8px;display:grid}.variable-field{min-width:0;color:var(--muted);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;font-size:13px;font-weight:650;display:grid}.variable-field input{border:1px solid var(--border);width:100%;min-width:0;min-height:30px;color:var(--text-h);font-family:var(--mono);background:#fff;border-radius:5px;padding:5px 6px;font-size:13px}.variable-macro,.variable-preview{min-width:0;color:var(--muted);font-family:var(--mono);overflow-wrap:anywhere;font-size:12px}.variable-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.variable-row-error{color:#9f1239;overflow-wrap:anywhere;grid-column:1/-1;font-size:12px;line-height:1.35}.direct-create-control{flex:420px}.new-element-layer-control{flex:0 300px}.direct-create-field{color:var(--muted);grid-template-columns:auto minmax(70px,96px);align-items:center;gap:6px;font-size:13px;font-weight:650;display:inline-grid}.new-element-layer-field{grid-template-columns:auto minmax(76px,96px)}.direct-create-field input{min-width:0;font-family:var(--mono);padding:6px 8px}.direct-create-field select{min-width:0;padding:6px 28px 6px 10px}.direct-create-text{grid-template-columns:auto minmax(140px,220px)}.curved-sheet-parameter-grid{flex-wrap:wrap;flex:420px;align-items:center;gap:8px 10px;min-width:0;display:flex}.coons-boundary-direction-list{flex:100%;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:6px 10px;min-width:0;display:grid}.coons-boundary-direction-row{min-width:0;color:var(--muted);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;font-size:13px;line-height:1.3;display:grid}.coons-boundary-direction-label{color:var(--text);text-transform:capitalize;font-weight:700}.coons-boundary-direction-text{overflow-wrap:anywhere;min-width:0}.coons-boundary-reverse-button{min-height:28px;padding:4px 8px;font-size:12px}.coons-corner-equation-list{min-width:0;color:var(--muted);flex:100%;gap:4px;font-size:12px;line-height:1.25;display:grid}.coons-corner-equation-title{color:var(--text);font-weight:700}.coons-corner-equation-row{grid-template-columns:32px minmax(170px,auto) minmax(0,1fr);align-items:baseline;gap:6px;min-width:0;display:grid}.coons-corner-equation-row.matches .coons-corner-equation-mark{color:#0f7b4f}.coons-corner-equation-row.mismatch .coons-corner-equation-mark{color:#b3261e}.coons-corner-equation-mark{font-family:var(--mono);font-weight:700}.coons-corner-equation-label{color:var(--text)}.coons-corner-equation-values{overflow-wrap:anywhere;min-width:0;font-family:var(--mono)}.direct-coordinate-mode-field,.direct-coordinate-list{grid-template-columns:auto minmax(180px,260px)}.direct-coordinate-list textarea{min-width:0;font-family:var(--mono);resize:vertical;padding:6px 8px}.direct-coordinate-preview{border:1px solid var(--border);background:var(--control-bg);min-width:0;color:var(--muted);font-family:var(--mono);overflow-wrap:anywhere;border-radius:6px;grid-column:1/-1;gap:3px;padding:7px 9px;font-size:12px;line-height:1.35;display:grid}.direct-coordinate-preview-invalid{color:#9f1239}.direct-coordinate-source-control{border:1px solid var(--border);background:var(--control-bg);border-radius:7px;flex-wrap:wrap;flex:520px;align-items:center;gap:8px;min-width:0;padding:8px 10px;display:flex}.direct-coordinate-source-control>.control-label{flex:none}.direct-coordinate-source-field{grid-template-columns:auto minmax(220px,320px)}.direct-path-form,.direct-grid-form{border:1px solid var(--border);background:var(--control-bg);border-radius:7px;flex-wrap:wrap;flex:640px;align-items:start;gap:10px;min-width:0;padding:8px 10px;display:flex}.direct-path-name-field{grid-template-columns:auto minmax(150px,220px)}.direct-path-mode-control{flex:360px;min-width:min(360px,100%)}.direct-path-style-grid,.direct-grid-range-grid{flex-wrap:wrap;flex:520px;gap:8px;min-width:0;display:flex}.direct-grid-field-group{border:1px solid var(--border);background:#fff;border-radius:7px;grid-template-columns:repeat(2,minmax(104px,1fr));gap:8px;min-width:min(280px,100%);margin:0;padding:8px 10px 10px;display:grid}.direct-grid-field-group legend{color:var(--muted);padding:0 4px;font-size:12px;font-weight:700}.direct-grid-field-group .direct-create-field{grid-template-columns:minmax(38px,auto) minmax(0,1fr)}.direct-path-manual-form,.direct-path-template-form{flex-wrap:wrap;flex:100%;align-items:start;gap:10px;min-width:0;display:flex}.direct-path-segment-list{flex:100%;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:10px;min-width:0;display:grid}.direct-path-coordinate-group,.direct-path-segment-card{border:1px solid var(--border);background:#fff;border-radius:7px;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;margin:0;padding:8px 10px 10px;display:flex}.direct-path-segment-card{align-items:start}.direct-path-coordinate-group legend,.direct-path-segment-card legend{color:var(--muted);padding:0 4px;font-size:12px;font-weight:700}.direct-path-segment-actions{flex-wrap:wrap;flex:100%;gap:8px;display:flex}.direct-path-source-target-field{grid-template-columns:auto minmax(180px,260px)}.direct-source-summary{min-width:min(260px,100%);color:var(--muted);flex:260px;font-size:12px;line-height:1.35}.toolbar-note{color:var(--muted);font-size:12px;line-height:1.3}.segmented-control{border:1px solid var(--border);background:var(--control-bg);border-radius:7px;grid-auto-columns:minmax(78px,max-content);grid-auto-flow:column;gap:2px;max-width:100%;padding:3px;display:inline-grid}.segmented-control button,.copy-button,.toolbar-button{min-height:34px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:5px}.segmented-control button{white-space:nowrap;padding:6px 12px;font-size:14px}.segmented-control button:hover,.copy-button:hover,.toolbar-button:hover{background:var(--button-hover)}.segmented-control button:disabled,.copy-button:disabled,.toolbar-button:disabled{color:var(--muted);cursor:not-allowed;opacity:.65}.segmented-control button:disabled:hover,.copy-button:disabled:hover,.toolbar-button:disabled:hover{background:0 0}.segmented-control button:focus-visible,.copy-button:focus-visible,.toolbar-button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.segmented-control button.is-selected{color:var(--text-h);background:var(--panel);box-shadow:0 1px 4px #1e222c1f}.example-segmented-control{grid-auto-flow:unset;flex-wrap:wrap;grid-template-columns:none;gap:6px;width:100%;display:flex;overflow-x:visible}.example-segmented-control button{white-space:normal;flex:112px;min-width:0;line-height:1.2}.path-work-plane-mode-control{grid-auto-columns:minmax(160px,1fr)}.path-work-plane-mode-control button{white-space:normal;line-height:1.2}.fill-from-path-control{flex:560px}.fill-rule-control{grid-auto-columns:minmax(88px,max-content)}.fill-path-status{flex:240px}.workspace{grid-template-rows:minmax(560px,auto) auto auto;align-self:stretch;align-items:stretch;gap:12px;width:min(100%,1680px);max-width:none;min-height:0;margin:0 auto;display:grid}.preview-inspector-row{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:12px;min-width:0;height:clamp(560px,68svh,880px);min-height:560px;display:grid}.preview-shell{min-height:560px}.workspace-panel{border:1px solid var(--border);background:var(--panel);min-width:0;min-height:0;box-shadow:var(--shadow);text-align:left;border-radius:8px;grid-template-rows:auto minmax(0,1fr);gap:10px;padding:14px;display:grid}.preview-panel{height:100%;min-height:0}.preview-stage{--z-preview-toolbar:30;--z-preview-toolbar-popover:34;--z-preview-layer:38;--z-preview-direct:46;--z-preview-inspector-button:50;--z-preview-inspector:60;--preview-overlay-top-safe-area:52px;--preview-layer-toggle-offset:42px;min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.direct-input-drawer{z-index:var(--z-preview-direct);border:1px solid color-mix(in srgb, var(--border) 82%, transparent);background:color-mix(in srgb, var(--panel) 88%, transparent);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);pointer-events:auto;border-radius:7px;grid-template-rows:auto minmax(0,1fr);gap:10px;width:min(420px,100% - 24px);min-width:0;padding:10px;display:grid;position:absolute;top:62px;bottom:12px;right:12px;box-shadow:0 10px 28px #1e222c2e}.inspector-drawer-open-button{z-index:var(--z-preview-inspector-button);pointer-events:auto;position:absolute;top:8px;right:8px}.inspector-drawer{z-index:var(--z-preview-inspector);border:1px solid color-mix(in srgb, var(--border) 86%, transparent);background:color-mix(in srgb, var(--panel) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;border-radius:0 6px 6px 0;grid-template-rows:auto minmax(0,1fr);gap:10px;width:min(430px,100% - 24px);min-width:0;min-height:0;padding:12px;display:grid;position:absolute;top:0;bottom:0;right:0;box-shadow:-10px 0 30px #1e222c33}.inspector-drawer-heading-row{justify-content:space-between;align-items:start;gap:10px;min-width:0;display:flex}.inspector-drawer-heading-row div{gap:4px;min-width:0;display:grid}.inspector-drawer-heading-row h2{margin:0;font-size:18px;line-height:1.2}.inspector-drawer-heading-row span{color:var(--muted);font-size:12px;line-height:1.25}.inspector-drawer-close-button{flex:none}.inspector-drawer-scroll{grid-template-rows:auto auto;align-content:start;gap:12px;min-width:0;min-height:0;padding-right:2px;display:grid;overflow:auto}.direct-input-drawer-heading-row{justify-content:space-between;align-items:start;gap:10px;min-width:0;display:flex}.direct-input-drawer-title{gap:2px;min-width:0;display:grid}.direct-input-drawer-title h3{color:var(--text-h);margin:0;font-size:15px;line-height:1.2}.direct-input-drawer-close{flex:none}.direct-input-drawer-form{align-content:start;gap:10px;min-width:0;min-height:0;padding-right:2px;display:grid;overflow:auto}.direct-input-drawer .direct-create-field{grid-template-columns:minmax(82px,auto) minmax(0,1fr);width:100%}.direct-input-drawer .direct-create-field input,.direct-input-drawer .direct-create-field select,.direct-input-drawer .direct-coordinate-list textarea,.direct-input-drawer .toolbar-text-input{width:100%;max-width:none}.direct-input-drawer .direct-coordinate-mode-field,.direct-input-drawer .direct-create-text,.direct-input-drawer .direct-coordinate-list,.direct-input-drawer .direct-coordinate-source-field,.direct-input-drawer .direct-path-source-target-field,.direct-input-drawer .direct-path-name-field{grid-template-columns:minmax(82px,auto) minmax(0,1fr)}.direct-input-drawer .direct-coordinate-list textarea{min-height:96px}.direct-input-drawer .direct-path-form,.direct-input-drawer .direct-grid-form,.direct-input-drawer .direct-coordinate-source-control,.direct-boundary-surface-controls,.direct-sheet-parameter-control{border:1px solid var(--border);background:color-mix(in srgb, var(--control-bg) 92%, transparent);border-radius:7px;flex:none;grid-template-columns:1fr;gap:10px;min-width:0;padding:8px;display:grid}.direct-input-drawer .direct-path-style-grid,.direct-input-drawer .direct-grid-range-grid,.direct-input-drawer .direct-path-manual-form,.direct-input-drawer .direct-path-template-form,.direct-input-drawer .direct-path-segment-actions,.direct-sheet-parameter-control,.direct-boundary-action-row{grid-template-columns:1fr;gap:8px;min-width:0;display:grid}.direct-input-drawer .direct-path-mode-control{width:100%;min-width:0}.direct-input-drawer .segmented-control{grid-auto-flow:row;grid-auto-columns:unset;grid-template-columns:1fr;display:grid}.direct-input-drawer .direct-path-segment-list{grid-template-columns:1fr}.direct-input-drawer .direct-path-coordinate-group,.direct-input-drawer .direct-path-segment-card,.direct-input-drawer .direct-grid-field-group{grid-template-columns:1fr;min-width:0;display:grid}.direct-input-drawer .preview-toolbar-field{min-width:0;color:var(--muted);grid-template-columns:minmax(82px,auto) minmax(0,1fr);align-items:center;gap:6px;font-size:13px;font-weight:650;display:grid}.direct-input-drawer .preview-toolbar-field input,.direct-input-drawer .preview-toolbar-field select{width:100%;min-width:0;min-height:34px;font-size:13px}.direct-boundary-directions{gap:8px;min-width:0;display:grid}.direct-boundary-directions summary{color:var(--text-h);cursor:pointer;font-size:13px;font-weight:700}.direct-boundary-direction-list{gap:8px;min-width:0;display:grid}.direct-input-create-button{justify-self:start}.preview-toolbar-overlay-stack{z-index:var(--z-preview-toolbar);pointer-events:none;justify-items:start;gap:6px;display:grid;position:absolute;top:8px;left:8px;right:112px}.preview-floating-toolbar{border:1px solid color-mix(in srgb, var(--border) 78%, transparent);background:color-mix(in srgb, var(--panel) 82%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto;border-radius:7px;flex-wrap:wrap;align-items:center;gap:5px;min-width:0;max-width:100%;min-height:38px;padding:5px;display:flex;box-shadow:0 8px 24px #1e222c29}.preview-toolbar-primary-tools,.preview-toolbar-detail,.preview-snap-control,.preview-history-overlay,.preview-mini-segmented{flex-wrap:wrap;align-items:center;gap:4px;min-width:0;display:flex}.preview-toolbar-detail,.preview-snap-control{border-left:1px solid color-mix(in srgb, var(--border) 78%, transparent);padding-left:6px}.preview-snap-select-field{grid-template-columns:auto minmax(70px,96px)}.preview-snap-step-field{grid-template-columns:auto minmax(64px,84px)}.preview-fill-path-control{flex:auto}.preview-history-overlay{z-index:var(--z-preview-toolbar);border:1px solid color-mix(in srgb, var(--border) 72%, transparent);background:color-mix(in srgb, var(--panel) 70%, transparent);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);pointer-events:auto;border-radius:7px;padding:4px;box-shadow:0 5px 18px #1e222c1f}.preview-overlay-button,.preview-floating-toolbar button,.preview-toolbar-menu summary,.preview-toolbar-menu-popover button,.preview-mini-segmented button{border:1px solid color-mix(in srgb, var(--border) 84%, transparent);min-height:30px;color:var(--text-h);white-space:nowrap;cursor:pointer;background:#ffffffc7;border-radius:5px;padding:5px 8px;font-size:12px;line-height:1.2}.preview-overlay-button:hover,.preview-floating-toolbar button:hover,.preview-toolbar-menu summary:hover,.preview-toolbar-menu-popover button:hover,.preview-mini-segmented button:hover{background:color-mix(in srgb, var(--button-hover) 86%, transparent)}.preview-overlay-button:disabled,.preview-floating-toolbar button:disabled,.preview-toolbar-menu-popover button:disabled,.preview-mini-segmented button:disabled{color:var(--muted);cursor:not-allowed;opacity:.68;background:#ffffff85}.preview-overlay-button:focus-visible,.preview-floating-toolbar button:focus-visible,.preview-toolbar-menu summary:focus-visible,.preview-toolbar-menu-popover button:focus-visible,.preview-mini-segmented button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.preview-floating-toolbar button.is-selected,.preview-toolbar-menu.is-selected>summary,.preview-toolbar-menu-popover button.is-selected,.preview-mini-segmented button.is-selected{border-color:color-mix(in srgb, var(--focus) 42%, var(--border));color:var(--text-h);background:#ffffffeb;box-shadow:0 1px 5px #1e222c1f}.preview-toolbar-expand-button{pointer-events:auto}.preview-toolbar-collapse-button{font-weight:800}.preview-trash-button{color:#8f2d2d;margin-left:auto}.preview-trash-button svg{fill:currentColor;width:16px;height:16px;display:block}.preview-toolbar-menu{position:relative}.preview-toolbar-menu summary{list-style:none}.preview-toolbar-menu summary::-webkit-details-marker{display:none}.preview-toolbar-menu-popover{z-index:var(--z-preview-toolbar-popover);border:1px solid var(--border);background:color-mix(in srgb, var(--panel) 94%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:7px;gap:4px;min-width:190px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 26px #1e222c2e}.preview-toolbar-wide-popover{min-width:min(520px,100vw - 48px)}.preview-path-menu-popover{gap:6px;min-width:220px}.preview-path-menu-group{gap:4px;display:grid}.preview-path-menu-group+.preview-path-menu-group{border-top:1px solid color-mix(in srgb, var(--border) 76%, transparent);padding-top:5px}.preview-path-menu-group-label{color:var(--muted);font-size:10px;font-weight:800;line-height:1.2}.preview-toolbar-menu-popover .preview-path-menu-button{text-align:left;grid-template-columns:24px minmax(0,1fr);place-items:center start;gap:7px;min-height:32px;padding:5px 7px;display:grid}.preview-path-menu-icon{border:1px solid color-mix(in srgb, var(--border) 72%, transparent);width:22px;height:22px;color:var(--text-h);background:color-mix(in srgb, var(--button-hover) 52%, #fff);font-family:var(--mono);border-radius:5px;place-items:center;font-size:14px;font-weight:800;line-height:1;display:grid}.preview-path-menu-button[data-path-action=cubicBezier] .preview-path-menu-icon{font-family:var(--sans);font-size:12px}.preview-bezier-menu-icon{width:19px;height:19px;display:block}.preview-bezier-menu-handle{fill:none;stroke:color-mix(in srgb, currentColor 46%, transparent);stroke-width:1.3px;stroke-linecap:round;stroke-dasharray:2 2}.preview-bezier-menu-curve{fill:none;stroke:currentColor;stroke-width:2.1px;stroke-linecap:round}.preview-bezier-menu-endpoint{fill:currentColor}.preview-bezier-menu-control{fill:color-mix(in srgb, currentColor 58%, #fff);stroke:currentColor;stroke-width:.7px}.preview-sheet-menu-icon{width:19px;height:19px;display:block}.preview-sheet-menu-fill{fill:color-mix(in srgb, currentColor 13%, transparent)}.preview-sheet-menu-outline{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.preview-sheet-menu-detail,.preview-sheet-menu-ruling{fill:none;stroke:color-mix(in srgb, currentColor 58%, transparent);stroke-width:1.15px;stroke-linecap:round;stroke-linejoin:round}.preview-sheet-menu-ruling{stroke:color-mix(in srgb, currentColor 72%, transparent)}.preview-sheet-menu-point{fill:currentColor}.preview-path-menu-button[data-path-action=directPathInput] .preview-path-menu-icon,.preview-path-menu-button[data-sheet-action=directSheetInput] .preview-path-menu-icon{color:#2a4f7f;background:#dfedf9}.preview-path-menu-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.preview-toolbar-inline-menu .preview-toolbar-menu-popover{left:auto;right:0}.preview-toolbar-label{color:var(--muted);font-size:12px;font-weight:750;line-height:1.2}.preview-toolbar-status{max-width:260px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.25;overflow:hidden}.preview-toolbar-field{color:var(--muted);grid-template-columns:auto minmax(48px,72px);align-items:center;gap:4px;font-size:12px;font-weight:650;display:inline-grid}.preview-toolbar-field input,.preview-toolbar-field select{border:1px solid var(--border);min-width:0;min-height:30px;color:var(--text-h);font-family:var(--mono);background:#fff;border-radius:5px;padding:4px 6px;font-size:12px}.preview-toolbar-field input[aria-invalid=true]{border-color:#b3261e}.preview-toolbar-field select{font-family:var(--sans)}.preview-coons-direction-row{min-width:0;color:var(--muted);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;font-size:12px;line-height:1.3;display:grid}.preview-coons-direction-row span{overflow-wrap:anywhere;min-width:0}.preview-layer-control{top:var(--preview-overlay-top-safe-area);z-index:var(--z-preview-layer);pointer-events:none;place-items:end;min-width:0;min-height:0;display:grid;position:absolute;bottom:12px;left:12px;right:12px}.preview-layer-control>*{pointer-events:auto}.layer-palette-toggle-button{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);justify-content:center;align-items:center;gap:6px;min-width:92px;display:inline-flex;box-shadow:0 6px 18px #1e222c24}.layer-palette-toggle-count{font-family:var(--mono);font-weight:750}.layer-palette-window{right:0;bottom:var(--preview-layer-toggle-offset);width:min(520px,100%);max-height:calc(100% - var(--preview-layer-toggle-offset));border:1px solid color-mix(in srgb, var(--border) 84%, transparent);background:color-mix(in srgb, var(--panel) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:7px;flex-direction:column;gap:8px;min-width:0;min-height:0;padding:10px;display:flex;position:absolute;overflow:hidden;box-shadow:0 14px 34px #1e222c38}.layer-palette-heading{flex:none;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.layer-palette-heading div{gap:2px;min-width:0;display:grid}.layer-palette-heading h2{color:var(--text-h);margin:0;font-size:15px;line-height:1.2}.layer-palette-heading span,.layer-palette-status,.layer-palette-empty,.layer-palette-action-empty{color:var(--muted);font-size:12px;line-height:1.35}.layer-palette-close-button{flex:none}.layer-palette-footer{border-top:1px solid color-mix(in srgb, var(--border) 78%, transparent);flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:7px;min-width:0;padding-top:8px;display:flex}.layer-palette-filter-field{color:var(--muted);grid-template-columns:auto minmax(78px,112px);align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-grid}.layer-palette-filter-field select{border:1px solid var(--border);min-width:0;min-height:30px;color:var(--text-h);font-family:var(--mono);background:#fff;border-radius:5px;padding:4px 24px 4px 7px;font-size:12px}.layer-palette-new-layer-form{flex:172px;justify-content:end;align-items:center;gap:5px;min-width:0;display:inline-flex}.layer-palette-new-layer-field{min-width:0;color:var(--muted);grid-template-columns:auto minmax(54px,76px);align-items:center;gap:5px;font-size:12px;font-weight:700;display:inline-grid}.layer-palette-new-layer-field input{border:1px solid var(--border);width:100%;min-width:0;min-height:30px;color:var(--text-h);font-family:var(--mono);background:#fff;border-radius:5px;padding:4px 6px;font-size:12px}.layer-palette-status{border:1px solid var(--border);background:color-mix(in srgb, var(--control-bg) 90%, transparent);min-width:0;max-height:72px;color:var(--text-h);overflow-wrap:anywhere;border-radius:5px;flex:none;margin:0;padding:6px 8px;overflow:auto}.layer-palette-body{flex:auto;grid-template-rows:minmax(0,1fr) auto;gap:8px;min-width:0;min-height:0;display:grid;overflow:hidden}.layer-palette-list{align-content:start;gap:6px;min-width:0;min-height:0;padding-right:2px;display:grid;overflow:hidden auto}.layer-palette-empty,.layer-palette-action-empty{margin:0}.layer-palette-row{border:1px solid color-mix(in srgb, var(--border) 88%, transparent);cursor:grab;background:#ffffffd1;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:6px;min-width:0;padding:5px;display:grid}.layer-palette-row:active{cursor:grabbing}.layer-palette-row.is-creation-layer{border-color:color-mix(in srgb, var(--focus) 62%, var(--border));box-shadow:inset 4px 0 0 var(--focus)}.layer-palette-row.is-action-target:not(.is-creation-layer){border-color:color-mix(in srgb, var(--focus) 34%, var(--border))}.layer-palette-row.is-filter-active{background:#f2fafd}.layer-palette-row.is-hidden-layer{opacity:.72}.layer-palette-row.is-locked-layer{background:#fafbfd}.layer-palette-row-main{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:50px minmax(0,1fr);align-items:center;gap:7px;padding:0;display:grid}.layer-palette-row-main:focus-visible,.layer-palette-state-button:focus-visible,.layer-palette-actions-toggle:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.layer-palette-thumbnail{flex:none;width:48px;height:34px;display:block}.layer-palette-thumbnail>rect:first-child{fill:#fff;stroke:var(--border)}.layer-palette-thumbnail-empty{fill:none;stroke:color-mix(in srgb, var(--muted) 65%, transparent);stroke-width:2px;stroke-linecap:round}.layer-palette-thumbnail text{font-family:var(--mono);fill:var(--muted);font-size:7px;font-weight:800}.layer-palette-row-text{gap:2px;min-width:0;display:grid}.layer-palette-layer-name{min-width:0;color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:750;line-height:1.2;overflow:hidden}.layer-palette-layer-meta{color:var(--muted);font-family:var(--mono);font-size:11px;line-height:1.2}.layer-palette-badges{flex-wrap:wrap;gap:3px;min-width:0;display:flex}.layer-palette-badge{border:1px solid color-mix(in srgb, var(--border) 84%, transparent);color:var(--muted);background:color-mix(in srgb, var(--control-bg) 86%, transparent);text-transform:uppercase;border-radius:999px;padding:1px 5px;font-size:9px;font-weight:800;line-height:1.2}.layer-palette-row-controls{align-content:center;gap:4px;display:grid}.layer-palette-state-button{min-width:34px;min-height:24px;padding:3px 5px;font-size:10px}.layer-palette-state-button[aria-pressed=false]{color:var(--muted);background:#ffffff8a}.layer-palette-actions-toggle{flex:none}.layer-palette-action-panel{border:1px solid color-mix(in srgb, var(--border) 82%, transparent);background:#ffffffb8;border-radius:6px;align-content:start;gap:8px;width:100%;min-width:0;max-height:min(34svh,260px);padding:8px;display:grid;overflow:auto}.layer-palette-action-heading{gap:2px;min-width:0;display:grid}.layer-palette-action-heading h3{color:var(--text-h);margin:0;font-size:14px;line-height:1.15}.layer-palette-action-heading span{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.25;overflow:hidden}.layer-palette-action-panel .layer-manager-name-form,.layer-palette-action-panel .layer-manager-duplicate-form,.layer-palette-action-panel .layer-manager-merge-form,.layer-palette-action-panel .layer-manager-translate-form,.layer-palette-action-panel .layer-manager-state-controls{flex-wrap:wrap}.layer-manager{border-bottom:1px solid var(--border);gap:9px;min-width:0;min-height:0;padding-bottom:12px;display:grid;overflow:hidden}.layer-manager.is-collapsed{grid-template-rows:auto}.layer-manager.is-expanded{grid-template-rows:auto minmax(0,1fr);max-height:min(44vh,380px)}.layer-manager-heading{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.layer-manager-toggle{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;grid-template-columns:auto minmax(0,max-content) minmax(0,1fr);align-items:center;gap:7px;padding:0;display:grid}.layer-manager-toggle:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:4px}.layer-manager-disclosure{color:var(--muted);font-family:var(--mono);font-size:12px;line-height:1}.layer-manager-heading h3{color:var(--text-h);margin:0;font-size:14px;line-height:1.25}.layer-manager-title{color:var(--text-h);white-space:nowrap;font-size:14px;font-weight:700;line-height:1.25}.layer-manager-summary{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.35;overflow:hidden}.layer-manager-heading span,.layer-manager-empty,.layer-manager-status{color:var(--muted);font-size:12px;line-height:1.35}.layer-manager-collapsed-status{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;font-size:12px;line-height:1.35;overflow:hidden}.layer-manager-details{grid-template-rows:auto auto minmax(0,1fr);align-content:start;gap:9px;min-width:0;min-height:0;display:grid;overflow:hidden}.layer-manager-status{border:1px solid var(--border);background:var(--control-bg);min-width:0;color:var(--text-h);overflow-wrap:anywhere;border-radius:5px;margin:0;padding:6px 8px}.layer-manager-state{color:var(--muted);flex-wrap:wrap;justify-content:end;gap:6px 10px;margin:0;font-size:12px;line-height:1.25;display:flex}.layer-manager-state div{gap:4px;min-width:0;display:inline-flex}.layer-manager-state dt,.layer-manager-state dd{margin:0}.layer-manager-state dt{font-weight:700}.layer-manager-state dd{color:var(--text-h);font-family:var(--mono)}.layer-manager-list{align-content:start;gap:8px;min-width:0;min-height:0;display:grid;overflow:auto}.layer-manager-row{border:1px solid var(--border);background:var(--panel);min-width:0;color:var(--text-h);border-radius:6px;gap:8px;padding:9px;font-size:12px;line-height:1.3;display:grid}.layer-manager-row.is-active-layer{border-color:color-mix(in srgb, var(--focus) 55%, var(--border));box-shadow:inset 3px 0 0 var(--focus)}.layer-manager-row.is-hidden-layer{background:#fbfaf6}.layer-manager-row.is-locked-layer{color:var(--text)}.layer-manager-row span{overflow-wrap:anywhere;min-width:0}.layer-manager-row-summary{grid-template-columns:minmax(0,1fr) max-content;align-items:start;gap:7px 10px;min-width:0;display:grid}.layer-manager-row-title{gap:2px;min-width:0;display:grid}.layer-manager-layer-name{color:var(--text-h);font-weight:700}.layer-manager-layer-value,.layer-manager-count{color:var(--muted);font-family:var(--mono);font-size:11px}.layer-manager-count{white-space:nowrap;justify-self:end}.layer-manager-badges{flex-wrap:wrap;grid-column:1/-1;gap:4px;min-width:0;display:flex}.layer-manager-badge{border:1px solid var(--border);color:var(--muted);background:var(--control-bg);text-transform:uppercase;border-radius:999px;padding:2px 6px;font-size:10px;font-weight:700;line-height:1.2}.layer-manager-badge-active{border-color:color-mix(in srgb, var(--focus) 60%, var(--border));color:#155e75;background:#eaf7fb}.layer-manager-action-groups{gap:7px;min-width:0;display:grid}.layer-manager-action-group{border-top:1px solid color-mix(in srgb, var(--border) 72%, transparent);gap:6px;min-width:0;padding-top:7px;display:grid}.layer-manager-action-heading{color:var(--muted);letter-spacing:0;text-transform:uppercase;font-size:10px;font-weight:750;line-height:1}.layer-manager-name-form,.layer-manager-swap-form,.layer-manager-duplicate-form,.layer-manager-merge-form,.layer-manager-translate-form,.layer-manager-state-controls{align-items:center;gap:6px;min-width:0;display:flex}.layer-manager-translate-form,.layer-manager-duplicate-form,.layer-manager-merge-form,.layer-manager-state-controls{flex-wrap:wrap}.layer-manager-merge-field,.layer-manager-translation-field{min-width:0;color:var(--muted);font-family:var(--mono);flex:64px;align-items:center;gap:4px;font-size:11px;display:flex}.layer-manager-name-input,.layer-manager-swap-select,.layer-manager-layer-input,.layer-manager-translation-input{border:1px solid var(--border);min-width:0;min-height:30px;color:var(--text-h);background:#fff;border-radius:5px;font-size:12px}.layer-manager-name-input{width:100%;padding:5px 8px}.layer-manager-swap-select{flex:56px;padding:5px 22px 5px 8px}.layer-manager-layer-input{font-family:var(--mono);flex:68px;padding:5px 8px}.layer-manager-translation-input{width:38px;font-family:var(--mono);flex:38px;padding:5px 6px}.layer-manager-inline-status{color:var(--muted);flex:100%;font-size:11px;line-height:1.25}.layer-manager-name-form .toolbar-button,.layer-manager-swap-form .toolbar-button,.layer-manager-duplicate-form .toolbar-button,.layer-manager-merge-form .toolbar-button,.layer-manager-translate-form .toolbar-button,.layer-manager-state-controls .toolbar-button,.layer-manager-delete-button{min-height:30px;padding:5px 8px;font-size:12px}.layer-manager-state-controls .toolbar-button[aria-pressed=false]{color:var(--muted);background:var(--control-bg)}.layer-manager-delete-button{color:#991b1b;background:#fff5f5;border-color:#fecaca;width:100%}.layer-manager-danger-group{border-top-color:#fecaca}.panel-heading{justify-content:space-between;align-items:start;gap:14px;min-width:0;display:flex}.panel-heading span{color:var(--muted);margin-top:4px;font-size:13px;line-height:1.35;display:block}.copy-controls{justify-items:end;gap:6px;min-width:180px;display:grid}.tikz-export-mode-control{color:var(--muted);grid-template-columns:auto minmax(150px,1fr);align-items:center;gap:7px;font-size:12px;line-height:1.25;display:inline-grid}.tikz-export-mode-control .toolbar-select{width:100%;max-width:none;min-height:32px}.tikz-export-help{max-width:300px;color:var(--muted);text-align:right;margin:0;font-size:12px;line-height:1.35}.tikz-export-control-heading{color:var(--text-h);letter-spacing:0;text-align:right;font-size:12px;font-weight:700}.tikz-export-checkbox{max-width:220px;color:var(--muted);text-align:right;justify-content:end;align-items:center;gap:7px;font-size:12px;line-height:1.25;display:inline-flex}.tikz-export-checkbox input{width:15px;height:15px;accent-color:var(--focus);margin:0}.tikz-export-checkbox:has(input:disabled){opacity:.58}.copy-button{border:1px solid var(--border);color:var(--text-h);background:var(--panel);white-space:nowrap;padding:6px 12px;font-size:14px}.toolbar-button{border:1px solid var(--border);color:var(--text-h);white-space:nowrap;background:#fff;padding:6px 10px;font-size:13px}.polyline-draft-control{flex:320px}.history-control{flex:none}.toolbar-status{min-width:150px;color:var(--muted);font-size:13px;line-height:1.3}.file-control{flex:440px}.tikz-style-import{flex-wrap:wrap;align-items:flex-start;gap:8px 10px;min-width:0;display:flex}.tikz-style-import-report{min-width:min(280px,100%);max-height:180px;color:var(--muted);flex:280px;gap:4px;padding-right:4px;font-size:12px;line-height:1.35;display:grid;overflow-y:auto}.tikz-style-import-report-failed{color:#a13d2d}.tikz-style-import-keys,.tikz-style-import-warnings ul{overflow-wrap:anywhere;font-family:var(--mono);gap:2px;margin:0;padding-left:18px;display:grid}.tikz-style-import-keys{max-height:120px;padding-right:4px;overflow-y:auto}.tikz-style-import-warnings summary{cursor:pointer}.symbolic-import-backdrop{z-index:20;background:#0f172a73;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.symbolic-import-dialog{border:1px solid var(--border);background:var(--panel);width:min(520px,100%);max-height:min(680px,100svh - 48px);box-shadow:var(--shadow);border-radius:8px;gap:14px;padding:18px;display:grid;overflow-y:auto}.symbolic-import-heading-row h2{color:var(--text-h);letter-spacing:0;margin:0;font-size:18px}.symbolic-import-heading-row p{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.4}.symbolic-import-variable-list{gap:10px;display:grid}.symbolic-import-variable-row{grid-template-columns:minmax(48px,auto) minmax(0,1fr);align-items:center;gap:10px;display:grid}.symbolic-import-variable-row span{overflow-wrap:anywhere;min-width:0;color:var(--text-h);font-family:var(--mono);font-size:13px}.symbolic-import-variable-row input{border:1px solid var(--border);min-width:0;min-height:34px;color:var(--text-h);font-family:var(--mono);background:#fff;border-radius:5px;padding:6px 10px;font-size:13px}.symbolic-import-error{color:#a13d2d;overflow-wrap:anywhere;font-size:13px;line-height:1.35}.symbolic-import-actions{justify-content:flex-end;gap:8px;display:flex}.layer-filter-control{flex:0 190px}.file-input{display:none}.file-status-failed{color:#a13d2d}.copy-status{min-height:16px;color:var(--muted);font-size:12px;line-height:1.2}.svg-diagram{width:100%;height:100%;min-height:0;color:var(--preview-wash);border:1px solid var(--border);font-family:var(--sans);background:#fff;border-radius:6px;display:block}.svg-selectable{cursor:pointer}.svg-selectable:hover{filter:drop-shadow(0 0 3px #f4b4008c)}.svg-geometry-handle{cursor:grab}.svg-geometry-handle:active{cursor:grabbing}.svg-filtered-out{cursor:default}.inspector-content{align-content:start;gap:14px;display:grid;overflow:auto}.editable-inspector-shell{grid-template-rows:auto minmax(0,1fr);gap:12px;min-height:0;display:grid;overflow:hidden}.inspector-summary{border:1px solid var(--border);background:var(--control-bg);border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;padding:10px;display:grid}.inspector-summary-copy{gap:5px;min-width:0;display:grid}.inspector-summary-title{min-width:0;color:var(--text-h);overflow-wrap:anywhere;font-size:14px;font-weight:700;line-height:1.3}.inspector-summary-meta{min-width:0;color:var(--muted);flex-wrap:wrap;gap:6px 12px;font-size:13px;line-height:1.3;display:flex}.inspector-toggle-button{align-self:start}.inspector-details-scroll{min-height:0;padding-right:2px;overflow:auto}.inspector-details-scroll>.inspector-content{overflow:visible}.inspector-section{gap:8px;display:grid}.inspector-section h3,.empty-inspector h3{color:var(--text-h);margin:0;font-size:14px;line-height:1.25}.inspector-section dl{border:1px solid var(--border);background:var(--border);border-radius:6px;gap:1px;margin:0;display:grid;overflow:hidden}.inspector-section dl>div{background:var(--panel);grid-template-columns:minmax(92px,.42fr) minmax(0,1fr);gap:10px;padding:8px 10px;display:grid}.inspector-section dt,.inspector-section dd{min-width:0;margin:0;font-size:13px;line-height:1.35}.inspector-section dt{color:var(--muted);font-weight:650}.inspector-section dd{color:var(--text-h);overflow-wrap:anywhere;font-family:var(--mono)}.inspector-form{border:1px solid var(--border);background:var(--border);border-radius:6px;gap:1px;min-width:0;display:grid;overflow:hidden}.inspector-field{background:var(--panel);grid-template-columns:minmax(94px,116px) minmax(0,1fr);align-items:center;gap:10px;padding:8px 10px;display:grid}.inspector-field-with-note{align-items:start}.inspector-field-label{min-width:0;color:var(--muted);overflow-wrap:anywhere;font-size:13px;font-weight:650;line-height:1.35}.inspector-field-note,.inspector-field-error{grid-column:2;font-size:12px;line-height:1.3}.inspector-field-note{color:var(--muted)}.inspector-field-error{color:#9f1239;overflow-wrap:anywhere}.inspector-status{background:var(--panel);color:var(--muted);overflow-wrap:anywhere;margin:0;padding:8px 10px;font-size:12px;line-height:1.35}.style-preset-buttons{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.style-preset-manager{gap:6px;min-width:0;display:grid}.style-preset-toolbar{grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:6px;min-width:0;display:grid}.style-preset-filter{min-width:0}.style-preset-group-list{gap:8px;min-width:0;max-height:230px;padding-right:2px;display:grid;overflow:auto}.style-preset-group{gap:4px;min-width:0;display:grid}.style-preset-group-heading{color:var(--muted);text-transform:uppercase;justify-content:space-between;gap:8px;font-size:11px;font-weight:700;line-height:1.2;display:flex}.style-preset-list{gap:4px;min-width:0;display:grid}.style-preset-list-item{border:1px solid var(--border);min-width:0;color:var(--text-h);text-align:left;background:#fff;border-radius:5px;gap:2px;padding:6px 7px;display:grid}.style-preset-list-item:hover{background:var(--button-hover)}.style-preset-list-item-selected{background:#eef7ff;border-color:#4d9de0}.style-preset-list-item-name{overflow-wrap:anywhere;min-width:0;font-size:12px;font-weight:650;line-height:1.25}.style-preset-list-item-meta,.style-preset-empty,.style-preset-status,.style-preset-details{overflow-wrap:anywhere;min-width:0;font-size:11px;line-height:1.35}.style-preset-list-item-meta,.style-preset-empty{color:var(--muted)}.style-preset-status{color:var(--text-h)}.style-preset-details{border:1px solid var(--border);color:var(--text-h);background:#fbfcff;border-radius:5px;gap:4px;padding:7px;display:grid}.style-preset-options{font-family:var(--mono)}.style-preset-warning{color:#8a5a00}.style-preset-targets{flex-wrap:wrap;gap:5px;min-width:0;display:flex}.style-preset-target-toggle{border:1px solid var(--border);min-width:0;color:var(--text-h);background:#fff;border-radius:5px;align-items:center;gap:4px;padding:3px 5px;font-size:11px;line-height:1.2;display:inline-flex}.style-preset-select{min-height:31px}.style-preset-button{border:1px solid var(--border);min-width:0;color:var(--text-h);overflow-wrap:anywhere;background:#fff;border-radius:5px;padding:5px 8px;font-size:12px;line-height:1.2}.style-preset-button:hover{background:var(--button-hover)}.style-preset-button:disabled{color:var(--muted);cursor:not-allowed;background:#f7f8fa}.style-preset-delete-button{color:#8f2d2d;border-color:#d0a4a4}.readonly-value{min-width:0;color:var(--text-h);overflow-wrap:anywhere;font-family:var(--mono);font-size:13px;line-height:1.35}.bulk-field-control{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;display:grid}.bulk-mixed-value{color:var(--muted);font-size:12px;line-height:1.2}.bulk-action-buttons{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.path-concat-direction-controls{grid-column:1/-1;gap:8px;min-width:0;display:grid}.path-concat-direction-list,.path-concat-endpoint-check-list{gap:6px;min-width:0;display:grid}.path-concat-direction-row{min-width:0;color:var(--muted);grid-template-columns:minmax(88px,.65fr) minmax(0,1fr) auto;align-items:center;gap:6px;font-size:12px;line-height:1.3;display:grid}.path-concat-direction-label{min-width:0;color:var(--text-h);overflow-wrap:anywhere;font-weight:700}.path-concat-direction-text{overflow-wrap:anywhere;min-width:0;font-family:var(--mono)}.path-concat-reverse-button{min-height:28px;padding:4px 8px;font-size:12px}.path-concat-endpoint-check{border:1px solid var(--border);min-width:0;color:var(--muted);overflow-wrap:anywhere;background:#fff;border-radius:5px;grid-template-columns:auto minmax(0,1fr);gap:6px;padding:5px 7px;font-size:12px;line-height:1.35;display:grid}.path-concat-endpoint-check-ok{border-color:#badbcc}.path-concat-endpoint-check-fail{border-color:#e0b4b4}.path-concat-endpoint-state{color:var(--text-h);font-weight:700}.path-concat-direction-actions{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.bulk-delete-button{color:#8f2d2d;border-color:#d0a4a4}.path-segment-operations{background:var(--panel);flex-wrap:wrap;gap:8px;min-width:0;padding:8px 10px;display:flex}.path-segment-editor{background:var(--border);gap:1px;min-width:0;display:grid}.path-segment-editor summary{min-width:0;color:var(--text-h);background:var(--panel);cursor:pointer;padding:8px 10px;font-size:13px;font-weight:700;line-height:1.3}.path-segment-style-editor{gap:1px;min-width:0;display:grid}.path-segment-clear-style{border:1px solid var(--border);background:var(--panel);justify-self:start;margin:8px 10px;padding:6px 10px}.inspector-input{border:1px solid var(--border);width:100%;min-width:0;max-width:100%;color:var(--text-h);font-family:var(--mono);background:#fff;border-radius:5px;padding:6px 8px;font-size:13px;line-height:1.35}.inspector-input:focus{border-color:var(--focus);outline:2px solid color-mix(in srgb, var(--focus) 20%, transparent);outline-offset:0}.inspector-checkbox-field{align-items:start}.inspector-checkbox-control{min-width:0;color:var(--text-h);align-items:center;gap:8px;font-size:13px;line-height:1.35;display:inline-flex}.inspector-checkbox-control input{width:16px;height:16px;accent-color:var(--focus);margin:0}.inspector-textarea{resize:vertical;min-height:68px;max-height:180px}.coordinate-group{background:var(--panel);border:0;gap:8px;min-width:0;margin:0;padding:8px 10px 10px;display:grid}.coordinate-group legend{color:var(--muted);padding:0;font-size:13px;font-weight:650;line-height:1.35}.coordinate-grid{grid-template-columns:repeat(auto-fit,minmax(82px,1fr));gap:8px 10px;min-width:0;display:grid}.work-plane-local-coordinate-summary{min-width:0;color:var(--muted);overflow-wrap:anywhere;gap:4px 8px;margin:0 0 8px;font-size:12px;line-height:1.35;display:grid}.work-plane-local-coordinate-summary div,.work-plane-local-coordinate-summary dt,.work-plane-local-coordinate-summary dd{min-width:0}.work-plane-local-coordinate-summary div{grid-template-columns:minmax(78px,auto) minmax(0,1fr);align-items:baseline;gap:8px;display:grid}.work-plane-local-coordinate-summary dt{color:var(--muted);font-weight:700}.work-plane-local-coordinate-summary dd{color:var(--text);font-family:var(--mono);margin:0}.coordinate-input-row{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;min-width:0;display:grid}.coordinate-input-row span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:650;line-height:1}.coordinate-input-row .coordinate-preview,.coordinate-input-row .coordinate-input-error{text-transform:none;grid-column:2;font-size:12px;font-weight:500;line-height:1.3}.coordinate-input-row .coordinate-input-error{color:#9f1239;overflow-wrap:anywhere}.empty-inspector{min-height:220px;color:var(--muted);text-align:center;place-content:center;gap:8px;display:grid}.empty-inspector p{max-width:260px;font-size:14px}.source-panel{grid-template-rows:auto minmax(0,1fr);height:min(38svh,460px);min-height:280px;max-height:460px;overflow:hidden}.source-panel .panel-heading{min-height:0;max-height:min(16svh,160px);padding-right:2px;overflow:auto}.tikz-source-shell{border:1px solid var(--border);background:var(--source-bg);border-radius:6px;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.tikz-source-actions{border-bottom:1px solid color-mix(in srgb, var(--border) 82%, transparent);background:color-mix(in srgb, var(--panel) 94%, var(--source-bg));flex-wrap:wrap;flex:none;align-items:center;gap:6px;min-width:0;padding:7px 8px;display:flex}.tikz-source-actions .copy-status{text-align:right;margin-left:auto}.tikz-source{resize:none;width:100%;min-width:0;height:100%;min-height:0;max-height:none;color:var(--source-text);background:var(--source-bg);font-family:var(--mono);white-space:pre;border:0;border-radius:0;padding:14px;font-size:13px;line-height:1.45;overflow:auto}@media (width<=920px){.app-header{justify-content:stretch;display:grid}.status-strip{justify-content:start;min-width:0}.toolbar{gap:12px;max-height:42svh}.control-group{display:grid}.work-plane-details{grid-template-columns:1fr}.camera-summary-toggle{flex:100%}.camera-details{grid-template-columns:1fr}.camera-orientation-panel{grid-template-columns:minmax(0,1fr) 132px}.camera-field-grid{min-width:0}.work-plane-summary-toggle{flex:100%}.segmented-control{grid-auto-columns:minmax(0,1fr)}.toolbar-select{width:100%;max-width:none}.workspace{grid-template-rows:auto auto auto}.preview-inspector-row{grid-template-columns:1fr;height:auto;min-height:0}.preview-shell{min-height:0}.preview-panel{min-height:min(70svh,620px)}.source-panel{height:min(42svh,420px);min-height:260px}.source-panel .panel-heading{max-height:min(18svh,150px)}.inspector-field{grid-template-columns:minmax(104px,.32fr) minmax(0,1fr)}.workspace-panel{min-height:0}}@media (width<=540px){.app-shell{padding-inline:12px}.toolbar{max-height:48svh}.panel-heading{display:grid}.copy-controls{justify-items:start}.segmented-control{grid-auto-flow:row}.work-plane-fixed{grid-template-columns:auto minmax(0,1fr);width:100%}.camera-field,.camera-preset-field{grid-template-columns:1fr;width:100%}.camera-panel{max-height:none}.camera-orientation-panel{grid-template-columns:1fr}.camera-reference-graphic{justify-self:start;width:132px}.camera-slider-inputs{grid-template-columns:minmax(0,1fr) 68px}.work-plane-section-heading,.work-plane-vector-row{grid-template-columns:1fr}.work-plane-section-heading{display:grid}.work-plane-preset-field{grid-template-columns:1fr;width:100%}.preview-panel{min-height:420px}.direct-input-drawer{width:auto;padding:8px;inset:52px 8px 8px}.inspector-drawer{border-radius:6px;width:auto;padding:10px;left:8px}.preview-toolbar-overlay-stack{right:88px}.preview-layer-control{bottom:8px;left:8px;right:8px}.layer-palette-window{width:100%}.layer-palette-action-panel{max-height:220px}.direct-input-drawer .direct-create-field,.direct-input-drawer .preview-toolbar-field{grid-template-columns:1fr}.source-panel{height:min(48svh,380px);min-height:260px}.inspector-summary{grid-template-columns:1fr}.inspector-toggle-button{justify-self:start}.custom-work-plane-field{grid-template-columns:auto minmax(0,1fr);width:100%}.inspector-field{grid-template-columns:1fr;gap:5px}}
