@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-ext-wght-normal-IYF56FF6.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-wght-normal-JEOLYBOO.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-ext-wght-normal-EOVOK2B5.woff2") format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-wght-normal-IRE366VL.woff2") format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-vietnamese-wght-normal-CE5GGD3W.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-ext-wght-normal-HA22NDSG.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-wght-normal-NRMW37G5.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--collaboration-user-1: var(--annotation-blue);--collaboration-user-1-fill: var(--annotation-blue-fill);--collaboration-user-1-contrast: var(--color-on-collaboration-light);--collaboration-user-2: var(--annotation-green);--collaboration-user-2-fill: var(--annotation-green-fill);--collaboration-user-2-contrast: var(--color-on-collaboration-bright);--collaboration-user-3: var(--annotation-amber);--collaboration-user-3-fill: var(--annotation-amber-fill);--collaboration-user-3-contrast: var(--color-on-collaboration-bright);--collaboration-user-4: var(--annotation-purple);--collaboration-user-4-fill: var(--annotation-purple-fill);--collaboration-user-4-contrast: var(--color-on-collaboration-light);--collaboration-user-5: var(--annotation-accent);--collaboration-user-5-fill: var(--annotation-accent-fill);--collaboration-user-5-contrast: var(--color-on-collaboration-bright);--collaboration-user-6: var(--annotation-red);--collaboration-user-6-fill: var(--annotation-red-fill);--collaboration-user-6-contrast: var(--color-on-collaboration-light);--collaboration-user-7: var(--color-info);--collaboration-user-7-fill: var(--color-info-soft);--collaboration-user-7-contrast: var(--color-on-collaboration-light);--collaboration-user-8: var(--color-star);--collaboration-user-8-fill: var(--color-warning-soft);--collaboration-user-8-contrast: var(--color-on-collaboration-bright);color-scheme:light;--color-background: #f3f6fa;--color-background-accent: #e7f5f2;--color-text: #0f172a;--color-text-secondary: #526174;--color-text-subtle: #334155;--color-inverse: #ffffff;--color-inverse-secondary: #cbd5e1;--color-accent: #105cad;--color-accent-hover: #176bc4;--color-accent-soft: rgba(16, 92, 173, .22);--color-success: #166534;--color-success-soft: #f0fdf4;--color-success-border: #86efac;--color-warning: #854d0e;--color-warning-soft: #fffbeb;--color-warning-border: #facc15;--color-danger: #b91c1c;--color-danger-strong: #991b1b;--color-danger-deep: #7f1d1d;--color-danger-vivid: #dc2626;--color-danger-soft: #fef2f2;--color-danger-border: #fecaca;--color-info: #075985;--color-info-soft: #f0f9ff;--color-info-border: #7dd3fc;--color-on-accent: #ffffff;--color-on-media: #ffffff;--color-on-collaboration-light: #ffffff;--color-on-collaboration-bright: #0f172a;--color-star: #d97706;--surface-base: #ffffff;--surface-elevated: #ffffff;--surface-muted: #f1f5f9;--surface-strong: #e2e8f0;--surface-interactive: #f8fafc;--surface-translucent-fallback: #f8fafc;--surface-translucent: rgba(255, 255, 255, .82);--surface-modal-fallback: #ffffff;--surface-modal: rgba(255, 255, 255, .94);--surface-scrim: rgba(15, 23, 42, .52);--surface-inverse: #0f172a;--surface-auth-start: #020617;--surface-auth-end: #172033;--surface-inverse-muted: rgba(255, 255, 255, .08);--surface-inverse-subtle: rgba(255, 255, 255, .06);--surface-sidebar: #f8fafc;--surface-header: #ffffff;--surface-panel: #ffffff;--surface-inspector-label: #f1f5f9;--surface-hover: #f1f5f9;--surface-selected: rgba(16, 92, 173, .12);--surface-floating-fallback: #ffffff;--surface-floating: rgba(255, 255, 255, .94);--surface-media-control: rgba(255, 255, 255, .92);--surface-viewport-hud-fallback: #f8fafc;--surface-viewport-hud: rgba(255, 255, 255, .75);--surface-viewport-toolbar-fallback: #ffffff;--surface-viewport-toolbar: rgba(255, 255, 255, .8);--surface-viewport-popover-fallback: #ffffff;--surface-viewport-popover: rgba(255, 255, 255, .89);--surface-viewport-control-hover: rgba(226, 232, 240, .62);--surface-on-media: rgba(15, 23, 42, .68);--surface-walkthrough: rgba(8, 22, 28, .84);--surface-walkthrough-action: rgba(15, 118, 110, .32);--surface-walkthrough-entry: rgba(8, 31, 38, .9);--border-solid: #d7e0ea;--border-control: #b8c5d3;--border-translucent: rgba(100, 116, 139, .28);--border-inverse: rgba(255, 255, 255, .16);--border-inverse-strong: rgba(255, 255, 255, .2);--border-media-control: rgba(100, 116, 139, .22);--border-viewport-floating: rgba(100, 116, 139, .24);--border-on-media: rgba(255, 255, 255, .7);--border-walkthrough: rgba(255, 255, 255, .18);--border-walkthrough-action: rgba(94, 234, 212, .35);--border-walkthrough-accent: rgba(45, 212, 191, .45);--border-swatch: rgba(15, 23, 42, .12);--border-swatch-highlight: rgba(255, 255, 255, .25);--focus-color: #105cad;--focus-ring: rgba(16, 92, 173, .32);--focus-danger-ring: rgba(185, 28, 28, .16);--focus-ring-width: 3px;--focus-offset: 2px;--radius-xs: .35rem;--radius-sm: .55rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.25rem;--radius-round: 999px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .08);--shadow-pin: rgba(15, 23, 42, .38);--shadow-md: 0 10px 30px rgba(15, 23, 42, .1);--shadow-lg: 0 24px 60px rgba(15, 23, 42, .18);--shadow-floating: 0 10px 28px rgba(15, 23, 42, .16);--shadow-viewport-hud: 0 2px 8px rgba(15, 23, 42, .12);--shadow-viewport-toolbar: 0 8px 24px rgba(15, 23, 42, .16);--shadow-viewport-popover: 0 14px 36px rgba(15, 23, 42, .18);--viewport-glass-highlight: inset 0 1px 0 rgba(255, 255, 255, .55);--shadow-dialog: 0 20px 60px rgba(15, 23, 42, .28);--shadow-on-media: 0 12px 30px rgba(0, 0, 0, .26);--shadow-reticle: 0 0 0 1px rgba(15, 23, 42, .28), 0 0 12px rgba(255, 255, 255, .5);--shadow-focus: 0 0 0 var(--focus-ring-width) var(--focus-ring);--blur-sm: 8px;--blur-md: 14px;--blur-lg: 22px;--viewport-blur-hud: 12px;--viewport-blur-toolbar: 14px;--viewport-blur-popover: 18px;--viewport-glass-saturation: 125%;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--control-height: 2.5rem;--control-height-compact: 2.25rem;--topbar-height: 4.5rem;--sidebar-width: 15.5rem;--content-max: 92rem;--reading-max: 48rem;--form-max: 34rem;--workspace-sidebar-width: 15.5rem;--workspace-header-height: 3rem;--editor-header-height: 3rem;--editor-rail-width: 3rem;--editor-context-width: 17.5rem;--editor-inspector-width: 20rem;--editor-quickbar-height: 2.75rem;--font-sans: "Inter Variable", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--text-xs: .75rem;--text-sm: .875rem;--text-md: 1rem;--text-lg: 1.18rem;--text-xl: 1.5rem;--text-2xl: clamp(1.65rem, 3vw, 2.35rem);--line-compact: 1.25;--line-body: 1.55;--duration-fast: .12s;--duration-normal: .18s;--duration-slow: .28s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-emphasized: cubic-bezier(.2, 0, 0, 1.2);--annotation-blue: #2563eb;--annotation-blue-fill: rgba(59, 130, 246, .22);--annotation-red: #dc2626;--annotation-red-fill: rgba(220, 38, 38, .22);--annotation-green: #16a34a;--annotation-green-fill: rgba(22, 163, 74, .22);--annotation-amber: #f59e0b;--annotation-amber-fill: rgba(245, 158, 11, .22);--annotation-purple: #9333ea;--annotation-purple-fill: rgba(147, 51, 234, .22);--annotation-ink-fill: rgba(15, 23, 42, .28);--annotation-accent: #14b8a6;--annotation-accent-fill: rgba(20, 184, 166, .2);--scene-editor-background: #dfe5ea;--scene-preview-start: #eff4f3;--scene-preview-end: #e4ebea;--color-walkthrough: #e6f5f5;--color-walkthrough-strong: #ecfeff;--color-walkthrough-muted: #a9c1c4;--color-walkthrough-accent: #5eead4;--app-bg: var(--color-background);--surface: var(--surface-base);--text: var(--color-text);--text-muted: var(--color-text-secondary);--border: var(--border-solid);--ink: var(--surface-inverse);--accent: var(--color-accent);--accent-strong: var(--color-accent-hover);--accent-soft: var(--color-accent-soft);--danger: var(--color-danger);--danger-soft: var(--color-danger-soft);--warning: var(--color-warning);--warning-soft: var(--color-warning-soft);--shadow: var(--shadow-md);font-family:var(--font-sans);font-optical-sizing:auto;color:var(--color-text);background:var(--color-background);font-synthesis:none;text-rendering:optimizeLegibility}:root[data-theme=dark]{color-scheme:dark;--color-background: #2c2c2c;--color-background-accent: #383838;--color-text: #ffffff;--color-text-secondary: #b3b3b3;--color-text-subtle: #e5e5e5;--color-inverse: #ffffff;--color-inverse-secondary: #b3b3b3;--color-accent: #105cad;--color-accent-hover: #176bc4;--color-accent-soft: rgba(16, 92, 173, .22);--color-success: #8ed6aa;--color-success-soft: #173226;--color-success-border: #315f45;--color-warning: #e5c07a;--color-warning-soft: #382d18;--color-warning-border: #69552a;--color-danger: #f87171;--color-danger-strong: #fca5a5;--color-danger-deep: #fecaca;--color-danger-vivid: #dc2626;--color-danger-soft: #3f1719;--color-danger-border: #7f1d1d;--color-info: #8bc9df;--color-info-soft: #172f39;--color-info-border: #355d6c;--color-on-accent: #ffffff;--collaboration-user-7-contrast: var(--color-on-collaboration-bright);--surface-base: #2c2c2c;--surface-elevated: #383838;--surface-muted: #383838;--surface-strong: #444444;--surface-interactive: #383838;--surface-translucent-fallback: #383838;--surface-translucent: rgba(56, 56, 56, .94);--surface-modal-fallback: #383838;--surface-modal: rgba(56, 56, 56, .97);--surface-scrim: rgba(0, 0, 0, .62);--surface-inverse: #1e1e1e;--surface-inverse-muted: rgba(255, 255, 255, .1);--surface-inverse-subtle: rgba(255, 255, 255, .06);--surface-sidebar: #2c2c2c;--surface-header: #2c2c2c;--surface-panel: #2c2c2c;--surface-inspector-label: #383838;--surface-hover: #383838;--surface-selected: rgba(16, 92, 173, .32);--surface-floating-fallback: #383838;--surface-floating: rgba(56, 56, 56, .96);--surface-media-control: rgba(25, 30, 36, .94);--surface-viewport-hud-fallback: #20252b;--surface-viewport-hud: rgba(27, 32, 38, .76);--surface-viewport-toolbar-fallback: #20252b;--surface-viewport-toolbar: rgba(28, 33, 39, .81);--surface-viewport-popover-fallback: #1d2228;--surface-viewport-popover: rgba(29, 34, 40, .9);--surface-viewport-control-hover: rgba(67, 77, 88, .58);--border-solid: #444444;--border-control: #555555;--border-translucent: rgba(255, 255, 255, .12);--border-inverse: rgba(255, 255, 255, .16);--border-inverse-strong: rgba(255, 255, 255, .22);--border-media-control: rgba(255, 255, 255, .14);--border-viewport-floating: rgba(255, 255, 255, .14);--border-swatch: rgba(226, 232, 240, .2);--border-swatch-highlight: rgba(255, 255, 255, .18);--focus-color: #105cad;--focus-ring: rgba(16, 92, 173, .32);--focus-danger-ring: rgba(220, 38, 38, .28);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .28);--shadow-md: 0 12px 32px rgba(0, 0, 0, .34);--shadow-lg: 0 26px 64px rgba(0, 0, 0, .46);--shadow-floating: 0 12px 30px rgba(0, 0, 0, .4);--shadow-viewport-hud: 0 3px 10px rgba(0, 0, 0, .28);--shadow-viewport-toolbar: 0 10px 28px rgba(0, 0, 0, .36);--shadow-viewport-popover: 0 16px 40px rgba(0, 0, 0, .42);--viewport-glass-highlight: inset 0 1px 0 rgba(255, 255, 255, .08);--shadow-dialog: 0 24px 64px rgba(0, 0, 0, .5)}.workspace-inspector{display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border-left:1px solid var(--border);background:var(--surface-base)}.inspector-tabs{display:flex;min-width:0;gap:.15rem;padding:.25rem .4rem 0;border-bottom:1px solid var(--border);background:var(--surface-header)}.inspector-tabs button{position:relative;display:flex;min-width:0;min-height:2.25rem;flex:1;align-items:center;justify-content:center;gap:.35rem;padding:.35rem .5rem;border:0;border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:transparent;color:var(--text-muted);font-size:.7rem;font-weight:600}.inspector-tabs button:hover{background:var(--surface-muted);color:var(--text)}.inspector-tabs button[aria-selected=true]{color:var(--text)}.inspector-tabs button[aria-selected=true]:after{position:absolute;right:.45rem;bottom:-1px;left:.45rem;height:2px;border-radius:var(--radius-round);background:var(--accent);content:""}.inspector-tabs button:focus-visible{z-index:1;outline:2px solid var(--focus-color);outline-offset:-2px}.inspector-count{display:inline-grid;min-width:1.15rem;min-height:1.15rem;place-items:center;padding:0 .3rem;border-radius:var(--radius-round);background:var(--surface-strong);color:var(--text-muted);font-size:.625rem;line-height:1}.inspector-content{min-width:0;min-height:0;overflow:hidden}.inspector-content>*{display:block;height:100%}#editor-context-panel cl-structural-analysis-panel :where(select,textarea,input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=hidden]):not(:where(cl-property-number-field input))){box-sizing:border-box;width:100%;min-width:0;min-height:1.8rem;padding:0 .38rem;border:1px solid transparent;border-radius:var(--radius-sm);background:var(--surface-inspector-label);color:var(--text);font:450 .75rem var(--font-sans);box-shadow:none;transition:border-color var(--duration-fast) var(--ease-standard),background-color var(--duration-fast) var(--ease-standard)}#editor-context-panel cl-structural-analysis-panel :where(select,textarea,input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=hidden]):not(:where(cl-property-number-field input))):hover:not(:disabled):not([readonly]){border-color:color-mix(in srgb,var(--border-control) 55%,var(--text-muted))}#editor-context-panel cl-structural-analysis-panel :where(select,textarea,input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=hidden]):not(:where(cl-property-number-field input))):focus-visible{border-color:var(--accent);outline:2px solid color-mix(in srgb,var(--accent) 28%,transparent);outline-offset:1px}#editor-context-panel cl-structural-analysis-panel :where(select,textarea,input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=hidden]):not(:where(cl-property-number-field input))):disabled{cursor:not-allowed;opacity:.56}#editor-context-panel cl-structural-analysis-panel :where(select,textarea,input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=hidden]):not(:where(cl-property-number-field input)))[readonly]{background:var(--surface-muted);cursor:default}#editor-context-panel cl-structural-analysis-panel :where(select,textarea,input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=hidden]):not(:where(cl-property-number-field input))):is([aria-invalid=true],.ng-invalid.ng-touched),#editor-context-panel cl-structural-analysis-panel :where(select,textarea,input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=hidden]):not(:where(cl-property-number-field input))):is([aria-invalid=true],.ng-invalid.ng-touched):is(:hover,:focus-visible){border-color:var(--color-danger);box-shadow:0 0 0 var(--focus-ring-width) var(--focus-danger-ring)}#editor-context-panel cl-structural-analysis-panel input[type=number]{font-family:var(--font-mono);text-align:right;appearance:textfield;-moz-appearance:textfield}#editor-context-panel cl-structural-analysis-panel input[type=number]::-webkit-inner-spin-button,#editor-context-panel cl-structural-analysis-panel input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}#editor-context-panel cl-structural-analysis-panel textarea{padding:.38rem;line-height:1.45;resize:vertical}#editor-context-panel cl-structural-analysis-panel .record-input{font-family:var(--font-mono)}#editor-context-panel cl-structural-analysis-panel option{background:var(--surface-base);color:var(--text)}#editor-context-panel cl-structural-analysis-panel :is(input[type=checkbox],input[type=radio],input[type=range]){accent-color:var(--accent)}cl-model-construction-properties input:not([type=checkbox]):not([type=radio]),cl-model-construction-properties select,cl-model-construction-properties textarea{border-color:transparent;background:var(--surface-inspector-label);color:var(--text);transition:border-color var(--duration-fast) var(--ease-standard),background-color var(--duration-fast) var(--ease-standard)}cl-model-construction-properties input:not([type=checkbox]):not([type=radio]):hover:not(:disabled),cl-model-construction-properties select:hover:not(:disabled),cl-model-construction-properties textarea:hover:not(:disabled){border-color:color-mix(in srgb,var(--border-control) 55%,var(--text-muted))}cl-model-construction-properties input:not([type=checkbox]):not([type=radio]):focus-visible,cl-model-construction-properties select:focus-visible,cl-model-construction-properties textarea:focus-visible{border-color:var(--accent);outline:2px solid color-mix(in srgb,var(--accent) 28%,transparent);outline-offset:1px}cl-model-construction-properties option{background:var(--surface-base);color:var(--text)}cl-model-comments-panel .connection-state,cl-model-comments-panel .location-warning{display:flex;align-items:flex-start;gap:.4rem;margin:.55rem .65rem 0;padding:.45rem .5rem;border:1px solid var(--color-warning-border);border-radius:var(--radius-sm);background:var(--color-warning-soft);color:var(--color-warning);font-size:.6875rem;line-height:1.4}cl-model-comments-panel .location-warning{margin:.25rem 0}cl-model-comments-panel .filter-popover,cl-model-comments-panel .comment-actions-menu{position:fixed;z-index:1200;width:min(14.25rem,100vw - 1rem);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-base);color:var(--text);box-shadow:var(--shadow-md)}cl-model-comments-panel .filter-popover{display:grid;gap:.65rem;padding:.65rem}cl-model-comments-panel .filter-popover fieldset{display:grid;grid-template-columns:repeat(3,1fr);gap:.25rem;margin:0;padding:0;border:0}cl-model-comments-panel .filter-popover legend,cl-model-comments-panel .author-filter>span{margin-bottom:.35rem;color:var(--text-muted);font-size:.6875rem;font-weight:650}cl-model-comments-panel .filter-popover fieldset label{position:relative}cl-model-comments-panel .filter-popover fieldset input{position:absolute;opacity:0;pointer-events:none}cl-model-comments-panel .filter-popover fieldset span{display:grid;min-height:2rem;place-items:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font-size:.6875rem;cursor:pointer}cl-model-comments-panel .filter-popover fieldset label:hover span{background:var(--surface-muted);color:var(--text)}cl-model-comments-panel .filter-popover fieldset input:checked+span{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}cl-model-comments-panel .filter-popover fieldset input:focus-visible+span{outline:2px solid var(--focus-color);outline-offset:1px}cl-model-comments-panel .author-filter{display:grid}cl-model-comments-panel .author-filter select{width:100%;min-height:2.25rem;padding:0 .5rem;border:1px solid transparent;border-radius:var(--radius-sm);background:var(--surface-inspector-label);color:var(--text);font-size:.7rem;transition:border-color var(--duration-fast) var(--ease-standard),background-color var(--duration-fast) var(--ease-standard)}cl-model-comments-panel .author-filter select:hover{border-color:color-mix(in srgb,var(--border-control) 55%,var(--text-muted))}cl-model-comments-panel .author-filter select:focus-visible{border-color:var(--accent);outline:2px solid color-mix(in srgb,var(--accent) 28%,transparent);outline-offset:1px}cl-model-comments-panel .author-filter select option{background:var(--surface-base);color:var(--text)}cl-model-comments-panel .reset-filter{min-height:2rem;background:transparent;color:var(--text-muted);font-size:.6875rem}cl-model-comments-panel .comment-actions-menu{display:grid;gap:.08rem;padding:.3rem}cl-model-comments-panel .comment-actions-menu button{display:flex;min-height:2.15rem;align-items:center;gap:.48rem;padding:.38rem .5rem;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text);text-align:left;font-size:.6875rem;cursor:pointer}cl-model-comments-panel .comment-actions-menu button:hover,cl-model-comments-panel .comment-actions-menu button:focus-visible{outline:none;background:var(--surface-muted)}cl-model-comments-panel .comment-actions-menu button.danger{color:var(--danger)}cl-model-comments-panel .comment-actions-menu button.danger:hover,cl-model-comments-panel .comment-actions-menu button.danger:focus-visible{background:var(--surface-muted)}cl-model-comments-panel .menu-separator{height:1px;margin:.15rem .35rem;background:var(--border)}cl-model-comments-panel .dialog-backdrop{position:fixed;z-index:1300;inset:0;display:grid;place-items:center;padding:1rem;background:var(--surface-scrim)}cl-model-comments-panel .delete-dialog{display:grid;width:min(26rem,100%);gap:.65rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-elevated);box-shadow:var(--shadow-dialog)}cl-model-comments-panel .delete-dialog h2,cl-model-comments-panel .delete-dialog p{margin:0}cl-model-comments-panel .delete-dialog h2{font-size:1rem}cl-model-comments-panel .delete-dialog p{color:var(--text-muted);font-size:.75rem;line-height:1.5}cl-model-comments-panel .danger-primary{min-height:2rem;padding:0 .65rem;border:1px solid var(--color-danger);border-radius:var(--radius-sm);background:var(--color-danger);color:var(--color-on-accent);font-size:.6875rem;font-weight:700;cursor:pointer}cl-model-comments-panel .danger-primary:hover:not(:disabled){border-color:var(--color-danger-strong);background:var(--color-danger-strong)}*{box-sizing:border-box}html{min-width:320px;background:var(--app-bg)}body{min-width:320px;min-height:100vh;margin:0;color:var(--text);background:var(--app-bg)}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:var(--focus-ring-width) solid var(--focus-color);outline-offset:var(--focus-offset)}:where(input,select,textarea)[aria-invalid=true],:where(input,select,textarea).ng-invalid.ng-touched{border-color:var(--color-danger);box-shadow:0 0 0 var(--focus-ring-width) var(--focus-danger-ring)}#editor-context-panel :where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):not([type=hidden]),select,textarea){min-width:0;border:unset;background:transparent;color:var(--text)}#editor-context-panel:has(cl-project-site-editor .dialog-backdrop){z-index:1000}#editor-context-panel :where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):not([type=hidden]),select,textarea):hover:not(:disabled){border-color:var(--border-control)}#editor-context-panel :where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):not([type=hidden]),select,textarea):focus-visible{border-color:var(--accent)}#editor-context-panel :where(input,select,textarea)[aria-invalid=true],#editor-context-panel :where(input,select,textarea).ng-invalid.ng-touched{border-color:var(--color-danger)}img{max-width:100%}h1,h2,h3,p{overflow-wrap:anywhere}a{color:inherit}.brand-lens{color:var(--accent)}.page{width:min(100%,var(--content-max));margin:0 auto}.workspace-page{width:100%;min-width:0;--workspace-page-gutter: clamp(var(--space-5), 3vw, var(--space-8))}.workspace-page-header{display:flex;height:var(--editor-header-height);min-height:var(--editor-header-height);align-items:center;justify-content:space-between;gap:var(--space-4);margin:calc(0rem - var(--workspace-page-gutter)) calc(0rem - var(--workspace-page-gutter)) var(--space-4);padding:0 var(--space-8);border-bottom:1px solid var(--border);background:var(--surface-sidebar)}.workspace-page-title{min-width:0;margin:0;color:var(--text);font-size:.8125rem;font-weight:720;line-height:1}.workspace-page-header-actions{display:flex;min-width:0;flex:0 1 auto;align-items:center;justify-content:flex-end;gap:var(--space-2);margin-left:auto}.workspace-action-feedback{margin:0 0 var(--space-4);color:var(--color-danger);font-size:.6875rem;font-weight:500;line-height:1.45}.workspace-action-feedback.is-notice{color:var(--color-success)}@media(max-width:800px){.workspace-page{--workspace-page-gutter: var(--space-5)}}@media(max-width:600px){.workspace-page-header{gap:var(--space-2);padding:0 var(--space-3)}}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.35rem}.page-header h1{margin:0;font-size:var(--text-2xl);letter-spacing:-.045em}.page-header p{max-width:var(--reading-max);margin:.45rem 0 0;color:var(--text-muted);line-height:var(--line-body)}.page-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.6rem}.eyebrow{margin:0;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.muted{color:var(--text-muted)}.surface-card,.card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-elevated);box-shadow:var(--shadow-sm)}.surface-interactive{background:var(--surface-interactive);transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.glass-panel{border-color:var(--border-solid);background:var(--surface-translucent-fallback)}@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){.glass-panel{border-color:var(--border-translucent);background:var(--surface-translucent);-webkit-backdrop-filter:blur(var(--blur-md)) saturate(120%);backdrop-filter:blur(var(--blur-md)) saturate(120%)}.glass-panel.modal,.glass-panel.drawer{background:var(--surface-modal);-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(125%);backdrop-filter:blur(var(--blur-lg)) saturate(125%)}}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.15rem 1.2rem;border-bottom:1px solid var(--border)}.card-header h2,.card-header h3{margin:0;letter-spacing:-.025em}.card-header p{margin:.3rem 0 0;color:var(--text-muted);font-size:.85rem}.card-body{padding:1.2rem}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.stat-card{padding:1.2rem}.stat-card span{color:var(--text-muted);font-size:.8rem;font-weight:700;text-transform:uppercase}.stat-card strong{display:block;margin-top:.55rem;font-size:2rem;letter-spacing:-.05em}.button{display:inline-flex;min-height:var(--control-height);align-items:center;justify-content:center;gap:.45rem;padding:.58rem .95rem;border:1px solid transparent;border-radius:var(--radius-md);text-decoration:none;font-size:.86rem;font-weight:720;transition:transform var(--duration-fast) var(--ease-standard),background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.55}.button-primary{border-color:var(--accent);background:var(--accent);color:var(--color-on-accent)}.button-primary:hover:not(:disabled){border-color:var(--accent-strong);background:var(--accent-strong)}.button-secondary{border-color:var(--border);background:var(--surface-base);color:var(--text)}.button-secondary:hover:not(:disabled),.button-ghost:hover:not(:disabled){background:var(--surface-muted)}.button-destructive,.button-danger{border-color:var(--color-danger-border);background:var(--surface-base);color:var(--danger)}.button-destructive:hover:not(:disabled),.button-danger:hover:not(:disabled){border-color:var(--color-danger);background:var(--color-danger-soft)}.button-ghost{border-color:transparent;background:transparent;color:var(--text-muted)}.button-small{min-height:var(--control-height);padding:.35rem .65rem;font-size:.77rem}.button-block{width:100%}.icon-button{display:inline-flex;width:var(--control-height);min-width:var(--control-height-compact);min-height:var(--control-height-compact);align-items:center;justify-content:center;border:0;border-radius:var(--radius-md);background:transparent;color:var(--text)}.field{display:grid;gap:.38rem}.field>span{color:var(--color-text-subtle);font-size:.8rem;font-weight:720}.field small{color:var(--text-muted);font-size:.72rem}.field input,.field select,.field textarea{width:100%;min-height:var(--control-height);padding:.65rem .75rem;border:1px solid var(--border-control);border-radius:var(--radius-md);outline:none;background:var(--surface-base);color:var(--text);transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.field textarea{min-height:7rem;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.field input:disabled,.field select:disabled,.field textarea:disabled{background:var(--surface-muted);color:var(--text-muted)}.field-checkbox{display:flex;min-height:var(--control-height);align-items:center;gap:.6rem}.field-checkbox input{width:1.2rem;height:1.2rem;accent-color:var(--color-accent)}.field-error{color:var(--color-danger-strong);font-size:var(--text-xs);font-weight:650}.radio-card{position:relative;display:grid;min-height:var(--control-height);gap:var(--space-1);padding:var(--space-3);border:1px solid var(--border-control);border-radius:var(--radius-md);background:var(--surface-base);cursor:pointer}.radio-card:has(input:checked){border-color:var(--color-accent);background:var(--color-accent-soft)}.radio-card:has(input:focus-visible){outline:var(--focus-ring-width) solid var(--focus-color);outline-offset:var(--focus-offset)}.radio-card input{position:absolute;top:var(--space-3);right:var(--space-3);accent-color:var(--color-accent)}.form-grid{display:grid;gap:1rem}.form-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.65rem;margin-top:1rem}.alert{padding:.8rem .9rem;border:1px solid var(--border);border-radius:var(--radius-md);font-size:.84rem;line-height:1.45}.alert-error{border-color:var(--color-danger-border);background:var(--danger-soft);color:var(--color-danger-strong)}.alert-warning{border-color:var(--color-warning-border);background:var(--warning-soft);color:var(--color-warning)}.alert-info{border-color:var(--color-info-border);background:var(--color-info-soft);color:var(--color-info)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.84rem}th,td{padding:.8rem .9rem;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}th{background:var(--surface-muted);color:var(--color-text-secondary);font-size:.72rem;letter-spacing:.035em;text-transform:uppercase}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--surface-interactive)}.empty-state{display:grid;min-height:15rem;place-items:center;padding:2rem;text-align:center}.empty-state h3{margin:0 0 .45rem}.empty-state p{max-width:30rem;margin:0 auto 1rem;color:var(--text-muted);line-height:1.5}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface-strong) 25%,var(--surface-muted) 50%,var(--surface-strong) 75%);background-size:200% 100%;animation:shimmer 1.4s var(--ease-standard) infinite}.code-panel{max-height:34rem;overflow:auto;padding:1rem;border:1px solid var(--color-text-subtle);border-radius:var(--radius-md);background:var(--surface-inverse);color:var(--surface-strong);font-family:var(--font-mono);font-size:.76rem;line-height:1.55;white-space:pre-wrap}.section-stack{display:grid;gap:1rem}.split-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(19rem,.34fr);gap:1rem;align-items:start}.pill-list{display:flex;flex-wrap:wrap;gap:.45rem}.pill{display:inline-flex;padding:.28rem .55rem;border-radius:var(--radius-round);background:var(--surface-muted);color:var(--color-text-secondary);font-size:.75rem;font-weight:650}.badge,.chip{display:inline-flex;min-height:1rem;align-items:center;gap:var(--space-1);padding:.2rem .6rem;border:1px solid var(--border-solid);border-radius:var(--radius-round);background:var(--surface-muted);color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:750}.badge-success,.chip-success{border-color:var(--color-success-border);background:var(--color-success-soft);color:var(--color-success)}.badge-warning,.chip-warning{border-color:var(--color-warning-border);background:var(--color-warning-soft);color:var(--color-warning)}.badge-danger,.chip-danger{border-color:var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger-strong)}.badge-info,.chip-info{border-color:var(--color-info-border);background:var(--color-info-soft);color:var(--color-info)}.surface-scrim{position:fixed;z-index:80;inset:0;background:var(--surface-scrim)}.modal,.drawer,.toast,.tooltip{border:1px solid var(--border-solid);background:var(--surface-modal-fallback);box-shadow:var(--shadow-lg)}.measurement-dialog{position:fixed;z-index:81;top:50%;left:50%;width:min(100% - 2rem,50rem);padding:0;overflow:hidden;transform:translate(-50%,-50%)}.measurement-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-5);border-bottom:1px solid var(--border)}.measurement-dialog h2{margin:0;font-size:var(--text-lg)}.measurement-dialog header p{margin:.35rem 0 0;color:var(--text-muted);font-size:var(--text-sm)}.measurement-dialog form{display:grid;gap:var(--space-4);padding:var(--space-5)}.measurement-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.measurement-dialog footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border)}.floating-error{position:fixed;z-index:90;right:var(--space-5);bottom:var(--space-5);display:flex;width:min(28rem,100% - 2rem);align-items:flex-start;gap:var(--space-2);padding:.8rem;border:1px solid var(--color-danger-border);border-radius:var(--radius-md);background:var(--surface-modal-fallback);color:var(--danger);box-shadow:var(--shadow-lg);font-size:var(--text-xs)}.floating-error span{flex:1;line-height:1.45}.floating-error button{display:inline-flex;padding:0;border:0;background:transparent;color:inherit}.editor-loading,.editor-error{display:grid;min-height:28rem;place-items:center;align-content:center;gap:var(--space-3);color:var(--text-muted)}.spinner{width:1.8rem;height:1.8rem;border:2px solid var(--surface-strong);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes progress{0%{transform:translate(-110%)}to{transform:translate(395%)}}@media(max-width:640px){.measurement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.measurement-dialog{width:calc(100% - 1rem)}}.modal{width:min(100% - 2rem,36rem);max-height:calc(100dvh - 2rem);overflow:auto;padding:var(--space-6);border-radius:var(--radius-xl)}.drawer{width:min(100%,28rem);height:100dvh;padding:var(--space-6)}.toast{width:min(100% - 2rem,24rem);padding:var(--space-4);border-radius:var(--radius-md)}.tooltip{width:max-content;max-width:18rem;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-inverse);color:var(--color-inverse);font-size:var(--text-xs);line-height:var(--line-body)}@media(prefers-reduced-transparency:reduce){.glass-panel{background:var(--surface-translucent-fallback);-webkit-backdrop-filter:none;backdrop-filter:none}}[data-reduce-effects=true] .glass-panel{background:var(--surface-translucent-fallback);-webkit-backdrop-filter:none;backdrop-filter:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.button:hover:not(:disabled){transform:none}}@media(max-width:900px){@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){.glass-panel{-webkit-backdrop-filter:blur(var(--blur-sm));backdrop-filter:blur(var(--blur-sm))}}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:900px){.card-grid,.form-grid-three{grid-template-columns:1fr 1fr}.split-layout{grid-template-columns:1fr}}@media(max-width:640px){.page-header{display:grid}.page-actions{justify-content:flex-start}.card-grid,.form-grid-two,.form-grid-three{grid-template-columns:1fr}th,td{padding:.7rem}.hide-mobile{display:none}}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.plans-shell .drawing-toolbar.floating{position:absolute;z-index:15;top:50%;left:.65rem;display:grid;gap:.2rem;padding:.25rem;border:1px solid var(--border-control);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-elevated) 92%,transparent);box-shadow:var(--shadow-md);transform:translateY(-50%)}.plans-shell .drawing-toolbar button{display:grid;width:2rem;height:2rem;place-items:center;padding:0;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted)}.plans-shell .drawing-toolbar button:hover:not(:disabled),.plans-shell .drawing-toolbar button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.plans-shell .drawing-toolbar button>span{font-weight:750}.plans-shell .stale-edit-notice{position:absolute;z-index:12;top:.55rem;left:50%;padding:.3rem .55rem;border:1px solid color-mix(in srgb,var(--warning) 55%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--surface-elevated) 92%,transparent);color:var(--warning);font-size:.6rem;transform:translate(-50%)}.plans-shell .preview-stage{position:relative;display:inline-block;max-width:88%;max-height:88%;transform-origin:center;background:#fff;box-shadow:0 1.2rem 3rem #00000059;transition:transform 80ms linear}.plans-shell .preview-stage img{display:block;width:auto;max-width:100%;max-height:calc(100dvh - 8rem);-webkit-user-select:none;user-select:none;pointer-events:none}.plans-shell .drawing-interaction-overlay{position:absolute;z-index:2;inset:0;width:100%;height:100%;overflow:visible;touch-action:none}.plans-shell .manual-annotation{cursor:move}.plans-shell .manual-annotation polyline,.plans-shell .tool-preview{fill:none;stroke:var(--accent);stroke-width:.6;vector-effect:non-scaling-stroke}.plans-shell .manual-annotation:not(.live):not(.selected) polyline{stroke:transparent;stroke-width:10}.plans-shell .manual-annotation text{fill:var(--accent);font-size:3px;paint-order:stroke;stroke:#fff;stroke-width:.8}.plans-shell .annotation-hit{fill:transparent;stroke:transparent;stroke-width:8;vector-effect:non-scaling-stroke}.plans-shell .manual-annotation.selected .annotation-hit{fill:#fff;stroke:var(--accent);stroke-width:1}.plans-shell .cross-reference-marker{cursor:pointer;color:var(--accent)}.plans-shell .cross-reference-marker circle{fill:#fff;stroke:currentColor;stroke-width:.7}.plans-shell .cross-reference-marker text{fill:currentColor;font-size:3px}.plans-shell .dimension-preview text{fill:var(--accent);font-size:3px;paint-order:stroke;stroke:#fff;stroke-width:.7}.plans-shell .callout-preview{fill:color-mix(in srgb,var(--accent) 8%,transparent);stroke-dasharray:3 2}.plans-shell .snap-indicator{fill:none;stroke:#00d7ff;stroke-width:1;vector-effect:non-scaling-stroke}.plans-shell .crop-shade{fill:#0a0f166b;fill-rule:evenodd;pointer-events:none}.plans-shell .crop-outline{fill:none;stroke:var(--accent);stroke-width:1;vector-effect:non-scaling-stroke;pointer-events:none}.plans-shell .crop-handle{fill:#fff;stroke:var(--accent);stroke-width:1;vector-effect:non-scaling-stroke;cursor:move}.plans-shell .inline-annotation-editor{position:fixed;z-index:1500;display:flex;gap:.25rem;padding:.3rem;border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--surface-elevated);box-shadow:var(--shadow-md);transform:translate(.5rem,.5rem)}.plans-shell .inline-annotation-editor input{min-width:13rem;padding:.35rem;border:1px solid var(--border-control);background:var(--surface-base);color:var(--text)}.plans-shell .inline-annotation-editor button,.plans-shell .crop-actions button,.plans-shell .callout-popover button,.plans-shell .view-issues{min-height:1.8rem;padding:0 .5rem;border:1px solid var(--border-control);border-radius:var(--radius-sm);background:var(--surface-base);color:var(--text);font-size:.62rem}.plans-shell .callout-popover{position:absolute;z-index:16;bottom:1rem;left:50%;display:grid;min-width:14rem;gap:.5rem;padding:.7rem;border:1px solid var(--border-control);border-radius:var(--radius-sm);background:var(--surface-elevated);box-shadow:var(--shadow-md);transform:translate(-50%)}.plans-shell .callout-popover label{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--text-muted);font-size:.62rem}.plans-shell .callout-popover>div,.plans-shell .crop-actions{display:flex;justify-content:flex-end;gap:.35rem}.plans-shell .crop-actions{position:absolute;z-index:16;right:1rem;bottom:1rem;padding:.35rem;border:1px solid var(--border-control);border-radius:var(--radius-sm);background:var(--surface-elevated);box-shadow:var(--shadow-md)}
