html,body,#root{height:100%}.app-shell{display:flex;height:100%;background:var(--bg-primary, #f0f0f0)}.app-shell.error{align-items:center;justify-content:center;color:#c92a2a;font-size:14px}.sidebar{width:240px;flex:none;overflow-y:auto;padding:8px;background:#fcfdff;border-right:1px solid rgba(120,130,150,.35);display:flex;flex-direction:column}.sidebar .tree-view{flex:1;min-height:0;overflow-y:auto}.sidebar-title{font-weight:600;padding:6px 8px 4px;font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.sidebar ul{list-style:none;margin:0;padding:0}.sidebar li{padding:5px 8px;border-radius:5px;cursor:pointer;font-size:13px;color:var(--text-primary)}.sidebar li:hover{background:var(--row-hover)}.sidebar li.active{background:var(--selection-color);color:#fff}.right-column{width:300px;flex:none;display:flex;flex-direction:column;background:#fcfdff;border-left:1px solid rgba(120,130,150,.35);min-height:0}.right-column .inspector{width:auto;flex:1 1 55%;min-height:0;overflow-y:auto;border-left:none;border-bottom:1px solid rgba(120,130,150,.35)}.right-column .palette{flex:1 1 45%;min-height:0;overflow-y:auto;margin-top:0;border-top:none;padding:8px}.palette{margin-top:12px;border-top:1px solid rgba(120,130,150,.35);padding-top:8px}.palette .sidebar-title{padding:6px 8px 4px}.palette-family{margin-bottom:2px}.palette-family-header{padding:4px 8px;font-size:12px;font-weight:600;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;gap:5px;border-radius:5px}.palette-family-header:hover{background:var(--row-hover)}.palette-caret{font-size:9px;width:8px;display:inline-block;color:var(--text-muted)}.palette-entries{list-style:none;margin:0;padding:0}.palette-entry{padding:4px 8px 4px 20px;border-radius:5px;cursor:pointer;color:var(--text-primary);display:flex;flex-direction:column;gap:1px;min-width:0}.palette-entry:hover{background:var(--row-hover)}.palette-entry-command{font-family:Courier New,monospace;font-size:11px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette-disabled{opacity:.5}.palette-disabled .palette-entry{cursor:not-allowed}.palette-disabled .palette-entry:hover{background:none}.main{flex:1;display:flex;flex-direction:column;min-width:0}.toolbar{display:flex;align-items:center;gap:12px;padding:6px 10px;background:#fcfdff;border-bottom:1px solid rgba(120,130,150,.35)}.doc-path{flex:1;font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar .btn-acrylic-secondary{padding:4px 12px;min-width:0;font-size:12px}.read-only-banner{padding:6px 10px;font-size:12px;color:#7a5b00;background:#ffc1072e;border-bottom:1px solid rgba(255,193,7,.45)}.canvas{position:relative;flex:1;overflow:auto;font-family:Courier New,monospace;font-size:11.5px;color:#e8e9ed}.canvas-bg{position:absolute;left:0;top:0;-webkit-user-select:none;user-select:none}.canvas-screen{box-sizing:border-box;outline:1px dashed rgba(255,255,255,.45);outline-offset:-1px}.widget{position:absolute;white-space:pre;cursor:grab;-webkit-user-select:none;user-select:none;padding:0 1px;border:1px solid transparent}.widget.locked{cursor:not-allowed}.widget.unrecognized{display:none}.widget.selected{border-color:#4c6ef5;background:#4c6ef526}.widget.tag-missing{outline:2px solid #d11a2a;outline-offset:1px}.widget:hover{border-color:#4c6ef599}.widget-shape{display:block}.widget-box{border:1px solid #000;box-sizing:border-box;display:flex;align-items:center;justify-content:center;overflow:hidden}.widget-box-text{font-family:Courier New,monospace;font-size:10px;color:#111;padding:0 2px;text-align:center;white-space:nowrap}.widget-bar{position:relative;border:1px solid #000;box-sizing:border-box;overflow:hidden}.widget-list{border:1px solid #000;box-sizing:border-box;font-family:Courier New,monospace;font-size:10px;color:#111;padding:2px 4px;background:#fff9;min-width:60px;min-height:24px;display:flex;align-items:center;justify-content:center;text-align:center}.resize-handle{position:absolute;width:8px;height:8px;background:#4c6ef5;border:1px solid #ffffff;cursor:nwse-resize;z-index:5}.resize-ghost{position:absolute;box-sizing:border-box;pointer-events:none;z-index:4;border:1px dashed #4c6ef5;background:#4c6ef514}.vertex-handle{position:absolute;width:8px;height:8px;border-radius:50%;background:#4c6ef5;border:1px solid #ffffff;cursor:move;z-index:5}.vertex-ghost{position:absolute;pointer-events:none;z-index:4}.rubber-band{position:absolute;box-sizing:border-box;pointer-events:none;z-index:6;border:1px dashed #4c6ef5;background:#4c6ef514}.statusbar{padding:4px 10px;font-size:12px;color:var(--text-muted);min-height:20px;background:#fcfdff;border-top:1px solid rgba(120,130,150,.35)}.inspector{width:260px;flex:none;overflow-y:auto;padding:10px;background:#fcfdff;border-left:1px solid rgba(120,130,150,.35)}.inspector-title{font-weight:600;padding:0 0 8px;font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.inspector-command{font-family:Courier New,monospace;font-size:13px;font-weight:600;padding-bottom:8px;display:flex;align-items:center;gap:6px;color:var(--text-primary)}.inspector-badge{font-size:10px;font-weight:400;text-transform:uppercase;color:var(--text-muted);background:#7882961f;border-radius:4px;padding:1px 5px}.inspector-note{font-size:12px;color:var(--text-muted);line-height:1.4}.widget-start-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;padding:0 4px;margin:0;font-family:Segoe UI,Arial,sans-serif;font-size:11px;line-height:1;color:#102a2a;background:linear-gradient(180deg,#fbfbfb,#dcdcdc);border:1px solid #7c8a8a;border-radius:4px;box-shadow:0 1px 1px #00000040;overflow:hidden;white-space:nowrap;pointer-events:none}.inspector-palette{margin:8px 0}.inspector-palette-label{font-size:11px;color:var(--text-secondary);margin-bottom:4px}.inspector-palette-swatches{display:flex;flex-wrap:wrap;gap:2px}.inspector-palette-swatches span{width:12px;height:12px;border-radius:2px;border:1px solid rgba(120,130,150,.35);display:inline-block}.inspector-variant{display:flex;align-items:center;gap:8px;padding-bottom:8px;font-size:12px;color:var(--text-secondary)}.inspector-variant select{flex:1;min-width:0}.field-picker-btn{flex:none;width:26px;min-width:0;padding:0;font-size:13px;line-height:1;border:1px solid var(--border-color);border-radius:7px;cursor:pointer;background:#ffffffd9;color:var(--text-secondary)}.field-picker-btn:hover{background:var(--row-hover);color:var(--text-primary)}.colour-swatch{display:inline-block;width:12px;height:12px;border-radius:3px;border:1px solid rgba(120,130,150,.35)}.canvas-tooltip{position:fixed;z-index:1400;max-width:300px;pointer-events:none;background:#1c2130f0;color:#e8ebf2;border:1px solid rgba(255,255,255,.18);border-radius:8px;box-shadow:0 8px 24px #0a0f1e66;padding:7px 10px;font-size:11.5px;line-height:1.5;font-family:Segoe UI,Tahoma,sans-serif;white-space:nowrap}.canvas-tooltip-title{font-family:Courier New,monospace;font-weight:700;font-size:12px;margin-bottom:3px;color:#fff}.canvas-tooltip-label{color:#9fb0d0}.canvas-tooltip-swatch{display:inline-block;width:10px;height:10px;border-radius:2px;border:1px solid rgba(255,255,255,.5);margin:0 4px 0 1px;vertical-align:-1px}.canvas-tooltip-hex{color:#9fb0d0}.canvas-tooltip-missing{color:#ff7b88;font-weight:600}.view-text-editor{flex:1;width:100%;box-sizing:border-box;resize:none;font-family:Courier New,Consolas,monospace;font-size:12.5px;line-height:1.45;padding:8px;border:1px solid var(--border-color);border-radius:8px;background:#ffffffe6;color:var(--text-primary);white-space:pre;overflow:auto}.view-text-editor:focus{outline:none;border-color:var(--accent-color)}.font-combo-pop{position:fixed;z-index:1300;width:220px;max-height:260px;overflow-y:auto;background:#fcfdfffa;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(160,170,190,.45);border-radius:8px;box-shadow:0 12px 36px #141e3c4d;padding:4px}.font-combo-pop button{display:block;width:100%;min-width:0;text-align:left;padding:4px 8px;font-size:12px;border:none;border-radius:5px;background:none;color:var(--text-primary);cursor:pointer}.font-combo-pop button:hover{background:var(--row-hover)}.font-combo-pop button.active{background:var(--selection-color);color:#fff}.font-combo-empty{padding:6px 8px;font-size:12px;color:var(--text-muted)}.multi-select-count{font-size:13px;font-weight:600;color:var(--text-primary);padding-bottom:10px}.multi-select-actions{display:flex;flex-direction:column;gap:6px}.multi-select-actions .btn-acrylic-secondary{width:100%}.multi-select-delete{color:#c92a2a}.graph-section-panel{margin-top:14px;padding-top:10px;border-top:1px solid rgba(120,130,150,.35)}.graph-section-title{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-family:Courier New,monospace;font-size:13px;font-weight:600;color:var(--text-primary)}.graph-section-badge{font-size:10px;font-weight:400;text-transform:uppercase;border-radius:4px;padding:1px 5px}.graph-section-badge.exists{color:#2b8a3e;background:#2b8a3e1f}.graph-section-badge.missing{color:var(--text-muted);background:#7882961f}.graph-section-summary{font-size:11px;color:var(--text-secondary);margin-bottom:8px}.graph-section-actions{display:flex;gap:6px;margin-bottom:10px}.graph-section-actions .btn-acrylic-secondary{padding:4px 10px;min-width:0;font-size:11px}.graph-section-group{margin-bottom:6px;border:1px solid rgba(120,130,150,.2);border-radius:6px;overflow:hidden}.graph-section-group-header{padding:5px 8px;font-size:11.5px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:5px;color:var(--text-secondary);background:#78829614}.graph-section-group-header:hover{background:var(--row-hover)}.graph-section-caret{font-size:9px;width:8px;display:inline-block;color:var(--text-muted)}.graph-section-group-body{padding:6px 8px}.graph-section-remove-btn{flex:none;width:22px;min-width:0;padding:0;font-size:10px;line-height:1;border:1px solid var(--border-color);border-radius:6px;cursor:pointer;background:#ffffffd9;color:var(--text-muted)}.graph-section-remove-btn:hover{background:var(--row-hover);color:#c92a2a}.graph-section-addkey{display:flex;gap:4px;margin-top:4px}.graph-section-addkey-name,.graph-section-addkey-value{flex:1;min-width:0}.graph-section-addkey input{font-family:inherit;font-size:11px;padding:3px 6px;border:1px dashed var(--border-color);border-radius:6px;background:#fff9;color:var(--text-primary)}.graph-section-addkey-btn{flex:none;padding:3px 8px;font-size:11px;border:1px solid var(--border-color);border-radius:6px;cursor:pointer;background:#ffffffd9;color:var(--text-secondary)}.graph-section-addkey-btn:hover:not(:disabled){background:var(--row-hover);color:var(--text-primary)}.graph-section-addkey-btn:disabled{opacity:.4;cursor:default}.sidebar-footer{margin-top:12px;padding-top:8px;display:flex;flex-direction:column;gap:6px;border-top:1px solid rgba(120,130,150,.35)}.sidebar-footer .btn-acrylic-secondary{width:100%;padding:6px 10px;min-width:0;font-size:12px}.manage-views-status{font-size:12px;color:var(--text-secondary);margin-bottom:4px}.manage-views-panes{display:flex;gap:14px;flex:1;min-height:0}.manage-views-groups{width:200px;flex:none;display:flex;flex-direction:column;min-height:0}.manage-views-views{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0}.manage-views-pane-title{font-weight:600;font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;padding-bottom:6px}.manage-views-group-list,.manage-views-view-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1;border:1px solid rgba(120,130,150,.25);border-radius:8px;background:#ffffff80}.manage-views-group-list li{padding:6px 10px;cursor:pointer;font-size:13px;color:var(--text-primary);border-bottom:1px solid rgba(120,130,150,.12)}.manage-views-group-list li:last-child{border-bottom:none}.manage-views-group-list li:hover{background:var(--row-hover)}.manage-views-group-list li.active{background:var(--selection-color);color:#fff}.manage-views-count{font-size:11px;opacity:.75}.manage-views-group-list li.dragging,.manage-views-view-list li.dragging{opacity:.45}.manage-views-view-list li{cursor:grab}.manage-views-view-list li{border-bottom:1px solid rgba(120,130,150,.12)}.manage-views-view-list li:last-child{border-bottom:none}.manage-views-row{display:flex;align-items:center;gap:6px;padding:6px 10px;font-size:13px}.manage-views-view-label{flex:1;font-family:Courier New,monospace;color:var(--text-primary)}.manage-views-row .btn-acrylic-secondary,.manage-views-row .btn-acrylic-primary{padding:3px 10px;min-width:0;font-size:11.5px;flex:none}.manage-views-row-editing input{flex:1;min-width:0;font-size:13px;font-family:inherit;padding:4px 8px;border:1px solid var(--border-color);border-radius:7px;background:#ffffffe6;color:var(--text-primary)}.manage-views-confirm-text{flex:1;font-size:12.5px;color:var(--text-secondary)}.manage-views-newform{margin-top:10px;padding:10px;border-radius:8px;border:1px dashed rgba(120,130,150,.4);background:#fff6;display:flex;flex-direction:column;gap:8px}.manage-views-newform-row{display:flex;align-items:center;gap:8px;font-size:12.5px}.manage-views-newform-row label{width:70px;flex:none;color:var(--text-secondary)}.manage-views-newform-row select,.manage-views-newform-row input{flex:1;min-width:0;font-size:12.5px;font-family:inherit;padding:5px 8px;border:1px solid var(--border-color);border-radius:7px;background:#ffffffe6;color:var(--text-primary)}.manage-views-newform-actions{display:flex;gap:6px;justify-content:flex-end}.settings-status{font-size:12px;color:var(--text-secondary);margin-bottom:4px}.settings-tabs{display:flex;gap:6px;margin-bottom:10px;border-bottom:1px solid rgba(120,130,150,.25)}.settings-tab{padding:8px 14px;font-size:13px;font-weight:500;color:var(--text-secondary);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;display:flex;align-items:center;gap:6px}.settings-tab:hover{color:var(--text-primary)}.settings-tab.active{color:var(--accent-color);border-bottom-color:var(--accent-color);font-weight:600}.settings-section-editor{margin-top:0;padding-top:0;border-top:none;flex:1;overflow-y:auto}.colour-swatch-btn{display:inline-block;width:14px;min-width:0;height:14px;border-radius:3px;padding:0;border:1px solid rgba(120,130,150,.35);cursor:pointer;flex:none}.colour-swatch-btn:hover{border-color:var(--accent-color)}.colour-popover{position:fixed;z-index:1300;width:192px;padding:10px;background:#fcfdfff5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.65);border-radius:10px;box-shadow:0 16px 48px #141e3c59;font-family:Segoe UI Variable,Segoe UI,sans-serif}.colour-popover-title{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.colour-popover-hex-row{display:flex;align-items:center;gap:6px;margin-bottom:8px}.colour-popover-hex-input{width:32px;height:22px;padding:0;border:1px solid var(--border-color);border-radius:5px;cursor:pointer}.colour-popover-hex-label{font-size:12px;color:var(--text-secondary)}.colour-popover-section-label{font-size:10.5px;color:var(--text-muted);margin:6px 0 4px}.colour-popover-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:4px}.colour-popover-swatch{width:18px;height:18px;padding:0;border-radius:4px;cursor:pointer;border:1px solid rgba(120,130,150,.35)}.colour-popover-swatch:hover{outline:2px solid var(--accent-color);outline-offset:1px}.config-props-panel .inspector-note{margin-bottom:10px}.config-props-checkbox-row{display:flex;align-items:center;margin:10px 0}.config-props-checkbox-label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-primary);cursor:pointer}.config-props-more-btn{margin-top:10px;width:100%;padding:6px 10px;min-width:0;font-size:12px}.view-props-panel .inspector-command{font-size:12px}.property-grid{border:1px solid rgba(160,170,190,.3);border-radius:8px;background:#ffffff8c;overflow:hidden;font-size:12px;margin-bottom:10px}.property-grid table{width:100%;border-collapse:collapse;table-layout:fixed}.property-grid th{background:#f4f6fbf2;border-bottom:1px solid rgba(160,170,190,.3);padding:4px 8px;text-align:left;font-weight:600;font-size:11px;color:var(--text-secondary)}.property-grid th:first-child{width:42%}.property-grid td{border-bottom:1px solid rgba(160,170,190,.18);vertical-align:middle}.property-grid tr:last-child td{border-bottom:none}.property-grid tr:nth-child(2n){background:#7882960d}.property-grid tr:hover{background:var(--row-hover)}.property-grid-name{padding:4px 8px;color:var(--text-secondary);font-family:Courier New,monospace;font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:0}.property-grid-value-inner{display:flex;align-items:center;gap:4px;padding:2px 4px}.property-grid-static{padding:2px 4px;color:var(--text-primary)}.property-grid-value-inner input{flex:1;min-width:0;font-family:inherit;font-size:12px;padding:3px 6px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--text-primary)}.property-grid-value-inner input:hover{background:#ffffff80}.property-grid-value-inner input.invalid{color:#d11a2a;font-weight:600}.property-grid-select{flex:1;min-width:0;font-family:inherit;font-size:12px;padding:2px 4px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--text-primary);cursor:pointer}.property-grid-select:hover{background:#ffffff80}.property-grid-select:focus{border-color:var(--accent-color);outline:none}.property-grid-select.invalid{color:#d11a2a;font-weight:600}.property-grid-value-inner input:focus{border-color:var(--accent-color);background:#ffffffe6;outline:none}.inspector-config-colours{margin-top:8px}.canvas-grid{position:absolute;left:0;top:0;pointer-events:none}.canvas-grid-minor{stroke:currentColor;stroke-opacity:.35;stroke-width:1}.canvas-grid-major{stroke:currentColor;stroke-opacity:.7;stroke-width:1}.toolbar-grid{display:inline-flex;align-items:center;gap:4px}.toolbar-grid-on{outline:2px solid var(--accent, #4c9aff);outline-offset:-2px}.toolbar-grid-spacing{font-size:11.5px;padding:2px 4px}.tree-node.has-error .tree-label{color:#d11a2a;font-weight:600}.tree-node.has-error.selected .tree-label{color:#ff7b88}.tree-error-badge{display:inline-block;margin-left:6px;min-width:14px;height:14px;line-height:14px;border-radius:7px;background:#d11a2a;color:#fff;font-size:10px;font-weight:700;text-align:center;padding:0 3px}.screen-editor{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;background:var(--bg-primary, #f0f0f0)}.screen-editor .main{min-height:0}.screen-editor .toolbar{flex-wrap:wrap;flex:none}.screen-editor .toolbar button{white-space:nowrap;flex:none}.screen-editor .toolbar .btn-acrylic-primary{padding:4px 12px;min-width:0;font-size:12px}.screen-editor-conflict{display:flex;align-items:center;gap:10px;flex:none;padding:6px 10px;font-size:12px;color:#7a2a00;background:#ff8c0029;border-bottom:1px solid rgba(255,140,0,.45)}.screen-editor-conflict .btn-acrylic-secondary{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;min-width:0;font-size:12px;white-space:nowrap;flex:none}.screen-editor-body{display:flex;flex:1;min-height:0}.screen-editor-placeholder{flex:1;padding:12px;font-size:12px;color:#c92a2a}.screen-edit-button{position:absolute;top:6px;right:6px;z-index:50;display:inline-flex;align-items:center;gap:6px;padding:4px 8px;font-size:12px;cursor:pointer;font-family:Segoe UI,system-ui,sans-serif;color:#1f2a44;background:#fcfdffd9;border:1px solid rgba(120,130,150,.5);border-radius:5px;opacity:.75}.screen-edit-button:hover{opacity:1;background:#fcfdff}
