:root,.god-theme-dialog[data-theme=alfaverse]{color:var(--text);background:var(--page-background);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page-background:#07110f;--page-glow:#123028;--surface:#0d1a17;--surface-raised:#10201b;--surface-interactive:#132c22;--surface-interactive-hover:#1a3a2b;--input-background:#091411;--header-background:#07110fe8;--text:#edf5ef;--text-strong:#f1fbf4;--line:#22352e;--panel:var(--surface);--lime:#c9f36c;--mint:#64d8af;--context-type-colour:var(--mint);--muted:#8fa29a;--dropdown-background:#0d1a17;--dropdown-item-background:#10201b;--dropdown-border:#315047;--dropdown-text:#edf5ef;--dropdown-muted:#8fa29a;--dropdown-accent:#c9f36c;--selection-color:#ff6fae;--selection-thickness:3px;--activity-history-height:74px;--button-height:32px;--button-padding:6px 10px;--button-border:1px solid var(--line);--button-radius:7px;font-family:Inter,system-ui,sans-serif}body[data-theme=midnight],.god-theme-dialog[data-theme=midnight]{--page-background:#090d1a;--page-glow:#17234a;--surface:#10162a;--surface-raised:#172039;--surface-interactive:#1d2949;--surface-interactive-hover:#283963;--input-background:#0c1223;--header-background:#090d1ae8;--text:#edf1ff;--text-strong:#fff;--line:#344362;--lime:#a8c7ff;--mint:#82d6ff;--muted:#a2b0ca;--dropdown-background:var(--surface);--dropdown-item-background:var(--surface-raised);--dropdown-border:#496083;--dropdown-text:var(--text);--dropdown-muted:var(--muted);--dropdown-accent:var(--lime);--selection-color:#ff8dca}body[data-theme=light],.god-theme-dialog[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page-background:#f2f7f2;--page-glow:#d4ebe1;--surface:#fff;--surface-raised:#edf6f0;--surface-interactive:#e0f0e7;--surface-interactive-hover:#cce8d8;--input-background:#fff;--header-background:#f8fcf9e8;--text:#153126;--text-strong:#0c2118;--line:#a6c7b4;--lime:#477a16;--mint:#147a5a;--muted:#547064;--dropdown-background:var(--surface);--dropdown-item-background:var(--surface-raised);--dropdown-border:#83aa96;--dropdown-text:var(--text);--dropdown-muted:var(--muted);--dropdown-accent:var(--lime);--selection-color:#ba2b70}*{box-sizing:border-box}body{background:radial-gradient(circle at 65% 28%, var(--page-glow), transparent 38%), var(--page-background);min-width:720px;margin:0}button,input,textarea{font:inherit}select{border:1px solid var(--dropdown-border);background:var(--input-background);color:var(--text);border-radius:8px;padding:11px}button{min-height:var(--button-height);padding:var(--button-padding);border:1px solid var(--button-standard-border,var(--line));border-radius:var(--button-radius);background:var(--button-standard-background,var(--surface-interactive));color:var(--button-standard-text,var(--text));cursor:pointer}button:disabled{border-color:var(--button-disabled-border,color-mix(in srgb, var(--line) 72%, transparent));background:var(--button-disabled-background,color-mix(in srgb, var(--surface-interactive) 45%, transparent));color:var(--button-disabled-text,color-mix(in srgb, var(--muted) 72%, transparent));cursor:not-allowed;opacity:.42;filter:grayscale(.8);box-shadow:none}button.primary:disabled{background:color-mix(in srgb, var(--surface-interactive) 65%, var(--page-background))!important;color:var(--muted)!important}button[data-action-icon]{align-items:center;gap:.4em;display:inline-flex}button[data-action-icon]:before{font-size:1em;line-height:1}button[data-action-icon=view]:before{content:"👁"}button[data-action-icon=add]:before{content:"＋"}button[data-action-icon=create]:before{content:"⊞"}button[data-action-icon=edit]:before{content:"✎"}button[data-action-icon=delete]:before{content:"🗑"}button[data-action-icon=cancel]:before{content:"×"}button[data-action-icon=save]:before{content:"💾"}button[data-action-icon=close]:before{content:"×"}button[data-action-icon=try]:before{content:"▶"}button[data-action-icon=apply]:before{content:"✓"}.open-door-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;vertical-align:-.15em;width:16px;height:16px;margin-right:.4em}button[data-action-icon=data]:before{content:"▤"}.entry-preview-dialog .view-dialog-actions{align-items:center;gap:7px;display:flex}.entry-preview-dialog .view-dialog-actions>button{min-height:var(--button-height);padding:var(--button-padding);border:var(--button-border);border-radius:var(--button-radius);background:var(--surface-interactive);color:var(--text);font:inherit}.entry-preview-dialog .view-dialog-actions>button:hover:not(:disabled),.entry-preview-dialog .view-dialog-actions>button:focus-visible{border-color:#fff}.entry-preview-dialog{height:min(680px, calc(100vh - 88px - var(--activity-history-height)));resize:both;overflow:hidden!important}.entry-preview-dialog>section{grid-template-rows:auto auto minmax(0,1fr) auto;height:100%;display:grid}.entry-preview-dialog>section>.note{margin:10px 14px}.entry-preview-dialog [data-entry-preview-fields]{min-height:0;padding:0 14px 14px;overflow:auto}.entry-preview-data{height:var(--entry-preview-data-height,180px);border-top:1px solid var(--line);background:color-mix(in srgb, var(--input-background) 70%, transparent);grid-template-rows:9px minmax(0,1fr);align-self:end;min-height:100px;margin-top:14px;display:grid}.entry-preview-data-resize{cursor:ns-resize;touch-action:none;position:relative}.entry-preview-data-resize:after{content:"";background:var(--line);height:2px;position:absolute;top:3px;left:0;right:0}.entry-preview-data-resize:hover:after,.entry-preview-data-resize:focus-visible:after{background:var(--mint)}.entry-preview-data pre{border:1px solid var(--line);background:var(--input-background);min-height:0;color:var(--mint);border-radius:7px;margin:0 10px 10px;padding:12px;font:12px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:auto}header{z-index:1100;border-bottom:1px solid var(--line);background:var(--header-background);grid-template-rows:70px 62px;grid-template-columns:1fr auto;justify-content:space-between;align-items:center;height:132px;padding:0 28px;display:grid;position:sticky;top:0}body.admin-mode #app>header{background:linear-gradient(180deg, #c8862f6b 0%, transparent 100%), var(--header-background);border-bottom-color:#d69a45}body.god-mode #app>header{background:linear-gradient(180deg, #c51c367a 0%, transparent 100%), var(--header-background);border-bottom-color:#ff5968}.brand{align-items:center;gap:12px;display:flex}.header-actions{justify-self:end}.context-home-header{border-top:1px solid var(--line);grid-column:1/-1;justify-content:space-between;align-items:center;gap:24px;display:flex}.context-home-header h1{margin:2px 0;font-size:24px}.context-home-header p{display:none}.context-home-header em{color:var(--mint);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-style:normal;font-weight:700}body.editor-open header{grid-template-rows:70px;height:70px}body.editor-open .context-home-header{display:none}body.editor-open main{height:calc(100vh - 70px - var(--activity-history-height))}.brand>b{width:40px;height:40px;color:var(--lime);border:1px solid #416458;border-radius:12px;place-items:center;display:grid}body.god-mode .brand>b{color:#ffd8dc;background:#8f17276b;border-color:#ff5968;box-shadow:0 0 13px #ff596847}body.god-mode .brand strong{color:#ffe1e4}body.god-mode .brand small{color:#ff929d}.brand strong,.brand small{display:block}.brand small{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:10px}.online{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.online i{background:var(--mint);width:7px;height:7px;box-shadow:0 0 12px var(--mint);border-radius:50%}.profile-placeholder{border:1px dashed color-mix(in srgb, var(--line) 80%, transparent);width:34px;height:34px;color:var(--muted);opacity:.55;cursor:not-allowed;background:0 0;border-radius:50%;place-items:center;display:inline-grid}.profile-placeholder span{font-size:17px;line-height:1}.header-actions{white-space:nowrap;scrollbar-width:thin;align-items:center;gap:14px;min-width:0;max-width:calc(100vw - 190px);display:flex;overflow:visible}.theme-picker{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:6px;font-size:11px;font-weight:700;display:inline-flex}.theme-picker select{min-height:32px;padding:5px 28px 5px 8px;font-size:11px}.disclosure-control{border:1px solid var(--mint);background:var(--surface-interactive);width:24px;height:24px;color:var(--text);font:inherit;cursor:pointer;border-radius:50%;place-items:center;padding:0;font-size:17px;line-height:1;display:grid}.disclosure-control:hover,.disclosure-control:focus-visible{border-color:var(--lime);background:var(--surface-interactive-hover);outline:none}.mode-toggle{border:1px solid var(--line);min-height:38px;color:var(--muted);background:#0c1a16;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;display:inline-flex}.account-toggle{border:1px solid var(--line);background:var(--surface-interactive);min-height:34px;color:var(--text);border-radius:8px;padding:6px 10px;font-size:12px}.account-toggle:hover,.account-toggle:focus-visible{border-color:#fff;outline:none}.mode-toggle span{color:var(--mint);font-size:18px}.mode-toggle strong{letter-spacing:.06em;text-transform:uppercase;font-size:11px}.admin-mode .mode-toggle{color:#ffd08a;background:#251d13;border-color:#9b7135}.admin-mode .mode-toggle span{color:#ffc56f}.god-mode .mode-toggle{color:#ffd9dd;background:#43191d;border-color:#ff5968;box-shadow:0 0 14px #ff596852}.god-mode .mode-toggle span{color:#ff6e7b}.god-mode [data-god-layout-toggle],.god-mode [data-god-tools-toggle],.god-mode [data-god-mapping-review],.god-mode [data-god-model-security],.god-mode [data-god-development-identity],.god-mode [data-god-edit-themes],.god-mode [data-god-template-reset],.god-mode [data-god-template-selector],.god-mode [data-god-structure-boundaries],.god-mode [data-god-div-editor-toggle],.god-mode [data-god-history-toggle],.god-mode [data-god-layout-apply],.god-mode [data-god-layout-force-update],.god-mode [data-god-force-confirm],.god-mode [data-god-theme-save],.god-mode [data-god-theme-undo],.god-mode [data-god-theme-apply],.god-mode [data-connection-contract-editor],.god-mode [data-context-type-configuration],.god-mode .god-form-context-menu button,.god-mode #connection-contract-dialog button.primary,.god-mode #context-type-configuration-dialog button.primary{--god-button-background:var(--button-god-background,color-mix(in srgb, #991d2d 58%, var(--surface-interactive)));border-color:var(--button-god-border,#ff5968);background:var(--god-button-background);color:var(--button-god-text,#ffe7e9);box-shadow:0 0 10px color-mix(in srgb, var(--button-god-glow,#ff5968) 23%, transparent)}.god-mode [data-god-layout-toggle]:hover,.god-mode [data-god-layout-toggle]:focus-visible,.god-mode [data-god-tools-toggle]:hover,.god-mode [data-god-tools-toggle]:focus-visible,.god-mode [data-god-mapping-review]:hover,.god-mode [data-god-mapping-review]:focus-visible,.god-mode [data-god-model-security]:hover,.god-mode [data-god-model-security]:focus-visible,.god-mode [data-god-development-identity]:hover,.god-mode [data-god-development-identity]:focus-visible,.god-mode [data-god-edit-themes]:hover,.god-mode [data-god-edit-themes]:focus-visible,.god-mode [data-god-template-reset]:hover,.god-mode [data-god-template-reset]:focus-visible,.god-mode [data-god-template-selector]:hover,.god-mode [data-god-template-selector]:focus-visible,.god-mode [data-god-structure-boundaries]:hover,.god-mode [data-god-structure-boundaries]:focus-visible,.god-mode [data-god-div-editor-toggle]:hover,.god-mode [data-god-div-editor-toggle]:focus-visible,.god-mode [data-god-history-toggle]:hover,.god-mode [data-god-history-toggle]:focus-visible,.god-mode [data-god-layout-apply]:hover,.god-mode [data-god-layout-apply]:focus-visible,.god-mode [data-god-layout-force-update]:hover,.god-mode [data-god-layout-force-update]:focus-visible,.god-mode [data-god-force-confirm]:hover,.god-mode [data-god-force-confirm]:focus-visible,.god-mode [data-god-theme-save]:hover,.god-mode [data-god-theme-save]:focus-visible,.god-mode [data-god-theme-undo]:hover,.god-mode [data-god-theme-undo]:focus-visible,.god-mode [data-god-theme-apply]:hover,.god-mode [data-god-theme-apply]:focus-visible,.god-mode [data-connection-contract-editor]:hover,.god-mode [data-connection-contract-editor]:focus-visible,.god-mode [data-context-type-configuration]:hover,.god-mode [data-context-type-configuration]:focus-visible,.god-mode .god-form-context-menu button:hover,.god-mode .god-form-context-menu button:focus-visible,.god-mode #connection-contract-dialog button.primary:hover,.god-mode #connection-contract-dialog button.primary:focus-visible,.god-mode #context-type-configuration-dialog button.primary:hover,.god-mode #context-type-configuration-dialog button.primary:focus-visible{box-shadow:0 0 0 2px var(--button-god-glow,#ff5968), 0 0 18px color-mix(in srgb, var(--button-god-glow,#ff5968) 48%, transparent);outline-color:#ffadb5;border-color:var(--button-god-highlight-border,#ffd2d6)!important;background:var(--button-god-highlight-background,var(--god-button-background))!important;color:var(--button-god-text,#ffe7e9)!important}.recycle-bin-toggle{border:1px solid var(--line);background:var(--surface-interactive);width:38px;height:38px;color:var(--mint);border-radius:9px;place-items:center;font-size:16px;display:grid}.recycle-bin-toggle:hover,.recycle-bin-toggle:focus-visible{border-color:var(--button-standard-highlight-border,var(--text-strong))}#context-dialog select{width:100%}main{height:calc(100vh - 132px - var(--activity-history-height));flex-direction:column;display:flex}.lens{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:130px;padding:22px 30px;display:flex}.context-home{flex:1;min-height:0;padding:30px;display:block;overflow:auto}.context-home-head{z-index:10;background:var(--page-background);max-width:1500px;box-shadow:0 12px 18px var(--page-background);justify-content:space-between;align-items:end;gap:24px;margin:0 auto 14px;padding:14px 0;display:flex;position:sticky;top:-30px}.context-home-head p{color:var(--muted);margin:8px 0 0}.context-home-controls{align-items:end;gap:12px;display:flex}.context-home-controls select,.context-home-controls input{border:1px solid var(--dropdown-border,var(--line));background:var(--dropdown-background,var(--input-background));min-height:40px;color:var(--dropdown-text,var(--text));border-radius:8px;padding:9px 11px}.context-home-search{min-width:280px}.context-home-search .thing-class-options{z-index:12}.context-home-search .lookup-empty{color:var(--muted);margin:0;padding:8px 10px;font-size:12px}.universe-map-view{min-height:calc(100vh - 260px - var(--activity-history-height));border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:14px;margin-top:14px;padding:16px;position:relative}.context-home:has(.universe-map-view:not([hidden])){flex-direction:column;padding:0;display:flex;overflow:hidden}.context-home:has(.universe-map-view:not([hidden])) .context-home-head{flex:none;width:auto;margin:0;padding:14px 30px}.context-home:has(.universe-map-view:not([hidden])) .universe-map-view{box-sizing:border-box;border:0;border-radius:0;flex:auto;align-self:stretch;width:100%;min-height:0;margin:0;padding:0}.context-home:has(.universe-map-view:not([hidden])) .universe-map-head{z-index:5;border:1px solid color-mix(in srgb, var(--line) 78%, transparent);background:color-mix(in srgb, var(--surface) 86%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:10px;padding:6px 10px;position:absolute;top:12px;left:22px;right:22px}.context-home:has(.universe-map-view:not([hidden])) .universe-surface{border:0;border-radius:0;inset:0}.universe-map-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.universe-map-head h2{margin:4px 0}.universe-map-head-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.universe-map-legend{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;gap:7px 12px;margin:0;padding:0;font-size:10px;list-style:none;display:flex}.universe-map-legend li{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.universe-legend-swatch{border-radius:50%;width:10px;height:10px;display:inline-block}.universe-legend-context-type{background:var(--context-type-colour)}.universe-legend-line{border-top:2px solid;width:25px;height:6px;display:inline-block;position:relative}.universe-legend-connection{border-color:#f0b35b}.universe-legend-subcontext{border-color:var(--mint);border-top-style:dashed}.universe-legend-combined{border-color:#f0b35b}.universe-legend-combined:after{border-top:2px dashed var(--mint);content:"";position:absolute;top:-2px;left:0;right:0}.universe-map-head button{min-height:var(--button-height);padding:var(--button-padding);border:var(--button-border);border-radius:var(--button-radius);background:var(--surface-interactive);color:var(--text);font:inherit;white-space:nowrap;font-size:11px;line-height:17px}.universe-map-head button:hover:not(:disabled),.universe-map-head button:focus-visible{border-color:#fff}.universe-map-zoom{align-items:center;gap:4px;display:inline-flex}.universe-map-zoom button{min-width:28px;padding-inline:7px}.universe-map-zoom output{min-width:42px;color:var(--muted);font-variant-numeric:tabular-nums;text-align:center;font-size:10px}.universe-surface{border:1px solid var(--line);background:var(--page-background);border-radius:12px;position:absolute;inset:76px 18px 18px;overflow:hidden}.universe-content{transform-origin:0 0;width:100%;min-width:100%;height:100%;min-height:100%;position:relative}.universe-paths{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.universe-paths line{stroke:#5f7d49;stroke-width:.22px;opacity:.72}.universe-paths line.universe-subcontext-path{stroke:var(--mint);stroke-width:.45px;stroke-dasharray:1.3 1.3;opacity:.85}.universe-surface{--universe-cluster-0:#66d9ff;--universe-cluster-1:#d8a4ff;--universe-cluster-2:#ffbe63;--universe-cluster-3:#6ee7a8;--universe-cluster-4:#ff7b9d;--universe-cluster-5:#9bb3ff;--universe-cluster-6:#f6e878;--universe-cluster-7:#72d9d2}.universe-node{z-index:1;min-width:140px;min-height:82px;position:absolute;transform:translate(-50%,-50%)}.universe-node-action{border:2px solid var(--universe-cluster-colour,#416955);background:var(--surface-raised);width:100%;height:100%;color:var(--text);box-shadow:0 0 0 4px var(--page-background);cursor:pointer;text-align:center;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:12px 20px;display:flex;overflow:visible}.universe-node strong{overflow-wrap:anywhere;text-overflow:clip;white-space:normal;max-width:100%;font-size:12px;line-height:1.2}.universe-node small{max-width:100%;color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:10px;line-height:1.2;display:-webkit-box;overflow:hidden}.universe-node-key{min-width:0;color:var(--muted);gap:1px;display:grid}.universe-node-key small{color:var(--mint);letter-spacing:.06em;text-transform:uppercase;-webkit-line-clamp:1;font-size:8px;font-weight:800;line-height:1.1}.universe-node-key b{overflow-wrap:anywhere;max-width:100%;color:var(--muted);text-overflow:clip;white-space:normal;font-size:10px;font-weight:700;line-height:1.2;display:block}.universe-node.is-context-root{min-width:164px;min-height:98px}.universe-node.is-context-root .universe-node-action{box-shadow:none;background:0 0;border-color:#0000;position:relative}.root-cloud-shape{z-index:0;pointer-events:none;width:calc(100% + 14px);height:calc(100% + 14px);position:absolute;inset:-7px;overflow:visible}.root-cloud-shape path{fill:var(--context-node-background,#10201b);stroke:var(--context-border-color,#638033);stroke-width:3px;vector-effect:non-scaling-stroke}.universe-node.is-context-root .root-cloud-shape path{fill:color-mix(in srgb, var(--universe-cluster-colour) 18%, var(--surface-raised));stroke:var(--universe-cluster-colour)}.universe-node.is-context-root .universe-node-action>:not(.root-cloud-shape){z-index:1;position:relative}.universe-node.is-context-root.is-selected .root-cloud-shape path,.universe-node.is-context-root.is-preview .root-cloud-shape path{stroke:var(--selection-color)}.universe-node.is-collapsed .universe-node-action{opacity:.92;border-style:dashed}.universe-node.is-match .universe-node-action{border-color:var(--lime);background:color-mix(in srgb, var(--lime) 25%, var(--surface-raised));box-shadow:0 0 14px color-mix(in srgb, var(--lime) 45%, transparent);animation:1.8s ease-in-out infinite universe-search-glow}@keyframes universe-search-glow{0%,to{filter:brightness();box-shadow:0 0 10px color-mix(in srgb, var(--lime) 35%, transparent)}50%{filter:brightness(1.32);box-shadow:0 0 27px color-mix(in srgb, var(--lime) 88%, transparent)}}.universe-node.is-preview .universe-node-action{border-color:var(--selection-color);background:color-mix(in srgb, var(--selection-color) 25%, var(--surface-raised));box-shadow:0 0 17px color-mix(in srgb, var(--selection-color) 55%, transparent)}.universe-node.is-selected .universe-node-action{border-color:var(--selection-color);background:color-mix(in srgb, var(--selection-color) 24%, var(--surface-raised));box-shadow:0 0 0 var(--selection-thickness) var(--selection-color), 0 0 18px color-mix(in srgb, var(--selection-color) 58%, transparent)}.universe-node.is-context-root.is-selected .universe-node-action,.universe-node.is-context-root.is-preview .universe-node-action{box-shadow:none;background:0 0;border-color:#0000}.universe-node-resize{z-index:3;border:2px solid var(--surface-raised);background:var(--selection-color);width:14px;height:14px;box-shadow:0 0 0 1px var(--line);cursor:nwse-resize;opacity:.8;border-radius:3px;position:absolute;bottom:-4px;right:-4px}.universe-node:hover .universe-node-resize,.universe-node:focus-within .universe-node-resize{opacity:1}.universe-node .disclosure-control{z-index:2;position:absolute;top:-7px;right:-7px}.universe-tree-surface .universe-node-action{cursor:default}.universe-tree-surface .universe-node-resize{display:none}.universe-tree-surface .universe-paths line{stroke-width:.34px;opacity:.86}.universe-tree-surface .universe-paths line.universe-subcontext-path{stroke-width:.58px}.universe-orbits-surface .universe-node-action{cursor:default}.universe-orbits-surface .universe-node-resize{display:none}.universe-orbit-area{fill-opacity:.09;stroke:currentColor;stroke-width:.32px;stroke-opacity:.42}.universe-orbit-path{fill:none;stroke:var(--mint);stroke-width:.45px;stroke-dasharray:1.4 1.8;opacity:.86}.universe-minimap{z-index:6;border:1px solid var(--aqua);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:9px;width:180px;height:118px;padding:18px 8px 8px;position:absolute;bottom:18px;right:18px;box-shadow:0 9px 24px #0008}.universe-minimap[hidden]{display:none}.universe-minimap>strong{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:9px;position:absolute;top:5px;left:8px}.universe-minimap [data-universe-minimap-nodes]{border:1px solid color-mix(in srgb, var(--line) 82%, transparent);background:color-mix(in srgb, var(--page-background) 88%, transparent);border-radius:5px;width:100%;height:100%;position:relative;overflow:hidden}.universe-minimap-node{border:1px solid var(--universe-cluster-colour,var(--mint));background:var(--universe-cluster-colour,var(--mint));width:7px;height:7px;box-shadow:0 0 5px color-mix(in srgb, var(--universe-cluster-colour,var(--mint)) 68%, transparent);cursor:pointer;border-radius:50%;padding:0;position:absolute;transform:translate(-50%,-50%)}.universe-minimap-node:hover,.universe-minimap-node:focus-visible{outline:none;width:10px;height:10px}.universe-context-menu{z-index:2500;border:1px solid var(--aqua);background:var(--surface-raised);min-width:230px;max-width:min(340px,100vw - 16px);color:var(--text);border-radius:10px;gap:7px;padding:10px;display:grid;position:fixed;box-shadow:0 14px 34px #000b}.universe-context-menu[hidden]{display:none}.universe-context-menu>strong{color:var(--aqua);overflow-wrap:anywhere;font-size:12px}.universe-context-menu button{border:1px solid var(--line);background:var(--surface-interactive);min-height:30px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:6px;padding:5px 8px;font-size:12px}.universe-context-menu button:hover,.universe-context-menu button:focus-visible{border-color:var(--lime);background:var(--surface-interactive-hover);outline:none}.universe-context-menu label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;gap:4px;font-size:10px;font-weight:800;display:grid}.universe-context-menu input{border:1px solid var(--line);background:var(--input-background);min-width:0;min-height:31px;color:var(--text);font:inherit;text-transform:none;border-radius:6px;padding:5px 8px;font-size:12px}.universe-context-search-results{max-height:200px;color:var(--muted);gap:4px;font-size:11px;display:grid;overflow:auto}.mapping-review-board{gap:14px;min-width:780px;padding:18px;display:grid}.mapping-review-summary{border:1px solid var(--line);background:color-mix(in srgb, var(--surface-raised) 86%, var(--aqua));border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.mapping-review-summary div{gap:3px;display:grid}.mapping-review-summary span,.mapping-review-summary p{color:var(--muted);margin:0;font-size:12px}.mapping-review-summary p{max-width:350px}.mapping-review-error{color:#ff8791;border:1px solid #ff5968;border-radius:8px;margin:0;padding:10px 12px}.mapping-review-model{border:1px solid var(--line);background:var(--surface-raised);border-left:4px solid #f0b35b;border-radius:10px;gap:12px;padding:14px;display:grid}.mapping-review-model.is-approved{border-left-color:var(--mint)}.mapping-review-model>header{justify-content:space-between;align-items:start;gap:12px;display:flex}.mapping-review-model h3{margin:3px 0 0;font-size:15px}.mapping-review-model em{color:#f0b35b;letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-style:normal;font-weight:800}.mapping-review-model.is-approved em{color:var(--mint)}.mapping-review-model>header>span{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}.mapping-review-flow{grid-template-columns:minmax(210px,1fr) 70px minmax(210px,1fr);gap:10px;display:grid}.mapping-review-flow>p{color:var(--muted);grid-column:1/-1;margin:0}.mapping-review-column{gap:7px;display:grid}.mapping-review-column b{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.mapping-review-column span{border:1px solid var(--line);background:var(--surface);border-radius:6px;min-height:32px;padding:8px 10px;font-size:12px}.mapping-review-connectors{align-content:end;gap:7px;padding-top:21px;display:grid}.mapping-review-connectors span{min-height:32px;color:var(--muted);place-items:center;font-size:10px;display:grid;position:relative}.mapping-review-connectors span:before,.mapping-review-connectors span:after{content:"";border-top:2px solid #f0b35b;width:25%;position:absolute;top:50%}.mapping-review-model.is-approved .mapping-review-connectors span:before,.mapping-review-model.is-approved .mapping-review-connectors span:after{border-color:var(--mint)}.mapping-review-connectors span:before{left:0}.mapping-review-connectors span:after{right:0}.mapping-review-gaps{border-top:1px solid var(--line);color:var(--muted);padding-top:10px;font-size:12px}.mapping-review-gaps summary{cursor:pointer}.mapping-review-gaps ul{gap:6px;margin:9px 0 0;padding-left:20px;display:grid}.mapping-review-gaps b{color:var(--text)}.home-admin-toolbar{flex:none;align-items:center;gap:8px;display:none}.admin-mode .home-admin-toolbar{display:flex}.admin-tools,.god-tools{align-items:center;display:flex;position:relative}.home-admin-toolbar button{border:1px solid var(--line);cursor:pointer;background:var(--surface-interactive);color:var(--text);white-space:nowrap;border-radius:6px;padding:6px 9px}.home-admin-toolbar button:hover,.home-admin-toolbar button:focus-visible{border-color:var(--button-standard-highlight-border,var(--text-strong))}.god-tools[hidden]{display:none}.runtime-branch-indicator{max-width:260px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;overflow:hidden}.runtime-branch-indicator[hidden]{display:none}.admin-tools-popover,.god-tools-popover{z-index:120;border:1px solid var(--line);background:var(--surface-raised);border-radius:8px;gap:5px;min-width:150px;padding:7px;display:grid;position:absolute;top:calc(100% + 7px);left:0;box-shadow:0 12px 28px #000a}.god-tools-popover{border-color:#ff5968}.admin-tools-popover[hidden],.god-tools-popover[hidden]{display:none}.admin-tools-popover button,.god-tools-popover button{text-align:left;justify-content:flex-start;width:100%}.god-tools-popover button:disabled{opacity:.45;border-style:dashed}.window-busy-indicator{z-index:3000;border:2px solid var(--aqua);background:var(--surface-raised);width:max-content;height:max-content;min-height:64px;box-shadow:0 14px 38px #000d, 0 0 0 100vmax #02070bb8, 0 0 22px color-mix(in srgb, var(--aqua) 75%, transparent);color:var(--text);letter-spacing:.02em;pointer-events:none;border-radius:16px;align-items:center;gap:13px;margin:auto;padding:14px 22px;font-size:16px;font-weight:800;animation:1.4s ease-in-out infinite window-busy-pulse;display:inline-flex;position:fixed;inset:0}.window-busy-indicator .loader{border-width:3px;width:28px;height:28px;margin:0}@keyframes window-busy-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}.administration-picker{gap:12px;display:grid}.administration-picker-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.administration-picker-heading strong{color:var(--aqua);letter-spacing:.08em;text-transform:uppercase;font-size:12px}.administration-picker-heading button{min-height:32px;padding:5px 9px;font-size:11px}.lookup-control{position:relative}.lookup-control>input{box-sizing:border-box;width:100%}.lookup-control .thing-class-options{border-radius:0 0 7px 7px;gap:0;padding:0}.lookup-control .thing-class-options button{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--text);font:inherit;text-align:left;background:0 0;border-radius:0;padding:8px 10px;font-size:12px;display:block}.lookup-control .thing-class-options button:last-child{border-bottom:0}.lookup-control .thing-class-options button:hover,.lookup-control .thing-class-options button:focus-visible{outline:0}.class-hover-preview{z-index:2;border:1px solid var(--line);width:min(320px,34vw);color:var(--text);pointer-events:none;background:#10231d;border-radius:8px;gap:4px;padding:10px;display:grid;position:absolute;top:0;left:calc(100% + 10px);box-shadow:0 12px 24px #0009}.class-hover-preview span,.class-hover-preview small{color:var(--muted)}.class-hover-preview[hidden]{display:none}.administration-picker>label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;gap:5px;font-size:11px;font-weight:800;display:grid}.administration-picker select{border:1px solid var(--line);min-height:38px;color:var(--text);font:inherit;letter-spacing:normal;text-transform:none;background:#091411;border-radius:7px;padding:7px 9px}.administration-picker select[size]{min-height:180px}.class-catalog-entry{border:1px solid var(--line);border-radius:7px;gap:3px;padding:9px;display:grid}.class-catalog-entry span,.class-catalog-entry small{color:var(--muted)}.context-home-controls input{width:min(360px,34vw)}.context-catalog{max-width:1500px;margin:0 auto}.context-catalog-cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;display:grid}.context-card{border:1px solid var(--line);background:var(--button-card-background,var(--surface-raised));min-height:190px;color:var(--button-card-text,var(--text));text-align:left;cursor:pointer;border-radius:16px;grid-template-columns:48px 1fr;gap:14px;padding:20px;transition:border-color .14s,transform .14s;display:grid}.context-card:hover,.context-card:focus-visible{border-color:var(--button-card-highlight-border,var(--mint));background:var(--button-card-highlight-background,var(--surface-interactive));transform:translateY(-2px)}.context-card.is-selected,.context-catalog tbody tr.is-selected{border-color:var(--selection-color);outline:var(--selection-thickness) solid var(--selection-color);outline-offset:-3px}.context-card-icon{background:var(--surface-interactive);width:48px;height:48px;color:var(--mint);border-radius:13px;place-items:center;font-size:20px;font-weight:800;display:grid}.context-card-copy{align-content:start;gap:7px;display:grid}.context-card-copy small{color:var(--mint);letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:800}.context-card-copy strong{font-size:21px}.context-card-copy>span{color:var(--muted);line-height:1.5}.context-card-stats{border-top:1px solid var(--line);color:var(--button-card-highlight-border,var(--muted));grid-column:1/-1;align-self:end;padding-top:13px;font-size:11px}.context-card-stats b{color:var(--button-card-text,var(--text))}.context-catalog-table{border:1px solid var(--line);border-radius:14px;overflow:visible}.context-catalog table{border-collapse:collapse;background:var(--button-table-background,var(--surface));width:100%;color:var(--button-table-text,var(--text))}.context-catalog th,.context-catalog td{border-bottom:1px solid var(--line);text-align:left;padding:14px 16px}.context-catalog th{color:var(--button-table-highlight-border,var(--mint));background:var(--button-table-highlight-background,var(--surface-raised));letter-spacing:.1em;text-transform:uppercase;font-size:9px}.context-catalog tbody tr{cursor:pointer}.context-catalog tbody tr:hover,.context-catalog tbody tr:focus-visible{background:var(--button-table-highlight-background,var(--surface-raised));color:var(--button-table-text,var(--text));outline:none}.context-catalog tbody tr.is-selected:hover,.context-catalog tbody tr.is-selected:focus-visible{background:color-mix(in srgb, var(--selection-color) 18%, transparent);outline:var(--selection-thickness) solid var(--selection-color);outline-offset:-3px}.context-catalog td small{color:var(--muted);margin-top:4px;display:block}.context-catalog td button,.context-empty button{border:1px solid var(--line);background:var(--surface-interactive);color:var(--mint);border-radius:7px;padding:8px 12px}.context-empty{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:14px;padding:70px 24px}.context-empty h2{color:#edf5ef}.presentation-mode{border:1px solid var(--line);min-height:34px;color:var(--muted);white-space:nowrap;border-radius:7px;align-items:center;padding:0 10px;font-size:10px;display:inline-flex}.view-search,.branch-order{grid-template-columns:minmax(110px,190px) auto;gap:4px 6px;display:inline-grid}.view-search .tool-label,.branch-order .tool-label{grid-column:1/-1}.view-search input,.view-search select,.branch-order select{border:1px solid var(--dropdown-border,var(--line));background:var(--dropdown-background,var(--input-background));min-height:32px;color:var(--dropdown-text,var(--text));border-radius:6px;padding:5px 8px;font-size:10px}.field .search-dimmed{opacity:.18}.field .search-hidden{display:none!important}.field .node.search-match,.element-table tr.search-match{outline:var(--selection-thickness,3px) solid var(--selection-color,#ff6fae);outline-offset:3px}[hidden]{display:none!important}body:not(.editor-open) .work{display:none}.editor-page-head{border-bottom:1px solid var(--line);grid-template-columns:fit-content(34rem) minmax(0,1fr);align-items:start;gap:12px;min-height:0;padding:15px 28px;transition:background .16s,border-color .16s;display:grid}.editor-page-head.status-editing{background:linear-gradient(90deg,#2d2114,#0f1d19 48%);border-color:#a86f2f}.editor-page-head.status-draft{background:linear-gradient(90deg,#251d35,#0f1d19 48%);border-color:#8066ae}.editor-page-head.status-saved{background:linear-gradient(90deg,#123028,#0f1d19 48%);border-color:#3c806b}.editor-page-head.status-milestone{background:linear-gradient(90deg,#293613,#0f1d19 48%);border-color:#9fbd4a}.editor-page-head.status-milestone-draft{background:linear-gradient(90deg,#30213d,#0f1d19 48%);border-color:#b18ad9}.editor-page-head.status-saved-draft{background:linear-gradient(90deg,#17352d,#0f1d19 48%);border-color:#5d9f89}.editor-page-head.status-editing,.editor-page-head.status-draft,.editor-page-head.status-saved,.editor-page-head.status-milestone,.editor-page-head.status-milestone-draft,.editor-page-head.status-saved-draft{background:var(--surface)}.home-bar{align-items:center;gap:12px;width:max-content;max-width:100%;display:flex}.page-navigation{gap:7px;display:flex}.page-navigation button{color:#edf5ef;background:#07110eb8;border:1px solid #ffffff18;border-radius:8px;align-items:center;gap:6px;padding:8px 11px;display:inline-flex}.page-navigation button:disabled{opacity:.35}.page-heading h1{color:#f4faf6;margin:0;font-size:22px}.page-heading p{color:var(--muted);margin:4px 0 0;font-size:11px}.context-breadcrumbs{white-space:nowrap;align-items:center;gap:5px;max-width:min(75vw,900px);margin-top:8px;display:flex;overflow-x:auto}.context-breadcrumbs span{color:var(--muted)}.context-breadcrumbs button{color:var(--mint);background:0 0;border:0;padding:2px 3px;font-size:10px}.context-breadcrumbs button[aria-current=page]{color:var(--text);cursor:default;font-weight:700}.context-breadcrumbs .context-draft-crumb{color:var(--lime);font-size:10px;font-weight:800}.context-breadcrumbs .context-path-toggle{border:1px solid color-mix(in srgb, var(--lime) 48%, transparent);background:color-mix(in srgb, var(--lime) 10%, transparent);color:var(--lime);border-radius:999px;padding:2px 7px;font-weight:800}.context-breadcrumbs .context-path-toggle:hover,.context-breadcrumbs .context-path-toggle:focus-visible{border-color:#fff}.page-status{color:#e7f6a8;letter-spacing:.08em;text-transform:uppercase;border:1px solid;border-radius:999px;padding:6px 10px;font-size:9px}.header-page-status{width:max-content;margin-top:8px;display:flex}.editor-toolbar-host{width:100%;min-width:0}.editor-toolbar-host .canvas-controls{box-sizing:border-box;place-content:flex-start;max-height:none;overflow:visible}.status-editing .page-status{color:#f0b35b}.status-draft .page-status{color:#c5a7f2}.status-saved .page-status{color:var(--mint)}.status-milestone .page-status{color:var(--lime)}.status-milestone-draft .page-status{color:#d7b1ff}.status-saved-draft .page-status{color:#79d3b7}em{color:var(--mint);text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-style:normal;font-weight:800;display:block}.lens h1{margin:5px 0 0;font:500 28px Georgia,serif}.lens form{align-items:end;gap:12px;display:flex}label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;gap:7px;font-size:10px;font-weight:800;display:grid}input,textarea{border:1px solid var(--line);background:var(--input-background);color:var(--text);border-radius:8px;outline:none;padding:11px}.lens input{width:235px}input:focus,textarea:focus{border-color:var(--mint)}form button{min-height:var(--button-height);padding:var(--button-padding);border:var(--button-border);border-radius:var(--button-radius);background:var(--surface-interactive);color:var(--text)}.lens form>button,.primary{border-color:var(--button-primary-border,var(--line));font-weight:800;background:var(--button-primary-background,var(--lime))!important;color:var(--button-primary-text,#14210e)!important}.lens form>.secondary{color:var(--mint);background:0 0;border-color:#416458}.work{flex:1;grid-template-columns:1fr 285px;min-height:0;display:grid}.work.inspector-collapsed{grid-template-columns:1fr 42px}.work nav{border-right:1px solid var(--line);padding:16px 9px}.work nav button{color:#799087;background:0 0;border:1px solid #0000;border-radius:10px;width:100%;margin-bottom:7px;padding:10px 2px;font-size:20px;display:block}.work nav button span{font-size:10px;font-weight:700;display:block}.work nav .active{background:var(--surface-interactive);color:var(--lime)}.work nav button:hover:not(:disabled){color:var(--lime)}.work nav button:disabled{opacity:.3}.stage{flex-direction:column;min-width:0;min-height:0;display:flex}.stage-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:65px;padding:8px 12px;display:flex;overflow:visible}.stage-head small,.stage-head strong{display:block}.stage-head small,.stage-head p{color:var(--muted);font-size:10px}.stage-head p{align-items:center;gap:7px;display:flex}.stage-head p i{background:var(--lime);border-radius:50%;width:8px;height:8px}.stage-head p .element{background:var(--mint)}.stage-head p .relation{background:#f0b35b}.stage-head p .context-type{background:var(--context-type-colour)}.canvas{overflow-anchor:none;overscroll-behavior:contain;cursor:grab;scrollbar-color:var(--line) var(--surface);background-color:var(--page-background);flex:1;min-width:0;min-height:0;position:relative;overflow:visible;--context-canvas-background:var(--page-background)!important;--context-panel-background:var(--surface)!important;--context-node-background:var(--surface-raised)!important;--context-border-color:var(--line)!important;--context-text-color:var(--text)!important;--context-muted-color:var(--muted)!important}.canvas-ruler{z-index:20;pointer-events:none;background:color-mix(in srgb, var(--page-background) 92%, var(--surface-raised));color:color-mix(in srgb, var(--mint) 72%, transparent);-webkit-user-select:none;user-select:none;font-size:8px;font-weight:800;line-height:1;position:absolute;overflow:hidden}.canvas-ruler-horizontal{border-bottom:1px solid color-mix(in srgb, var(--mint) 36%, transparent);height:20px;top:0;left:0}.canvas-ruler-vertical{border-right:1px solid color-mix(in srgb, var(--mint) 36%, transparent);width:28px;top:0;left:0}.canvas-ruler span{white-space:nowrap;display:block;position:absolute}.canvas-ruler span i{background:color-mix(in srgb, var(--mint) 65%, transparent);content:"";display:block;position:absolute}.canvas-ruler-horizontal span{padding-left:3px;top:3px}.canvas-ruler-horizontal span i{width:1px;height:6px;top:-3px;left:0}.canvas-ruler-vertical span{writing-mode:vertical-rl;padding-top:2px;left:3px;transform:rotate(180deg)}.canvas-ruler-vertical span i{width:6px;height:1px;top:0;left:-3px}.canvas.panning{cursor:grabbing;-webkit-user-select:none;user-select:none}.selection-marquee{z-index:12;border:var(--selection-thickness) solid var(--selection-color);pointer-events:none;background:color-mix(in srgb, var(--selection-color) 14%, transparent);box-shadow:0 0 10px color-mix(in srgb, var(--selection-color) 35%, transparent);border-radius:4px;position:absolute}.canvas.expanded{z-index:1000;background-color:var(--page-background);min-height:100vh;position:fixed;inset:0}.canvas-is-expanded{overflow:hidden}.canvas.empty{place-items:center;display:grid}.editor-status-host{flex:none;min-width:0}.canvas.expanded+.editor-status-host{right:0;bottom:var(--activity-history-height);z-index:1001;position:fixed;left:0}.welcome{text-align:center;max-width:380px;color:var(--muted)}.welcome h2{color:var(--text);font:500 28px Georgia,serif}.orbit{border:1px solid var(--line);border-radius:50%;width:95px;height:95px;margin:auto;position:relative}.orbit:after{content:"";border:1px solid var(--line);border-radius:50%;position:absolute;inset:18px}.orbit>*{background:var(--lime);border-radius:50%;width:11px;height:11px;position:absolute}.orbit i{top:-5px;left:42px}.orbit b{background:var(--mint);bottom:9px;left:5px}.orbit span{background:#f0b35b;bottom:9px;right:5px}.field{transform-origin:0 0;position:relative}.field.diagram-grid{background-image:linear-gradient(color-mix(in srgb, var(--mint) 14%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--mint) 14%, transparent) 1px, transparent 1px);background-size:var(--diagram-grid-size,20px) var(--diagram-grid-size,20px)}.graph-space{overflow-anchor:none;min-width:100%;min-height:100%;position:relative}.connectors{pointer-events:none;z-index:5;position:absolute;inset:0;overflow:visible}.connectors polyline{fill:none;stroke:var(--line);stroke-width:2px;vector-effect:non-scaling-stroke;pointer-events:visibleStroke;cursor:pointer}.connectors polyline:hover{stroke-width:3px}.connectors .relationship-gesture{fill:none;stroke:var(--selection-color,#ff6fae);stroke-width:3px;stroke-dasharray:8 6;vector-effect:non-scaling-stroke;pointer-events:none}.connectors .connector-hit-target{stroke-width:40px;pointer-events:stroke;cursor:pointer;stroke:#0000!important}.field.show-hit-areas .connectors .connector-hit-target{stroke-width:var(--hit-area-line-width,34px);stroke-dasharray:none;opacity:1}.connectors .connector-hit-area-guide{fill:none;stroke:#0000;pointer-events:none}.field.show-hit-areas .connectors .connector-hit-area-guide{stroke:color-mix(in srgb, var(--mint) 72%, transparent);stroke-width:var(--hit-area-line-width,34px);stroke-dasharray:none;opacity:.72;vector-effect:non-scaling-stroke}.connectors .editable-connector.selected{stroke:var(--selection-color);stroke-width:var(--selection-thickness)}.connectors .connector-end,.connectors .connector-elbow{fill:var(--lime);stroke:var(--page-background);stroke-width:3px;vector-effect:non-scaling-stroke;pointer-events:all;cursor:grab}.connectors .connector-elbow{fill:#f0b35b}.connectors .connector-elbow.automatic-elbow{fill:#64d8af}.connectors .connector-elbow.manual-elbow{fill:#f0b35b}.connectors .connector-elbow.automatic-elbow:hover,.connectors .connector-elbow.automatic-elbow.active{fill:#8ee9ce;stroke:#1b8f6c;stroke-width:4px}.connectors .connector-elbow.manual-elbow:hover,.connectors .connector-elbow.manual-elbow.active{fill:#ffd18a;stroke:#b86c22;stroke-width:4px}.connectors .connector-elbow:hover,.connectors .connector-elbow.active,.connectors .connector-end:hover,.connectors .connector-end.active{fill:var(--lime);stroke:var(--selection-color);stroke-width:4px}.connectors .connector-end:active{cursor:grabbing}.connectors .relationship-line{stroke:#f0b35b}.connectors .context-link{stroke-width:3px}.connectors .context-link-contains,.context-link-node.context-link-contains{--context-link-color:var(--lime)}.connectors .context-link-specializes,.context-link-node.context-link-specializes{--context-link-color:#75bfff}.connectors .context-link-references,.context-link-node.context-link-references{--context-link-color:#c7a2ff}.connectors .context-link-overlays,.context-link-node.context-link-overlays{--context-link-color:#ff9ec7}.connectors .context-link{stroke:var(--context-link-color)}.node.context-link-node{color:var(--context-link-color)}.node.context-link-node:before{border-color:var(--context-link-color)}.node.context-link-node i{color:var(--context-link-color)}.connector-label{fill:var(--text);paint-order:stroke;stroke:var(--page-background);stroke-width:4px;stroke-linejoin:round;text-anchor:middle;dominant-baseline:central;pointer-events:all;cursor:grab;-webkit-user-select:none;user-select:none;font-size:10px;font-weight:700}.connector-label:active{cursor:grabbing}.connector-label.generated-connection-label{opacity:.38;font-weight:500}.table-wrap{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 93%, transparent);border-radius:12px;width:min(1200px,100% - 80px);margin:110px auto 60px;overflow:hidden}.element-table{table-layout:fixed;border-collapse:collapse;width:100%;color:var(--text);text-align:left}.element-table th,.element-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:13px 15px}.element-table th:first-child,.element-table td:first-child{text-align:center;width:64px;padding-inline:8px}.element-table th:nth-child(2),.element-table td:nth-child(2){width:26%}.element-table th:nth-child(3),.element-table td:nth-child(3){width:13%}.element-table th:nth-child(5),.element-table td:nth-child(5),.element-table th:nth-child(6),.element-table td:nth-child(6){width:10%}.element-table .root-row{background:color-mix(in srgb, var(--surface-raised) 88%, var(--lime));box-shadow:inset 3px 0 var(--lime)}.element-table tbody tr:not(.root-row){background:var(--surface)}.element-table tr[draggable=true]{cursor:grab}.element-table tr[draggable=true]:active{cursor:grabbing}.drag-handle{color:var(--muted);-webkit-user-select:none;user-select:none}.table-row-tools{white-space:nowrap;justify-content:center;align-items:center;gap:4px;display:inline-flex}.element-table .table-disclosure{border:1px solid var(--line);width:17px;height:17px;color:var(--context-primary-accent,var(--lime));cursor:pointer;border-radius:4px;place-items:center;padding:0;font-size:13px;line-height:1;display:inline-grid}.tree-view .tree-branch{stroke:var(--branch-color,var(--context-border-color));stroke-width:2px;stroke-linecap:square;stroke-linejoin:round}.tree-view .node.branch-record{border-color:var(--branch-color,var(--context-border-color));background:color-mix(in srgb, var(--branch-background,var(--context-node-background)) 28%, var(--context-node-background));cursor:default;text-align:left;border-radius:8px;width:170px;min-height:126px;padding:10px 12px}.tree-view .node.branch-record>i,.tree-view .node.branch-record>.treatment-badge,.tree-view .node.branch-record>.relationship-status{display:none}.tree-view .node.branch-record>b{color:var(--context-text-color);margin-bottom:5px;font-size:13px}.tree-view .node.branch-record>small{min-height:27px;color:var(--context-muted-color);margin:0 0 6px;font-size:9px}.branch-record-field{border-top:1px solid color-mix(in srgb, var(--branch-color) 55%, transparent);color:var(--context-text-color);grid-template-columns:minmax(0,1fr) auto;gap:8px;padding-top:3px;font-size:8px;display:grid!important}.branch-record-field em{color:var(--context-muted-color);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-style:normal;overflow:hidden}.tree-disclosure{cursor:pointer;pointer-events:all}.tree-disclosure rect{fill:var(--context-panel-background,#10201b);stroke:var(--context-primary-accent,var(--lime));stroke-width:1.5px}.tree-disclosure text{fill:var(--context-primary-accent,var(--lime));text-anchor:middle;dominant-baseline:central;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:14px;font-weight:800}.tree-disclosure:hover rect,.tree-disclosure:focus rect{stroke:var(--selection-color,#ff6fae);stroke-width:var(--selection-thickness,3px)}.table-tools{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:18px;padding:12px 15px;font-size:10px;display:flex}.table-tools label{color:var(--text);align-items:center;gap:8px;font-weight:700;display:flex}.table-tools select{border:1px solid var(--line);background:var(--input-background);color:var(--text);border-radius:6px;padding:6px 9px}.element-table th{color:var(--muted);background:var(--surface-raised);letter-spacing:.08em;text-transform:uppercase;font-size:9px}.element-table td{color:var(--muted);font-size:12px}.element-table td:first-child{color:var(--text)}.element-table button{color:var(--mint);background:0 0;border:0;padding:0;font-weight:800}.element-table .table-element-name{text-align:left;padding-inline-start:calc(var(--element-depth,1) * 1.4rem);position:relative}.element-table .table-element-name:before{content:"↳";color:var(--muted);font-weight:400;position:absolute;inset-inline-start:calc((var(--element-depth,1) - 1) * 1.4rem + .3rem)}.element-table small{color:var(--muted);margin-top:3px;display:block}.table-treatment{background:var(--surface-interactive);color:var(--mint);text-transform:uppercase;border-radius:999px;padding:3px 7px;font-size:8px;font-weight:800}.table-treatment.expanded{background:color-mix(in srgb, var(--lime) 24%, var(--surface-interactive));color:var(--lime)}.canvas-controls{z-index:20;border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:10px;flex-wrap:wrap;align-items:stretch;gap:4px;width:100%;max-width:100%;margin:0;padding:5px;display:flex;position:relative}.canvas-is-expanded .editor-toolbar-host{z-index:1001;background:color-mix(in srgb, var(--surface) 96%, transparent);padding:5px;position:fixed;inset:70px 0 auto}.canvas.expanded{top:135px;bottom:var(--activity-history-height);min-height:calc(100vh - 135px - var(--activity-history-height))}.canvas-controls button{background:var(--surface-interactive);min-width:34px;color:var(--text);border:0;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:7px 9px;display:inline-flex}.canvas-controls .toolbar-toggle{border-right:1px solid var(--line);color:var(--mint);border-radius:7px 0 0 7px}.canvas-controls .hit-area-control{grid-template-rows:auto auto;place-items:center;min-width:68px;display:grid}.canvas-controls .hit-area-size-control{align-items:center;gap:3px;width:64px;margin:1px 2px 2px;display:inline-flex}.canvas-controls .hit-area-size-control input[type=range]{appearance:none;background:linear-gradient(to right, var(--mint) 0 var(--hit-area-progress,0%), var(--surface-raised) var(--hit-area-progress,0%) 100%);cursor:ew-resize;touch-action:none;border:0;border-radius:999px;width:48px;min-width:48px;height:14px;margin:0}.canvas-controls .hit-area-size-control input[type=range]::-webkit-slider-runnable-track{border:1px solid var(--line);background:0 0;border-radius:999px;height:5px}.canvas-controls .hit-area-size-control input[type=range]::-webkit-slider-thumb{appearance:none;border:1px solid color-mix(in srgb, var(--mint) 80%, white);background:var(--mint);width:12px;height:12px;box-shadow:0 0 0 1px var(--context-panel-background,#0d1a17);border-radius:50%;margin-top:-4.5px}.canvas-controls .hit-area-size-control input[type=range]::-moz-range-track{border:1px solid var(--line);background:var(--surface-raised);border-radius:999px;height:5px}.canvas-controls .hit-area-size-control input[type=range]::-moz-range-progress{background:var(--mint);border-radius:999px;height:5px}.canvas-controls .hit-area-size-control input[type=range]::-moz-range-thumb{border:1px solid color-mix(in srgb, var(--mint) 80%, white);background:var(--mint);border-radius:50%;width:10px;height:10px}.canvas-controls .hit-area-size-control output{min-width:11px;color:var(--mint);text-align:right;font-size:8px;font-weight:800;line-height:1}.canvas-controls .hit-area-size-control[hidden]{display:none}.canvas-controls .zoom-tools{white-space:nowrap;flex:none;align-items:center;gap:4px;display:inline-flex}.canvas-controls .tool-icon{place-items:center;min-width:16px;font-size:15px;line-height:1;display:inline-grid}.canvas-controls .zoom-magnifier{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:17px;height:17px;overflow:visible}.canvas-controls .toolbar-svg-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:17px;height:17px;overflow:visible}.canvas-controls .tool-label{white-space:nowrap;font-size:10px;font-weight:700}.canvas-controls .toolbar-divider{display:none}.toolbar-section{border:1px solid color-mix(in srgb, var(--line) 58%, transparent);background:color-mix(in srgb, var(--surface) 62%, transparent);border-radius:9px;flex-direction:column;flex:0 auto;gap:3px;min-width:0;padding:3px 5px 5px;display:flex}.toolbar-section-items{flex-wrap:wrap;align-items:center;gap:3px;min-width:0;display:flex}.toolbar-overflow{position:relative}.toolbar-overflow summary{border:1px solid var(--line);background:var(--surface-interactive);min-height:32px;color:var(--text);cursor:pointer;border-radius:7px;align-items:center;padding:0 9px;display:inline-flex}.toolbar-overflow>div{display:none}.toolbar-overflow[open]>div{z-index:130;border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-wrap:wrap;gap:5px;min-width:170px;padding:7px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 24px #0008}.toolbar-section-heading{color:var(--dropdown-muted);letter-spacing:.08em;text-transform:uppercase;writing-mode:horizontal-tb;align-self:flex-start;margin:0 3px;font-size:7px;font-weight:800;line-height:1}.view-picker{color:var(--muted);grid-auto-flow:column;align-items:center;gap:6px;padding-left:7px;display:flex}.minimap-option{cursor:pointer;background:var(--dropdown-item-background);color:var(--dropdown-muted);border-radius:7px;align-items:center;gap:6px;padding:7px 8px;display:inline-flex;position:relative}.minimap-option:has(input:checked){color:var(--dropdown-accent)}:is(.minimap-option:not(:has(input:checked)),.anchor-fixed:not(:has(input:checked))){color:color-mix(in srgb, var(--muted) 64%, transparent);opacity:.46}.minimap-option input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.minimap-option:before,.anchor-fixed:before{color:currentColor;place-items:center;width:16px;height:16px;font-size:15px;line-height:1;display:inline-grid}.minimap-option:before{content:"🗺"}.view-picker select{border:0;border:1px solid var(--dropdown-border);background-color:var(--dropdown-item-background);width:112px;color:var(--dropdown-text);text-transform:none;letter-spacing:0;padding:6px 24px 6px 7px;font-size:10px;font-weight:700}.anchor-fixed{cursor:pointer;background:var(--surface-interactive);color:var(--muted);border-radius:7px;align-items:center;gap:6px;padding:7px 8px;display:inline-flex;position:relative}.anchor-fixed:has(input:checked){color:var(--mint)}.anchor-fixed input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.anchor-fixed:before{content:"⚓"}.canvas-controls.compact .view-picker select{width:104px}.canvas-controls.compact .tool-label{display:none}.canvas-controls.compact .tool-action{width:34px;padding-inline:6px}.canvas-controls button:hover{color:var(--lime)}.canvas-controls button:disabled{cursor:default;opacity:.32}.canvas-controls output{min-width:48px;color:var(--muted);text-align:center;font-size:10px}.save-split{display:inline-flex;position:relative}.persistence-tools{border:1px solid color-mix(in srgb, var(--line) 58%, transparent);background:color-mix(in srgb, var(--surface) 70%, transparent);border-radius:9px;align-items:center;gap:3px;padding:2px;display:inline-flex}.snap-grid-control{border:1px solid color-mix(in srgb, var(--line) 58%, transparent);background:var(--surface-interactive);min-height:34px;color:var(--mint);cursor:pointer;border-radius:7px;align-items:center;gap:5px;padding:0 7px;display:inline-flex}.snap-grid-control select{border:1px solid var(--line);background:var(--input-background);min-width:58px;color:var(--text);border-radius:5px;padding:5px 4px;font-size:10px}.snap-gesture,.toggle-icon{position:relative}.snap-gesture.disabled,.toggle-icon.disabled{opacity:.42;filter:saturate(.25)}.canvas-controls.compact .snap-grid-control .tool-label{display:none}.undo-levels{color:var(--muted);align-items:center;gap:5px;padding:0 6px;display:inline-flex}.undo-levels input{border:1px solid var(--line);background:var(--surface-interactive);width:48px;color:var(--text);text-align:center;border-radius:6px;padding:6px 4px;font-size:10px}.canvas-controls .save-primary{color:var(--lime);border-radius:7px 0 0 7px}.canvas-controls .save-menu-toggle{border-left:1px solid var(--line);min-width:24px;color:var(--lime);border-radius:0 7px 7px 0;padding-inline:5px}.save-menu{z-index:2000;border:1px solid var(--dropdown-border);background:var(--dropdown-background);border-radius:8px;grid-auto-flow:row;gap:3px;min-width:185px;padding:5px;display:grid;position:fixed;box-shadow:0 14px 30px #0008}.save-menu[hidden]{display:none}.save-menu button{background:var(--dropdown-item-background);width:100%;color:var(--dropdown-text);text-align:left;border:1px solid #0000;border-radius:6px;justify-content:flex-start;align-items:center;padding:8px 10px;display:flex}.save-menu button:hover,.save-menu button:focus-visible{color:var(--dropdown-accent);border-color:#fff;outline:none}.user-mode .save-menu [data-save-as]{display:none}.save-menu small{color:var(--dropdown-muted);letter-spacing:.08em;text-transform:uppercase;padding:8px 9px 4px;font-size:8px;font-weight:800;display:block}.node{z-index:2;border:1px solid var(--line);cursor:grab;touch-action:none;background:var(--surface-raised);width:170px;color:var(--text);border-radius:17px;padding:15px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.node.class-visual{border-color:var(--class-stroke);background:var(--class-fill);color:var(--class-text)}.class-visual-layout{grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:18px;display:grid}.class-visual-preview-wrap{border:1px dashed var(--context-border-color,#315047);border-radius:10px;place-items:center;gap:6px;min-height:118px;padding:10px;display:grid}.class-visual-preview{border:2px solid var(--preview-stroke,#72a76a);background:var(--preview-fill,#173d32);width:142px;height:76px;color:var(--preview-text,#f5f5e9);text-align:center;border-radius:14px;place-items:center;padding:10px;font-weight:800;transition:background-color .12s,border-color .12s,color .12s,border-radius .12s;display:grid}.class-visual-preview.shape-rectangle{border-radius:0}.class-visual-preview.shape-ellipse{border-radius:50%}.class-visual-preview.shape-capsule{border-radius:999px}.class-visual-preview.shape-diamond,.class-visual-preview.shape-hexagon{background:0 0;border:0;border-radius:0;position:relative}.class-visual-preview.shape-diamond:before,.class-visual-preview.shape-hexagon:before{border:2px solid var(--preview-stroke,#72a76a);background:var(--preview-fill,#173d32);content:"";position:absolute;inset:0}.class-visual-preview.shape-diamond:before{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.class-visual-preview.shape-hexagon:before{clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}.class-visual-preview.shape-diamond span,.class-visual-preview.shape-hexagon span{z-index:1;position:relative}@media (width<=620px){.class-visual-layout{grid-template-columns:1fr}}.node-hit-area{display:none}.field.show-hit-areas .node-hit-area{z-index:0;inset:calc(0px - var(--hit-area-padding,16px));border:1px dashed color-mix(in srgb, var(--mint) 88%, transparent);border-radius:inherit;background:color-mix(in srgb, var(--mint) 10%, transparent);pointer-events:auto;display:block;position:absolute}.field.show-hit-areas .node{z-index:6}.field.show-hit-areas .node.connector-active{z-index:4}.field.show-hit-areas .node>:not(.node-hit-area):not(.shape-anchor):not(.shape-resize-handle){z-index:1;position:relative}.node.shape-rectangle{border-radius:0}.node.shape-rounded-rectangle,.node.shape-custom{border-radius:17px}.node.shape-ellipse{border-radius:50%}.node.shape-capsule{border-radius:999px}.node.shape-diamond,.node.shape-hexagon{background:0 0;border-color:#0000}.node.shape-diamond:before,.node.shape-hexagon:before{z-index:0;border:1px solid var(--line);background:var(--surface-raised);content:"";position:absolute;inset:0}.node.class-visual.shape-diamond:before,.node.class-visual.shape-hexagon:before{border-color:var(--class-stroke);background:var(--class-fill)}.node.shape-diamond:before{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.node.shape-hexagon:before{clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}.node.shape-diamond>:not(.shape-anchor),.node.shape-hexagon>:not(.shape-anchor){z-index:1;position:relative}.node.shape-document{border-radius:4px 4px 22px}.node.shape-database{border-radius:50%/14%}.god-mode .node.shape-cloud:after,.god-mode .node.shape-ellipse:after,.god-mode .node.shape-capsule:after,.god-mode .node.shape-diamond:after,.god-mode .node.shape-hexagon:after,.god-mode .node.shape-document:after,.god-mode .node.shape-database:after{z-index:7;box-sizing:border-box;border:1px dashed color-mix(in srgb, var(--lime) 78%, transparent);content:"";pointer-events:none;border-radius:0;position:absolute;inset:0}.node.root.shape-cloud{box-sizing:border-box;aspect-ratio:1.82;background:0 0;border-color:#0000;border-radius:0;place-items:center;width:236px;padding:25px 42px 23px;display:grid;overflow:visible}.node.root.shape-cloud .root-cloud-shape{pointer-events:auto;width:calc(100% + 16px);height:calc(100% + 10px);inset:-5px -8px}.node.root.shape-cloud .root-cloud-shape path{fill:var(--surface-raised);stroke:var(--line)}.node.root.shape-cloud>:not(.root-cloud-shape):not(.shape-anchor):not(.shape-resize-handle):not(.relationship-disclosure):not(.context-navigator):not(.nested-context-badge){z-index:1;position:relative}.node.root.shape-cloud .root-cloud-copy{text-align:center;place-items:center;gap:3px;min-width:0;display:grid}.node.root.shape-cloud .root-cloud-copy b,.node.root.shape-cloud .root-cloud-copy small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.context-type-name{color:var(--context-type-colour)!important}.node.root.shape-cloud .root-cloud-copy small{color:var(--context-type-colour)}.node.root.shape-cloud>.context-navigator{z-index:8;position:absolute;top:19px;right:26px}.node.root.shape-cloud>.shape-resize-handle{bottom:18px;left:auto;right:23px}.context-navigator.context-selection{letter-spacing:.03em;min-width:auto;padding:0 7px;font-size:9px}.context-navigator.context-selection b{font-size:9px}.node.root.shape-cloud>.nested-context-badge{z-index:8;margin:0;position:absolute;bottom:-21px;left:50%;transform:translate(-50%)}.node.root.shape-cloud>.relationship-status{z-index:8;width:max-content;margin:0;position:absolute;bottom:-20px;left:50%;transform:translate(-50%)}.node.root.shape-cloud:hover,.node.root.shape-cloud:focus-visible{border-color:#0000;outline:none}.node.root.shape-cloud.selected{box-shadow:none;border-color:#0000}.node.root.shape-cloud.selected .root-cloud-shape path,.node.root.shape-cloud:hover .root-cloud-shape path,.node.root.shape-cloud:focus-visible .root-cloud-shape path{stroke:var(--selection-color);filter:drop-shadow(0 0 5px color-mix(in srgb, var(--selection-color) 45%, transparent))}.node.root.root-context-marker{border-radius:50%;padding:17px 23px}.node.root.root-context-marker>i{border-radius:50%;font-size:19px}.node.relationship-node{z-index:4;color:#f0b35b;background:0 0;border-color:#0000;border-radius:0;width:58px;height:58px;min-height:58px;padding:0}.node.relationship-node:before{z-index:0;content:"";background:#251d13;border:1px solid #8a6532;border-radius:8px;position:absolute;inset:8px;transform:rotate(45deg)}.node.relationship-node i{z-index:1;color:#ffc56f;background:0 0;place-items:center;width:100%;height:100%;font-size:15px;display:grid;position:relative}.node.relationship-node:hover,.node.relationship-node:focus-visible{border-color:#0000;outline:none}.node.relationship-node:hover:before,.node.relationship-node:focus-visible:before{border-color:var(--mint);box-shadow:0 0 0 3px #64d8af20}.node.relationship-node.selected{box-shadow:none;border-color:#0000}.node.relationship-node.selected:before{border-color:var(--selection-color);box-shadow:0 0 0 var(--selection-thickness) var(--selection-color), 0 12px 28px #0006}.node:active{cursor:grabbing}.node:hover,.node:focus-visible{z-index:3;border-color:var(--mint);outline:3px solid #64d8af20}.node.selected{z-index:3;border-color:var(--selection-color);box-shadow:inset 0 0 0 var(--selection-thickness) var(--selection-color), 0 12px 28px #0006}.node.selected:hover,.node.selected:focus-visible{border-color:var(--selection-color);box-shadow:inset 0 0 0 var(--selection-thickness) var(--selection-color), 0 12px 28px #0006;outline:none}.node.relationship-undetermined{border-style:dashed;border-color:#a86f2f}.node.nested-context{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--lime) 38%, transparent)}.node.projected-context-ghost{opacity:.56;filter:saturate(.72);border-style:dashed}.context-navigator{z-index:8;border:1px solid color-mix(in srgb, var(--lime) 70%, transparent);background:color-mix(in srgb, var(--canvas-background) 82%, var(--lime));min-width:20px;height:20px;color:var(--lime);border-radius:6px;justify-content:center;align-items:center;gap:2px;font-size:11px;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:8px;right:8px}.context-navigator b{font-size:8px}.context-navigator:hover,.context-navigator:focus-visible{background:var(--lime);color:var(--canvas-background);outline:none}.node.shape-diamond>.context-navigator,.node.shape-hexagon>.context-navigator{z-index:8;position:absolute}.nested-context-badge{border:1px solid color-mix(in srgb, var(--lime) 55%, transparent);background:color-mix(in srgb, var(--lime) 12%, transparent);width:max-content;max-width:100%;color:var(--lime);letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;border-radius:999px;margin:7px auto 0;padding:3px 7px;font-size:7px;font-weight:800;display:inline-flex;overflow:hidden}.nested-context-disclosure{border:1px solid;border-radius:4px;place-items:center;width:14px;height:14px;margin-right:5px;line-height:1;display:inline-grid}.nested-context-disclosure:hover,.nested-context-disclosure:focus-visible{background:var(--lime);color:var(--canvas-background);outline:none}.relationship-disclosure{border:1px solid color-mix(in srgb, var(--lime) 65%, transparent);width:14px;height:14px;color:var(--lime);border-radius:4px;place-items:center;margin:7px auto 0;font-size:12px;font-weight:800;line-height:1;display:inline-grid}.relationship-disclosure:hover,.relationship-disclosure:focus-visible{background:var(--lime);color:var(--canvas-background);outline:none}.context-choice-list{gap:8px;min-width:min(420px,80vw);padding:18px;display:grid}#context-choice-dialog{width:min(620px,100vw - 30px);min-width:min(620px,100vw - 30px);min-height:0;max-height:calc(100vh - 110px);padding:0;overflow:visible}.context-choice-dialog .dialog-head{z-index:3;background:var(--surface);border-bottom:1px solid var(--line);margin:0;padding:15px 18px 12px;position:sticky;top:0}dialog .dialog-head .dialog-actions.is-wrapped,.context-choice-dialog .dialog-head .dialog-actions.is-wrapped,#connection-editor-form .dialog-actions.is-wrapped{grid-column:1/-1;justify-content:flex-start;justify-self:stretch;width:100%}.administration-dialog-body{background:color-mix(in srgb, var(--surface) 92%, var(--canvas-background));min-width:0;padding:14px;overflow:visible}.context-choice-dialog .context-choice-list{box-sizing:border-box;min-width:0;padding:0}.context-choice-list button{border:1px solid var(--line);background:var(--dropdown-item-background);color:var(--dropdown-text);text-align:left;border-radius:9px;gap:5px;padding:12px;display:grid}.context-choice-list button:hover{border-color:#fff}.context-choice-list span{color:var(--muted);font-size:10px}.relationship-status{color:#f0b35b;letter-spacing:.04em;text-transform:uppercase;margin-top:8px;font-size:8px;font-weight:800}.shape-anchor{z-index:7;background:var(--mint);cursor:crosshair;opacity:0;pointer-events:none;border:1px solid #08120f;border-radius:50%;width:9px;height:9px;padding:0;transition:opacity .12s;position:absolute;box-shadow:0 0 0 2px #64d8af40}.shape-anchor.default{opacity:0}.node:hover .shape-anchor,.node.selected .shape-anchor,.node.connector-active .shape-anchor,.shape-anchor.active{opacity:1;pointer-events:auto}.shape-anchor.custom{background:var(--lime);cursor:grab;width:11px;height:11px}.shape-anchor.custom:active{cursor:grabbing}.shape-anchor.active{outline:3px solid #c9f36c70}.shape-anchor[data-anchor-edge=north]{top:0;transform:translate(-50%,-50%)}.shape-anchor[data-anchor-edge=south]{bottom:0;transform:translate(-50%,50%)}.shape-anchor[data-anchor-edge=west]{left:0;transform:translate(-50%,-50%)}.shape-anchor[data-anchor-edge=east]{right:0;transform:translate(50%,-50%)}.node>.shape-resize-handle{z-index:9;border:1px solid var(--canvas-background);background:linear-gradient(135deg, transparent 0 34%, var(--lime) 35% 45%, transparent 46% 54%, var(--lime) 55% 65%, transparent 66%);width:17px;height:17px;box-shadow:0 0 0 1px color-mix(in srgb, var(--lime) 60%, transparent);cursor:nwse-resize;opacity:0;touch-action:none;border-radius:3px;transition:opacity .12s;display:block;position:absolute;bottom:-8px;right:-8px}.node:hover .shape-resize-handle,.node.selected .shape-resize-handle,.shape-resize-handle.active{opacity:1}.canvas.resizing-shape,.canvas.resizing-shape *,body.shape-resizing,body.shape-resizing *{cursor:var(--shape-resize-cursor,nwse-resize)!important}.node>*{display:block}.node i{width:34px;height:34px;color:var(--mint);background:#1b342c;border-radius:11px;place-items:center;margin:0 auto 8px;font-style:normal;display:grid}.node small{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:5px;line-height:1.3;display:-webkit-box;overflow:hidden}.node-context-type{border-top:1px solid color-mix(in srgb, var(--context-border-color,#315047) 70%, transparent);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-top:7px;padding-top:5px;font-size:10px;line-height:1.2;overflow:hidden}.root{border-color:#638033}.root i{background:var(--lime);color:#15200e}.node.leaf{border-color:#316553}.node.expanded{border-color:#789d3d;box-shadow:inset 0 0 0 1px #c9f36c18}.node.root.selected,.node.leaf.selected,.node.expanded.selected{border-color:var(--selection-color);box-shadow:inset 0 0 0 var(--selection-thickness) var(--selection-color), 0 12px 28px #0006}.treatment-badge{width:max-content;color:var(--mint);letter-spacing:.1em;text-transform:uppercase;background:#193128;border-radius:999px;margin:9px auto 0;padding:3px 7px;font-size:8px;font-weight:800}.expanded .treatment-badge{color:var(--lime);background:#29361a}.editor-status-line{border-top:1px solid var(--line);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:100%;min-height:56px;color:var(--muted);flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:12px;padding:10px 18px;font-size:12px;transition:background .16s,border-color .16s;display:flex}.editor-status-line .page-status{flex:none;margin:0}.editor-status-line.status-editing{background:linear-gradient(90deg,#2d2114ed,#171a13ed);border-color:#a86f2f}.editor-status-line.status-draft{background:linear-gradient(90deg,#251d35ed,#15171bed);border-color:#8066ae}.editor-status-line.status-saved{background:linear-gradient(90deg,#123028ed,#0c1c17ed);border-color:#3c806b}.editor-status-line.status-milestone{background:linear-gradient(90deg,#293613ed,#18200fed);border-color:#9fbd4a}.editor-status-line.status-milestone-draft{background:linear-gradient(90deg,#30213ded,#21172bed);border-color:#b18ad9}.editor-status-line.status-saved-draft{background:linear-gradient(90deg,#17352ded,#10231ded);border-color:#5d9f89}.editor-status-line.status-editing,.editor-status-line.status-draft,.editor-status-line.status-saved,.editor-status-line.status-milestone,.editor-status-line.status-milestone-draft,.editor-status-line.status-saved-draft{background:color-mix(in srgb, var(--surface) 94%, transparent)}.none{color:var(--muted);position:absolute;top:70%;left:50%;transform:translate(-50%)}.inspector-sidebar{border-left:1px solid var(--line);background:color-mix(in srgb, var(--surface) 72%, transparent);flex-direction:column;min-width:0;min-height:0;padding:23px;transition:padding .15s;display:flex;position:relative;overflow:hidden auto}.inspector-sidebar.collapsed{padding:0}.inspector-sidebar.collapsed>:not(.inspector-toggle){display:none!important}.inspector-toggle{z-index:4;border:1px solid var(--line);background:var(--surface-interactive);width:28px;height:28px;color:var(--mint);border-radius:7px;padding:0;font-size:20px;line-height:1;position:absolute;top:8px;right:8px}.inspector-sidebar.collapsed .inspector-toggle{right:6px}aside h2{margin:8px 0;font:500 24px Georgia,serif}aside>p{color:var(--muted);line-height:1.55}.minimap-window{z-index:1900;border:1px solid var(--dropdown-border);background:var(--dropdown-background);border-radius:10px;width:300px;padding:8px;position:fixed;bottom:24px;right:24px;box-shadow:0 16px 40px #0009}.minimap-window[hidden]{display:none}.minimap-window header{cursor:move;height:auto;min-height:34px;color:var(--dropdown-muted);letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;justify-content:space-between;align-items:center;padding:4px 5px 8px;font-size:11px;display:flex}.minimap-window header span{margin-left:auto;margin-right:8px;font-size:9px}.minimap-window header button{border:1px solid var(--dropdown-border);cursor:pointer;background:var(--dropdown-item-background);width:25px;height:25px;color:var(--dropdown-accent);border-radius:6px;padding:0}.minimap-surface{cursor:crosshair;background-color:var(--context-canvas-background,#07110f);background-image:linear-gradient(#56756518 1px,#0000 1px),linear-gradient(90deg,#56756518 1px,#0000 1px);background-size:12px 12px;border:1px solid #345047;border-radius:8px;width:100%;height:160px;position:relative;overflow:hidden}.minimap-content{color:var(--muted);font-size:10px;position:absolute;inset:0}.minimap-content i{z-index:3;background:var(--mint);cursor:pointer;border-radius:2px;width:7px;height:7px;position:absolute;transform:translate(-50%,-50%)}.minimap-content i.selected{box-shadow:0 0 0 var(--selection-thickness) var(--selection-color), 0 0 8px var(--selection-color)}.minimap-lines{z-index:1;position:absolute;overflow:visible}.minimap-lines polyline{fill:none;stroke:#416458;stroke-width:1.5px;vector-effect:non-scaling-stroke}.minimap-lines polyline.relationship{stroke:#f0b35b}.minimap-lines polyline.selected{stroke:var(--selection-color);stroke-width:var(--selection-thickness)}.minimap-content i.root{background:var(--lime);width:9px;height:9px}.minimap-content i.relationship{background:#f0b35b;border-radius:1px;width:7px;height:7px;transform:translate(-50%,-50%)rotate(45deg)}.minimap-viewport{z-index:2;border:2px solid var(--lime);cursor:move;pointer-events:auto;background:#c9f36c18;border-radius:3px;min-width:72px;min-height:48px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #07110faa}.minimap-surface.unavailable{text-align:center;cursor:default;place-items:center;padding:16px;display:grid}dl div{border-top:1px solid var(--line);padding:12px 0}dt{color:var(--muted);text-transform:uppercase;font-size:9px}dd{overflow-wrap:anywhere;margin:5px 0 0;font-size:11px}.provenance-panel{border-top:1px solid var(--line);margin-top:18px;padding-top:4px}.provenance-panel h3{color:var(--mint);letter-spacing:.1em;text-transform:uppercase;margin:18px 0 8px;font-size:10px}.provenance-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.provenance-heading button{border:1px solid var(--line);background:var(--panel);color:var(--lime);cursor:pointer;border-radius:6px;padding:5px 8px;font-size:9px}.inspector-edit-element{border:1px solid var(--line);background:var(--panel);width:100%;color:var(--lime);cursor:pointer;border-radius:7px;margin:8px 0 4px;padding:8px 10px;font-size:10px}.element-search-results{gap:5px;max-height:180px;display:grid;overflow:auto}.element-search-results[hidden]{display:none}.searchable-element-picker{z-index:4;position:relative}.relationship-role-picker{z-index:40;position:relative}.relationship-role-picker .element-search-results{z-index:20;border:1px solid var(--line);background:var(--panel-strong,var(--panel));border-radius:8px;margin-top:4px;padding:6px;position:absolute;top:100%;left:0;right:0;box-shadow:0 12px 30px #00000059}.relationship-role-picker .element-search-results:empty{display:none}.searchable-element-picker .element-search-results{z-index:20;border:1px solid var(--line);background:var(--panel-strong,var(--panel));border-radius:8px;margin-top:4px;padding:6px;position:absolute;top:100%;left:0;right:0;box-shadow:0 12px 30px #00000059}.searchable-element-picker .element-search-results:empty{display:none}.thing-view-preview{z-index:2100;border:1px solid var(--line);border-left:2px solid var(--aqua);background:var(--panel-strong,#071914);opacity:1;width:min(360px,100vw - 32px);max-height:min(360px,100vh - 32px);color:var(--text);border-radius:7px;gap:6px;padding:9px 10px;font-size:12px;display:grid;position:fixed;overflow:auto;box-shadow:0 14px 34px #0000008c}.thing-view-preview[hidden]{display:none}.thing-view-preview>small,.thing-view-preview li small{color:var(--muted)}.thing-view-preview ul{gap:5px;margin:0;padding:0;list-style:none;display:grid}.thing-view-preview li{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:8px;display:grid}.element-search-results button{border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer;text-align:left;border-radius:7px;gap:3px;padding:8px;display:grid}.element-search-results small{color:var(--muted);overflow-wrap:anywhere}.element-context-menu{z-index:1000;border:1px solid var(--dropdown-border,var(--line));background:var(--dropdown-background,var(--panel));border-radius:8px;min-width:170px;padding:6px;display:grid;position:fixed;box-shadow:0 14px 36px #00000073}.element-context-menu[hidden]{display:none}.element-context-menu button{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;padding:9px 11px}.element-context-menu button:hover:not(:disabled){color:var(--lime);outline:2px solid color-mix(in srgb, var(--lime) 65%, white);outline-offset:-2px;font-weight:800}.element-context-menu button:focus-visible{color:var(--lime);outline-offset:-2px;outline:2px solid #fff;font-weight:800}.element-context-menu button:disabled{color:var(--muted);cursor:not-allowed;opacity:.55}.element-context-menu button[data-popup-locked]{opacity:.28}.provenance-panel.loading,.provenance-panel.failed,.inspector-empty{color:var(--muted);font-size:11px;line-height:1.5}.provenance-panel.failed{color:var(--secondary-accent,#ffb84d)}.external-reference{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 84%, transparent);border-radius:8px;gap:5px;margin-bottom:8px;padding:10px;display:grid}.external-reference strong,.external-reference code{overflow-wrap:anywhere;font-size:11px}.external-reference small,.provenance-assertion small{color:var(--muted);font-size:9px;line-height:1.45}.provenance-assertion{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 84%, transparent);border-radius:8px;margin-bottom:8px}.provenance-assertion summary{cursor:pointer;padding:10px}.provenance-assertion summary span{vertical-align:top;gap:4px;max-width:calc(100% - 18px);display:inline-grid}.provenance-assertion dl{margin:0 10px}.provenance-assertion pre{background:var(--canvas-background,#07110f);max-height:220px;color:var(--text,#edf5ef);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:6px;margin:8px 10px 10px;padding:9px;font-size:9px;overflow:auto}.loader{border:2px solid var(--line);border-top-color:var(--lime);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite s}@keyframes s{to{transform:rotate(360deg)}}dialog{--panel:var(--surface);--panel-strong:var(--surface-raised);border:1px solid var(--line);background:var(--surface);width:min(500px,100vw - 30px);color:var(--text);border-radius:16px;padding:0}dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#010705c9}dialog.floating-editor{z-index:2000;max-height:calc(100vh - 88px - var(--activity-history-height));overscroll-behavior:contain;box-sizing:border-box;resize:none;width:min(680px,100vw - 30px);min-width:min(540px,100vw - 30px);max-width:calc(100vw - 30px);margin:0;position:fixed;overflow:auto;box-shadow:0 24px 70px #000a}:is(dialog.floating-editor:has(.thing-class-options:not([hidden])),dialog.floating-editor:has(.element-search-results:not([hidden]))){overflow:visible}#class-editor-dialog:has(.thing-class-options:not([hidden])){overflow:auto}.dialog-resize-handle{z-index:2100;cursor:nwse-resize;touch-action:none;width:18px;height:18px;position:fixed}.dialog-resize-handle:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);width:9px;height:9px;position:absolute;bottom:3px;right:3px}.dialog-resize-handle:hover:after,.dialog-resize-handle:focus-visible:after{border-color:var(--mint)}.thing-delete-dialog{width:min(520px,100vw - 30px)}.thing-delete-dialog>section{gap:12px;padding:18px 22px;display:grid}.thing-delete-dialog p{margin:0}.thing-delete-identity-option{border:1px solid var(--line);background:var(--input-background);border-radius:8px;align-items:center;gap:8px;padding:10px 12px;display:flex}.thing-delete-dialog .actions{justify-content:flex-end}#context-dialog,#lookup-editor-dialog,#connection-contract-dialog,#treatment-dialog{overflow:visible}dialog.floating-editor .dialog-head{z-index:4;background:var(--surface);cursor:grab;-webkit-user-select:none;user-select:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:3px 0 8px;display:grid;position:sticky;top:0}#element-editor-dialog .dialog-head{margin:-18px -22px 0;padding:18px 22px 10px;top:-18px;box-shadow:0 8px 14px #0005}dialog.floating-editor .dialog-head:active{cursor:grabbing}dialog.floating-editor .dialog-head button{cursor:pointer}.dialog-head>button.window-close{border:1px solid var(--line);background:var(--surface-interactive);width:30px;height:30px;color:var(--text);cursor:pointer;border-radius:7px;place-items:center;padding:0;font:700 20px/1 system-ui,sans-serif;display:grid}.dialog-head>button.window-close:hover,.dialog-head>button.window-close:focus-visible{color:var(--lime);border-color:#fff}button.dismiss-glyph,button[data-action-icon=cancel]:before,button[data-action-icon=close]:before{opacity:.52;font-weight:400;transition:opacity .12s,color .12s,background-color .12s,border-color .12s}button.dismiss-glyph{border-color:color-mix(in srgb, var(--line) 58%, transparent)!important;background:color-mix(in srgb, var(--surface-interactive) 54%, transparent)!important;color:color-mix(in srgb, var(--text) 68%, transparent)!important;font-weight:400!important}button.dismiss-glyph:hover,button.dismiss-glyph:focus-visible{opacity:1;background:color-mix(in srgb, var(--surface-interactive) 54%, transparent)!important;color:var(--lime)!important;border-color:#fff!important}button[data-action-icon=cancel]:hover:before,button[data-action-icon=cancel]:focus-visible:before,button[data-action-icon=close]:hover:before,button[data-action-icon=close]:focus-visible:before{opacity:1}.connection-line-colour{align-items:end;gap:16px;display:flex}.connection-line-colour>label{flex:none}.connection-line-preview{border:1px solid var(--line);background:var(--input-background);border-radius:7px;align-items:center;width:150px;height:38px;padding:0 8px;display:grid}.connection-line-preview>span{border-top:var(--connection-preview-width,3px) var(--connection-preview-style,solid) var(--connection-preview-colour,#f0b35b);width:100%;display:block}.connection-label-visible{cursor:pointer;justify-content:start;align-items:center;gap:7px;width:max-content;grid-template-columns:none!important;display:inline-flex!important}.connection-label-visible>input{margin:0;width:auto!important}.recycle-bin-dialog{width:min(760px,100vw - 30px)}dialog.recycle-bin-dialog .dialog-head>button.recycle-bin-close{border:1px solid var(--line);background:var(--surface-interactive);color:var(--text);font:inherit;cursor:pointer;border-radius:7px;padding:7px 12px;font-size:12px}dialog.recycle-bin-dialog .dialog-head>button.recycle-bin-close:hover,dialog.recycle-bin-dialog .dialog-head>button.recycle-bin-close:focus-visible{border-color:var(--text-strong)}.thing-view-dialog input[readonly],.thing-view-dialog textarea[readonly]{cursor:default;color:var(--text);background:var(--input-background)}.thing-view-dialog>.view-editor-form{gap:10px;padding:18px 22px;display:grid}.thing-view-dialog .editor-core-fields{border:1px solid var(--line);background:var(--surface-raised);border-radius:9px}.thing-view-dialog .editor-core-fields>div{gap:8px;padding:12px;display:grid}.thing-view-dialog .editor-core-fields label{grid-template-columns:118px minmax(0,1fr);align-items:center;gap:10px;display:grid}.thing-view-dialog .editor-core-fields label>span{color:var(--muted)}.thing-view-dialog .editor-core-fields label:has(textarea){align-items:start}.thing-view-dialog .view-dialog-actions{align-items:center;gap:7px;display:flex}.thing-view-dialog .view-dialog-close{border:1px solid var(--lime);background:var(--surface-interactive);color:var(--text);font:inherit;cursor:pointer;border-radius:7px;padding:7px 13px;font-size:12px;font-weight:700}.thing-view-dialog .view-dialog-close:hover,.thing-view-dialog .view-dialog-close:focus-visible{background:var(--surface-interactive-hover);box-shadow:0 0 0 2px color-mix(in srgb, var(--lime) 28%, transparent)}.thing-view-dialog .view-internals-toggle{border:1px solid var(--line);background:var(--surface-interactive);color:var(--text);font:inherit;cursor:pointer;border-radius:7px;padding:5px 8px;font-size:11px}.thing-view-dialog .view-internal-attributes{border:1px dashed var(--line);background:var(--input-background);border-radius:8px;gap:6px;padding:10px 12px;display:grid}.thing-view-dialog .view-internal-attributes>div{grid-template-columns:120px minmax(0,1fr);gap:8px;display:grid}.thing-view-dialog .view-internal-attributes span{color:var(--muted);font-size:11px}.thing-view-dialog .view-internal-attributes code{overflow-wrap:anywhere;color:var(--aqua);font-size:11px}.thing-view-dialog .view-relationship-details{border:1px solid var(--line);background:var(--surface-raised);border-radius:9px;gap:8px;padding:12px;display:grid}.thing-view-dialog .view-relationship-details>strong{color:var(--aqua);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.thing-view-dialog .view-relationship-details>div{gap:8px;display:grid}.thing-view-dialog .view-relationship-details label{grid-template-columns:118px minmax(0,1fr);align-items:center;gap:10px;display:grid}.thing-view-dialog .view-relationship-details label:has(textarea){align-items:start}.thing-view-dialog .view-relationship-details label>span{color:var(--muted)}.thing-view-dialog .view-god-action{border:1px solid var(--aqua);background:var(--surface-interactive);color:var(--aqua);font:inherit;cursor:pointer;border-radius:7px;padding:5px 8px;font-size:11px;font-weight:700}.thing-view-dialog .view-god-action:hover:not(:disabled),.thing-view-dialog .view-god-action:focus-visible:not(:disabled){background:var(--surface-interactive-hover);box-shadow:0 0 0 2px color-mix(in srgb, var(--aqua) 28%, transparent)}.thing-view-dialog .view-god-action:disabled{cursor:not-allowed;opacity:.56}.floating-editor .editor-internal-actions{margin-left:auto}.floating-editor .view-internals-toggle{border:1px solid var(--line);background:var(--surface-interactive);color:var(--text);font:inherit;cursor:pointer;border-radius:7px;padding:5px 8px;font-size:11px}.floating-editor .editor-internal-attributes{border:1px dashed var(--line);background:var(--input-background);border-radius:8px;gap:6px;margin:0 14px 10px;padding:10px 12px;display:grid}.floating-editor .editor-internal-attributes>div{grid-template-columns:120px minmax(0,1fr);gap:8px;display:grid}.floating-editor .editor-internal-attributes span{color:var(--muted);font-size:11px}.floating-editor .editor-internal-attributes code{overflow-wrap:anywhere;color:var(--mint);font-size:11px}.recycle-bin-list{gap:8px;padding:12px;display:grid}.recycle-bin-controls{border-bottom:1px solid var(--line);gap:5px;padding:12px;display:grid}.recycle-bin-controls>div{align-items:center;gap:10px;display:flex}.recycle-bin-controls label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:6px;font-size:9px;font-weight:800;display:flex}.recycle-bin-controls input[type=search]{width:min(360px,100%);min-height:27px;padding:4px 7px}.recycle-bin-controls select{width:118px;min-height:27px;padding:3px 6px;font-size:11px}.recycle-bin-controls .recycle-bin-direction{white-space:nowrap;letter-spacing:0;text-transform:none;gap:5px;min-height:27px;font-size:10px}.recycle-bin-item{border:1px solid var(--line);background:var(--surface-raised);border-radius:9px;gap:4px;padding:12px;display:grid}.recycle-bin-item p{color:var(--muted);margin:0}.recycle-bin-actions{flex-wrap:wrap;gap:6px;margin-top:5px;display:flex}.dialog-head>div:first-child{min-width:0}.dialog-head .dialog-actions{flex-wrap:wrap;flex:0 auto;justify-content:flex-end;max-width:100%;margin-left:auto}.dialog-head>button{flex:none}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:5px;display:flex}.dialog-actions .dialog-clone-control{order:-1}.dialog-clone-control{max-width:210px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:5px;font-size:10px;font-weight:800;display:inline-flex}.dialog-clone-control select,.dialog-clone-control input[type=search]{border:1px solid var(--line);background:var(--input-background);width:130px;min-height:29px;color:var(--text);font:inherit;border-radius:6px;padding:4px 24px 4px 7px;font-size:11px}.class-template-picker,.class-parent-picker{position:relative}.class-template-picker .thing-class-options,.class-parent-picker .thing-class-options{z-index:6;width:min(460px,100vw - 80px);min-width:0;max-width:none;left:auto;right:0}.class-parent-picker>input{box-sizing:border-box;width:100%}.dialog-actions button,.dialog-head>button{white-space:nowrap;min-height:29px;padding:5px 8px;font-size:11px}.dialog-actions button.danger,.god-theme-preview button.danger{border-color:var(--button-danger-border,#a54b43);background:var(--button-danger-background,#351a1a);color:var(--button-danger-text,#ffc4bb)}.dialog-actions button.danger:hover:not(:disabled),.god-theme-preview button.danger:hover:not(:disabled),.god-theme-preview button.danger:focus-visible:not(:disabled){border-color:var(--button-danger-highlight-border,#ef776b);background:var(--button-danger-highlight-background,var(--button-danger-background,#351a1a));color:var(--button-danger-text,#fff1ee);box-shadow:0 0 0 1px var(--button-danger-glow,#ef776b), 0 0 12px color-mix(in srgb, var(--button-danger-glow,#ef776b) 46%, transparent)}.dialog-actions button.danger:disabled{cursor:wait;opacity:.7}dialog .dialog-head{padding-right:44px}dialog:not(.floating-editor) .dialog-head{position:relative}.dialog-drag-strip{z-index:4;cursor:grab;height:9px;position:absolute;top:0;left:0;right:0}.dialog-drag-strip:active{cursor:grabbing}.field-help-caption{cursor:help}.field-help-view{z-index:2200;border:1px solid var(--line);background:var(--surface-raised);max-width:310px;color:var(--text);pointer-events:none;border-radius:8px;padding:9px 11px;font-size:11px;line-height:1.35;position:fixed;box-shadow:0 8px 20px #0009}dialog .dialog-head>button.window-close{z-index:2;position:absolute;top:10px;right:10px}.dialog-head .dialog-actions{margin-right:0}.dialog-actions button.view-internals-toggle.is-toggled{border-color:color-mix(in srgb, var(--line) 62%, transparent);background:color-mix(in srgb, var(--surface-interactive) 45%, transparent);color:color-mix(in srgb, var(--muted) 68%, transparent);opacity:.58}.dialog-actions button.view-internals-toggle.is-toggled:hover,.dialog-actions button.view-internals-toggle.is-toggled:focus-visible{color:var(--mint);opacity:1;border-color:#fff}#connection-editor-dialog [data-connection-editor-delete]{color:#fff0eb;background:#6a302c;border-color:#d9786c}#connection-editor-dialog [data-connection-editor-delete]:hover:not(:disabled),#connection-editor-dialog [data-connection-editor-delete]:focus-visible{color:#fff;background:#91433c;border-color:#ffc0b4}.dialog-head>button{padding:2px 7px;font-size:20px}.editor-core-fields{z-index:3;border:1px solid var(--line);background:var(--surface);border-radius:9px;margin:0;position:sticky;top:62px;box-shadow:0 10px 16px #0005}.editor-core-fields>summary{color:var(--aqua);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;padding:7px 10px;font-size:10px;font-weight:800}.editor-core-fields>div{gap:8px;padding:0 10px 10px;display:grid}.editor-core-fields:not([open])>summary{border-radius:9px}#element-editor-form,#connection-editor-form,#context-dialog-form,#lookup-editor-form,#connection-contract-form,#class-editor-form{box-sizing:border-box;gap:10px;width:100%;min-width:0;padding:18px 22px}#connection-contract-form>section,.connection-contract-endpoints{border:1px solid var(--line);border-radius:9px;gap:10px;padding:12px;display:grid}#connection-contract-form h3{margin:0;font-size:15px}#connection-contract-form fieldset{border:1px solid var(--line);border-radius:7px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:10px;display:grid}#connection-contract-form fieldset>label{color:var(--muted);gap:4px;font-size:12px;display:grid}#connection-contract-form fieldset>label input,#connection-contract-form fieldset>label select{min-width:0}#connection-contract-form .contract-stable-key{color:var(--muted);overflow-wrap:anywhere;grid-column:1/-1;margin:0;font-size:11px}#connection-contract-form .connection-contract-endpoints{grid-template-columns:repeat(2,minmax(0,1fr))}#connection-contract-form .connection-contract-endpoints legend{color:var(--muted);padding:0 4px}#element-editor-form>label,#connection-editor-form>label,#context-dialog-form>label,#lookup-editor-form>label,#connection-contract-form>label,#class-editor-form>label{grid-template-columns:118px minmax(0,1fr);align-items:center;gap:10px}#element-editor-form .editor-core-fields>div>label,#connection-editor-form .editor-core-fields>div>label,#context-dialog-form .editor-core-fields>div>label,#lookup-editor-form .editor-core-fields>div>label,#class-editor-form .editor-core-fields>div>label{grid-template-columns:118px minmax(0,1fr);align-items:center;gap:10px;display:grid}#element-editor-form>label>span,#connection-editor-form>label>span,#context-dialog-form>label>span,#lookup-editor-form>label>span,#connection-contract-form>label>span,#class-editor-form>label>span,#element-editor-form .editor-core-fields>div>label>span,#connection-editor-form .editor-core-fields>div>label>span,#context-dialog-form .editor-core-fields>div>label>span,#lookup-editor-form .editor-core-fields>div>label>span,#class-editor-form .editor-core-fields>div>label>span{color:var(--muted);cursor:help}#element-editor-form>label input,#element-editor-form>label select,#element-editor-form>label textarea,#connection-editor-form>label input,#connection-editor-form>label select,#connection-editor-form>label textarea,#context-dialog-form>label input,#context-dialog-form>label select,#context-dialog-form>label textarea,#lookup-editor-form>label input,#lookup-editor-form>label select,#lookup-editor-form>label textarea,#connection-contract-form>label input,#connection-contract-form>label select,#connection-contract-form>label textarea,#class-editor-form>label input,#class-editor-form>label select,#class-editor-form>label textarea,#element-editor-form .editor-core-fields>div>label input,#element-editor-form .editor-core-fields>div>label select,#element-editor-form .editor-core-fields>div>label textarea,#connection-editor-form .editor-core-fields>div>label input,#connection-editor-form .editor-core-fields>div>label select,#connection-editor-form .editor-core-fields>div>label textarea,#context-dialog-form .editor-core-fields>div>label input,#context-dialog-form .editor-core-fields>div>label select,#context-dialog-form .editor-core-fields>div>label textarea,#lookup-editor-form .editor-core-fields>div>label input,#lookup-editor-form .editor-core-fields>div>label select,#lookup-editor-form .editor-core-fields>div>label textarea,#class-editor-form .editor-core-fields>div>label input,#class-editor-form .editor-core-fields>div>label select,#class-editor-form .editor-core-fields>div>label textarea{min-width:0}#context-dialog-form .context-element-picker{gap:8px;min-width:0;display:grid}#context-dialog-form .context-element-picker input,#context-dialog-form .context-element-picker select{width:100%;min-width:0}#context-dialog-form .context-refinement-element{gap:6px;display:grid}#context-dialog-form .context-refinement-element>span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.74rem;font-weight:700}#context-dialog-form .context-refinement-element output{border:1px solid var(--line);background:var(--field-background,var(--surface));color:var(--text);border-radius:8px;padding:11px 12px;display:block}#context-dialog-form .context-type-picker,#context-dialog-form .context-type-picker>input[type=search],#context-dialog-form .context-clone-picker,#context-dialog-form .context-clone-picker>input[type=search]{width:100%;min-width:0}#element-editor-form>label.editor-field-description{align-items:start}#connection-editor-form>label:has(textarea){align-items:start}#lookup-editor-form>label:has(textarea){align-items:start}#class-editor-form>label:has(textarea){align-items:start}#connection-editor-form>label.connection-name-field,#connection-editor-form .editor-core-fields>div>label.connection-name-field{grid-template-columns:118px minmax(0,1fr);display:grid}#connection-editor-form>label.connection-name-field>.generated-name-control,#connection-editor-form .editor-core-fields>div>label.connection-name-field>.generated-name-control{width:100%;min-width:0;display:block}#connection-editor-form>label.connection-name-field>.generated-name-control>input,#connection-editor-form .editor-core-fields>div>label.connection-name-field>.generated-name-control>input{box-sizing:border-box;width:100%!important}#connection-editor-form .generated-name-control.is-generated>input{color:color-mix(in srgb, var(--text) 42%, transparent);border-color:color-mix(in srgb, var(--line) 66%, transparent)}#connection-editor-form .generated-name-control.is-generated:focus-within>input{color:var(--text);border-color:var(--lime)}#element-editor-form>label.editor-field-description textarea,#connection-editor-form>label textarea,#lookup-editor-form>label textarea,#connection-contract-form>label textarea,#class-editor-form>label textarea{min-height:58px}#element-editor-form .dialog-head h2,#connection-editor-form .dialog-head h2,#context-dialog-form .dialog-head h2,#lookup-editor-form .dialog-head h2,#class-editor-form .dialog-head h2{font-size:24px}#element-editor-form .context-summary{grid-template-columns:auto 1fr auto 1fr;gap:5px 10px;padding:8px 10px;font-size:10px;display:grid}#element-editor-form .context-summary b{text-overflow:ellipsis;min-width:0;overflow:hidden}.class-attributes{border:1px solid var(--line);background:var(--input-background);border-radius:9px;gap:7px;padding:9px 10px;display:grid}#class-editor-dialog{width:min(980px,100vw - 30px)}.class-visual>div:first-child{gap:3px;display:grid}.class-visual>div:first-child small{color:var(--muted);line-height:1.35}.class-attributes>div:first-child{justify-content:space-between;align-items:center;display:flex}.class-attributes strong small{color:var(--muted);margin-left:8px;font-size:10px;font-weight:400}.class-attribute-row{grid-template-columns:36px max-content max-content max-content 26px 26px;align-items:center;gap:5px;display:grid}.class-attribute-row label{white-space:nowrap;align-items:center;gap:3px;font-size:10px;display:flex}.class-attribute-row input,.class-attribute-row select{field-sizing:content;min-width:130px;max-width:300px}.class-attribute-row select{min-width:105px}.class-attribute-row .attribute-required{color:#789487;background:0 0;border-color:#0000;width:32px;min-width:32px;height:32px;font-size:16px}.class-attribute-row .attribute-required[aria-pressed=true]{color:var(--lime);border-color:var(--lime);background:color-mix(in srgb, var(--lime) 20%, var(--surface-interactive));box-shadow:0 0 10px color-mix(in srgb, var(--lime) 35%, transparent)}.class-attribute-row .attribute-drag{cursor:grab;color:var(--muted)}.class-attribute-row .attribute-drag:active{cursor:grabbing}.class-attribute-row.is-dragging{opacity:.55}.attribute-drag-preview{border:1px solid var(--lime);opacity:.95;background:#0d2119;border-radius:7px;width:max-content;min-width:420px;padding:5px;position:fixed;top:-10000px;left:-10000px;box-shadow:0 10px 24px #0009}.class-attribute-row button{min-width:26px;padding:5px}@media (width<=700px){.class-attribute-row{grid-template-columns:36px minmax(120px,1fr) minmax(120px,1fr) 90px 26px 26px}}.thing-class-field .thing-class-picker{width:100%}.thing-attribute-fields{border:1px solid var(--line);background:var(--input-background);border-radius:9px;gap:12px;padding:14px;display:grid}.thing-class-options{z-index:50;border:1px solid var(--line);background:var(--dropdown-background,var(--surface));overscroll-behavior:contain;border-radius:8px;gap:5px;max-height:210px;padding:5px;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 12px 24px #0009}.thing-class-options[hidden]{display:none}.thing-class-options{border-radius:0 0 7px 7px;gap:0;padding:0}.thing-class-options>button{border:0;border-bottom:1px solid var(--line);width:100%;min-height:0;color:var(--text);font:inherit;text-align:left;background:0 0;border-radius:0;padding:8px 10px;font-size:12px;line-height:1.3;display:block}.thing-class-options>button:last-of-type{border-bottom:0}.thing-class-options>button:hover,.thing-class-options>button:focus-visible{outline:0}.class-group-class-assignment{gap:8px;display:grid}.class-group-class-assignment>div:first-child{gap:3px;display:grid}.class-group-class-assignment>div:first-child small{color:var(--muted);line-height:1.35}.class-group-class-picker .thing-class-options{z-index:8}.class-group-class-picker .thing-class-options.opens-upward{border-radius:7px 7px 0 0;top:auto;bottom:calc(100% + 4px)}.class-group-class-picker .thing-class-options small{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}.class-group-class-controls{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;width:100%;display:grid}.class-group-class-picker{width:100%;min-width:0}.class-group-class-picker>input{box-sizing:border-box;width:100%}.class-group-class-controls>button{min-height:34px}.class-group-key-format,.class-group-key-format code{text-transform:none}.class-group-class-results{border:1px solid var(--line);background:var(--input-background);border-radius:7px;flex-wrap:wrap;gap:6px;min-height:30px;padding:8px;display:flex}.class-group-class-results span{background:var(--surface-raised);color:var(--text);border-radius:5px;align-items:baseline;gap:5px;padding:4px 7px;font-size:11px;display:inline-flex}.class-group-class-results button{min-width:18px;min-height:18px;color:var(--muted);font:inherit;background:0 0;border:0;border-radius:50%;padding:0;font-size:16px;line-height:1}.class-group-class-results button:hover,.class-group-class-results button:focus-visible{background:color-mix(in srgb, var(--danger,#ff5968) 20%, transparent);color:var(--danger,#ff5968)}.class-group-class-results small,.class-group-class-results p{color:var(--muted);margin:0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}.thing-class-picker{position:relative}.relationship-meaning-picker,.relationship-direction-picker{z-index:40}:is(.relationship-meaning-picker:has(.thing-class-options:not([hidden])),.relationship-direction-picker:has(.thing-class-options:not([hidden])),.relationship-role-picker:has(.thing-class-options:not([hidden])),.relationship-role-picker:has(.element-search-results:not([hidden]))){z-index:60}dialog form{gap:17px;padding:24px;display:grid}.dialog-head{justify-content:space-between;display:flex}#relationship-dialog .dialog-head .actions{align-items:center;gap:8px;margin-left:auto;display:flex}#relationship-dialog{max-height:calc(100vh - 88px - var(--activity-history-height));overscroll-behavior:contain;overflow:auto}#relationship-dialog .dialog-head{z-index:4;background:var(--surface);margin:-24px -24px 12px;padding:18px 22px 10px;position:sticky;top:0;box-shadow:0 8px 14px #0005}.dialog-head h2{margin:4px 0;font:500 28px Georgia,serif}.dialog-head>button{color:var(--muted);background:0 0;border:0;font-size:25px}.note{border-left:2px solid var(--mint);background:var(--surface-raised);color:var(--muted);padding:11px;font-size:12px}.context-summary{border:1px solid var(--line);background:var(--input-background);border-radius:9px;padding:12px}.context-summary span,.context-summary b{display:block}.context-summary span{color:var(--muted);text-transform:uppercase;font-size:9px}.context-summary b{margin-top:4px}.participant{border:1px solid var(--line);border-radius:10px;grid-template-columns:1fr 1fr;gap:10px;padding:13px;display:grid}.participant>strong{color:var(--mint);grid-column:1/-1;font-size:11px}.participant .readonly-participant-field{appearance:none;cursor:default;padding-right:12px}#connection-editor-form>label{grid-template-columns:1fr;align-items:stretch;gap:6px;display:grid}#connection-editor-form>label.connection-name-field{grid-template-columns:1fr}#connection-editor-form>label>span{color:var(--muted)}#connection-editor-dialog{width:min(620px,100vw - 30px);min-width:min(620px,100vw - 30px);overflow:hidden}#connection-editor-form{max-height:calc(100vh - 88px - var(--activity-history-height));grid-auto-flow:row;overflow:auto;grid-template-columns:minmax(0,1fr)!important;display:grid!important}#connection-editor-form>*{box-sizing:border-box;width:100%;min-width:0;grid-column:1/-1!important}#connection-editor-form .dialog-actions{flex-wrap:wrap;justify-content:flex-end}#relationship-dialog{width:min(620px,100vw - 30px);min-width:min(620px,100vw - 30px);overflow:hidden}#relationship-form{max-height:calc(100vh - 88px - var(--activity-history-height));overscroll-behavior:contain;overflow:auto}.connection-participants{gap:10px;display:grid}.connection-participants>strong{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.connection-participants .participant label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;gap:5px;font-size:10px;font-weight:800;display:grid}.connection-participants input[readonly]{cursor:default}.mode-toggle{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:6px;font-size:9px;font-weight:800;display:flex}.mode-toggle select{min-width:82px;font:inherit;color:var(--text);padding:6px 24px 6px 8px}.alfaai-status-indicator{border:1px solid var(--line);background:var(--surface-interactive);width:32px;height:32px;color:var(--text);border-radius:50%;place-items:center;font-size:17px;line-height:1;display:inline-grid}.alfaai-status-indicator.is-enabled{border-color:var(--aqua);box-shadow:0 0 12px color-mix(in srgb, var(--aqua) 45%, transparent);filter:saturate(1.15)}.alfaai-status-indicator.is-disabled{opacity:.28;filter:grayscale()}.alfaai-status-indicator.is-enabled{cursor:pointer}.alfaai-status-indicator.is-enabled:hover,.alfaai-status-indicator.is-enabled:focus-visible{border-color:var(--lime);background:var(--surface-interactive-hover);outline:none}.alfaai-status-indicator:disabled{cursor:not-allowed}.god-mode .mode-toggle select{color:#ffe7e9;background:#7e1726;border-color:#ff5968;font-weight:800}.god-template-dialog{width:min(520px,100vw - 28px)}.god-template-dialog form{gap:16px;padding:18px 22px;display:grid}.god-template-picker{gap:7px;display:grid}.god-template-picker>span{color:#ffadb5;letter-spacing:.09em;text-transform:uppercase;font-size:10px;font-weight:800}.god-mode .god-template-picker select{color:#ffe7e9;background:#421820;border-color:#ff5968}.god-template-dialog .actions{justify-content:flex-end}.god-force-template-dialog{width:min(520px,100vw - 28px)}.branch-merge-dialog{width:min(620px,100vw - 28px)}.branch-merge-dialog section{border:1px solid var(--line);background:var(--surface-raised);border-radius:8px;margin:14px 0;padding:10px 14px}.branch-merge-dialog h3{margin:0 0 7px;font-size:13px}.branch-merge-dialog ul{gap:4px;margin:0;padding-left:20px;display:grid}.god-force-template-dialog>section{gap:16px;padding:18px 22px;display:grid}.god-force-template-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#050807c7}.god-force-warning{background:color-mix(in srgb, #991d2d 28%, var(--surface-raised));color:#ffe7e9;border:1px solid #ff5968;border-left-width:4px;border-radius:8px;padding:14px 15px}.god-force-warning strong{color:#ff929d;margin-bottom:7px;display:block}.god-force-warning p{margin:0;line-height:1.5}.god-force-template-dialog .actions{justify-content:flex-end}.god-theme-dialog{width:min(840px,100vw - 28px)}.model-security-dialog{width:min(680px,100vw - 28px)}.model-security-dialog form{gap:13px;padding:27px 22px 18px;display:grid}.model-security-dialog textarea{min-height:100px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.god-theme-dialog form{gap:13px;padding:27px 22px 18px;display:grid}.god-theme-dialog>.dialog-drag-strip{z-index:5;border-bottom:1px solid color-mix(in srgb, var(--button-god-border,#ff5968) 72%, var(--line));background:linear-gradient(90deg, transparent 0 37%, color-mix(in srgb, var(--button-god-border,#ff5968) 72%, transparent) 37% 63%, transparent 63%), var(--surface-raised);height:15px;box-shadow:0 2px 8px color-mix(in srgb, var(--button-god-glow,#ff5968) 22%, transparent);border-radius:15px 15px 0 0}.god-theme-dialog>.dialog-drag-strip:hover{border-bottom-color:var(--button-god-highlight-border,#ffd2d6);box-shadow:0 2px 12px color-mix(in srgb, var(--button-god-glow,#ff5968) 42%, transparent)}.god-theme-dialog .dialog-head>button.window-close{z-index:7;width:30px;height:30px;position:absolute;top:21px;right:12px}.god-theme-dialog .dialog-head{padding-right:40px}.god-theme-selectors{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.god-theme-selector{grid-template-columns:120px minmax(0,1fr);align-items:center;gap:10px;display:grid}.god-theme-selector>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.god-theme-roles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:min(470px,100vh - 320px);display:grid;overflow:auto}.god-theme-roles fieldset{border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px;margin:0;padding:10px;display:grid}.god-theme-roles legend{color:var(--mint);padding:0 5px;font-size:11px;font-weight:800}.god-theme-roles label{min-width:0;color:var(--muted);grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:9px;font-size:10px;display:grid}.god-theme-roles label>span{overflow-wrap:anywhere;min-width:0;line-height:1.25}.god-theme-roles .theme-colour-button{border:2px solid var(--line);border-radius:5px;width:42px;min-width:42px;height:30px;min-height:30px;padding:0}.theme-colour-picker{z-index:5000;border:1px solid var(--line);background:var(--surface);width:238px;color:var(--text);border-radius:10px;position:fixed;overflow:hidden;box-shadow:0 18px 44px #000a}.theme-colour-picker[hidden]{display:none}.theme-colour-picker-drag{border-bottom:1px solid var(--line);background:var(--surface-raised);cursor:grab;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;min-height:32px;padding:4px 5px 4px 10px;display:flex}.theme-colour-picker-drag:active{cursor:grabbing}.theme-colour-picker-drag strong{color:var(--text);font-size:11px}.theme-colour-picker-drag button{place-items:center;width:24px;min-width:24px;height:24px;min-height:24px;padding:0;font-size:17px;line-height:1;display:grid}.theme-colour-picker-field{border-bottom:1px solid var(--line);cursor:crosshair;touch-action:none;height:126px;position:relative}.theme-colour-picker-field i{pointer-events:none;border:2px solid #fff;border-radius:50%;width:13px;height:13px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #000}.theme-colour-picker-hue{appearance:none;cursor:pointer;background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red);border:0;border-radius:8px;width:calc(100% - 20px);height:13px;margin:10px;padding:0;display:block}.theme-colour-picker-hue::-webkit-slider-thumb{appearance:none;background:0 0;border:2px solid #fff;border-radius:5px;width:12px;height:18px;box-shadow:0 0 0 1px #000}.theme-colour-picker-hue::-moz-range-thumb{background:0 0;border:2px solid #fff;border-radius:5px;width:9px;height:15px;box-shadow:0 0 0 1px #000}.theme-colour-picker>label{grid-template-columns:38px minmax(0,1fr);align-items:center;margin:10px 10px 8px}.theme-colour-picker input{min-width:0;padding:7px 8px}.theme-colour-picker-rgb{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:0 10px 11px;display:grid}.theme-colour-picker-rgb label{text-align:center;gap:4px}.theme-colour-picker-rgb input{text-align:center;width:100%;padding:7px 4px}.god-theme-preview{border:1px dashed #ff5968;border-radius:8px;gap:8px;padding:11px;display:grid}.god-theme-preview>strong{color:#ff929d;letter-spacing:.08em;text-transform:uppercase;font-size:10px}.god-theme-preview>div{flex-wrap:wrap;gap:8px;display:flex}.theme-display-card{border:1px solid var(--button-card-border,var(--line));background:var(--button-card-background,var(--surface-raised));min-height:100px;color:var(--button-card-text,var(--text));border-radius:9px;flex:190px;gap:5px;padding:12px;display:grid}.theme-display-card small{color:var(--button-card-highlight-border,var(--mint));text-transform:uppercase;font-size:9px;font-weight:800}.theme-display-card span{color:color-mix(in srgb, var(--button-card-text,var(--text)) 68%, transparent);font-size:11px}.theme-display-table{border:1px solid var(--button-table-border,var(--line));background:var(--button-table-background,var(--surface));color:var(--button-table-text,var(--text));border-radius:8px;flex:290px;font-size:10px;display:grid;overflow:hidden}.theme-display-table>div{border-bottom:1px solid var(--button-table-border,var(--line));grid-template-columns:1.3fr 1fr .6fr;gap:6px;padding:8px 9px;display:grid}.theme-display-table>div:first-child{background:var(--button-table-highlight-background,var(--surface-raised));color:var(--button-table-highlight-border,var(--mint));letter-spacing:.06em;text-transform:uppercase;font-size:8px}.theme-display-table>div:last-child{border-bottom:0}.god-theme-preview [data-theme-preview=god]{border-color:var(--button-god-border,#ff5968);background:var(--button-god-background,#681f2c);color:var(--button-god-text,#ffe7e9)}.god-theme-preview [data-theme-preview=god]:hover,.god-theme-preview [data-theme-preview=god]:focus-visible,.god-theme-preview [data-theme-preview=god].is-theme-highlight-preview{border-color:var(--button-god-highlight-border,#ffd2d6);background:var(--button-god-highlight-background,#681f2c);box-shadow:0 0 0 1px var(--button-god-glow,#ff5968), 0 0 14px color-mix(in srgb, var(--button-god-glow,#ff5968) 52%, transparent)}.god-theme-preview [data-theme-preview=standard].is-theme-highlight-preview{border-color:var(--button-standard-highlight-border,#fff);background:var(--button-standard-highlight-background,var(--button-standard-background));color:var(--button-standard-text);box-shadow:0 0 0 1px var(--button-standard-glow,#fff), 0 0 12px color-mix(in srgb, var(--button-standard-glow,#fff) 46%, transparent)}.god-theme-preview [data-theme-preview=primary].is-theme-highlight-preview{border-color:var(--button-primary-highlight-border,#70b7ff)!important;background:var(--button-primary-highlight-background,var(--button-primary-background))!important;color:var(--button-primary-text)!important;box-shadow:0 0 0 1px var(--button-primary-glow,#70b7ff), 0 0 12px color-mix(in srgb, var(--button-primary-glow,#70b7ff) 46%, transparent)!important}.god-theme-preview [data-theme-preview=danger].is-theme-highlight-preview{border-color:var(--button-danger-highlight-border,#ef776b);background:var(--button-danger-highlight-background,var(--button-danger-background));color:var(--button-danger-text);box-shadow:0 0 0 1px var(--button-danger-glow,#ef776b), 0 0 12px color-mix(in srgb, var(--button-danger-glow,#ef776b) 46%, transparent)}.god-theme-preview [data-theme-preview=disabled].is-theme-highlight-preview{opacity:1;border-color:var(--button-disabled-highlight-border,var(--button-disabled-border));background:var(--button-disabled-highlight-background,var(--button-disabled-background));color:var(--button-disabled-text);box-shadow:0 0 0 1px var(--button-disabled-glow,transparent), 0 0 12px color-mix(in srgb, var(--button-disabled-glow,transparent) 46%, transparent)}.god-layout-dialog{width:min(500px,100vw - 28px);max-height:min(720px,100vh - 28px)}.god-layout-dialog form{gap:7px;padding:16px 18px;display:grid}.god-layout-dialog label{grid-template-columns:140px minmax(0,1fr);align-items:center;gap:10px;display:grid}.god-layout-toggles{gap:7px;display:flex}.god-layout-toggles .view-internals-toggle.is-toggled{opacity:.58}.god-layout-json{border:1px dashed var(--lime);background:color-mix(in srgb, var(--surface) 82%, #3f4b17);color:var(--text);border-radius:8px;gap:7px;padding:10px 12px;display:grid}.god-layout-json strong{color:var(--lime);font-size:11px}.god-layout-json pre{max-height:360px;color:var(--aqua);white-space:pre-wrap;margin:0;font:10px/1.35 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:auto}.god-div-editor{border:1px dashed var(--lime);background:color-mix(in srgb, var(--surface) 82%, #3f4b17);border-radius:8px;gap:8px;padding:10px 12px;display:grid}.god-div-editor>strong{color:var(--lime);font-size:11px}.god-div-editor>div{flex-direction:column;align-items:stretch;gap:7px;display:flex}.god-div-editor-row,.god-layout-row{align-items:flex-start;gap:10px;width:100%;min-width:0;display:flex}.god-div-editor-row>.god-div-card{flex:1 1 0}.god-layout-row>.god-layout-div{flex:1 1 0;align-self:flex-start;min-width:max-content}.god-div-card{border:1px solid var(--line);cursor:grab;border-radius:6px;grid-template-columns:82px 1fr;gap:4px 8px;min-width:0;padding:8px;display:grid}.god-div-card:active{cursor:grabbing}.god-div-card.is-selected,.god-layout-div.is-selected{background:color-mix(in srgb, #ff78b5 18%, var(--surface));outline-offset:3px;outline:2px solid #ff78b5}.god-div-card>strong{color:var(--aqua)}.god-div-card>small{color:var(--muted);text-align:right}.god-div-items{flex-wrap:wrap;grid-column:1/-1;gap:5px;display:flex}.god-div-items span{background:var(--surface);color:var(--text);cursor:grab;border-radius:4px;padding:3px 6px;font-size:10px}.god-div-items span:hover{background:color-mix(in srgb, #ff78b5 18%, var(--surface));outline:1px solid #ff78b5}.god-layout-active [data-god-field-key]{outline:1px dashed color-mix(in srgb, var(--lime) 66%, transparent);outline-offset:3px;cursor:grab}.god-layout-active [data-god-field-key]:active{cursor:grabbing}.god-layout-active [data-god-field-key]:hover{background:#ff78b51a;outline-color:#ff78b5}.god-layout-dialog [data-god-layout-apply].is-dirty{--god-button-background:#c62f42;font-weight:800;box-shadow:0 0 14px #ff59685c;background:var(--god-button-background)!important;color:#fff!important;border-color:#ffd2d6!important}.god-layout-dragging [data-god-field-key]{transition:transform .14s,margin .14s,outline-color .14s}.god-layout-dragging [data-god-field-key][draggable=true]{opacity:.55}.god-editable-body{flex-direction:column;align-items:stretch;gap:10px;margin-top:10px;display:flex}.god-layout-div{flex-direction:column;gap:10px;min-width:0;display:flex}.god-layout-spacer{background:color-mix(in srgb, var(--surface) 72%, transparent);border-radius:6px;min-height:30px}.god-layout-active .god-layout-spacer{min-height:30px}.god-show-structure-boundaries .editor-header,.god-show-structure-boundaries .god-editable-body{outline-offset:4px;outline:2px solid #39bfff}.god-show-structure-boundaries .god-layout-div{outline-offset:3px;outline:2px dashed #39bfff}.god-form-context-menu{z-index:2300;border:1px solid var(--lime);background:var(--panel,#0b1b15);border-radius:8px;gap:3px;min-width:190px;padding:5px;display:grid;position:fixed;box-shadow:0 12px 28px #000a}.god-form-context-menu button{color:var(--text);font:inherit;text-align:left;background:0 0;border:0;border-radius:5px;padding:8px 10px;font-size:12px}.god-form-context-menu button:hover,.god-form-context-menu button:focus-visible{outline:0}#relationship-form,#connection-editor-form{grid-auto-flow:row;align-items:start;grid-template-columns:repeat(2,minmax(0,1fr))!important;display:grid!important}#connection-editor-form>label{width:auto;grid-column:auto!important}#relationship-form>.dialog-head,#connection-editor-form>.dialog-head,#relationship-form>.context-summary,#connection-editor-form>.context-summary,#relationship-form>.connection-participants,#connection-editor-form>.connection-participants,#relationship-form>.note,#connection-editor-form>.note,#relationship-form>.error,#connection-editor-form>.error{grid-column:1/-1!important}#relationship-form>.dialog-head,#connection-editor-form>.dialog-head{order:0}#relationship-form>.context-summary,#connection-editor-form>.context-summary{order:1}#connection-editor-form>label.connection-name-field{order:2}#relationship-form>label:has(input[name=name]){order:2}:is(#relationship-form>label:has(input[name=displayName]),#connection-editor-form>label:has(input[name=displayName])){order:3}:is(#relationship-form>label:has(textarea[name=description]),#connection-editor-form>label:has(textarea[name=description])){order:4}#relationship-form>.relationship-meaning-picker,#connection-editor-form>.connection-meaning-picker{order:5}#relationship-form>.relationship-direction-picker,#connection-editor-form>.connection-direction-picker{order:6}#relationship-form>.connection-participants,#connection-editor-form>.connection-participants{order:7}#connection-editor-form>label:has(input[name=aliases]){order:8}#connection-editor-form>label:has(select[name=lifecycle]){order:9}#relationship-form>.note,#connection-editor-form>.error,#relationship-form>.error{order:10}.error{color:#ff9d8d;font-size:12px}dialog .dialog-head .editor-status{color:#ffb4a8;cursor:default;background:#351815;border:1px solid #a94f42;border-left:3px solid #ff9d8d;border-radius:6px;grid-column:1/-1;margin:0 0 12px;padding:8px 10px;line-height:1.35;display:none}dialog .dialog-head:has(.editor-status){grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}dialog .dialog-head .editor-status:not(:empty){display:block}dialog .editor-status-message{border-left:3px solid var(--editor-error-colour,#ff9d8d);color:var(--editor-error-colour,#ffb4a8);padding:3px 0 3px 8px;display:block}dialog [data-editor-error-index="0"]{--editor-error-colour:#ff9d8d}dialog [data-editor-error-index="1"]{--editor-error-colour:#f7cf68}dialog [data-editor-error-index="2"]{--editor-error-colour:#8fd7ff}dialog [data-editor-error-index="3"]{--editor-error-colour:#db9cff}dialog label[data-editor-error-index]>input:not([type=hidden]),dialog label[data-editor-error-index]>textarea,dialog label[data-editor-error-index]>select,dialog [data-editor-error-index].thing-class-picker,dialog [data-editor-error-index].participant{border-color:var(--editor-error-colour);box-shadow:0 0 0 1px var(--editor-error-colour), 0 0 12px color-mix(in srgb, var(--editor-error-colour) 24%, transparent)}.actions{justify-content:flex-end;gap:9px;display:flex}#activity-history{z-index:1002;height:var(--activity-history-height);border-top:1px solid var(--line);background:var(--surface);grid-template-rows:7px minmax(0,1fr);min-height:52px;max-height:45vh;display:grid;position:fixed;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -8px 24px #0006}[data-activity-resize]{cursor:ns-resize;touch-action:none;position:relative}[data-activity-resize]:after{background:var(--line);content:"";height:2px;position:absolute;top:2px;left:0;right:0}[data-activity-resize]:hover:after,[data-activity-resize]:focus-visible:after{background:var(--lime)}#toast{scrollbar-color:var(--line) transparent;scrollbar-width:thin;min-width:0;overflow-y:auto}#toast p{color:#d6e7da;border-bottom:1px solid #213d31;grid-template-columns:155px minmax(0,1fr);gap:10px;min-height:22px;margin:0;padding:3px 14px;font-size:11px;line-height:16px;display:grid}#toast time{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}@media (width<=640px){#toast p{grid-template-columns:minmax(0,1fr);gap:0}#toast time{font-size:9px}}@media (width<=900px){.lens{flex-direction:column;align-items:flex-start;gap:18px}.lens form{width:100%}.lens label{flex:1}.lens input{width:100%}main{height:auto}.work{grid-template-columns:1fr}.work aside{display:none}.canvas{min-height:600px}}@media (width<=600px){header{padding:0 15px}.online{display:none}.lens{padding:18px}.editor-page-head{grid-template-columns:1fr;gap:10px;padding:13px 15px}.editor-toolbar-host .canvas-controls{justify-content:flex-start}.page-navigation span{display:none}.lens form{grid-template-columns:1fr;display:grid}.lens form>span{display:none}.work{grid-template-columns:1fr}.stage-head p{display:none}}.dialog-head>button,.dialog-actions button,.actions button,#universe-map-view .dialog-head button{min-height:var(--button-height);padding:var(--button-padding);border:var(--button-border);border-radius:var(--button-radius);background:var(--button-standard-background,var(--surface-interactive));color:var(--button-standard-text,var(--text));font:inherit;white-space:nowrap;font-size:11px;line-height:17px}dialog.recycle-bin-dialog .dialog-head>button.recycle-bin-close,.thing-view-dialog .view-dialog-close{min-height:29px;padding:5px 8px;font-size:11px;line-height:17px}.dialog-head>button:hover,.dialog-head>button:focus-visible,.dialog-actions button:hover:not(:disabled),.actions button:hover:not(:disabled){border-color:var(--button-standard-highlight-border,var(--text-strong))}button:hover:not(:disabled),button:focus-visible:not(:disabled){border-color:var(--button-standard-highlight-border,#fff);background:var(--button-standard-highlight-background,var(--button-standard-background,var(--surface-interactive)));box-shadow:0 0 0 1px color-mix(in srgb, var(--button-standard-glow,#fff) 78%, transparent), 0 0 12px color-mix(in srgb, var(--button-standard-glow,#fff) 42%, transparent)}.primary:hover:not(:disabled),.primary:focus-visible:not(:disabled),.lens form>button:hover:not(:disabled),.lens form>button:focus-visible:not(:disabled){box-shadow:0 0 0 1px color-mix(in srgb, var(--button-primary-glow,#69bfff) 84%, transparent), 0 0 14px color-mix(in srgb, var(--button-primary-glow,#69bfff) 52%, transparent);border-color:var(--button-primary-highlight-border,#69bfff)!important;background:var(--button-primary-highlight-background,color-mix(in srgb, var(--lime) 76%, white))!important}dialog .dialog-head{grid-template-rows:auto auto auto;grid-template-columns:minmax(0,1fr) max-content;align-items:center;column-gap:9px;padding-top:15px;padding-right:0;display:grid}dialog .dialog-head>div:first-child{display:contents}dialog .dialog-head>div:first-child>em{white-space:nowrap;grid-area:1/1;min-width:0}dialog .dialog-head>div:first-child>h2{white-space:nowrap;grid-area:2/1/auto/-1;min-width:0}dialog .dialog-head .dialog-actions{grid-area:3/1/auto/-1;justify-self:end;margin-left:0}dialog .dialog-head>button.window-close{grid-area:1/2;justify-self:end;position:static}.context-choice-dialog .dialog-head .dialog-actions{grid-area:2/2;place-self:end;width:auto;margin:0}.mapping-review-dialog{width:min(1100px,100vw - 30px)}.mapping-review-dialog>section{gap:14px;padding:22px;display:grid}.mapping-review-surface{min-width:0}.mapping-review-dialog .dialog-head{z-index:20;margin:-22px -22px 0;padding:18px 22px 12px;top:-22px;box-shadow:0 8px 14px #0005}.mapping-review-dialog .mapping-review-board{min-width:0}.alfaai-dialog{width:min(760px,100vw - 30px)}.alfaai-dialog form{gap:14px;padding:22px;display:grid}.alfaai-dialog .dialog-head{z-index:20;margin:-22px -22px 0;padding:18px 22px 12px;top:-22px;box-shadow:0 8px 14px #0005}.alfaai-dialog textarea{resize:vertical;min-height:100px}.alfaai-thinking{border:1px solid var(--aqua);background:color-mix(in srgb, var(--surface-raised) 88%, var(--aqua));color:var(--text-strong);border-radius:8px;grid-template-columns:auto 1fr;align-items:center;gap:8px 10px;padding:12px;display:grid}.alfaai-thinking small{color:var(--muted);grid-column:2}.alfaai-thinking .loader{width:20px;height:20px;margin:0}.alfaai-answer{border:1px solid var(--line);background:var(--input-background);border-radius:8px;gap:8px;padding:14px;display:grid}.alfaai-answer h3,.alfaai-answer p{margin:0}.alfaai-answer p{white-space:pre-wrap;line-height:1.5}.alfaai-model{color:var(--muted);font-size:12px}.alfaai-answer ul{gap:6px;margin:0;padding-left:20px;display:grid}.alfaai-answer li{overflow-wrap:anywhere;color:var(--muted);font-family:var(--font-mono,monospace);font-size:12px}.local-runtime-action{align-items:center;gap:12px;display:flex}.local-runtime-status{color:var(--muted);align-items:center;gap:7px;font-size:13px;display:inline-flex}.local-runtime-status i{border:1px solid color-mix(in srgb, var(--text) 38%, transparent);background:#f8fafc;border-radius:50%;width:11px;height:11px}.local-runtime-status.is-starting i{background:#f7c948;box-shadow:0 0 9px #f7c94899}.local-runtime-status.is-active i{background:#4cd78c;box-shadow:0 0 9px #4cd78c99}.local-runtime-status.is-errored i{background:#ef5b62;box-shadow:0 0 9px #ef5b6299}.database-debug-toggle{border:1px solid var(--line);background:var(--surface-interactive);min-width:32px;color:var(--muted);cursor:pointer;filter:grayscale();opacity:.48;border-radius:7px}.database-debug-toggle.is-active{border-color:var(--lime);color:var(--lime);filter:none;opacity:1;box-shadow:0 0 12px color-mix(in srgb, var(--lime) 55%, transparent)}.database-debug-window{z-index:5000;box-sizing:border-box;resize:both;border:1px solid var(--lime);background:var(--surface-raised);border-radius:10px;flex-direction:column;width:min(520px,100vw - 36px);min-width:320px;max-width:calc(100vw - 16px);height:min(540px,100vh - 24px);min-height:150px;max-height:calc(100vh - 16px);padding:8px;display:flex;position:fixed;top:92px;right:18px;overflow:hidden;box-shadow:0 18px 48px #000c}.database-debug-window[hidden]{display:none}.database-debug-window>header{cursor:move;-webkit-user-select:none;user-select:none;flex:0 0 28px;justify-content:space-between;align-items:center;min-height:28px;display:flex}.database-debug-window>header strong{font-size:13px}.database-debug-window>header button{cursor:pointer}.database-debug-window>p{overflow-wrap:anywhere;flex:none;margin:4px 0;font-size:12px}.database-debug-window pre{white-space:pre-wrap;min-height:0;max-height:none;overflow:auto}.database-explain-window>pre{flex:auto;margin:4px 0 0}.database-explain-window{top:116px;right:min(552px,100vw - 36px)}.database-debug-actions{gap:6px;margin:6px 0;display:flex}.database-debug-actions button,.database-trace>button{width:auto;min-width:0;min-height:0;padding:4px 9px;font-size:12px;line-height:1.1}.database-debug-output{flex:auto;gap:8px;min-height:0;padding-right:2px;display:grid;overflow:auto}.database-trace{border:1px solid var(--line);border-radius:7px;gap:6px;padding:8px;display:grid}.database-trace>button{justify-self:start}.database-trace h4{margin:2px 0 0;font-size:12px}.database-debug-sql{background:var(--input-background);color:var(--text-strong);border-radius:6px;margin:0;padding:8px}.database-trace-fields{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:5px 12px;margin:0;display:grid}.database-trace-field{min-width:0}.database-trace-field dt{color:var(--muted);font-size:11px}.database-trace-field dd{overflow-wrap:anywhere;margin:1px 0 0}
