:root{--bg: #f5f6f8;--surface: #ffffff;--surface-soft: #f8f9fb;--panel-bg: #fbfcfd;--toolbar-bg: #f7f9fb;--control-bg: #ffffff;--text: #252a31;--text-soft: #4b5563;--text-subtle: #6c737c;--muted: #6b7280;--line: #d9dfe7;--row-line: #e4e8ee;--hover-border: #b8c7dd;--blue: #1e88e5;--blue-strong: #0b72d9;--blue-border: #b9d9f7;--blue-soft-hover: #f3f8ff;--blue-soft: #eaf4ff;--teal: #12867d;--green: #16a34a;--amber: #bf7400;--red: #c9362c;--violet: #6b5dd3;--danger-bg: #fff5f4;--danger-border: #f1b7b2;--warning-bg: #fff8eb;--warning-border: #f2d196;--warning-text: #8a5300;--success-bg: #f2fbf5;--success-border: #bfe2ca;--success-text: #16713a;--disabled-bg: #f7f8fa;--disabled-line: #e1e5eb;--disabled-text: #6b7280;--auth-veil: rgba(255, 255, 255, .84);--grid-line: #edf1f5;--editor-grid-line: #f0f2f5;--canvas-bg: #ffffff;--canvas-soft-bg: #fbfcfe;--diagram-plane: rgba(255, 255, 255, .72);--diagram-plane-strong: rgba(255, 255, 255, .84);--diagram-plane-stroke: #d5dde7;--diagram-node: #0f76cf;--diagram-node-stroke: #095fa9;--diagram-actor: #111827;--diagram-external: #78909c;--diagram-external-stroke: #607d8b;--diagram-line: #596575;--diagram-label: #2f3944;--diagram-label-stroke: #ffffff;--diagram-text: #ffffff;--diagram-meta-text: rgba(255, 255, 255, .9);--node-glyph: rgba(255, 255, 255, .86);--selected-stroke: #ffb020;--matched-stroke: #22c55e;--connect-stroke: #8b5cf6;--code-bg: #0f172a;--code-text: #e5edf7;--overlay: rgba(15, 23, 42, .32);--drawer-overlay: rgba(15, 23, 42, .18);--slate-action: #607d8b;--shadow: 0 12px 32px rgba(22, 34, 51, .14);color-scheme:light;font-family:Segoe UI,Roboto,Arial,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--text);background:var(--bg)}:root[data-theme=saga-green]{--bg: #edf7f0;--surface: #fbfffc;--surface-soft: #f2fbf5;--panel-bg: #e9f5ed;--toolbar-bg: #e2f1e8;--control-bg: #fbfffc;--text: #203129;--text-soft: #405348;--text-subtle: #66756b;--muted: #69786f;--line: #cddfd4;--row-line: #d8e8dd;--hover-border: #97c7aa;--blue: #168a52;--blue-strong: #0f7041;--blue-border: #b7dfc8;--blue-soft-hover: #f1faf5;--blue-soft: #e9f7ef;--teal: #0f766e;--green: #168a52;--amber: #ad6b00;--violet: #5366c8;--grid-line: #dbece1;--editor-grid-line: #dfeee4;--canvas-bg: #f4fbf6;--canvas-soft-bg: #f0f8f3;--diagram-plane: rgba(251, 255, 252, .74);--diagram-plane-strong: rgba(251, 255, 252, .88);--diagram-plane-stroke: #c5d9cc;--slate-action: #547468}:root[data-theme=ocean-mist]{--bg: #dfeff2;--surface: #f3fafb;--surface-soft: #e7f4f6;--panel-bg: #d8ecef;--toolbar-bg: #d1e7eb;--control-bg: #f8fefe;--text: #1e3238;--text-soft: #405861;--text-subtle: #647b83;--muted: #687f87;--line: #bfd7dd;--row-line: #cbe2e7;--hover-border: #7cbac4;--blue: #0f8d91;--blue-strong: #0a6870;--blue-border: #8bcdd3;--blue-soft-hover: #d3eef2;--blue-soft: #c4e8ed;--teal: #0f766e;--green: #14875f;--amber: #a76708;--violet: #5764cb;--grid-line: #c9e1e6;--editor-grid-line: #cee5e9;--canvas-bg: #eaf6f8;--canvas-soft-bg: #e1f1f4;--diagram-plane: rgba(243, 250, 251, .76);--diagram-plane-strong: rgba(243, 250, 251, .9);--diagram-plane-stroke: #b3cfd6;--diagram-node: #0f7f9b;--diagram-node-stroke: #0a6479;--diagram-external: #6b8790;--diagram-external-stroke: #4f6f79;--diagram-line: #526c75;--diagram-label: #203840;--slate-action: #5b7e87}:root[data-theme=saga-orange]{--bg: #2f241b;--surface: #3a2c21;--surface-soft: #463629;--panel-bg: #34271e;--toolbar-bg: #3b2d22;--control-bg: #281e17;--text: #fff7ed;--text-soft: #f3d7bd;--text-subtle: #d7b99d;--muted: #c7aa8f;--line: #5a4534;--row-line: #4e3b2e;--hover-border: #b77941;--blue: #f59e0b;--blue-strong: #facc15;--blue-border: #9f6b2c;--blue-soft-hover: rgba(245, 158, 11, .15);--blue-soft: rgba(245, 158, 11, .22);--teal: #2dd4bf;--green: #86efac;--amber: #f59e0b;--red: #fb7185;--violet: #c4b5fd;--danger-bg: rgba(251, 113, 133, .13);--danger-border: rgba(251, 113, 133, .36);--warning-bg: rgba(245, 158, 11, .18);--warning-border: rgba(245, 158, 11, .44);--warning-text: #fbbf24;--success-bg: rgba(134, 239, 172, .13);--success-border: rgba(134, 239, 172, .34);--success-text: #bbf7d0;--disabled-bg: #3b3027;--disabled-line: #5a4534;--disabled-text: #b69a81;--auth-veil: rgba(47, 36, 27, .78);--grid-line: rgba(251, 191, 36, .1);--editor-grid-line: rgba(251, 191, 36, .08);--canvas-bg: #271e18;--canvas-soft-bg: #30241c;--diagram-plane: rgba(39, 30, 24, .72);--diagram-plane-strong: rgba(39, 30, 24, .86);--diagram-plane-stroke: #5a4534;--diagram-node: #b45309;--diagram-node-stroke: #fbbf24;--diagram-actor: #ffedd5;--diagram-external: #73513d;--diagram-external-stroke: #d6a26b;--diagram-line: #d6a26b;--diagram-label: #ffedd5;--diagram-label-stroke: #271e18;--diagram-text: #fff7ed;--diagram-meta-text: rgba(255, 247, 237, .9);--node-glyph: rgba(255, 247, 237, .86);--selected-stroke: #fcd34d;--matched-stroke: #86efac;--connect-stroke: #c4b5fd;--code-bg: #1c1612;--code-text: #ffedd5;--overlay: rgba(28, 22, 18, .7);--drawer-overlay: rgba(28, 22, 18, .46);--slate-action: #604736;--shadow: 0 18px 42px rgba(0, 0, 0, .36);color-scheme:dark}:root[data-theme=saga-purple]{--bg: #21182f;--surface: #2c213f;--surface-soft: #372a4d;--panel-bg: #261c36;--toolbar-bg: #2d2141;--control-bg: #1d152a;--text: #f8f3ff;--text-soft: #ddd0f4;--text-subtle: #bba9d8;--muted: #ad9fc2;--line: #4c3b67;--row-line: #423356;--hover-border: #7c62ac;--blue: #a78bfa;--blue-strong: #ddd6fe;--blue-border: #755ca8;--blue-soft-hover: rgba(167, 139, 250, .14);--blue-soft: rgba(167, 139, 250, .22);--teal: #5eead4;--green: #86efac;--amber: #fbbf24;--red: #fb7185;--violet: #c4b5fd;--danger-bg: rgba(251, 113, 133, .13);--danger-border: rgba(251, 113, 133, .36);--warning-bg: rgba(251, 191, 36, .15);--warning-border: rgba(251, 191, 36, .4);--warning-text: #fde68a;--success-bg: rgba(134, 239, 172, .13);--success-border: rgba(134, 239, 172, .34);--success-text: #bbf7d0;--disabled-bg: #312640;--disabled-line: #4c3b67;--disabled-text: #a696bb;--auth-veil: rgba(33, 24, 47, .78);--grid-line: rgba(196, 181, 253, .1);--editor-grid-line: rgba(196, 181, 253, .08);--canvas-bg: #1d152a;--canvas-soft-bg: #241a33;--diagram-plane: rgba(29, 21, 42, .72);--diagram-plane-strong: rgba(29, 21, 42, .86);--diagram-plane-stroke: #4c3b67;--diagram-node: #6d28d9;--diagram-node-stroke: #c4b5fd;--diagram-actor: #f5f3ff;--diagram-external: #5c4a78;--diagram-external-stroke: #bba9d8;--diagram-line: #bba9d8;--diagram-label: #f5f3ff;--diagram-label-stroke: #1d152a;--diagram-text: #faf5ff;--diagram-meta-text: rgba(250, 245, 255, .9);--node-glyph: rgba(250, 245, 255, .86);--selected-stroke: #fbbf24;--matched-stroke: #86efac;--connect-stroke: #f0abfc;--code-bg: #140f1f;--code-text: #f5f3ff;--overlay: rgba(20, 15, 31, .72);--drawer-overlay: rgba(20, 15, 31, .48);--slate-action: #47365f;--shadow: 0 18px 44px rgba(0, 0, 0, .42);color-scheme:dark}:root[data-theme=vela-blue]{--bg: #0f172a;--surface: #172033;--surface-soft: #202b40;--panel-bg: #111a2b;--toolbar-bg: #152033;--control-bg: #101827;--text: #edf4ff;--text-soft: #cbd7e8;--text-subtle: #a9b5c7;--muted: #99a7ba;--line: #334155;--row-line: #29364a;--hover-border: #4c6d9b;--blue: #3b82f6;--blue-strong: #93c5fd;--blue-border: #4169aa;--blue-soft-hover: rgba(59, 130, 246, .16);--blue-soft: rgba(59, 130, 246, .24);--teal: #2dd4bf;--green: #22c55e;--amber: #f59e0b;--red: #f87171;--violet: #a78bfa;--danger-bg: rgba(248, 113, 113, .14);--danger-border: rgba(248, 113, 113, .38);--warning-bg: rgba(245, 158, 11, .16);--warning-border: rgba(245, 158, 11, .42);--warning-text: #fbbf24;--success-bg: rgba(34, 197, 94, .14);--success-border: rgba(34, 197, 94, .38);--success-text: #86efac;--disabled-bg: #1b2536;--disabled-line: #334155;--disabled-text: #8b98aa;--auth-veil: rgba(15, 23, 42, .78);--grid-line: rgba(148, 163, 184, .13);--editor-grid-line: rgba(148, 163, 184, .11);--canvas-bg: #101827;--canvas-soft-bg: #111a2b;--diagram-plane: rgba(15, 23, 42, .68);--diagram-plane-strong: rgba(15, 23, 42, .82);--diagram-plane-stroke: #334155;--diagram-node: #1d4ed8;--diagram-node-stroke: #60a5fa;--diagram-actor: #e5edf7;--diagram-external: #475569;--diagram-external-stroke: #94a3b8;--diagram-line: #94a3b8;--diagram-label: #dbeafe;--diagram-label-stroke: #101827;--diagram-text: #eff6ff;--diagram-meta-text: rgba(239, 246, 255, .9);--node-glyph: rgba(239, 246, 255, .86);--selected-stroke: #fbbf24;--matched-stroke: #4ade80;--connect-stroke: #c4b5fd;--code-bg: #020617;--code-text: #dbeafe;--overlay: rgba(2, 6, 23, .68);--drawer-overlay: rgba(2, 6, 23, .44);--slate-action: #334155;--shadow: 0 18px 42px rgba(0, 0, 0, .34);color-scheme:dark}:root[data-theme=arya-blue]{--bg: #080f1c;--surface: #101827;--surface-soft: #172235;--panel-bg: #0d1524;--toolbar-bg: #121c2d;--control-bg: #0b1220;--text: #eef6ff;--text-soft: #d1ddec;--text-subtle: #a7b6ca;--muted: #9baabe;--line: #2a3850;--row-line: #243148;--hover-border: #3a8db7;--blue: #0ea5e9;--blue-strong: #7dd3fc;--blue-border: #237da8;--blue-soft-hover: rgba(14, 165, 233, .15);--blue-soft: rgba(14, 165, 233, .22);--teal: #38bdf8;--green: #22c55e;--amber: #f59e0b;--red: #fb7185;--violet: #818cf8;--danger-bg: rgba(251, 113, 133, .14);--danger-border: rgba(251, 113, 133, .38);--warning-bg: rgba(245, 158, 11, .15);--warning-border: rgba(245, 158, 11, .42);--warning-text: #fbbf24;--success-bg: rgba(34, 197, 94, .14);--success-border: rgba(34, 197, 94, .38);--success-text: #86efac;--disabled-bg: #182236;--disabled-line: #2a3850;--disabled-text: #8796aa;--auth-veil: rgba(8, 15, 28, .8);--grid-line: rgba(125, 211, 252, .11);--editor-grid-line: rgba(125, 211, 252, .09);--canvas-bg: #0b1220;--canvas-soft-bg: #0d1524;--diagram-plane: rgba(8, 15, 28, .7);--diagram-plane-strong: rgba(8, 15, 28, .84);--diagram-plane-stroke: #2a3850;--diagram-node: #0369a1;--diagram-node-stroke: #38bdf8;--diagram-actor: #e0f2fe;--diagram-external: #475569;--diagram-external-stroke: #7dd3fc;--diagram-line: #8ecae6;--diagram-label: #e0f2fe;--diagram-label-stroke: #0b1220;--diagram-text: #f0f9ff;--diagram-meta-text: rgba(240, 249, 255, .9);--node-glyph: rgba(240, 249, 255, .86);--selected-stroke: #fbbf24;--matched-stroke: #4ade80;--connect-stroke: #c4b5fd;--code-bg: #020617;--code-text: #dff6ff;--overlay: rgba(2, 6, 23, .7);--drawer-overlay: rgba(2, 6, 23, .48);--slate-action: #26364e;--shadow: 0 18px 44px rgba(0, 0, 0, .42);color-scheme:dark}:root[data-theme=forest-night]{--bg: #081a14;--surface: #10251d;--surface-soft: #183328;--panel-bg: #0c2018;--toolbar-bg: #10281f;--control-bg: #0a1712;--text: #edf7f1;--text-soft: #cde6d9;--text-subtle: #a8c5b6;--muted: #9bb6aa;--line: #28483a;--row-line: #203c31;--hover-border: #3f8a70;--blue: #2dd4bf;--blue-strong: #99f6e4;--blue-border: #2c7a68;--blue-soft-hover: rgba(45, 212, 191, .14);--blue-soft: rgba(45, 212, 191, .22);--teal: #2dd4bf;--green: #4ade80;--amber: #fbbf24;--red: #fb7185;--violet: #a78bfa;--danger-bg: rgba(251, 113, 133, .13);--danger-border: rgba(251, 113, 133, .36);--warning-bg: rgba(251, 191, 36, .15);--warning-border: rgba(251, 191, 36, .4);--warning-text: #fde68a;--success-bg: rgba(74, 222, 128, .14);--success-border: rgba(74, 222, 128, .36);--success-text: #bbf7d0;--disabled-bg: #16281f;--disabled-line: #28483a;--disabled-text: #89a79a;--auth-veil: rgba(8, 26, 20, .78);--grid-line: rgba(153, 246, 228, .1);--editor-grid-line: rgba(153, 246, 228, .08);--canvas-bg: #0a1712;--canvas-soft-bg: #0c2018;--diagram-plane: rgba(10, 23, 18, .72);--diagram-plane-strong: rgba(10, 23, 18, .86);--diagram-plane-stroke: #28483a;--diagram-node: #0f766e;--diagram-node-stroke: #5eead4;--diagram-actor: #ecfdf5;--diagram-external: #355f50;--diagram-external-stroke: #99f6e4;--diagram-line: #9ed8c6;--diagram-label: #ecfdf5;--diagram-label-stroke: #0a1712;--diagram-text: #f0fdf4;--diagram-meta-text: rgba(240, 253, 244, .9);--node-glyph: rgba(240, 253, 244, .86);--selected-stroke: #fbbf24;--matched-stroke: #86efac;--connect-stroke: #c4b5fd;--code-bg: #06110d;--code-text: #dcfce7;--overlay: rgba(6, 17, 13, .72);--drawer-overlay: rgba(6, 17, 13, .48);--slate-action: #244b3d;--shadow: 0 18px 44px rgba(0, 0, 0, .4);color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--bg);font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{display:flex;min-height:100vh}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,.95fr) minmax(360px,520px);background:var(--bg)}.auth-product-panel{min-height:100vh;padding:48px clamp(32px,5vw,72px);display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line);background:linear-gradient(var(--auth-veil),var(--auth-veil)),linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px),var(--canvas-soft-bg);background-size:auto,24px 24px,24px 24px}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:36px}.auth-brand .brand-wordmark{font-size:24px}.auth-product-panel h1{max-width:620px;margin:0 0 14px;font-size:clamp(34px,4vw,54px);line-height:1.05;letter-spacing:0}.auth-product-panel p{max-width:620px;margin:0;color:var(--muted);font-size:17px;line-height:1.55}.auth-card{align-self:center;justify-self:center;width:min(420px,calc(100% - 40px));display:grid;gap:16px;border:1px solid var(--line);border-radius:4px;background:var(--surface);padding:22px;box-shadow:var(--shadow)}.auth-card.compact{grid-column:1 / -1;width:260px;justify-items:center;text-align:center}.auth-card-header h2{margin:0 0 4px;font-size:25px}.auth-card-header span{color:var(--muted);font-size:13px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:3px;border:1px solid var(--line);border-radius:3px;background:var(--panel-bg)}.auth-tabs button{min-height:34px;border:1px solid transparent;border-radius:3px;background:transparent;color:var(--text-soft)}.auth-tabs button.active{border-color:var(--blue-border);background:var(--blue-soft);color:var(--blue-strong);font-weight:700}.auth-form{display:grid;gap:12px}.auth-form label{display:grid;gap:6px;color:var(--muted);font-size:13px}.auth-form input{min-height:38px;border:1px solid var(--line);border-radius:3px;background:var(--control-bg);color:var(--text);padding:0 10px}.auth-form input:focus{outline:2px solid var(--blue-border);outline-offset:1px}.auth-error{border:1px solid var(--danger-border);border-radius:3px;background:var(--danger-bg);color:var(--red);padding:10px;font-size:13px}.sidebar{width:248px;flex:0 0 248px;min-height:100vh;position:sticky;top:0;background:var(--surface);color:var(--text);padding:0;display:flex;flex-direction:column;align-items:center;gap:0;border-right:1px solid var(--line)}.brand{width:100%;min-height:68px;display:flex;align-items:center;gap:10px;padding:0 18px;border-bottom:1px solid var(--line)}.brand small,.brand-copy small{color:var(--muted);display:block;margin-top:2px;font-size:12px}.brand-lockup{min-width:0;display:flex;align-items:center;gap:11px}.brand-lockup.compact{flex-direction:column;justify-content:center;gap:8px}.brand-copy{min-width:0;display:grid;gap:1px}.brand-mark{width:46px;height:46px;display:block;flex:0 0 auto;overflow:visible;color:var(--blue);filter:drop-shadow(0 0 8px color-mix(in srgb,var(--blue) 34%,transparent))}.brand-lockup.compact .brand-mark{width:58px;height:58px}.brand-star-aura{fill:none;stroke:var(--blue);stroke-width:8;stroke-linejoin:round;opacity:.16;filter:url(#brandStarGlow)}.brand-star-core{fill:color-mix(in srgb,var(--blue) 8%,transparent);stroke:color-mix(in srgb,var(--blue-strong) 72%,#22d3ee);stroke-width:4.6;stroke-linejoin:round;filter:url(#brandStarGlow)}.brand-star-spark{fill:none;stroke:var(--blue-strong);stroke-width:1.5;stroke-linecap:round;opacity:.38}.brand-star-spark.vertical{opacity:.24}.brand-wordmark{display:inline-flex;align-items:baseline;white-space:nowrap;font-size:20px;font-weight:800;letter-spacing:0;line-height:1}.brand-wordmark-archi{color:var(--text);text-shadow:0 1px 0 color-mix(in srgb,var(--surface) 65%,transparent)}.brand-wordmark-vision{color:var(--blue-strong);background:linear-gradient(180deg,#38d8ff 0%,var(--blue) 78%);-webkit-background-clip:text;background-clip:text;text-shadow:0 0 14px color-mix(in srgb,var(--blue) 24%,transparent);-webkit-text-fill-color:transparent}.nav-list{width:100%;display:grid;gap:0;padding:10px 0}.nav-list button{width:100%;min-height:42px;border:0;background:transparent;color:var(--text-soft);display:flex;align-items:center;gap:10px;padding:0 18px;border-radius:0;text-align:left;font-weight:500;white-space:nowrap;border-left:3px solid transparent}.nav-list button:hover,.nav-list button.active{background:var(--blue-soft-hover);color:var(--blue-strong)}.nav-list button.active{box-shadow:none;border-left-color:var(--blue)}.sidebar-summary{margin-left:auto;display:grid;grid-template-columns:1fr 1fr;gap:10px}.mini-stat{background:var(--surface-soft);border:1px solid var(--line);border-radius:4px;padding:6px 10px}.mini-stat strong{display:block;font-size:16px}.mini-stat span{color:var(--muted);font-size:12px}.workspace{flex:1;min-width:0}.topbar,.contextbar,.page-heading{display:flex;align-items:center}.topbar{gap:14px;padding:0 24px;min-height:68px;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.topbar-brand{display:none;align-items:center;gap:11px;margin-right:auto;min-width:245px}.topbar-brand strong{font-size:21px;font-weight:700}.topbar-spacer{flex:1}.user-chip{min-height:38px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:3px;background:var(--control-bg);padding:0 10px}.user-chip strong,.user-chip span{display:block;line-height:1.2}.user-chip strong{font-size:13px}.user-chip span{margin-top:2px;color:var(--muted);font-size:11px}.select-pill{border:1px solid var(--line);background:var(--surface);border-radius:3px;padding:8px 10px;display:flex;align-items:center;gap:8px;min-width:150px}.workspace-select-pill{position:relative;min-height:42px;min-width:150px;border:1px solid var(--line);background:var(--surface);border-radius:3px;padding:6px 34px 6px 10px;display:grid;gap:2px}.workspace-select-pill:hover{border-color:var(--hover-border);background:var(--blue-soft-hover)}.workspace-select-pill>span{color:var(--muted);font-size:12px;line-height:1.1}.workspace-select-pill strong{min-width:0;display:inline-flex;align-items:center;gap:6px;color:var(--text);font-size:14px;line-height:1.2;white-space:nowrap}.workspace-select-pill select{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.workspace-select-pill>svg{position:absolute;right:10px;bottom:10px;color:var(--muted);pointer-events:none}.select-pill span{color:var(--muted);font-size:12px}.select-pill strong{display:inline-flex;align-items:center;gap:6px;font-size:14px}.contextbar{gap:10px;padding:12px 24px;background:var(--panel-bg);border-bottom:1px solid var(--line)}.workspace-inline-error{margin:10px 24px 0;border:1px solid var(--danger-border);border-radius:3px;background:var(--danger-bg);color:var(--red);padding:9px 12px;font-size:13px}.quiet-button,.ghost-button,.primary-button,.icon-button{border-radius:3px;border:1px solid var(--line);background:var(--surface);color:var(--text);display:inline-flex;align-items:center;justify-content:center;gap:8px}.quiet-button,.ghost-button,.primary-button{min-height:34px;padding:0 13px}.primary-button{border-color:var(--blue);background:var(--blue);color:#fff}.domain-dot{width:8px;height:8px;background:#ef4444;border-radius:50%;flex:0 0 auto}.domain-select-pill{min-width:190px;max-width:240px}.topbar-action{white-space:nowrap}.quiet-button{background:var(--blue-soft);color:var(--blue);border-color:transparent}.ghost-button:hover,.quiet-button:hover,.icon-button:hover,.select-pill:hover{border-color:var(--hover-border);background:var(--blue-soft-hover)}.icon-button{width:38px;height:38px;padding:0}.icon-button.compact{display:none}.context-hint{margin-left:auto;color:var(--muted);display:flex;align-items:center;gap:6px;font-size:13px}.page-heading{padding:16px 24px;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);background:var(--surface)}.page-heading h1{margin:0 0 4px;font-size:27px;letter-spacing:0}.page-heading p,.table-header p{margin:0;color:var(--muted)}.eyebrow{color:var(--blue);font-weight:700;font-size:12px;text-transform:uppercase}.heading-tools{display:flex;gap:10px;align-items:center}.search-box{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:3px;background:var(--surface);padding:0 12px;min-height:40px;min-width:min(360px,38vw)}.diagram-search-row{margin:-4px 0 14px}.diagram-search-row .search-box{width:min(460px,100%)}.search-box input,.filter-row input,.filter-row select,.inspector input,.inspector select,.inspector textarea{width:100%;border:0;outline:0;background:transparent;color:var(--text)}.content-area{padding:16px 24px 32px}.overview-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:16px}.full-width{grid-column:1 / -1}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px}.metric-card,.dashboard-panel,.table-panel,.diagram-preview-panel,.empty-state{background:var(--surface);border:1px solid var(--line);border-radius:4px;box-shadow:none}.metric-card{padding:18px;border-left:4px solid var(--blue)}.metric-card.warning{border-left-color:var(--amber)}.metric-card.danger{border-left-color:var(--red)}.metric-card.success{border-left-color:var(--green)}.metric-card.info{border-left-color:var(--teal)}.metric-card span,.metric-card small{color:var(--muted)}.metric-card strong{display:block;font-size:34px;margin:8px 0 2px}.dashboard-panel,.table-panel,.diagram-preview-panel,.empty-state{padding:16px}.dashboard-panel.wide{grid-column:span 1}.panel-title,.table-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.panel-title div{display:flex;gap:8px;align-items:center}.panel-title span{color:var(--muted);font-size:13px}.timeline{height:210px;display:flex;align-items:end;gap:9px;padding:14px;border-radius:3px;background:var(--surface-soft)}.timeline span{flex:1;min-width:8px;background:linear-gradient(180deg,var(--blue),var(--teal));border-radius:6px 6px 0 0}.panel-note{margin-top:12px;color:var(--muted);line-height:1.5}.task-list,.history-list,.card-table{display:grid;gap:10px}.task-row,.history-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:3px;background:var(--surface-soft)}.task-row>span,.history-dot{width:10px;height:10px;border-radius:50%;background:var(--amber);flex:0 0 auto}.task-row strong,.task-row small{display:block}.task-row small,.history-item small,.history-item time{color:var(--muted)}.empty-compact,.empty-inline{min-height:210px;display:grid;place-items:center;text-align:center;color:var(--muted)}.empty-compact strong,.empty-inline strong{color:var(--text)}.draft-section{min-height:min(560px,calc(100vh - 210px));display:grid;align-content:start;gap:16px;border:1px solid var(--line);border-radius:4px;background:var(--surface);padding:22px}.draft-hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start;max-width:900px}.draft-icon{width:56px;height:56px;display:inline-grid;place-items:center;border:1px solid var(--blue-border);border-radius:4px;background:var(--blue-soft);color:var(--blue-strong)}.draft-status{display:inline-flex;min-height:24px;align-items:center;border:1px solid var(--warning-border);border-radius:999px;background:var(--warning-bg);color:var(--warning-text);padding:0 9px;font-size:12px;font-weight:700}.draft-hero h2{margin:10px 0 8px;font-size:28px}.draft-hero p{margin:0;color:var(--muted);line-height:1.55}.draft-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px;max-width:900px}.draft-feature-grid article{border:1px solid var(--line);border-radius:4px;background:var(--panel-bg);padding:14px}.draft-feature-grid strong,.draft-feature-grid span{display:block}.draft-feature-grid span{margin-top:6px;color:var(--muted);font-size:13px;line-height:1.45}.platform-grid{display:grid;grid-template-columns:minmax(420px,1fr) minmax(320px,.58fr);gap:16px;min-width:0}.platform-main-panel,.platform-side-panel{min-width:0}.doc-list{display:grid;gap:8px}.doc-list button{width:100%;min-height:68px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--text);padding:12px;text-align:left}.doc-list button:hover,.doc-list button.selected{border-color:var(--blue-border);background:var(--blue-soft-hover)}.doc-list button.selected{box-shadow:inset 3px 0 0 var(--blue)}.doc-list strong,.doc-list span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-list span,.doc-list small{color:var(--muted);font-size:12px}.doc-preview{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:4px;background:var(--surface-soft)}.doc-preview h3,.doc-preview p{margin:0}.doc-preview p{color:var(--muted);line-height:1.55}.mini-definition-list{display:grid;grid-template-columns:90px 1fr;gap:8px 12px;margin:0}.mini-definition-list dt{color:var(--muted)}.mini-definition-list dd{margin:0}.platform-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.inline-success,.inline-code{border:1px solid var(--success-border);border-radius:4px;background:var(--success-bg);color:var(--success-text);padding:10px 12px;font-weight:600}.inline-code{border-color:var(--blue-border);background:var(--blue-soft);color:var(--blue-strong);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;overflow:auto}.quality-strip{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;margin-bottom:14px}.quality-strip article{border:1px solid var(--line);border-radius:4px;background:var(--surface-soft);padding:12px}.quality-strip span,.quality-card p{color:var(--muted)}.quality-strip strong{display:block;margin-top:4px;font-size:24px}.task-board{display:grid;gap:10px}.quality-card{display:grid;grid-template-columns:minmax(0,1fr) auto 90px;gap:12px;align-items:center;border:1px solid var(--line);border-radius:4px;background:var(--surface);padding:14px}.quality-card.closed{background:var(--success-bg);border-color:var(--success-border)}.quality-card h3,.quality-card p{margin:8px 0 0}.quality-card>strong{justify-self:end;color:var(--blue-strong)}.share-preview{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center;border:1px solid var(--line);border-radius:4px;background:var(--surface-soft);padding:14px;margin-bottom:14px}.share-preview span,.report-preview span{display:block;color:var(--muted);margin-top:4px}.toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:14px}.toggle-grid.single{grid-template-columns:1fr}.toggle-row.boxed{border:1px solid var(--line);border-radius:4px;background:var(--surface);padding:10px 12px}.compact-card{margin-top:14px}.branch-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.branch-summary article{border:1px solid var(--line);border-radius:4px;background:var(--surface-soft);padding:14px}.branch-summary span{display:block;color:var(--muted);margin-top:4px}.merge-preview{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.merge-column{min-height:150px;border:1px solid var(--line);border-radius:4px;background:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px),var(--canvas-bg);background-size:18px 18px;padding:14px}.merge-column.after{border-color:var(--blue-border);box-shadow:inset 3px 0 0 var(--blue)}.merge-column span{display:block;color:var(--muted);margin-top:6px}.report-preview{display:grid;gap:7px;border:1px solid var(--line);border-radius:4px;background:var(--surface-soft);padding:14px}.work-breakdown{display:grid;gap:18px}.progress-row div{display:flex;justify-content:space-between;margin-bottom:8px}meter{width:100%;height:12px}.split-layout,.diagrams-workspace{display:grid;grid-template-columns:minmax(360px,.92fr) minmax(0,1.08fr);gap:16px;min-width:0}.diagrams-workspace .table-panel{padding:0;overflow:visible;min-width:0}.modeler-panel{padding:0;overflow:hidden;min-width:0}.diagrams-workspace .table-header{padding:16px 16px 12px;margin:0;border-bottom:1px solid var(--line)}.diagram-create-modal{width:min(780px,100%)}.diagram-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.diagram-type-grid button{min-height:72px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--text);padding:10px;text-align:left}.diagram-type-grid button.selected{border-color:var(--blue);background:var(--blue-soft);color:var(--blue-strong)}.diagram-type-grid strong,.diagram-type-grid span{display:block}.diagram-type-grid span{margin-top:4px;color:var(--muted);font-size:12px;line-height:1.35}.data-table{width:100%;min-width:0}.data-table-head,.data-row{display:grid;align-items:center;gap:6px;padding:0 10px;min-width:0}.data-table-head{min-height:46px;color:var(--text-soft);background:var(--toolbar-bg);border-bottom:1px solid var(--line);font-size:13px;font-weight:700}.data-row{width:100%;min-height:58px;border:0;border-bottom:1px solid var(--row-line);background:var(--surface);color:var(--text);text-align:left;cursor:pointer;position:relative}.data-row:hover{background:var(--blue-soft-hover)}.data-row.selected{background:var(--blue-soft);box-shadow:inset 3px 0 0 var(--blue)}.table-status-row{min-height:76px;display:grid;place-items:center;border-bottom:1px solid var(--row-line);color:var(--muted);background:var(--panel-bg);font-weight:600}.table-status-row.error{color:var(--red);background:var(--danger-bg)}.diagrams-head,.diagrams-row{grid-template-columns:minmax(130px,1fr) 48px 98px 30px}.diagrams-row>*{min-width:0}.row-actions{position:relative;justify-self:end}.icon-button.small{width:30px;height:30px}.actions-menu{position:absolute;top:34px;right:0;z-index:25;width:178px;padding:5px;background:var(--surface);border:1px solid var(--line);border-radius:3px;box-shadow:var(--shadow)}.actions-menu button{width:100%;min-height:32px;border:0;background:transparent;color:var(--text);display:flex;align-items:center;padding:0 9px;text-align:left}.actions-menu button:hover{background:var(--blue-soft-hover);color:var(--blue-strong)}.actions-menu .danger-action{color:var(--red)}.muted{color:var(--muted);font-size:13px}.rich-row{width:100%;display:grid;grid-template-columns:58px 1fr auto 30px;gap:12px;align-items:center;text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:3px;padding:13px}.rich-row:hover,.object-card:hover{border-color:var(--hover-border);box-shadow:none}.row-main strong,.row-main span,.row-meta span,.row-meta small{display:block}.row-main span,.row-meta small{color:var(--muted);margin-top:4px}.row-meta{text-align:right}.type-badge{width:46px;height:28px;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;color:var(--blue);background:var(--blue-soft)}.type-badge.c2{color:var(--teal);background:color-mix(in srgb,var(--teal) 14%,var(--surface))}.type-badge.erd{color:var(--violet);background:color-mix(in srgb,var(--violet) 14%,var(--surface))}.diagram-canvas{overflow:hidden;min-height:520px;height:min(640px,calc(100vh - 238px));background:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px),var(--canvas-soft-bg);background-size:20px 20px;border:0;border-top:1px solid var(--line);border-radius:0}.diagram-canvas svg{width:100%;height:100%;display:block;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.diagram-canvas svg:active{cursor:grabbing}.diagram-boundary{fill:var(--diagram-plane);stroke:var(--diagram-plane-stroke);stroke-width:1}.diagram-boundary.editor-plane{fill:var(--diagram-plane-strong);stroke:var(--diagram-plane-stroke)}.diagram-node{fill:var(--diagram-node);stroke:var(--diagram-node-stroke);stroke-width:1.3;filter:drop-shadow(0 2px 2px rgba(23,39,58,.22))}.diagram-node.actor{fill:var(--diagram-actor);stroke:var(--diagram-actor)}.diagram-node.db{fill:var(--diagram-node);stroke:var(--diagram-node-stroke)}.diagram-node.external{fill:var(--diagram-external);stroke:var(--diagram-external-stroke)}.diagram-boundary-title{fill:var(--muted);font-weight:700;font-size:18px}.diagram-text{fill:var(--diagram-text);font-weight:700;font-size:18px}.diagram-meta{fill:var(--diagram-meta-text);font-size:12.5px}.diagram-actor circle,.diagram-actor line{fill:none;stroke:var(--diagram-actor);stroke-width:3;stroke-linecap:round}.diagram-actor-text{fill:var(--diagram-actor);font-weight:700;font-size:15px}.diagram-line{fill:none;stroke:var(--diagram-line);stroke-width:1.8}.diagram-label{fill:var(--diagram-label);font-size:13px;font-weight:700;paint-order:stroke;stroke:var(--diagram-label-stroke);stroke-width:6px;stroke-linejoin:round}.diagram-toolbar{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 14px;background:var(--toolbar-bg);border-bottom:1px solid var(--line)}.diagram-toolbar-title{display:flex;align-items:center;gap:10px;min-width:0}.diagram-toolbar-title strong,.diagram-toolbar-title span{display:block}.diagram-toolbar-title strong{font-size:15px}.diagram-toolbar-title span{margin-top:2px;color:var(--muted);font-size:12px}.zoom-tools button{min-height:30px;border:1px solid var(--line);background:var(--control-bg);border-radius:3px;padding:0 10px;color:var(--text-soft);display:inline-flex;align-items:center;justify-content:center}.zoom-tools{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:13px}.zoom-tools .zoom-reset{min-width:58px}.diagram-open-button{gap:6px;margin-right:8px;min-width:92px;white-space:nowrap;color:var(--blue-strong)!important;border-color:var(--blue-border)!important;background:var(--control-bg)!important}.diagram-open-button:hover{background:var(--blue-soft-hover)!important;border-color:var(--blue-border)!important}.diagram-empty-preview{min-height:520px;display:grid;place-items:center;align-content:center;gap:8px;color:var(--muted);background:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px),var(--canvas-bg);background-size:28px 28px;text-align:center}.diagram-empty-preview strong{color:var(--text);font-size:15px}.full-diagram-view{background:var(--surface);border:1px solid var(--line);border-radius:4px;overflow:hidden}.full-diagram-header{min-height:56px;padding:0 14px;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);background:var(--toolbar-bg)}.full-diagram-header strong,.full-diagram-header span{display:block}.full-diagram-header span{margin-top:2px;color:var(--muted);font-size:12px}.full-diagram-view .diagram-canvas{height:calc(100vh - 260px);min-height:620px}.erd-table rect{fill:var(--surface);stroke:var(--diagram-plane-stroke);stroke-width:1.2}.erd-table .erd-table-head{fill:var(--diagram-node);stroke:var(--diagram-node-stroke)}.erd-title{fill:var(--diagram-text);font-weight:700;font-size:18px}.erd-field{fill:var(--diagram-label);font-size:16px;font-weight:600}.erd-table line{stroke:var(--line)}.muted-field{fill:var(--muted);font-weight:500}.segmented{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.segmented button{border:1px solid var(--line);background:var(--surface);border-radius:3px;padding:9px 12px;color:var(--muted)}.segmented button.active{background:var(--blue);border-color:var(--blue);color:#fff}.object-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.object-grid-status{grid-column:1 / -1;border:1px solid var(--line);border-radius:3px}.object-card{border:1px solid var(--line);border-radius:3px;background:var(--surface);padding:14px;display:grid;grid-template-columns:42px 1fr;gap:12px;text-align:left;align-items:center}.object-card span,.object-card small{color:var(--muted)}.object-card small{grid-column:2}.kind-icon{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;background:var(--blue-soft);color:var(--blue);border-radius:3px}.empty-state{min-height:420px;display:grid;place-items:center;text-align:center;padding:48px}.empty-state h2{margin:16px 0 8px}.empty-state p{max-width:620px;color:var(--muted);line-height:1.6}.empty-illustration{width:108px;height:108px;display:grid;place-items:center;border-radius:4px;color:var(--blue);background:var(--blue-soft)}.empty-actions{display:flex;gap:10px}.empty-inline{min-height:auto;grid-template-columns:auto 1fr auto;text-align:left;place-items:center start;gap:16px;border:1px dashed var(--hover-border);border-radius:3px;padding:18px;margin-bottom:16px}.empty-inline span{display:block;margin-top:5px}.interface-types{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.interface-types article{border:1px solid var(--line);border-radius:3px;padding:14px;display:grid;gap:6px}.interface-types span{color:var(--muted);font-size:13px}.filter-row{display:grid;grid-template-columns:1fr 240px auto;gap:12px;align-items:end;margin-bottom:14px}.filter-row label,.inspector label{display:grid;gap:7px;color:var(--muted);font-size:13px}.filter-row input,.filter-row select,.inspector input,.inspector select,.inspector textarea{border:1px solid var(--line);border-radius:3px;padding:10px 11px;background:var(--surface)}.history-item{display:grid;grid-template-columns:auto 1fr 220px 170px}.history-item p{margin:3px 0 0;color:var(--muted)}.audit-card{display:flex;gap:14px;padding:18px;border-radius:3px;background:var(--warning-bg);border:1px solid var(--warning-border);color:var(--warning-text)}.audit-card span{display:block;margin-top:5px}.inspector,.settings-panel{position:fixed;top:0;right:0;height:100vh;width:min(460px,100vw);background:var(--surface);border-left:1px solid var(--line);box-shadow:var(--shadow);z-index:50;overflow:auto}.inspector-close{position:absolute;top:16px;right:16px}.inspector-content{padding:54px 24px 24px;display:grid;gap:16px}.inspector-content h2{margin:0;font-size:26px}.inspector-content p{color:var(--muted);line-height:1.55;margin:0}.inspector-content dl{display:grid;grid-template-columns:140px 1fr;gap:12px;padding:16px;border:1px solid var(--line);border-radius:3px}.inspector-content dt{color:var(--muted)}.inspector-content dd{margin:0}.full{width:100%}.wizard-steps{display:flex;gap:8px}.wizard-steps span{flex:1;border:1px solid var(--line);border-radius:3px;padding:9px;text-align:center;color:var(--muted)}.wizard-steps span.active{color:var(--blue);background:var(--blue-soft);border-color:var(--blue-border)}.inspector textarea{min-height:96px;resize:vertical}.inspector-actions,.settings-header{display:flex;justify-content:space-between;gap:10px;align-items:center}.settings-panel{padding:22px;width:min(420px,100vw)}.settings-header h2{margin:0}.setting-group{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.setting-group h3{margin:0 0 12px}.toggle-row,.range-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;color:var(--text)}.range-row input{flex:1}.wide-segmented{flex-wrap:nowrap}.wide-segmented button{flex:1}.theme-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.theme-grid button{border:1px solid var(--line);border-radius:3px;background:var(--surface);padding:10px;text-align:left;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;color:var(--text)}.theme-grid button:hover,.theme-grid button.selected{border-color:var(--blue);background:var(--blue-soft)}.theme-grid button.selected{color:var(--blue-strong)}.theme-grid strong{min-width:0;overflow:hidden;text-overflow:ellipsis;font-weight:600;white-space:nowrap}.theme-grid span{width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2));box-shadow:inset 0 0 0 1px #ffffff6b}.editor-page{min-height:100vh;height:100vh;background:var(--canvas-bg);display:grid;grid-template-rows:64px 48px minmax(0,1fr);overflow:hidden}.editor-topbar{display:flex;align-items:center;gap:16px;padding:0 18px;border-bottom:1px solid var(--line);background:var(--surface)}.editor-classic-back{min-height:34px;border:1px solid var(--line);border-radius:3px;background:var(--control-bg);color:var(--text-soft);display:inline-flex;align-items:center;gap:7px;padding:0 10px}.editor-classic-back:hover{border-color:var(--blue-border);color:var(--blue-strong);background:var(--blue-soft-hover)}.editor-brand{display:flex;align-items:center;gap:12px;min-width:190px}.editor-brand .brand-mark{width:40px;height:40px}.editor-brand .brand-wordmark{font-size:21px}.editor-title{min-width:0;display:flex;align-items:baseline;gap:10px}.editor-title strong{font-size:20px;font-weight:500;color:var(--text-subtle)}.editor-title span{color:var(--muted);font-size:13px}.editor-header-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.editor-toolbar{display:flex;align-items:center;gap:8px;padding:0 12px;background:var(--toolbar-bg);border-bottom:1px solid var(--line);min-width:0}.editor-tool,.editor-search{min-height:32px;border:1px solid transparent;border-radius:3px;background:transparent;color:var(--text-soft);display:inline-flex;align-items:center;gap:8px;padding:0 10px}.editor-tool.active,.editor-tool:hover{background:var(--control-bg);border-color:var(--line)}.editor-mode-group{display:inline-flex;align-items:center;padding:2px;border:1px solid var(--line);border-radius:3px;background:var(--control-bg)}.editor-mode-group .editor-tool{min-height:28px;border-color:transparent}.editor-tool.active-soft{background:var(--blue-soft);border-color:var(--blue-border);color:var(--blue-strong)}.editor-search{min-width:220px}.editor-search input{width:100%;border:0;outline:0;background:transparent}.visibility-filter-group{min-height:32px;display:inline-flex;align-items:center;gap:2px;padding:2px;border:1px solid var(--line);border-radius:3px;background:var(--control-bg)}.visibility-filter-group button{min-height:28px;border:1px solid transparent;border-radius:3px;background:transparent;color:var(--text-soft);display:inline-flex;align-items:center;gap:6px;padding:0 8px;white-space:nowrap}.visibility-filter-group button:hover,.visibility-filter-group button.active{border-color:var(--blue-border);background:var(--blue-soft);color:var(--blue-strong)}.editor-toolbar-spacer{flex:1}.mode-switch-button{min-height:34px;border:1px solid var(--line);border-radius:3px;background:var(--control-bg);color:var(--text);display:inline-flex;align-items:center;gap:7px;padding:0 12px;white-space:nowrap}.mode-switch-button:hover{border-color:var(--blue-border);background:var(--blue-soft-hover);color:var(--blue-strong)}.mode-switch-button.primary{border-color:var(--blue);background:var(--blue);color:#fff}.mode-switch-button.primary:hover{border-color:var(--blue-strong);background:var(--blue-strong);color:#fff}.editor-mode-hint{color:var(--muted);font-size:13px;white-space:nowrap;min-width:0;max-width:min(360px,28vw);overflow:hidden;text-overflow:ellipsis}.autosave-chip{min-height:30px;display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:3px;padding:0 10px;color:var(--text-soft);background:var(--control-bg);font-size:12px;font-weight:600;white-space:nowrap}.autosave-chip.saving{border-color:var(--blue-border);background:var(--blue-soft-hover);color:var(--blue-strong)}.autosave-chip.saved{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.autosave-chip.error{border-color:var(--danger-border);background:var(--danger-bg);color:var(--red)}.editor-workspace{min-height:0;height:100%;display:grid;grid-template-columns:136px minmax(0,1fr) 296px;background:var(--canvas-bg)}.editor-workspace.view-mode{grid-template-columns:minmax(0,1fr)}.editor-rail{position:relative;border-right:1px solid var(--line);background:var(--panel-bg);padding:12px 10px;display:flex;flex-direction:column;align-items:center;gap:14px}.editor-rail-section{width:100%;display:grid;gap:6px}.editor-rail-section span{color:var(--muted);font-size:12px;font-weight:600;padding:0 2px}.editor-rail-section button{width:100%;min-height:32px;border:1px solid var(--line);border-radius:3px;background:var(--control-bg);color:var(--text-soft);text-align:left;padding:0 9px;display:inline-flex;align-items:center;gap:7px}.editor-rail-section button:hover{border-color:var(--blue-border);background:var(--blue-soft-hover);color:var(--blue-strong)}.editor-rail-section button.active{border-color:var(--blue);background:var(--blue-soft);color:var(--blue-strong);font-weight:700}.editor-rail-spacer{flex:1}.editor-zoom-stack{width:100%;overflow:hidden;border-radius:3px;border:1px solid var(--blue);background:var(--blue)}.editor-zoom-stack button{width:100%;height:34px;border:0;background:var(--blue);color:#fff;font-size:24px;line-height:1}.editor-zoom-stack button+button{border-top:1px solid rgba(255,255,255,.28)}.editor-canvas-area{min-width:0;min-height:0;display:grid;grid-template-rows:42px minmax(0,1fr)}.editor-canvas-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 18px;color:var(--text-soft);background:var(--surface)}.editor-canvas-head>div{min-width:0;display:grid;gap:2px}.editor-canvas-head-meta{color:var(--muted);font-size:12px;white-space:nowrap}.editor-scale-chip{min-height:28px;min-width:56px;border:1px solid var(--line);border-radius:3px;background:var(--control-bg);color:var(--muted)}.editor-canvas{height:100%;min-height:0;border-top:0;background:linear-gradient(var(--editor-grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--editor-grid-line) 1px,transparent 1px),var(--canvas-bg);background-size:20px 20px}.editor-inspector{border-left:1px solid var(--line);background:var(--panel-bg);padding:16px}.editor-inspector h2{margin:0 0 14px;font-size:18px;font-weight:600}.editor-inspector dl{display:grid;grid-template-columns:90px 1fr;gap:10px;margin:0 0 16px;padding:12px;border:1px solid var(--line);background:var(--surface)}.editor-inspector dt{color:var(--muted)}.editor-inspector dd{margin:0;min-width:0}.editor-property-form{display:grid;gap:12px}.editor-property-form label{display:grid;gap:6px;color:var(--muted);font-size:13px}.editor-property-form input,.editor-property-form select,.editor-property-form textarea,.plantuml-source textarea{min-height:36px;border:1px solid var(--line);border-radius:3px;background:var(--control-bg);padding:0 10px;color:var(--text)}.editor-property-form textarea{min-height:72px;padding:8px 10px;resize:vertical}.editor-form-note{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.danger-button{color:var(--red)}.editor-node{cursor:pointer;transition:opacity .16s ease,filter .16s ease}.node-glyph{fill:none;stroke:var(--node-glyph);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.node-hitbox{fill:transparent;stroke:transparent;pointer-events:all}.editor-node.selected .diagram-node{stroke:var(--selected-stroke);stroke-width:3}.editor-node.actor-node.selected circle,.editor-node.actor-node.selected line{stroke:var(--selected-stroke)}.editor-node.matched .diagram-node{stroke:var(--matched-stroke);stroke-width:3}.editor-node.actor-node.matched circle,.editor-node.actor-node.matched line{stroke:var(--matched-stroke)}.editor-node.connect-source .diagram-node{stroke:var(--connect-stroke);stroke-width:3.2}.editor-node.actor-node.connect-source circle,.editor-node.actor-node.connect-source line{stroke:var(--connect-stroke)}.editor-link{cursor:pointer;transition:opacity .16s ease}.editor-link.selected .diagram-line:not(.link-hit-target){stroke:var(--selected-stroke);stroke-width:2.8}.editor-node.focus-dim,.editor-link.focus-dim{opacity:.22}.editor-node.focus-hit{filter:drop-shadow(0 0 5px color-mix(in srgb,var(--blue) 35%,transparent))}.editor-node.focus-hit .diagram-node{stroke:var(--blue);stroke-width:3}.editor-node.actor-node.focus-hit circle,.editor-node.actor-node.focus-hit line{stroke:var(--blue);stroke-width:3.4}.editor-link.focus-hit .diagram-line:not(.link-hit-target){stroke:var(--blue);stroke-width:2.8}.editor-link.focus-hit .diagram-label{fill:var(--blue-strong);font-weight:800}.link-hit-target{stroke:transparent;stroke-width:16;marker-end:none;pointer-events:stroke}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:24px;background:var(--overlay)}.add-element-modal{width:min(720px,100%);max-height:min(760px,calc(100vh - 48px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:var(--surface);border:1px solid var(--line);border-radius:4px;box-shadow:var(--shadow);overflow:hidden}.modal-header,.modal-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:var(--panel-bg)}.modal-actions{border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end}.modal-header h2{margin:0;font-size:20px}.modal-header span{display:block;margin-top:2px;color:var(--muted);font-size:13px}.modal-body{overflow:auto;padding:18px;display:grid;gap:14px}.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-body label{display:grid;gap:6px;color:var(--muted);font-size:13px}.modal-body input,.modal-body select,.modal-body textarea{min-height:36px;border:1px solid var(--line);border-radius:3px;background:var(--control-bg);padding:0 10px;color:var(--text)}.modal-body textarea{min-height:84px;padding:9px 10px;resize:vertical}.existing-element-tools{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.existing-element-search{position:relative}.existing-element-search svg{position:absolute;left:10px;bottom:9px;color:var(--muted)}.existing-element-search input{padding-left:34px}.element-type-filter{display:flex;flex-wrap:wrap;gap:6px}.element-type-filter button{min-height:30px;border:1px solid var(--line);border-radius:3px;background:var(--control-bg);color:var(--text-soft);padding:0 10px}.element-type-filter button:hover,.element-type-filter button.active{border-color:var(--blue);background:var(--blue-soft);color:var(--blue-strong)}.existing-element-list{display:grid;gap:8px;max-height:300px;overflow:auto;padding-right:2px}.existing-element-row{width:100%;min-height:76px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--text);padding:10px 12px;text-align:left}.existing-element-row:hover{border-color:var(--blue-border);background:var(--blue-soft-hover)}.existing-element-row.disabled,.existing-element-row.disabled:hover{cursor:not-allowed;opacity:1;border-color:var(--disabled-line);background:var(--disabled-bg);color:var(--disabled-text)}.existing-element-row.selected{border-color:var(--blue);box-shadow:inset 3px 0 0 var(--blue);background:var(--blue-soft)}.existing-element-row.disabled.selected{border-color:var(--disabled-line);box-shadow:none;background:var(--disabled-bg)}.canvas-kind-badge{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:4px;background:var(--blue-soft);color:var(--blue-strong)}.canvas-kind-badge.actor{background:color-mix(in srgb,var(--blue) 14%,var(--surface));color:var(--blue-strong)}.canvas-kind-badge.container{background:color-mix(in srgb,var(--green) 14%,var(--surface));color:var(--green)}.canvas-kind-badge.database{background:color-mix(in srgb,var(--amber) 15%,var(--surface));color:var(--amber)}.existing-element-row.disabled .canvas-kind-badge{background:var(--disabled-bg);color:var(--disabled-text)}.existing-element-main{min-width:0;display:grid;gap:4px}.existing-element-main strong,.existing-element-main span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.existing-element-main span,.existing-element-meta{color:var(--muted);font-size:12px}.existing-element-meta{display:grid;justify-items:end;gap:4px;white-space:nowrap}.existing-element-meta span:first-child{color:var(--text-soft);font-weight:600}.existing-element-meta .added-state{display:inline-flex;min-height:22px;align-items:center;justify-content:center;border-radius:999px;background:var(--disabled-bg);color:var(--disabled-text);padding:0 8px;font-weight:600}.modal-empty-state{min-height:72px;display:grid;place-items:center;border:1px dashed var(--line);border-radius:4px;background:var(--panel-bg);color:var(--muted);text-align:center;padding:14px}.modal-empty-state.error{border-color:var(--danger-border);background:var(--danger-bg);color:var(--red)}.modal-section-title{margin-top:4px;padding-top:12px;border-top:1px solid var(--line);color:var(--text-soft);font-weight:600}.modal-summary{display:grid;grid-template-columns:90px 1fr;gap:8px;margin:0;padding:12px;border:1px solid var(--line);background:var(--panel-bg)}.modal-summary dt{color:var(--muted)}.modal-summary dd{margin:0}.history-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:85;display:flex;justify-content:flex-end;background:var(--drawer-overlay)}.diagram-history-panel{width:min(440px,100%);height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);border-left:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow)}.diagram-history-header{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:var(--panel-bg)}.diagram-history-header h2{margin:0;font-size:20px}.diagram-history-header span{display:block;margin-top:3px;color:var(--muted);font-size:13px}.diagram-history-list{overflow:auto;display:grid;align-content:start;gap:10px;padding:14px}.diagram-history-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px;border:1px solid var(--line);border-radius:4px;background:var(--surface)}.diagram-history-dot{width:10px;height:10px;margin-top:5px;border-radius:50%;background:var(--blue)}.diagram-history-item.success .diagram-history-dot{background:var(--green)}.diagram-history-item.warning .diagram-history-dot{background:var(--amber)}.diagram-history-main{min-width:0;display:grid;gap:5px}.diagram-history-main>div{display:flex;justify-content:space-between;gap:10px}.diagram-history-main strong,.diagram-history-main p,.diagram-history-main span,.diagram-history-main small,.diagram-history-main time{overflow:hidden;text-overflow:ellipsis}.diagram-history-main strong{color:var(--text)}.diagram-history-main time,.diagram-history-main span,.diagram-history-main small{color:var(--muted);font-size:12px}.diagram-history-main p{margin:0;color:var(--text);font-weight:600}.plantuml-panel{width:min(560px,100%)}.plantuml-panel-body{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;padding:14px}.plantuml-actions{display:flex;justify-content:flex-end;gap:8px}.plantuml-code{width:100%;min-height:0;margin:0;overflow:auto;border:1px solid var(--line);border-radius:4px;background:var(--code-bg);color:var(--code-text);padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12.5px;line-height:1.55;white-space:pre;resize:none}@media(max-width:1180px){.sidebar{width:76px;flex-basis:76px;overflow:hidden}.brand{justify-content:center;padding:0}.brand .brand-copy,.nav-list span{display:none}.nav-list button{justify-content:center;padding:0}.sidebar-summary{display:none}.split-layout,.diagrams-workspace,.overview-grid{grid-template-columns:1fr}.editor-workspace{grid-template-columns:120px minmax(0,1fr)}.editor-inspector{display:none}.editor-search{min-width:180px}}@media(max-width:820px){.auth-shell{grid-template-columns:1fr}.auth-product-panel{min-height:auto;padding:32px 20px 20px;border-right:0;border-bottom:1px solid var(--line)}.auth-product-panel h1{font-size:44px}.auth-card{align-self:start;margin:20px}.app-shell{display:block}.sidebar{position:sticky;top:0;width:100%;min-height:auto;height:auto;z-index:30;padding:0;border-right:0;border-bottom:1px solid var(--line)}.brand{display:none}.nav-list{display:flex;overflow-x:auto;padding:0 10px}.nav-list button{width:auto;min-height:48px;padding:0 10px;border-left:0;border-bottom:2px solid transparent;white-space:nowrap}.nav-list span{display:inline}.nav-list button.active{border-left-color:transparent;border-bottom-color:var(--blue)}.topbar,.contextbar,.page-heading,.heading-tools{flex-wrap:wrap}.select-pill,.search-box{min-width:100%}.metric-grid,.interface-types,.filter-row,.history-item,.draft-feature-grid,.empty-inline{grid-template-columns:1fr}.content-area,.page-heading,.topbar,.contextbar{padding-left:14px;padding-right:14px}.editor-page{height:100vh;grid-template-rows:auto auto minmax(0,1fr)}.editor-topbar,.editor-toolbar{flex-wrap:wrap;padding:10px 12px}.editor-toolbar-spacer,.editor-rail{display:none}.editor-header-actions{width:100%;flex-wrap:wrap}.editor-header-actions .select-pill{min-width:auto}.editor-title{flex-wrap:wrap}.editor-workspace{grid-template-columns:1fr}.editor-canvas{height:100%;min-height:0}.existing-element-row{grid-template-columns:auto minmax(0,1fr)}.existing-element-meta{grid-column:2;justify-items:start}.modal-grid{grid-template-columns:1fr}}@media(max-width:620px){.auth-product-panel h1{font-size:34px}.auth-product-panel p{font-size:17px}.diagrams-head,.diagrams-row{grid-template-columns:minmax(0,1fr) 48px 30px}.diagrams-head span:nth-child(3),.diagrams-row>.muted{display:none}.diagram-toolbar{flex-wrap:wrap;height:auto;padding:10px}.zoom-tools{width:100%;justify-content:flex-end}}
