:root{color:#242124;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--accent:#742774;--accent-strong:#5c1f5c;--accent-soft:#f4e7f6;--blue:#006fbf;--green:#137a4a;--red:#a12818;--amber:#8a5a0a;--ink:#242124;--muted:#605e5c;--line:#e1dfdd;--field-border:#c8c6c4;--canvas:#f6f5f4;--panel:#fff;--sidebar-expanded-width:248px;--sidebar-collapsed-width:68px;--sidebar-current-width:var(--sidebar-expanded-width);--shadow-xs:0 1px 2px #00000014;--shadow-lg:0 20px 54px #201f1e38;background:#f6f5f4;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100vh;font-size:14px;line-height:1.35;overflow-x:hidden}button,input,select,textarea{font:inherit}button,a{color:inherit}:focus-visible{outline-offset:2px;outline:3px solid #74277438}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{grid-template-columns:var(--sidebar-current-width) minmax(0, 1fr);min-height:100vh;color:var(--ink);background:var(--canvas);transition:grid-template-columns .16s;display:grid}.app-shell.sidebar-collapsed{--sidebar-current-width:var(--sidebar-collapsed-width)}.app-sidebar{z-index:40;width:var(--sidebar-current-width);height:100vh;color:var(--ink);border-right:1px solid var(--line);background:#f3f2f1;flex-direction:column;gap:18px;transition:width .16s;display:flex;position:sticky;top:0;overflow:hidden auto}.brand-block{color:#fff;background:var(--accent);align-items:center;gap:11px;min-height:76px;padding:16px 18px;display:flex}.brand-mark{background:#ffffff24;border:1px solid #ffffff47;border-radius:7px;flex:none;place-items:center;width:34px;height:34px;display:grid}.brand-copy{min-width:0;display:grid}.brand-copy small{text-transform:uppercase;opacity:.86;font-size:11px;font-weight:900}.brand-copy strong{white-space:nowrap;font-size:17px;line-height:1.15}.nav-list{gap:2px;padding:0 8px;display:grid}.nav-item{color:#323130;cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:4px;align-items:center;gap:12px;width:100%;min-height:42px;padding:0 12px;display:flex;position:relative}.nav-item:hover{background:#edebe9}.nav-item.active{color:var(--accent);background:#fff;font-weight:800;box-shadow:inset 0 0 0 1px #00000008}.nav-item.active:before{content:"";background:var(--accent);border-radius:0 2px 2px 0;width:3px;height:24px;position:absolute;left:0}.sidebar-help{color:var(--muted);border:1px solid var(--line);background:#faf9f8;border-radius:6px;gap:3px;margin:auto 12px 0;padding:12px;display:grid}.sidebar-help strong{color:var(--ink);font-size:12px}.sidebar-help span{font-size:11px;line-height:1.35}.account-panel{border:1px solid var(--line);background:#fff;border-radius:6px;align-items:center;gap:9px;min-width:0;margin:0 12px 14px;padding:10px;display:flex}.account-avatar{width:32px;height:32px;color:var(--accent);background:var(--accent-soft);border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid}.account-copy{flex:1;min-width:0;display:grid}.account-copy small{color:var(--muted);font-size:10px}.account-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.logout-button{width:32px;height:32px;color:var(--accent);background:var(--accent-soft);cursor:pointer;border:0;border-radius:4px;flex:none;place-items:center;padding:0;text-decoration:none;display:grid}.sidebar-notch{top:50vh;left:calc(var(--sidebar-current-width) - 8px);z-index:35;width:30px;min-height:68px;color:var(--muted);border:1px solid var(--line);cursor:pointer;background:#f3f2f1;border-left:0;border-radius:0 10px 10px 0;place-items:center;padding:0;transition:left .16s,color .16s;display:grid;position:fixed;transform:translateY(-50%);box-shadow:4px 0 12px #0000001f}.sidebar-notch:hover{color:var(--accent)}.sidebar-collapsed .brand-block{justify-content:center;padding-inline:8px}.sidebar-collapsed .brand-copy,.sidebar-collapsed .nav-item span,.sidebar-collapsed .sidebar-help,.sidebar-collapsed .account-copy{opacity:0;pointer-events:none;width:0;overflow:hidden}.sidebar-collapsed .nav-item{justify-content:center;gap:0;padding:0}.sidebar-collapsed .account-panel{justify-content:center;margin-inline:8px;padding-inline:6px}.sidebar-collapsed .account-avatar{display:none}.workspace{min-width:0;min-height:100vh}.page{width:min(100% - 56px,1540px);margin:28px auto}.page-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.page-heading p,.section-eyebrow{color:var(--accent);text-transform:uppercase;margin:0 0 5px;font-size:12px;font-weight:900}.page-heading h1{margin:0;font-size:clamp(24px,3vw,32px);line-height:1.12}.page-heading .subtitle{max-width:720px;color:var(--muted);margin-top:7px;font-size:14px;display:block}.heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.primary-button,.secondary-button,.danger-button,.ghost-button,.icon-button{cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-weight:800;line-height:1.1;display:inline-flex}.primary-button{color:#fff;background:var(--accent);border:1px solid var(--accent)}.primary-button:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.secondary-button{color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 30%, var(--line));background:#fff}.secondary-button:hover{background:var(--accent-soft);border-color:var(--accent)}.ghost-button{color:var(--ink);background:0 0;border:1px solid #0000}.ghost-button:hover{background:#edebe9}.danger-button{color:#fff;background:var(--red);border:1px solid #8f2114}.icon-button{width:38px;color:var(--ink);border:1px solid var(--line);background:#fff;padding:0}.icon-button:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.icon-button.active,.secondary-button.active{color:#fff;background:var(--accent);border-color:var(--accent)}.compact{min-height:32px;padding-inline:9px;font-size:12px}.icon-button.compact{width:32px;padding:0}button:disabled,a.disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.split-button{display:inline-flex}.split-button>:first-child{border-radius:4px 0 0 4px}.split-button>:last-child{border-radius:0 4px 4px 0;width:34px;margin-left:-1px;padding:0}.field{color:#323130;gap:6px;font-size:12px;font-weight:800;display:grid}.field>span{justify-content:space-between;align-items:center;gap:8px;display:flex}.field input,.field textarea,.field select,.text-input,.search-input{width:100%;min-width:0;min-height:38px;color:var(--ink);border:1px solid var(--field-border);background:#fff;border-radius:4px;outline:none;padding:8px 10px;font-weight:500}.field textarea{resize:vertical;min-height:80px;line-height:1.45}.field input:focus,.field textarea:focus,.field select:focus,.text-input:focus,.search-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field small,.field-help{color:var(--muted);font-size:11px;font-weight:500;line-height:1.35}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.color-input-row{grid-template-columns:42px 1fr;gap:8px;display:grid}.color-input-row input[type=color]{padding:3px}.panel,.dashboard-card,.library-card,.template-card,.new-card{border:1px solid var(--line);box-shadow:var(--shadow-xs);background:#fff;border-radius:8px}.dashboard-hero{color:#fff;background:linear-gradient(115deg,#5c1f5c,#742774 58%,#006fbf);border-radius:10px;justify-content:space-between;align-items:flex-end;gap:24px;min-height:210px;padding:28px;display:flex;position:relative;overflow:hidden;box-shadow:0 14px 38px #5c1f5c38}.dashboard-hero:after{content:"";border:1px solid #ffffff2e;border-radius:50%;width:430px;height:430px;position:absolute;top:-160px;right:-80px;box-shadow:0 0 0 55px #ffffff0a,0 0 0 110px #ffffff08}.dashboard-hero>*{z-index:1;position:relative}.dashboard-hero p{text-transform:uppercase;opacity:.84;margin:0 0 7px;font-size:12px;font-weight:900}.dashboard-hero h1{max-width:720px;margin:0;font-size:clamp(26px,4vw,42px);line-height:1.08}.dashboard-hero span{opacity:.88;max-width:660px;margin-top:10px;line-height:1.5;display:block}.dashboard-hero .primary-button{color:var(--accent);white-space:nowrap;background:#fff;border-color:#fff}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.metric-card{border:1px solid var(--line);background:#fff;border-radius:7px;grid-template-columns:42px 1fr;align-items:center;gap:12px;min-height:92px;padding:16px;display:grid}.metric-icon{width:42px;height:42px;color:var(--accent);background:var(--accent-soft);border-radius:7px;place-items:center;display:grid}.metric-card span{color:var(--muted);font-size:12px;font-weight:800}.metric-card strong{font-size:24px;line-height:1.1;display:block}.dashboard-grid{grid-template-columns:minmax(0,1.7fr) minmax(300px,.72fr);gap:16px;display:grid}.dashboard-card{padding:18px}.card-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.card-heading h2{margin:0;font-size:18px}.card-heading p{color:var(--muted);margin:3px 0 0;font-size:12px}.recent-list{gap:7px;display:grid}.recent-row{width:100%;min-width:0;min-height:64px;color:var(--ink);border:1px solid var(--line);cursor:pointer;text-align:left;background:#faf9f8;border-radius:5px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:11px;padding:9px 10px;display:grid}.recent-row:hover{border-color:var(--accent);background:#fff}.recent-row>span:first-child{width:40px;height:40px;color:var(--accent);background:var(--accent-soft);border-radius:5px;place-items:center;display:grid}.recent-row-copy{gap:2px;min-width:0;display:grid}.recent-row-copy strong,.recent-row-copy span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.recent-row-copy span{color:var(--muted);font-size:12px}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.quick-card{min-height:104px;color:var(--ink);border:1px solid var(--line);cursor:pointer;text-align:left;background:#faf9f8;border-radius:6px;align-content:space-between;gap:12px;padding:13px;display:grid}.quick-card:hover{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.onboarding-card{border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));border-left:5px solid var(--accent);box-shadow:var(--shadow-xs);background:#fff;border-radius:8px;gap:18px;margin:16px 0;padding:22px;display:grid;position:relative}.onboarding-close{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;display:grid;position:absolute;top:10px;right:10px}.onboarding-heading p{color:var(--accent);text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:900}.onboarding-heading h2{margin:0;font-size:21px}.onboarding-heading span{color:var(--muted);margin-top:5px;display:block}.onboarding-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.onboarding-steps article{border:1px solid var(--line);background:#faf9f8;border-radius:5px;grid-template-columns:36px 1fr;gap:9px;padding:11px;display:grid}.onboarding-steps article>span{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:5px;place-items:center;display:grid}.onboarding-steps article div{gap:3px;display:grid}.onboarding-steps small{color:var(--muted);font-size:11px;line-height:1.4}.onboarding-card>.primary-button{justify-self:start}.library-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.search-wrap{min-width:min(100%,360px);color:var(--muted);border:1px solid var(--field-border);background:#fff;border-radius:4px;align-items:center;gap:8px;padding:0 11px;display:flex}.search-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.search-wrap input{background:0 0;border:0;outline:0;flex:1;min-height:40px;padding:0}.library-grid,.template-grid,.new-grid{grid-template-columns:repeat(auto-fill,minmax(275px,1fr));gap:14px;display:grid}.library-card,.template-card,.new-card{min-width:0;overflow:hidden}.diagram-thumb{border-bottom:1px solid var(--line);background-color:#f9f8f7;background-image:radial-gradient(#d8d4d1 1px,#0000 1px);background-size:16px 16px;place-items:center;min-height:146px;padding:8px;display:grid;overflow:hidden}.diagram-thumb svg{width:100%;height:128px}.library-card-copy{gap:8px;min-width:0;padding:14px;display:grid}.library-card-copy h2{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:16px;overflow:hidden}.library-meta{color:var(--muted);flex-wrap:wrap;gap:8px;font-size:11px;display:flex}.library-actions{justify-content:space-between;gap:7px;display:flex}.library-actions .primary-button{flex:1}.template-card,.new-card{cursor:pointer;text-align:left;align-content:start;gap:10px;min-height:210px;padding:18px;display:grid}.template-card:hover,.new-card:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:0 10px 28px #5c1f5c1c}.template-icon,.new-icon{width:52px;height:52px;color:var(--accent);background:var(--accent-soft);border-radius:8px;place-items:center;display:grid}.template-card h2,.new-card h2{margin:4px 0 0;font-size:18px}.template-card p,.new-card p{color:var(--muted);margin:0;line-height:1.45}.empty-state{min-height:200px;color:var(--muted);border:1px dashed var(--field-border);text-align:center;background:#faf9f8;border-radius:7px;align-content:center;place-items:center;gap:8px;padding:24px;display:grid}.empty-state>span{width:48px;height:48px;color:var(--accent);background:var(--accent-soft);border-radius:50%;place-items:center;display:grid}.empty-state strong{color:var(--ink);font-size:16px}.empty-state p{max-width:480px;margin:0 0 8px}.loading-screen,.login-screen{background:var(--canvas);place-items:center;min-height:100vh;padding:24px;display:grid}.loading-overlay{z-index:90;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#f6f5f4b8;place-items:center;display:grid;position:fixed;inset:0}.login-panel{border:1px solid var(--line);width:min(100%,430px);box-shadow:var(--shadow-lg);background:#fff;border-radius:8px;gap:15px;padding:28px;display:grid}.login-panel>.brand-mark{color:#fff;background:var(--accent)}.login-panel p{color:var(--accent);text-transform:uppercase;margin:0;font-size:12px;font-weight:900}.login-panel h1{margin:0;font-size:28px}.login-panel>span{color:var(--muted);line-height:1.5}.loading-spinner{border:3px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;width:34px;height:34px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.editor-workspace{background:#edebe9;flex-direction:column;min-width:0;height:100vh;display:flex;overflow:hidden}.editor-topbar{border-bottom:1px solid var(--line);z-index:10;background:#fff;align-items:center;gap:10px;min-height:58px;padding:8px 12px;display:flex}.editor-title{gap:1px;min-width:180px;max-width:420px;margin-right:auto;display:grid}.editor-title input{width:100%;min-width:0;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:3px;outline:none;padding:2px 4px;font-size:15px;font-weight:900}.editor-title input:hover,.editor-title input:focus{border-color:var(--field-border);background:#fff}.editor-title span{color:var(--muted);padding-left:5px;font-size:11px}.toolbar-group{align-items:center;gap:4px;display:flex}.toolbar-divider{background:var(--line);width:1px;height:28px;margin:0 3px}.save-indicator{min-width:82px;color:var(--muted);justify-content:flex-end;align-items:center;gap:6px;font-size:11px;font-weight:800;display:inline-flex}.save-indicator.ok{color:var(--green)}.save-indicator.error{color:var(--red)}.status-dot{background:currentColor;border-radius:50%;width:7px;height:7px}.status-dot.pulse{animation:1s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.28}}.editor-layout{flex:1;grid-template-columns:286px minmax(420px,1fr) 316px;gap:0;min-height:0;transition:grid-template-columns .16s;display:grid;position:relative}.editor-layout.left-collapsed{grid-template-columns:46px minmax(420px,1fr) 316px}.editor-layout.right-collapsed{grid-template-columns:286px minmax(420px,1fr) 46px}.editor-layout.left-collapsed.right-collapsed{grid-template-columns:46px minmax(420px,1fr) 46px}.mobile-panel-button{display:none}.editor-panel{z-index:5;background:#fff;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.editor-panel.left{border-right:1px solid var(--line)}.editor-panel.right{border-left:1px solid var(--line)}.panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;min-height:52px;padding:10px 12px;display:flex}.panel-heading p{color:var(--accent);text-transform:uppercase;margin:0;font-size:10px;font-weight:900}.panel-heading h2{margin:1px 0 0;font-size:15px}.panel-scroll{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.panel-section{border-bottom:1px solid var(--line);padding:12px}.panel-section-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px;display:flex}.panel-section-heading h3{text-transform:uppercase;margin:0;font-size:12px}.panel-section-heading span{color:var(--muted);font-size:11px}.panel-rail{width:100%;height:100%;color:var(--accent);cursor:pointer;background:#fff;border:0;grid-template-rows:auto 1fr;place-items:center;gap:10px;padding:10px 7px;display:grid}.panel-rail:hover{background:var(--accent-soft)}.panel-rail span{writing-mode:vertical-rl;text-transform:uppercase;font-size:11px;font-weight:900}.lane-list,.node-list{gap:6px;display:grid}.lane-row,.node-row{width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);cursor:pointer;text-align:left;background:#faf9f8;border-radius:4px;align-items:center;gap:7px;padding:7px;display:grid}.lane-row{grid-template-columns:18px minmax(0,1fr) auto}.node-row{grid-template-columns:25px minmax(0,1fr)}.lane-row:hover,.node-row:hover,.lane-row.active,.node-row.active{border-color:var(--accent);background:#fff}.lane-row.active,.node-row.active{box-shadow:inset 3px 0 0 var(--accent)}.lane-swatch{border-radius:3px;width:14px;height:14px;box-shadow:inset 0 0 0 1px #0000001f}.lane-row strong,.node-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.lane-actions{gap:2px;display:flex}.lane-actions button{width:25px;height:25px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:3px;place-items:center;padding:0;display:grid}.lane-actions button:hover{color:var(--accent);background:var(--accent-soft)}.node-type-icon{width:25px;height:25px;color:var(--accent);background:var(--accent-soft);border-radius:4px;place-items:center;display:grid}.shape-palette{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.shape-button{min-height:62px;color:var(--ink);border:1px solid var(--line);cursor:pointer;text-align:left;background:#faf9f8;border-radius:4px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:7px;padding:8px;display:grid}.shape-button:hover{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.shape-button span{font-size:11px;font-weight:800}.editor-canvas-column{background:#d9d7d5;flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.canvas-toolbar{border-bottom:1px solid var(--line);z-index:4;background:#fffffff5;justify-content:space-between;align-items:center;gap:8px;min-height:46px;padding:6px 10px;display:flex;box-shadow:0 2px 8px #0000000f}.canvas-toolbar-group{align-items:center;gap:4px;display:flex}.zoom-readout{min-width:54px;color:var(--muted);text-align:center;font-size:11px;font-weight:900}.canvas-stage{overscroll-behavior:contain;touch-action:none;-webkit-user-select:none;user-select:none;cursor:default;background-color:#e8e6e4;background-image:linear-gradient(#ffffff6b,#ffffff6b),radial-gradient(#aaa6a3 1px,#0000 1px);background-size:auto,18px 18px;flex:1;min-height:0;position:relative;overflow:hidden}.canvas-stage.pan-mode,.canvas-stage.panning{cursor:grab}.canvas-stage.panning{cursor:grabbing}.svg-host{background:0 0;position:absolute;inset:0}.svg-host svg{-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.svg-host .diagram-node{cursor:move}.svg-host .diagram-node:hover .node-outline,.svg-host .diagram-node.selected .node-outline{stroke:var(--accent);stroke-width:3px}.svg-host .diagram-edge{cursor:pointer;pointer-events:stroke}.svg-host .diagram-edge:hover,.svg-host .diagram-edge.selected{stroke:var(--accent);stroke-width:4px}.svg-host .diagram-lane-header{cursor:pointer}.svg-host .diagram-port{cursor:crosshair;opacity:0;transition:opacity .1s}.svg-host .diagram-node:hover .diagram-port,.svg-host .diagram-node.selected .diagram-port,.connect-mode .svg-host .diagram-port{opacity:1}.canvas-help{z-index:3;color:#323130;border:1px solid var(--line);box-shadow:var(--shadow-xs);background:#ffffffeb;border-radius:5px;align-items:center;gap:7px;padding:7px 9px;font-size:11px;display:flex;position:absolute;bottom:12px;left:12px}.connect-banner{z-index:4;color:var(--accent);border:1px solid var(--accent);background:#fff;border-radius:6px;align-items:center;gap:8px;padding:8px 11px;font-weight:800;display:flex;position:absolute;top:60px;left:50%;transform:translate(-50%);box-shadow:0 8px 22px #5c1f5c29}.inspector-empty{min-height:180px;color:var(--muted);text-align:center;align-content:center;justify-items:center;gap:8px;padding:20px;display:grid}.inspector-empty span{width:44px;height:44px;color:var(--accent);background:var(--accent-soft);border-radius:50%;place-items:center;display:grid}.inspector-form{gap:11px;display:grid}.type-pill{width:max-content;min-height:26px;color:var(--accent);background:var(--accent-soft);border-radius:999px;align-items:center;gap:6px;padding:0 9px;font-size:11px;font-weight:900;display:inline-flex}.inspector-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.info-box,.warning-box,.error-box,.success-box{border-radius:5px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;padding:10px 12px;font-size:12px;line-height:1.45;display:grid}.info-box{color:#3f3833;background:#f5f0e9;border:1px solid #ded5cc;border-left:4px solid #8a7b6d}.warning-box{color:#6b4a00;background:#fff8e1;border:1px solid #f0d98c}.error-box{color:#8a321d;background:#fff0ec;border:1px solid #f2c7b8}.success-box{color:var(--green);background:#e8f3ed;border:1px solid #b9e4c8}.info-box strong,.warning-box strong,.error-box strong,.success-box strong{color:var(--ink);display:block}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#24212470;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.modal-dialog{border:1px solid var(--line);max-height:calc(100vh - 44px);box-shadow:var(--shadow-lg);background:#fff;border-radius:9px;flex-direction:column;display:flex;overflow:hidden}.modal-dialog.small{width:min(100%,430px)}.modal-dialog.medium{width:min(100%,620px)}.modal-dialog.large{width:min(100%,860px)}.modal-dialog.wide{width:min(100%,1180px)}.modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;min-height:70px;padding:17px 18px;display:flex}.modal-header p{color:var(--accent);text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:900}.modal-header h2{margin:0;font-size:21px}.modal-content{flex:1;min-height:0;padding:18px;overflow-y:auto}.modal-footer{border-top:1px solid var(--line);background:#faf9f8;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;padding:13px 18px;display:flex}.dialog-grid{gap:13px;display:grid}.export-layout{grid-template-columns:310px minmax(0,1fr);gap:16px;min-height:460px;display:grid}.export-settings{align-content:start;gap:13px;display:grid}.segmented{grid-auto-columns:1fr;grid-auto-flow:column;display:grid}.segmented button{min-height:36px;color:var(--muted);border:1px solid var(--line);cursor:pointer;background:#fff;font-size:12px;font-weight:800}.segmented button:first-child{border-radius:4px 0 0 4px}.segmented button:last-child{border-radius:0 4px 4px 0}.segmented button+button{margin-left:-1px}.segmented button.active{color:#fff;background:var(--accent);border-color:var(--accent);z-index:1;position:relative}.pdf-preview{border:1px solid var(--line);background:#edebe9;border-radius:6px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-content:start;gap:12px;min-width:0;max-height:580px;padding:14px;display:grid;overflow:auto}.pdf-page{aspect-ratio:var(--page-ratio,.707);background:#fff;place-items:center;padding:8px;display:grid;position:relative;box-shadow:0 3px 12px #00000026}.pdf-page svg{width:100%;height:100%}.pdf-page-number{color:var(--muted);font-size:9px;position:absolute;bottom:4px;right:5px}.ai-layout{grid-template-columns:minmax(0,1fr) 300px;gap:16px;display:grid}.ai-input-card,.ai-guide{border:1px solid var(--line);background:#fff;border-radius:7px;align-content:start;gap:12px;padding:16px;display:grid}.ai-input-card textarea{min-height:220px}.ai-guide{background:#faf9f8}.ai-guide h2{margin:0;font-size:16px}.ai-guide ol{color:var(--muted);gap:10px;margin:0;padding-left:20px;display:grid}.file-drop{min-height:104px;color:var(--muted);border:1px dashed var(--field-border);cursor:pointer;text-align:center;background:#faf9f8;border-radius:6px;place-items:center;gap:6px;padding:14px;display:grid}.file-drop:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.file-drop input{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute}.spin{animation:.85s linear infinite spin}.settings-page{padding-bottom:36px}.settings-security-banner{color:#214232;box-shadow:var(--shadow-xs);background:linear-gradient(105deg,#e8f3ed,#f7fbf9 68%,#f4e7f6);border:1px solid #b9e4c8;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:22px;padding:16px 18px;display:grid}.settings-security-banner>span{width:44px;height:44px;color:var(--green);background:#fff;border:1px solid #cce7d6;border-radius:50%;place-items:center;display:grid}.settings-security-banner>svg{color:var(--accent);opacity:.72}.settings-security-banner strong{color:var(--ink);margin-bottom:3px;font-size:15px;display:block}.settings-security-banner p{margin:0;line-height:1.48}.settings-loading{min-height:180px;color:var(--muted);border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:14px;display:flex}.settings-loading>div:last-child{gap:3px;display:grid}.settings-loading strong{color:var(--ink)}.settings-load-error{margin-bottom:18px}.settings-load-error>div{justify-items:start;gap:7px;display:grid}.settings-section{margin-top:25px}.settings-section-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:12px;display:flex}.settings-section-heading p{color:var(--accent);text-transform:uppercase;margin:0 0 3px;font-size:11px;font-weight:900}.settings-section-heading h2{margin:0;font-size:21px}.settings-section-heading span{color:var(--muted);margin-top:4px;display:block}.settings-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:15px;display:grid}.settings-provider-card,.settings-preference-card{border:1px solid var(--line);min-width:0;box-shadow:var(--shadow-xs);background:#fff;border-radius:8px;align-content:start;gap:14px;padding:18px;display:grid}.settings-provider-card.deepseek{border-top:4px solid #b26a00;padding-top:15px}.settings-provider-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:11px;min-width:0;display:grid}.settings-provider-heading>div,.settings-preference-card>header>div{min-width:0}.settings-provider-heading p,.settings-preference-card>header p{color:var(--accent);text-transform:uppercase;margin:0 0 2px;font-size:10px;font-weight:900}.settings-provider-heading h2,.settings-preference-card>header h2{margin:0;font-size:18px}.settings-provider-heading div>span,.settings-preference-card>header div>span{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.42;display:block}.settings-provider-icon{width:44px;height:44px;color:var(--accent);background:var(--accent-soft);border-radius:7px;flex:none;place-items:center;display:grid}.deepseek .settings-provider-icon{color:#8a5a0a;background:#fff4d6}.connection-badge{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;min-height:26px;padding:0 8px;font-size:10px;font-weight:900;display:inline-flex}.connection-badge.configured{color:var(--green);background:#e8f3ed}.connection-badge.missing{color:var(--muted);background:#f3f2f1}.deepseek-warning{color:#694500;background:#fff8e1;border:1px solid #e9c767;border-left:5px solid #b26a00;border-radius:5px;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px;display:grid}.deepseek-warning>svg{margin-top:1px}.deepseek-warning div{gap:3px;display:grid}.deepseek-warning strong{color:#493100}.deepseek-warning span{font-size:12px;line-height:1.45}.settings-key-summary{border:1px solid var(--line);background:#faf9f8;border-radius:6px;gap:4px;padding:12px;display:grid}.settings-key-summary>span{color:var(--muted);text-transform:uppercase;align-items:center;gap:7px;font-size:11px;font-weight:900;display:flex}.settings-key-summary strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:14px;overflow:hidden}.settings-key-summary small{color:var(--muted);line-height:1.4}.settings-key-editor{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.settings-key-editor .field>label{color:var(--ink);font-size:12px;font-weight:800;display:block}.password-field{position:relative;display:block!important}.password-field input{padding-right:44px}.password-toggle{width:36px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:3px;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:3px;transform:translateY(-50%)}.password-toggle:hover{color:var(--accent);background:var(--accent-soft)}.connection-test-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.connection-test-copy{gap:2px;min-width:0;display:grid}.connection-test-copy>span{color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:900;display:flex}.connection-test-copy>span.test-ok{color:var(--green)}.connection-test-copy>span.test-error{color:var(--red)}.connection-test-copy small{color:var(--muted);text-overflow:ellipsis;font-size:11px;line-height:1.35;overflow:hidden}.settings-remove-button{color:var(--red);cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;gap:6px;padding:3px 0;font-size:11px;font-weight:800;display:inline-flex}.settings-remove-button:hover{text-decoration:underline}.remove-confirmation{color:#6d2d20;background:#fff0ec;border:1px solid #f2c7b8;border-radius:6px;gap:10px;padding:12px;display:grid}.remove-confirmation>div{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;display:grid}.remove-confirmation>div>span{gap:2px;display:grid}.remove-confirmation small{color:#79564e}.remove-confirmation-actions{justify-content:flex-end;gap:7px;display:flex}.settings-notice-slot{min-height:38px}.settings-notice-slot .compact{padding-block:8px}.settings-preference-card{gap:16px}.settings-preference-card>header{grid-template-columns:auto minmax(0,1fr);gap:11px;display:grid}.settings-preference-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;display:grid}.deepseek-preference-note{color:#694500;background:#fff8e1;border:1px solid #e9c767;border-radius:5px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;padding:10px 12px;display:grid}.deepseek-preference-note span{gap:2px;display:grid}.settings-preference-actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:13px;display:flex}.settings-privacy-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.settings-privacy-grid article{color:var(--muted);border:1px solid var(--line);background:#faf9f8;border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;padding:13px;display:grid}.settings-privacy-grid article>span{width:34px;height:34px;color:var(--accent);background:var(--accent-soft);border-radius:5px;place-items:center;display:grid}.settings-privacy-grid strong{color:var(--ink);margin-bottom:3px;display:block}.settings-privacy-grid p{margin:0;font-size:11px;line-height:1.42}.ai-missing-connection>div,.ai-input-card>.success-box>div{justify-items:start;gap:4px;display:grid}.ai-missing-connection .secondary-button,.ai-input-card>.success-box .ghost-button{margin-top:4px}.deepseek-consent{color:#694500;cursor:pointer;background:#fff8e1;border:1px solid #e9c767;border-radius:6px;padding:12px;display:block}.deepseek-consent.checked{background:#fff3c9;border-color:#b26a00}.deepseek-consent>input{opacity:0;width:1px;height:1px;position:absolute}.deepseek-consent>span{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;display:grid}.deepseek-consent>span>span{gap:3px;display:grid}.deepseek-consent small{line-height:1.42}.deepseek-consent input:focus-visible+span{outline-offset:4px;border-radius:3px;outline:3px solid #b26a0040}.toast-region{z-index:120;pointer-events:none;gap:8px;display:grid;position:fixed;bottom:18px;right:18px}.toast{color:#fff;pointer-events:auto;background:#323130;border-radius:6px;grid-template-columns:auto 1fr;gap:9px;min-width:260px;max-width:min(420px,100vw - 36px);padding:11px 13px;display:grid;box-shadow:0 12px 28px #0003}.toast.error{background:#8a321d}.toast.success{background:#0f6c3f}@media (width<=1180px){.metric-grid,.onboarding-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-layout{grid-template-columns:250px minmax(380px,1fr) 286px}.editor-layout.left-collapsed{grid-template-columns:46px minmax(380px,1fr) 286px}.editor-layout.right-collapsed{grid-template-columns:250px minmax(380px,1fr) 46px}.editor-layout.left-collapsed.right-collapsed{grid-template-columns:46px minmax(380px,1fr) 46px}.toolbar-group.optional{display:none}.settings-provider-grid{grid-template-columns:1fr}.settings-preference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-preference-grid .field:last-child{grid-column:1/-1}}@media (width<=820px){.app-shell{grid-template-columns:1fr}.app-sidebar{border-right:0;border-bottom:1px solid var(--line);width:auto;height:auto;min-height:auto;position:static;overflow:visible}.sidebar-notch,.sidebar-help,.account-panel{display:none}.brand-block{min-height:62px}.sidebar-collapsed .brand-block{justify-content:flex-start;padding-inline:18px}.sidebar-collapsed .brand-copy,.sidebar-collapsed .nav-item span{opacity:1;pointer-events:auto;width:auto;overflow:visible}.nav-list{grid-auto-columns:minmax(122px,1fr);grid-auto-flow:column;padding:8px;overflow-x:auto}.sidebar-collapsed .nav-item,.nav-item{justify-content:center;gap:8px;padding-inline:9px}.page{width:auto;margin:18px 14px}.page-heading{flex-direction:column}.heading-actions{justify-content:flex-start}.dashboard-hero{flex-direction:column;align-items:flex-start;min-height:250px}.dashboard-grid,.ai-layout,.export-layout,.settings-preference-grid,.settings-privacy-grid{grid-template-columns:1fr}.settings-preference-grid .field:last-child{grid-column:auto}.onboarding-steps{grid-template-columns:1fr}.editor-workspace{height:100vh;min-height:620px}.editor-topbar{overflow-x:auto}.editor-title{min-width:210px}.editor-layout,.editor-layout.left-collapsed,.editor-layout.right-collapsed,.editor-layout.left-collapsed.right-collapsed{grid-template-columns:1fr}.editor-panel{z-index:20;width:min(88vw,340px);position:absolute;top:0;bottom:0;box-shadow:0 12px 34px #0003}.editor-panel.left{left:0}.editor-panel.right{right:0}.editor-layout.left-collapsed .editor-panel.left,.editor-layout.right-collapsed .editor-panel.right{display:none}.editor-canvas-column{grid-column:1}.canvas-toolbar{overflow-x:auto}.mobile-panel-button{display:inline-flex!important}}@media (width<=560px){body{font-size:13px}.metric-grid,.field-row,.library-grid,.template-grid,.new-grid{grid-template-columns:1fr}.dashboard-hero{padding:22px}.shape-palette{grid-template-columns:1fr}.modal-backdrop{padding:8px}.modal-dialog{max-height:calc(100vh - 16px)}.modal-content{padding:14px}.pdf-preview{grid-template-columns:1fr}.canvas-help{display:none}.settings-security-banner{grid-template-columns:auto minmax(0,1fr)}.settings-security-banner>svg{display:none}.settings-provider-heading{grid-template-columns:auto minmax(0,1fr)}.connection-badge{grid-column:2;justify-self:start}.settings-key-editor{grid-template-columns:1fr}.settings-key-editor>.primary-button{width:100%;min-height:44px}.connection-test-row{flex-direction:column;align-items:stretch}.connection-test-row>.secondary-button{min-height:44px}.settings-preference-actions{grid-template-columns:1fr;display:grid}.settings-preference-actions button{min-height:44px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.app-sidebar,.sidebar-notch,.editor-topbar,.editor-panel,.canvas-toolbar,.canvas-help,.connect-banner{display:none!important}.app-shell,.editor-layout,.editor-workspace,.editor-canvas-column,.canvas-stage{background:#fff;width:100%;height:auto;min-height:0;display:block}.svg-host{position:static}.svg-host svg{width:100%;height:auto}}
