:root{--accent:#6d5ff5;--accent-bg:#6d5ff51f;--accent-border:#1a1a22;--accent-soft-green:#cff5a1;--accent-soft-purple:#c5b5ff;--bg:#f5f4f0;--border:#d9d7d1;--border-strong:#1a1a22;--button-bg:#fff;--chip-bg:#6d5ff51a;--input-bg:#fff;--panel:#fff;--shadow:4px 4px 0 #1412200f, 0 1px 2px #1412200d;--shadow-hard:4px 4px 0 #1a1a22;--surface:#fff;--surface-muted:#f3f2ee;--surface-strong:#fff;--text:#4a4655;--text-h:#14121e;--text-soft:#706c7a;color:var(--text);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box;scrollbar-color:var(--border) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);background-clip:padding-box;border:2px solid #0000;border-radius:999px;transition:background-color .16s}::-webkit-scrollbar-thumb:hover{background:var(--text-soft);background-clip:padding-box}::-webkit-scrollbar-button{width:0;height:0;display:none}::-webkit-scrollbar-corner{background:0 0}body{background:var(--bg);color:var(--text);min-width:320px;margin:0}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--text-h);letter-spacing:-.04em;line-height:1.05}h1{font-size:clamp(44px,7vw,86px)}h2{font-size:24px}h3{font-size:18px}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:3px solid var(--accent-bg);outline-offset:2px}input::placeholder,textarea::placeholder{color:var(--text-soft);opacity:1}:root[data-theme=dark]{--accent:#c4b5fd;--accent-bg:#c4b5fd2e;--accent-border:#f8f7fb;--accent-soft-green:#a7d97a;--accent-soft-purple:#b4a1ff;--bg:#13111b;--border:#2c2838;--border-strong:#f8f7fb;--button-bg:#1f1a2b;--chip-bg:#c4b5fd24;--input-bg:#1a1626;--panel:#1f1a2b;--shadow:4px 4px 0 #00000059, 0 1px 2px #0000004d;--shadow-hard:4px 4px 0 #000;--surface:#1f1a2b;--surface-muted:#262135;--surface-strong:#231e31;--text:#ddd6e8;--text-h:#f8f7fb;--text-soft:#a89fbb;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-contrast:more){:root{--border:#ffffff3d;--button-bg:#ffffff2e;--chip-bg:#c4b5fd38;--surface:#14101dfa;--surface-muted:#241e31f5;--surface-strong:#191423;--text:#eee9f7;--text-soft:#ddd6e8}}.app-shell{min-height:100svh;padding:24px}.space-home{gap:28px;max-width:1440px;min-height:100svh;margin:0 auto;padding:32px 24px;display:grid}.space-home-header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.space-home-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.space-home-header h1{letter-spacing:-.06em;font-size:clamp(42px,7vw,84px)}.space-home-header p,.space-empty p,.space-updated{color:var(--text-soft)}.space-grid{grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(4,1fr);justify-content:start;gap:18px;display:grid}.space-card{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);cursor:pointer;border-radius:22px;flex-direction:column;transition:border-color .16s,transform .16s,box-shadow .16s;display:flex;overflow:hidden}.space-card:hover,.space-card:focus-within{border-color:var(--accent-border);transform:translateY(-2px)}.space-card:focus-visible{outline:2px solid var(--accent-border);outline-offset:-2px}.space-card-main{text-align:left;flex-direction:column;flex:1;gap:10px;width:100%;padding:16px 18px 14px;display:flex}.space-card-heading{flex-direction:column;gap:4px;display:flex}.space-card-eyebrow{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:800}.space-card-title{-webkit-line-clamp:1;line-clamp:1;overflow-wrap:anywhere;word-break:break-word;-webkit-box-orient:vertical;margin:0;font-size:20px;font-weight:700;line-height:1.2;display:-webkit-box;overflow:hidden}.space-card-description{color:var(--text-soft);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;min-height:2.9em;margin:0;font-size:13px;line-height:1.45;display:-webkit-box;overflow:hidden}.space-card-description.is-empty{color:var(--text-soft);opacity:.7;font-style:italic}.space-card-meta{color:var(--text-soft);flex-wrap:wrap;align-items:center;gap:12px;margin-top:auto;font-size:12px;display:flex}.space-card-stat{align-items:baseline;gap:4px;display:inline-flex}.space-card-stat b{color:var(--text-h);font-size:14px;font-weight:700}.space-card-meta-spacer{flex:1}.space-updated{color:var(--text-soft);font-size:12px}.space-actions{border-top:1px solid var(--border);justify-content:flex-end;align-items:center;gap:8px;padding:10px 14px;display:flex}.space-action-button{padding:6px 14px;font-size:13px;font-weight:600}.space-empty{background:var(--panel);border:1px dashed var(--border);box-shadow:var(--shadow);border-radius:34px;align-self:center;justify-items:start;gap:12px;max-width:620px;margin:8vh auto 0;padding:42px;display:grid}.space-empty h2{font-size:clamp(34px,5vw,58px)}.top-bar{z-index:2;justify-content:space-between;align-items:flex-start;gap:20px;max-width:1440px;margin:0 auto;display:flex;position:relative}.top-bar-copy{gap:8px;min-width:0;display:grid}.top-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.theme-toggle{background:var(--surface-muted);border:1px solid var(--border);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.theme-toggle-option{color:var(--text-soft);background:0 0;border:1px solid #0000;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s,transform .16s}.theme-toggle-option:hover:not(:disabled),.theme-toggle-option:focus-visible{box-shadow:none;color:var(--text-h);background:0 0;border-color:#0000;transform:none}.theme-toggle-option.is-active{background:var(--panel);border-color:var(--border);color:var(--text-h)}.breadcrumbs{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.breadcrumbs span{align-items:center;gap:8px;display:inline-flex}.breadcrumbs b{color:var(--text-soft);font-weight:500}.breadcrumbs button{color:var(--text-h);letter-spacing:-.05em;background:0 0;border:0;padding:0;font-size:clamp(24px,4vw,44px)}.notice-line{color:var(--text-soft);font-size:14px}.eyebrow{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:800}button{background:var(--button-bg);border:1px solid var(--border);color:var(--text-h);cursor:pointer;font:inherit;border-radius:999px;padding:10px 15px;font-size:14px;font-weight:750;transition:background-color .16s,border-color .16s,box-shadow .16s,transform .16s}button:hover:not(:disabled){border-color:var(--accent-border);box-shadow:var(--shadow);transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.55}.primary-button,.round-add-button{background:var(--text-h);border-color:var(--text-h);color:var(--panel)}.primary-button:hover:not(:disabled),.round-add-button:hover:not(:disabled){background:#000;border-color:#000}.round-add-button{place-items:center;width:46px;height:46px;padding:0;font-size:26px;line-height:1;display:grid}.ghost-button{background:0 0}.ghost-button:disabled,.ghost-button[aria-disabled=true]{border-color:var(--border);color:var(--text-soft);cursor:not-allowed;opacity:.55;background:0 0;transform:none}.ghost-button:disabled:hover,.ghost-button:disabled:focus-visible{border-color:var(--border);box-shadow:none;background:0 0;transform:none}.undo-redo-group{align-items:center;gap:4px;display:inline-flex}.settings-modal{background:var(--surface);border:1px solid var(--border);border-radius:28px;width:min(640px,100%);max-width:640px;max-height:calc(100svh - 48px);padding:28px;animation:.18s ease-out modal-pop;position:relative;overflow:auto;box-shadow:0 30px 90px #16122047}.settings-modal-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.settings-modal-header h2{letter-spacing:-.03em;margin:4px 0 0;font-size:28px}.settings-section{border-top:1px solid var(--border);gap:14px;padding-top:18px;display:grid}.settings-section h3{margin:0;font-size:16px;font-weight:750}.settings-section-hint{color:var(--text-soft);margin:0;font-size:13px}.settings-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.settings-row-label{gap:4px;min-width:180px;display:grid}.settings-row-title{color:var(--text-h);font-size:14px;font-weight:750}.settings-row-description{color:var(--text-soft);font-size:13px}.settings-row-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.settings-shortcut-chip{background:var(--surface-muted);border:1px solid var(--border);color:var(--text-h);border-radius:10px;align-items:center;min-width:96px;padding:8px 12px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.settings-shortcut-chip.is-recording,.ghost-button.is-active{background:var(--accent-bg);border-color:var(--accent-border);color:var(--text-h)}.space-form-modal{background:var(--surface);border:1px solid var(--border);border-radius:28px;width:min(560px,100%);max-width:560px;max-height:calc(100svh - 48px);padding:28px;animation:.18s ease-out modal-pop;position:relative;overflow:auto;box-shadow:0 30px 90px #16122047}.space-form-modal-header{gap:6px;margin-bottom:20px;display:grid}.space-form-modal-header h2{letter-spacing:-.03em;margin:2px 0 0;font-size:30px}.space-form-modal-hint{color:var(--text-soft);margin:0;font-size:14px}.space-form{gap:18px;display:grid}.space-form-input,.space-form-textarea{background:var(--surface-muted);border:1px solid var(--border);color:var(--text-h);font:inherit;border-radius:14px;width:100%;padding:12px 14px;font-size:15px;transition:border-color .14s,box-shadow .14s}.space-form-input:focus,.space-form-textarea:focus{border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-bg);outline:none}.space-form-textarea{resize:vertical;min-height:96px;line-height:1.4}.space-form-optional{color:var(--text-soft);font-style:normal;font-weight:500}.space-form-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:4px;display:flex}.primary-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.primary-button:disabled:hover{background:var(--text-h);border-color:var(--text-h)}.danger-button{color:#b42318}.icon-button{place-items:center;width:42px;height:42px;padding:0;display:grid}.canvas-view{max-width:1440px;min-height:calc(100svh - 150px);margin:42px auto 0}.canvas-view-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.canvas-view-actions{flex-wrap:wrap;gap:10px;display:flex}.blank-canvas{border:1px dashed var(--border);color:var(--text-soft);text-align:center;border-radius:36px;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:calc(100svh - 210px);padding:36px;display:flex}.blank-canvas h2{font-size:clamp(38px,8vw,96px)}.canvas-grid{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex}.canvas-grid.is-reordering .canvas-card{cursor:grabbing}.canvas-add-tile{border:2px dashed var(--border);color:var(--text-soft);cursor:pointer;font:inherit;background:0 0;border-radius:28px;flex-direction:column;flex:0 0 280px;justify-content:center;align-items:center;gap:10px;max-width:100%;min-height:260px;padding:18px;transition:background-color .16s,border-color .16s,color .16s,transform .16s;display:flex}.canvas-add-tile:hover,.canvas-add-tile:focus-visible{background:var(--surface-muted);border-color:var(--accent-border);color:var(--text-h);outline:none;transform:translateY(-2px)}.canvas-add-tile-plus{background:var(--surface-muted);border:1px solid var(--border);color:var(--text-h);border-radius:999px;place-items:center;width:56px;height:56px;font-size:32px;font-weight:600;line-height:1;display:grid}.canvas-add-tile:hover .canvas-add-tile-plus,.canvas-add-tile:focus-visible .canvas-add-tile-plus{background:var(--panel);border-color:var(--accent-border)}.canvas-add-tile-label{font-size:17px;font-weight:700}.canvas-add-tile-shortcut{color:var(--text-soft);font-size:12px}.canvas-add-tile-shortcut kbd,.canvas-shortcut-hint kbd{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;padding:2px 8px;font-family:inherit;font-size:12px}.canvas-shortcut-hint{color:var(--text-soft);margin-top:6px;font-size:13px}.canvas-card{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);cursor:pointer;border-radius:28px;flex:none;grid-template-rows:auto auto 1fr auto;gap:12px;width:min(100%,300px);max-width:100%;min-height:260px;padding:18px;transition:border-color .18s,height .18s,width .18s,transform .18s;display:grid;position:relative;overflow:hidden}.canvas-card.is-drop-before,.canvas-card.is-drop-after{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-border), var(--shadow)}.canvas-card.is-drop-before:before,.canvas-card.is-drop-after:after{background:var(--accent);content:"";z-index:6;border-radius:999px;width:4px;position:absolute;top:14px;bottom:14px}.canvas-card.is-drop-before:before{left:-10px}.canvas-card.is-drop-after:after{right:-10px}.canvas-card:hover{border-color:var(--accent-border);transform:translateY(-2px)}.canvas-card.is-resizable:hover{transform:none}.canvas-card:focus-visible{border-color:var(--accent-border);outline:3px solid var(--accent-border);outline-offset:2px}.canvas-card.collapsed{grid-template-rows:auto auto;min-height:0}.canvas-card-content{gap:12px;min-height:0;padding-right:4px;display:grid;overflow:auto}.canvas-card.complete{background:linear-gradient(135deg, #22c55e38, #14b8a61f), var(--panel)}.canvas-card.is-resizable{padding-bottom:28px;padding-right:28px}.canvas-card-resize-handle{background:var(--accent);border:2px solid var(--panel);opacity:0;pointer-events:none;z-index:5;padding:0;transition:background-color .12s,border-color .12s,opacity .12s;position:absolute;box-shadow:0 6px 18px #14101d33}.canvas-card.is-resizable:hover .canvas-card-resize-handle,.canvas-card.is-resizable:focus-within .canvas-card-resize-handle,.canvas-card.is-resizing .canvas-card-resize-handle{opacity:.88;pointer-events:auto}.canvas-card-resize-handle:hover,.canvas-card-resize-handle:focus-visible{background:var(--text-h);opacity:1;transform:none;box-shadow:0 6px 18px #14101d33}.canvas-card-resize-horizontal{cursor:ew-resize;border-radius:999px;width:12px;height:54px;top:calc(50% - 27px);right:8px;transform:none}.canvas-card-resize-horizontal:hover,.canvas-card-resize-horizontal:focus-visible{transform:none}.canvas-card-resize-horizontal:before{content:"";background:#ffffffe6;border-radius:999px;width:2px;height:30px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.canvas-card-resize-vertical{cursor:ns-resize;border-radius:999px;width:54px;height:12px;bottom:8px;left:calc(50% - 27px);transform:none}.canvas-card-resize-vertical:hover,.canvas-card-resize-vertical:focus-visible{transform:none}.canvas-card-resize-vertical:before{content:"";background:#ffffffe6;border-radius:999px;width:30px;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.canvas-card-header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.canvas-card-heading{margin:0;font-size:20px;line-height:1.25}.card-collapse-toggle{background:var(--surface-muted);border:1px solid var(--border);border-radius:999px;flex:none;width:30px;height:30px;padding:0;font-size:18px;line-height:1}.canvas-card-details{text-align:left;gap:10px;width:100%;display:grid}.canvas-card-details p{color:var(--text);-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.canvas-card-previews{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.canvas-card-previews.is-single,.canvas-card-previews.preview-flow-vertical,.global-card-node-previews.preview-flow-vertical{grid-template-columns:1fr}.canvas-card-previews.preview-flow-horizontal,.global-card-node-previews.preview-flow-horizontal{grid-template-columns:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column}.canvas-card-previews.preview-flow-mosaic,.global-card-node-previews.preview-flow-mosaic{grid-template-columns:repeat(2,minmax(0,1fr))}.canvas-card-preview{aspect-ratio:16/9;background:var(--surface-muted);border:1px solid var(--border);border-radius:14px;position:relative;overflow:hidden}.canvas-card-preview img,.canvas-card-preview .sketch-thumb-svg{object-fit:cover;width:100%;height:100%;display:block}.canvas-card-preview-more{color:var(--text-soft);justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.canvas-card-previews.preview-flow-vertical .canvas-card-preview,.global-card-node-previews.preview-flow-vertical .global-card-node-preview{aspect-ratio:16/9}.canvas-card-previews.preview-flow-horizontal .canvas-card-preview,.global-card-node-previews.preview-flow-horizontal .global-card-node-preview{aspect-ratio:4/3}.card-pill-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.status-pill,.urgency-pill,.estimate-pill,.checklist-pill,.file-pill,.tag-pill,.card-facts span{white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:750}.status-pill{background:var(--surface-muted);color:var(--text-h)}.status-pill.active{color:#1d4ed8;background:#dbeafe}.status-pill.blocked{color:#b42318;background:#fee2e2}.status-pill.done{color:#15803d;background:#dcfce7}.urgency-pill{color:#92400e;background:#facc1533}.urgency-pill.low{color:#334155;background:#94a3b83d}.urgency-pill.medium{color:#92400e;background:#facc1538}.urgency-pill.high{color:#9a3412;background:#f973163d}.urgency-pill.critical{color:#991b1b;background:#ef44443d}.estimate-pill{background:var(--chip-bg);color:var(--accent)}.checklist-pill{background:var(--surface-muted);color:var(--text-soft)}.checklist-pill.is-complete{color:#15803d;background:#dcfce7}.file-pill{color:var(--accent);background:#6d5ff51f}.tag-pill{background:var(--chip-bg);color:var(--accent)}.tag-pill.more{background:var(--surface-muted);color:var(--text-soft)}.card-facts{flex-wrap:wrap;gap:8px;display:flex}.card-facts span{color:var(--text-soft);background:#ffffff80}.modal-attachment-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.modal-attachment-actions span{color:var(--text-soft);font-size:13px;font-weight:650}.attachment-notice{color:var(--text-soft);margin:-4px 0 0;font-size:13px;font-weight:650}.canvas-card-checklist{border:1px solid var(--border);background:#ffffff85;border-radius:16px;gap:6px;padding:8px;display:grid}.canvas-card-checklist-item{color:var(--text);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;min-width:0;font-size:12px;font-weight:650;display:grid}.canvas-card-checklist-item span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.canvas-card-checklist-item.is-done{color:var(--text-soft);text-decoration:line-through}.canvas-card-checklist-box{background:var(--panel);border:1px solid var(--border);color:#15803d;border-radius:6px;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;font-weight:850;line-height:1;display:inline-flex}.canvas-card-checklist-more{color:var(--text-soft);padding-left:2px;font-size:11px;font-weight:750}.canvas-card-files,.global-card-node-files{gap:6px;display:grid}.canvas-card-file,.global-card-node-file{border:1px solid var(--border);color:inherit;cursor:pointer;font:inherit;text-align:left;background:#ffffff85;border-radius:14px;align-items:center;gap:8px;width:100%;min-width:0;padding:7px 8px;display:flex}.canvas-card-file:hover,.canvas-card-file:focus-visible,.global-card-node-file:hover,.global-card-node-file:focus-visible{background:var(--panel);border-color:var(--accent-border);box-shadow:none;transform:none}.canvas-card-file-icon,.global-card-node-file-icon{background:var(--chip-bg);color:var(--accent);letter-spacing:.02em;border-radius:10px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:10px;font-weight:850;display:inline-flex}.canvas-card-file-main,.global-card-node-file-main{gap:1px;min-width:0;display:grid}.canvas-card-file-name,.global-card-node-file-name{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:750;overflow:hidden}.canvas-card-file-meta,.global-card-node-file-meta,.canvas-card-file-more,.global-card-node-file-more{color:var(--text-soft);font-size:11px;font-weight:700}.canvas-card-file-more,.global-card-node-file-more{padding-left:4px}.mini-canvas-button{border:1px solid var(--border);background:#ffffff6b;border-radius:18px;justify-content:flex-start;align-self:stretch;align-items:center;gap:10px;width:100%;padding:10px 12px;display:flex}.mini-canvas-grid,.modal-mini-canvas{background:var(--surface-muted);border:1px solid var(--border);border-radius:16px;grid-template-columns:repeat(3,1fr);gap:4px;padding:8px;display:grid}.mini-canvas-grid{width:64px;height:48px}.mini-canvas-grid i,.modal-mini-canvas span{background:var(--accent-bg);border-radius:7px;min-height:10px}.modal-backdrop{z-index:10;background:#100d185c;justify-content:center;align-items:center;padding:24px;animation:.14s ease-out fade-in;display:flex;position:fixed;inset:0}.card-modal{background:var(--surface);border:1px solid var(--border);border-radius:34px;width:min(860px,100%);max-width:860px;max-height:calc(100svh - 48px);padding:24px;animation:.18s ease-out modal-pop;position:relative;overflow:auto;box-shadow:0 30px 90px #16122047}.card-modal.is-file-drag-over{border-color:var(--accent-border);box-shadow:0 0 0 4px #6d5ff529,0 30px 90px #16122047}.card-modal::-webkit-scrollbar-thumb{background:var(--border);background-clip:padding-box;border:30px solid #0000;border-inline-width:2px;border-radius:999px}.card-modal::-webkit-scrollbar-thumb:hover{background:var(--text-soft);background-clip:padding-box}.modal-header,.modal-actions,.nested-preview-panel{justify-content:space-between;align-items:center;gap:14px;display:flex}.modal-header{margin-bottom:18px}.modal-title-input{border:0;color:var(--text-h);letter-spacing:-.05em;background:0 0;border-bottom:1px solid #0000;border-radius:0;width:min(620px,100%);margin:0;padding:0 0 4px;font-size:clamp(28px,5vw,52px);font-weight:800}.modal-title-input:focus{border-bottom-color:var(--accent-border);outline:none}.modal-body{gap:16px;display:grid}.modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.modal-grid-tight{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:end}.field{color:var(--text-h);gap:8px;font-size:13px;font-weight:750;display:grid}.toggle-field{color:var(--text-h);white-space:nowrap;align-items:center;gap:10px;font-size:14px;font-weight:700;display:inline-flex}.toggle-field input{accent-color:var(--accent)}input,select,textarea{background:var(--input-bg);border:1px solid var(--border);color:var(--text-h);font:inherit;border-radius:18px;padding:12px 14px;transition:border-color .16s,box-shadow .16s}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--border-strong)}textarea{resize:vertical}select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%2314121e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M1 1.5l5 5 5-5'/></svg>");background-position:right 16px center;background-repeat:no-repeat;background-size:11px;padding-right:40px;font-weight:600}select:focus-visible{border-color:var(--border-strong);box-shadow:var(--shadow-hard);outline:none}select::-ms-expand{display:none}select option{background:var(--panel);color:var(--text-h)}:root[data-theme=dark] select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%23f8f7fb' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M1 1.5l5 5 5-5'/></svg>")}.select-custom{width:100%;position:relative}.select-custom-button{background:var(--input-bg);border:1px solid var(--border);color:var(--text-h);cursor:pointer;font:inherit;text-align:left;border-radius:18px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:12px 16px;font-weight:600;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex}.select-custom-button:hover:not(:disabled){border-color:var(--border-strong);box-shadow:none;transform:none}.select-custom-button:focus-visible,.select-custom-button.is-open{border-color:var(--border-strong);box-shadow:var(--shadow-hard);outline:none}.select-custom-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.select-custom-chevron{color:var(--text-h);flex:none;width:12px;height:10px;transition:transform .16s}.select-custom-button.is-open .select-custom-chevron{transform:rotate(180deg)}.select-custom-list{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-hard);z-index:40;border-radius:16px;gap:2px;max-height:280px;margin:6px 0 0;padding:6px;list-style:none;display:grid;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.select-custom-option{color:var(--text-h);cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-weight:600;transition:background-color .12s;display:flex}.select-custom-option.is-active{background:var(--surface-muted)}.select-custom-option.is-selected{background:var(--accent-bg);color:var(--text-h)}.select-custom-option.is-selected.is-active{background:var(--accent-bg)}.select-custom-option-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.select-custom-option-check{color:var(--accent);flex:none;width:14px;height:14px}.select-custom-button:disabled{cursor:not-allowed;opacity:.55}.token-editor,.dependency-composer{gap:10px;display:grid}.checklist{background:var(--surface-muted);border:1px solid var(--border);border-radius:22px;gap:8px;padding:10px;display:grid}.checklist-item{background:var(--surface);border:1px solid #0000;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px 10px;transition:background-color .14s,border-color .14s;display:grid}.checklist-item:hover,.checklist-item:focus-within{border-color:var(--border)}.checklist-item input[type=checkbox]{accent-color:var(--accent);cursor:pointer;width:18px;height:18px;margin:0}.checklist-item-text{color:var(--text-h);background:0 0;border:0;border-bottom:1px solid #0000;border-radius:0;min-width:0;padding:6px 0;font-weight:650}.checklist-item-text:focus{border-bottom-color:var(--accent-border);box-shadow:none;outline:none}.checklist-item.is-done .checklist-item-text{color:var(--text-soft);text-decoration:line-through}.checklist-remove{border-radius:999px;width:30px;height:30px;padding:0;font-size:13px;line-height:1}.checklist-add{grid-template-columns:1fr auto;gap:8px;display:grid}.checklist-add input{background:var(--input-bg);border-radius:16px;min-width:0}.checklist-add button{border-radius:999px;width:44px;height:44px;padding:0;font-size:18px;font-weight:800}.paste-zone{background:var(--surface-muted);border:1px dashed var(--border);color:var(--text-soft);border-radius:22px;gap:12px;padding:14px;display:grid}.paste-zone p{margin:0}.file-drop-zone{background:var(--surface-muted);border:1px dashed var(--border);color:var(--text-soft);border-radius:22px;gap:12px;padding:14px;display:grid}.file-drop-zone p{margin:0}.file-attachment-list{gap:8px;display:grid}.file-attachment-row{background:var(--surface);border:1px solid var(--border);border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px;display:grid}.file-attachment-icon{background:var(--chip-bg);border:1px solid var(--border);color:var(--accent);letter-spacing:.02em;border-radius:14px;justify-content:center;align-items:center;width:48px;height:42px;font-size:11px;font-weight:850;display:flex}.file-attachment-main{color:var(--text-h);text-align:left;background:0 0;border:0;border-radius:12px;gap:2px;min-width:0;padding:6px 8px;display:grid}.file-attachment-main:hover{background:var(--surface-muted);box-shadow:none;transform:none}.file-attachment-name{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:750;overflow:hidden}.file-attachment-meta{color:var(--text-soft);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650;overflow:hidden}.file-attachment-remove{border-radius:999px;width:32px;height:32px;padding:0;font-size:13px;line-height:1}.screenshot-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.screenshot-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;gap:8px;margin:0;padding:8px;display:grid;overflow:hidden}.screenshot-card img{aspect-ratio:4/3;object-fit:cover;border-radius:12px;width:100%;display:block}.screenshot-thumb{cursor:pointer;background:0 0;border:0;border-radius:12px;width:100%;padding:0;transition:box-shadow .16s,transform .16s;display:block}.screenshot-thumb:hover{box-shadow:0 0 0 2px var(--accent-border);transform:translateY(-1px)}.screenshot-thumb:focus-visible{box-shadow:0 0 0 3px var(--accent-border);outline:none}.screenshot-thumb-placeholder,.screenshot-thumb-missing{background:var(--surface-muted);border:1px dashed var(--border);color:var(--text-soft);border-radius:12px;justify-content:center;align-items:center;width:100%;min-height:110px;font-size:12px;display:flex}.screenshot-thumb-placeholder{background:linear-gradient(100deg, var(--surface-muted) 30%, #6d5ff51f 50%, var(--surface-muted) 70%);background-size:200% 100%;animation:1.6s ease-in-out infinite screenshot-thumb-shimmer}@keyframes screenshot-thumb-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.screenshot-viewer-status{color:var(--text-soft);font-size:14px}.screenshot-remove{padding:8px 10px}.sketch-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;display:grid}.sketch-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;gap:8px;margin:0;padding:8px;display:grid;overflow:hidden}.sketch-thumb{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:12px;width:100%;padding:0;transition:box-shadow .16s,transform .16s;display:block;overflow:hidden}.sketch-thumb:hover{box-shadow:0 0 0 2px var(--accent-border);transform:translateY(-1px)}.sketch-thumb:focus-visible{box-shadow:0 0 0 3px var(--accent-border);outline:none}.sketch-thumb-svg{aspect-ratio:4/3;width:100%;height:auto;display:block}.sketch-thumb-empty{aspect-ratio:4/3;color:var(--text-soft);letter-spacing:.04em;text-transform:uppercase;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.sketch-remove{padding:8px 10px}.sketch-add-tile{aspect-ratio:4/3;border:2px dashed var(--border);color:var(--text-soft);cursor:pointer;text-align:center;background:0 0;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:16px;font-family:inherit;transition:border-color .16s,color .16s,transform .16s;display:flex}.sketch-add-tile:hover{border-color:var(--accent-border);color:var(--text);transform:translateY(-1px)}.sketch-add-plus{font-size:28px;font-weight:700;line-height:1}.sketch-add-label{font-size:14px;font-weight:700}.sketch-add-hint{color:var(--text-soft);font-size:12px}.sketch-modal-backdrop{z-index:30}.sketch-modal{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:24px;grid-template-rows:auto 1fr auto;gap:14px;width:100%;max-width:min(1200px,100vw - 48px);max-height:calc(100vh - 48px);padding:20px;display:grid;overflow:hidden}.sketch-modal-header{justify-content:space-between;align-items:flex-start;display:flex}.sketch-modal-header h2{margin:2px 0 0}.sketch-modal-footer{justify-content:flex-end;align-items:center;gap:10px;display:flex}.sketch-modal-footer-spacer{flex:1}.sketch-editor{grid-template-rows:auto 1fr auto;gap:12px;min-height:0;display:grid;overflow:hidden}.sketch-toolbar{background:var(--input-bg);border:1px solid var(--border);border-radius:18px;flex-wrap:wrap;align-items:center;gap:6px;padding:8px;display:flex}.sketch-tool-group{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.sketch-toolbar-spacer{flex:1;min-width:12px}.sketch-divider{background:var(--border);width:1px;height:24px;margin:0 4px}.sketch-tool{color:var(--text-soft);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:6px;padding:6px 10px;font-family:inherit;font-size:12px;font-weight:600;transition:background-color .14s,border-color .14s,color .14s;display:inline-flex}.sketch-tool:hover{background:var(--chip-bg);color:var(--text)}.sketch-tool.is-active{background:var(--panel);border-color:var(--accent-border);color:var(--text)}.sketch-tool-icon{width:18px;height:18px}.sketch-swatch{border:2px solid var(--border);cursor:pointer;background:#000;border-radius:999px;width:24px;height:24px;padding:0;transition:box-shadow .14s,transform .14s}.sketch-swatch:hover{transform:scale(1.05)}.sketch-swatch.is-active{box-shadow:0 0 0 2px var(--accent-border)}.sketch-stroke{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;width:52px;height:32px;padding:0 10px;transition:background-color .14s,border-color .14s;display:inline-flex}.sketch-stroke:hover{background:var(--chip-bg)}.sketch-stroke.is-active{background:var(--panel);border-color:var(--accent-border)}.sketch-stroke-preview{color:var(--text);background:currentColor;border-radius:999px;width:26px;display:block}.sketch-actions{gap:6px}.sketch-action{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:10px;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:600;transition:background-color .14s,border-color .14s,color .14s}.sketch-action:hover:not(:disabled){background:var(--chip-bg);border-color:var(--accent-border)}.sketch-action:disabled{color:var(--text-soft);cursor:not-allowed;opacity:.55}.sketch-canvas-frame{border:1px solid var(--border);border-radius:18px;position:relative;overflow:hidden}.sketch-canvas{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:min(60vh,520px);display:block}.sketch-canvas.is-pen,.sketch-canvas.is-shape{cursor:crosshair}.sketch-canvas.is-select{cursor:default}.sketch-shape.is-interactive{cursor:grab}.sketch-shape.is-interactive:active{cursor:grabbing}.sketch-shape.is-selected{filter:drop-shadow(0 0 0 var(--accent-border)) drop-shadow(0 0 6px #6d5ff573)}.sketch-shape.is-draft{pointer-events:none}.sketch-hint{color:var(--text-soft);margin:0;font-size:12px}.screenshot-viewer-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:20;background:#090d1ac7;justify-content:center;align-items:center;padding:24px;animation:.14s ease-out modal-fade;display:flex;position:fixed;inset:0}.screenshot-viewer{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:28px;grid-template-rows:auto 1fr;width:100%;max-width:min(1200px,100vw - 48px);max-height:calc(100vh - 48px);display:grid;overflow:hidden}.screenshot-viewer-toolbar{background:var(--surface-muted);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.screenshot-viewer-title{color:var(--text-h);font-size:14px;font-weight:750}.screenshot-viewer-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.screenshot-viewer-body{background:#0f172a99;justify-content:center;align-items:center;min-height:0;padding:16px;display:flex;overflow:auto}.screenshot-viewer-body img{box-shadow:var(--shadow);object-fit:contain;background:#0a0f1f;border-radius:16px;width:auto;max-width:100%;height:auto;max-height:calc(100vh - 180px);display:block}.token-list{background:var(--input-bg);border:1px solid var(--border);border-radius:18px;flex-wrap:wrap;align-items:center;gap:8px;min-height:54px;padding:10px 12px;display:flex}.token-pill,.dependency-link-row{background:var(--chip-bg);color:var(--text-h);border-radius:999px;align-items:center;gap:6px;padding:6px 8px 6px 10px;display:inline-flex}.token-pill button,.dependency-remove{box-shadow:none;color:var(--text-soft);background:0 0;border:0;padding:0;transform:none}.token-input{box-shadow:none;background:0 0;border:0;flex:1 0 180px;min-width:140px;padding:4px 0}.token-input:focus{outline:none}.suggestion-list,.dependency-links{flex-wrap:wrap;gap:8px;display:flex}.suggestion-list button{background:var(--surface-muted);border-radius:14px;padding:8px 10px}.dependency-link{color:var(--accent);background:0 0;border:0;padding:0;text-decoration:underline;transform:none}.nested-preview-panel{background:var(--surface-muted);border:1px solid var(--border);border-radius:26px;align-items:stretch;padding:16px}.nested-preview-panel p{color:var(--text-soft);font-size:14px}.modal-mini-canvas{flex:0 0 120px;min-height:86px}.modal-actions{border-top:1px solid var(--border);margin-top:20px;padding-top:18px}.modal-depth-note{color:var(--text-soft);text-align:right;margin-top:12px;font-size:13px}.exit-prompt{border:1px solid var(--accent-border);color:#fff;background:#14101deb;border-radius:24px;padding:18px;position:sticky;bottom:18px;left:18px;right:18px;box-shadow:0 18px 48px #0c0a145c}.exit-prompt h3{color:#fff;margin-bottom:6px}.exit-prompt p{color:#ffffffd1;margin-bottom:12px}.exit-prompt-actions{flex-wrap:wrap;gap:10px;display:flex}.exit-prompt-actions button{color:#fff;background:#ffffff14;border-color:#ffffff52}.exit-prompt-actions button:hover:not(:disabled){background:#ffffff29;border-color:#ffffff8c;box-shadow:0 10px 24px #00000047}.exit-prompt-actions .primary-button{color:#14121e;background:#fff;border-color:#fff}.exit-prompt-actions .primary-button:hover:not(:disabled){color:#14121e;background:#ece8f6;border-color:#ece8f6}.exit-prompt-actions .primary-button:disabled{color:#14121e8c;background:#ffffff59;border-color:#0000}.exit-prompt-actions .ghost-button{color:#fff;background:0 0;border-color:#fff6}.exit-prompt-actions .ghost-button:hover:not(:disabled){color:#fff;background:#ffffff1f;border-color:#fff}@keyframes fade-in{0%{opacity:0}}@keyframes modal-pop{0%{opacity:0;transform:scale(.96)translateY(10px)}}@media (width<=820px){.app-shell{padding:16px}.space-home{padding:20px 16px}.space-home-header{flex-direction:column;align-items:stretch}.space-grid{grid-template-columns:1fr}.top-bar,.modal-actions,.nested-preview-panel{flex-direction:column;align-items:stretch}.top-actions{justify-content:flex-start}.modal-grid,.modal-grid-tight{grid-template-columns:1fr}.blank-canvas{min-height:calc(100svh - 260px)}.dependency-canvas{height:calc(100svh - 320px)}.dependency-view{grid-template-columns:1fr}.dependency-sidebar{max-height:none}.dependency-view-toolbar{flex-direction:column;align-items:flex-start}}.rich-text-editor{background:var(--input-bg);border:1px solid var(--border);border-radius:18px;grid-template-rows:auto 1fr;transition:border-color .16s;display:grid;overflow:hidden}.rich-text-editor:focus-within{border-color:var(--accent-border)}.rich-text-toolbar{background:var(--surface-muted);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:4px;padding:6px 8px;display:flex}.toolbar-button{color:var(--text-h);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;min-width:32px;padding:4px 8px;font-size:13px;font-weight:700;transition:background-color .12s,border-color .12s}.toolbar-button:hover:not(:disabled){background:var(--chip-bg);border-color:var(--accent-border)}.toolbar-button.active{background:var(--chip-bg);border-color:var(--accent-border);color:var(--accent)}.toolbar-button:disabled{cursor:not-allowed;opacity:.45}.toolbar-button.ghost{opacity:.8;font-weight:600}.toolbar-divider{background:var(--border);width:1px;height:18px;margin:0 4px}.toolbar-spacer{flex:auto}.rich-text-content{color:var(--text-h);font:inherit;outline:none;min-height:140px;max-height:320px;padding:12px 14px;overflow-y:auto}.rich-text-content>*+*{margin-top:8px}.rich-text-content p{margin:0}.rich-text-content p.is-editor-empty:first-child:before{color:var(--text-soft);content:attr(data-placeholder);float:left;pointer-events:none;height:0}.rich-text-content ul,.rich-text-content ol{margin:0;padding-left:20px}.rich-text-content ul li,.rich-text-content ol li{margin:2px 0}.rich-text-content ul li p,.rich-text-content ol li p{margin:0}.rich-text-content blockquote{border-left:3px solid var(--accent-border);color:var(--text-soft);margin:0;padding:2px 12px}.rich-text-content code{background:var(--surface-muted);border-radius:6px;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.92em}.rich-text-content pre{background:var(--surface-muted);border-radius:14px;margin:0;padding:12px 14px;overflow-x:auto}.rich-text-content pre code{background:0 0;padding:0;font-size:13px}.rich-text-content a{color:var(--accent);text-decoration:underline}.view-switcher{background:var(--input-bg);border:1px solid var(--border);border-radius:999px;align-items:center;gap:2px;padding:3px;display:inline-flex}.view-switcher .view-toggle-button{border-color:#0000;padding:7px 12px;font-size:13px}.view-toggle-button{background:var(--chip-bg);border:1px solid var(--accent-border);color:var(--accent);font-weight:750}.view-toggle-button:hover{background:var(--accent-border);color:var(--text-h)}.view-toggle-button.active{background:var(--accent);border-color:var(--accent);color:#fff}.top-bar-heading{margin:4px 0 0;font-size:22px}.dependency-view{grid-template-columns:320px minmax(0,1fr);gap:16px;max-width:1440px;min-height:calc(100svh - 180px);margin:24px auto 0;display:grid}.dependency-sidebar,.dependency-workspace{min-width:0}.dependency-sidebar{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:28px;align-self:start;gap:14px;max-height:calc(100svh - 180px);padding:16px;display:grid;overflow:hidden}.dependency-sidebar-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.dependency-sidebar-header h3{margin-top:4px;font-size:20px}.round-add-button.small{width:38px;height:38px;font-size:20px}.dependency-sidebar-search{color:var(--text-h);gap:8px;font-size:13px;font-weight:750;display:grid}.dependency-filter-panel{gap:12px;display:grid}.tag-filter-row{gap:8px;display:grid}.tag-filter-row>span{color:var(--text-soft);text-transform:uppercase;font-size:12px;font-weight:750}.tag-filter-row>div,.dependency-palette-tags{flex-wrap:wrap;gap:6px;display:flex}.tag-filter-row button,.dependency-palette-tags span,.on-graph-pill{border-radius:999px;padding:5px 8px;font-size:12px;font-weight:750}.tag-filter-row button{background:var(--surface-muted);color:var(--text-soft)}.tag-filter-row button.active{background:var(--chip-bg);color:var(--accent)}.dependency-palette-list{gap:10px;padding-right:2px;display:grid;overflow-y:auto}.dependency-palette-card{background:var(--panel);border:1px solid var(--border);cursor:grab;border-radius:20px;gap:10px;padding:12px;transition:border-color .16s,opacity .16s,transform .16s;display:grid}.dependency-palette-card:hover{border-color:var(--accent-border);transform:translateY(-1px)}.dependency-palette-card.is-visible{cursor:default;opacity:.68}.dependency-palette-card h4{margin:0;font-size:15px}.dependency-palette-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.dependency-palette-tags span{background:var(--chip-bg);color:var(--accent)}.on-graph-pill{background:var(--surface-muted);color:var(--text-soft)}.dependency-sidebar-empty{border:1px dashed var(--border);color:var(--text-soft);border-radius:18px;padding:14px}.dependency-workspace{grid-template-rows:auto 1fr;gap:14px;display:grid}.dependency-view-toolbar{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:22px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:14px 18px;display:flex}.dependency-view-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dependency-legend{color:var(--text-soft);margin:4px 0 0}.dependency-count{color:var(--text-soft);font-size:13px;font-weight:700}.edge-style-picker{background:var(--input-bg);border:1px solid var(--border);border-radius:999px;align-items:center;gap:2px;padding:3px;display:inline-flex}.edge-style-picker-label{color:var(--text-soft);letter-spacing:.04em;text-transform:uppercase;padding:0 8px 0 10px;font-size:12px;font-weight:700}.edge-style-picker-option{color:var(--text-soft);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600;transition:background-color .14s,color .14s,box-shadow .14s}.edge-style-picker-option:hover{background:var(--chip-bg);color:var(--text)}.edge-style-picker-option.is-active{background:var(--accent);color:var(--accent-text,#fff);box-shadow:0 1px 3px #14101d33}.edge-style-picker-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dependency-canvas{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:28px;height:calc(100svh - 260px);min-height:420px;position:relative;overflow:hidden}.dependency-canvas.is-empty{display:grid}.dependency-drop-empty{pointer-events:none;text-align:center;z-index:1;place-self:center;max-width:360px}.dependency-drop-empty h2{font-size:34px}.dependency-canvas .react-flow{background:0 0;width:100%;height:100%}.dependency-canvas .react-flow__minimap{background:#fff9;border-radius:12px}.dependency-canvas .react-flow__controls{border-radius:12px;overflow:hidden}.dependency-canvas .react-flow__edge-path{stroke:var(--accent);stroke-width:2px}.dependency-canvas .react-flow__edge.selected .react-flow__edge-path,.dependency-canvas .react-flow__edge:focus .react-flow__edge-path{stroke:var(--accent);stroke-width:3px}.dependency-canvas .react-flow__arrowhead path{fill:var(--accent);stroke:var(--accent)}.dependency-canvas .react-flow__handle{background:var(--accent);border:2px solid var(--panel);width:12px;height:12px}.dependency-node{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);box-sizing:border-box;cursor:pointer;border-radius:20px;grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(1,1fr);gap:9px 8px;width:290px;height:138px;padding:12px 14px;transition:border-color .16s,transform .16s;display:grid;overflow:hidden}.dependency-node-header{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.dependency-node-hide{color:var(--text-soft);background:0 0;border:1px solid #0000;border-radius:999px;flex:none;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:14px;font-weight:700;line-height:1;display:inline-flex}.dependency-node-hide:hover:not(:disabled),.dependency-node-hide:focus-visible{background:var(--surface-muted);border-color:var(--border);box-shadow:none;color:var(--text-h);transform:none}.dependency-node:hover{border-color:var(--accent-border);transform:translateY(-1px)}.dependency-node.is-selected,.dependency-node.is-connect-target{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-border)}.dependency-node .react-flow__handle.dependency-node-handle{background:var(--accent);border:2px solid var(--panel);z-index:2;border-radius:999px;width:16px;min-width:16px;height:16px;min-height:16px;transition:background-color .14s,box-shadow .14s,transform .14s;box-shadow:0 1px 3px #14101d40}.dependency-node .react-flow__handle.dependency-node-handle:hover,.dependency-node .react-flow__handle.dependency-node-handle.connectionindicator:hover{background:var(--accent);box-shadow:0 0 0 4px var(--accent-bg)}.dependency-node .react-flow__handle.dependency-node-handle-source:hover{transform:translate(50%,-50%)scale(1.15)}.dependency-node .react-flow__handle.dependency-node-handle-target:not(.is-covering):hover{transform:translate(-50%,-50%)scale(1.15)}.dependency-node .react-flow__handle.dependency-node-handle-target.is-covering{z-index:5;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:20px!important;width:100%!important;min-width:0!important;height:100%!important;min-height:0!important;top:0!important;left:0!important;transform:none!important}.dependency-node.complete{background:linear-gradient(135deg, #22c55e38, #14b8a61f), var(--panel)}.dependency-node-title{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:750;line-height:1.25;overflow:hidden}.dependency-node-pills{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.count-pill{background:var(--surface-muted);color:var(--text-soft);border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700}.dependency-canvas .react-flow__edge-path{stroke-width:1.5px;transition:stroke .12s,stroke-width .12s}.dependency-canvas .react-flow__edge:hover .react-flow__edge-path{stroke:var(--accent);stroke-width:2.25px}.dependency-canvas .react-flow__edge.selected .react-flow__edge-path,.dependency-canvas .react-flow__edge:focus .react-flow__edge-path,.dependency-canvas .react-flow__edge:focus-visible .react-flow__edge-path{stroke:var(--accent);stroke-width:2.5px}.dependency-canvas .react-flow__edge:hover .react-flow__arrowhead,.dependency-canvas .react-flow__edge.selected .react-flow__arrowhead{fill:var(--accent)}.global-view{gap:16px;max-width:1440px;min-height:calc(100svh - 180px);margin:24px auto 0;display:grid}.global-view-toolbar{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:24px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:16px 20px;display:flex}.global-view-toolbar h2{letter-spacing:-.03em;margin:2px 0 0;font-size:26px}.global-view-copy{color:var(--text-soft);margin:6px 0 0}.global-view-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.global-view-stats{background:var(--surface-muted);border:1px solid var(--border);color:var(--text-soft);border-radius:999px;padding:9px 12px;font-size:13px;font-weight:750}.global-board-shell{grid-template-columns:300px minmax(0,1fr);gap:16px;min-height:calc(100svh - 280px);display:grid}.global-filter-panel{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:28px;align-self:start;gap:16px;max-height:calc(100svh - 280px);padding:16px;display:grid;overflow:auto}.global-filter-search,.global-filter-group{color:var(--text-h);gap:8px;font-size:13px;font-weight:750;display:grid}.global-filter-group>span{color:var(--text-soft);letter-spacing:.04em;text-transform:uppercase;font-size:12px}.global-filter-group>div{flex-wrap:wrap;gap:6px;display:flex}.global-filter-group button{background:var(--surface-muted);border-color:var(--border);color:var(--text-soft);padding:6px 9px;font-size:12px}.global-filter-group button.is-active{background:var(--chip-bg);border-color:var(--accent-border);color:var(--accent)}.global-hide-toggle{background:var(--surface-muted);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:16px;align-items:center;gap:9px;padding:10px 12px;font-size:13px;font-weight:700;display:flex}.global-hide-toggle input{accent-color:var(--accent);width:16px;height:16px}.global-board{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:28px;min-height:calc(100svh - 280px);position:relative;overflow:hidden}.global-board .react-flow{height:100%;min-height:inherit;background:0 0;width:100%}.global-board .react-flow__minimap{background:#fff9;border-radius:12px}.global-board .react-flow__controls{border-radius:12px;overflow:hidden}.global-board .react-flow__edge.global-edge-child .react-flow__edge-path{stroke:var(--text-soft);stroke-dasharray:7 6;stroke-width:1.35px}.global-board .react-flow__edge.global-edge-dependency .react-flow__edge-path{stroke:var(--accent);stroke-width:1.8px}.global-board .react-flow__edge.global-edge-dependency .react-flow__arrowhead path{fill:var(--accent);stroke:var(--accent)}.global-board .react-flow__edge.global-edge-child .react-flow__arrowhead path{fill:var(--text-soft);stroke:var(--text-soft)}.global-card-node .react-flow__handle.global-card-handle{opacity:0;pointer-events:none;background:0 0;border:0;width:1px;min-width:1px;height:1px;min-height:1px}.global-card-node{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);box-sizing:border-box;cursor:grab;border-radius:22px;gap:10px;width:300px;min-height:148px;padding:14px;transition:border-color .16s,box-shadow .16s,opacity .16s,transform .16s;display:grid;position:relative}.global-card-node:hover{border-color:var(--accent-border);transform:translateY(-1px)}.global-card-node.is-selected,.global-card-node.is-filter-match{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-border), var(--shadow)}.global-card-node.is-filter-muted{opacity:.28}.global-card-node.complete{background:linear-gradient(135deg, #22c55e2e, #14b8a61a), var(--panel)}.global-card-node h3{color:var(--text-h);margin:0;font-size:17px;line-height:1.25}.global-card-node.is-expanded{width:340px}.global-card-node-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.global-card-expand{background:var(--surface-muted);border:1px solid var(--border);color:var(--text-h);border-radius:999px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;padding:0;font-size:18px;line-height:1;display:inline-flex}.global-card-expand:hover:not(:disabled),.global-card-expand:focus-visible{background:var(--chip-bg);border-color:var(--accent-border);box-shadow:none;color:var(--accent);transform:none}.global-card-node-details{background:var(--surface-muted);border:1px solid var(--border);border-radius:16px;gap:10px;padding:11px;display:grid}.global-card-node-details p{color:var(--text);-webkit-line-clamp:5;line-clamp:5;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.global-card-node-details p.empty{color:var(--text-soft);font-style:italic}.global-card-node-previews{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.global-card-node-previews.is-single{grid-template-columns:1fr}.global-card-node-preview{aspect-ratio:4/3;background:var(--panel);border:1px solid var(--border);border-radius:12px;position:relative;overflow:hidden}.global-card-node-preview img,.global-card-node-preview .sketch-thumb-svg{object-fit:cover;width:100%;height:100%;display:block}.global-card-node-preview-more{color:var(--text-soft);justify-content:center;align-items:center;font-size:13px;font-weight:750;display:flex}.global-card-node-facts{flex-wrap:wrap;gap:6px;display:flex}.global-card-node-facts span{background:var(--panel);border:1px solid var(--border);color:var(--text-soft);border-radius:999px;padding:4px 8px;font-size:11px;font-weight:750}.global-card-resize-handle{background:var(--accent);border:2px solid var(--panel);cursor:nwse-resize;opacity:.92;z-index:6;border-radius:12px 0 18px;width:34px;height:34px;padding:0;position:absolute;bottom:0;right:0;transform:none;box-shadow:0 6px 18px #14101d38}.global-card-resize-handle:before,.global-card-resize-handle:after{content:"";transform-origin:100%;background:#ffffffeb;border-radius:999px;width:15px;height:2px;position:absolute;bottom:9px;right:7px;transform:rotate(-45deg)}.global-card-resize-handle:after{width:9px;bottom:15px;right:7px}.global-card-resize-handle:hover,.global-card-resize-handle:focus-visible{background:var(--text-h);opacity:1;transform:none;box-shadow:0 8px 22px #14101d47}.global-card-node-meta{color:var(--text-soft);letter-spacing:.04em;text-transform:uppercase;flex-wrap:wrap;gap:6px;font-size:11px;font-weight:750;display:flex}.global-card-node-meta span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.global-card-node-footer{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.global-card-node-footer button,.global-card-node-footer span{background:var(--surface-muted);border:1px solid var(--border);color:var(--text-soft);border-radius:999px;padding:4px 8px;font-size:11px;font-weight:750}.global-card-node-footer button:hover:not(:disabled),.global-card-node-footer button:focus-visible{background:var(--chip-bg);border-color:var(--accent-border);box-shadow:none;color:var(--accent);transform:none}@media (width<=820px){.dependency-view,.global-board-shell{grid-template-columns:1fr}.dependency-sidebar,.global-filter-panel{max-height:none}.dependency-canvas,.global-board{height:calc(100svh - 320px)}.dependency-view-toolbar,.global-view-toolbar{flex-direction:column;align-items:flex-start}}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#777;--xy-background-pattern-lines-color-default:#777;--xy-background-pattern-cross-color-default:#777;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}
