@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Crimson+Pro:wght@400;500;600&display=swap";:root{--accent: #0f6cbd;--accent-hover: #0d5ba3;--accent-pale: rgba(15, 108, 189, .08);--accent-light: rgba(15, 108, 189, .15);--bg-page: #ffffff;--bg: #ffffff;--bg-secondary: #f5f5f5;--bg-tertiary: #ebebeb;--surface: #ffffff;--surface-hover: rgba(15, 108, 189, .04);--surface-active: rgba(15, 108, 189, .08);--card: #ffffff;--card-hover: #fafafa;--text: #1a1a1a;--text-secondary: #616161;--text-muted: #9e9e9e;--text-on-accent: #ffffff;--border: #e0e0e0;--border-strong: #c4c4c4;--divider: #f0f0f0;--danger: #d13438;--danger-bg: #fdf3f4;--success: #107c10;--success-bg: #f1faf1;--warning: #ffb900;--warning-bg: #fff8e1;--color-outlook: #d13438;--color-google: #0f6cbd;--color-task: #ffb900;--color-habit: #107c10;--color-food: #881798;--font-ui: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Crimson Pro", Georgia, serif;--font-size-xs: 11px;--font-size-sm: 13px;--font-size-base: 15px;--font-size-lg: 17px;--font-size-xl: 20px;--font-size-2xl: 24px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0,0,0,.06);--shadow-md: 0 2px 8px rgba(0,0,0,.08);--shadow-lg: 0 4px 16px rgba(0,0,0,.12);--shadow-xl: 0 8px 32px rgba(0,0,0,.16);--nav-height: 56px;--header-height: 52px;--max-width: 1664px;--max-width-single: 832px;--transition-fast: .12s ease;--transition-normal: .2s ease;--transition-slow: .3s ease}.theme-dark{--bg-page: #000000;--bg: #1a1a1a;--bg-secondary: #252525;--bg-tertiary: #333333;--surface: #252525;--surface-hover: rgba(15, 108, 189, .06);--surface-active: rgba(15, 108, 189, .1);--card: #2d2d2d;--card-hover: #333333;--text: #e5e5e5;--text-secondary: #b0b0b0;--text-muted: #757575;--text-on-accent: #ffffff;--border: #404040;--border-strong: #555555;--divider: #333333;--danger-bg: #3b1c1d;--success-bg: #1a2e1a;--warning-bg: #2e2a1a;--shadow-sm: 0 1px 2px rgba(0,0,0,.2);--shadow-md: 0 2px 8px rgba(0,0,0,.3);--shadow-lg: 0 4px 16px rgba(0,0,0,.4);--shadow-xl: 0 8px 32px rgba(0,0,0,.5);--accent-pale: rgba(15, 108, 189, .12);--accent-light: rgba(15, 108, 189, .2)}.theme-dark .connected-note-preview{color:var(--text)}.theme-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:12px;padding:4px 0 2px}.theme-swatch{display:flex;flex-direction:column;gap:8px;padding:0;background:none;border:none;text-align:left;cursor:pointer}.theme-swatch-preview{height:72px;border-radius:var(--radius-md);border:1px solid var(--border);padding:11px;box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.theme-swatch:hover .theme-swatch-preview{border-color:var(--border-strong)}.theme-swatch.sel .theme-swatch-preview{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.theme-swatch-card{position:relative;height:100%;border-radius:6px;padding:10px;display:flex;flex-direction:column;gap:6px;box-shadow:0 1px 3px #00000024}.theme-swatch-line{height:4px;border-radius:2px;opacity:.9}.theme-swatch-line.short{width:46%;opacity:.45}.theme-swatch-line.long{width:72%}.theme-swatch-dot{position:absolute;right:9px;bottom:9px;width:15px;height:15px;border-radius:50%}.theme-swatch-label{display:flex;align-items:center;gap:5px;font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary)}.theme-swatch.sel .theme-swatch-label{color:var(--accent)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100%;-webkit-text-size-adjust:100%}body{height:100%;font-family:var(--font-ui);font-size:var(--font-size-base);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}#root{height:100%;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}ul,ol{list-style:none}img{max-width:100%;display:block}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.offline-banner{background:#d97706;color:#fff;text-align:center;padding:3px 16px;font-size:12px;font-family:var(--font-ui);font-weight:500;flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:8px}.offline-reconnect-btn{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.4);border-radius:3px;padding:1px 8px;font-size:11px;font-family:var(--font-ui);font-weight:600;cursor:pointer}.offline-reconnect-btn:hover{background:#ffffff59}.offline-reconnect-btn:disabled{opacity:.6;cursor:default}.offline-signin-btn{background:none;color:#fff;border:none;padding:1px 4px;font-size:11px;font-family:var(--font-ui);font-weight:600;text-decoration:underline;opacity:.8;cursor:pointer}.offline-signin-btn:hover{opacity:1}.app-shell{display:flex;flex:1;min-height:0;overflow:hidden;position:relative}.app-main{display:flex;flex-direction:column;overflow:hidden;flex:1;height:100%}.app-content{flex:1;overflow-y:auto;overflow-x:hidden;background:var(--bg-page);min-height:100%}.page-wrapper{height:100%;max-width:var(--max-width);border-right:1px solid var(--border)}@media (min-width: 769px){.mobile-nav-panel{width:340px;max-width:100%;border-right:1px solid var(--border);box-shadow:2px 0 16px #0000001f}}.bottom-nav{display:none}.bottom-nav-inner{display:flex;align-items:center;height:100%;width:100%}.bottom-nav-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 12px;border-radius:var(--radius-md);color:var(--text-muted);font-size:10px;font-weight:500;transition:color var(--transition-fast);-webkit-tap-highlight-color:transparent}.bottom-nav-btn.active{color:var(--accent)}.bottom-nav-divider{width:1px;height:24px;background:var(--border);flex-shrink:0}.bottom-nav-btn:active{transform:scale(.95)}.nav-badge{position:absolute;top:-4px;right:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--accent);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.mobile-hamburger{display:flex}.mobile-nav-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:1100;animation:fade-in .15s ease}.mobile-nav-panel{background:var(--bg);display:flex;flex-direction:column;height:100%;animation:slide-down .2s ease}.mobile-nav-header{height:var(--header-height);display:flex;align-items:center;padding:0 8px;border-bottom:1px solid #e0e0e0;gap:4px;flex-shrink:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-down{0%{transform:translateY(-12px);opacity:0}to{transform:translateY(0);opacity:1}}.page-header{height:var(--header-height);display:flex;align-items:center;padding:0 8px;flex-shrink:0;gap:4px;background:var(--bg);border-bottom:1px solid #e0e0e0}.page-draft>.page-header{gap:0}.page-header-title{font-size:16px;font-weight:900;text-transform:uppercase;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-header-actions{display:flex;align-items:center;gap:var(--space-xs)}.page-filed-icon{display:inline-flex;align-items:center;flex-shrink:0;color:#9e9e9e;margin-left:auto;padding:4px}.task-card>.page-filed-icon{margin-left:0;margin-right:8px;padding:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none}.btn-primary{background:var(--accent);color:var(--text-on-accent)}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:disabled{opacity:.5;cursor:default}.btn-secondary{background:var(--bg-secondary);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg-tertiary)}.btn-ghost{color:var(--text-secondary);padding:6px 10px}.btn-ghost:hover{background:var(--surface-hover);color:var(--text)}.btn-danger{color:var(--danger)}.btn-danger:hover{background:var(--danger-bg)}.btn-danger-outline{background:var(--bg-secondary);color:var(--danger);border:1px solid var(--danger)}.btn-danger-outline:hover{background:var(--danger-bg)}.btn-icon{width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast)}.btn-icon:hover{background:var(--surface-hover);color:var(--text)}.btn-sm{padding:4px 10px;font-size:var(--font-size-xs)}.input{width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--text);outline:none;transition:border-color var(--transition-fast)}.input:focus{border-color:var(--accent)}.input::placeholder{color:var(--text-muted)}.textarea{width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--text);outline:none;resize:vertical;min-height:80px;transition:border-color var(--transition-fast)}.textarea:focus{border-color:var(--accent)}.field-label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary);margin-bottom:6px}.select{padding:8px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--text);outline:none;cursor:pointer}.select:focus{border-color:var(--accent)}.checkbox-row{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;padding:4px 0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:flex-start;justify-content:center;z-index:1000;padding:var(--space-lg);animation:fadeIn .15s ease}.modal-overlay-top{align-items:flex-start}.modal-panel{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:560px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .2s ease}.modal-header{display:flex;align-items:center;padding:var(--space-lg);border-bottom:1px solid var(--divider);gap:var(--space-md)}.modal-header-title{font-size:var(--font-size-lg);font-weight:600;flex:1}.modal-body{flex:1;overflow-y:auto;padding:var(--space-lg)}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-top:1px solid var(--divider)}.modal-full{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-page);z-index:1000;display:flex;flex-direction:column;animation:slideUp .2s ease;max-width:var(--max-width);border-right:1px solid #e0e0e0}.modal-full>.content-card{margin:0;border:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin-wrap{width:20px;height:20px;display:flex;align-items:center;justify-content:center}.spin-wrap.spin{animation:spin .8s linear infinite}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes shimmer{0%,to{opacity:.3}50%{opacity:.7}}.skeleton-line{display:inline-block;height:14px;background:var(--bg-hover);border-radius:4px;animation:shimmer 1.5s ease-in-out infinite}@media (min-width: 769px){.mobile-only{display:none!important}}.toast{position:fixed;bottom:calc(var(--nav-height) + 16px);left:50%;transform:translate(-50%);display:flex;align-items:center;background:var(--text);color:var(--bg);padding:10px 20px;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;z-index:2000;animation:toastIn .2s ease;box-shadow:var(--shadow-lg)}@media (min-width: 769px){.toast{bottom:24px}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(8px)}}.toast-undo{background:none;border:none;color:var(--bg);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;margin-left:12px;padding:0;text-decoration:underline;opacity:.85}.toast-undo:hover{opacity:1}.confirm-body{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.5}.save-indicator{position:relative;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast)}.save-indicator:hover{background:var(--surface-hover);color:var(--text)}.save-indicator-menu{cursor:default!important;gap:8px;font-size:var(--font-size-sm);color:var(--text-muted)}.save-indicator-menu.saved{color:var(--text)}.save-indicator-menu.saving,.save-indicator-menu.unsaved{color:var(--text-muted)}.save-indicator .save-badge{position:absolute;top:5px;right:4px;width:12px;height:12px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}.save-indicator.saved .save-badge,.save-indicator.saving .save-badge,.save-indicator.unsaved .save-badge{background:var(--accent)}.save-badge .save-badge-spin{animation:spin .8s linear infinite;display:flex;align-items:center;justify-content:center}.save-status-text{display:inline-flex;align-items:center;gap:4px;padding:0 8px;font-size:var(--font-size-xs);color:var(--text-muted)}.save-status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;margin-right:2px}.save-status-dot.unsaved{background:var(--text-muted)}.save-status-dot.saving{background:#2c5f2e;animation:save-pulse 1.5s ease-in-out infinite}.save-status-dot.saved{background:var(--accent)}.draft-actions{display:flex;align-items:center;gap:4px}.draft-save,.draft-discard{width:32px;height:32px}.draft-save{color:var(--text-muted)}.draft-save:hover{color:var(--accent)}.draft-discard{color:var(--text-muted)}.draft-discard:hover{color:var(--danger)}.save-status-pill{all:unset;display:inline;cursor:pointer;font-size:inherit;font-family:inherit;color:inherit;text-decoration:underline;text-underline-offset:2px}.save-status-pill:hover{opacity:.7}@media (max-width: 768px){.save-status-pill{display:inline-block;vertical-align:bottom;white-space:nowrap;max-width:120px;overflow:hidden;text-overflow:ellipsis}}.save-status-pill.locked{cursor:default;text-decoration:underline}.save-status-pill.locked:hover{opacity:1}@keyframes save-pulse{0%,to{opacity:1}50%{opacity:.3}}.new-entry-toggle{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0}.new-entry-toggle-btn{padding:4px 14px;font-size:var(--font-size-sm);font-family:var(--font-ui);background:transparent;border:none;color:var(--text-secondary);cursor:pointer;font-weight:500}.new-entry-toggle-btn:hover{background:var(--surface-hover)}.new-entry-toggle-btn.active{background:var(--accent);color:#fff}.new-entry-toggle-btn.active:hover{background:var(--accent)}.content-card{background:var(--bg);border:none;border-bottom:1px solid var(--divider);overflow:hidden}.content-card:last-child{border-bottom:none}.content-card .nb-item{border-radius:0;border-bottom:1px solid var(--divider)}.nb-home-page{display:flex;flex-direction:column;height:100%}.nb-home-page .page-header{position:sticky;top:0;z-index:10}.nb-home{flex:1;padding:0}.nb-category{margin-bottom:0}.nb-category+.nb-category{margin-top:0}.nb-category-header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 12px;min-height:48px;border-bottom:1px solid #f0f0f0;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.nb-category-header .nb-cat-actions{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:flex;gap:2px;opacity:0;transition:opacity var(--transition-fast)}.nb-category-header:hover .nb-cat-actions{opacity:1}.nb-cat-count{font-size:11px;font-weight:600;color:var(--text-muted);background:var(--bg-secondary);padding:1px 8px;border-radius:var(--radius-full);flex-shrink:0;margin-left:auto;transition:opacity var(--transition-fast)}.nb-category-header:hover .nb-cat-count{opacity:0}.nb-category-name{font-size:14px;font-weight:900;color:var(--text)}.nb-section-icon{color:var(--text-muted);display:flex;align-items:center;transition:opacity var(--transition-fast)}.nb-category-chevron{display:none}.nb-item{display:flex;align-items:center;gap:8px;padding:11px var(--space-lg);border-radius:0;cursor:pointer;transition:background var(--transition-fast);position:relative}.nb-item:hover{background:var(--surface-hover)}.nb-item:active{background:var(--surface-active)}.nb-item .recipe-cal-btn{opacity:0;transition:opacity .15s}.nb-item:hover .recipe-cal-btn{opacity:1}.nb-item.grocery-item:hover,.nb-item.grocery-item:active{background:transparent}.nb-item .nb-item-actions{display:flex;gap:2px;flex-shrink:0;margin-left:auto}.nb-item-icon{color:var(--text-muted);flex-shrink:0;transform:translateY(2px)}.nb-item-name{font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nb-item-count{font-size:var(--font-size-xs);color:var(--text-muted);flex-shrink:0;margin-left:auto}.nb-item-count-btn{cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center}.nb-item-count-btn:hover{color:var(--accent);background:var(--surface-hover)}.nb-master-section{margin-top:0}.nb-view{display:flex;flex-direction:column;height:100%}.nb-view>.page-header{position:sticky;top:0;z-index:10;flex-shrink:0}.nb-view-content{flex:1;padding:0;display:flex;flex-direction:column}.nb-view-filler{flex:1}.nb-with-drafting{display:flex;flex-direction:row;height:100%}.nb-with-drafting .nb-main-pane{flex:1;min-width:0;display:flex;flex-direction:column;height:100%;overflow-y:auto;max-width:none;border-right:none}.nb-with-drafting .nb-main-pane .nb-home-page,.nb-with-drafting .nb-main-pane .nb-view{min-height:0;flex:1}.nb-drafting-panel{width:50%;flex-shrink:0;border-left:1px solid var(--border);display:flex;flex-direction:column;height:100%;overflow:hidden}.draft-note-editor{flex:1;overflow-y:auto;padding:0 16px 16px}.draft-note-editor .note-editor-title{display:block;border:none;outline:none;font-size:20px;font-weight:600;padding:12px 0 8px;width:100%;background:transparent;color:var(--text)}.draft-note-editor .note-editor-body .tiptap{outline:none;min-height:300px}.draft-note-editor .note-editor-body .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none;float:left;height:0}.draft-task-editor{flex:1;overflow-y:auto}@media (max-width: 768px){.nb-with-drafting .nb-main-pane{display:none}.nb-drafting-panel{width:100%;border-left:none}}.nb-section{margin-bottom:0;border-bottom:1px solid #f0f0f0}.nb-section:last-child{border-bottom:none}.nb-section-header{display:flex;align-items:center;gap:var(--space-sm);padding:0 16px 0 0;min-height:52px;border-bottom:1px solid #f0f0f0;-webkit-user-select:none;user-select:none}.nb-section-header-toggle{cursor:pointer}.nb-section-name{font-size:14px;font-weight:900;color:var(--text);text-transform:uppercase;display:flex;align-items:center;padding:16px;margin-bottom:-1px;align-self:stretch}.nb-section-count{font-size:var(--font-size-xs);color:var(--text-muted);background:var(--bg-secondary);padding:2px 8px;border-radius:var(--radius-full)}.nb-section-actions{display:flex;gap:4px;margin-left:auto}.nb-section-header .btn-icon{width:28px;height:28px}.meal-plan-tag{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;color:#b8860b;background:#ffb90020;padding:1px 4px 1px 7px;border-radius:var(--radius-full);cursor:pointer;flex-shrink:0;margin-left:auto}.meal-plan-tag-x{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;font-size:11px;color:#b8860b;cursor:pointer;padding:0;border:none;background:none;line-height:1}.meal-plan-tag-x:hover{background:#b8860b22}.quick-add-row{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--divider)}.quick-add-input{flex:1;border:none;outline:none;font-size:var(--font-size-sm);font-family:var(--font-ui);color:var(--text);background:transparent;padding:6px 0}.quick-add-input::placeholder{color:var(--text-muted)}.task-card{display:flex;align-items:center;padding:11px 16px;cursor:pointer;transition:background var(--transition-fast);position:relative;gap:0}.task-card .task-checkbox{margin-right:8px}.task-card .task-star,.task-card .task-star-outline{order:99;margin-left:8px}.task-card:hover,.task-card.active{background:var(--surface-hover);border-radius:6px}.task-indicators{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0;padding:0 0 0 8px}.task-editor .task-checkbox{width:20px;height:20px}.task-star{display:flex;align-items:center;flex-shrink:0;color:#e6a600;cursor:pointer;position:relative;z-index:1}.task-star-outline{display:flex;align-items:center;flex-shrink:0;color:#e0e0e0;cursor:pointer;position:relative;z-index:1}.task-star-outline:hover{color:#e6a600}.task-date-pill.today{background:#dc362e30;color:#b02a24}.task-date-pill.overdue{background:#dc362e;color:#fff}.task-date-pill.completed{background:transparent;color:var(--text-muted);text-decoration:line-through}.task-date-pill.muted{background:var(--bg-secondary);color:var(--text-muted)}.task-card.completed .task-title{text-decoration:line-through;color:var(--text-muted)}.task-checkbox{width:18px;height:18px;border:2px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-right:1px;cursor:pointer;transition:all var(--transition-fast);background:var(--surface);position:relative;z-index:1}.task-checkbox:hover{border-color:var(--accent)}.task-checkbox.checked{background:var(--accent);border-color:var(--accent);color:#fff}.task-checkbox.restore{border-style:dashed;color:var(--text-muted)}.task-card .task-checkbox.restore{border:none}.task-checkbox.restore:hover{border-color:var(--accent);color:var(--accent)}.task-card.completing .task-checkbox{animation:checkPop .3s ease}.task-card.completing{animation:taskFadeOut 1.2s ease forwards}.task-card.completing .task-title{text-decoration:line-through;color:var(--text-muted)}@keyframes checkPop{0%{transform:scale(1)}40%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes taskFadeOut{0%{opacity:1}30%{opacity:1}to{opacity:0;transform:translate(20px)}}.task-body{flex:1;min-width:0;display:flex;align-items:baseline;gap:var(--space-sm)}.task-title{font-size:var(--font-size-sm);font-weight:400;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.task-subtitle{font-size:var(--font-size-xs);color:var(--text-muted);white-space:nowrap}.task-meta{display:none;align-items:center;gap:var(--space-sm);flex-shrink:0}.task-meta:empty{display:none}.task-card:hover .task-meta,.task-meta.task-meta-visible{display:flex}.task-meta-tag{display:flex;align-items:center;gap:4px;font-size:var(--font-size-xs);font-weight:500;color:var(--text-secondary);background:var(--bg);border:1px solid var(--border);padding:2px 8px;border-radius:var(--radius-full);min-height:22px;box-sizing:border-box;position:relative;z-index:1}.task-progress-count{display:flex;align-items:center;flex-shrink:0;font-size:11px;font-weight:500;color:var(--text-muted);background:var(--bg-secondary);padding:1px 7px;border-radius:var(--radius-full);position:relative;z-index:1}.task-date-pill{display:flex;align-items:center;gap:3px;flex-shrink:0;font-size:11px;font-weight:500;color:#b8860b;background:#ffb90020;padding:1px 7px;border-radius:var(--radius-full);position:relative;z-index:1}.task-schedule-pill{display:flex;align-items:center;font-size:var(--font-size-xs);font-weight:500;color:#b8860b;background:#ffb90010;border:1px solid #b8860b80;border-radius:4px;padding:0;cursor:pointer;transition:all var(--transition-fast)}.task-schedule-pill:hover{border-color:#b8860b}.task-schedule-pill.overdue{color:#dc362e;background:#dc362e10;border-color:#dc362e80}.task-schedule-pill.overdue:hover{border-color:#dc362e}.task-schedule-pill-date,.task-schedule-pill-time{display:flex;align-items:center;gap:4px;padding:5px 11px}.task-schedule-pill-date{border-right:1px solid #b8860b80}.task-schedule-pill.overdue .task-schedule-pill-date{border-right-color:#dc362e80}.note-card{display:flex;align-items:center;gap:var(--space-md);padding:11px 16px;cursor:pointer;transition:background var(--transition-fast)}.note-card:hover{background:var(--surface-hover)}.note-card.selected{background:var(--accent-pale)}.note-card.active{background:var(--surface-hover)}.note-select-box{width:20px;height:20px;border:2px solid var(--border);border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast)}.note-select-box.checked{background:var(--accent);border-color:var(--accent);color:#fff}.note-body{flex:1;min-width:0;display:flex;align-items:baseline;gap:var(--space-sm)}.note-title{font-size:var(--font-size-sm);font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-subtitle{font-size:var(--font-size-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-date{font-size:var(--font-size-xs);color:var(--text-muted);flex-shrink:0}.section-jump-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:none;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer}.section-jump-btn:hover{color:var(--text)}.section-dropdown{position:absolute;top:100%;left:0;z-index:100;min-width:180px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:4px 0;margin-top:4px}.section-dropdown-item{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:8px 12px;font-size:var(--font-size-sm);font-weight:600;background:none;border:none;cursor:pointer;text-align:left}.section-dropdown-item:hover{background:var(--surface-hover)}.section-dropdown-item.active{font-weight:700;color:var(--accent)}.sort-chip{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:500;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border);cursor:pointer;transition:all var(--transition-fast)}.sort-chip:hover{border-color:var(--accent);color:var(--accent)}.sort-chip.active{background:var(--accent-pale);border-color:var(--accent);color:var(--accent)}.chip-reveal{display:flex;gap:8;flex-wrap:wrap;overflow:hidden;animation:chipReveal .25s ease-out}@keyframes chipReveal{0%{max-height:0;opacity:0}to{max-height:100px;opacity:1}}.schedule-picker{max-width:360px;width:calc(100vw - 32px)}.schedule-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center;padding:0 8px}.schedule-calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:0 8px}.schedule-calendar-header span{font-size:var(--font-size-sm);font-weight:600}.schedule-calendar-day-label{font-size:10px;font-weight:600;color:var(--text-muted);padding:4px 0}.schedule-calendar-day{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:var(--font-size-xs);cursor:pointer;border:none;background:none;color:var(--text);margin:0 auto}.schedule-calendar-day:hover{background:var(--surface-hover)}.schedule-calendar-day.today{font-weight:700;color:var(--accent);box-shadow:inset 0 0 0 2px var(--accent)}.schedule-calendar-day.selected{background:var(--accent);color:#fff}.schedule-calendar-day.other-month{color:var(--text-muted);opacity:.4}.schedule-panel-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px}.schedule-panel-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:16px;max-width:340px;width:100%;display:flex;flex-direction:column;gap:12px;box-shadow:0 8px 32px #0000002e;flex-shrink:0}.schedule-panel-card.schedule-combined{max-width:740px;flex-direction:row;gap:0;padding:0;height:577px;overflow:hidden}.schedule-combined-left{width:340px;flex-shrink:0;display:flex;flex-direction:column;gap:12px;overflow-y:auto}.schedule-combined-right{flex:1;border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.schedule-combined-right .day-view{height:100%}.schedule-combined-right .day-header{padding:0 8px 0 16px}@media (max-width: 768px){.schedule-panel-card.schedule-combined{flex-direction:row;max-width:100%;height:90vh;height:90dvh;max-height:640px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none}.schedule-panel-card.schedule-combined::-webkit-scrollbar{display:none}.schedule-combined-left,.schedule-combined-right{flex:0 0 100%;width:100%;min-width:0;height:100%;scroll-snap-align:start;scroll-snap-stop:always}.schedule-combined-right{border-left:1px solid var(--border)}}.schedule-repeat-pill{font-size:var(--font-size-xs);padding:2px 8px;border-radius:99px;cursor:pointer;background:transparent;color:var(--text-secondary);border:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background .15s,color .15s,border-color .15s}.schedule-repeat-pill:hover{background:var(--hover)}.schedule-repeat-pill.active{background:var(--accent);color:#fff;border-color:var(--accent)}.schedule-repeat-pill.active-none{background:var(--text-muted);color:#fff;border-color:var(--text-muted)}.schedule-footer{display:flex;align-items:center;padding:16px;border-top:1px solid #f0f0f0}.schedule-combined-left .schedule-footer{margin-top:auto}.schedule-combined-left .field-label{font-size:11px;margin-bottom:2px}.schedule-time-row{padding:16px;display:flex;gap:16px;border-top:1px solid #f0f0f0}.schedule-time-row.blocktime-time-row{padding:0;border-top:none}.blocktime-input{border-color:#12b64a;background:#12b64a1a}.blocktime-input:focus{border-color:#12b64a;box-shadow:0 0 0 2px #12b64a33}.blocktime-types{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.blocktime-type-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer}.blocktime-type-btn:hover{background:var(--surface-hover)}.blocktime-type-btn.active{border-color:var(--accent);background:var(--accent-pale);color:var(--accent);font-weight:600}.blocktime-delete{margin-right:auto;color:#d13438}.schedule-repeat-row{display:flex;flex-direction:column;padding:16px;border-top:1px solid #f0f0f0}.schedule-repeat-pills{display:flex;flex-wrap:wrap;gap:6px}.schedule-footer-left{flex:1}.schedule-footer-right{display:flex;gap:8px}.time-picker{position:relative;display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);overflow:visible}.time-picker-trigger{padding:5px 8px;font-size:14px;font-weight:600;text-align:left;cursor:text;border:none;background:none;color:var(--text);white-space:nowrap;min-width:82px}.time-picker-trigger:hover{color:var(--accent)}.time-picker-input{padding:5px 8px;font-size:14px;font-weight:600;border:none;background:none;color:var(--text);outline:none;min-width:82px;width:82px}.time-picker-caret{display:flex;align-items:center;justify-content:center;width:28px;height:100%;border:none;border-left:1px solid var(--border);background:none;color:var(--text-secondary);cursor:pointer;flex-shrink:0}.time-picker-caret:hover{color:var(--accent);background:var(--surface-hover)}.time-picker-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1001}.time-picker-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:110px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:1002;max-height:172px;overflow-y:auto}.time-picker-item{display:block;width:100%;padding:7px 12px;font-size:13px;font-weight:500;text-align:left;cursor:pointer;border:none;background:none;color:var(--text);white-space:nowrap}.time-picker-item:hover{background:var(--surface-hover)}.time-picker-item.active{background:var(--accent);color:#fff;font-weight:600}.time-picker-item.nearest{background:var(--surface-hover);font-weight:600}.grocery-item-checking{animation:taskFadeOut 1.2s ease forwards;pointer-events:none}.grocery-item-checking .task-checkbox{animation:checkPop .3s ease}.category-header{display:flex;align-items:center;min-height:52px;padding:0 16px;font-size:11px;font-weight:900;color:var(--text-primary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border)}.category-header>span{background:#f5f5f5;padding:8px 16px;margin-left:-16px}.search-inline{display:flex;align-items:center;gap:var(--space-sm);padding:6px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-full);flex:1;max-width:300px}.search-inline input{border:none;background:transparent;outline:none;font-size:var(--font-size-xs);flex:1;min-width:0}.note-editor{display:flex;flex-direction:column;height:100%}.note-editor-title{flex:1;border:none;background:transparent;font-size:20px;font-weight:600;outline:none;min-width:0}.note-editor-title::placeholder{color:var(--text-muted)}.faint-scrollbar{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.08) transparent}.faint-scrollbar::-webkit-scrollbar{width:4px}.faint-scrollbar::-webkit-scrollbar-thumb{background:#00000014;border-radius:2px}.faint-scrollbar::-webkit-scrollbar-thumb:hover{background:#00000026}.faint-scrollbar::-webkit-scrollbar-track{background:transparent}.editor-toolbar-wrap{border-top:1px solid #e0e0e0;background:var(--bg);flex-shrink:0}.editor-toolbar{display:flex;align-items:center;gap:2px;padding:var(--space-sm) var(--space-lg);flex-wrap:wrap}.editor-toolbar .btn-icon.active{color:var(--accent);background:var(--accent-pale)}.toolbar-divider{width:1px;height:20px;background:var(--border);margin:0 4px}.toolbar-word-count{font-size:var(--font-size-xs);color:var(--text-muted);padding:0 var(--space-sm);white-space:nowrap}.task-editor{padding:0;height:100%}.task-editor-header{display:flex;align-items:center;gap:var(--space-md);min-height:58px;padding:0 16px}.task-editor-title{width:100%;border:none;background:transparent;font-size:var(--font-size-xl);font-weight:600;outline:none;resize:none;overflow:hidden;line-height:1.3;font-family:inherit}.task-editor-title::placeholder{color:var(--text-muted)}.nb-3panel-center .task-editor-title{font-size:20px}.day-task-panel .task-editor-title{font-size:16px}.habit-sched-unit{font-size:var(--font-size-sm);color:var(--text-muted)}.habit-stat-input-wrap{display:inline-flex;align-items:baseline;gap:4px}.habit-stat-input{width:90px;text-align:center;border:none;border-bottom:1px dashed var(--border);background:transparent;outline:none;padding:0}.habit-stat-input:focus{border-bottom-color:var(--accent)}.habit-duration-pill{flex-shrink:0;font-size:12px;font-weight:600;color:var(--text-muted);background:var(--bg-secondary);padding:2px 10px;border-radius:var(--radius-full)}.habit-schedule-stats{display:flex;gap:var(--space-md);padding:0 16px 12px;flex-wrap:wrap}.task-note-row{padding:4px 16px 0}.task-note-row textarea::-webkit-resizer{background:linear-gradient(135deg,transparent 40%,var(--border) 40%,var(--border) 50%,transparent 50%,transparent 70%,var(--border) 70%,var(--border) 80%,transparent 80%);cursor:ns-resize}.task-note-row textarea{scrollbar-width:thin}.task-section-body{padding:16px}.task-section-body.subtask-list{padding:0}.task-connected-row,.task-email-link{display:flex;align-items:center;gap:8px;padding:8px 0 16px}.task-connected-link{flex:1;min-width:0;font-size:15px;font-weight:700;color:var(--text);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-connected-link:hover{text-decoration:underline}.connected-note-preview{margin:4px 16px 8px;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--text-primary);word-break:break-word;line-height:1.5}.connected-note-preview p{margin-bottom:1.5em}.connected-note-preview p:last-child{margin-bottom:0}.subtask-list{padding:0 0 8px}.subtask-item{display:flex;align-items:center;gap:var(--space-sm);transition:background var(--transition-fast);padding:6px 10px}.subtask-item:hover{background:var(--surface-hover)}.subtask-item input[type=text]{flex:1;border:none;background:transparent;outline:none;font-size:var(--font-size-sm)}.subtask-item.done input[type=text]{text-decoration:line-through;color:var(--text-muted)}.subtask-grip{display:flex;align-items:center;cursor:grab;color:var(--text-muted);padding:4px 0;touch-action:none;flex-shrink:0}.subtask-grip:active{cursor:grabbing}.subtask-item.dragging{opacity:.4}.subtask-item.drag-over{border-top:2px solid var(--accent);margin-top:-2px}.day-view{display:flex;flex-direction:column;height:100%;max-width:var(--max-width);border-right:1px solid #e0e0e0}.day-view-with-panel{flex-direction:row}.day-view-with-panel .day-view-main{flex:1;min-width:0;display:flex;flex-direction:column;height:100%}.day-view:not(.day-view-with-panel) .day-view-main{display:flex;flex-direction:column;height:100%}.day-task-panel{width:380px;flex-shrink:0;border-left:1px solid var(--border);display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg)}.day-task-panel .modal-full{position:relative;inset:auto;z-index:auto;height:100%;display:flex;flex-direction:column;max-width:none;border-right:none}.day-task-panel .page-header{flex-shrink:0}.day-view-with-panel{position:relative}.day-task-panel.expanded{position:absolute;top:0;right:0;bottom:0;left:auto;width:calc(100% - 380px);max-width:none;min-width:0;z-index:20;border-left:1px solid var(--border)}.day-task-panel.expanded .page-header-title{display:block}@media (max-width: 768px){.day-view-with-panel{flex-direction:column}.day-view-with-panel .day-view-main{flex:1;min-height:0}.day-task-panel{width:100%;height:50vh;border-left:none;border-top:1px solid var(--border)}.day-task-panel.expanded{width:100%;height:100%;border-top:none;border-left:none}}.day-view-with-panel{max-width:none;border-right:none}.day-view-with-goals{flex-direction:row;position:relative;max-width:none;border-right:none}.day-view-with-goals .day-view-main{flex:1;min-width:0;display:flex;flex-direction:column;height:100%}.day-goals-panel{width:380px;flex-shrink:0;border-left:1px solid var(--border);display:flex;flex-direction:column;height:100%;overflow:hidden}.day-agenda-panel{display:flex;flex-direction:column;height:100%;min-height:0}.day-agenda-panel .day-view-main{display:flex;flex-direction:column;flex:1;min-height:0}.day-agenda-panel .day-header{padding:0 8px 0 16px}.day-3panel{display:flex;height:100%;max-width:none;border-right:none}.day-panel-left{width:300px;flex-shrink:0;overflow:visible;min-height:0;display:flex;flex-direction:column;border-right:1px solid var(--border);scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.08) transparent}.day-panel-left .habits-home{min-height:0}.day-panel-left::-webkit-scrollbar{width:4px}.day-panel-left::-webkit-scrollbar-thumb{background:#00000014;border-radius:2px}.day-panel-left::-webkit-scrollbar-thumb:hover{background:#00000026}.day-panel-left::-webkit-scrollbar-track{background:transparent}.day-panel-center{flex:1;min-width:0;display:flex;flex-direction:column;height:100%;overflow:hidden;border-right:1px solid var(--border)}.day-panel-center .page-header,.day-panel-center .day-header{padding:0 8px 0 16px}.day-panel-right{width:420px;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden}.day-panel-right .modal-full{position:relative;inset:auto;z-index:auto;height:100%;display:flex;flex-direction:column;max-width:none;border-right:none}.day-panel-right .page-header{flex-shrink:0}.day-page-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;flex-direction:column;background:var(--bg, #fff);overflow:hidden}.day-page-overlay .modal-full{position:relative;inset:auto;z-index:auto;height:100%;display:flex;flex-direction:column;max-width:none;border-right:none}.day-page-overlay .page-header{flex-shrink:0}.note-task-panel{width:380px;flex-shrink:0;border-left:1px solid var(--border);display:flex;flex-direction:column;height:100%;overflow:hidden}.task-day-split{display:flex;flex-direction:row;height:100%;position:relative}.task-day-split>.task-day-main{flex:1;min-width:0;display:flex;flex-direction:column;height:100%}.task-day-panel{width:380px;flex-shrink:0;border-left:1px solid var(--border);display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg)}.task-day-split .modal-full{position:relative;inset:auto;z-index:auto;height:100%;max-width:none;border-right:none}@media (max-width: 768px){.task-day-split{flex-direction:column}.task-day-split>.task-day-main{flex:1;min-height:0}.task-day-panel{width:100%;height:50vh;border-left:none;border-top:1px solid var(--border)}}.day-header{height:var(--header-height);display:flex;align-items:center;padding:0 8px;gap:4px;flex-shrink:0;background:var(--bg);border-bottom:1px solid #e0e0e0}.day-grid{flex:1;overflow-y:auto;position:relative}.day-hour-row{display:flex;align-items:flex-start;min-height:48px;position:relative}.day-hour-label{width:48px;font-size:var(--font-size-xs);color:var(--text-muted);text-align:right;padding-right:var(--space-sm);padding-top:2px;flex-shrink:0}.day-hour-line{flex:1;border-top:1px solid var(--divider);min-height:48px;position:relative}.day-now-line{position:absolute;left:48px;right:0;height:2px;background:var(--danger);z-index:5;pointer-events:none}.day-now-dot{position:absolute;left:44px;width:10px;height:10px;border-radius:50%;background:var(--danger);transform:translateY(-4px);z-index:5}.day-block{position:absolute;left:56px;right:var(--space-sm);border-radius:var(--radius-sm);padding:4px 8px;font-size:var(--font-size-xs);font-weight:500;overflow:hidden;cursor:pointer;color:var(--text);z-index:2;transition:opacity var(--transition-fast);border-left:3px solid;border-top:1px solid;border-right:1px solid;border-bottom:1px solid;box-sizing:border-box}.day-block.short{padding-top:1px;padding-bottom:1px}.day-block.faded{opacity:.5}.day-block.scheduling{opacity:.5;pointer-events:none;cursor:default}.day-block{user-select:none;-webkit-user-select:none}.day-block.movable{padding-left:22px}.day-block-grip{position:absolute;left:0;top:0;bottom:0;width:20px;display:flex;align-items:flex-start;justify-content:center;padding-top:5px;box-sizing:border-box;color:var(--text-muted);cursor:grab;touch-action:none}.day-block.short .day-block-grip{padding-top:1px}.day-block-grip:active{cursor:grabbing}.day-block.dragging{cursor:grabbing;z-index:20;opacity:1;box-shadow:0 4px 14px #00000040;transition:none}.day-block-remove{position:absolute;top:2px;right:2px;display:none;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;border-radius:3px;background:transparent;color:var(--text-muted);cursor:pointer}.day-block:hover .day-block-remove{display:flex}.day-block-remove:hover{background:#0000001a;color:var(--text)}.day-block-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center}.day-block-time{font-size:10px;opacity:.8}.day-section-label{font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-sm)}.day-habit-chip{display:flex;align-items:center;gap:4px;padding:6px 12px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--card);cursor:pointer;font-size:var(--font-size-xs);font-weight:500;transition:all var(--transition-fast)}.day-habit-chip:hover{opacity:.8}.day-unscheduled{display:flex;align-items:center;padding:var(--space-sm) var(--space-lg);border-bottom:1px solid var(--divider);background:var(--bg-secondary);flex-shrink:0;overflow:hidden}.day-mini-task{display:flex;align-items:center;gap:4px;padding:4px 10px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--font-size-xs);white-space:nowrap;cursor:pointer;flex-shrink:0}.day-mini-task:hover{background:var(--card-hover)}.habits-home{padding:0 14px;height:100%}.workout-blocks-area{background:var(--surface-hover);padding-bottom:12px}.habits-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(4,1fr);gap:0;flex:1}.habit-grid-card{cursor:pointer;transition:background var(--transition-fast)}.habit-grid-card:hover{background:var(--surface-hover)}.habit-grid-dot{width:16px;height:16px;border-radius:50%;flex-shrink:0}@media (max-width: 768px){.habits-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:unset}}.goals-split{display:flex;flex:1;overflow:hidden}.goals-left-panel{width:300px;flex-shrink:0;overflow:visible;min-height:0;border-right:1px solid var(--border);display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.08) transparent}.goals-left-panel .habits-home{min-height:0}.goals-left-panel::-webkit-scrollbar{width:4px}.goals-left-panel::-webkit-scrollbar-thumb{background:#00000014;border-radius:2px}.goals-left-panel::-webkit-scrollbar-thumb:hover{background:#00000026}.goals-left-panel::-webkit-scrollbar-track{background:transparent}.goals-center-panel{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--border)}.goals-right-panel{width:420px;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden}@media (max-width: 1080px){.goals-center-panel{display:none}}@media (max-width: 767px){.goals-left-panel{width:100%;border-right:none}.goals-right-panel{display:none}}.habit-log-scroll{flex:1;overflow-y:auto;padding:0 20px}.habit-log-scroll .habit-dash-row{padding:10px 0}.habit-log-scroll .habit-dash-row:hover{background:none}.habit-log-scroll .habit-dash-check{top:8px}.habit-log-scroll .habit-dash-name{font-size:11px;font-weight:400}.habit-log-scroll .habit-dash-val{font-weight:600}.habit-log-scroll .habit-dash-tally:before{content:"·";margin-right:4px;color:var(--text-muted)}.habit-stats-panel{display:flex;flex-direction:column;gap:16px;flex:1;overflow-y:auto;padding:var(--space-lg)}.habit-stats-row-top{display:flex;gap:16px;align-items:stretch}.habit-stats-row-top>*{flex:1;min-width:0}.habit-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-sm)}.habit-stats-calendar{border:1px solid var(--border);border-radius:var(--radius-md);padding:12px}.habit-stats-cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.habit-stats-cal-month{font-size:14px;font-weight:600;color:var(--text);text-align:left}.habit-stats-cal-nav{display:flex;gap:4px}.habit-stats-calendar .month-dots-grid{padding:0}.habit-stat-cell{border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 16px 16px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.habit-stat-cell .nb-3panel-section-header{padding-top:0}.habit-stat-value{font-size:24px;font-weight:700;font-family:var(--font-ui)}.habit-stat-label{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:2px}.habit-stats-panel .habit-stat-value{font-size:20px}.habit-stats-panel .habit-stat-today .habit-stat-value{font-size:24px}.habit-stat-today{gap:2px}.month-dots-small .month-dot{width:12px!important;height:12px!important;margin-top:4px!important}.month-dots-small .month-dots-header>div{font-size:9px!important;margin:1px 0!important}.month-dots-small .month-dots-row{margin-bottom:4px!important}.stat-pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;background:#0f6cbd14;font-weight:600;font-size:12px;color:var(--text)}.stats-habit-row{display:flex;align-items:center;gap:12px;padding:10px 16px;min-height:63px;box-sizing:border-box;border-bottom:1px solid var(--divider)}.stats-habit-line{font-size:12px;color:var(--text);flex:1;min-width:0}.stats-habit-value{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--radius);background:var(--surface-hover);font-size:var(--font-size-base);font-weight:700;color:var(--text)}.stats-habit-label{font-size:12px;color:var(--text-muted);margin-left:6px}.stats-label-muted{color:var(--text-muted);font-weight:400}.stats-label-verb{color:var(--accent);font-weight:700}.stats-label-noun{color:var(--text);font-weight:700}.habits-dashboard{display:flex;flex-direction:column;flex:1}.habits-dash-summary{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--divider)}.habits-dash-ring{position:relative;width:52px;height:52px;flex-shrink:0}.habits-dash-ring-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.habits-dash-ring-num{font-size:18px;font-weight:600;color:var(--text);line-height:1}.habits-dash-ring-of{font-size:10px;color:var(--text-muted)}.habits-dash-meta{flex:1}.habits-dash-heading{font-size:14px;font-weight:600;color:var(--text);margin-bottom:2px}.habits-dash-sub{font-size:12px;color:var(--text-secondary)}.habit-dash-row{display:flex;align-items:center;gap:12px;padding:12px 0;cursor:pointer;transition:background var(--transition-fast)}.habit-dash-row:hover{background:var(--surface-hover)}.habit-dash-check{position:relative;top:9px;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.habit-dash-check.met{color:var(--accent)}.habit-dash-check.unmet{border:2px solid #f0f0f0}.habit-dash-info{flex:1;min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:8px;row-gap:3px;align-items:baseline}.habit-dash-info>.habit-dash-name{grid-column:1;grid-row:1}.habit-dash-info>.habit-dash-tally{grid-column:2;grid-row:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.habit-dash-info>.habit-dash-bar,.habit-dash-info>.habit-dash-streak{grid-column:1 / -1;grid-row:2;align-self:center}.habit-dash-name{font-size:12px;font-weight:600;color:var(--text)}.habit-dash-bar{height:6px;background:#e0e0e080;border-radius:3px;overflow:hidden;position:relative}.habit-dash-bar-fill{height:100%;border-radius:3px;background:var(--accent);position:absolute;left:0;top:0;transition:width var(--transition-normal)}.habit-dash-tally{font-size:11px;font-weight:400;display:flex}.goals-dash-row .habit-dash-tally{opacity:0;transition:opacity var(--transition-fast)}.goals-dash-row:hover .habit-dash-tally{opacity:1}.habit-dash-val{color:var(--text)}.habit-dash-goal{color:var(--text-muted)}.habit-dash-streak{display:flex;flex-wrap:wrap;gap:6px;height:8px;overflow:hidden;align-content:flex-start}.habit-dash-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.journal-page{max-width:var(--max-width);border-right:1px solid var(--border)}.journal-page .page-header{position:sticky;top:0;z-index:10}.journal-3panel{display:flex;height:100%;max-width:none;border-right:none}.journal-panel-left{width:300px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid var(--border);overflow:hidden}.journal-panel-center{flex:1;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--border)}.journal-panel-right{width:420px;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden}.journal-panel-list{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.08) transparent}.journal-list-item{height:34px;padding:6px 10px;margin:6px 6px 0;border-radius:6px}.journal-list-item.active{background:var(--accent-pale)}.journal-list-item>.nb-item-content{flex:1;min-width:0}.journal-count-pill{flex-shrink:0;font-size:11px;font-weight:500;color:var(--text-muted);background:var(--surface-hover);padding:1px 8px;border-radius:var(--radius-full);margin-left:8px}.journal-panel-left>.page-header{padding:0 8px}.journal-panel-right .page-header{padding:0 8px 0 16px}.journal-right-search{flex:1;display:flex;align-items:center;gap:6px;background:var(--surface-hover);border-radius:var(--radius-md);padding:0 8px;height:32px}.journal-right-search .journal-search-input{flex:1;min-width:0}.journal-search-bar{flex-shrink:0;display:flex;align-items:center;gap:4px;border-top:1px solid #e0e0e0;padding:8px;background:var(--bg)}.journal-search-bar .journal-search-input-wrap{flex:1;min-width:0}.journal-search-input-wrap{display:flex;align-items:center;gap:6px;background:var(--surface-hover);border-radius:var(--radius-md);padding:0 8px;height:32px}.journal-search-icon{flex-shrink:0;color:var(--text-muted)}.journal-search-input{flex:1;border:none;background:transparent;outline:none;font-family:var(--font-ui);font-size:var(--font-size-sm);color:var(--text);min-width:0}.journal-search-input::placeholder{color:var(--text-muted)}.journal-search-clear{flex-shrink:0;width:20px!important;height:20px!important;color:var(--text-muted)}.journal-nav-header{justify-content:center;gap:8px}.journal-nav-pos{font-family:var(--font-ui);font-size:var(--font-size-xs);color:var(--text-muted);min-width:48px;text-align:center}.journal-note-item.active{background:var(--surface-hover)}.journal-note-item .nb-item-content{display:flex;flex-direction:column;flex:1;min-width:0}.journal-entry-title{white-space:normal;line-height:1.3}.journal-note-date{color:var(--text-muted);font-size:var(--font-size-xs);margin-top:2px}.journal-editor{display:flex;flex-direction:column;flex:1;overflow:hidden}.journal-editor-header{display:flex;align-items:center;padding:0 var(--space-lg);height:var(--header-height);flex-shrink:0;gap:4px}.journal-editor-header .note-editor-title{flex:1}.journal-editor-body{flex:1;overflow-y:auto;padding:var(--space-lg)}.journal-editor-body{font-size:15px}.journal-editor-body .tiptap{outline:none;min-height:200px;padding-bottom:33vh}.tiptap ul,.connected-note-body ul{list-style:disc outside;padding-left:1.5em;margin:.4em 0}.tiptap ol,.connected-note-body ol{list-style:decimal outside;padding-left:1.5em;margin:.4em 0}.tiptap ul ul,.connected-note-body ul ul{list-style-type:circle}.tiptap ul ul ul,.connected-note-body ul ul ul{list-style-type:square}.tiptap li,.connected-note-body li{margin:.15em 0}.tiptap li>p,.connected-note-body li>p{margin:0}.journal-editor-body a,.connected-note-body a{color:var(--accent);text-decoration:underline;cursor:pointer}.journal-editor-body .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--text-muted);pointer-events:none;height:0}.journal-editor .editor-toolbar-wrap{flex-shrink:0}.journal-editor-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);font-family:var(--font-ui);font-size:var(--font-size-sm)}.journal-editor-empty-blank{background:var(--surface-hover)}.food-split{display:flex;flex-direction:row;flex:1;height:100%;overflow:hidden}.food-split-main{flex:1;min-width:0;display:flex;flex-direction:column;height:100%;max-width:var(--max-width);border-right:1px solid var(--border)}.food-split-main .page-header{position:sticky;top:0;z-index:10}.food-meal-panel{flex:1;min-width:0;display:flex;flex-direction:column;height:100%;overflow:hidden}.food-meal-panel .page-header{position:sticky;top:0;z-index:10;padding:0 16px}.food-meal-panel .meal-plan-scroll{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.08) transparent}.food-meal-panel .meal-plan-scroll::-webkit-scrollbar{width:4px}.food-meal-panel .meal-plan-scroll::-webkit-scrollbar-thumb{background:#00000014;border-radius:2px}.recipe-split{display:flex;flex:1;overflow:hidden}.recipe-split-pane{flex:1;display:flex;flex-direction:column;overflow-y:auto;min-width:0;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.08) transparent}.recipe-split-pane::-webkit-scrollbar{width:4px}.recipe-split-pane::-webkit-scrollbar-thumb{background:#00000014;border-radius:2px}.recipe-split-pane::-webkit-scrollbar-thumb:hover{background:#00000026}.recipe-split-pane::-webkit-scrollbar-track{background:transparent}.recipe-split-pane:first-child{border-right:1px solid var(--border)}.recipe-split-pane .nb-section-header{flex-shrink:0}.recipe-split-pane .nb-view-content{overflow-y:auto}.nb-home-split{display:flex;flex:1;min-height:0;overflow:hidden}.nb-home-split-left{width:50%;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--border)}.nb-home-split-right{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.nb-tasks-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.nb-tasks-panel .page-header{padding:0 8px 0 16px}.nb-task-filters{display:flex;gap:6px;padding:8px 16px 16px;flex-shrink:0;overflow-x:auto}.nb-task-filter-pill{all:unset;cursor:pointer;font-family:var(--font-ui);font-size:var(--font-size-xs);padding:4px 10px;border-radius:var(--radius-full);border:1px solid var(--border);color:var(--text-muted);white-space:nowrap;display:inline-flex;align-items:center;gap:4px;transition:all .12s ease}.nb-task-filter-pill:hover{border-color:var(--text-secondary);color:var(--text-primary)}.nb-task-filter-pill.active{background:var(--accent);border-color:var(--accent);color:#fff}.nb-task-filter-count{font-size:10px;font-weight:600;min-width:16px;text-align:center;padding:0 4px;border-radius:var(--radius-full);background:#00000014}.nb-task-filter-pill.active .nb-task-filter-count{background:#ffffff40}.nb-tasks-filter-btn{display:none}@media (max-width: 1100px){.nb-tasks-filter-btn{display:flex}}.nb-3panel{display:flex;height:100%;max-width:none}.nb-3panel-left{width:300px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid var(--border);overflow:hidden}.nb-3panel-left-scroll{flex:1;overflow-y:auto}.nb-3panel-left-scroll::-webkit-scrollbar{width:4px}.nb-3panel-left-scroll::-webkit-scrollbar-track{background:transparent}.nb-3panel-left-scroll::-webkit-scrollbar-thumb{background:#00000026;border-radius:4px}.nb-3panel-center{flex:1;min-width:0;display:flex;flex-direction:column;height:100%;overflow:hidden;border-right:1px solid var(--border)}.nb-3panel-center.journal-focus{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;height:auto;background:var(--bg);border-right:none}.nb-3panel-center.journal-focus .page-blocks-card{padding-bottom:60vh}.nb-3panel-center.journal-focus .page-blocks{max-width:800px;margin:0 auto;width:100%}.nb-3panel-center .note-overlay,.nb-3panel-center .modal-full,.journal-panel-center .modal-full{position:relative;inset:auto;z-index:auto;height:100%;display:flex;flex-direction:column;max-width:none;border-right:none}.nb-3panel-center .page-header{flex-shrink:0;padding:0 8px}.nb-3panel-right{width:420px;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden}.nb-3panel-right .nb-tasks-panel{height:100%}.nb-3panel-right .nb-view{display:flex;flex-direction:column;height:100%;overflow:hidden}.nb-3panel-right .nb-view-content{flex:1;overflow-y:auto}.nb-category-group,.nb-section-group{padding:4px 0 8px}.nb-category-group:last-child,.nb-section-group:last-child{padding-bottom:24px}.nb-3panel-left .nb-item{border-bottom:none}.nb-3panel-left .nb-item-name,[class*=-panel-left] .note-title,[class*=-panel-left] .nb-item-name,.journal-list-item .note-title,.journal-list-item .nb-item-name{font-weight:600}.nb-3panel-left .journal-list-item.active{background:var(--accent-pale)}.nb-3panel-left .journal-list-item{padding:6px 10px;height:auto;min-height:31.8px}.nb-3panel-left .note-title{font-size:12px}.nb-3panel-section-header{display:flex;align-items:center;padding:14px 6px 0}.nb-3panel-section-count{font-size:var(--font-size-xs);color:var(--text-muted);margin-left:6px}.nb-section-close{margin-left:auto;width:22px!important;height:22px!important;color:var(--text-muted)}.nb-section-close:hover{color:var(--text)}.nb-trash-toggle{margin:14px 6px 0}.nb-3panel-section-name{font-size:14px;font-weight:700;color:silver;text-transform:uppercase;letter-spacing:.5px;padding:5px 8px;border-radius:6px}.nb-3panel-center .nb-drafting-panel{width:100%;border-left:none}.nb-draft-type-toggle{display:flex;gap:4px;padding:8px 16px 16px;flex-shrink:0}.nb-draft-type-btn{all:unset;cursor:pointer;font-family:var(--font-ui);font-size:var(--font-size-xs);padding:4px 12px;border-radius:4px;border:1px solid var(--border);color:var(--text-muted);display:inline-flex;align-items:center;gap:4px;transition:all .12s ease}.nb-draft-type-btn:hover{border-color:var(--text-secondary);color:var(--text-primary)}.nb-draft-type-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.recipe-ingredient-row{display:flex;align-items:center;gap:var(--space-sm);padding:11px 16px}.recipe-ingredient-name{font-size:var(--font-size-sm);color:var(--text-secondary)}.recipe-ingredient-pill{font-size:var(--font-size-xs);color:var(--text-muted);background:var(--bg-secondary);padding:1px 8px;border-radius:var(--radius-full);flex-shrink:0;white-space:nowrap}.recipe-instruction-row{display:flex;align-items:flex-start;gap:var(--space-sm);padding:11px 16px}.recipe-instruction-num{font-size:var(--font-size-xs);color:var(--text-muted);font-weight:600;flex-shrink:0;width:24px;text-align:center;line-height:1.7}.recipe-instruction-text{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.7}.recipe-detail-view{display:flex;flex-direction:column;height:100%;max-width:var(--max-width);border-right:1px solid #e0e0e0}.food-home{padding:0;height:100%}.macros-split{display:flex;flex-direction:row;flex:1;min-height:0}.macros-split-left{flex:1;min-width:0;overflow-y:auto}.macros-split-right{flex:1;min-width:0;overflow-y:auto;border-left:1px solid var(--border)}.macros-entry{padding:var(--space-lg)}.macros-entry .nb-section-name{margin-bottom:var(--space-sm)}.macros-entry .textarea{min-height:60;width:100%;resize:none;overflow:hidden}.macros-entry-fields{display:flex;gap:var(--space-sm);margin:var(--space-sm) 0;margin-bottom:16px}.macros-entry-fields>div{flex:1}.macros-entry-fields .field-label{font-size:var(--font-size-xs);color:var(--text-muted);margin-bottom:2px}.recipe-macro-breakdown{font-size:var(--font-size-xs);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.recipe-macro-breakdown-header{display:flex;gap:8px;padding:6px 10px;background:var(--surface-hover);font-weight:700;color:var(--text-muted)}.recipe-macro-breakdown-row{display:flex;gap:8px;padding:5px 10px;border-top:1px solid var(--divider);color:var(--text)}.recipe-macro-col{width:48px;text-align:right;flex-shrink:0}.recipe-macros-summary{display:flex;flex-wrap:wrap;gap:10px;padding:12px 16px}.recipe-macro-pill{display:flex;flex-direction:column;align-items:center;min-width:52px;padding:8px 12px;border-radius:var(--radius);background:var(--surface-hover)}.recipe-macro-pill-val{font-size:var(--font-size-base);font-weight:700;color:var(--text)}.recipe-macro-pill-label{font-size:var(--font-size-xs);color:var(--text-muted)}.recipe-picker{margin-bottom:0}.recipe-picker-selected{display:flex;flex-direction:column;gap:8px;margin-top:8px}.recipe-picker-macros{display:flex;flex-wrap:wrap;gap:6px}.recipe-picker-tag{padding:2px 8px;border-radius:12px;background:#0f6cbd1a;color:var(--accent);font-size:var(--font-size-xs);font-weight:600}.recipe-picker-divider{display:flex;align-items:center;gap:12px;margin:12px 0;font-size:var(--font-size-xs);color:var(--text-muted)}.recipe-picker-divider:before,.recipe-picker-divider:after{content:"";flex:1;height:1px;background:var(--divider)}.macro-log-row{display:flex;align-items:flex-start;gap:var(--space-sm);padding:12px 16px 16px;border-bottom:1px solid var(--divider)}.macro-log-row:last-child{border-bottom:none}.macros-grid{font-size:11px}.macros-week-row:hover{background:var(--bg-secondary)}@media (max-width: 768px){.macros-split{flex-direction:column}.macros-split-right{border-left:none;border-top:1px solid var(--border)}}.add-category-btn{display:block;width:100%;padding:var(--space-sm) 0;margin-top:16px;margin-bottom:16px;font-size:var(--font-size-sm);color:var(--text-muted);background:none;border:none;cursor:pointer;text-align:center}.add-category-btn:hover{color:var(--accent)}.meal-day{margin-bottom:var(--space-xl)}.meal-day-header{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);padding:var(--space-sm) 0;border-bottom:1px solid var(--divider);margin-bottom:var(--space-sm)}.meal-slot{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.meal-slot:hover{background:var(--surface-hover)}.meal-time{font-size:var(--font-size-xs);color:var(--text-muted);width:60px;flex-shrink:0}.meal-name{font-size:var(--font-size-sm);flex:1}.meal-cals{font-size:var(--font-size-xs);color:var(--text-muted)}.meal-week-grid{display:flex;flex-direction:column}.meal-week-day{display:flex;flex-direction:row;align-items:center;padding:0 16px;gap:12px;border-bottom:1px solid var(--divider);min-height:48px;position:relative}.meal-week-day:last-child{border-bottom:none}.meal-week-day-letter{font-size:11px;font-weight:900;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;width:36px;flex-shrink:0}.meal-week-day-letter.today{color:var(--accent)}.meal-week-day-recipe{font-size:var(--font-size-sm);color:var(--text-secondary);text-align:left;flex:1;line-height:1.3;word-break:break-word;display:flex;align-items:center;justify-content:flex-start}.meal-week-day-recipe.clickable{cursor:pointer}.meal-week-day-recipe.clickable:hover{color:var(--accent)}.meal-week-day-recipe.today-text{font-weight:900}.meal-week-day-recipe.empty-slot{cursor:pointer}.meal-week-day-recipe.empty-slot:hover{color:var(--accent)}.meal-day-dropdown{position:fixed;z-index:100;width:300px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:260px;display:flex;flex-direction:column}.meal-day-dropdown-search{padding:8px;border-bottom:1px solid var(--divider);flex-shrink:0}.meal-day-dropdown-search input{width:100%;padding:6px 8px;font-size:var(--font-size-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);outline:none}.meal-day-dropdown-search input:focus{border-color:var(--accent)}.meal-day-dropdown-list{flex:1;overflow-y:auto;scrollbar-width:thin}.meal-day-dropdown-item{padding:8px 12px;font-size:var(--font-size-sm);cursor:pointer;color:var(--text-secondary)}.meal-day-dropdown-item:hover{background:var(--surface-hover);color:var(--text)}.meal-day-dropdown-empty{padding:12px;text-align:center;font-size:var(--font-size-xs);color:var(--text-muted)}.meal-week-day-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s;flex-shrink:0}.meal-week-day:hover .meal-week-day-actions{opacity:1}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:none}}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:none}}.settings-3panel{display:flex;height:100%;max-width:none}.settings-panel-left{width:300px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid var(--border);overflow:hidden}.settings-panel-left>.page-header{padding:0 8px}.settings-panel-left .journal-list-item{padding:6px 10px;height:auto;min-height:31.8px}.settings-panel-left .note-title{font-size:12px}.settings-nav-list{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.08) transparent}.settings-panel-left .nb-item{border-bottom:none}.settings-panel-left .journal-list-item.active{background:var(--accent-pale)}.settings-panel-center{flex:1;min-width:0;display:flex;flex-direction:column;overflow-y:auto;border-right:1px solid var(--border);padding:24px 14px;gap:24px}.settings-panel-center .page-block{flex-shrink:0;overflow:hidden}.settings-panel-center .page-header{padding:0 16px;height:48px}.settings-panel-center .page-header-title{text-transform:capitalize}.settings-panel-right{width:420px;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden}.settings-panel-right>.page-header{padding:0 8px}.settings-right-scroll{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.08) transparent;padding:0 0 24px}.settings-panel-center-mobile{border-right:none;padding-bottom:32px}.settings-mobile-reference{margin-top:16px;border-top:1px solid var(--border);padding-top:4px}.settings-kbd{font-family:var(--font-ui);font-size:11px;padding:2px 8px;border-radius:4px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary)}.settings-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--divider)}.settings-row:last-child{border-bottom:none}.settings-row-label{font-size:var(--font-size-sm)}.settings-row-desc{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:2px}.toggle{width:40px;height:22px;border-radius:11px;background:var(--border-strong);position:relative;cursor:pointer;transition:background var(--transition-fast)}.toggle.on{background:var(--accent)}.toggle-thumb{width:18px;height:18px;border-radius:50%;background:#fff;position:absolute;top:2px;left:2px;transition:transform var(--transition-fast);box-shadow:0 1px 3px #0003}.toggle.on .toggle-thumb{transform:translate(18px)}.search-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1100;display:flex;align-items:flex-start;justify-content:center;padding:80px var(--space-lg) var(--space-lg);animation:fadeIn .15s ease}.search-panel{width:100%;max-width:600px;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);overflow:hidden;animation:slideUp .2s ease}.search-input-row{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--divider)}.search-input-row input{flex:1;border:none;background:transparent;outline:none;font-size:var(--font-size-lg)}.search-filters{display:flex;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border-bottom:1px solid var(--divider);flex-wrap:wrap}.search-results{max-height:400px;overflow-y:auto}.search-result-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);cursor:pointer;transition:background var(--transition-fast)}.search-result-item:hover,.search-result-item.selected{background:var(--accent-pale)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.text-muted{color:var(--text-muted)}.text-sm{font-size:var(--font-size-sm)}.text-xs{font-size:var(--font-size-xs)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex-1{flex:1;min-width:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.dropdown-menu{position:absolute;right:0;top:calc(100% + 4px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:260px;z-index:100;max-width:calc(100vw - 24px);padding:4px 0;animation:fadeIn .1s ease}.dropdown-item{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:8px 16px;font-size:var(--font-size-sm);color:var(--text);background:none;border:none;border-radius:0;cursor:pointer;text-align:left;transition:background var(--transition-fast)}.dropdown-item:hover{background:var(--surface-hover)}.dropdown-item.expanded{background:var(--accent-pale)}.dropdown-sub{font-size:11px;padding:6px 16px}.dropdown-sub:first-of-type{padding-top:10px}.dropdown-sub:last-of-type{padding-bottom:10px}.manage-row{gap:8px;position:relative;user-select:none;-webkit-user-select:none}.manage-row.dragging{opacity:.6;background:var(--surface);box-shadow:var(--shadow-md, 0 4px 12px rgba(0,0,0,.15));z-index:2;cursor:grabbing}.manage-row.dragging .manage-handle{cursor:grabbing}.manage-drop-line{position:absolute;left:4px;right:4px;top:-1px;height:3px;border-radius:2px;background:var(--accent);box-shadow:0 0 0 3px var(--accent-pale);pointer-events:none}.manage-drop-line.bottom{top:auto;bottom:-1px}.manage-handle{display:flex;color:var(--text-muted);cursor:grab;touch-action:none;flex-shrink:0}.manage-check{width:14px;height:14px;margin:0;cursor:pointer;accent-color:var(--accent);flex-shrink:0}.manage-group{position:relative}.manage-group.dragging{opacity:.6;z-index:2;background:var(--surface);box-shadow:var(--shadow-md, 0 4px 12px rgba(0,0,0,.15))}.manage-sub{margin:0 0 8px 31px;padding-left:6px;border-left:2px solid var(--border)}.manage-sub .manage-row{padding:5px 12px;font-size:var(--font-size-xs);color:var(--text-secondary)}.manage-sub .dropdown-info{padding:4px 12px}.settings-manage .manage-group>.manage-row .manage-name{font-weight:600}.settings-manage .manage-add{color:var(--text-muted);padding:10px 16px 12px}.manage-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-item.danger{color:var(--danger)}.dropdown-item.danger:hover{background:var(--danger-bg)}.dropdown-divider{height:1px;background:var(--divider);margin:4px 0}.dropdown-label{padding:4px 16px 2px;font-size:var(--font-size-xs);color:var(--text-muted);font-weight:600}.dropdown-info{padding:6px 16px;font-size:var(--font-size-xs);color:var(--text-muted)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:focus-visible,.btn-icon:focus-visible,.sort-chip:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.input:focus-visible,.textarea:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-pale)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-2xl);color:var(--text-muted);text-align:center;gap:var(--space-md)}.empty-state-icon{font-size:32px;opacity:.5}.empty-state-text{font-size:var(--font-size-sm)}.search-trash-toggle{display:block;width:100%;padding:10px 16px;background:none;border:none;border-top:1px solid var(--divider);color:var(--accent);font-size:var(--font-size-sm);cursor:pointer;text-align:left}.search-trash-toggle:hover{text-decoration:underline}.draft-title{font-weight:500;font-size:var(--font-size-sm);color:var(--text-muted)}.draft-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.draft-editor{flex:1;overflow-y:auto;padding:var(--space-lg);font-family:inherit;font-size:15px;line-height:1.6;color:var(--text);outline:none;white-space:pre-wrap;word-break:break-word}.draft-editor:empty:before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);padding:var(--space-lg)}.auth-card{background:var(--surface);padding:var(--space-2xl);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:400px}.auth-logo{width:48px;height:48px;background:var(--accent-pale);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--accent);margin-bottom:var(--space-lg)}.auth-title{font-size:var(--font-size-2xl);font-weight:700;margin-bottom:var(--space-xs)}.auth-subtitle{font-size:var(--font-size-sm);color:var(--text-muted);margin-bottom:var(--space-xl)}.auth-label{display:block;font-size:var(--font-size-xs);font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-xs)}.auth-submit{width:100%;padding:12px;font-size:var(--font-size-md)}.auth-msg{margin-top:var(--space-md);padding:12px 14px;border-radius:var(--radius-md);font-size:var(--font-size-sm);line-height:1.5}.auth-msg.success{background:var(--success-bg);color:var(--success)}.auth-msg.error{background:var(--danger-bg);color:var(--danger)}.auth-footer{margin-top:var(--space-xl);font-size:var(--font-size-xs);color:var(--text-muted);text-align:center;line-height:1.6}.auth-link{background:none;border:none;color:var(--accent);font-family:var(--font-ui);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;padding:4px}.auth-link:hover{text-decoration:underline}.page-editor{background:var(--surface-hover)}.page-editor>.page-header{background:var(--bg);border-bottom:1px solid #e0e0e0;gap:8px;padding:0 8px}.page-editor>.page-header .task-checkbox.square{margin-top:0}.page-editor-title{flex:1;min-width:0;border:none;outline:none;background:transparent;font-family:var(--font-ui);font-size:16px;font-weight:700;color:var(--text)}.page-editor-title.done{text-decoration:line-through;color:var(--text-muted)}.page-editor-title::placeholder{color:var(--text-muted)}.page-header-actions .task-star,.page-header-actions .task-star-outline{padding:4px}.task-checkbox.square{border-radius:5px}.page-blocks-card{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;background:transparent;padding:0 14px 24px}.page-draft .page-blocks-card{display:flex;flex-direction:column;padding:20px 14px}.page-draft .page-blocks,.page-block.page-draft-block{flex:1 0 auto}.draft-header-btn,.draft-header-btn:disabled{color:#9e9e9e}.page-draft-block .page-block-body{flex:1}.page-draft-block .page-note-area{flex:1 0 auto}.page-blocks{display:flex;flex-direction:column}.page-insert{min-height:20px;display:flex;align-items:center;justify-content:center;position:relative}.page-insert:before{content:"";position:absolute;left:4px;right:4px;top:50%;height:2px;margin-top:-1px;background:var(--accent);border-radius:1px;opacity:0;transition:opacity var(--transition-fast)}.page-insert:not(.drop-active):hover:before{opacity:.2}.page-insert-btn{position:relative;z-index:1;width:24px;height:24px;border-radius:50%;border:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted);display:grid;place-items:center;cursor:pointer;opacity:0;transition:opacity var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.page-insert:hover .page-insert-btn,.page-insert-btn:focus-visible{opacity:1;border-color:var(--accent);color:var(--accent);background:var(--accent-pale)}.page-drop-line{position:absolute;left:4px;right:4px;top:50%;height:3px;margin-top:-1.5px;background:var(--accent);border-radius:2px;box-shadow:0 0 0 3px var(--accent-pale)}.page-block{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);transition:border-color var(--transition-fast);box-shadow:0 2px 3px #f0f0f0}.page-block.dragging{opacity:.4}.page-block.flash{animation:page-block-flash 1.7s ease}@keyframes page-block-flash{0%,25%{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-pale)}to{border-color:var(--border);box-shadow:none}}.page-block-head{display:flex;align-items:flex-start;gap:8px;padding:10px 12px 10px 8px}.page-block.title-block .page-block-head{padding:11px 20px}.page-block-handle{flex:none;width:15px;margin-top:5px;color:var(--text-muted);cursor:grab;opacity:.5;display:flex;transition:opacity var(--transition-fast)}.page-block-handle:hover{opacity:.9}.page-block-head>.task-checkbox.square{margin-top:5px}.page-block.title-block .page-task-title{font-size:19px;font-weight:700}.page-block-head-right{display:flex;align-items:center;gap:4px;margin-left:auto;flex-shrink:0}.page-block-btn{width:26px!important;height:26px!important;display:inline-flex!important;align-items:center;justify-content:center;color:#e0e0e0!important;flex:none}.page-block-btn:hover{background:none!important}.page-block-sched:hover,.page-block-caret:hover,.page-block-more:hover{color:var(--text-muted)!important}.page-block-star:hover,.page-block-star.is-starred{color:#e6a600!important}.page-block-del:hover{color:var(--danger)!important}.page-block-body{padding:8px 20px 24px;display:flex;flex-direction:column}.page-block-body>.exercise-set-row:first-child{border-top:1px solid #f0f0f0}.page-note-area{width:100%;border:none;background:none;resize:none;outline:none;color:var(--text);font-family:var(--font-ui);font-size:15px;font-weight:400;line-height:1.5;padding:0;overflow:hidden}.page-note-area::placeholder{color:var(--text-muted)}.page-note-rich{white-space:pre-wrap;overflow-wrap:break-word;min-height:1.5em}.page-note-rich:empty:before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none}.page-note-rich ul{list-style:disc outside;padding-left:22px;margin:0;white-space:normal}.page-note-rich ol{list-style:decimal outside;padding-left:22px;margin:0;white-space:normal}.page-task-title{flex:1;min-width:0;border:none;background:none;outline:none;color:var(--text);font-family:var(--font-ui);font-size:15px;font-weight:700;line-height:1.3;padding:4px 0 0;resize:none;overflow:hidden;overflow-wrap:break-word}.page-task-title::placeholder{color:var(--text-muted)}.page-block .task-checkbox.block-done-check{border-color:transparent;background:transparent;color:#0f6cbd73}.page-block .task-checkbox.block-done-check svg{stroke-width:3.5}.page-editor .task-checkbox.square{border-radius:3px}.task-date-pill.block-done,.page-block.done .task-date-pill{background:none;text-decoration:line-through;color:#0f6cbd73}.page-block.done .page-task-title{text-decoration:line-through;color:#0f6cbd73}.page-items{display:flex;flex-direction:column}.page-item-insert{position:relative;height:12px;margin-left:-22px;padding-left:22px;z-index:1}.page-item-insert:before{content:"";position:absolute;left:22px;right:0;top:50%;height:2px;margin-top:-1px;background:var(--accent);border-radius:1px;opacity:0;transition:opacity var(--transition-fast);pointer-events:none}.page-item-insert:hover:before{opacity:.2}.page-item-insert-btn{position:absolute;left:2px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:1px solid transparent;border-radius:50%;background:none;color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}.page-item-insert:hover .page-item-insert-btn,.page-item-insert-btn:focus-visible,.page-item-insert.always .page-item-insert-btn{opacity:.7}.page-item-insert-btn:hover{opacity:1!important;border-color:var(--accent);color:var(--accent);background:var(--accent-pale)}@media (hover: none){.page-item-insert-btn{opacity:.35}}.page-item-picker{display:flex;align-items:center;gap:6px;height:30px}.page-item-pick{height:22px;padding:0 9px;border:1px dashed var(--border-strong);border-radius:11px;background:none;color:var(--text-muted);font-size:11px;font-family:var(--font-ui);cursor:pointer}.page-item-pick:hover,.page-item-pick:focus-visible{border-color:var(--accent);color:var(--accent);background:var(--accent-pale);outline:none}.page-item-pick.cancel{width:22px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-style:solid;border-color:transparent}.page-block-body.is-empty{padding:0 20px 6px}.page-block-body.is-empty .page-item-insert{height:22px}.page-item-note{display:flex;align-items:flex-start;gap:6px}.page-item-note.sub-dragging{opacity:.4}.page-item-note-body{flex:1;min-width:0;padding:4px 0}.page-item-handle{flex:none;width:20px;margin:2px -6px 0 0;padding:5px 0 5px 3px;box-sizing:border-box;display:flex;color:var(--text-muted);cursor:grab;opacity:0;transition:opacity var(--transition-fast)}.page-item-handle:hover{opacity:.9}@media (hover: none){.page-item-handle{opacity:.5}}.page-subblock{width:100%;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:0 2px 3px #f0f0f0}.page-subblock.sub-dragging{opacity:.4}.page-subblock-head{display:flex;align-items:flex-start;gap:6px;padding:8px 8px 2px}.page-subblock-head>.task-checkbox{width:14px;height:14px;margin-top:3px}.page-subblock-handle{flex:none;width:14px;height:14px;margin-top:2px;display:flex;color:var(--text-muted);cursor:grab;opacity:.5}.page-subblock-handle:hover{opacity:.9}.page-subblock-head .page-block-menu{position:relative;top:-3px}.page-subblock-title{flex:1;min-width:0;border:none;background:none;outline:none;color:var(--text);font-family:var(--font-ui);font-size:12px;font-weight:500;line-height:1.3;padding:3px 0 0;resize:none;overflow:hidden;overflow-wrap:break-word}.page-subblock-title::placeholder{color:var(--text-muted);font-weight:400}.page-subblock-body{padding:0 12px 12px 50px;font-size:14px}.page-subblock .page-note-area{font-size:12px;font-weight:300}.page-subblock.done .page-subblock-title{text-decoration:line-through;color:#0f6cbd73}.page-subtask-dropline{height:2px;margin:-5px 4px;background:var(--accent);border-radius:1px;position:relative;z-index:1}.page-block-menu{position:relative;display:inline-flex}.page-editor-footer{flex-shrink:0;display:flex;align-items:center;gap:4px;border-top:1px solid #e0e0e0;background:var(--bg);padding:8px 12px;min-height:48px;box-sizing:border-box}.page-footer-notebook{flex:none}.page-footer-menu{position:relative;flex:none;margin-left:auto}.page-links{display:flex;flex-wrap:wrap;gap:6px}.page-block-foot{flex-wrap:nowrap;align-items:center;height:46px;box-sizing:border-box;padding:0 20px;overflow-x:auto;overflow-y:hidden;border-top:1px solid var(--border)}.page-block-foot .page-link-chip{flex:none}.page-link-chip{display:inline-flex;align-items:center;gap:5px;min-width:0;background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-full);padding:3px 5px 3px 10px;font-size:12.5px;font-weight:500;text-decoration:none}.page-link-chip.is-file{color:var(--accent)}.page-link-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.page-link-x{display:inline-flex;border:none;background:none;color:var(--text-muted);cursor:pointer;padding:2px;border-radius:50%;flex:none}.page-link-x:hover{color:var(--danger)}.page-add-link{display:flex;align-items:center;gap:6px;position:relative;flex-wrap:wrap;margin-top:12px}.page-link-input{flex:1;min-width:160px;font-size:13px;padding:5px 8px}.pages-harness{flex:1;min-height:0;overflow-y:auto;background:var(--bg-page);color:var(--text);font-family:var(--font-ui)}.pages-harness-bar{background:var(--accent);color:#fff;padding:8px 16px;font-size:13px;font-weight:600;position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.pages-harness-bar b{font-weight:700}.pages-bar-sub{font-weight:400;opacity:.85}.pages-bar-actions{display:inline-flex;gap:8px;align-items:center}.pages-bar-btn{display:inline-flex;align-items:center;gap:5px;background:#ffffff2e;color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:5px;padding:3px 10px;font-size:12px;font-weight:600;cursor:pointer;text-decoration:none}.pages-bar-btn:hover{background:#ffffff4d}.pages-harness-list{max-width:720px;margin:0 auto;padding:24px 16px 80px;display:flex;flex-direction:column;gap:20px}.pages-harness-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:18px 20px}.pages-nb-migrate{display:flex;align-items:center;gap:10px;margin:12px 16px 4px;padding:10px 14px;background:var(--accent-pale);border:1px solid var(--accent-light);border-radius:var(--radius-md);color:var(--accent);font-family:var(--font-ui);font-size:var(--font-size-sm);font-weight:500}.pages-nb-migrate>span{color:var(--text-secondary)}.save-status-pill:disabled{opacity:.5;cursor:default;text-decoration:none}.save-status-pill:disabled:hover{opacity:.5}.page-card-group{display:flex;flex-direction:column}.nb-3panel-right .page-card-group,.nb-todo .page-card-group{position:relative;margin:8px 14px 14px;border:solid 1px #e0e0e0;border-radius:5px;box-shadow:0 2px 3px #f0f0f0}.nb-3panel-right .page-card-group,.nb-todo .page-card-group{background:var(--surface)}.nb-3panel-right .page-card-group.active,.nb-todo .page-card-group.active,.nb-3panel-right .page-card-group .task-card:hover,.nb-todo .page-card-group .task-card:hover,.nb-3panel-right .page-subrow:hover,.nb-todo .page-subrow:hover{background:var(--accent-pale)}.nb-3panel-right .page-card-group .task-card:hover .task-title,.nb-todo .page-card-group .task-card:hover .task-title,.nb-3panel-right .page-subrow:hover .task-title,.nb-todo .page-subrow:hover .task-title{text-decoration:underline}.page-card-menu{position:relative;display:flex;align-items:center}.page-card-menu .btn-icon{width:auto;height:auto;padding:0;line-height:0;color:#e0e0e0}.page-card-menu .btn-icon:hover{background:none;color:var(--text-muted)}.page-card-dropdown{min-width:180px;z-index:100}.nb-3panel-right .task-card,.nb-todo .task-card{padding:8px 8px 7px;align-items:flex-start}.nb-3panel-right .task-card .task-indicators,.nb-todo .task-card .task-indicators{margin-left:0}.nb-3panel-right .task-card .task-title,.nb-todo .task-card .task-title{font-weight:600;font-size:12px}.nb-3panel-right .task-title,.nb-todo .task-title{white-space:normal;overflow:visible;text-overflow:clip}.nb-3panel-right .task-card>.task-body,.nb-todo .task-card>.task-body,.nb-3panel-right .page-subrow>.task-body,.nb-todo .page-subrow>.task-body{flex-direction:column;align-items:stretch;gap:3px}.nb-3panel-right .page-card-group.active .task-checkbox:not(.checked),.nb-todo .page-card-group.active .task-checkbox:not(.checked){border-color:#0f6cbd73}.nb-3panel-right .task-checkbox.square,.nb-todo .task-checkbox.square{width:16px;height:16px;border-radius:3px}.page-subrow.done .task-title{text-decoration:line-through;color:var(--text-muted)}.page-subrow-check{flex:none;display:flex;margin:2px -3px 0;color:#cecece}.page-subrow-check svg{stroke-width:3.5}.page-subrow{display:flex;align-items:flex-start;gap:7px;margin:0 0 6px 23px;padding:4px 8px;border-radius:0 var(--radius-sm) var(--radius-sm) 0;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.page-subrow:hover{background:var(--surface-hover)}.nb-3panel-right .page-card-group .page-subrow:last-child,.nb-todo .page-card-group .page-subrow:last-child{margin-bottom:4px}.page-subrow .task-body{flex:1;min-width:0}.page-subrow .task-title{font-size:12px;color:var(--text-secondary);font-weight:400}.page-subrow .task-indicators{display:flex;align-items:center;gap:6px;flex-shrink:0}.page-progress{max-width:500px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%}.page-progress .habit-dash-bar{width:100%;height:5px}.page-progress .task-progress-count{background:none;padding:0;border-radius:0;font-size:9.5px;font-weight:600;line-height:1;color:var(--text-muted)}.page-sublist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.page-sublist li{display:flex;align-items:flex-start;gap:7px;font-size:12px;color:var(--text-secondary)}.page-sublist li.done .page-sublist-title{text-decoration:line-through;color:var(--text-muted)}.page-sublist .page-subrow-check{margin:2px -3px 0}.page-subrow-dot{flex:none;width:5px;height:5px;margin-top:6px;border-radius:50%;background:#aeaeae;opacity:.5}.journal-list-item.active .note-title,.journal-list-item.active .nb-item-name{color:var(--accent);font-weight:600}.journal-list-item.active .nb-item-count{color:var(--accent)}@media (max-width: 1100px){.nb-3panel-mobile{display:block}.nb-3panel-mobile>.nb-3panel-left,.nb-3panel-mobile>.nb-3panel-center,.nb-3panel-mobile>.nb-3panel-right{width:100%;height:100%;border-right:none}}.pages-import-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:flex-start;justify-content:center;padding:48px 16px;z-index:1000}.pages-import{width:100%;max-width:640px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;max-height:calc(100vh - 96px)}.pages-import-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--divider);font-family:var(--font-ui);font-size:16px;font-weight:700;color:var(--text)}.pages-import-help{padding:14px 18px 0;margin:0;font-family:var(--font-ui);font-size:13.5px;color:var(--text-muted);line-height:1.55}.pages-import-copy{display:inline-flex;align-items:center;gap:5px;margin-left:6px;background:var(--accent-pale);color:var(--accent);border:none;border-radius:999px;padding:3px 10px;font-family:var(--font-ui);font-size:12px;font-weight:600;cursor:pointer}.pages-import-copy:hover{background:var(--accent-light)}.pages-import-textarea{margin:12px 18px;flex:1;min-height:200px;resize:vertical;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:13px;line-height:1.55;padding:12px;outline:none}.pages-import-textarea:focus{border-color:var(--accent)}.pages-import-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px 16px;border-top:1px solid var(--divider)}.pages-import-preview{font-family:var(--font-ui);font-size:13px;color:var(--text-muted)}.run-stat-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);text-align:center}.run-stat-value{font-size:var(--font-size-2xl);font-weight:700;font-variant-numeric:tabular-nums;font-family:var(--font-ui);color:var(--text)}.run-stat-label{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:2px;letter-spacing:.05em}.run-control-btn{width:72px;height:72px;border-radius:50%;border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .1s ease,opacity .15s ease}.run-control-btn:active{transform:scale(.93)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.cal-event{display:flex;align-items:center;gap:var(--space-sm);padding:8px var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);border-left:3px solid;background:var(--card);cursor:default}.cal-event .cal-time{font-size:var(--font-size-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;min-width:52px}.cal-event .cal-title{flex:1;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-event .cal-source{font-size:10px;padding:1px 6px;border-radius:var(--radius-full);font-weight:600}@media (max-width: 768px){.nb-item:active,.task-card:active,.note-card:active{background:var(--surface-active)}.nb-cat-actions{opacity:0!important}.nb-cat-actions.visible{opacity:1!important}.nb-category-header:has(.nb-cat-actions.visible) .nb-cat-count{opacity:0}.page-header,.day-header{padding:0 8px}.page-wrapper,.day-view,.modal-full,.recipe-detail-view,.food-split-main,.recipe-split-pane:first-child{border-right:none}.meal-slot{padding:var(--space-sm) var(--space-md)}.meal-week-day-actions{opacity:1}.dropdown-menu{min-width:240px}.editor-toolbar{gap:2px;padding:var(--space-sm) 8px}.editor-toolbar .toolbar-divider{margin:0 2px}.sort-chip{padding:4px 10px;font-size:var(--font-size-xs)}.type-label{display:none}.workout-detail-row{grid-template-columns:1fr}.workout-summary-value{text-align:center}.workout-card-header{justify-content:center}.workout-summary-row-bottom{grid-template-columns:repeat(4,1fr)}}.workout-detail-row{display:grid;grid-template-columns:2fr 1fr;gap:0;margin-bottom:0}.workout-card-header{display:flex;align-items:center;justify-content:center;padding:12px;border-bottom:1px solid #f0f0f0;font-size:13px;font-weight:700;color:var(--text)}.workout-month-card{min-width:0;align-self:stretch}.month-dots-grid{padding:16px}.workout-summary-grid{display:flex;flex-direction:column;min-width:0;align-self:stretch}.workout-summary-row-top,.workout-summary-row-bottom{flex:1;display:grid;gap:0}.workout-summary-row-top{grid-template-columns:1fr 1fr}.workout-summary-row-bottom{grid-template-columns:repeat(4,1fr)}.workout-summary-card.content-card:last-child{border-bottom:1px solid #f0f0f0}.workout-summary-card{display:flex;flex-direction:column;border-left:solid 1px #e0e0e0}.workout-summary-value{font-size:24px;font-weight:700;line-height:1.2;padding:12px;flex:1;display:flex;align-items:center;justify-content:center}.workout-summary-row-bottom .workout-summary-value{font-size:18px;padding:8px 12px}.workout-subheader{position:sticky;top:46px;z-index:9;display:flex;align-items:center;gap:8px;padding:6px 1rem;background:var(--bg-page);border-bottom:1px solid var(--divider)}.workout-subheader-left{display:flex;align-items:center;gap:8px;flex:1;min-width:0;overflow-x:auto}.workout-datetime-display{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--text-secondary);background:none;border:none;cursor:pointer;padding:0;white-space:nowrap}.workout-datetime-display:hover{color:var(--accent)}.workout-datetime-edit{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.page-header-title-input{border:none;outline:none;background:transparent;font-size:15px;font-weight:700;color:var(--text);padding:0;min-width:0;max-width:200px}.exercise-card-info{flex:1;min-width:0;position:relative}.exercise-card-bodypart{font-size:11px;font-weight:400;color:var(--text-muted);text-transform:capitalize}.exercise-card-name-row{display:flex;align-items:center;gap:6px}.exercise-card-name{font-size:15px;font-weight:600}.exercise-method-pill{font-size:11px;padding:1px 8px;color:var(--text-secondary);font-weight:500;background:var(--surface-hover);border-radius:10px;border:none;cursor:pointer;transition:background .12s ease}.exercise-method-pill:hover{background:var(--border)}.exercise-method-pill.static{cursor:default}.exercise-method-pill.static:hover{background:var(--surface-hover)}.reps-time-toggle{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.reps-time-toggle-btn{padding:1px 6px;font-size:10px;font-family:var(--font-ui);font-weight:500;background:transparent;border:none;color:var(--text-muted);cursor:pointer}.reps-time-toggle-btn.active{background:var(--accent);color:var(--text-on-accent)}.exercise-method-dropdown{position:absolute;top:100%;left:0;z-index:1002;min-width:140px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:4px 0;margin-top:4px}.exercise-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.exercise-card-menu{right:0;left:auto;z-index:100}.exercise-method-dropdown{z-index:100}.exercise-history{margin-top:var(--space-sm);padding:8px 12px;background:var(--bg-secondary);border-radius:var(--radius-md)}.exercise-history .history-dates{display:grid;grid-template-columns:repeat(8,1fr);gap:4px}.history-date-col{text-align:center;min-width:0}.history-date-label{font-size:10px;font-weight:500;color:var(--text-muted);margin-bottom:2px}.history-date-col.live .history-date-label{color:var(--accent);font-weight:700}.history-set-line{font-size:10px;font-weight:500;color:var(--text);line-height:1.6}.history-volume{margin-top:8px;padding-top:8px;border-top:1px solid #e0e0e0}.history-volume-label{display:flex;align-items:center;gap:4px;margin-bottom:2px;font-size:10px;color:var(--text-muted)}.overload-list{display:flex;flex-direction:column;gap:10px}.overload-card{border:1px solid var(--border);border-radius:var(--radius-md);padding:12px}.overload-card .exercise-card-name{display:block;margin-bottom:4px}.action-btn{height:26px;border-radius:4px;display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;cursor:pointer;padding:0 10px;border:1px solid;line-height:1}.action-btn-white{background:#fff;color:var(--text);border-color:#e0e0e0}.action-btn-white:hover{background:#f8f8f8}.action-btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.action-btn-primary:hover{opacity:.9}.exercise-bank{display:flex;flex-direction:column;gap:var(--space-md)}.exercise-bank-list{flex:1;overflow-y:auto}.exercise-bank-row{display:flex;align-items:center;gap:8px;padding:8px;border-bottom:1px solid var(--divider)}.exercise-bank-row:last-child{border-bottom:none}.exercise-bank-info{flex:1;min-width:0}.exercise-bank-muscle{display:block;font-size:11px;color:var(--text-muted);text-transform:capitalize;line-height:1.2}.exercise-bank-name{font-weight:500;font-size:var(--font-size-sm)}.exercise-bank-controls{display:flex;align-items:center;gap:6px;flex-shrink:0}.exercise-bank-action{width:22px;height:22px;opacity:0;transition:opacity .15s}.exercise-bank-row:hover .exercise-bank-action{opacity:1}.exercise-bank-method{padding:3px 6px;font-size:var(--font-size-xs);width:auto;max-width:110px;border-radius:var(--radius-sm)}.exercise-bank-method-label{font-size:var(--font-size-xs);color:var(--text-muted);padding:3px 6px}.exercise-bank-add-btn{padding:2px 10px;font-size:var(--font-size-xs)}.exercise-bank-edit{flex-wrap:wrap;padding:10px 8px;gap:6px;background:var(--surface-hover);border-radius:var(--radius-md)}@media (max-width: 768px){.exercise-bank-action{opacity:1}}.workout-log-exercises{flex-shrink:1;min-width:0;text-align:right;padding-bottom:5px}.workout-log-exercise-name{font-size:12px;line-height:1.4;font-weight:500;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workout-log-item{align-items:flex-start;padding-top:14px}.rest-timer-pill.idle{color:var(--text-muted)}.rest-timer-pill.active{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 8px;border-radius:14px;background:var(--accent);color:#fff;font-family:var(--font-ui);font-size:var(--font-size-sm);white-space:nowrap}.rest-timer-pill-dot{width:6px;height:6px;border-radius:50%;background:#fff;animation:rest-pulse 1.5s ease-in-out infinite}@keyframes rest-pulse{0%,to{opacity:1}50%{opacity:.3}}.rest-timer-pill-value{font-variant-numeric:tabular-nums;font-weight:600;min-width:32px;text-align:center}.rest-timer-pill-btn{width:20px;height:20px;border-radius:50%;border:none;background:#fff3;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s ease;padding:0}.rest-timer-pill-btn:hover{background:#ffffff59}.rest-timer-pill.times-up{background:#d93025;animation:times-up-pulse 1s ease-in-out infinite}@keyframes times-up-pulse{0%,to{opacity:1}50%{opacity:.8}}.set-number-btn{all:unset;font-size:var(--font-size-xs);color:var(--text-muted);text-align:center;cursor:pointer;width:22px;height:22px;line-height:22px;border-radius:var(--radius-full);transition:background .12s ease,color .12s ease;font-family:var(--font-ui)}.set-number-btn:hover{background:var(--surface-hover)}.set-number-btn.warmup{background:var(--surface-hover);color:var(--text-muted);font-weight:600;font-size:10px}.set-number-btn.warmup:hover{background:var(--border)}.history-set-line.warmup{color:var(--text-muted)}.exercise-set-row{display:grid;gap:4px 8px;align-items:center;padding:12px 0;border-bottom:1px solid #f0f0f0}.exercise-set-row:first-child{border-top:1px solid #f0f0f0}.exercise-set-done-btn{width:28px!important;height:28px!important;border-radius:var(--radius-full);color:var(--text-muted);background:transparent}.exercise-set-done-btn.done{background:var(--accent);color:var(--text-on-accent)}.exercise-set-done-btn.done:hover{background:var(--accent-hover)}.habit-streak-dots{display:flex;gap:4px;flex-shrink:0;margin-left:auto}.habit-streak-dot{width:24px;height:24px;border-radius:50%;flex-shrink:0}.habit-streak-dot.older{display:flex}.habit-tally{font-size:11px;font-weight:600;padding:2px 10px;border-radius:12px;flex-shrink:0;text-align:center;white-space:nowrap}@media (max-width: 768px){.habit-streak-dot.older{display:none}}.habits-home .nb-item-name{font-weight:600}.habit-log-dot{width:20px;height:20px;border:2px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--surface)}.habit-log-check{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff}.habit-log-daydate{display:flex;flex-direction:row;align-items:baseline;gap:5px;flex-shrink:0;width:84px;line-height:1.2}.habit-log-pill{font-size:11px;font-weight:600;color:var(--text-muted);background:var(--bg-secondary);padding:1px 8px;border-radius:10px;flex-shrink:0}.habit-log-clickable{cursor:pointer}.habit-log-clickable:hover{background:var(--surface-hover)}.habit-log-menu{position:absolute;right:0;top:100%;z-index:20;background:var(--bg);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 12px #0000001f;min-width:120px;padding:4px 0}.habit-log-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:7px 12px;font-size:13px;color:var(--text);background:none;border:none;cursor:pointer;text-align:left}.habit-log-menu button:hover{background:var(--surface-hover)}.habit-inline-editor{display:flex;align-items:center;gap:10px;padding:8px 16px 8px 48px;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.habit-inline-date-pill{font-size:11px;font-weight:600;color:var(--accent);background:#0f6cbd1a;padding:2px 10px;border-radius:10px;white-space:nowrap}.habit-inline-fields{display:flex;gap:6px;flex:1}.habit-inline-input{width:80px;padding:5px 8px;font-size:13px;font-weight:600;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:6px;outline:none}.habit-inline-input:focus{border-color:var(--accent)}.inventory-list{flex:1;overflow-y:auto}.inventory-card{padding:14px 16px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s}.inventory-card:hover{background:var(--bg-secondary)}.inventory-card-title{font-size:15px;font-weight:700;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-card-cause{font-size:13px;color:var(--text-muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-card-pills{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}.inventory-card-pill{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;padding:1px 7px;border-radius:var(--radius-full);background:var(--bg-secondary);color:var(--text-muted)}.inventory-editor{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:20px}.inventory-field{display:flex;flex-direction:column;gap:4px}.inventory-field-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.inventory-field-hint{font-size:12px;font-style:italic;color:var(--text-muted);opacity:.8}.inventory-field input,.inventory-field textarea{font-family:Crimson Pro,serif;font-size:15px;line-height:1.5;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);resize:vertical;width:100%;box-sizing:border-box}.inventory-field input:focus,.inventory-field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #0f6cbd26}.inventory-field textarea{min-height:60px}.inventory-affects-grid{display:flex;flex-wrap:wrap;gap:6px}.inventory-affects-chip{font-size:13px;padding:4px 12px;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface);color:var(--text-muted);cursor:pointer;transition:all .15s;-webkit-user-select:none;user-select:none}.inventory-affects-chip.active{background:#0f6cbd1f;border-color:var(--accent);color:var(--accent);font-weight:600}.inventory-chain{border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;background:var(--bg-secondary)}.inventory-chain-title{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:10px}.inventory-chain-flow{display:flex;flex-direction:column;gap:0}.inventory-chain-step{display:flex;align-items:flex-start;gap:10px;padding:6px 0}.inventory-chain-num{font-size:10px;font-weight:800;width:20px;height:20px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--accent);color:#fff}.inventory-chain-label{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted);letter-spacing:.03em;min-width:90px;flex-shrink:0}.inventory-chain-text{font-size:13px;color:var(--text);flex:1;font-family:Crimson Pro,serif}.inventory-chain-arrow{display:flex;justify-content:center;padding:0 0 0 5px;color:var(--text-muted);opacity:.4;font-size:12px}.inventory-ocr-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius);background:#0f6cbd0f;border:1px dashed rgba(15,108,189,.3);cursor:pointer;transition:background .15s;font-size:13px;color:var(--accent)}.inventory-ocr-banner:hover{background:#0f6cbd1a}.inventory-ocr-loading{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--radius);background:#0f6cbd0f;border:1px solid rgba(15,108,189,.15);font-size:13px;color:var(--text-muted)}.inventory-actions{display:flex;gap:8px;padding:16px;border-top:1px solid var(--border);flex-shrink:0}.inventory-actions .btn-save{flex:1;padding:8px 16px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:600;cursor:pointer}.inventory-actions .btn-save:hover{opacity:.9}.inventory-actions .btn-delete{padding:8px 16px;background:none;color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius);font-size:13px;cursor:pointer}.inventory-actions .btn-delete:hover{color:#c0392b;border-color:#c0392b}.shopping-3panel{display:flex;height:100%;max-width:none}.shopping-panel-left{width:300px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid var(--border);overflow:hidden}.shopping-panel-list{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.08) transparent}.shopping-panel-left .nb-item{border-bottom:none}.shopping-panel-left .journal-list-item.active{background:var(--accent-pale)}.shopping-panel-center{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--border)}.shopping-panel-center>.page-header{padding:0 16px}.shopping-items-scroll{flex:1;overflow-y:auto;padding:0 0 24px}.shopping-panel-right{width:420px;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden}.shopping-panel-right .page-header{padding:0 16px}.shopping-footer{flex-shrink:0;display:flex;align-items:center;justify-content:flex-end;border-top:1px solid #f0f0f0;padding:8px}.shopping-item{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:var(--radius);cursor:pointer}.shopping-item:hover,.shopping-item.active{background:var(--surface-hover)}.shopping-item .task-checkbox{margin-top:0}.shopping-item-name{min-width:0;font-family:var(--font-ui);font-size:var(--font-size-sm)}.shopping-item-qty{flex-shrink:0;font-size:10px;color:var(--text-muted);font-family:var(--font-ui)}.shopping-form{flex:1;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:24px}.shopping-form-field{display:flex;flex-direction:column;gap:4px}.shopping-form-label{font-family:var(--font-ui);font-size:var(--font-size-xs);color:var(--text-muted);font-weight:500}.shopping-form-value{font-family:var(--font-ui);font-size:var(--font-size-sm);font-weight:500;padding:6px 0}.shopping-form-row{display:flex;gap:12px}.shopping-form-actions{display:flex;gap:8px;justify-content:flex-end;padding-top:4px}.shopping-mobile-scroll{flex:1;overflow-y:auto;padding-bottom:24px}.shopping-mobile-add{position:sticky;top:0;z-index:5;background:var(--bg);border-bottom:1px solid var(--border);padding:10px 12px;display:flex;flex-direction:column;gap:8px}.shopping-mobile-add-label{font-family:var(--font-ui);font-size:var(--font-size-xs);color:var(--text-muted);font-weight:600}.shopping-mobile-add-row{display:flex;gap:8px;align-items:center}.shopping-mobile-add-qty{width:56px;flex-shrink:0;text-align:center}.shopping-mobile-add-aisle{width:100%}.shopping-mobile-add-actions{display:flex;gap:8px;align-items:center}.recipe-3panel{display:flex;height:100%;max-width:none}.recipe-panel-left{width:300px;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--border)}.recipe-panel-left>.page-header{padding:0 16px}.recipe-panel-list{flex:1;overflow-y:auto;scrollbar-width:thin}.recipe-panel-center{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--border)}.recipe-panel-center>.page-header{padding:0 16px}.recipe-panel-right{width:420px;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden}.recipe-panel-right .page-header{padding:0 16px}.recipe-3panel-mobile{max-width:100%}.recipe-3panel-mobile .recipe-panel-left,.recipe-3panel-mobile .recipe-panel-center,.recipe-3panel-mobile .recipe-panel-right{width:100%;flex:1;border-right:none}.recipe-mobile-categories .recipe-panel-center,.recipe-mobile-categories .recipe-panel-right,.recipe-mobile-recipes .recipe-panel-left,.recipe-mobile-recipes .recipe-panel-center,.recipe-mobile-center .recipe-panel-left,.recipe-mobile-center .recipe-panel-right{display:none}.recipe-3panel-mobile .recipe-center-content{flex-direction:column;overflow:visible}.recipe-3panel-mobile .recipe-center-ingredients,.recipe-3panel-mobile .recipe-center-instructions{overflow:visible}.recipe-center-content{display:flex;flex:1;min-height:0;overflow:hidden}.recipe-center-ingredients{flex:1;min-width:0;overflow-y:auto;scrollbar-width:thin}.recipe-center-instructions{flex:1;min-width:0;overflow-y:auto;display:flex;flex-direction:column;scrollbar-width:thin}.recipe-instructions-box{flex:1}.recipe-view-scroll{flex:1;overflow-y:auto;padding:0 0 24px}.recipe-view-title{font-size:20px;font-weight:600;padding:12px 16px 4px}.recipe-view-macro-pills{display:flex;flex-wrap:wrap;gap:6px;padding:4px 16px 12px}.recipe-view-macro-pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:12px;font-size:var(--font-size-xs);font-weight:600}.recipe-edit-scroll{flex:1;overflow-y:auto;padding:0 0 24px;display:flex;flex-direction:column;gap:24px}.recipe-edit-scroll .note-editor-title{display:block;padding:12px 16px 0}.recipe-edit-macro-pills{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px}.recipe-macro-input{width:72px;border:none;outline:none;padding:2px 8px;border-radius:12px;font-size:var(--font-size-xs);font-weight:600;font-family:var(--font-ui);text-align:center}.recipe-macro-input::placeholder{opacity:.5}.recipe-macro-input::-webkit-inner-spin-button,.recipe-macro-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.recipe-macro-input[type=number]{-moz-appearance:textfield}.recipe-mealplan-range{padding:0 16px 8px;font-size:13px;color:var(--text);font-weight:700;font-family:var(--font-ui)}.recipe-mealplan-scroll{flex:1;overflow-y:auto;padding:0}.recipe-mealplan-day{display:flex;align-items:center;gap:10px;padding:8px 16px}.recipe-mealplan-day-label-box{font-size:11px;font-weight:700;width:34px;height:34px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:6px;background:var(--surface-hover, #f5f5f5);font-family:var(--font-ui);color:var(--text-muted);text-transform:uppercase}.recipe-mealplan-day.today .recipe-mealplan-day-label-box{color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.recipe-mealplan-day-field{flex:1;min-width:0;position:relative}.recipe-mealplan-day-recipe{display:flex;align-items:center;gap:4px;min-width:0;padding:6px 10px;border-radius:6px;border:1px solid var(--border, #e5e5e5);font-size:var(--font-size-sm);font-family:var(--font-ui);color:var(--text-secondary);cursor:pointer;transition:border-color .12s,color .12s}.recipe-mealplan-day-recipe:hover{border-color:var(--accent);color:var(--accent)}.recipe-mealplan-day-recipe-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-mealplan-day-actions{display:flex;align-items:center;gap:2px;flex-shrink:0;opacity:0;transition:opacity .12s}.recipe-mealplan-day:hover .recipe-mealplan-day-actions{opacity:1}.recipe-mealplan-day-empty{padding:6px 10px;border-radius:6px;border:1px dashed var(--border, #e5e5e5);font-size:var(--font-size-sm);color:var(--text-muted);cursor:pointer;font-family:var(--font-ui);transition:border-color .12s,color .12s}.recipe-mealplan-day-empty:hover{border-color:var(--accent);color:var(--accent)}.linked-files-panel{border-top:1px solid #f0f0f0;padding:8px 16px 6px;font-family:var(--font-ui)}.linked-files-header{display:flex;align-items:center;margin-bottom:6px}.linked-files-title{flex:1;font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary)}.linked-file-row{display:flex;align-items:center;gap:8px;padding:4px 8px;border-radius:var(--radius-sm, 4px);background:var(--bg-secondary, #f9f9f9);margin-bottom:4px;font-size:var(--font-size-xs)}.linked-file-link{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--accent);text-decoration:none}.linked-file-link:hover{text-decoration:underline}.linked-file-remove{width:20px;height:20px;flex-shrink:0;opacity:0;transition:opacity .12s}.linked-file-row:hover .linked-file-remove{opacity:.5}.linked-file-remove:hover{opacity:1!important}.linked-file-add{display:flex;align-items:center;gap:6px;margin-top:4px}.linked-file-input{flex:1;min-width:0;padding:4px 8px;border:1px solid var(--border, #e5e5e5);border-radius:var(--radius-sm, 4px);font-size:var(--font-size-xs);font-family:var(--font-ui);background:var(--bg-primary);color:var(--text);outline:none}.linked-file-input:focus{border-color:var(--accent)}.linked-input-wrap{padding:0 16px 8px;position:relative}.linked-input-row{display:flex;align-items:center;gap:6px}.linked-input-field{flex:1;min-width:0;padding:6px 8px;font-size:var(--font-size-sm)}.linked-input-add{flex-shrink:0;color:var(--accent)}.linked-input-add:disabled{color:var(--text-muted);opacity:.5;cursor:default}.linked-note-results{position:absolute;top:100%;left:16px;right:16px;margin-top:2px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:10;max-height:200px;overflow-y:auto;padding:4px}.toolbar-wordcount{display:inline-flex;align-items:center;gap:2px;font-size:var(--font-size-xs);font-family:var(--font-ui);color:var(--text);white-space:nowrap;padding-left:4px}.toolbar-wordcount-x{width:18px;height:18px;color:var(--text-muted)}.toolbar-wordcount-x:hover{color:var(--text)}.recipe-search-bar{flex-direction:column;align-items:stretch;gap:6px}.recipe-search-bar .journal-right-search{flex:none;height:32px;min-height:32px;box-sizing:border-box}.recipe-search-scope-row{display:flex;align-items:center;gap:8px;height:24px;flex-shrink:0}.recipe-search-scope-label{font-size:11px;font-weight:600;color:var(--text-muted)}.recipe-search-scope-label.on{color:var(--accent)}.recipe-search-scope-row .toggle{flex-shrink:0;width:32px;height:18px;border-radius:9px}.recipe-search-scope-row .toggle-thumb{width:14px;height:14px}.recipe-search-scope-row .toggle.on .toggle-thumb{transform:translate(14px)}.recipe-search-close{margin-left:auto}.recipe-search-bar .journal-search-icon{width:14px;height:14px;flex-shrink:0}.recipe-add-meal-btn{flex-shrink:0;width:14px;height:14px;padding:0;opacity:0;transition:opacity .12s;margin-right:4px}.nb-item:hover .recipe-add-meal-btn,.task-card:hover .recipe-add-meal-btn{opacity:.5}.recipe-add-meal-btn:hover{opacity:1!important}.recipe-add-meal-btn svg{width:14px;height:14px}.recipe-mealplan-picker{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1000;min-width:280px;background:var(--bg-primary);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0000001f;overflow:hidden;font-family:var(--font-ui);padding-bottom:4px}.recipe-mealplan-picker-header{padding:12px 16px 2px;font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.recipe-mealplan-picker-recipe{padding:2px 16px 10px;font-size:var(--font-size-sm);font-weight:600;color:var(--text);border-bottom:1px solid var(--border)}.recipe-mealplan-picker-nav{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;border-bottom:1px solid #f0f0f0}.recipe-mealplan-picker-range{font-size:13px;font-weight:700;color:var(--text);font-family:var(--font-ui)}.recipe-mealplan-picker-day{display:flex;align-items:center;gap:12px;padding:7px 16px;width:100%;border:none;background:none;cursor:pointer;font-family:var(--font-ui);font-size:var(--font-size-sm);color:var(--text);transition:background .12s;text-align:left}.recipe-mealplan-picker-day:hover{background:var(--surface-hover, #f5f5f5)}.recipe-mealplan-picker-day-name{width:32px;flex-shrink:0;font-weight:600;text-transform:uppercase;font-size:11px;color:var(--text-muted)}.recipe-mealplan-picker-day.today .recipe-mealplan-picker-day-name{color:var(--accent);font-weight:700}.recipe-mealplan-picker-day-meal{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.recipe-mealplan-picker-day-meal.empty{color:var(--text-muted)}@media print{.sidebar,.bottom-nav,.page-header,.editor-toolbar-wrap{display:none!important}.app-content{overflow:visible!important}}.reader-page{position:relative}.reader-page .recipe-panel-center{background:var(--bg-secondary, var(--surface-hover))}.reader-form{flex:1;min-height:0;overflow-y:auto;padding:16px}.reader-form .reader-import-text{min-height:160px}.reader-feeds{flex:1;min-height:0;display:flex;flex-direction:column}.reader-feeds-bar{flex-shrink:0;display:flex;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid var(--divider)}.reader-feed-item{display:flex;align-items:flex-start;gap:10px;padding:10px 16px;border-bottom:1px solid var(--divider)}.reader-feed-item:hover{background:var(--surface-hover)}.reader-feed-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.reader-feed-title{display:block;width:100%;background:none;border:none;padding:0;text-align:left;cursor:pointer;font-family:var(--font-ui);font-size:var(--font-size-sm);font-weight:500;color:var(--text)}.reader-feed-title:hover{color:var(--accent)}.reader-feed-meta{display:flex;align-items:center;gap:8px;font-size:var(--font-size-xs);color:var(--text-muted)}.reader-feed-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.reader-list{flex:1;min-height:0;overflow-y:auto}.reader-card{position:relative;margin:8px 14px 14px;border:solid 1px #e0e0e0;border-radius:5px;box-shadow:0 2px 3px #f0f0f0;background:var(--surface)}.reader-card .task-card{padding:8px 8px 7px;align-items:flex-start}.reader-card.is-read{opacity:.55}.reader-card.dragging{opacity:.4}.reader-card.drop-before:before{content:"";position:absolute;left:0;right:0;top:-5px;height:2px;background:var(--accent);border-radius:1px}.reader-card-body{flex-direction:column;align-items:stretch;gap:3px}.reader-item-title{display:inline-flex;align-items:center;gap:5px;max-width:100%;align-self:flex-start;background:none;border:none;padding:0;text-align:left;cursor:pointer;font-family:var(--font-ui);font-size:var(--font-size-sm);font-weight:500;color:var(--text)}.reader-item-title-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.reader-item-title svg{flex-shrink:0;color:var(--text-muted)}.reader-item-title:hover,.reader-item-title:hover svg{color:var(--accent)}.reader-card.is-read .reader-item-title{text-decoration:line-through;text-decoration-color:var(--text-muted)}.reader-host{font-size:var(--font-size-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reader-rename{padding:3px 8px;font-size:var(--font-size-sm);width:100%}.reader-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:56px 24px;color:var(--text-muted);gap:4px}.reader-empty-title{font-family:var(--font-ui);font-size:var(--font-size-lg);font-weight:600;color:var(--text-secondary);margin-top:8px}.reader-empty-sub{font-size:var(--font-size-sm)}.reader-reading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;background:var(--bg-page);display:flex;flex-direction:column}.reader-reading-bar{flex-shrink:0;display:flex;align-items:center;gap:2px;padding:8px 10px}.reader-done-toggle.done{color:var(--success)}.reader-progress{flex-shrink:0;height:4px;border-radius:0}.reader-progress-fill{background:#d93025;border-radius:0;transition:width 80ms linear}.reader-reading-scroll{flex:1;min-height:0;overflow-y:auto;padding:16px 16px 72px}.reader-prose{max-width:680px;margin:0 auto;color:var(--text);font-family:var(--font-body);font-size:19px;line-height:1.75}.reader-prose h1{font-family:var(--font-body);font-size:30px;font-weight:600;line-height:1.2;margin:0 0 8px}.reader-prose p{margin-bottom:1em}.reader-prose-source{font-family:var(--font-ui);font-size:var(--font-size-sm);color:var(--text-muted);margin:0 0 24px}.reader-prose-source a{color:var(--accent)}.reader-prose-empty{color:var(--text-muted);font-style:italic;font-family:var(--font-ui);font-size:var(--font-size-base)}.reader-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#00000059;display:flex;align-items:center;justify-content:center;padding:16px}.reader-modal{width:100%;max-width:440px;max-height:90vh;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:18px;display:flex;flex-direction:column}.reader-modal-title{font-family:var(--font-ui);font-size:var(--font-size-lg);font-weight:600;margin-bottom:12px}.reader-modal-help{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0 0 10px;line-height:1.5}.reader-field-label{font-family:var(--font-ui);font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);margin-bottom:4px;display:block}.reader-field-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:10px 0 4px}.reader-field-row .reader-field-label{margin:0}.reader-fetch-btn{flex-shrink:0;padding:2px 8px}.reader-field-hint{font-weight:400;color:var(--text-muted)}.reader-import-text{width:100%;resize:vertical;font-family:var(--font-ui);font-size:var(--font-size-sm);line-height:1.5}.reader-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:16px}.reader-mode-toggle{display:inline-flex;margin-left:12px;padding:2px;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface)}.reader-mode-toggle button{border:none;background:none;cursor:pointer;white-space:nowrap;font-family:var(--font-ui);font-size:12px;font-weight:600;color:var(--text-secondary);padding:4px 12px;border-radius:var(--radius-full)}.reader-mode-toggle button.active{background:var(--accent);color:var(--text-on-accent)}.reader-feeds-info{font-family:var(--font-ui);font-size:var(--font-size-sm);color:var(--text-muted)}.reader-feed-item{align-items:flex-start}.reader-feed-source{font-weight:600;color:var(--text-secondary)}.reader-feed-summary{margin-top:4px;font-family:var(--font-ui);font-size:var(--font-size-sm);color:var(--text-muted);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.reader-saved{color:var(--success)!important}.reader-feed-add{display:flex;gap:8px;margin-bottom:12px}.reader-feed-add .input{flex:1}.reader-feed-subs{max-height:320px;overflow-y:auto;border:1px solid var(--divider);border-radius:var(--radius-md)}.reader-feed-sub{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--divider)}.reader-feed-sub:last-child{border-bottom:none}.reader-feed-sub-main{flex:1;min-width:0}.reader-feed-sub-title{font-family:var(--font-ui);font-size:var(--font-size-sm);font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reader-feed-sub-url{font-size:var(--font-size-xs);color:var(--text-muted)}.chores-page .recipe-panel-center{border-right:none}.chores-item{display:flex;align-items:flex-start;gap:10px;padding:9px 16px;cursor:pointer;transition:background var(--transition-fast)}.chores-item:hover{background:var(--surface-hover)}.chores-item.active{background:var(--accent-pale)}.chores-item.active .chores-item-title{color:var(--accent)}.chores-item.done .chores-item-title{color:var(--text-muted);text-decoration:line-through}.chores-item-body{flex:1;min-width:0}.chores-item-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text)}.chores-item-meta{font-size:11px;color:var(--text-muted);margin-top:1px}.chores-check{width:20px;height:20px;flex-shrink:0;margin-top:1px;border:1.5px solid var(--border-strong);border-radius:50%;background:transparent;color:var(--text-on-accent);display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer}.chores-check:hover{border-color:var(--accent)}.chores-check.checked{background:var(--accent);border-color:var(--accent)}.chores-guide-icon{color:var(--accent);width:20px;display:flex;justify-content:center;margin-top:1px}.chores-progress{margin-left:auto;font-size:11px;font-weight:600;color:var(--text-muted)}.chores-progress.complete{color:var(--success)}.chores-week-row{display:flex;align-items:center;gap:10px;padding:7px 16px;cursor:pointer;font-size:var(--font-size-sm);color:var(--text-secondary)}.chores-week-row:hover{background:var(--surface-hover)}.chores-week-row.today{color:var(--accent);font-weight:600}.chores-week-day{width:30px;font-weight:600}.chores-week-zone{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chores-week-done{color:var(--success);display:flex}.chores-week-chevron{display:flex;color:var(--text-muted);transition:transform var(--transition-fast)}.chores-week-chevron.open{transform:rotate(180deg)}.chores-week-group .chores-item{padding-left:56px}.chores-status-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:9px 16px;border-top:1px solid var(--border);font-size:11px;color:var(--text-muted)}.chores-status{display:inline-flex;align-items:center;gap:4px}.chores-status.ok{color:var(--success);font-weight:600}.chores-status.warn{color:var(--warning)}.chores-detail-scroll{flex:1;overflow-y:auto;padding:20px 24px 32px;max-width:640px}.chores-detail-kicker{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.chores-detail-title{margin:4px 0 14px;font-size:20px;font-weight:700;color:var(--text)}.chores-detail-lead{color:var(--text-secondary);line-height:1.55;margin:0 0 14px}.chores-detail-section{margin:20px 0 8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.chores-tool-chips{display:flex;flex-wrap:wrap;gap:6px}.chores-tool-chip{padding:3px 10px;border-radius:999px;background:var(--bg-secondary);font-size:12px;color:var(--text-secondary)}.chores-steps,.chores-tools{margin:0;padding-left:22px;line-height:1.55;color:var(--text)}.chores-steps li,.chores-tools li{margin-bottom:9px;padding-left:4px}.chores-callout{margin-top:16px;padding:10px 14px;border-radius:6px;background:var(--accent-pale);color:var(--text-secondary);line-height:1.5;font-size:var(--font-size-sm)}.chores-complete-row{display:flex;align-items:center;gap:12px;margin-top:24px}.chores-complete-note{font-size:12px;color:var(--text-muted)}.chores-page.recipe-3panel-mobile .chores-detail-scroll{padding:16px;max-width:none}.workout-empty-cue{display:flex;align-items:center;justify-content:center;gap:10px;padding:28px 12px;color:var(--text-muted);font-size:var(--font-size-sm)}.exercise-bank>.search-inline{flex:none}.page-show-more-done{display:block;margin:8px auto 4px;background:none;border:0;color:var(--accent);font:inherit;font-size:13px;cursor:pointer;padding:4px 8px}.page-show-more-done:hover{text-decoration:underline}.page-subrow-donetoggle{padding:4px 12px 4px 30px;font-size:12px;color:var(--text-muted)}.page-subrow-donetoggle button{background:none;border:0;padding:0;font:inherit;color:var(--accent);cursor:pointer}.page-subrow-donetoggle button:hover{text-decoration:underline}.duo-icon{flex-shrink:0;overflow:visible;vertical-align:middle}.duo-icon .duo-secondary{opacity:var(--duo-secondary, 1)}.duo-icon{color:var(--text-secondary)}.duo-icon:not(.duo-solid){stroke:currentColor;stroke-width:16;stroke-linejoin:round}.nb-item-content>.nb-item-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;margin-right:8px;transform:none}.content-card>.nb-item>.nb-item-icon{display:inline-flex;align-items:center;justify-content:center;width:24px}.mobile-nav-cat:not(:last-child){border-bottom:1px solid var(--border)}.journal-list-item>.nb-item-content:has(>.nb-item-icon){display:flex;align-items:center}.journal-list-item>.nb-item-content:has(>.nb-item-icon)>.note-title{min-width:0}.journal-list-item>.nb-item-content:has(>.nb-item-icon)>.journal-count-pill{margin-left:auto}.mobile-nav-cat{padding:14px 0}.cog-chip{display:inline-block;flex:none;padding:1px 7px;border-radius:999px;font-size:11px;line-height:16px;color:var(--cog);background:color-mix(in srgb,var(--cog) 14%,transparent);cursor:default;white-space:nowrap}.page-block-head-right .cog-chip{cursor:pointer}.page-subrow .cog-chip{margin-top:2px}.cog-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:8px;flex:none}.cog-picker-wrap{position:relative;display:flex;align-items:center}.nb-todo{overflow:hidden}.nb-todo-list{flex:1;min-height:0;overflow-y:auto;padding-bottom:24px}.todo-card-meta{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.todo-empty{padding:32px 16px;text-align:center;color:var(--text-muted);font-size:var(--font-size-sm)}.todo-handle{margin:0 6px 0 -3px}.page-card-group.dragging{opacity:.4}.page-card-group.drop-before:before{content:"";position:absolute;left:0;right:0;top:-5px;height:2px;background:var(--accent);border-radius:1px}.nb-category-group.drop-end:after{content:"";display:block;height:2px;margin:-6px 14px 0;background:var(--accent);border-radius:1px}.todo-type{position:relative}.todo-type-menu{top:100%;left:0;margin-top:4px}.reader-chip.hide{background:var(--bg-tertiary);border-color:var(--border-strong);color:var(--text-secondary);text-decoration:line-through}.nb-todo .page-card-group{background:var(--surface)}.nb-todo .page-card-group.active{background:var(--accent-pale)}.todo-title{display:flex;align-items:center;gap:8px}.todo-count{display:inline-flex;align-items:center;gap:2px;padding-left:8px;font-size:var(--font-size-xs);font-weight:600;color:var(--accent)}.todo-count .btn-icon{width:20px;height:20px}.nb-todo .page-header{padding:0 8px 0 16px}.todo-scope-menu{max-height:60vh;overflow-y:auto}.todo-scope-cat{font-weight:600}.todo-scope-nb{padding-left:28px}.todo-section-empty{margin:8px 6px 4px;padding:14px;border:1px dashed var(--border);border-radius:6px;color:var(--text-muted);font-size:var(--font-size-sm);text-align:center}.todo-search{flex:1 1 100%;min-width:0;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface);color:var(--text);font-family:var(--font-ui);font-size:13px}.todo-search:focus{outline:none;border-color:var(--accent)}.nb-3panel-center>.nb-in-center{width:auto;flex:1;min-height:0;background:var(--surface-hover)}.nb-todo .nb-3panel-section-header.major{margin-top:22px;padding:12px 6px 4px;border-top:1px solid var(--divider)}.nb-todo .nb-3panel-section-header.major .nb-3panel-section-name,.nb-todo .nb-category-group:first-child .nb-3panel-section-name{font-size:15px;font-weight:700;color:var(--text)}.todo-tools{margin-left:auto;flex:1;min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:6px}.todo-search-wrap{position:relative;flex:1;max-width:260px;min-width:0;display:flex;align-items:center}.todo-search-wrap .todo-search{padding:5px 28px;font-size:13px}.todo-search-icon{position:absolute;left:9px;color:var(--text-muted);pointer-events:none}.todo-search-clear{position:absolute;right:2px;width:22px;height:22px}.todo-tools .todo-type .dropdown-menu{left:auto;right:0}.todo-menu{min-width:230px;padding:6px 0}.todo-search-menu{padding:8px;min-width:260px}.todo-search-menu .todo-search{width:100%;box-sizing:border-box}.todo-menu-label{padding:4px 12px;font-size:var(--font-size-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.todo-matrix{display:grid;grid-template-columns:1fr repeat(3,44px);align-items:center;padding:2px 12px 6px;row-gap:2px}.todo-matrix-col{text-align:center;font-size:var(--font-size-xs);font-weight:600;color:var(--text-muted)}.todo-matrix-row{font-size:var(--font-size-sm)}.todo-matrix-count{margin-left:4px;font-size:var(--font-size-xs);color:var(--text-muted)}.todo-matrix-cell{display:flex;justify-content:center;padding:5px 0;cursor:pointer}.todo-matrix-cell input{accent-color:var(--accent);cursor:pointer}.todo-matrix-row{white-space:nowrap}.todo-matrix-cell{padding:3px 0}.todo-dot{width:14px;height:14px;padding:0;border-radius:50%;border:1.5px solid var(--border-strong, #b5b5b5);background:transparent;cursor:pointer}.todo-dot.on{border-color:var(--accent);background:var(--accent);box-shadow:inset 0 0 0 2.5px var(--surface, #fff)}.todo-dot.implied{border-color:#a8a8a8;background:#a8a8a8;box-shadow:inset 0 0 0 2.5px var(--surface, #fff)}.todo-search-icon{display:flex}.nb-todo .page-card-group.search-flash{animation:todo-search-flash 1.7s ease}@keyframes todo-search-flash{0%,25%{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-pale)}to{border-color:#e0e0e0;box-shadow:0 2px 3px #f0f0f0}}
