.auth-page[data-v-7e2e9b51]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px;background:linear-gradient(180deg,var(--color-bg) 0%,var(--color-primary-soft) 100%)}.auth-card[data-v-7e2e9b51]{width:100%;max-width:380px;padding:32px;box-shadow:var(--shadow-lg)}.brand-row[data-v-7e2e9b51]{display:flex;align-items:center;gap:10px;margin-bottom:4px}.brand-mark[data-v-7e2e9b51]{width:32px;height:32px;border-radius:9px;background:var(--color-primary);color:#fff;font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}h1[data-v-7e2e9b51]{margin:0;font-size:20px}.subtitle[data-v-7e2e9b51]{margin:10px 0 24px;color:var(--color-text-muted);font-size:14px}.btn[data-v-7e2e9b51]{width:100%}.switch-link[data-v-7e2e9b51]{margin-top:16px;text-align:center;font-size:14px;color:var(--color-text-muted)}.switch-link a[data-v-7e2e9b51]{color:var(--color-primary);text-decoration:none;font-weight:600}.auth-page[data-v-2989188f]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px;background:linear-gradient(180deg,var(--color-bg) 0%,var(--color-primary-soft) 100%)}.auth-card[data-v-2989188f]{width:100%;max-width:380px;padding:32px;box-shadow:var(--shadow-lg)}.brand-row[data-v-2989188f]{display:flex;align-items:center;gap:10px;margin-bottom:4px}.brand-mark[data-v-2989188f]{width:32px;height:32px;border-radius:9px;background:var(--color-primary);color:#fff;font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}h1[data-v-2989188f]{margin:0;font-size:22px}.subtitle[data-v-2989188f]{margin:10px 0 24px;color:var(--color-text-muted);font-size:14px}.btn[data-v-2989188f]{width:100%}.switch-link[data-v-2989188f]{margin-top:16px;text-align:center;font-size:14px;color:var(--color-text-muted)}.switch-link a[data-v-2989188f]{color:var(--color-primary);text-decoration:none;font-weight:600}.timer-widget[data-v-1762a3b7]{background:var(--color-danger-soft);border-radius:var(--radius-sm);padding:8px 10px;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.timer-info[data-v-1762a3b7]{display:flex;align-items:center;gap:8px;min-width:0}.timer-dot[data-v-1762a3b7]{width:8px;height:8px;border-radius:50%;background:var(--color-danger);flex-shrink:0;animation:pulse-1762a3b7 1.5s ease-in-out infinite}@keyframes pulse-1762a3b7{0%,to{opacity:1}50%{opacity:.3}}.timer-text[data-v-1762a3b7]{min-width:0}.timer-task[data-v-1762a3b7]{margin:0;font-size:11.5px;font-weight:700;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.timer-elapsed[data-v-1762a3b7]{margin:1px 0 0;font-size:11px;color:var(--color-danger);font-weight:600;font-variant-numeric:tabular-nums}.timer-stop[data-v-1762a3b7]{font-size:11px;padding:4px 8px;flex-shrink:0}.sidebar[data-v-4eff46a0]{width:236px;flex-shrink:0;background:var(--color-sidebar);border-right:1px solid var(--color-border);display:flex;flex-direction:column;padding:var(--space-4) var(--space-3);height:100vh;position:sticky;top:0;overflow-y:auto}.brand[data-v-4eff46a0]{display:flex;align-items:center;gap:8px;padding:0 var(--space-2);margin-bottom:var(--space-5)}.brand-mark[data-v-4eff46a0]{width:28px;height:28px;border-radius:8px;background:var(--color-primary);color:#fff;font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:center}.brand-name[data-v-4eff46a0]{font-weight:700;font-size:15px}.new-task-btn[data-v-4eff46a0]{width:100%;justify-content:center;margin-bottom:var(--space-3);padding:9px 14px}.search-hint[data-v-4eff46a0]{width:100%;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);border-radius:var(--radius-sm);padding:7px 10px;font-size:12.5px;margin-bottom:var(--space-4)}.search-hint[data-v-4eff46a0]:hover{border-color:var(--color-primary);color:var(--color-text)}.search-shortcut[data-v-4eff46a0]{font-size:10.5px;color:var(--color-text-faint);border:1px solid var(--color-border);border-radius:4px;padding:1px 5px}.nav[data-v-4eff46a0]{display:flex;flex-direction:column;gap:1px}.nav-group-label[data-v-4eff46a0]{margin:12px 10px 4px;font-size:10.5px;font-weight:700;color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.05em}.nav-item[data-v-4eff46a0]{display:flex;align-items:center;gap:10px;padding:7px 10px;border:none;background:transparent;border-radius:var(--radius-sm);font-size:13.5px;font-weight:500;color:var(--color-text-muted);text-align:left}.nav-item[data-v-4eff46a0]:hover{background:var(--color-bg);color:var(--color-text)}.nav-item--active[data-v-4eff46a0]{background:var(--color-primary-soft);color:var(--color-primary);font-weight:700}.nav-icon[data-v-4eff46a0]{width:18px;text-align:center;font-size:13px}.sidebar-footer[data-v-4eff46a0]{margin-top:auto;padding-top:var(--space-3);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:8px}.theme-toggle[data-v-4eff46a0]{justify-content:flex-start;font-size:12.5px;padding:6px 8px}.user-chip[data-v-4eff46a0]{display:flex;align-items:center;gap:8px;padding:0 var(--space-1);min-width:0}.user-avatar[data-v-4eff46a0]{width:26px;height:26px;font-size:11px;background:var(--color-primary)}.user-label[data-v-4eff46a0]{font-size:12.5px;font-weight:600;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-btn[data-v-4eff46a0]{justify-content:flex-start;font-size:12.5px}.home-page[data-v-98f815b9]{display:flex;flex-direction:column;gap:var(--space-4)}.hero[data-v-98f815b9]{padding:var(--space-5)}.hero h2[data-v-98f815b9]{margin:0 0 6px;font-size:20px}.hero p[data-v-98f815b9]{margin:0;color:var(--color-text-muted);font-size:14px}.tile-grid[data-v-98f815b9]{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3)}.tile[data-v-98f815b9]{padding:var(--space-4);display:flex;flex-direction:column;gap:6px;text-align:left;border:1px solid var(--color-border);cursor:pointer}.tile[data-v-98f815b9]:hover{border-color:var(--color-primary)}.tile-label[data-v-98f815b9]{font-size:12px;color:var(--color-text-muted);font-weight:600}.tile-value[data-v-98f815b9]{font-size:22px;font-weight:800;color:var(--color-text)}.tile-value--danger[data-v-98f815b9]{color:var(--color-danger)}.two-col[data-v-98f815b9]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.panel-block[data-v-98f815b9]{padding:var(--space-4)}.block-header[data-v-98f815b9]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.block-header h3[data-v-98f815b9]{margin:0;font-size:13px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em}.block-header .btn[data-v-98f815b9]{font-size:12px;padding:4px 8px}.empty[data-v-98f815b9]{color:var(--color-text-faint);font-size:13px;padding:var(--space-3) 0}.task-mini-list[data-v-98f815b9]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.task-mini-item[data-v-98f815b9]{display:flex;align-items:center;gap:8px;font-size:13px}.priority-dot[data-v-98f815b9]{width:7px;height:7px;border-radius:50%;flex-shrink:0}.task-mini-title[data-v-98f815b9]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-mini-date[data-v-98f815b9]{font-size:11px;color:var(--color-text-faint);flex-shrink:0}.complete-btn[data-v-98f815b9]{font-size:11px;padding:3px 8px;flex-shrink:0}.project-mini-row[data-v-98f815b9]{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:13px}.project-dot[data-v-98f815b9]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.project-mini-name[data-v-98f815b9]{flex:1;color:var(--color-text)}.project-mini-count[data-v-98f815b9]{font-size:11px;color:var(--color-text-faint);font-weight:700}.note-mini[data-v-98f815b9]{border-radius:var(--radius-sm);padding:8px 10px;margin-bottom:6px}.note-mini-title[data-v-98f815b9]{margin:0;font-size:12.5px;font-weight:600;color:#1f2430}.date-mini-row[data-v-98f815b9]{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:12.5px}.date-mini-title[data-v-98f815b9]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text)}.date-mini-badge[data-v-98f815b9]{font-size:11px;font-weight:700;color:var(--color-primary);flex-shrink:0}.habit-summary[data-v-98f815b9]{margin:0;font-size:13.5px;color:var(--color-text-muted)}@media (max-width: 900px){.tile-grid[data-v-98f815b9]{grid-template-columns:repeat(2,1fr)}.two-col[data-v-98f815b9]{grid-template-columns:1fr}}.task-card[data-v-93374e10]{background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid transparent;border-radius:var(--radius-md);padding:10px 12px;cursor:grab;box-shadow:var(--shadow-sm);transition:box-shadow .12s ease,transform .12s ease}.task-card[data-v-93374e10]:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.task-card--overdue[data-v-93374e10]{background:var(--color-danger-soft)}.task-card-top[data-v-93374e10]{display:flex;align-items:center;gap:6px;margin-bottom:6px}.priority-badge[data-v-93374e10]{font-size:10.5px}.overdue-badge[data-v-93374e10]{background:var(--color-danger-soft);color:var(--color-danger);font-size:10.5px}.remove-btn[data-v-93374e10]{margin-left:auto;border:none;background:transparent;color:var(--color-text-faint);font-size:16px;line-height:1;padding:2px 4px;border-radius:4px}.remove-btn[data-v-93374e10]:hover{background:var(--color-danger-soft);color:var(--color-danger)}.task-card-title[data-v-93374e10]{margin:0 0 8px;font-size:13.5px;font-weight:600;color:var(--color-text);line-height:1.35;word-break:break-word}.task-card-footer[data-v-93374e10]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.category-chip[data-v-93374e10]{color:#fff;border-radius:5px;padding:1px 6px;font-size:10.5px;font-weight:600}.due-date[data-v-93374e10]{font-size:11px;color:var(--color-text-faint);margin-left:auto}.task-card-tags[data-v-93374e10]{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:6px}.tag-chip[data-v-93374e10]{color:#fff;border-radius:999px;padding:1px 7px;font-size:10px;font-weight:600}.subtask-progress[data-v-93374e10]{font-size:10.5px;color:var(--color-text-faint);font-weight:600}.board[data-v-9cf416ba]{height:100%}.board-loading[data-v-9cf416ba]{color:var(--color-text-muted);font-size:14px;padding:var(--space-5) 0;text-align:center}.board-columns[data-v-9cf416ba]{display:grid;grid-template-columns:repeat(4,minmax(240px,1fr));gap:var(--space-4);align-items:start;overflow-x:auto;padding-bottom:var(--space-4)}.board-column[data-v-9cf416ba]{background:var(--color-sunken);border-radius:var(--radius-lg);padding:var(--space-3);min-height:200px;transition:background-color .12s ease}.board-column--drag-over[data-v-9cf416ba]{background:var(--color-primary-soft);outline:2px dashed var(--color-primary);outline-offset:-2px}.column-header[data-v-9cf416ba]{display:flex;align-items:center;gap:8px;padding:4px 6px 12px}.column-dot[data-v-9cf416ba]{width:8px;height:8px;border-radius:50%}.column-title[data-v-9cf416ba]{font-size:13px;font-weight:700;color:var(--color-text)}.column-count[data-v-9cf416ba]{margin-left:auto;font-size:11px;font-weight:700;color:var(--color-text-faint);background:var(--color-surface);border-radius:999px;padding:1px 7px}.column-body[data-v-9cf416ba]{display:flex;flex-direction:column;gap:8px;min-height:60px}.column-empty[data-v-9cf416ba]{text-align:center;color:var(--color-text-faint);font-size:12px;padding:var(--space-4) 0}@media (max-width: 980px){.board-columns[data-v-9cf416ba]{grid-template-columns:1fr}}.table-wrap[data-v-8ef7a3ca]{overflow-x:auto}.bulk-bar[data-v-8ef7a3ca]{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--color-primary-soft);border-bottom:1px solid var(--color-border);font-size:13px;font-weight:600;color:var(--color-primary)}.bulk-actions[data-v-8ef7a3ca]{display:flex;gap:6px}.bulk-actions .btn[data-v-8ef7a3ca]{font-size:12px;padding:5px 10px}.table-loading[data-v-8ef7a3ca],.table-empty[data-v-8ef7a3ca]{padding:var(--space-6) 0;text-align:center;color:var(--color-text-muted);font-size:14px}.task-table[data-v-8ef7a3ca]{width:100%;border-collapse:collapse;font-size:13.5px}.task-table thead th[data-v-8ef7a3ca]{text-align:left;padding:10px 14px;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-faint);border-bottom:1px solid var(--color-border);white-space:nowrap}.checkbox-col[data-v-8ef7a3ca]{width:32px}.sortable[data-v-8ef7a3ca]{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable[data-v-8ef7a3ca]:hover{color:var(--color-text-muted)}.sort-icon[data-v-8ef7a3ca]{font-size:8px}.task-table tbody tr[data-v-8ef7a3ca]{cursor:pointer;transition:background-color .1s ease}.task-table tbody tr[data-v-8ef7a3ca]:hover{background:var(--color-bg)}.row--selected[data-v-8ef7a3ca]{background:var(--color-primary-soft)}.task-table tbody tr:not(:last-child) td[data-v-8ef7a3ca]{border-bottom:1px solid var(--color-border)}.task-table td[data-v-8ef7a3ca]{padding:10px 14px;vertical-align:middle}.title-cell[data-v-8ef7a3ca]{display:flex;align-items:center;gap:8px;font-weight:600;max-width:320px}.title-done[data-v-8ef7a3ca]{text-decoration:line-through;color:var(--color-text-muted)}.subtask-mini[data-v-8ef7a3ca]{font-size:10.5px;color:var(--color-text-faint);font-weight:600}.priority-dot[data-v-8ef7a3ca]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.category-chip[data-v-8ef7a3ca]{color:#fff;border-radius:5px;padding:2px 7px;font-size:11px;font-weight:600;white-space:nowrap}.muted[data-v-8ef7a3ca]{color:var(--color-text-faint)}.overdue-badge[data-v-8ef7a3ca]{background:var(--color-danger-soft);color:var(--color-danger);margin-left:4px}.actions-col[data-v-8ef7a3ca]{display:flex;align-items:center;gap:6px;white-space:nowrap}.status-select[data-v-8ef7a3ca]{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:5px 6px;font-size:12px;background:var(--color-surface);color:var(--color-text)}.remove-btn[data-v-8ef7a3ca]{border:none;background:transparent;color:var(--color-text-faint);font-size:18px;line-height:1;padding:2px 6px;border-radius:4px}.remove-btn[data-v-8ef7a3ca]:hover{background:var(--color-danger-soft);color:var(--color-danger)}.calendar[data-v-800f66d2]{padding:16px}.calendar-header[data-v-800f66d2]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.calendar-title[data-v-800f66d2]{display:flex;align-items:center;gap:10px;font-weight:700;font-size:16px}.today-btn[data-v-800f66d2]{font-size:12px;padding:4px 10px}.weekday-row[data-v-800f66d2]{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.weekday-row span[data-v-800f66d2]{text-align:center;font-size:12px;font-weight:600;color:var(--color-text-muted);padding:4px 0}.day-grid[data-v-800f66d2]{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.day-cell[data-v-800f66d2]{position:relative;aspect-ratio:1 / 1;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:6px 4px 4px;gap:2px}.day-cell[data-v-800f66d2]:hover{border-color:var(--color-primary)}.day-cell--muted[data-v-800f66d2]{color:var(--color-text-faint);background:var(--color-bg)}.day-cell--today .day-number[data-v-800f66d2]{background:var(--color-primary);color:#fff;border-radius:50%}.day-cell--selected[data-v-800f66d2]{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.day-number[data-v-800f66d2]{font-size:13px;font-weight:600;width:22px;height:22px;display:flex;align-items:center;justify-content:center}.day-count[data-v-800f66d2]{position:absolute;top:2px;right:4px;font-size:10px;color:var(--color-text-muted);background:var(--color-sunken);border-radius:8px;padding:0 4px}.day-dots[data-v-800f66d2]{display:flex;gap:2px;flex-wrap:wrap;justify-content:center;margin-top:auto}.dot[data-v-800f66d2]{width:6px;height:6px;border-radius:50%}@media (max-width: 640px){.day-number[data-v-800f66d2]{font-size:11px;width:18px;height:18px}.day-count[data-v-800f66d2]{display:none}}.task-panel[data-v-6016c01d]{padding:16px;display:flex;flex-direction:column;min-height:0;max-height:74vh}.panel-header[data-v-6016c01d]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.panel-header h2[data-v-6016c01d]{margin:0;font-size:16px}.empty-state[data-v-6016c01d]{color:var(--color-text-muted);font-size:14px;text-align:center;padding:24px 0}.task-list[data-v-6016c01d]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;overflow-y:auto}.task-item[data-v-6016c01d]{border:1px solid var(--color-border);border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.task-item--overdue[data-v-6016c01d]{border-color:var(--color-danger);background:var(--color-danger-soft)}.task-item--done .task-title[data-v-6016c01d]{text-decoration:line-through;color:var(--color-text-muted)}.task-main[data-v-6016c01d]{display:flex;gap:10px}.priority-dot[data-v-6016c01d]{width:10px;height:10px;border-radius:50%;margin-top:5px;flex-shrink:0}.task-info[data-v-6016c01d]{min-width:0;flex:1}.task-title[data-v-6016c01d]{margin:0;font-weight:600;font-size:14px}.task-meta[data-v-6016c01d]{margin:2px 0 0;font-size:12px;color:var(--color-text-muted);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.task-desc[data-v-6016c01d]{margin:4px 0 0;font-size:13px;color:var(--color-text-muted);white-space:pre-wrap}.category-chip[data-v-6016c01d]{color:#fff;border-radius:6px;padding:1px 6px;font-size:11px}.status-chip[data-v-6016c01d]{border-radius:6px;padding:1px 6px;font-size:11px;background:var(--color-primary-soft);color:var(--color-primary)}.status-chip--overdue[data-v-6016c01d]{background:var(--color-danger-soft);color:var(--color-danger)}.status-chip--completed[data-v-6016c01d]{background:var(--color-success-soft);color:var(--color-success)}.status-chip--cancelled[data-v-6016c01d]{background:var(--color-sunken);color:var(--color-text-muted)}.task-actions[data-v-6016c01d]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.status-select[data-v-6016c01d]{border:1px solid var(--color-border);border-radius:6px;padding:6px 8px;font-size:12px;flex:1;min-width:120px}.btn[data-v-6016c01d]{font-size:12px;padding:6px 10px}.calendar-page[data-v-e7bf1e3e]{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-4);align-items:start}@media (max-width: 980px){.calendar-page[data-v-e7bf1e3e]{grid-template-columns:1fr}}.notes-page[data-v-a87bf715]{width:100%}.composer[data-v-a87bf715]{padding:14px 16px;margin-bottom:var(--space-5);transition:background-color .15s ease}.composer-title[data-v-a87bf715]{width:100%;border:none;background:transparent;font-size:15px;font-weight:700;outline:none;color:#1f2430}.composer-title[data-v-a87bf715]::placeholder{color:#1f243080}.composer-content[data-v-a87bf715]{width:100%;border:none;background:transparent;resize:none;outline:none;font-size:13.5px;margin-top:8px;color:#1f2430;font-family:inherit}.composer-footer[data-v-a87bf715]{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.color-dots[data-v-a87bf715]{display:flex;gap:6px}.color-dot[data-v-a87bf715]{width:18px;height:18px;border-radius:50%;border:2px solid transparent}.color-dot--active[data-v-a87bf715]{border-color:#1f2430}.composer-actions[data-v-a87bf715]{display:flex;gap:6px}.empty-state[data-v-a87bf715]{color:var(--color-text-muted);font-size:14px;text-align:center;padding:var(--space-6) 0}.note-grid[data-v-a87bf715]{columns:4 220px;column-gap:var(--space-4)}.note-card[data-v-a87bf715]{break-inside:avoid;margin-bottom:var(--space-4);border-radius:var(--radius-md);padding:14px 16px;box-shadow:var(--shadow-sm)}.note-header[data-v-a87bf715]{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.note-title[data-v-a87bf715]{margin:0;font-size:14.5px;font-weight:700;color:#1f2430;word-break:break-word}.pin-btn[data-v-a87bf715]{border:none;background:transparent;opacity:.35;font-size:13px;flex-shrink:0}.pin-btn--active[data-v-a87bf715]{opacity:1}.note-content[data-v-a87bf715]{margin:8px 0 0;font-size:13px;color:#333a47;white-space:pre-wrap;word-break:break-word;cursor:text;min-height:20px}.note-footer[data-v-a87bf715]{display:flex;justify-content:flex-end;gap:4px;margin-top:10px;opacity:.8}.note-footer .btn[data-v-a87bf715]{font-size:11px;padding:4px 8px;color:#1f2430}.note-delete[data-v-a87bf715]:hover{background:#e5484d26;color:#b91c1c}.note-edit-actions[data-v-a87bf715]{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}@media (max-width: 700px){.note-grid[data-v-a87bf715]{columns:2 160px}}.projects-page[data-v-22035233]{width:100%}.page-header[data-v-22035233]{margin-bottom:var(--space-4)}.new-project-form[data-v-22035233]{padding:var(--space-4);margin-bottom:var(--space-4);max-width:480px}.color-dots[data-v-22035233]{display:flex;gap:6px;margin-bottom:var(--space-3)}.color-dot[data-v-22035233]{width:20px;height:20px;border-radius:50%;border:2px solid transparent}.color-dot--active[data-v-22035233]{border-color:var(--color-text)}.form-actions[data-v-22035233]{display:flex;justify-content:flex-end;gap:8px}.empty-state[data-v-22035233]{color:var(--color-text-muted);text-align:center;padding:var(--space-6) 0}.project-grid[data-v-22035233]{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-4)}.project-card[data-v-22035233]{padding:var(--space-4);border-top:3px solid transparent}.project-header[data-v-22035233]{display:flex;align-items:center;justify-content:space-between;gap:8px}.project-header h3[data-v-22035233]{margin:0;font-size:15px;font-weight:700}.task-count[data-v-22035233]{font-size:11px;font-weight:700;color:var(--color-text-faint);background:var(--color-sunken);border-radius:999px;padding:2px 8px;flex-shrink:0}.project-desc[data-v-22035233]{margin:8px 0 0;font-size:12.5px;color:var(--color-text-muted)}.progress-bar[data-v-22035233]{height:6px;border-radius:999px;background:var(--color-sunken);overflow:hidden;margin:14px 0 12px}.progress-fill[data-v-22035233]{height:100%;transition:width .2s ease}.project-footer[data-v-22035233]{display:flex;gap:4px}.project-footer .btn[data-v-22035233]{font-size:12px;padding:5px 9px}.project-delete[data-v-22035233]:hover{background:var(--color-danger-soft);color:var(--color-danger)}.color-input[data-v-22035233]{width:32px;height:32px;border:1px solid var(--color-border);border-radius:6px;padding:2px;margin-bottom:8px}.edit-name[data-v-22035233]{width:100%;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:6px 8px;font-size:14px;font-weight:700;margin-bottom:8px;background:var(--color-surface);color:var(--color-text)}.edit-desc[data-v-22035233]{width:100%;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:6px 8px;font-size:12.5px;margin-bottom:8px;background:var(--color-surface);color:var(--color-text);resize:vertical}.expenses-page[data-v-b1a14d01]{display:flex;flex-direction:column;gap:var(--space-4)}.tile-grid[data-v-b1a14d01]{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.tile[data-v-b1a14d01]{padding:var(--space-4);display:flex;flex-direction:column;justify-content:center;gap:6px}.tile--action[data-v-b1a14d01]{align-items:center;justify-content:center}.tile-label[data-v-b1a14d01]{font-size:12px;color:var(--color-text-muted);font-weight:600}.tile-value[data-v-b1a14d01]{font-size:24px;font-weight:800}.expense-form[data-v-b1a14d01]{padding:var(--space-4);max-width:480px}.field-row[data-v-b1a14d01]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-actions[data-v-b1a14d01]{display:flex;justify-content:flex-end;gap:8px}.two-col[data-v-b1a14d01]{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-4)}.chart-card[data-v-b1a14d01]{padding:var(--space-4)}.chart-card h3[data-v-b1a14d01]{margin:0 0 var(--space-3);font-size:13px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em}.bar-chart[data-v-b1a14d01]{display:flex;align-items:flex-end;gap:10px;height:120px}.bar-col[data-v-b1a14d01]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:4px}.bar[data-v-b1a14d01]{width:100%;min-height:2px;background:var(--color-success);border-radius:3px 3px 0 0}.bar-label[data-v-b1a14d01]{font-size:10px;color:var(--color-text-faint)}.project-row[data-v-b1a14d01]{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:13px}.project-dot[data-v-b1a14d01]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.project-name[data-v-b1a14d01]{flex:1;color:var(--color-text-muted)}.project-total[data-v-b1a14d01]{font-weight:700}.empty[data-v-b1a14d01]{color:var(--color-text-faint);font-size:13px;text-align:center;padding:var(--space-4) 0}.table-wrap[data-v-b1a14d01]{overflow-x:auto}.expense-table[data-v-b1a14d01]{width:100%;border-collapse:collapse;font-size:13.5px}.expense-table thead th[data-v-b1a14d01]{text-align:left;padding:10px 14px;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-faint);border-bottom:1px solid var(--color-border)}.expense-table td[data-v-b1a14d01]{padding:10px 14px;vertical-align:middle;border-bottom:1px solid var(--color-border)}.expense-title[data-v-b1a14d01]{display:block;font-weight:600}.expense-notes[data-v-b1a14d01]{display:block;font-size:11.5px;color:var(--color-text-faint)}.project-chip[data-v-b1a14d01]{color:#fff;border-radius:5px;padding:2px 7px;font-size:11px;font-weight:600;white-space:nowrap}.muted[data-v-b1a14d01]{color:var(--color-text-faint)}.amount[data-v-b1a14d01]{font-weight:700;white-space:nowrap}.remove-btn[data-v-b1a14d01]{border:none;background:transparent;color:var(--color-text-faint);font-size:18px;line-height:1;padding:2px 6px;border-radius:4px}.remove-btn[data-v-b1a14d01]:hover{background:var(--color-danger-soft);color:var(--color-danger)}@media (max-width: 800px){.tile-grid[data-v-b1a14d01],.two-col[data-v-b1a14d01]{grid-template-columns:1fr}}.habits-page[data-v-c2de135b]{width:100%}.new-habit-form[data-v-c2de135b]{padding:var(--space-4);margin-top:var(--space-3);margin-bottom:var(--space-4);max-width:420px}.color-dots[data-v-c2de135b]{display:flex;gap:6px;margin-bottom:var(--space-3)}.color-dot[data-v-c2de135b]{width:20px;height:20px;border-radius:50%;border:2px solid transparent}.color-dot--active[data-v-c2de135b]{border-color:var(--color-text)}.form-actions[data-v-c2de135b]{display:flex;justify-content:flex-end;gap:8px}.empty-state[data-v-c2de135b]{color:var(--color-text-muted);text-align:center;padding:var(--space-6) 0}.habit-list[data-v-c2de135b]{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.habit-card[data-v-c2de135b]{padding:var(--space-4)}.habit-header[data-v-c2de135b]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:var(--space-3)}.habit-name-row[data-v-c2de135b]{display:flex;align-items:center;gap:8px}.habit-name-row h3[data-v-c2de135b]{margin:0;font-size:15px;font-weight:700}.habit-dot[data-v-c2de135b]{width:10px;height:10px;border-radius:50%;flex-shrink:0}.habit-badges[data-v-c2de135b]{display:flex;gap:8px}.streak-badge[data-v-c2de135b],.week-badge[data-v-c2de135b]{font-size:11.5px;font-weight:700;background:var(--color-sunken);border-radius:999px;padding:3px 10px;color:var(--color-text-muted)}.heatmap[data-v-c2de135b]{display:grid;grid-template-columns:repeat(15,1fr);gap:4px;margin-bottom:var(--space-4);max-width:420px}.heatmap-cell[data-v-c2de135b]{aspect-ratio:1 / 1;border-radius:3px}.heatmap-cell--today[data-v-c2de135b]{outline:2px solid var(--color-primary);outline-offset:1px}.habit-actions[data-v-c2de135b]{display:flex;gap:8px;flex-wrap:wrap}.habit-delete[data-v-c2de135b]:hover{background:var(--color-danger-soft);color:var(--color-danger)}.journal-page[data-v-14195dd4]{display:flex;flex-direction:column;gap:var(--space-4);max-width:640px}.today-card[data-v-14195dd4]{padding:var(--space-4)}.today-card h3[data-v-14195dd4]{margin:0 0 var(--space-3);font-size:15px;font-weight:700}.mood-picker[data-v-14195dd4]{display:flex;gap:8px;margin-bottom:var(--space-3)}.mood-btn[data-v-14195dd4]{font-size:26px;border:2px solid transparent;background:var(--color-sunken);border-radius:var(--radius-md);padding:8px 12px;filter:grayscale(.6);opacity:.7}.mood-btn--active[data-v-14195dd4]{border-color:var(--color-primary);background:var(--color-primary-soft);filter:none;opacity:1}.journal-textarea[data-v-14195dd4]{width:100%;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:10px 12px;font-size:13.5px;background:var(--color-surface);color:var(--color-text);resize:vertical;margin-bottom:var(--space-3);font-family:inherit}.empty-state[data-v-14195dd4]{color:var(--color-text-muted);text-align:center;padding:var(--space-4) 0}.entry-list[data-v-14195dd4]{display:flex;flex-direction:column;gap:var(--space-3)}.entry-card[data-v-14195dd4]{padding:var(--space-3) var(--space-4)}.entry-header[data-v-14195dd4]{display:flex;align-items:center;gap:10px}.entry-mood[data-v-14195dd4]{font-size:20px}.entry-date[data-v-14195dd4]{flex:1;font-size:12.5px;font-weight:600;color:var(--color-text-muted);text-transform:capitalize}.remove-btn[data-v-14195dd4]{border:none;background:transparent;color:var(--color-text-faint);font-size:16px;line-height:1;padding:2px 6px;border-radius:4px}.remove-btn[data-v-14195dd4]:hover{background:var(--color-danger-soft);color:var(--color-danger)}.entry-content[data-v-14195dd4]{margin:8px 0 0;font-size:13px;color:var(--color-text);white-space:pre-wrap}.entry-content--empty[data-v-14195dd4]{color:var(--color-text-faint);font-style:italic}.media-page[data-v-1d2696f5]{width:100%}.toolbar-row[data-v-1d2696f5]{display:flex;gap:8px;margin-bottom:var(--space-3)}.toolbar-select[data-v-1d2696f5]{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:7px 10px;font-size:13px;background:var(--color-surface);color:var(--color-text)}.new-form[data-v-1d2696f5]{padding:var(--space-4);margin-bottom:var(--space-4);max-width:420px}.form-actions[data-v-1d2696f5]{display:flex;justify-content:flex-end;gap:8px}.empty-state[data-v-1d2696f5]{color:var(--color-text-muted);text-align:center;padding:var(--space-6) 0}.media-grid[data-v-1d2696f5]{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-3)}.media-card[data-v-1d2696f5]{padding:var(--space-4)}.media-header[data-v-1d2696f5]{display:flex;align-items:center;gap:8px}.media-icon[data-v-1d2696f5]{font-size:18px;flex-shrink:0}.media-header h3[data-v-1d2696f5]{margin:0;font-size:14px;font-weight:700;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-type-label[data-v-1d2696f5]{margin:2px 0 10px;font-size:11.5px;color:var(--color-text-faint)}.remove-btn[data-v-1d2696f5]{border:none;background:transparent;color:var(--color-text-faint);font-size:16px;line-height:1;padding:2px 6px;border-radius:4px;flex-shrink:0}.remove-btn[data-v-1d2696f5]:hover{background:var(--color-danger-soft);color:var(--color-danger)}.stars[data-v-1d2696f5]{display:flex;gap:2px;margin-bottom:10px}.star-btn[data-v-1d2696f5]{border:none;background:transparent;font-size:16px;color:var(--color-border-strong);padding:0}.star-btn--filled[data-v-1d2696f5]{color:#f59e0b}.status-select[data-v-1d2696f5]{width:100%;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:6px 8px;font-size:12px;background:var(--color-surface);color:var(--color-text)}.dates-page[data-v-52d6ecc7]{width:100%}.new-form[data-v-52d6ecc7]{padding:var(--space-4);margin-top:var(--space-3);margin-bottom:var(--space-4);max-width:420px}.field-row[data-v-52d6ecc7]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-actions[data-v-52d6ecc7]{display:flex;justify-content:flex-end;gap:8px}.empty-state[data-v-52d6ecc7]{color:var(--color-text-muted);text-align:center;padding:var(--space-6) 0}.date-list[data-v-52d6ecc7]{display:flex;flex-direction:column;gap:8px;margin-top:var(--space-4)}.date-item[data-v-52d6ecc7]{display:flex;align-items:center;gap:12px;padding:12px 14px}.date-item--soon[data-v-52d6ecc7]{border-color:var(--color-primary)}.date-icon[data-v-52d6ecc7]{font-size:22px;flex-shrink:0}.date-info[data-v-52d6ecc7]{flex:1;min-width:0}.date-title[data-v-52d6ecc7]{margin:0;font-size:13.5px;font-weight:700}.date-meta[data-v-52d6ecc7]{margin:2px 0 0;font-size:11.5px;color:var(--color-text-faint)}.date-notes[data-v-52d6ecc7]{margin:4px 0 0;font-size:12px;color:var(--color-text-muted)}.date-badge[data-v-52d6ecc7]{font-size:11.5px;font-weight:700;color:var(--color-primary);background:var(--color-primary-soft);border-radius:999px;padding:4px 10px;white-space:nowrap;flex-shrink:0}.remove-btn[data-v-52d6ecc7]{border:none;background:transparent;color:var(--color-text-faint);font-size:18px;line-height:1;padding:2px 6px;border-radius:4px;flex-shrink:0}.remove-btn[data-v-52d6ecc7]:hover{background:var(--color-danger-soft);color:var(--color-danger)}.stats-page[data-v-923616a7]{display:flex;flex-direction:column;gap:var(--space-4)}.loading[data-v-923616a7]{color:var(--color-text-muted);text-align:center;padding:var(--space-6) 0}.tile-grid[data-v-923616a7]{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3)}.tile[data-v-923616a7]{padding:var(--space-4);display:flex;flex-direction:column;gap:6px}.tile-label[data-v-923616a7]{font-size:12px;color:var(--color-text-muted);font-weight:600}.tile-value[data-v-923616a7]{font-size:26px;font-weight:800}.tile-value--success[data-v-923616a7]{color:var(--color-success)}.tile-value--danger[data-v-923616a7]{color:var(--color-danger)}.chart-card[data-v-923616a7]{padding:var(--space-4)}.chart-card h3[data-v-923616a7]{margin:0 0 var(--space-3);font-size:13px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em}.bar-chart[data-v-923616a7]{display:flex;align-items:flex-end;gap:6px;height:140px}.bar-col[data-v-923616a7]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:4px}.bar[data-v-923616a7]{width:100%;min-height:2px;background:var(--color-primary);border-radius:3px 3px 0 0}.bar-label[data-v-923616a7]{font-size:9.5px;color:var(--color-text-faint)}.two-col[data-v-923616a7]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.hbar-row[data-v-923616a7]{display:grid;grid-template-columns:100px 1fr 28px;align-items:center;gap:10px;margin-bottom:10px}.hbar-label[data-v-923616a7]{font-size:12.5px;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hbar-track[data-v-923616a7]{height:8px;background:var(--color-bg);border-radius:999px;overflow:hidden}.hbar-fill[data-v-923616a7]{height:100%;border-radius:999px}.hbar-count[data-v-923616a7]{font-size:12px;font-weight:700;text-align:right}.empty[data-v-923616a7]{color:var(--color-text-faint);font-size:13px}@media (max-width: 700px){.tile-grid[data-v-923616a7]{grid-template-columns:repeat(2,1fr)}.two-col[data-v-923616a7]{grid-template-columns:1fr}}.archive-wrap[data-v-3b0b227f]{padding:var(--space-4)}.empty[data-v-3b0b227f]{color:var(--color-text-muted);text-align:center;padding:var(--space-6) 0}.archive-list[data-v-3b0b227f]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.archive-item[data-v-3b0b227f]{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.priority-dot[data-v-3b0b227f]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.archive-info[data-v-3b0b227f]{flex:1;min-width:0}.archive-title[data-v-3b0b227f]{margin:0;font-size:13.5px;font-weight:600}.archive-meta[data-v-3b0b227f]{margin:2px 0 0;font-size:12px;color:var(--color-text-faint)}.archive-actions[data-v-3b0b227f]{display:flex;gap:6px;flex-shrink:0}.btn[data-v-3b0b227f]{font-size:12px;padding:6px 10px}.modal-overlay[data-v-a053494b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;display:flex;align-items:center;justify-content:center;z-index:900;padding:16px}.modal[data-v-a053494b]{width:100%;max-width:480px;padding:24px;max-height:90vh;overflow-y:auto}.modal h2[data-v-a053494b]{margin:0 0 16px;font-size:18px}.field-row[data-v-a053494b]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tag-picker[data-v-a053494b]{display:flex;gap:6px;flex-wrap:wrap}.tag-option[data-v-a053494b]{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-muted);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600}.modal-actions[data-v-a053494b]{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.panel-overlay[data-v-2ef950a3]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;z-index:950;display:flex;justify-content:flex-end}.panel[data-v-2ef950a3]{width:100%;max-width:460px;height:100vh;background:var(--color-surface);padding:var(--space-5);overflow-y:auto;box-shadow:var(--shadow-lg)}.panel-loading[data-v-2ef950a3]{color:var(--color-text-muted);text-align:center;padding:var(--space-6) 0}.panel-header[data-v-2ef950a3]{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.panel-header-badges[data-v-2ef950a3]{display:flex;gap:6px;flex-wrap:wrap}.overdue-badge[data-v-2ef950a3]{background:var(--color-danger-soft);color:var(--color-danger)}.archived-badge[data-v-2ef950a3]{background:var(--color-sunken);color:var(--color-text-muted)}.close-btn[data-v-2ef950a3]{padding:4px 8px;font-size:14px}.panel-title[data-v-2ef950a3]{margin:var(--space-3) 0 6px;font-size:19px;font-weight:700}.panel-description[data-v-2ef950a3]{margin:0 0 8px;font-size:14px;color:var(--color-text-muted);white-space:pre-wrap}.panel-due[data-v-2ef950a3]{margin:0 0 10px;font-size:13px;color:var(--color-text-faint)}.panel-tags[data-v-2ef950a3]{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.tag-chip[data-v-2ef950a3]{color:#fff;border-radius:999px;padding:2px 10px;font-size:11px;font-weight:600}.panel-actions[data-v-2ef950a3]{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-4)}.panel-section[data-v-2ef950a3]{margin-bottom:var(--space-5)}.panel-section h3[data-v-2ef950a3]{margin:0 0 8px;font-size:13px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em}.section-heading[data-v-2ef950a3]{display:flex;align-items:center;justify-content:space-between}.progress-label[data-v-2ef950a3]{font-size:12px;color:var(--color-text-faint);font-weight:600}.progress-bar[data-v-2ef950a3]{height:6px;border-radius:999px;background:var(--color-border);overflow:hidden;margin:6px 0 10px}.progress-fill[data-v-2ef950a3]{height:100%;background:var(--color-primary);transition:width .2s ease}.timer-toggle-btn[data-v-2ef950a3]{width:100%;justify-content:center;margin-bottom:10px}.time-entry-list[data-v-2ef950a3]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.time-entry-item[data-v-2ef950a3]{display:flex;justify-content:space-between;font-size:12px;color:var(--color-text-muted)}.time-entry-duration[data-v-2ef950a3]{font-weight:700;color:var(--color-text)}.subtask-list[data-v-2ef950a3],.comment-list[data-v-2ef950a3],.attachment-list[data-v-2ef950a3],.activity-list[data-v-2ef950a3]{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:8px}.subtask-item[data-v-2ef950a3]{display:flex;align-items:center;gap:8px;font-size:13.5px}.subtask-done[data-v-2ef950a3]{text-decoration:line-through;color:var(--color-text-faint)}.remove-btn[data-v-2ef950a3]{margin-left:auto;border:none;background:transparent;color:var(--color-text-faint);font-size:16px;line-height:1;padding:2px 6px;border-radius:4px}.remove-btn[data-v-2ef950a3]:hover{background:var(--color-danger-soft);color:var(--color-danger)}.inline-form[data-v-2ef950a3]{display:flex;gap:6px}.inline-form input[data-v-2ef950a3],.inline-form textarea[data-v-2ef950a3]{flex:1;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:7px 9px;font-size:13px;background:var(--color-surface);color:var(--color-text)}.inline-form--comment[data-v-2ef950a3]{align-items:flex-end}.attachment-item[data-v-2ef950a3]{display:flex;align-items:center;gap:8px;font-size:13px}.attachment-name[data-v-2ef950a3]{cursor:pointer;color:var(--color-primary);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-name[data-v-2ef950a3]:hover{text-decoration:underline}.attachment-size[data-v-2ef950a3]{color:var(--color-text-faint);font-size:11px;flex-shrink:0}.hidden-input[data-v-2ef950a3]{display:none}.comment-item[data-v-2ef950a3]{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:8px 10px}.comment-meta[data-v-2ef950a3]{display:flex;align-items:center;gap:8px;margin-bottom:4px}.comment-author[data-v-2ef950a3]{font-size:12px;font-weight:700}.comment-date[data-v-2ef950a3]{font-size:11px;color:var(--color-text-faint)}.comment-body[data-v-2ef950a3]{margin:0;font-size:13px;white-space:pre-wrap}.activity-item[data-v-2ef950a3]{display:flex;gap:8px;align-items:flex-start}.activity-dot[data-v-2ef950a3]{width:6px;height:6px;border-radius:50%;background:var(--color-primary);margin-top:6px;flex-shrink:0}.activity-text[data-v-2ef950a3]{margin:0;font-size:12.5px}.activity-date[data-v-2ef950a3]{margin:1px 0 0;font-size:11px;color:var(--color-text-faint)}.modal-overlay[data-v-42e1435f]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;display:flex;align-items:center;justify-content:center;z-index:900;padding:16px}.modal[data-v-42e1435f]{width:100%;max-width:460px;padding:24px;max-height:90vh;overflow-y:auto}.modal h2[data-v-42e1435f]{margin:0 0 16px;font-size:18px}.category-list[data-v-42e1435f]{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:8px}.category-item[data-v-42e1435f]{display:flex;align-items:center;gap:8px}.category-name[data-v-42e1435f]{flex:1;font-size:14px;font-weight:500}.swatch[data-v-42e1435f]{width:16px;height:16px;border-radius:50%;flex-shrink:0}.color-input[data-v-42e1435f]{width:32px;height:32px;border:1px solid var(--color-border);border-radius:6px;padding:2px;flex-shrink:0}.name-input[data-v-42e1435f]{flex:1;border:1px solid var(--color-border);border-radius:6px;padding:6px 8px;background:var(--color-surface);color:var(--color-text)}.new-category-form[data-v-42e1435f]{display:flex;gap:8px;border-top:1px solid var(--color-border);padding-top:16px}.empty-state[data-v-42e1435f]{color:var(--color-text-muted);font-size:13px}.modal-actions[data-v-42e1435f]{display:flex;justify-content:flex-end;margin-top:16px}.btn[data-v-42e1435f]{font-size:12px;padding:6px 10px}.modal-overlay[data-v-629bdc82]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;display:flex;align-items:center;justify-content:center;z-index:900;padding:16px}.modal[data-v-629bdc82]{width:100%;max-width:460px;padding:24px;max-height:90vh;overflow-y:auto}.modal h2[data-v-629bdc82]{margin:0 0 16px;font-size:18px}.tag-list[data-v-629bdc82]{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:8px}.tag-item[data-v-629bdc82]{display:flex;align-items:center;gap:8px}.tag-name[data-v-629bdc82]{flex:1;font-size:14px;font-weight:500}.swatch[data-v-629bdc82]{width:16px;height:16px;border-radius:50%;flex-shrink:0}.color-input[data-v-629bdc82]{width:32px;height:32px;border:1px solid var(--color-border);border-radius:6px;padding:2px;flex-shrink:0}.name-input[data-v-629bdc82]{flex:1;border:1px solid var(--color-border);border-radius:6px;padding:6px 8px;background:var(--color-surface);color:var(--color-text)}.new-tag-form[data-v-629bdc82]{display:flex;gap:8px;border-top:1px solid var(--color-border);padding-top:16px}.empty-state[data-v-629bdc82]{color:var(--color-text-muted);font-size:13px}.modal-actions[data-v-629bdc82]{display:flex;justify-content:flex-end;margin-top:16px}.btn[data-v-629bdc82]{font-size:12px;padding:6px 10px}.palette-overlay[data-v-5db75a1d]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh}.palette[data-v-5db75a1d]{width:100%;max-width:560px;max-height:70vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden}.palette-input[data-v-5db75a1d]{border:none;border-bottom:1px solid var(--color-border);padding:16px 18px;font-size:15px;background:var(--color-surface);color:var(--color-text);outline:none}.palette-results[data-v-5db75a1d]{overflow-y:auto;padding:8px}.palette-section-label[data-v-5db75a1d]{margin:10px 10px 4px;font-size:11px;font-weight:700;color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.03em}.palette-item[data-v-5db75a1d]{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:none;background:transparent;padding:9px 10px;border-radius:var(--radius-sm);font-size:13.5px;color:var(--color-text)}.palette-item[data-v-5db75a1d]:hover{background:var(--color-primary-soft);color:var(--color-primary)}.palette-item--action[data-v-5db75a1d]{font-weight:600}.palette-icon[data-v-5db75a1d]{width:20px;text-align:center;flex-shrink:0}.workspace[data-v-689b4dc5]{display:flex;min-height:100vh}.workspace-main[data-v-689b4dc5]{flex:1;min-width:0;display:flex;flex-direction:column}.workspace-topbar[data-v-689b4dc5]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);background:var(--color-surface);position:sticky;top:0;z-index:10}.view-title[data-v-689b4dc5]{margin:0;font-size:19px;font-weight:700}.toolbar[data-v-689b4dc5]{display:flex;gap:8px;flex-wrap:wrap}.search-input[data-v-689b4dc5]{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:7px 10px;font-size:13px;min-width:180px;background:var(--color-surface);color:var(--color-text)}.search-input[data-v-689b4dc5]:focus{outline:2px solid var(--color-primary);outline-offset:-1px}.toolbar-select[data-v-689b4dc5]{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:7px 8px;font-size:13px;background:var(--color-surface);color:var(--color-text)}.workspace-content[data-v-689b4dc5]{flex:1;padding:var(--space-5);overflow:auto;width:100%}.toast-container[data-v-2118a58c]{position:fixed;top:16px;right:16px;z-index:1000;display:flex;flex-direction:column;gap:8px;max-width:360px}.toast[data-v-2118a58c]{padding:12px 16px;border-radius:8px;color:#fff;font-size:14px;font-weight:500;box-shadow:0 4px 12px #00000026;cursor:pointer}.toast--error[data-v-2118a58c]{background:#ef4444}.toast--success[data-v-2118a58c]{background:#16a34a}.toast-enter-active[data-v-2118a58c],.toast-leave-active[data-v-2118a58c]{transition:all .2s ease}.toast-enter-from[data-v-2118a58c],.toast-leave-to[data-v-2118a58c]{opacity:0;transform:translate(20px)}:root{--color-bg: #f6f7f9;--color-surface: #ffffff;--color-sidebar: #fbfbfd;--color-sunken: #f1f2f6;--color-border: #e5e7eb;--color-border-strong: #d7dae0;--color-text: #172033;--color-text-muted: #6b7280;--color-text-faint: #9aa1ae;--color-primary: #4f46e5;--color-primary-hover: #4338ca;--color-primary-soft: #eef2ff;--color-danger: #e5484d;--color-danger-soft: #fef1f1;--color-success: #16a34a;--color-success-soft: #ecfdf3;--color-warning: #d97706;--color-warning-soft: #fef3c7;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .06);--shadow-md: 0 2px 8px rgba(16, 24, 40, .08), 0 1px 2px rgba(16, 24, 40, .05);--shadow-lg: 0 12px 32px rgba(16, 24, 40, .14), 0 2px 6px rgba(16, 24, 40, .06);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,Helvetica,Arial,sans-serif;color-scheme:light}:root[data-theme=dark]{--color-bg: #14161c;--color-surface: #1c1f28;--color-sidebar: #191b22;--color-sunken: #21242d;--color-border: #2c3039;--color-border-strong: #383d49;--color-text: #e7e9ee;--color-text-muted: #9aa1ae;--color-text-faint: #6b7280;--color-primary: #818cf8;--color-primary-hover: #a5b4fc;--color-primary-soft: #2a2b52;--color-danger: #f87171;--color-danger-soft: #3a2020;--color-success: #4ade80;--color-success-soft: #163326;--color-warning: #fbbf24;--color-warning-soft: #3a2f10;color-scheme:dark}*{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:14px;color:var(--color-text)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#d7dae0;border-radius:8px}::-webkit-scrollbar-track{background:transparent}.btn{border:none;border-radius:var(--radius-sm);padding:7px 14px;font-size:13px;font-weight:600;transition:background-color .12s ease,border-color .12s ease,color .12s ease;display:inline-flex;align-items:center;gap:6px;line-height:1.2}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover)}.btn-primary:disabled{background:#c7c2f5;cursor:not-allowed}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong)}.btn-secondary:hover{background:#f1f2f5}.btn-ghost{background:transparent;color:var(--color-text-muted);border:1px solid transparent}.btn-ghost:hover{background:#eef0f3;color:var(--color-text)}.btn-danger{background:#fff;color:var(--color-danger);border:1px solid #f6c6c7}.btn-danger:hover{background:var(--color-danger-soft)}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}.field label{font-size:12.5px;font-weight:600;color:var(--color-text-muted)}.field input,.field select,.field textarea{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);padding:8px 10px;color:var(--color-text);background:var(--color-surface)}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--color-primary);outline-offset:-1px;border-color:var(--color-primary)}.card{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;line-height:1.6;white-space:nowrap}.avatar-circle{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font-weight:700;flex-shrink:0}
