:root{--purple:#8b5cf6;--purple-dim:#8b5cf61f;--purple-border:#8b5cf640;--bg:#0b0b0f;--card:#12121a;--hover:#1a1a26;--active:#1e1e2e;--border:#1e1e2e;--border-light:#2a2a3a;--text:#e2e0d8;--text-muted:#6b6a65;--text-dim:#4a4a50;--captured:#6b6a65;--exploring:#67e8f9;--building:#fbbf24;--shipped:#4ade80;--shelved:#3f3f46;--green:#4ade80;--amber:#fbbf24;--cyan:#67e8f9;--red:#f87171;--blue:#60a5fa;--font-mono:"IBM Plex Mono", "JetBrains Mono", "Fira Code", monospace;--font-sans:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, sans-serif;--radius-card:8px;--radius-button:6px;--radius-badge:4px}[data-theme=light]{--purple:#7c3aed;--purple-dim:#7c3aed1a;--purple-border:#7c3aed40;--bg:#fafaf8;--card:#fff;--hover:#f0efeb;--active:#eae8e3;--border:#e5e3de;--border-light:#d5d3ce;--text:#1a1a1a;--text-muted:#6b6a65;--text-dim:#9a9890;--captured:#6b6a65;--exploring:#0891b2;--building:#d97706;--shipped:#16a34a;--shelved:#a1a1aa}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}code,pre,.mono{font-family:var(--font-mono)}a{color:var(--purple);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;font-size:inherit;cursor:pointer;color:inherit;background:0 0;border:none}input,textarea,select{font-family:inherit;font-size:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-button);outline:none;padding:8px 12px;transition:border-color .15s}input:focus,textarea:focus{border-color:var(--purple)}textarea{resize:vertical}.loading-screen{flex-direction:column;justify-content:center;align-items:center;gap:20px;height:100vh;display:flex}.spinner{border:2px solid var(--border);border-top-color:var(--purple);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-page{justify-content:center;align-items:center;height:100vh;padding:20px;display:flex}.login-card{flex-direction:column;align-items:center;gap:32px;width:100%;max-width:400px;display:flex}.login-logo{text-align:center}.logo-mark{color:var(--purple);font-size:24px;font-family:var(--font-mono)}.logo-mark-large{margin-bottom:16px;font-size:48px;display:block}.login-title{margin-bottom:8px;font-size:28px;font-weight:700}.login-subtitle{color:var(--text-muted);font-size:15px}.login-providers{flex-direction:column;gap:10px;width:100%;display:flex}.btn-oauth{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-button);color:var(--text);justify-content:center;align-items:center;gap:10px;width:100%;padding:12px 24px;font-size:15px;font-weight:500;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.btn-oauth:hover{background:var(--hover);border-color:var(--border-light);text-decoration:none}.login-divider{width:100%;color:var(--text-dim);align-items:center;gap:16px;font-size:13px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border);flex:1;height:1px}.magic-link-form{flex-direction:column;gap:10px;width:100%;display:flex}.magic-link-input{text-align:center;width:100%;padding:12px 16px;font-size:15px}.magic-link-btn{justify-content:center;width:100%;padding:12px}.magic-link-sent{text-align:center;color:var(--green);flex-direction:column;gap:8px;font-size:14px;display:flex}.btn-text{color:var(--purple);cursor:pointer;background:0 0;border:none;font-size:13px}.btn-text:hover{text-decoration:underline}.login-footer{color:var(--text-dim);font-size:13px}.login-legal{align-items:center;gap:8px;font-size:12px;display:flex}.login-legal a{color:var(--text-dim)}.login-legal a:hover{color:var(--text-muted)}.login-legal-sep{color:var(--text-dim)}.legal-page{justify-content:center;min-height:100vh;padding:40px 20px;display:flex}.legal-content{width:100%;max-width:640px}.legal-back{color:var(--text-muted);margin-bottom:24px;font-size:13px;display:inline-block}.legal-back:hover{color:var(--text)}.legal-content h1{margin-bottom:8px;font-size:28px;font-weight:700}.legal-updated{color:var(--text-dim);margin-bottom:32px;font-size:13px}.legal-content h2{margin:28px 0 12px;font-size:18px;font-weight:600}.legal-content p{color:var(--text-muted);margin-bottom:12px;font-size:14px;line-height:1.7}.legal-content ul{color:var(--text-muted);margin:0 0 12px 20px;font-size:14px;line-height:1.8}.legal-content code{background:var(--hover);border-radius:3px;padding:2px 6px;font-size:13px}.legal-content a{color:var(--purple)}.app-layout{height:100vh;display:flex;overflow:hidden}.sidebar{background:var(--card);border-right:1px solid var(--border);flex-direction:column;width:220px;min-width:220px;display:flex;overflow-y:auto}.sidebar-logo{align-items:center;gap:8px;padding:20px 16px 16px;display:flex}.logo-text{font-size:15px;font-weight:600}.sidebar-nav{padding:0 8px}.sidebar-section-label{color:var(--text-dim);letter-spacing:.08em;padding:16px 8px 6px;font-size:11px;font-weight:600}.nav-item{border-radius:var(--radius-badge);width:100%;color:var(--text-muted);text-align:left;align-items:center;gap:8px;padding:7px 8px;font-size:13px;transition:background .15s,color .15s;display:flex}.nav-item:hover{background:var(--hover);color:var(--text)}.nav-item-active{background:var(--active);color:var(--text)}.nav-icon{text-align:center;flex-shrink:0;width:18px;font-size:14px}.sidebar-section{padding:0 8px}.sidebar-filters{flex:1;overflow-y:auto}.tag-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.tag-count{color:var(--text-dim);margin-left:auto;font-size:11px}.sidebar-user{border-top:1px solid var(--border);margin-top:auto;padding:12px 16px}.user-info{align-items:center;gap:10px;margin-bottom:8px;display:flex}.user-avatar{object-fit:cover;border-radius:50%;width:32px;height:32px}.user-avatar-fallback{background:var(--purple-dim);color:var(--purple);justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.user-details{overflow:hidden}.user-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.user-plan{color:var(--text-dim);text-transform:uppercase;font-size:11px}.logout-link{color:var(--text-dim);font-size:12px}.theme-toggle{border-radius:var(--radius-badge);width:100%;color:var(--text-muted);text-align:left;cursor:pointer;align-items:center;gap:8px;padding:7px 8px;font-size:13px;transition:background .15s,color .15s;display:flex}.theme-toggle:hover{background:var(--hover);color:var(--text)}.sidebar-search-input{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-button);width:100%;color:var(--text);padding:7px 10px;font-size:13px}.sidebar-search-input:focus{border-color:var(--purple);outline:none}.sidebar-search-input::placeholder{color:var(--text-dim)}.sidebar-search-mode{gap:4px;padding:6px 0 0;display:flex}.search-mode-btn{border-radius:var(--radius-badge);color:var(--text-dim);cursor:pointer;background:0 0;border:1px solid #0000;padding:3px 8px;font-size:11px;transition:all .15s}.search-mode-btn:hover{color:var(--text);background:var(--hover)}.search-mode-active{color:var(--purple);border-color:var(--purple);background:var(--purple-dim)}.tag-dropdown{margin-top:4px;position:relative}.tag-dropdown-trigger{width:100%;color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-button);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;padding:6px 10px;font-size:12px;display:flex}.tag-dropdown-trigger:hover{border-color:var(--text-dim)}.tag-dropdown-arrow{color:var(--text-dim);font-size:10px}.tag-dropdown-panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);z-index:20;flex-direction:column;width:240px;max-height:260px;display:flex;position:absolute;top:calc(100% + 4px);left:0;overflow:hidden}.tag-dropdown-search{border:none;border-bottom:1px solid var(--border);color:var(--text);background:0 0;outline:none;padding:8px 10px;font-size:12px}.tag-dropdown-search::placeholder{color:var(--text-dim)}.tag-dropdown-list{padding:4px 0;overflow-y:auto}.tag-dropdown-item{color:var(--text-muted);cursor:pointer;align-items:center;gap:8px;padding:5px 10px;font-size:12px;display:flex}.tag-dropdown-item:hover{background:var(--hover)}.tag-dropdown-item input[type=checkbox]{accent-color:var(--purple)}.tag-dropdown-name{flex:1}.tag-dropdown-empty{color:var(--text-dim);text-align:center;padding:12px 10px;font-size:12px}.sidebar-active-chips{flex-wrap:wrap;gap:4px;padding:4px 0;display:flex}.filter-chip{background:var(--purple-dim);color:var(--purple);border-radius:var(--radius-badge);cursor:pointer;align-items:center;gap:4px;padding:2px 8px;font-size:11px;display:inline-flex}.filter-chip:hover{background:var(--purple);color:var(--bg)}.filter-chip-x{font-size:13px;line-height:1}.sidebar-status-chips{flex-wrap:wrap;gap:4px;padding:6px 0;display:flex}.filter-status-chip{border-radius:var(--radius-badge);color:var(--text-dim);border:1px solid var(--border);cursor:pointer;background:0 0;align-items:center;gap:4px;padding:3px 8px;font-size:11px;transition:all .15s;display:inline-flex}.filter-status-chip:hover{border-color:var(--status-color);color:var(--text)}.filter-status-active{border-color:var(--status-color);color:var(--status-color);background:color-mix(in srgb, var(--status-color) 10%, transparent)}.filter-status-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.sidebar-presets{gap:4px;padding:4px 0;display:flex}.filter-preset-btn{border-radius:var(--radius-badge);color:var(--text-dim);border:1px solid var(--border);cursor:pointer;background:0 0;padding:4px 10px;font-size:11px;transition:all .15s}.filter-preset-btn:hover{border-color:var(--text-dim);color:var(--text)}.filter-preset-active{border-color:var(--purple);color:var(--purple);background:var(--purple-dim)}.clear-filters-btn{width:100%;color:var(--text-dim);border-radius:var(--radius-badge);cursor:pointer;background:0 0;align-items:center;gap:6px;margin-top:4px;padding:6px 8px;font-size:12px;display:flex}.clear-filters-btn:hover{background:var(--hover);color:var(--text)}.filter-badge{background:var(--purple);min-width:18px;height:18px;color:var(--bg);border-radius:9px;justify-content:center;align-items:center;padding:0 5px;font-size:10px;font-weight:600;display:inline-flex}.detail-expanded-overlay{z-index:30;background:var(--bg);position:absolute;inset:0;overflow-y:auto}.detail-panel-expanded{border-left:none;width:100%!important;min-width:0!important;max-width:none!important}.detail-panel-expanded .detail-body{cursor:pointer;max-width:720px;margin:0 auto;padding:24px 32px}.detail-panel-expanded .detail-section{cursor:default}.detail-panel-expanded .detail-header{background:var(--card);z-index:5;padding:16px 32px;position:sticky;top:0}.detail-panel-expanded .detail-title{font-size:24px}.detail-panel-expanded .detail-body-text,.detail-panel-expanded .detail-body-input{font-size:15px;line-height:1.7}.detail-back-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-badge);background:0 0;margin-right:8px;padding:4px 8px;font-size:13px}.detail-back-btn:hover{background:var(--hover);color:var(--text)}.detail-expand-btn{margin-left:auto;margin-right:4px;font-size:16px}.main-area{flex-direction:column;flex:1;display:flex;overflow:hidden}.top-bar{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.view-title{flex-shrink:0;font-size:18px;font-weight:600}.global-search-form{flex:1;max-width:400px;margin:0 16px}.global-search-input{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-button);width:100%;color:var(--text);padding:7px 12px;font-size:13px;transition:border-color .15s}.global-search-input:focus{border-color:var(--purple);outline:none}.global-search-input::placeholder{color:var(--text-dim)}.content-area{flex:1;display:flex;position:relative;overflow:hidden}.content-main{flex:1;overflow-y:auto}.content-main-with-detail{flex:1;min-width:0}.btn{border-radius:var(--radius-button);align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s,opacity .15s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--purple);color:#fff}.btn-primary:hover:not(:disabled){background:#7c3aed}.btn-secondary{background:var(--card);border:1px solid var(--border);color:var(--text)}.btn-secondary:hover:not(:disabled){background:var(--hover)}.btn-danger{border:1px solid var(--red);color:var(--red);background:0 0}.btn-danger:hover:not(:disabled){background:#f871711a}.btn-icon{border-radius:var(--radius-badge);width:32px;height:32px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;font-size:16px;transition:background .15s,color .15s;display:flex}.btn-icon:hover{background:var(--hover);color:var(--text)}.badge{border-radius:var(--radius-badge);font-family:var(--font-mono);white-space:nowrap;padding:2px 8px;font-size:11px;font-weight:400;line-height:1.4;display:inline-block}.badge-captured{color:var(--captured);background:#6b6a6526}.badge-exploring{color:var(--exploring);background:#67e8f91f}.badge-building{color:var(--building);background:#fbbf241f}.badge-shipped{color:var(--shipped);background:#4ade801f}.badge-shelved{color:var(--shelved);background:#3f3f4633}.badge-dim{background:var(--hover);color:var(--text-muted)}.tag-chip{border-radius:var(--radius-badge);font-family:var(--font-mono);border:1px solid var(--border-light);color:var(--text-muted);padding:2px 8px;font-size:11px;transition:background .15s,color .15s,border-color .15s;display:inline-block}.tag-chip-clickable{cursor:pointer}.tag-chip-clickable:hover{border-color:var(--purple-border);color:var(--text)}.tag-chip-active{background:var(--purple-dim);border-color:var(--purple-border);color:var(--purple)}.tag-input-area{border:1px solid var(--border);border-radius:var(--radius-button);background:var(--bg);cursor:text;flex-wrap:wrap;align-items:center;gap:6px;min-height:36px;padding:6px 10px;display:flex}.tag-input-area:focus-within{border-color:var(--purple)}.tag-inline-input{color:var(--text);background:0 0;border:none;outline:none;flex:1;min-width:100px;padding:2px 0;font-size:13px}.source-icon{color:var(--text-dim);font-size:14px}.inbox-view{flex-direction:column;display:flex}.filter-tabs{border-bottom:1px solid var(--border);gap:2px;padding:12px 24px;display:flex}.filter-tab{border-radius:var(--radius-badge);color:var(--text-muted);padding:6px 12px;font-size:13px;transition:background .15s,color .15s}.filter-tab:hover{background:var(--hover);color:var(--text)}.filter-tab-active{background:var(--active);color:var(--text)}.idea-list{padding:0}.idea-row{border-bottom:1px solid var(--border);text-align:left;flex-direction:column;gap:6px;width:100%;padding:12px 24px;transition:background .15s;display:flex}.idea-row:hover{background:var(--hover)}.idea-row-selected{background:var(--active);border-left:2px solid var(--purple)}.idea-row-main{align-items:center;gap:10px;display:flex}.idea-id{color:var(--text-dim);flex-shrink:0;font-size:13px}.idea-title{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:14px;font-weight:500;overflow:hidden}.idea-row-meta{justify-content:space-between;align-items:center;padding-left:0;display:flex}.idea-tags{flex-wrap:wrap;gap:4px;display:flex}.idea-row-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.idea-time{color:var(--text-dim);font-size:11px}.detail-panel{border-left:1px solid var(--border);background:var(--card);z-index:2;flex-direction:column;width:360px;min-width:160px;display:flex;position:relative;overflow-y:auto}.detail-resize-handle{cursor:col-resize;z-index:10;touch-action:none;width:6px;position:absolute;top:0;bottom:0;left:0}.detail-resize-handle:after{content:"";background:var(--text-dim);opacity:0;border-radius:3px;width:3px;height:40px;transition:opacity .15s;position:absolute;top:50%;left:1px;transform:translateY(-50%)}.detail-resize-handle:hover:after,.detail-resize-handle:active:after{opacity:.5}.detail-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.detail-body{flex-direction:column;gap:20px;padding:16px 20px;display:flex}.detail-section{flex-direction:column;gap:8px;display:flex}.detail-label{color:var(--text-dim);letter-spacing:.08em;font-size:11px;font-weight:600}.detail-title{cursor:pointer;padding:4px 0;font-size:18px;font-weight:600}.detail-title:hover{color:var(--purple)}.detail-title-input{background:var(--bg);width:100%;font-size:18px;font-weight:600}.detail-body-text{cursor:pointer;border-radius:var(--radius-badge);white-space:pre-wrap;min-height:40px;padding:8px;font-size:14px;line-height:1.6}.detail-body-text:hover{background:var(--hover)}.detail-body-input{background:var(--bg);width:100%;line-height:1.6}.detail-body-input-expanded{min-height:400px;font-family:var(--font-mono);resize:vertical;font-size:14px;line-height:1.7}.detail-body-tabs{justify-content:space-between;align-items:center;display:flex}.body-tab-group{border:1px solid var(--border);border-radius:var(--radius-button);gap:0;display:flex;overflow:hidden}.body-tab{color:var(--text-dim);border:none;border-right:1px solid var(--border);cursor:pointer;background:0 0;padding:4px 12px;font-size:11px;font-weight:500;transition:background .15s,color .15s}.body-tab:last-child{border-right:none}.body-tab:hover{background:var(--hover);color:var(--text)}.body-tab-active{background:var(--active);color:var(--purple)}.markdown-body{color:var(--text);font-size:15px;line-height:1.7}.markdown-body h1{border-bottom:1px solid var(--border);margin:24px 0 12px;padding-bottom:6px;font-size:1.5rem;font-weight:600}.markdown-body h2{margin:20px 0 10px;font-size:1.25rem;font-weight:600}.markdown-body h3{margin:16px 0 8px;font-size:1.1rem;font-weight:600}.markdown-body h4,.markdown-body h5,.markdown-body h6{margin:12px 0 6px;font-size:1rem;font-weight:600}.markdown-body p{margin-bottom:12px}.markdown-body ul,.markdown-body ol{margin:0 0 12px 20px;line-height:1.8}.markdown-body li{margin-bottom:4px}.markdown-body pre{font-family:var(--font-mono);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-button);margin-bottom:12px;padding:12px 16px;font-size:13px;line-height:1.5;overflow-x:auto}.markdown-body code{font-family:var(--font-mono);font-size:.9em}.markdown-body :not(pre)>code{background:var(--hover);border-radius:3px;padding:.2em .4em}.markdown-body a{color:var(--amber);text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body table{border-collapse:collapse;width:100%;margin-bottom:12px}.markdown-body th,.markdown-body td{border:1px solid var(--border);text-align:left;padding:8px 12px;font-size:14px}.markdown-body th{background:var(--hover);font-weight:600}.markdown-body tr:nth-child(2n){background:var(--hover)}.markdown-body blockquote{border-left:3px solid var(--amber);color:var(--text-muted);margin:0 0 12px;padding:4px 16px}.markdown-body hr{border:none;border-top:1px solid var(--border);margin:20px 0}.markdown-body img{border-radius:var(--radius-card);max-width:100%}.markdown-body input[type=checkbox]{accent-color:var(--purple);pointer-events:none;margin-right:6px}.markdown-body .contains-task-list{padding-left:4px;list-style:none}.mermaid-container{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);justify-content:center;max-width:100%;margin:12px 0;padding:16px;display:flex;overflow-x:auto}.mermaid-container svg{max-width:100%;height:auto}.mermaid-error{margin:12px 0}.mermaid-error-label{color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.mermaid-error-source{font-family:var(--font-mono);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-button);color:var(--text-muted);padding:12px 16px;font-size:13px;line-height:1.5;overflow-x:auto}.detail-tags{flex-wrap:wrap;gap:6px;display:flex}.detail-meta{flex-direction:column;gap:6px;display:flex}.meta-row{justify-content:space-between;align-items:center;font-size:13px;display:flex}.meta-link{font-family:var(--font-mono);font-size:12px}.detail-links{flex-direction:column;gap:4px;display:flex}.link-item{border-radius:var(--radius-badge);color:var(--text);align-items:center;gap:8px;padding:6px 8px;font-size:13px;text-decoration:none;transition:background .15s;display:flex}.link-item:hover{background:var(--hover);text-decoration:none}.link-type{color:var(--text-dim);text-transform:uppercase;font-size:10px}.detail-relations{flex-direction:column;gap:2px;display:flex}.relation-title{text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);flex:1;font-size:12px;overflow:hidden}.relation-group{margin-bottom:6px}.relation-group-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:4px 0 2px;font-size:11px;font-weight:600}.relation-note{width:100%;color:var(--text-muted);padding-left:28px;font-size:11px;font-style:italic}.relation-item{flex-wrap:wrap;align-items:center;gap:8px;padding:4px 0;font-size:13px;display:flex}.link-search-popover{background:var(--surface-card);border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:4px;margin-bottom:8px;padding:8px;display:flex}.link-search-input{background:var(--surface-bg);border:1px solid var(--border);width:100%;color:inherit;border-radius:4px;padding:6px 8px;font-size:13px}.link-type-select{background:var(--surface-bg);border:1px solid var(--border);color:inherit;border-radius:4px;padding:4px 6px;font-size:12px}.link-search-result{cursor:pointer;border-radius:4px;align-items:center;gap:8px;padding:6px 4px;font-size:13px;display:flex}.link-search-result:hover{background:var(--surface-hover)}.detail-actions-inline{gap:8px;display:flex}.detail-actions{border-top:1px solid var(--border);padding-top:12px}.status-selector{flex-wrap:wrap;gap:4px;display:flex}.status-option{border-radius:var(--radius-badge);opacity:.5;padding:2px;transition:opacity .15s}.status-option:hover{opacity:.8}.status-option-active{opacity:1}.search-view{flex-direction:column;display:flex}.search-form{border-bottom:1px solid var(--border);gap:8px;padding:16px 24px;display:flex}.search-input{background:var(--card);flex:1;padding:10px 16px;font-size:15px}.search-results{padding:0}.modal-overlay{z-index:100;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);width:100%;max-width:520px;max-height:90vh;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-header h2{font-size:16px;font-weight:600}.modal-body{flex-direction:column;gap:16px;padding:20px;display:flex}.modal-actions{justify-content:flex-end;gap:8px;padding-top:8px;display:flex}.form-field{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--text-dim);letter-spacing:.08em;font-size:11px;font-weight:600}.form-input{background:var(--bg);width:100%;padding:10px 12px}.form-textarea{background:var(--bg);width:100%;padding:10px 12px;line-height:1.6}.form-error{color:var(--red);font-size:13px}.empty-state{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 24px;display:flex}.empty-icon{color:var(--text-dim);font-size:36px;font-family:var(--font-mono)}.empty-state h3{color:var(--text);font-size:16px;font-weight:600}.empty-state p{font-size:14px}.error-state{color:var(--red)}.text-muted{color:var(--text-muted)}.analyzing-badge{font-family:var(--font-mono);color:var(--amber);flex-shrink:0;align-items:center;gap:6px;font-size:11px;display:inline-flex}.spinner-sm{border-width:1.5px;width:12px;height:12px}.score-badge{border-radius:var(--radius-badge);font-family:var(--font-mono);flex-shrink:0;padding:2px 6px;font-size:11px;font-weight:500;display:inline-block}.score-green{color:var(--green);background:#4ade8026}.score-amber{color:var(--amber);background:#fbbf2426}.score-blue{color:var(--blue);background:#60a5fa26}.dup-alert{border-bottom:1px solid var(--border);background:#fbbf2414;align-items:center;gap:10px;padding:8px 24px 8px 34px;font-size:13px;display:flex}.dup-alert-icon{color:var(--amber);flex-shrink:0;font-size:14px}.dup-alert-text{color:var(--amber);flex:1;font-size:12px}.dup-alert-actions{flex-shrink:0;gap:6px;display:flex}.btn-sm{padding:4px 10px;font-size:11px}.search-meta{border-bottom:1px solid var(--border);padding:8px 24px;font-size:12px}.kanban-board{background:var(--border);gap:1px;height:100%;display:flex;overflow-x:auto}.kanban-column{background:var(--bg);flex-direction:column;flex:1;min-width:200px;transition:background .15s;display:flex}.kanban-column-over{background:var(--hover)}.kanban-column-header{flex-shrink:0;align-items:center;gap:8px;padding:14px 12px 10px;display:flex}.kanban-column-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.kanban-column-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:12px;font-weight:600}.kanban-column-count{color:var(--text-dim);margin-left:auto;font-size:11px}.kanban-column-cards{flex-direction:column;flex:1;gap:6px;padding:4px 8px 8px;display:flex;overflow-y:auto}.kanban-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);cursor:grab;touch-action:none;flex-direction:column;gap:8px;padding:10px 12px;transition:border-color .15s,background .15s;display:flex}.kanban-card:hover{border-color:var(--border-light)}.kanban-card-dragging{opacity:.4}.kanban-card-overlay{background:var(--card);border:1px solid var(--purple);border-radius:var(--radius-card);cursor:grabbing;flex-direction:column;gap:8px;padding:10px 12px;display:flex;box-shadow:0 8px 24px #0006}.kanban-card-title{font-size:13px;font-weight:500;line-height:1.4}.kanban-card-meta{justify-content:space-between;align-items:center;gap:8px;display:flex}.kanban-card-tags{flex-wrap:wrap;gap:4px;display:flex;overflow:hidden}@media (width<=768px){.sidebar{display:none}.detail-panel{z-index:50;width:100%;min-width:0;position:fixed;inset:0}.idea-row,.filter-tabs,.top-bar,.search-form{padding:12px 16px}}.settings-view{max-width:720px;padding:24px}.settings-section{margin-bottom:40px}.settings-heading{margin-bottom:8px;font-size:18px;font-weight:600}.settings-desc{color:var(--text-muted);margin-bottom:12px;font-size:13px;line-height:1.5}.settings-success{color:var(--green);font-size:13px}.settings-error{color:var(--red);font-size:13px}.digest-preview{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);color:var(--text-muted);white-space:pre-wrap;max-height:200px;margin-top:8px;padding:12px;font-size:12px;line-height:1.5;overflow-y:auto}.api-key-list{flex-direction:column;gap:1px;margin-bottom:16px;display:flex}.api-key-row{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);justify-content:space-between;align-items:center;margin-bottom:8px;padding:12px 16px;display:flex}.api-key-info{flex-direction:column;gap:4px;display:flex}.api-key-label{font-weight:500}.api-key-hint{color:var(--text-muted);font-size:12px}.api-key-meta{color:var(--text-dim);font-size:11px}.api-key-confirm,.api-key-create{align-items:center;gap:8px;display:flex}.api-key-label-input{width:220px}.btn-ghost-sm{border:1px solid var(--border);border-radius:var(--radius-button);color:var(--text-muted);padding:4px 10px;font-size:12px;transition:border-color .15s,color .15s}.btn-ghost-sm:hover{border-color:var(--text-muted);color:var(--text)}.btn-ghost-active{border-color:var(--purple);color:var(--purple);background:var(--purple-dim)}.btn-danger-sm{border:1px solid var(--red);border-radius:var(--radius-button);color:var(--red);padding:4px 10px;font-size:12px;transition:background .15s}.btn-danger-sm:hover{background:#f871711a}.api-key-modal{max-width:480px}.api-key-warning{color:var(--amber);font-weight:500}.api-key-display{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-card);align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex;overflow-x:auto}.api-key-display code{word-break:break-all;flex:1;font-size:13px}.settings-quickstart{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);padding:20px}.settings-code{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-button);margin-bottom:12px;padding:12px 16px;font-size:13px;line-height:1.6;overflow-x:auto}.settings-code:last-child{margin-bottom:0}.mcp-tabs{border:1px solid var(--border);border-radius:var(--radius-button);gap:0;margin-bottom:16px;display:flex;overflow:hidden}.mcp-tab{border:none;border-right:1px solid var(--border);color:var(--text-dim);cursor:pointer;font-size:13px;font-weight:500;font-family:var(--font-ui);background:0 0;flex:1;padding:8px 16px;transition:background .15s,color .15s}.mcp-tab:last-child{border-right:none}.mcp-tab:hover{background:var(--hover);color:var(--text)}.mcp-tab-active{background:var(--active);color:var(--brand)}.mcp-instructions{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);margin-bottom:16px;padding:20px}.mcp-steps{margin:0 0 16px 20px;font-size:14px;line-height:1.8}.mcp-url-row{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-button);align-items:center;gap:8px;padding:8px 12px;display:flex}.mcp-url{word-break:break-all;flex:1;font-size:13px}.mcp-url-cmd{font-size:12px}.mcp-test-row{align-items:center;gap:12px;margin-bottom:20px;display:flex}.mcp-status{font-size:13px;font-weight:500}.mcp-status-ok{color:var(--green)}.mcp-status-err{color:var(--red,#ef4444)}.mcp-clients{margin-top:16px}.settings-subheading{margin-bottom:12px;font-size:14px;font-weight:600}.byok-active-provider{border-radius:var(--radius-button);color:var(--green);background:#4ade8014;border:1px solid #4ade8033;margin-bottom:16px;padding:10px 14px;font-size:13px}.byok-no-provider{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-button);color:var(--text-muted);margin-bottom:16px;padding:10px 14px;font-size:13px}.byok-providers{flex-direction:column;gap:12px;display:flex}.byok-provider-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);padding:16px}.byok-provider-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.byok-provider-name{font-size:14px;font-weight:600}.byok-configured-badge{font-size:11px;font-family:var(--font-mono);color:var(--green);border-radius:var(--radius-badge);background:#4ade801a;padding:2px 8px}.byok-provider-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.byok-provider-form{align-items:center;gap:8px;display:flex}.byok-key-input{font-family:var(--font-mono);background:var(--bg);flex:1;padding:8px 12px;font-size:13px}.byok-test-result{font-size:12px;font-weight:500}.byok-test-ok{color:var(--green)}.byok-test-err{color:var(--red)}.siri-heading-icons{letter-spacing:2px;opacity:.7;margin-right:6px}.shortcut-toast{border-radius:var(--radius-button);color:var(--purple);background:#8b5cf61f;border:1px solid #8b5cf640;margin-bottom:16px;padding:10px 14px;font-size:13px}.shortcut-no-key{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);color:var(--text-muted);align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;font-size:13px;display:flex}.shortcut-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:16px;display:grid}.shortcut-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);flex-direction:column;gap:10px;padding:16px;display:flex}.shortcut-card-header{align-items:center;gap:8px;display:flex}.shortcut-icon{background:var(--purple-dim);border-radius:var(--radius-button);justify-content:center;align-items:center;width:28px;height:28px;font-size:18px;display:flex}.shortcut-card-title{font-size:14px;font-weight:600}.shortcut-card-desc{color:var(--text-muted);flex:1;font-size:12px;line-height:1.5}.shortcut-siri-toggle{color:var(--text-muted);cursor:pointer;font-size:13px;font-family:var(--font-sans);background:0 0;border:none;padding:6px 0;transition:color .15s}.shortcut-siri-toggle:hover{color:var(--text)}.shortcut-siri-examples{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);margin-top:8px;margin-bottom:8px;padding:12px 16px}.shortcut-siri-examples ul{color:var(--text-muted);margin:0 0 0 16px;font-size:13px;line-height:1.8}.shortcut-siri-examples strong{color:var(--text);font-family:var(--font-mono);font-size:12px}.develop-btn{justify-content:center;width:100%}.develop-error{color:var(--red);margin-top:6px;font-size:12px}.develop-cta{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);text-align:center;padding:12px}.develop-cta .settings-desc{margin-bottom:8px}.mind-map-container{flex-direction:column;height:100%;display:flex;position:relative;overflow:hidden}.map-controls{border-bottom:1px solid var(--border);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.map-controls-left{flex-wrap:wrap;flex:1;align-items:center;gap:8px;display:flex}.map-controls-right{align-items:center;gap:8px;display:flex}.map-search-group{align-items:center;gap:0;display:flex}.map-search-input{background:var(--card);border-top-right-radius:0;border-bottom-right-radius:0;width:160px;padding:6px 10px;font-size:12px}.map-search-mode-btn{font-size:12px;font-family:var(--font-mono);color:var(--text-dim);background:var(--card);border:1px solid var(--border);border-radius:0 var(--radius-button) var(--radius-button) 0;cursor:pointer;border-left:none;padding:6px 8px;font-weight:600;line-height:1;transition:color .15s,background .15s}.map-search-mode-btn:hover{color:var(--text-muted)}.map-search-mode-btn.active{color:var(--purple);background:var(--purple-dim)}.map-filter-select{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-button);color:var(--text-muted);padding:6px 10px;font-size:12px}.map-active-filters{flex-wrap:wrap;gap:4px;display:flex}.map-filter-chip{background:var(--purple-dim);border:1px solid var(--purple-border);border-radius:var(--radius-badge);font-size:11px;font-family:var(--font-mono);color:var(--purple);cursor:pointer;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.map-filter-chip:hover{background:#8b5cf633}.map-filter-x{font-size:13px;line-height:1}.map-status-chips{gap:4px;display:flex}.map-status-chip{border-radius:var(--radius-badge);color:var(--text-dim);border:1px solid var(--border);align-items:center;gap:4px;padding:3px 8px;font-size:11px;transition:border-color .15s,color .15s;display:inline-flex}.map-status-chip:hover{border-color:var(--text-muted);color:var(--text-muted)}.map-status-chip-active{border-color:var(--status-color,var(--purple));color:var(--status-color,var(--purple));background:#ffffff0a}.map-status-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.map-density-control{align-items:center;gap:6px;display:flex}.map-density-label{color:var(--text-dim);font-size:11px}.map-density-slider{width:80px;accent-color:var(--purple)}.map-canvas-area{background:var(--bg);flex:1;position:relative;overflow:hidden}.map-svg,.map-canvas{width:100%;height:100%;display:block}.map-minimap{border:1px solid var(--border);border-radius:var(--radius-button);opacity:.8;pointer-events:none;position:absolute;bottom:12px;right:12px}@media (width<=768px){.map-minimap,.map-status-chips{display:none}.map-controls{padding:8px 12px}.map-search-input{width:120px}.map-density-control{display:none}}.map-context-overlay{z-index:90;position:fixed;inset:0}.map-context-menu{z-index:91;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);min-width:180px;padding:4px 0;position:fixed}.map-context-item{text-align:left;width:100%;color:var(--text);padding:8px 14px;font-size:13px;transition:background .15s;display:block}.map-context-item:hover{background:var(--hover)}.map-context-danger{color:var(--red)}.map-context-danger:hover{background:#f8717114}.map-content .node:hover rect{stroke-opacity:.8;stroke-width:1.5px}.map-content .node:hover .edge-handle{fill-opacity:.6;stroke-opacity:.8}.map-context-glyph{width:18px;font-family:var(--font-mono);color:var(--text-dim);text-align:center;font-size:14px;display:inline-block}.map-context-danger .map-context-glyph{color:var(--red)}.map-context-separator{background:var(--border);height:1px;margin:4px 0}.map-context-submenu{padding:2px 8px 6px;animation:.15s ease-out submenu-expand;overflow:hidden}@keyframes submenu-expand{0%{opacity:0;max-height:0}to{opacity:1;max-height:200px}}.map-context-sub-item{text-align:left;width:100%;color:var(--text-muted);border-radius:var(--radius-badge);align-items:center;gap:8px;padding:5px 10px;font-size:12px;transition:background .15s,color .15s;display:flex}.map-context-sub-item:hover{background:var(--hover);color:var(--text)}.map-rel-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.map-link-banner{z-index:10;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);align-items:center;gap:10px;padding:8px 16px;animation:.2s ease-out slide-down;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%)}@keyframes slide-down{0%{opacity:0;transform:translate(-50%)translateY(-10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.map-link-banner-pill{border-radius:var(--radius-badge);font-size:11px;font-family:var(--font-mono);border:1px solid;padding:2px 8px;font-weight:500;display:inline-block}.map-link-banner-text{color:var(--text-muted);font-size:13px}.map-link-banner-cancel{font-size:12px;font-family:var(--font-mono);color:var(--text-dim);border-radius:var(--radius-badge);padding:2px 6px;transition:color .15s}.map-link-banner-cancel:hover{color:var(--text)}.map-relation-picker{z-index:92;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);gap:4px;padding:6px 8px;animation:.15s ease-out submenu-expand;display:flex;position:fixed;transform:translate(-50%,-50%)}.map-rel-pill{font-size:11px;font-family:var(--font-mono);color:var(--rel-color,var(--text-muted));border:1px solid var(--rel-color,var(--border));border-radius:var(--radius-badge);cursor:pointer;background:0 0;padding:4px 10px;transition:background .15s}.map-rel-pill:hover,.map-rel-pill-default{background:color-mix(in srgb, var(--rel-color,var(--purple)) 15%, transparent)}.map-quick-create{z-index:92;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);width:260px;padding:14px;animation:.15s ease-out submenu-expand;position:fixed}.map-quick-create-title{color:var(--text-muted);margin-bottom:10px;font-size:12px;font-weight:600}.map-quick-create-input{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-button);width:100%;color:var(--text);margin-bottom:10px;padding:7px 10px;font-size:13px}.map-quick-create-input:focus{border-color:var(--purple);outline:none}.map-quick-create-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.map-quick-create-label{color:var(--text-dim);font-size:11px;font-family:var(--font-mono);min-width:40px}.map-quick-create-pills{flex-wrap:wrap;gap:3px;display:flex}.map-rel-pill-sm{font-size:10px;font-family:var(--font-mono);color:var(--text-dim);border:1px solid var(--border);border-radius:var(--radius-badge);cursor:pointer;padding:2px 6px;transition:all .15s}.map-rel-pill-sm:hover{color:var(--rel-color,var(--text-muted));border-color:var(--rel-color,var(--border))}.map-rel-pill-sm.active{color:var(--rel-color,var(--purple));border-color:var(--rel-color,var(--purple));background:color-mix(in srgb, var(--rel-color,var(--purple)) 12%, transparent)}.map-quick-create-status-dots{gap:6px;display:flex}.map-qc-status-dot{cursor:pointer;opacity:.5;border:2px solid #0000;border-radius:50%;width:14px;height:14px;transition:border-color .15s,transform .15s}.map-qc-status-dot:hover{opacity:.8;transform:scale(1.15)}.map-qc-status-dot.active{opacity:1;border-color:var(--text);transform:scale(1.15)}.map-quick-create-actions{justify-content:flex-end;gap:6px;margin-top:12px;display:flex}.map-edge-legend{align-items:center;gap:8px;display:flex}.map-legend-item{align-items:center;gap:4px;display:inline-flex}.map-legend-line{border-radius:1px;width:14px}.map-legend-label{font-size:10px;font-family:var(--font-mono);color:var(--text-dim)}.map-toast{z-index:50;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);align-items:center;gap:10px;padding:8px 16px;animation:.2s ease-out slide-up;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}@keyframes slide-up{0%{opacity:0;transform:translate(-50%)translateY(10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.map-toast-msg{color:var(--text-muted);font-size:13px}.map-toast-undo{font-size:12px;font-family:var(--font-mono);color:var(--purple);border-radius:var(--radius-badge);padding:2px 8px;font-weight:500;transition:background .15s}.map-toast-undo:hover{background:var(--purple-dim)}@media (width<=768px){.map-edge-legend{display:none}.map-link-banner{gap:6px;padding:6px 12px;font-size:12px}}.map-preset-group{gap:4px;display:flex}.map-preset-btn{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:6px;padding:3px 8px;font-family:IBM Plex Sans,sans-serif;font-size:11px}.map-preset-btn:hover{background:var(--hover);color:var(--text-secondary)}.map-preset-btn.active{background:var(--purple-dim);border-color:var(--purple);color:var(--purple)}.map-clear-filters{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-family:IBM Plex Sans,sans-serif;font-size:12px;display:flex}.map-clear-filters:hover{background:var(--hover);color:var(--text)}.map-filter-badge{background:var(--purple);color:#fff;text-align:center;border-radius:8px;min-width:16px;padding:1px 6px;font-size:10px;font-weight:600}.map-timeline{background:var(--bg);border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:6px 16px;display:flex}.map-timeline-play{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;display:flex}.map-timeline-play:hover{background:var(--hover);color:var(--text)}.map-timeline-play.playing{color:var(--purple);border-color:var(--purple)}.map-timeline-slider{accent-color:var(--purple);flex:1;min-width:100px}.map-timeline-date{color:var(--text-dim);white-space:nowrap;flex-shrink:0;font-size:11px}.map-timeline-current{color:var(--purple);white-space:nowrap;text-align:right;flex-shrink:0;min-width:100px;font-size:12px;font-weight:500}
