@charset "UTF-8";:root{--bg: #0f1117;--bg-surface: #1a1d27;--bg-elevated: #22263a;--border: #2e3348;--text: #e8eaf0;--text-muted: #8892a4;--text-dim: #4a5268;--accent: #6c8ef5;--accent-hover: #8aaaf7;--success: #4ade80;--warning: #facc15;--danger: #f87171;--radius-sm: 4px;--radius: 8px;--radius-lg: 12px;--font-mono: "JetBrains Mono", "Fira Mono", monospace;--transition: .12s ease}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}#app{height:100%}a{color:inherit;text-decoration:none}input,button,textarea,select{font:inherit}button{cursor:pointer;border:none;background:none}ul,ol{list-style:none;margin:0;padding:0}h1,h2,h3,h4{margin:0;font-weight:600}.app-shell{display:flex;height:100vh;overflow:hidden}.sidebar{width:220px;flex-shrink:0;background:var(--bg-surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:24px 0}@media(max-width:768px){.sidebar{width:100%;height:56px;flex-direction:row;align-items:stretch;border-right:none;border-top:1px solid var(--border);padding:0;position:fixed;bottom:0;left:0;right:0;z-index:50}}.sidebar-logo{font-size:18px;font-weight:700;letter-spacing:.05em;color:var(--accent);padding:0 24px 24px;border-bottom:1px solid var(--border);margin-bottom:8px}@media(max-width:768px){.sidebar-logo{display:none}}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:2px;padding:0 8px}@media(max-width:768px){.sidebar-nav{flex-direction:row;align-items:stretch;padding:0;gap:0}}.sidebar-nav a{display:block;padding:8px 16px;border-radius:var(--radius-sm);color:var(--text-muted);font-size:13px;font-weight:500;transition:background var(--transition),color var(--transition),border-color var(--transition)}.sidebar-nav a:hover{background:var(--bg-elevated);color:var(--text)}.sidebar-nav a.router-link-active{background:var(--bg-elevated);color:var(--accent)}@media(max-width:768px){.sidebar-nav a{flex:1;display:flex;align-items:center;justify-content:center;padding:0 4px;font-size:12px;border-radius:0;border-top:2px solid transparent}.sidebar-nav a:hover{background:transparent;color:var(--text-muted)}.sidebar-nav a.router-link-active{background:transparent;color:var(--accent);border-top-color:var(--accent)}.sidebar-nav a .nav-hint{display:none}}.nav-hint{font-family:var(--font-mono);font-size:10px;color:var(--text-dim);background:var(--bg-elevated);border:1px solid var(--border);border-radius:3px;padding:1px 4px;margin-left:auto;font-style:normal;letter-spacing:0;line-height:1.4}.sidebar-tags{display:flex;flex-direction:column;gap:1px;padding:0 8px;margin-top:8px}@media(max-width:768px){.sidebar-tags{display:none}}.sidebar-tags-label{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);padding:4px 16px}.sidebar-tag{display:block;padding:5px 16px;border-radius:var(--radius-sm);font-size:12px;color:var(--text-muted);transition:background var(--transition),color var(--transition)}.sidebar-tag:hover{background:var(--bg-elevated);color:var(--text)}.sidebar-tag.active{color:var(--accent);background:var(--bg-elevated)}.sidebar-footer{padding:8px 16px;border-top:1px solid var(--border);margin-top:8px;display:flex;align-items:center;gap:8px}@media(max-width:768px){.sidebar-footer{display:none}}.main-content{flex:1;overflow-y:auto;padding:24px 40px}@media(max-width:768px){.main-content{padding:16px 16px 72px}}.btn{display:inline-flex;align-items:center;gap:4px;padding:6px 16px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;transition:background var(--transition),color var(--transition),opacity var(--transition);cursor:pointer}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.btn-sm{padding:3px 8px;font-size:12px}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border)}.btn-ghost:hover:not(:disabled){background:var(--bg-elevated);color:var(--text)}.btn-danger{background:transparent;color:var(--danger);border:1px solid var(--danger)}.btn-danger:hover:not(:disabled){background:#f871711a}.input,.search-input input,.textarea{width:100%;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:7px 8px;font-size:13px;outline:none;transition:border-color var(--transition)}.input::placeholder,.search-input input::placeholder,.textarea::placeholder{color:var(--text-dim)}.input:focus,.search-input input:focus,.textarea:focus{border-color:var(--accent)}.textarea{resize:vertical;min-height:80px}.search-input{position:relative}.search-input input{padding-left:32px}.search-input:before{content:"⌕";position:absolute;left:8px;top:50%;transform:translateY(-50%);color:var(--text-dim);pointer-events:none;font-size:16px}.badge,.badge-status{display:inline-flex;align-items:center;padding:2px 8px;border-radius:100px;font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.badge.badge-person,.badge-person.badge-status{background:#6c8ef526;color:var(--accent)}.badge.badge-org,.badge-org.badge-status{background:#a78bfa26;color:#a78bfa}.badge.badge-project,.badge-project.badge-status{background:#2dd4bf26;color:#2dd4bf}.badge-status.status-active{background:#4ade8026;color:var(--success)}.badge-status.status-paused{background:#facc1526;color:var(--warning)}.badge-status.status-done{background:#4a556826;color:var(--text-dim)}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:40px;width:480px;max-width:calc(100vw - 32px);max-height:90vh;overflow-y:auto}@media(max-width:768px){.modal{width:100%;max-width:100%;max-height:85vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:24px 16px;margin-top:auto;align-self:flex-end}}@media(max-width:768px){.modal-overlay{align-items:flex-end}}.modal-title{font-size:16px;font-weight:600;margin-bottom:24px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;color:var(--text-dim);font-size:13px;gap:8px}.loading-spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:15px;height:15px;flex-shrink:0;border:1.5px solid var(--border);border-radius:3px;background:var(--bg-elevated);cursor:pointer;position:relative;transition:background var(--transition),border-color var(--transition);vertical-align:middle}input[type=checkbox]:after{content:"";position:absolute;display:none;left:4px;top:1px;width:4px;height:8px;border:1.5px solid #fff;border-top:none;border-left:none;transform:rotate(45deg)}input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}input[type=checkbox]:checked:after{display:block}input[type=checkbox]:disabled{opacity:.4;cursor:not-allowed}input[type=checkbox]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-shortcut-hint{font-family:var(--font-mono);font-size:10px;color:#ffffff80;background:#ffffff1f;border:none;border-radius:3px;padding:1px 4px;margin-left:4px;letter-spacing:0;line-height:1.4;vertical-align:middle}@media(max-width:768px){.btn-shortcut-hint{display:none}}.modal-actions{display:flex;justify-content:flex-end;gap:16px;margin-top:4px}.form-group{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.form-group label{font-size:12px;font-weight:500;color:var(--text-muted)}.form-error{font-size:12px;color:var(--danger);margin-top:4px}.filter-chips{display:flex;gap:.4rem;flex-wrap:wrap}.chip{padding:.2rem .7rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-surface);color:var(--text-muted);font-size:.8rem;cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition)}.chip:hover{background:var(--bg-elevated);color:var(--text)}.chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.chip.chip-org.active{background:#a78bfa;border-color:#a78bfa}.chip.chip-project.active{background:#2dd4bf;border-color:#2dd4bf;color:#0f1117}.chip.chip-tag.active{background:#6c8ef540;border-color:var(--accent);color:var(--accent)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-header h1{font-size:20px}.view-container{padding:2rem;max-width:720px;margin:0 auto}@media(max-width:768px){.view-container{padding:16px 0}}.unlock-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px}.unlock-card{width:100%;max-width:380px}.unlock-logo{font-size:24px;font-weight:700;color:var(--accent);letter-spacing:.1em;margin-bottom:4px}.unlock-tagline{font-size:13px;color:var(--text-muted);margin-bottom:40px}.unlock-hint{font-size:12px;color:var(--text-dim);margin-top:8px}.task-groups{display:flex;flex-direction:column;gap:24px}.task-group-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px}.task-group-label.overdue{color:var(--danger)}.task-group-label.today{color:var(--warning)}.task-item{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition)}.task-item:hover{background:var(--bg-elevated)}.task-item .task-title{flex:1;font-size:13px}.task-item .task-date{font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.task-item .task-date.overdue{color:var(--danger)}.task-item .task-date.today{color:var(--warning)}.task-item .task-node{font-size:11px;color:var(--text-dim)}.nodes-page .search-row{margin-bottom:24px;display:flex;gap:8px}.node-list{display:flex;flex-direction:column;gap:8px}.node-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition)}.node-item:hover{background:var(--bg-elevated)}.node-item .node-name{font-size:13px;font-weight:500}.node-item .node-last-contact{font-family:var(--font-mono);font-size:11px;color:var(--text-dim)}.node-page{max-width:800px}.node-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.node-header .node-title{font-size:22px;font-weight:700}.node-header .node-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.profile-section{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-bottom:24px}.profile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.profile-field{display:flex;flex-direction:column;gap:3px}.profile-label{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim)}.profile-value{font-size:13px;color:var(--text)}.profile-value.mono{font-family:var(--font-mono)}.profile-value.empty{color:var(--text-dim);font-style:italic}.log-section{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.log-section-title{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);padding:16px 24px;border-bottom:1px solid var(--border)}.log-feed{padding:8px;display:flex;flex-direction:column;gap:2px}.log-entry{padding:8px 16px;border-radius:var(--radius-sm);display:flex;gap:8px}.log-entry:hover{background:var(--bg-elevated)}.log-entry .log-entry-meta{display:flex;flex-direction:column;gap:2px;flex:1}.log-entry .log-entry-title{font-size:13px}.log-entry .log-entry-body{font-size:12px;color:var(--text-muted);margin-top:2px}.log-entry .log-entry-date{font-family:var(--font-mono);font-size:11px;color:var(--text-dim);white-space:nowrap}.log-entry.overdue .log-entry-date{color:var(--danger)}.log-entry.entry-task .log-entry-title:before{content:"○ ";color:var(--text-dim)}.log-entry.entry-task.completed .log-entry-title:before{content:"✓ ";color:var(--success)}.log-composer{border-top:1px solid var(--border);padding:16px 24px}.log-composer .composer-row{display:flex;gap:8px;margin-bottom:8px;align-items:center}.log-composer .composer-toggle{display:flex;gap:4px}.log-composer .toggle-btn{padding:3px 8px;font-size:12px;border-radius:var(--radius-sm);color:var(--text-muted);border:1px solid var(--border);background:transparent;cursor:pointer}.log-composer .toggle-btn.active{background:var(--bg-elevated);color:var(--accent);border-color:var(--accent)}.inline-input{font-size:1.25rem;font-weight:700;border:none;border-bottom:1px solid var(--border);outline:none;padding:.1rem .2rem;width:260px;background:transparent;color:var(--text)}@media(max-width:768px){.inline-input{width:100%}}.profile-fields{display:grid;grid-template-columns:130px 1fr;row-gap:8px;column-gap:16px}.profile-fields dt{font-size:.85rem;font-weight:600;color:var(--text-muted);padding-top:.2rem}.profile-fields dd{margin:0;color:var(--text)}@media(max-width:768px){.profile-fields{grid-template-columns:1fr;row-gap:4px}.profile-fields dt{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);padding-top:8px}.profile-fields dt:first-child{padding-top:0}}.field-input{width:100%;padding:.25rem .4rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.9rem;box-sizing:border-box;background:var(--bg-elevated);color:var(--text)}.shortcuts-overlay[data-v-668a4643]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:200}.shortcuts-panel[data-v-668a4643]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:380px;max-width:calc(100vw - 32px);overflow:hidden}.shortcuts-header[data-v-668a4643]{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--border)}.shortcuts-title[data-v-668a4643]{font-size:13px;font-weight:600;color:var(--text)}.shortcuts-close[data-v-668a4643]{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:12px;padding:2px 4px}.shortcuts-close[data-v-668a4643]:hover{color:var(--text)}.shortcuts-body[data-v-668a4643]{padding:12px 20px 16px;display:flex;flex-direction:column;gap:16px}.shortcuts-section-title[data-v-668a4643]{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin-bottom:6px}.shortcuts-list[data-v-668a4643]{display:flex;flex-direction:column;gap:4px}.shortcuts-row[data-v-668a4643]{display:flex;align-items:center;justify-content:space-between;gap:8px}.shortcuts-keys[data-v-668a4643]{display:flex;align-items:center;gap:3px}.shortcuts-keys kbd[data-v-668a4643]{display:inline-flex;align-items:center;justify-content:center;min-width:22px;padding:2px 5px;background:var(--bg-elevated);border:1px solid var(--border);border-bottom-width:2px;border-radius:4px;font-family:var(--font-mono);font-size:11px;color:var(--text-muted);white-space:nowrap}.shortcuts-action[data-v-668a4643]{font-size:12px;color:var(--text-muted);margin:0}.save-indicator[data-v-8d67acd0]{font-size:11px;color:var(--text-dim);padding:0 8px}.btn-hint[data-v-8d67acd0]{font-family:var(--font-mono);font-size:10px;color:var(--text-dim);background:none;border:none;padding:0;margin-left:2px;letter-spacing:0}.conflict-banner[data-v-8d67acd0]{background:#f871711a;border:1px solid var(--danger);border-radius:var(--radius-sm);padding:10px 16px;margin-bottom:16px;font-size:13px;display:flex;align-items:center;gap:12px;color:var(--danger)}.form-group[data-v-fb8d44de]{gap:6px;margin-bottom:12px}.wizard-steps[data-v-e98d2d82]{display:flex;align-items:center;gap:8px;margin-bottom:24px;font-size:12px}.wizard-step[data-v-e98d2d82]{color:var(--text-dim)}.wizard-step.active[data-v-e98d2d82]{color:var(--accent);font-weight:600}.wizard-step.done[data-v-e98d2d82]{color:var(--success)}.wizard-sep[data-v-e98d2d82]{color:var(--text-dim)}.strength-bar[data-v-e98d2d82]{height:3px;background:var(--border);border-radius:2px;margin-top:6px;overflow:hidden}.strength-fill[data-v-e98d2d82]{height:100%;border-radius:2px;transition:width .2s ease,background .2s ease}.strength-label[data-v-e98d2d82]{font-size:11px;margin-top:3px}.wizard-buttons[data-v-e98d2d82]{display:flex;gap:8px;margin-top:4px}.wizard-buttons .btn-primary[data-v-e98d2d82]{flex:1}.dash-section[data-v-d30578e2]{margin-bottom:2rem}.section-label[data-v-d30578e2]{font-size:.8rem;font-weight:700;margin-bottom:.6rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.section-label.overdue-label[data-v-d30578e2]{color:var(--danger)}.task-list[data-v-d30578e2]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.task-item[data-v-d30578e2]{display:flex;align-items:center;gap:.75rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.5rem .75rem;flex-wrap:wrap}.task-date[data-v-d30578e2]{font-size:.8rem;color:var(--text-muted);min-width:80px;flex-shrink:0}.task-date.overdue-date[data-v-d30578e2]{color:var(--danger);font-weight:600}.task-title[data-v-d30578e2]{flex:1;text-align:left;min-width:120px}.link-btn[data-v-d30578e2]{background:none;border:none;padding:0;cursor:pointer;font-size:.95rem;color:var(--accent);text-decoration:underline}.task-node[data-v-d30578e2]{font-size:.8rem;color:var(--text-muted)}@media(max-width:480px){.task-node[data-v-d30578e2]{width:100%;order:3}}.btn-complete[data-v-d30578e2]{padding:.2rem .6rem;font-size:.8rem;cursor:pointer;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);transition:background var(--transition);flex-shrink:0}.btn-complete[data-v-d30578e2]:hover{background:var(--bg-surface)}.widget-grid[data-v-d30578e2]{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}@media(max-width:640px){.widget-grid[data-v-d30578e2]{grid-template-columns:1fr}}.widget[data-v-d30578e2]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.widget-list[data-v-d30578e2]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.widget-row[data-v-d30578e2]{display:flex;align-items:center;gap:.5rem}.widget-name[data-v-d30578e2]{flex:1;font-size:.875rem;color:var(--text);text-decoration:none;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-name[data-v-d30578e2]:hover{color:var(--accent)}.widget-meta[data-v-d30578e2]{font-size:.75rem;color:var(--text-muted);flex-shrink:0}.widget-tag[data-v-d30578e2]{font-size:.7rem;font-weight:600;padding:.15rem .45rem;border-radius:999px;flex-shrink:0}.widget-tag.tag-today[data-v-d30578e2]{background:#22c55e26;color:#22c55e}.widget-tag.tag-soon[data-v-d30578e2]{background:#6c8ef526;color:var(--accent)}.widget-tag.tag-later[data-v-d30578e2]{background:var(--bg-elevated);color:var(--text-muted)}.widget-tag.tag-overdue[data-v-d30578e2]{background:#f8717126;color:var(--danger)}.widget-empty[data-v-d30578e2]{font-size:.8rem;color:var(--text-dim);margin:0}.recent-list[data-v-d30578e2]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem}.recent-item[data-v-d30578e2]{display:flex;align-items:center;gap:.5rem;padding:.35rem .5rem;border-radius:var(--radius-sm);transition:background var(--transition)}.recent-item[data-v-d30578e2]:hover{background:var(--bg-surface)}.recent-name[data-v-d30578e2]{flex:1;font-size:.875rem;color:var(--text);text-decoration:none}.recent-name[data-v-d30578e2]:hover{color:var(--accent)}.recent-date[data-v-d30578e2]{font-size:.75rem;color:var(--text-dim);flex-shrink:0}.empty[data-v-d30578e2]{color:var(--text-muted);text-align:center;margin-top:3rem}.search-bar[data-v-f4a33584]{margin-bottom:1rem}.filter-chips[data-v-f4a33584]{margin-bottom:.75rem}.filter-chips-tags[data-v-f4a33584]{margin-top:-.35rem}.node-item[data-v-f4a33584]{outline:none}.node-item[data-v-f4a33584]:focus-visible{background:var(--bg-elevated);box-shadow:0 0 0 2px var(--accent)}.person-hints[data-v-f4a33584],.last-contact[data-v-f4a33584]{font-size:.78rem;color:var(--text-muted)}.person-hints[data-v-f4a33584]{font-family:var(--font-mono, monospace);flex-shrink:0}.node-item-spacer[data-v-f4a33584]{flex:1}.empty[data-v-f4a33584]{color:var(--text-muted);text-align:center;margin-top:3rem}.profile-section h2[data-v-12018110]{margin-bottom:1rem;display:flex;gap:.5rem;align-items:center;color:var(--text)}.inline-input[data-v-12018110]{width:160px}.person-section[data-v-782950c9]{margin-bottom:1.25rem}.person-section-header[data-v-782950c9]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}.person-section-title[data-v-782950c9]{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-dim)}.add-btn[data-v-782950c9]{font-size:11px;color:var(--text-muted);background:none;border:none;cursor:pointer;padding:0}.add-btn[data-v-782950c9]:hover{color:var(--accent)}.detail-row[data-v-782950c9]{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;padding:.3rem 0;border-bottom:1px solid var(--border)}.detail-row[data-v-782950c9]:last-of-type{border-bottom:none}.detail-content[data-v-782950c9]{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.detail-label[data-v-782950c9]{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.detail-value[data-v-782950c9]{font-size:13px;color:var(--text)}.detail-btns[data-v-782950c9]{display:flex;gap:4px;flex-shrink:0}.icon-btn[data-v-782950c9]{background:none;border:none;cursor:pointer;font-size:13px;color:var(--text-dim);padding:2px 4px;border-radius:var(--radius-sm);opacity:0;transition:opacity var(--transition),color var(--transition)}.icon-btn.danger[data-v-782950c9]:hover{color:var(--danger)}.icon-btn[data-v-782950c9]:not(.danger):hover{color:var(--accent)}.detail-row:hover .icon-btn[data-v-782950c9]{opacity:1}.addr-form[data-v-782950c9]{display:flex;flex-direction:column;gap:6px;padding:.5rem 0;width:100%}.addr-row-2[data-v-782950c9]{display:grid;grid-template-columns:1fr 1fr;gap:6px}.addr-actions[data-v-782950c9]{display:flex;justify-content:flex-end;gap:6px;margin-top:2px}.empty-hint[data-v-782950c9]{font-size:12px;color:var(--text-dim);margin:0}.person-section[data-v-f098fb9f]{margin-bottom:1.25rem}.person-section-header[data-v-f098fb9f]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}.person-section-title[data-v-f098fb9f]{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-dim)}.add-btn[data-v-f098fb9f]{font-size:11px;color:var(--text-muted);background:none;border:none;cursor:pointer;padding:0}.add-btn[data-v-f098fb9f]:hover{color:var(--accent)}.detail-row[data-v-f098fb9f]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.3rem 0;border-bottom:1px solid var(--border)}.detail-row[data-v-f098fb9f]:last-of-type{border-bottom:none}.detail-content[data-v-f098fb9f]{display:flex;align-items:baseline;gap:.5rem;flex:1;min-width:0}.detail-label[data-v-f098fb9f]{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.detail-value[data-v-f098fb9f]{font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-btn[data-v-f098fb9f]{background:none;border:none;cursor:pointer;font-size:13px;color:var(--text-dim);padding:2px 4px;border-radius:var(--radius-sm);opacity:0;transition:opacity var(--transition),color var(--transition);flex-shrink:0}.icon-btn.danger[data-v-f098fb9f]:hover{color:var(--danger)}.detail-row:hover .icon-btn[data-v-f098fb9f]{opacity:1}.add-form[data-v-f098fb9f]{display:flex;flex-direction:column;gap:6px;padding:.5rem 0}.type-select[data-v-f098fb9f]{text-transform:capitalize}.addr-actions[data-v-f098fb9f]{display:flex;justify-content:flex-end;gap:6px}.empty-hint[data-v-f098fb9f]{font-size:12px;color:var(--text-dim);margin:0}.profile-section h2[data-v-d661f7a1]{margin-bottom:1rem;color:var(--text)}.profile-section h2[data-v-c9e27e3b]{margin-bottom:1rem;display:flex;align-items:center;gap:.75rem;color:var(--text)}.log-entry[data-v-e52e6dbe]{display:flex;align-items:flex-start;gap:.6rem;padding:.5rem .6rem;border-radius:var(--radius-sm);background:var(--bg-surface);border:1px solid var(--border);position:relative}.log-entry.is-completed[data-v-e52e6dbe]{opacity:.5}.task-checkbox[data-v-e52e6dbe]{margin-top:.2rem;flex-shrink:0}.event-dot[data-v-e52e6dbe]{width:8px;height:8px;border-radius:50%;background:var(--text-dim);margin-top:.35rem;flex-shrink:0}.entry-content[data-v-e52e6dbe]{flex:1;display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem}.entry-title[data-v-e52e6dbe]{font-size:.9rem;font-weight:500;color:var(--text)}.entry-title.completed[data-v-e52e6dbe]{text-decoration:line-through;color:var(--text-dim)}.entry-date[data-v-e52e6dbe]{font-size:.78rem;color:var(--text-muted)}.entry-date.overdue[data-v-e52e6dbe]{color:var(--danger);font-weight:600}.entry-body[data-v-e52e6dbe]{width:100%;margin:.25rem 0 0;font-size:.85rem;color:var(--text-muted);white-space:pre-wrap}.expand-btn[data-v-e52e6dbe]{background:none;border:none;font-size:.78rem;color:var(--accent);cursor:pointer;padding:0}.entry-actions[data-v-e52e6dbe]{display:flex;align-items:center;gap:.15rem;flex-shrink:0;opacity:0;transition:opacity .15s}.log-entry:hover .entry-actions[data-v-e52e6dbe]{opacity:1}.action-btn[data-v-e52e6dbe]{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:.8rem;padding:.1rem .25rem;line-height:1;border-radius:var(--radius-sm)}.action-btn[data-v-e52e6dbe]:hover{color:var(--text);background:var(--bg-elevated)}.delete-btn[data-v-e52e6dbe]:hover{color:var(--danger);background:#f871711a}.entry-edit[data-v-e52e6dbe]{flex:1;display:flex;flex-direction:column;gap:.4rem}.edit-input[data-v-e52e6dbe]{font-size:.875rem;padding:.3rem .5rem}.edit-date[data-v-e52e6dbe]{width:fit-content}.edit-textarea[data-v-e52e6dbe]{font-size:.875rem;padding:.3rem .5rem;resize:vertical;min-height:60px;font-family:inherit}.edit-actions[data-v-e52e6dbe]{display:flex;gap:.5rem;justify-content:flex-end}.composer[data-v-f838185e]{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface)}.composer-row[data-v-f838185e]{display:flex;gap:.5rem}@media(max-width:480px){.composer-row[data-v-f838185e]{flex-direction:column}}.title-input[data-v-f838185e]{flex:1;padding:.4rem .6rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.9rem;background:var(--bg-elevated);color:var(--text)}.title-input[data-v-f838185e]::placeholder{color:var(--text-muted)}.date-input[data-v-f838185e]{padding:.4rem .5rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.85rem;background:var(--bg-elevated);color:var(--text)}@media(max-width:480px){.date-input[data-v-f838185e]{width:100%}}.composer-controls[data-v-f838185e]{display:flex;align-items:center;gap:1rem}.toggle-label[data-v-f838185e]{display:flex;align-items:center;gap:.3rem;font-size:.85rem;cursor:pointer;color:var(--text-muted)}.body-toggle[data-v-f838185e]{background:none;border:none;color:var(--accent);font-size:.8rem;cursor:pointer;padding:0}.body-input[data-v-f838185e]{padding:.4rem .6rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.85rem;resize:vertical;font-family:inherit;background:var(--bg-elevated);color:var(--text)}.body-input[data-v-f838185e]::placeholder{color:var(--text-muted)}.error[data-v-f838185e]{color:var(--danger);font-size:.8rem;margin:0}.btn-submit[data-v-f838185e]{align-self:flex-end;padding:.35rem 1rem;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.875rem;cursor:pointer;transition:background var(--transition)}.btn-submit[data-v-f838185e]:hover{background:var(--accent-hover)}.btn-submit[data-v-f838185e]:disabled{opacity:.6;cursor:not-allowed}.log-feed[data-v-2fa473e1]{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}.log-feed h3[data-v-2fa473e1]{margin-bottom:1rem;color:var(--text)}.group-label[data-v-2fa473e1]{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:1rem 0 .4rem}.group-label.muted[data-v-2fa473e1]{color:var(--text-dim)}.entry-list[data-v-2fa473e1]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.empty[data-v-2fa473e1]{color:var(--text-muted);font-size:.875rem;margin:.5rem 0 1rem}.composer-wrapper[data-v-2fa473e1]{margin-top:1.5rem}.rel-edge[data-v-9dc33151]{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);gap:.75rem}.rel-main[data-v-9dc33151]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;flex:1;min-width:0;border-radius:var(--radius-sm);outline:none}.rel-main:hover .rel-name[data-v-9dc33151]{color:var(--accent)}.rel-main[data-v-9dc33151]:focus-visible{box-shadow:0 0 0 2px var(--accent)}.rel-name[data-v-9dc33151]{font-size:13px;font-weight:500;color:var(--text)}.rel-type-badge[data-v-9dc33151]{background:#6c8ef51f;color:var(--accent)}.rel-detail[data-v-9dc33151]{font-size:12px;color:var(--text-muted)}.rel-since[data-v-9dc33151]{font-size:11px;color:var(--text-dim);font-family:var(--font-mono, monospace)}.rel-delete[data-v-9dc33151]{flex-shrink:0;color:var(--text-dim)}.rel-delete[data-v-9dc33151]:hover{color:var(--danger);border-color:var(--danger);background:#f871711a}.rel-preview[data-v-454f5cd1]{display:flex;align-items:center;gap:8px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;margin-bottom:16px}.rel-preview-rows[data-v-454f5cd1]{flex:1;display:flex;flex-direction:column;gap:3px}.rel-preview-row[data-v-454f5cd1]{display:flex;align-items:center;gap:5px;font-size:12px;flex-wrap:wrap}.rel-preview-name[data-v-454f5cd1]{font-weight:500;color:var(--text)}.rel-preview-arrow[data-v-454f5cd1]{color:var(--text-dim);font-size:11px}.rel-preview-label[data-v-454f5cd1]{color:var(--accent);font-weight:600}.rel-flip-btn[data-v-454f5cd1]{flex-shrink:0;font-size:14px;padding:2px 6px}.search-results[data-v-454f5cd1]{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);max-height:160px;overflow-y:auto}.search-result-item[data-v-454f5cd1]{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;font-size:13px;cursor:pointer;gap:8px}.search-result-item[data-v-454f5cd1]:hover{background:var(--bg-elevated)}.tag-editor[data-v-22704f45]{margin:1rem 0 1.5rem}.tag-chips[data-v-22704f45]{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.tag-chip[data-v-22704f45]{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .5rem;background:#6c8ef51f;color:var(--accent);border-radius:999px;font-size:.78rem;font-weight:500}.tag-remove[data-v-22704f45]{background:none;border:none;color:var(--accent);cursor:pointer;font-size:.85rem;line-height:1;padding:0;opacity:.6}.tag-remove[data-v-22704f45]:hover{opacity:1}.tag-add-btn[data-v-22704f45]{background:none;border:1px dashed var(--border);border-radius:999px;color:var(--text-muted);cursor:pointer;font-size:.78rem;padding:.15rem .5rem;transition:border-color var(--transition),color var(--transition)}.tag-add-btn[data-v-22704f45]:hover{border-color:var(--accent);color:var(--accent)}.tag-add-wrap[data-v-22704f45]{position:relative}.tag-dropdown[data-v-22704f45]{position:absolute;top:0;left:0;z-index:50;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);width:200px;box-shadow:0 4px 12px #0000004d;display:flex;flex-direction:column}.tag-input[data-v-22704f45]{padding:.35rem .6rem;border:none;border-bottom:1px solid var(--border);background:transparent;color:var(--text);font-size:.85rem;outline:none;width:100%;box-sizing:border-box}.tag-list[data-v-22704f45]{list-style:none;margin:0;padding:.25rem 0;max-height:140px;overflow-y:auto}.tag-list li[data-v-22704f45]{padding:.3rem .6rem;font-size:.85rem;cursor:pointer;color:var(--text)}.tag-list li[data-v-22704f45]:hover{background:var(--bg-elevated)}.tag-list li.tag-create[data-v-22704f45]{color:var(--accent)}.tag-list li.tag-empty[data-v-22704f45]{color:var(--text-dim);cursor:default}.tag-cancel[data-v-22704f45]{background:none;border:none;border-top:1px solid var(--border);color:var(--text-muted);cursor:pointer;font-size:.78rem;padding:.3rem .6rem;text-align:left}.tag-cancel[data-v-22704f45]:hover{color:var(--text)}.node-topbar[data-v-61188af9]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:.5rem}.back-btn[data-v-61188af9]{background:none;border:none;cursor:pointer;font-size:.95rem;color:var(--accent);padding:0}.node-actions[data-v-61188af9]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.btn-secondary[data-v-61188af9]{padding:.35rem .8rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text);cursor:pointer;font-size:.875rem;transition:background var(--transition)}.btn-secondary[data-v-61188af9]:hover{background:var(--bg-surface)}.btn-danger[data-v-61188af9]{padding:.35rem .8rem;border:none;border-radius:var(--radius-sm);background:var(--danger);color:#fff;cursor:pointer;font-size:.875rem}.btn-danger[data-v-61188af9]:disabled{opacity:.6;cursor:not-allowed}.confirm-text[data-v-61188af9]{font-size:.875rem;color:var(--danger);font-weight:600}.relationships-section[data-v-61188af9]{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}.rel-header[data-v-61188af9]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.rel-header h3[data-v-61188af9]{margin:0;color:var(--text)}.rel-list[data-v-61188af9]{display:flex;flex-direction:column;gap:.4rem}.placeholder-text[data-v-61188af9]{color:var(--text-muted);font-size:.9rem}.loading-text[data-v-61188af9]{text-align:center;color:var(--text-muted);margin-top:3rem}.graph-view[data-v-7992fd60]{display:flex;flex-direction:column;height:calc(100vh - 80px);background:var(--bg);overflow:hidden}.graph-toolbar[data-v-7992fd60]{display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--bg-surface);border-bottom:1px solid var(--border);flex-shrink:0}.toolbar-label[data-v-7992fd60]{color:var(--text-muted);font-size:13px}.filter-check[data-v-7992fd60]{display:flex;align-items:center;gap:5px;color:var(--text);font-size:13px;cursor:pointer;text-transform:capitalize}.refresh-btn[data-v-7992fd60]{margin-left:auto;padding:4px 14px;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;transition:background var(--transition)}.refresh-btn[data-v-7992fd60]:hover{background:var(--accent);border-color:var(--accent);color:#fff}.svg-wrapper[data-v-7992fd60]{flex:1;position:relative;overflow:hidden}.graph-svg[data-v-7992fd60]{width:100%;height:100%;display:block}.empty-state[data-v-7992fd60]{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:15px}.date-group[data-v-a2449400]{margin-bottom:2rem}.date-heading[data-v-a2449400]{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:.6rem;padding-bottom:.3rem;border-bottom:1px solid var(--border)}.group-entries[data-v-a2449400]{display:flex;flex-direction:column;gap:.75rem}.journal-item[data-v-a2449400]{display:flex;flex-direction:column;gap:4px}.node-ctx[data-v-a2449400]{display:flex;align-items:center;gap:.4rem;text-decoration:none;padding-left:.2rem}.node-ctx .node-ctx-name[data-v-a2449400]{font-size:.75rem;color:var(--text-muted);transition:color var(--transition)}.node-ctx:hover .node-ctx-name[data-v-a2449400]{color:var(--accent)}.empty[data-v-a2449400]{color:var(--text-muted);text-align:center;margin-top:3rem}.settings[data-v-eb3224f9]{max-width:480px;margin:0 auto;padding:2rem 1rem;color:var(--text)}@media(max-width:768px){.settings[data-v-eb3224f9]{padding:1rem 0}}.settings__title[data-v-eb3224f9]{font-size:1.5rem;font-weight:600;margin-bottom:2rem}.settings__section[data-v-eb3224f9]{margin-bottom:2.5rem;padding:1.5rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius)}.settings__section--danger[data-v-eb3224f9]{border-color:var(--danger)}.settings__section-title[data-v-eb3224f9]{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--text)}.settings__form[data-v-eb3224f9]{display:flex;flex-direction:column;gap:.75rem}.settings__label[data-v-eb3224f9]{display:flex;flex-direction:column;gap:.25rem;font-size:.875rem;color:var(--text-muted)}.settings__input[data-v-eb3224f9]{padding:.5rem .75rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:.875rem;outline:none}.settings__input[data-v-eb3224f9]:focus{border-color:var(--accent)}.settings__description[data-v-eb3224f9]{font-size:.875rem;color:var(--text-dim);margin-bottom:1rem}.settings__error[data-v-eb3224f9]{font-size:.875rem;color:var(--danger)}.settings__success[data-v-eb3224f9]{font-size:.875rem;color:var(--success)}.settings__perm[data-v-eb3224f9]{font-size:.875rem;font-weight:600;margin-bottom:.75rem}.settings__perm--granted[data-v-eb3224f9]{color:var(--success)}.settings__perm--default[data-v-eb3224f9]{color:var(--text-muted)}.settings__perm--denied[data-v-eb3224f9]{color:var(--danger)}.settings__btn[data-v-eb3224f9]{padding:.5rem 1.25rem;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.875rem;cursor:pointer;align-self:flex-start;margin-top:.25rem;transition:background var(--transition)}.settings__btn[data-v-eb3224f9]:hover:not(:disabled){background:var(--accent-hover)}.settings__btn[data-v-eb3224f9]:disabled{opacity:.5;cursor:not-allowed}.settings__btn--danger[data-v-eb3224f9]{background:var(--danger)}
