*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;padding:0;overflow:hidden}body{display:flex;flex-direction:row}#render-view{flex:1 1 0;min-width:0;min-height:0;background-color:#f4f6f4;background-image:linear-gradient(rgba(76,96,87,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(76,96,87,.07) 1px,transparent 1px);background-size:24px 24px;overflow:hidden}#render-view>svg{display:block;width:100%;height:100%;touch-action:none;background:transparent}#app{flex:0 0 350px;width:350px;min-width:350px;height:100%}.app-shell{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;background:#1e1e1e}.app-navigation{display:flex;flex:0 0 42px;align-items:stretch;gap:4px;padding:5px 8px;border-bottom:1px solid #3a3a3a;background:#252525}.app-navigation a{display:inline-flex;align-items:center;padding:0 10px;border-bottom:2px solid transparent;color:#9ba5a2;font-size:11px;font-weight:600;text-decoration:none}.app-navigation a:hover{color:#e0e7e4}.app-navigation a.active{border-color:#6ed0bb;color:#e0e7e4}.file-menu{position:relative;display:flex;align-items:center;margin-left:auto}.file-menu-trigger{display:grid;width:32px;height:32px;align-content:center;justify-items:center;gap:4px;padding:0;border:1px solid transparent;border-radius:3px;background:transparent;cursor:pointer}.file-menu-trigger span{display:block;width:15px;height:1.5px;border-radius:1px;background:#c3cfcb}.file-menu-trigger:hover,.file-menu-trigger[aria-expanded=true]{border-color:#45514e;background:#303936}.file-menu-trigger:focus-visible{outline:2px solid #6ed0bb;outline-offset:1px}.file-menu-popup{position:absolute;z-index:100;top:calc(100% + 5px);right:0;display:grid;width:180px;padding:4px;border:1px solid #414c49;border-radius:4px;background:#202624;box-shadow:0 8px 24px #0006}.file-menu-popup button{padding:9px 10px;border:0;border-radius:2px;background:transparent;color:#dce5e2;font:inherit;font-size:11px;text-align:left;cursor:pointer}.file-menu-popup button:hover,.file-menu-popup button:focus-visible{outline:none;background:#35413d}.app-route-content{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}body.parameters-page-active #render-view,body.design-setup-page-active #render-view,body.pattern-print-page-active #render-view{display:none}body.pattern-pieces-page-active #render-view{background-color:#e3e8e5}body.parameters-page-active #app,body.design-setup-page-active #app,body.pattern-print-page-active #app{flex:1 1 auto;width:100%;min-width:0}.sidebar-right{width:100%;height:100%;display:flex;flex-direction:column;background:#1e1e1e;border-left:1px solid #3a3a3a;overflow-y:auto}.pattern-pieces-page{display:flex;width:100%;height:100%;min-height:0;flex-direction:column;overflow-y:auto;background:#1e1e1e;color:#e0e7e4;font-size:11px}.pattern-print-page{display:flex;width:100%;height:100%;min-height:0;flex-direction:column;overflow:auto;background:#1e1e1e;color:#e0e7e4;font-size:11px}.pattern-print-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid #343b39}.pattern-print-header h1{margin:2px 0 0;font-size:18px;font-weight:600}.pattern-print-summary{display:flex;flex-wrap:wrap;gap:8px 22px;padding:12px 20px;border-bottom:1px solid #343b39;color:#aebcb9;font-variant-numeric:tabular-nums}.pattern-print-error,.pattern-print-validation{margin:12px 20px;color:#ef9999}.pattern-print-validation h2{margin:0 0 8px;color:#f2a27e;font-size:13px}.pattern-print-invalid-piece{display:flex;flex-wrap:wrap;gap:8px;padding:6px 0;border-bottom:1px solid #343b39}.pattern-print-invalid-piece strong{color:#e0e7e4}.pattern-print-preview{display:grid;min-height:0;flex:1 1 auto;grid-template-rows:auto minmax(0,1fr);justify-items:center;gap:10px;padding:16px;background:#252b28}.pattern-print-sheet-controls{display:flex;align-items:center;gap:12px;color:#c7d2ce;font-variant-numeric:tabular-nums}.pattern-print-sheet-controls button{min-height:30px;padding:5px 9px;border:1px solid #45514e;border-radius:3px;background:#2a3330;color:#dce5e2;font:inherit;cursor:pointer}.pattern-print-sheet-controls button:disabled{opacity:.45;cursor:not-allowed}.pattern-print-sheet-image{display:block;width:auto;max-width:100%;height:auto;max-height:100%;border:1px solid #697670;background:#fff;box-shadow:0 6px 22px #00000052}.pattern-print-empty{display:grid;flex:1 1 auto;align-content:center;justify-items:center;color:#9aa6a2}.pattern-print-empty h2{margin:0 0 6px;color:#dce5e2;font-size:15px}.pattern-print-empty p{margin:0}.pattern-pieces-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:8px;padding:14px 12px;border-bottom:1px solid #343b39}.pattern-pieces-header h1{margin:2px 0 0;font-size:16px;font-weight:600}.pattern-primary-button,.pattern-piece-actions button,.pattern-boundary-actions button,.pattern-feature-list button,.pattern-piece-delete,.pattern-layout-button,.pattern-export-button{min-height:28px;padding:5px 7px;border:1px solid #45514e;border-radius:3px;background:#2a3330;color:#dce5e2;font:inherit;font-size:10px;cursor:pointer}.pattern-primary-button:hover:not(:disabled),.pattern-piece-actions button:hover:not(:disabled),.pattern-boundary-actions button:hover:not(:disabled),.pattern-feature-list button:hover:not(:disabled),.pattern-piece-delete:hover:not(:disabled),.pattern-layout-button:hover:not(:disabled),.pattern-export-button:hover:not(:disabled){background:#37423e}.pattern-primary-button:disabled,.pattern-piece-actions button:disabled,.pattern-boundary-actions button:disabled,.pattern-feature-list button:disabled,.pattern-piece-delete:disabled,.pattern-layout-button:disabled,.pattern-export-button:disabled{opacity:.45;cursor:not-allowed}.pattern-primary-button,.pattern-export-button{border-color:#4b8b7b;background:#24574b}.pattern-primary-button:hover:not(:disabled),.pattern-export-button:hover:not(:disabled){background:#2d6b5b}.pattern-piece-list{flex:0 0 auto;border-bottom:1px solid #343b39}.pattern-piece-list-row{display:flex;min-width:0;align-items:center;gap:6px;padding:5px 10px;border-bottom:1px solid #2d3431}.pattern-piece-list-row.is-active{background:#28332f}.pattern-piece-select{display:flex;min-width:0;flex:1 1 auto;align-items:center;justify-content:space-between;gap:8px;padding:5px 2px;border:0;background:transparent;color:#e0e7e4;font:inherit;text-align:left;cursor:pointer}.pattern-piece-select span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pattern-piece-select small{flex:0 0 auto;color:#91aaa3;font-size:9px}.pattern-piece-delete{border-color:#704646;background:#402929}.pattern-piece-empty{margin:0;padding:9px 12px;color:#85938e;font-size:10px}.pattern-piece-editor{display:grid;align-content:start;gap:10px;padding:12px}.pattern-piece-field{display:grid;grid-template-columns:minmax(82px,.75fr) minmax(0,1fr);align-items:center;gap:8px;color:#aebcb9;font-size:10px}.pattern-piece-field input,.pattern-piece-field select{width:100%;min-width:0;min-height:30px;padding:5px 7px;border:1px solid #3d4844;border-radius:3px;background:#171b19;color:#e0e7e4;font:inherit}.pattern-piece-visibility{display:flex;align-items:center;gap:8px;color:#c7d2ce;font-size:10px}.pattern-piece-visibility input{width:15px;height:15px;margin:0;accent-color:#6ed0bb}.pattern-piece-section{display:grid;gap:7px;padding-top:10px;border-top:1px solid #343b39}.pattern-piece-section-heading{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:6px}.pattern-piece-section-heading h2{margin:0;color:#dce5e2;font-size:12px;font-weight:600}.pattern-piece-actions,.pattern-piece-feature-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:4px}.pattern-piece-feature-controls select{min-height:28px;max-width:82px;padding:4px;border:1px solid #3d4844;border-radius:3px;background:#171b19;color:#e0e7e4;font:inherit;font-size:10px}.pattern-piece-prompt{margin:0;color:#91aaa3;font-size:9px}.pattern-boundary-list,.pattern-feature-list{display:grid;gap:4px;margin:0;padding:0;list-style:none}.pattern-boundary-list li,.pattern-feature-list li{display:grid;min-width:0;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:4px;padding:5px;border:1px solid #343b39;border-radius:3px;background:#222825}.pattern-boundary-list li.is-selected,.pattern-feature-list li.is-selected{border-color:#6ed0bb}.pattern-boundary-index{color:#91aaa3;font-variant-numeric:tabular-nums}.pattern-boundary-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pattern-boundary-direction{color:#f2a27e;font-size:9px}.pattern-boundary-actions{display:flex;grid-column:2/-1;flex-wrap:wrap;gap:3px}.pattern-boundary-actions button{min-height:24px;padding:3px 5px;font-size:9px}.pattern-boundary-status{display:grid;gap:3px;color:#ef9999;font-size:9px;line-height:1.35}.pattern-boundary-status.is-valid{color:#6ed0bb}.pattern-feature-list li{grid-template-columns:minmax(0,1fr) auto}.pattern-piece-message{margin:0;color:#f2a27e;font-size:10px}.pattern-export-button{min-height:34px;justify-self:stretch}.parameters-page{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;overflow:hidden;background:#1e1e1e;color:#e0e7e4}.parameters-page-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid #3a3a3a;background:#232927}.parameters-page-header h1{margin:2px 0 0;font-size:18px;font-weight:600}.parameters-eyebrow{color:#91aaa3;font-size:10px;font-weight:700}.add-parameter-button,.parameter-save-button,.parameter-graph-button,.parameter-delete-button{min-height:30px;padding:5px 10px;border:1px solid #45514e;border-radius:3px;background:#2a3330;color:#dce5e2;font:inherit;font-size:11px;cursor:pointer}.add-parameter-button:hover:not(:disabled),.parameter-save-button:hover:not(:disabled),.parameter-graph-button:hover:not(:disabled),.parameter-delete-button:hover:not(:disabled){background:#37423e}.add-parameter-button:disabled,.parameter-save-button:disabled,.parameter-graph-button:disabled,.parameter-delete-button:disabled{opacity:.5;cursor:not-allowed}.add-parameter-button,.parameter-save-button{border-color:#4b8b7b;background:#24574b}.add-parameter-button:hover:not(:disabled),.parameter-save-button:hover:not(:disabled){background:#2d6b5b}.parameter-delete-button{border-color:#704646;background:#402929}.parameter-delete-button:hover:not(:disabled){background:#593333}.design-font-settings{flex:0 0 auto;padding:16px 20px 18px;border-bottom:1px solid #343b39}.design-font-settings h2{margin:0;color:#dce5e2;font-size:14px;font-weight:600}.printed-output-settings{flex:0 0 auto;padding:16px 20px 18px;border-bottom:1px solid #343b39}.printed-output-settings>h2{margin:0 0 12px;color:#dce5e2;font-size:14px;font-weight:600}.printed-output-sections{display:grid;grid-template-columns:minmax(300px,1.4fr) repeat(2,minmax(190px,1fr));gap:12px;max-width:1100px}.printed-output-group{display:grid;align-content:start;gap:10px;min-width:0;margin:0;padding:10px;border:1px solid #394440;border-radius:3px}.printed-output-group legend{padding:0 5px;color:#aebcb9;font-size:10px;font-weight:600}.printed-output-field{display:grid;min-width:0;grid-template-columns:minmax(90px,1fr) minmax(72px,1.1fr);align-items:center;gap:8px;color:#91aaa3;font-size:10px}.printed-output-field input,.printed-output-field select{width:100%;min-width:0;min-height:30px;padding:5px 7px;border:1px solid #3d4844;border-radius:3px;background:#171b19;color:#e0e7e4;font:inherit}.printed-output-field input:focus,.printed-output-field select:focus{outline:2px solid rgba(110,208,187,.55);outline-offset:1px}.printed-page-size-field{grid-template-columns:70px minmax(0,1fr)}.printed-output-toggle{display:flex;align-items:center;gap:8px;color:#c7d2ce;font-size:10px}.printed-output-toggle input{width:15px;height:15px;margin:0;accent-color:#6ed0bb}.printed-output-note{margin:-5px 0 0 23px;color:#81908a;font-size:9px;line-height:1.4}.printed-margin-grid{display:grid;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px}@media(max-width:1050px){.printed-output-sections{grid-template-columns:repeat(2,minmax(0,1fr))}.printed-output-group:first-child{grid-column:1/-1}}@media(max-width:680px){.printed-output-settings{padding-right:14px;padding-left:14px}.printed-output-sections{grid-template-columns:minmax(0,1fr)}.printed-output-group:first-child{grid-column:auto}}.design-font-format-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:1050px}.design-font-format{padding-top:14px}.design-font-format h3{margin:0 0 10px;color:#aebcb9;font-size:11px;font-weight:600}.design-font-fields{display:grid;grid-template-columns:minmax(130px,1fr) minmax(130px,.8fr) 90px;gap:12px}.design-font-field{display:flex;min-width:0;flex-direction:column;gap:6px;color:#91aaa3;font-size:10px}.design-font-field input,.design-font-field select{width:100%;min-width:0;min-height:32px;padding:6px 8px;border:1px solid #3d4844;border-radius:3px;background:#171b19;color:#e0e7e4;font:inherit}.design-font-field input:focus,.design-font-field select:focus{outline:2px solid rgba(110,208,187,.55);outline-offset:1px}.design-font-field input[type=color]{padding:3px}@media(max-width:900px){.design-font-format-grid{grid-template-columns:minmax(0,1fr);gap:0}}@media(max-width:540px){.design-font-settings{padding-right:14px;padding-left:14px}.design-font-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}.parameter-table-scroll{flex:1 1 auto;min-height:0;overflow:auto}.parameter-table{width:100%;min-width:860px;border-collapse:collapse;font-size:12px}.parameter-table th{position:sticky;z-index:1;top:0;padding:10px 12px;border-bottom:1px solid #424b48;background:#292f2d;color:#aebcb9;font-size:10px;font-weight:700;text-align:left}.parameter-table td{padding:10px 12px;border-bottom:1px solid #343b39;vertical-align:top}.parameter-table input{width:100%;min-width:120px;padding:7px 8px;border:1px solid #3d4844;border-radius:3px;background:#171b19;color:#e0e7e4;font:inherit}.parameter-table input:focus{outline:2px solid rgba(110,208,187,.55);outline-offset:1px}.parameter-row.has-error{background:#8437371f}.parameter-id{display:block;padding-top:7px;color:#c6d8d2;font-size:11px}.parameter-name-note{display:block;padding-top:4px;color:#73817c;font-size:9px}.parameter-expression-input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important}.parameter-current-value{display:inline-block;padding-top:7px;color:#c3d7ce;font-variant-numeric:tabular-nums}.parameter-row-error{max-width:300px;padding-top:5px;color:#ef9999;font-size:10px;line-height:1.35}.parameter-row-actions{display:flex;align-items:center;gap:5px}.parameter-list-empty{display:grid;min-height:220px;align-content:center;justify-items:center;color:#9aa6a2}.parameter-list-empty h2{margin:0 0 6px;color:#dce5e2;font-size:15px}.parameter-list-empty p{margin:0;font-size:12px}.floating-tool-palette{position:fixed;z-index:20;width:224px;max-height:calc(100vh - 24px);overflow:hidden;border:1px solid #3a3a3a;border-radius:4px;background:#1e1e1e;box-shadow:0 8px 24px #00000059}.floating-tool-palette-handle{display:block;width:100%;min-height:34px;padding:8px 10px;border:0;border-bottom:1px solid #3a3a3a;background:#252525;color:#e0e0e0;font:inherit;font-size:12px;font-weight:600;text-align:left;cursor:grab;touch-action:none}.floating-tool-palette-handle:focus-visible{outline:2px solid #6ed0bb;outline-offset:-2px}.floating-tool-palette.is-dragging .floating-tool-palette-handle{cursor:grabbing}.floating-tool-palette-content{max-height:calc(100vh - 32px);overflow-y:auto;padding:10px}.tool-creation-prompt{margin-bottom:10px;padding:8px;border-left:2px solid #6ed0bb;background:#252525;color:#c6d2cf;font-size:11px;line-height:1.4}.tool-creation-value{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:6px;margin-bottom:6px}.tool-creation-value input{width:100%;min-width:0;box-sizing:border-box}.design-elements-parameter-control{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.design-element-parameter-value{display:flex;align-items:center;min-height:28px;color:#d5ddda;font-size:11px;overflow-wrap:anywhere}.design-elements-parameter-list{width:100%;margin:0;padding:0 0 0 18px;color:#d5ddda;font-size:11px;line-height:1.5}.design-elements-parameter-list li{overflow-wrap:anywhere}.design-elements-parameter-empty{color:#888;font-size:11px}.design-elements-select-button{padding:5px 8px;border:1px solid #46534f;border-radius:3px;background:#252d2a;color:#d5ddda;font:inherit;font-size:11px;cursor:pointer}.design-elements-select-button:hover{background:#303b38}.panel{flex:1;display:flex;flex-direction:column;min-height:0;border-bottom:1px solid #3a3a3a}.panel>h2{margin:0;padding:12px 16px;font-size:13px;font-weight:600;color:#e0e0e0;border-bottom:1px solid #3a3a3a;background:#252525}.panel>div:not(h2){flex:1;overflow-y:auto;padding:12px}.sidebar-section:not([open]){flex:0 0 auto}.sidebar-section>summary{display:list-item;flex:0 0 auto;padding:12px 16px;border-bottom:1px solid #3a3a3a;background:#252525;color:#e0e0e0;font-size:13px;font-weight:600;cursor:pointer}.sidebar-section[open]{min-height:0}.sidebar-section>.sidebar-section-content{min-height:0}.tool-palette-root{display:flex;flex-direction:column;gap:12px}.tool-category{display:flex;flex-direction:column;gap:8px}.category-header{display:list-item;font-size:11px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.5px;padding:4px 0;cursor:pointer}.tools-in-category{display:grid;justify-content:start;gap:6px}.tool-card{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;padding:3px;background:#2a2a2a;border:1px solid #3a3a3a;border-radius:4px;cursor:pointer;transition:background-color .2s ease,border-color .2s ease;overflow:hidden}.tool-card:hover{background:#333;border-color:#4a4a4a}.tool-card:active{background:#1a1a1a}.tool-card .tool-icon{display:block}.property-inspector-root{display:flex;min-height:100%;flex-direction:column;gap:12px}.inspector-footer{position:sticky;z-index:2;bottom:-12px;margin-top:auto;padding-top:8px;background:#1e1e1e}.zoom-to-fit-button{display:flex;width:100%;min-height:40px;align-items:center;justify-content:center;gap:9px;padding:7px 10px;border:1px solid #45514e;border-radius:3px;background:#293331;color:#dce5e2;font:inherit;font-size:11px;cursor:pointer}.zoom-to-fit-button img{width:22px;height:22px}.zoom-to-fit-button:hover{border-color:#6ed0bb;background:#35413d}.zoom-to-fit-button:focus-visible{outline:2px solid #6ed0bb;outline-offset:2px}.inspector-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px 12px;color:#888;text-align:center}.inspector-empty p{margin:0;font-size:12px}.inspector-empty .inspector-hint{font-size:11px;color:#666}.inspector-header{padding:0 0 8px;border-bottom:1px solid #3a3a3a}.inspector-header .element-id{margin:0;font-size:13px;color:#e0e0e0;word-break:break-all}.inspector-section{display:flex;flex-direction:column;gap:8px}.section-header{font-size:11px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.5px;padding:4px 0}.section-content{display:flex;flex-direction:column;gap:8px;padding:8px;background:#2a2a2a;border-radius:4px}.element-style-controls select,.element-style-controls input:not([type=color]){width:100%;min-width:0;padding:6px 8px;border:1px solid #3a3a3a;border-radius:3px;background:#1a1a1a;color:#e0e0e0;font-size:11px}.element-style-controls input[type=color]{width:36px;height:28px;padding:2px;border:1px solid #3a3a3a;border-radius:3px;background:#1a1a1a;cursor:pointer}.info-row{display:grid;grid-template-columns:80px 1fr;gap:8px;align-items:center}.info-row label{font-size:11px;color:#aaa;font-weight:500}.info-row span{font-size:11px;color:#e0e0e0;word-break:break-all}.info-row span.description{grid-column:1/-1;color:#999;font-size:10px;line-height:1.4}.param-row{display:flex;flex-direction:column;gap:4px}.param-label{font-size:11px;color:#aaa;font-weight:500;display:flex;align-items:center;gap:4px}.param-label .required{color:#ff6b6b}.param-input{display:flex;flex-direction:column;gap:4px}.param-input input,.param-input select{padding:6px 8px;background:#1a1a1a;border:1px solid #3a3a3a;color:#e0e0e0;font-size:11px;border-radius:3px;transition:all .2s ease}.param-input input:hover,.param-input select:hover{border-color:#4a4a4a}.param-input input:focus,.param-input select:focus{outline:none;border-color:#5a9fd4;box-shadow:0 0 0 2px #5a9fd41a}.param-input input.input-error,.param-input select.input-error{border-color:#e45d5d;box-shadow:0 0 0 1px #e45d5d40}.param-input select{cursor:pointer}.param-input .reference-point-picker{position:relative;flex:1 1 auto;min-width:0;border:1px solid #3a3a3a;border-radius:3px;background:#1a1a1a}.param-input .reference-point-picker.input-error{border-color:#e45d5d;box-shadow:0 0 0 1px #e45d5d40}.param-input .reference-point-picker>summary{padding:8px;color:#e0e0e0;font-size:11px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.param-input .reference-point-picker[open]>summary{border-bottom:1px solid #3a3a3a}.param-input .reference-point-picker-options{position:absolute;z-index:30;top:100%;left:-1px;right:-1px;max-height:180px;overflow-y:auto;border:1px solid #3a3a3a;border-radius:0 0 3px 3px;background:#1a1a1a;box-shadow:0 6px 14px #00000059}.param-input .reference-point-picker-options button{display:block;width:100%;padding:8px;border:0;background:transparent;color:#e0e0e0;font:inherit;font-size:11px;text-align:left;cursor:pointer}.param-input .reference-point-picker-options button:hover,.param-input .reference-point-picker-options button[aria-selected=true]{background:#303b38}.param-input .reference-point-picker-empty{padding:8px;color:#888;font-size:11px}.boolean-parameter-control{display:flex;align-items:center;min-height:30px;gap:8px}.boolean-parameter-control input[type=checkbox]{width:15px;height:15px;margin:0;accent-color:#6ed0bb;cursor:pointer}.param-hint{font-size:9px;color:#666;font-style:italic}.expression-result{flex:0 0 auto;color:#8cc7a1;font-size:10px;line-height:1.4;white-space:nowrap}.expression-input-row{display:flex;align-items:center;gap:8px}.expression-input-row input{flex:1 1 auto;min-width:0}.param-control-row{display:flex;align-items:center;gap:8px}.param-control-row input,.param-control-row select,.param-control-row .reference-point-input{flex:1 1 auto;min-width:0}.param-error-icon{display:inline-flex;flex:0 0 18px;align-items:center;justify-content:center;width:18px;height:18px;border:1px solid #e45d5d;border-radius:50%;color:#f77;font-size:12px;font-weight:700;line-height:1;cursor:help}.toast-notification{position:fixed;right:16px;bottom:16px;z-index:1200;max-width:min(340px,100vw - 32px);padding:10px 12px;border:1px solid #52758a;border-radius:4px;background:#20303a;color:#e5edf1;font-size:12px;line-height:1.4;box-shadow:0 4px 14px #00000047;pointer-events:none;animation:toast-enter .14s ease-out}.toast-success{border-color:#4b9970;background:#20372d}.toast-error{border-color:#b64f4f;background:#3b2525}@keyframes toast-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.inspector-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.apply-parameters{padding:6px 12px;border:1px solid #5a9fd4;border-radius:3px;background:#2f6f9f;color:#fff;font-size:11px;cursor:pointer}.apply-parameters:hover{background:#3a82b8}.dependency-dialog-button,.modal-dialog-header button{padding:6px 12px;border:1px solid #4b5a57;border-radius:3px;background:#293331;color:#dce5e2;font-size:11px;cursor:pointer}.dependency-dialog-button:hover,.modal-dialog-header button:hover{background:#35423f}.delete-element-control{display:inline-flex}.delete-element-button{padding:6px 12px;border:1px solid #8c4949;border-radius:3px;background:#482727;color:#f2dede;font-size:11px;cursor:pointer}.delete-element-button:hover:not(:disabled){background:#623333}.delete-element-button:disabled{opacity:.55;cursor:not-allowed}.modal-backdrop{position:fixed;z-index:1100;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;background:#080c0bb8}.modal-dialog{display:flex;flex-direction:column;max-height:min(80vh,720px);border:1px solid #43504d;border-radius:4px;background:#1e2422;color:#e0e7e4;box-shadow:0 18px 48px #0000007a;outline:none}.modal-dialog.modal-small{width:min(360px,100%)}.modal-dialog.modal-medium{width:min(560px,100%)}.modal-dialog.modal-large{width:min(820px,100%)}.modal-dialog-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid #3a4542}.modal-dialog-header h2{margin:0;font-size:14px;font-weight:600}.modal-dialog-body{min-height:0;overflow:auto;padding:16px}.dependency-dialog-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.dependency-dialog-lists h3{margin:0 0 10px;color:#aebcb9;font-size:12px;font-weight:600}.dependency-dialog-lists ul{display:grid;gap:6px;margin:0;padding-left:18px;font-size:12px}.dependency-empty{margin:0;color:#899491;font-size:12px}.json-file-dropzone{display:grid;min-height:190px;align-content:center;justify-items:center;gap:10px;padding:24px;border:1px dashed #65736e;border-radius:4px;background:#202725;color:#dce5e2;text-align:center;transition:background-color .12s ease,border-color .12s ease}.json-file-dropzone.is-active{border-color:#6ed0bb;background:#263a34}.json-file-dropzone p{margin:0;font-size:13px;font-weight:600}.json-file-dropzone>span{color:#94a19c;font-size:11px}.json-file-picker{min-height:32px;padding:7px 12px;border:1px solid #4b8b7b;border-radius:3px;background:#24574b;color:#f0f6f4;font:inherit;font-size:11px;cursor:pointer}.json-file-picker:hover{background:#2d6b5b}.json-file-picker:focus-visible{outline:2px solid #6ed0bb;outline-offset:2px}.json-file-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}@media(max-width:560px){.modal-backdrop{padding:12px}.dependency-dialog-lists{grid-template-columns:1fr;gap:18px}}.design-element{cursor:pointer;transition:filter .12s ease}.design-element-selectable{cursor:pointer;filter:drop-shadow(0 0 2px rgba(110,208,187,.8))}.design-element-hovered{filter:drop-shadow(0 0 3px rgba(240,164,60,.9))}.design-element-hovered circle{fill:#f0a43c}.design-element-hovered text{fill:#f0a43c}.design-element-selected{filter:drop-shadow(0 0 4px rgba(77,163,217,.95))}.design-element-selected circle{fill:#4da3d9;stroke:#fff;stroke-width:1.5px}.design-element-selected text{fill:#4da3d9;font-weight:700}
