.sidebar{border-right:1px solid var(--border);background:var(--surface-a);display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;padding:10px 8px 0;width:192px;flex-shrink:0;transition:width .18s ease}.sidebar-collapsed{width:48px;padding:10px 4px 0}.sidebar-collapsed .sidebar-brand-name{display:none}.sidebar-collapsed .sidebar-brand{justify-content:center;padding:10px 0 12px}.sidebar-collapsed .section-header,.sidebar-collapsed .nav-label,.sidebar-collapsed .nav-count,.sidebar-collapsed .section-sublabel{display:none}.sidebar-collapsed .nav-item{justify-content:center;padding:9px 0;gap:0}.sidebar-collapsed .nav-icon{font-size:16px;width:20px}.sidebar-collapsed .area-dot{width:9px;height:9px}.sidebar-collapsed .nav-icon svg{width:15px!important;height:15px!important}.sidebar-collapsed .bottom-icon-btn{width:34px;height:34px;font-size:15px}.sidebar-collapsed .sidebar-pinned{text-align:center}.sidebar-collapsed .sidebar-section{margin-bottom:0}.sidebar-collapsed-divider{height:1px;background:var(--border-faint);margin:6px;opacity:.7}.sidebar-collapsed .sidebar-bottom{flex-direction:column;gap:2px;padding:8px 0}.sidebar-collapse-btn{margin-left:auto}.sidebar-collapsed .sidebar-collapse-btn{margin-left:0}.sidebar-brand{display:flex;align-items:center;gap:8px;padding:10px 8px 12px;border-bottom:1px solid var(--border-faint);margin-bottom:6px}.sidebar-brand-icon{flex-shrink:0;color:var(--text-secondary)}.sidebar-brand-name{font-size:11px;font-family:IBM Plex Mono,monospace;letter-spacing:.18em;color:var(--text-secondary);font-weight:500}.sidebar-pinned{margin-bottom:4px;padding-bottom:6px;border-bottom:1px solid var(--border-faint)}.nav-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;color:var(--text-secondary);font-weight:400;transition:background .1s,color .1s;-webkit-user-select:none;user-select:none}.nav-item:hover,.nav-item.active{background:var(--hover);color:var(--text-primary)}.sidebar-pinned .nav-item+.nav-item{margin-top:1px}.nav-item.hidden-area{opacity:.5}.sidebar-section{margin-bottom:2px}.section-header{display:flex;align-items:center;justify-content:space-between;padding:8px 8px 3px;cursor:pointer;-webkit-user-select:none;user-select:none}.section-label{font-size:10px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.section-caret{font-size:12px;color:var(--text-faint);opacity:.6;transition:transform .15s}.section-caret.collapsed{transform:rotate(-90deg)}.nav-icon{font-size:14px;width:16px;text-align:center;color:var(--text-faint);flex-shrink:0}.nav-count{margin-left:auto;font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;flex-shrink:0}.show-hidden-btn{display:flex;align-items:center;gap:5px;padding:5px 8px;margin:2px 0 6px;border-radius:var(--radius-sm);cursor:pointer;font-size:11px;color:var(--text-faint);background:transparent;border:none;font-family:Work Sans,sans-serif;transition:color .1s;width:100%;text-align:left}.show-hidden-btn:hover{color:var(--text-secondary)}.section-sublabel{font-size:9px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);font-family:IBM Plex Mono,monospace;padding:6px 8px 2px;opacity:.7}.nav-empty{font-size:11px;color:var(--text-faint);padding:4px 8px 6px;font-style:italic}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--border-faint);padding:8px 0;display:flex;align-items:center;justify-content:center;gap:4px}.bottom-icon-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:14px;color:var(--text-faint);cursor:pointer;transition:background .1s,color .1s}.bottom-icon-btn:hover{background:var(--hover);color:var(--text-secondary)}.bottom-icon-btn.active{color:var(--text-primary)}.settings-view{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0}.settings-tabs{display:flex;gap:2px;padding:16px 32px 0;border-bottom:1px solid var(--border);flex-shrink:0}.settings-tab{font-size:12px;font-family:Work Sans,sans-serif;color:var(--text-faint);background:none;border:none;padding:8px 14px 10px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .1s,border-color .1s;letter-spacing:.01em}.settings-tab:hover{color:var(--text-secondary)}.settings-tab.active{color:var(--text-primary);border-bottom-color:var(--text-secondary)}.settings-body{flex:1;overflow-y:auto;padding:0}.settings-tab-content{max-width:640px;padding:28px 32px 48px;display:flex;flex-direction:column;gap:32px}.settings-section{display:flex;flex-direction:column;gap:12px}.settings-section-title{font-size:10px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--text-faint);font-family:IBM Plex Mono,monospace;padding-bottom:6px;border-bottom:1px solid var(--border-faint)}.settings-section-hint{font-size:12px;color:var(--text-faint);line-height:1.6;margin:0 0 4px;font-style:italic}.settings-field{display:grid;grid-template-columns:130px 1fr;align-items:start;gap:12px;min-height:28px}.settings-field-label{font-size:12px;color:var(--text-secondary);padding-top:5px;flex-shrink:0}.settings-field-value{flex:1;min-width:0}.settings-input{font-size:13px;color:var(--text-primary);background:transparent;border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:5px 9px;outline:none;font-family:Work Sans,sans-serif;width:100%;box-sizing:border-box;transition:border-color .1s}.settings-input:focus{border-color:var(--text-faint)}.settings-input.sm{font-size:12px;padding:4px 8px}.settings-input.list-item{font-size:12px}.settings-inline-text{font-size:13px;color:var(--text-primary);cursor:text;padding:4px 8px;border-radius:var(--radius-sm);border:1px solid transparent;display:block;min-height:28px;transition:background .1s,border-color .1s;line-height:1.4}.settings-inline-text:hover{background:var(--hover);border-color:var(--border-mid)}.settings-placeholder{color:var(--text-faint);font-style:italic;font-size:12px}.settings-select{font-size:12px;font-family:Work Sans,sans-serif;color:var(--text-primary);background:var(--surface-a);border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:5px 9px;outline:none;cursor:pointer;min-width:140px}.settings-select:focus{border-color:var(--text-faint)}.editable-list{display:flex;flex-direction:column;gap:2px}.editable-list-item{display:flex;align-items:flex-start;gap:8px;padding:3px 0}.editable-list-dot{width:4px;height:4px;border-radius:50%;background:var(--text-faint);margin-top:7px;flex-shrink:0}.editable-list-item-row{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.editable-list-text{font-size:13px;color:var(--text-secondary);flex:1;cursor:text;padding:2px 6px;border-radius:var(--radius-sm);border:1px solid transparent;transition:background .1s,border-color .1s;line-height:1.5}.editable-list-text:hover{background:var(--hover);border-color:var(--border-faint)}.editable-list-delete{font-size:14px;color:var(--text-faint);background:none;border:none;cursor:pointer;opacity:0;padding:0 4px;transition:opacity .1s,color .1s;flex-shrink:0;line-height:1}.editable-list-item:hover .editable-list-delete{opacity:1}.editable-list-delete:hover{color:var(--pri-urgent)}.editable-list-add{display:flex;align-items:center;gap:8px;margin-top:6px}.editable-list-add .settings-input{flex:1}.settings-add-btn{margin-top:4px;align-self:flex-start}.areas-list{display:flex;flex-direction:column;gap:4px}.area-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border-faint);border-radius:var(--radius-md);background:var(--surface-a);transition:background .1s}.area-row:hover{background:var(--hover)}.area-row.hidden{opacity:.5}.area-color-wrap{position:relative;flex-shrink:0}.area-color-swatch{width:20px;height:20px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .1s,border-color .1s;display:block;padding:0}.area-color-swatch:hover{transform:scale(1.15);border-color:var(--border-mid)}.area-color-picker{position:absolute;top:calc(100% + 6px);left:0;z-index:20;background:var(--surface-b);border:1px solid var(--border-mid);border-radius:var(--radius-md);padding:8px;display:flex;flex-wrap:wrap;gap:6px;width:120px;box-shadow:0 4px 16px #0000004d}.palette-dot{width:20px;height:20px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:transform .1s,border-color .1s}.palette-dot:hover{transform:scale(1.2)}.palette-dot.selected{border-color:var(--text-secondary)}.area-name-wrap{flex:1;min-width:0}.area-name-wrap .settings-inline-text,.area-name-wrap .settings-input{font-size:13px;padding:3px 7px;min-height:26px}.area-status-btn{font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:3px;border:none;cursor:pointer;flex-shrink:0;transition:opacity .1s}.area-status-btn.active{color:var(--pri-medium);background:#4e88581a}.area-status-btn.hidden{color:var(--text-faint);background:var(--tag-bg)}.area-status-btn:hover{opacity:.7}.area-reorder{display:flex;flex-direction:column;gap:1px;flex-shrink:0}.reorder-btn{font-size:10px;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:0 4px;line-height:1.4;transition:color .1s;border-radius:2px}.reorder-btn:hover:not(:disabled){color:var(--text-secondary);background:var(--hover)}.reorder-btn:disabled{opacity:.2;cursor:default}.theme-toggle-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.theme-option-group{display:flex;gap:8px}.theme-option{display:flex;align-items:center;gap:8px;padding:10px 20px;border:1px solid var(--border-mid);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:13px;font-family:Work Sans,sans-serif;cursor:pointer;transition:background .1s,border-color .1s,color .1s}.theme-option:hover{background:var(--hover);border-color:var(--text-faint)}.theme-option.active{border-color:var(--text-secondary);color:var(--text-primary);background:var(--hover)}.theme-icon{font-size:16px;line-height:1}.ai-key-status{font-size:12px;padding:5px 0;display:block}.ai-key-status.ok{color:var(--pri-medium)}.ai-key-status.missing{color:var(--pri-urgent)}.ai-key-status.checking{color:var(--text-faint);font-style:italic}.ai-key-status code{font-family:IBM Plex Mono,monospace;font-size:11px;background:var(--tag-bg);padding:1px 5px;border-radius:3px}.ai-key-input-row{display:flex;align-items:center;gap:8px}.ai-key-input-wrap{position:relative;flex:1}.ai-key-input-wrap .settings-input{padding-right:32px}.ai-key-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-faint);cursor:pointer;font-size:10px;padding:0;transition:color .1s}.ai-key-toggle:hover{color:var(--text-secondary)}.ai-model-row{display:grid;grid-template-columns:90px 180px 1fr;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--border-faint)}.ai-model-row:last-child{border-bottom:none}.ai-model-label{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.06em}.ai-model-name{font-size:12px;font-family:IBM Plex Mono,monospace;color:var(--text-secondary)}.ai-model-desc{font-size:11px;color:var(--text-faint);font-style:italic;line-height:1.5}.voice-list{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.voice-row{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:var(--radius-sm);border:1px solid var(--border-faint);transition:border-color .1s}.voice-row.active{border-color:var(--border-mid);background:var(--tag-bg)}.voice-select-btn{flex:1;display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;text-align:left;padding:0}.voice-radio{font-size:12px;color:var(--text-faint);flex-shrink:0}.voice-row.active .voice-radio{color:var(--accent-gold, #c9a227)}.voice-name{font-size:13px;color:var(--text-secondary);font-weight:500}.voice-desc{font-size:11px;color:var(--text-faint);font-style:italic}.voice-test-btn,.voice-remove-btn{background:none;border:none;cursor:pointer;color:var(--text-faint);font-size:12px;padding:2px 6px;border-radius:3px;transition:color .1s,background .1s}.voice-test-btn:hover{color:var(--text-secondary);background:var(--hover)}.voice-remove-btn:hover{color:var(--pri-urgent, #b85252)}.voice-test-btn:disabled{opacity:.4;cursor:default}.voice-add-form{display:flex;flex-direction:column;gap:6px;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-b)}.voice-add-actions{display:flex;gap:6px}.settings-link{color:var(--text-secondary);text-decoration:underline;text-underline-offset:2px}.voice-speed-row{display:flex;align-items:center;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border-faint)}.voice-speed-slider{flex:1;accent-color:var(--accent-gold, #c9a227);cursor:pointer}.voice-speed-val{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);min-width:36px;text-align:right}.voice-pronunciation{margin-top:14px;padding-top:12px;border-top:1px solid var(--border-faint)}.pronunciation-row{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:12px}.pronunciation-from{color:var(--text-secondary);font-family:IBM Plex Mono,monospace;min-width:80px}.pronunciation-arrow{color:var(--text-faint);font-size:11px;flex-shrink:0}.pronunciation-to{color:var(--text-faint);font-family:IBM Plex Mono,monospace;flex:1}.pronunciation-add-row{display:flex;align-items:center;gap:6px;margin-top:6px}.pronunciation-add-row .settings-input.sm{flex:1}.danger-zone{border:1px solid rgba(184,82,82,.25);background:#b852520a;border-radius:7px;padding:14px 16px;margin-top:4px}.danger-hint{margin-top:0!important;margin-bottom:12px!important;color:var(--text-secondary)!important}.danger-hint strong{color:var(--pri-urgent);font-weight:500}.danger-confirm{display:flex;flex-direction:column;gap:8px}.danger-confirm-label{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.06em}.danger-confirm-label code{font-size:11px;color:var(--pri-urgent);background:#b852521f;padding:1px 5px;border-radius:3px}.danger-confirm-row{display:flex;gap:8px;align-items:center}.danger-confirm-row .settings-input{flex:1;max-width:200px;font-family:IBM Plex Mono,monospace;letter-spacing:.1em}.danger-error{font-size:11px;color:var(--pri-urgent);font-family:IBM Plex Mono,monospace}.module-group{margin-bottom:18px}.module-group-label{font-size:10px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--text-faint);font-family:IBM Plex Mono,monospace;margin-bottom:6px}.module-group-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:4px 12px}.module-toggle-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;color:var(--text-secondary);-webkit-user-select:none;user-select:none;transition:background .1s,color .1s}.module-toggle-row:hover{background:var(--hover);color:var(--text-primary)}.module-toggle-row input[type=checkbox]{margin:0;accent-color:var(--watch-text, #c9a227)}.module-toggle-label{flex:1}.avatar-preview{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--border-mid);color:var(--text-primary);font-family:IBM Plex Mono,monospace;font-weight:500;background-size:cover;background-position:center;flex-shrink:0;overflow:hidden}.avatar-preview .avatar-glyph{line-height:1}.avatar-editor{margin-top:12px;padding-top:14px;border-top:1px dashed var(--border-faint)}.avatar-preview-row{display:flex;align-items:center;gap:14px;margin-bottom:14px}.avatar-meta-label{font-size:.78rem;font-family:IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.12em;color:var(--text-faint);margin-bottom:4px}.avatar-meta-hint{font-size:.8rem;color:var(--text-secondary);line-height:1.5;max-width:380px}.avatar-type-row{display:flex;gap:6px;margin-bottom:14px}.avatar-type-btn{background:var(--surface-b);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:5px 12px;font-size:.82rem;font-family:inherit;cursor:pointer;transition:border-color .1s,color .1s,background .1s}.avatar-type-btn:hover{color:var(--text-primary);border-color:var(--border-mid)}.avatar-type-btn.active{border-color:var(--watch-text, #c9a227);color:var(--text-primary);background:var(--surface-a)}.avatar-section{margin-bottom:14px}.avatar-section-label{font-size:.7rem;font-family:IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.12em;color:var(--text-faint);margin-bottom:8px}.avatar-palette{display:flex;flex-wrap:wrap;gap:8px}.avatar-color-swatch{width:26px;height:26px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:transform .08s,border-color .1s}.avatar-color-swatch:hover{transform:scale(1.08)}.avatar-color-swatch.selected{border-color:var(--text-primary)}.avatar-icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:6px;max-width:440px}.avatar-icon-btn{width:36px;height:36px;background:var(--tag-bg);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:17px;display:inline-flex;align-items:center;justify-content:center;transition:border-color .1s,color .1s,background .1s}.avatar-icon-btn:hover{color:var(--text-primary);border-color:var(--border-mid)}.avatar-icon-btn.selected{border-color:var(--watch-text, #c9a227);color:var(--text-primary);background:var(--surface-a)}.avatar-upload-row{display:flex;gap:8px;align-items:center}.avatar-upload-hint{font-size:.78rem;color:var(--text-faint);margin:6px 0 0}.avatar-error{margin-top:8px;font-size:.82rem;color:var(--pri-urgent);background:#b8525214;border:1px solid rgba(184,82,82,.3);padding:6px 10px;border-radius:var(--radius-sm)}.avatar-reset-btn{margin-top:8px}.usermenu{position:relative;display:inline-flex;align-items:center;margin-left:4px}.usermenu-avatar-btn{background:none;border:none;padding:0;cursor:pointer;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:transform .1s,box-shadow .12s}.usermenu-avatar-btn:hover .avatar-preview,.usermenu-avatar-btn.open .avatar-preview{border-color:var(--text-faint);box-shadow:0 0 0 2px var(--hover)}.usermenu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;background:var(--surface-b);border:1px solid var(--border-mid);border-radius:var(--radius-md);box-shadow:0 12px 32px #00000059,0 2px 6px #0003;padding:6px;z-index:1000;animation:usermenu-pop .12s ease-out}@keyframes usermenu-pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.usermenu-header{padding:8px 10px 6px}.usermenu-name{font-size:13px;color:var(--text-primary);font-weight:500;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.usermenu-email{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.02em;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.usermenu-divider{height:1px;background:var(--border);margin:6px 4px}.usermenu-item{display:flex;align-items:center;gap:10px;width:100%;padding:7px 10px;border:none;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:13px;text-align:left;cursor:pointer;border-radius:var(--radius-sm);transition:background .1s,color .1s}.usermenu-item:hover{background:var(--hover);color:var(--text-primary)}.usermenu-item.active{color:var(--text-primary);background:var(--hover)}.usermenu-icon{width:16px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-faint)}.usermenu-item:hover .usermenu-icon,.usermenu-item.active .usermenu-icon{color:var(--text-secondary)}.usermenu-signout{color:var(--text-faint)}.usermenu-signout:hover{color:var(--pri-urgent);background:#b8525214}.usermenu-signout:hover .usermenu-icon{color:var(--pri-urgent)}.usermenu-section-label{font-size:9px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--text-faint);font-family:IBM Plex Mono,monospace;padding:6px 10px 4px}.app-header{display:flex;align-items:center;justify-content:space-between;padding:0 16px 0 0;border-bottom:1px solid var(--border);background:var(--surface-a);height:44px;flex-shrink:0}.header-left{display:flex;align-items:center;height:44px;padding-left:16px}.header-wordmark{padding:0 16px;font-size:13px;font-weight:500;color:var(--text-primary);letter-spacing:.04em;border-right:1px solid var(--border);height:100%;display:flex;align-items:center}.header-breadcrumb{padding:0 14px;font-size:12px;color:var(--text-faint);display:flex;align-items:center;gap:6px}.header-breadcrumb-link{cursor:pointer;transition:color .1s}.header-breadcrumb-link:hover{color:var(--text-secondary)}.header-breadcrumb-sep{font-size:10px;color:var(--text-faint);opacity:.5}.header-right{display:flex;align-items:center;gap:6px}.header-stat{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.05em;margin-right:6px}.header-icon-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:13px;color:var(--text-faint);cursor:pointer;transition:background .1s,color .1s;border:none;background:transparent}.header-icon-btn:hover{background:var(--hover);color:var(--text-secondary)}.advisor-toggle{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-sm);border:1px solid var(--border-mid);background:transparent;cursor:pointer;font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.06em;transition:all .1s}.advisor-toggle:hover{color:var(--text-secondary);border-color:var(--text-faint)}.advisor-toggle.active{color:var(--text-secondary);border-color:var(--border-mid)}.advisor-badge{background:var(--tag-bg);color:var(--text-faint);border:1px solid var(--tag-border);border-radius:10px;font-size:9px;padding:1px 6px;font-family:IBM Plex Mono,monospace}.right-sidebar{display:flex;flex-direction:row;flex-shrink:0;height:100%;min-height:0;border-left:1px solid var(--border)}.rs-panel{width:264px;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden;min-height:0;background:var(--surface-a)}.rs-panel+.rs-panel{border-left:1px solid var(--border)}.rs-panel-head{display:flex;align-items:center;gap:7px;padding:0 12px;height:40px;flex-shrink:0;border-bottom:1px solid var(--border)}.rs-panel-icon{font-size:12px;color:var(--text-faint);flex-shrink:0;width:14px;text-align:center}.rs-panel-title{font-size:10px;font-family:IBM Plex Mono,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);flex:1}.rs-panel-kbd{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.3}.rs-note-count{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);background:var(--tag-bg);border:1px solid var(--border-mid);border-radius:8px;padding:0 5px;min-width:16px;text-align:center}.rs-panel-collapse{font-size:18px;line-height:1;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:2px 4px 2px 0;opacity:.35;transition:opacity .1s,color .1s;flex-shrink:0}.rs-panel-collapse:hover{opacity:1;color:var(--text-secondary)}.rs-chat-log{flex:1;overflow-y:auto;padding:12px 12px 6px;display:flex;flex-direction:column;gap:10px;min-height:0}.rs-chat-log::-webkit-scrollbar{width:3px}.rs-chat-log::-webkit-scrollbar-track{background:transparent}.rs-chat-log::-webkit-scrollbar-thumb{background:var(--border-mid);border-radius:2px}.rs-chat-empty{padding:12px 0;display:flex;flex-direction:column;gap:6px}.rs-chat-empty-title{font-size:12px;color:var(--text-secondary);font-weight:500;margin:0}.rs-chat-empty-hint{font-size:11px;color:var(--text-faint);font-style:italic;line-height:1.6;margin:0}.rs-chat-log,.rs-msg{-webkit-user-select:text;user-select:text}.rs-msg{display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.55}.rs-msg-glyph{font-family:IBM Plex Mono,monospace;color:var(--text-faint);flex-shrink:0;width:10px;text-align:center;font-size:13px;padding-top:1px;-webkit-user-select:none;user-select:none}.rs-msg-text{color:var(--text-secondary);font-family:Work Sans,sans-serif;word-break:break-word;flex:1;-webkit-user-select:text;user-select:text;cursor:text}.rs-chat-input{-webkit-user-select:text;user-select:text}.rs-msg-user .rs-msg-text{color:var(--text-primary)}.rs-msg-thinking{color:var(--text-faint);font-style:italic}.rs-chat-form{display:flex;align-items:center;gap:7px;padding:8px 10px;border-top:1px solid var(--border-faint);flex-shrink:0}.rs-chat-input{flex:1;min-width:0;background:var(--surface-b);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 9px;font-size:12px;color:var(--text-primary);font-family:Work Sans,sans-serif;outline:none;transition:border-color .15s}.rs-chat-input:focus{border-color:var(--border-mid)}.rs-chat-input::placeholder{color:var(--text-faint)}.rs-send-btn{width:28px;height:28px;border-radius:var(--radius-sm);border:1px solid var(--border-mid);background:transparent;color:var(--text-secondary);font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .1s,border-color .1s;flex-shrink:0}.rs-send-btn:hover:not(:disabled){background:var(--hover);border-color:var(--text-faint)}.rs-send-btn:disabled{opacity:.25;cursor:default}.rs-advisor-toolbar{padding:8px 12px 7px;flex-shrink:0;border-bottom:1px solid var(--border-faint)}.rs-run-btn{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 10px;cursor:pointer;letter-spacing:.04em;transition:border-color .1s,color .1s}.rs-run-btn:hover{border-color:var(--border-mid);color:var(--text-secondary)}.rs-flags-scroll{flex:1;overflow-y:auto;padding:8px 10px;display:flex;flex-direction:column;gap:8px;min-height:0}.rs-flags-scroll::-webkit-scrollbar{width:3px}.rs-flags-scroll::-webkit-scrollbar-track{background:transparent}.rs-flags-scroll::-webkit-scrollbar-thumb{background:var(--border-mid);border-radius:2px}.rs-empty{font-size:11px;color:var(--text-faint);font-style:italic;padding:8px 2px;line-height:1.6}.rs-flag{padding:9px 10px;background:var(--surface-b);border:1px solid var(--border-faint);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:5px}.rs-flag-type{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);letter-spacing:.07em;text-transform:uppercase}.rs-flag-msg{font-size:12px;color:var(--text-secondary);line-height:1.5}.rs-flag-action{font-size:11px;color:var(--text-faint);font-style:italic;line-height:1.4}.rs-flag-btns{display:flex;gap:6px;padding-top:2px}.rs-flag-btn{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);background:none;border:1px solid var(--border);border-radius:3px;padding:2px 8px;cursor:pointer;transition:border-color .1s,color .1s}.rs-flag-btn:hover,.rs-flag-btn-act{border-color:var(--border-mid);color:var(--text-secondary)}.rs-autoplay-btn{background:none;border:none;cursor:pointer;font-size:12px;color:var(--text-faint);opacity:.4;padding:2px 4px;border-radius:3px;transition:opacity .1s,color .1s;flex-shrink:0}.rs-autoplay-btn:hover{opacity:.8}.rs-autoplay-btn.active{opacity:1;color:var(--accent-gold, #c9a227)}.rs-speak-btn{flex-shrink:0;margin-left:auto;padding:1px 4px;background:none;border:none;cursor:pointer;font-size:11px;color:var(--text-faint);opacity:0;transition:opacity .15s,color .15s;border-radius:3px;line-height:1}.rs-msg:hover .rs-speak-btn{opacity:.5}.rs-speak-btn:hover{opacity:1!important;color:var(--text-secondary)}.rs-speak-btn.playing{opacity:.8!important;color:var(--accent-gold, #c9a227)}.rs-speak-btn.loading{opacity:.5!important}.rs-speak-btn:disabled{cursor:default}.tdp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#00000040;display:flex;justify-content:flex-end}.tdp-panel{width:400px;max-width:90vw;height:100%;background:var(--surface-a);border-left:1px solid var(--border);display:flex;flex-direction:column;animation:tdp-slide-in .2s ease-out;transition:width .2s,max-width .2s,border-radius .2s}.tdp-overlay.mode-center{justify-content:center;align-items:center}.tdp-panel.mode-center{width:680px;max-width:88vw;height:82vh;border-radius:var(--radius-lg);border:1px solid var(--border);animation:tdp-scale-in .2s ease-out}.tdp-panel.mode-center .tdp-scroll{padding:20px 28px}.tdp-panel.mode-center .tdp-task-name{font-size:20px}.tdp-panel.mode-center .tdp-fields{grid-template-columns:1fr 1fr 1fr 1fr}.tdp-overlay.mode-full{background:none;pointer-events:none}.tdp-panel.mode-full{width:100%;max-width:100%;height:100%;border-radius:0;border-left:none;border-right:none;border-top:none;pointer-events:all;animation:tdp-slide-in .15s ease-out}.tdp-panel.mode-full .tdp-scroll{padding:24px 40px}.tdp-panel.mode-full .tdp-task-name{font-size:24px}.tdp-panel.mode-full .tdp-fields{grid-template-columns:1fr 1fr 1fr 1fr 1fr}@keyframes tdp-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes tdp-scale-in{0%{transform:scale(.95);opacity:.8}to{transform:scale(1);opacity:1}}.tdp-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.tdp-header-left{display:flex;align-items:center;gap:8px;overflow:hidden}.tdp-area-bar{width:3px;height:14px;border-radius:2px;flex-shrink:0;opacity:.7}.tdp-area-name{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.04em}.tdp-breadcrumb-sep{font-size:10px;color:var(--text-faint);opacity:.4}.tdp-project-name{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.tdp-mode-btns{display:flex;align-items:center;gap:2px;margin-right:4px}.tdp-mode-btn{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:11px;color:var(--text-faint);cursor:pointer;border:1px solid transparent;background:transparent;transition:background .1s,color .1s,border-color .1s;opacity:.5}.tdp-mode-btn:hover{background:var(--hover);color:var(--text-secondary);opacity:.8}.tdp-mode-btn.active{color:var(--text-primary);border-color:var(--border-mid);background:var(--hover);opacity:1}.tdp-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:16px;color:var(--text-faint);cursor:pointer;border:none;background:transparent;transition:background .1s,color .1s}.tdp-close:hover{background:var(--hover);color:var(--text-secondary)}.tdp-scroll{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px}.tdp-task-name{font-size:18px;font-weight:400;color:var(--text-primary);line-height:1.3}.tdp-task-name.editable{cursor:text;padding:2px 4px;margin:-2px -4px;border-radius:var(--radius-sm);transition:background .1s}.tdp-task-name.editable:hover{background:var(--hover)}.tdp-task-name.editing{background:transparent;border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:4px 8px;margin:-4px -8px;outline:none;font-family:Work Sans,sans-serif;width:calc(100% + 16px)}.tdp-meta-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tdp-status-chip{font-size:10px;padding:2px 8px;border-radius:4px;font-family:IBM Plex Mono,monospace;letter-spacing:.04em;text-transform:uppercase}.tdp-status-chip.this_week{background:var(--tag-bg);color:var(--tag-text)}.tdp-status-chip.backlog{background:var(--tag-bg);color:var(--text-faint)}.tdp-meta-tag{font-size:10px;padding:2px 8px;border-radius:4px;background:var(--tag-bg);color:var(--tag-text);font-family:IBM Plex Mono,monospace;letter-spacing:.03em}.tdp-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tdp-field{display:flex;flex-direction:column;gap:3px}.tdp-field-label{font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.tdp-field-val{font-size:13px;color:var(--text-secondary);padding:4px 6px;border-radius:var(--radius-sm);min-height:28px;display:flex;align-items:center;gap:6px}.tdp-field-val.editable{cursor:text;transition:background .1s}.tdp-field-val.editable:hover{background:var(--hover)}.tdp-field-input{font-size:13px;color:var(--text-primary);background:transparent;border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:4px 6px;outline:none;font-family:Work Sans,sans-serif;min-height:28px}.tdp-field-input:focus{border-color:var(--text-faint)}.tdp-field-input.invalid{border-color:var(--priority-urgent);color:var(--priority-urgent)}.tdp-picker-wrap{position:relative}.tdp-tray{position:absolute;top:calc(100% + 4px);left:0;z-index:200;background:var(--surface-a);border:1px solid var(--border-mid);border-radius:var(--radius-md);padding:10px;box-shadow:0 8px 24px #00000059;min-width:180px}.tdp-tray-hint{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;margin-bottom:8px;letter-spacing:.04em}.tdp-time-tray{min-width:200px}.tdp-hour-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;margin-bottom:8px}.tdp-hour-btn{font-size:11px;font-family:IBM Plex Mono,monospace;padding:5px 2px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text-secondary);cursor:pointer;text-align:center;transition:background .1s,border-color .1s}.tdp-hour-btn:hover{background:var(--hover);border-color:var(--border)}.tdp-hour-btn.sel{background:var(--hover);border-color:var(--border-mid);color:var(--text-primary)}.tdp-minute-row{display:flex;gap:4px;margin-bottom:8px}.tdp-min-btn{flex:1;font-size:12px;font-family:IBM Plex Mono,monospace;padding:6px 4px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--detail-bg);color:var(--text-primary);cursor:pointer;text-align:center;transition:background .1s,border-color .1s}.tdp-min-btn:hover{background:var(--hover);border-color:var(--border-mid)}.tdp-min-btn.sel{border-color:var(--text-faint);color:var(--text-primary)}.tdp-tray-clear{font-size:10px;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:2px 0;display:block;margin-top:4px;letter-spacing:.04em}.tdp-tray-clear:hover{color:var(--text-secondary)}.tdp-dur-tray{min-width:220px}.tdp-preset-scroll{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:8px}.tdp-preset-btn{font-size:11px;font-family:IBM Plex Mono,monospace;padding:4px 8px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--detail-bg);color:var(--text-secondary);cursor:pointer;transition:background .1s,border-color .1s}.tdp-preset-btn:hover{background:var(--hover);border-color:var(--border-mid);color:var(--text-primary)}.tdp-preset-btn.sel{border-color:var(--text-faint);color:var(--text-primary);background:var(--hover)}.tdp-tray-custom{display:flex;gap:6px;align-items:center}.tdp-tray-input{flex:1;font-size:12px;font-family:IBM Plex Mono,monospace;color:var(--text-primary);background:var(--detail-bg);border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:5px 7px;outline:none}.tdp-tray-input:focus{border-color:var(--text-faint)}.tdp-tray-input.invalid{border-color:var(--priority-urgent)}.tdp-tray-apply{font-size:11px;padding:5px 10px;border-radius:var(--radius-sm);border:1px solid var(--border-mid);background:transparent;color:var(--text-secondary);cursor:pointer;font-family:Work Sans,sans-serif;white-space:nowrap}.tdp-tray-apply:hover{border-color:var(--text-faint);color:var(--text-primary)}.tdp-select-tray{min-width:140px;padding:6px;display:flex;flex-direction:column;gap:2px}.tdp-select-opt{display:flex;align-items:center;gap:7px;text-align:left;width:100%;padding:7px 10px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:12px;font-family:Work Sans,sans-serif;transition:background .1s,border-color .1s}.tdp-select-opt:hover{background:var(--hover);border-color:var(--border);color:var(--text-primary)}.tdp-select-opt.sel{background:var(--hover);border-color:var(--border-mid);color:var(--text-primary)}.tdp-field-select{font-size:12px;color:var(--text-secondary);background:var(--detail-bg);border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:4px 6px;outline:none;font-family:Work Sans,sans-serif;min-height:28px;cursor:pointer;text-transform:capitalize}.tdp-field-select:focus{border-color:var(--text-faint)}.tdp-section{display:flex;flex-direction:column;gap:6px}.tdp-section-label{font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.tdp-textarea-display{font-size:13px;color:var(--text-secondary);font-style:italic;line-height:1.6;padding:6px 8px;border-radius:var(--radius-sm);min-height:40px;white-space:pre-wrap}.tdp-textarea-display.editable{cursor:text;transition:background .1s}.tdp-textarea-display.editable:hover{background:var(--hover)}.tdp-placeholder{color:var(--text-faint);font-style:italic}.tdp-textarea{font-size:13px;color:var(--text-primary);background:transparent;border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:6px 8px;outline:none;font-family:Work Sans,sans-serif;line-height:1.6;resize:vertical;min-height:60px}.tdp-textarea:focus{border-color:var(--text-faint)}.tdp-subtasks{display:flex;flex-direction:column;gap:2px}.tdp-subtask-empty{font-size:12px;color:var(--text-faint);font-style:italic;padding:4px 0}.tdp-subtask-row{display:flex;align-items:center;gap:8px;padding:4px 0}.tdp-subtask-name{font-size:13px;color:var(--text-secondary)}.tdp-subtask-add-btn{font-size:11px;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:4px 0;text-align:left;font-family:Work Sans,sans-serif;transition:color .1s}.tdp-subtask-add-btn:hover{color:var(--text-secondary)}.tdp-subtask-add-form{display:flex;gap:6px;align-items:center;padding:4px 0}.tdp-subtask-input{flex:1;font-size:12px;color:var(--text-primary);background:transparent;border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:4px 8px;outline:none;font-family:Work Sans,sans-serif}.tdp-subtask-input:focus{border-color:var(--text-faint)}.tdp-links{display:flex;flex-direction:column;gap:4px}.tdp-link-row{display:flex;align-items:center;gap:6px;padding:3px 0}.tdp-link{font-size:12px;color:var(--text-secondary);text-decoration:none;transition:color .1s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.tdp-link:hover{color:var(--text-primary)}.tdp-link-remove{font-size:12px;color:var(--text-faint);background:none;border:none;cursor:pointer;opacity:0;transition:opacity .1s,color .1s;flex-shrink:0}.tdp-link-row:hover .tdp-link-remove{opacity:1}.tdp-link-remove:hover{color:var(--pri-urgent)}.tdp-link-form{display:flex;flex-direction:column;gap:4px;padding:4px 0}.tdp-link-form .tdp-subtask-input{width:100%}.tdp-sessions{display:flex;flex-direction:column;gap:2px;padding:6px 8px;background:var(--detail-bg);border-radius:var(--radius-sm)}.tdp-session-row{display:flex;align-items:center;gap:8px;font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);padding:3px 0}.tdp-session-status{width:14px;text-align:center;flex-shrink:0}.tdp-session-status.done{color:var(--pri-medium)}.tdp-session-date{color:var(--text-secondary);min-width:80px}.tdp-session-dur{color:var(--text-faint);min-width:32px}.tdp-session-notes{color:var(--text-faint);font-style:italic;font-family:Work Sans,sans-serif;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.tdp-domain-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tdp-actions{display:flex;gap:6px;padding-top:8px;border-top:1px solid var(--border-faint);margin-top:auto}.toast{position:fixed;bottom:56px;left:50%;transform:translate(-50%);display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-radius:var(--radius-md);border:1px solid var(--border-mid);background:var(--surface-a);max-width:480px;min-width:280px;z-index:100;cursor:pointer;animation:toast-in .2s ease-out}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.toast-icon{font-size:13px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;flex-shrink:0;margin-top:1px}.toast-content{font-size:13px;color:var(--text-secondary);line-height:1.5;flex:1}.toast-close{font-size:14px;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:0 2px;flex-shrink:0;transition:color .1s}.toast-close:hover{color:var(--text-secondary)}.dashboard{display:flex;flex-direction:column;overflow:hidden;min-height:0;flex:1}.dash-scroll{overflow-y:auto;flex:1;padding:20px 24px 32px;display:flex;flex-direction:column;gap:20px}.dash-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 24px;text-align:center}.dash-empty-icon{font-size:32px;color:var(--text-faint);line-height:1}.dash-empty-title{font-size:18px;font-weight:300;color:var(--text-primary)}.dash-empty-body{font-size:13px;color:var(--text-secondary);max-width:340px;line-height:1.6}.dash-empty-btn{margin-top:8px;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:var(--radius-sm);font-size:13px;font-family:inherit;padding:8px 18px;cursor:pointer}.dash-header-row{display:flex;align-items:baseline;justify-content:space-between}.dash-date{display:flex;align-items:baseline;gap:10px}.dash-day{font-size:22px;font-weight:300;color:var(--text-primary);letter-spacing:.01em}.dash-date-str{font-size:13px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.04em}.dash-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.stat-card{padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-a);display:flex;flex-direction:column;gap:2px}.stat-value{font-size:22px;font-weight:300;color:var(--text-primary);line-height:1.2}.stat-label{font-size:10px;font-weight:500;color:var(--text-faint);letter-spacing:.12em;text-transform:uppercase;font-family:IBM Plex Mono,monospace}.dash-section{display:flex;flex-direction:column;gap:10px}.dash-section-header{display:flex;align-items:center;justify-content:space-between}.dash-section-label{font-size:10px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.dash-see-all{font-size:11px;color:var(--text-faint);background:none;border:none;cursor:pointer;font-family:IBM Plex Mono,monospace;letter-spacing:.04em;transition:color .1s}.dash-see-all:hover{color:var(--text-secondary)}.dash-area-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.area-card{padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-a);cursor:pointer;transition:border-color .15s,background .15s;display:flex;flex-direction:column;gap:10px}.area-card:hover{border-color:var(--border-mid);background:var(--hover)}.area-card-head{display:flex;align-items:center;gap:8px}.area-card-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.area-card-name{font-size:13px;font-weight:500;color:var(--text-primary)}.area-card-count{margin-left:auto;font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.area-card-progress{display:flex;align-items:center;gap:8px}.area-progress-track{flex:1;height:3px;background:var(--progress-track);border-radius:2px;overflow:hidden}.area-progress-fill{height:100%;border-radius:2px;transition:width .3s}.area-progress-label{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;white-space:nowrap;flex-shrink:0}.area-card-projects{display:flex;gap:4px;flex-wrap:wrap}.area-project-tag{font-size:10px;padding:1px 7px;border-radius:3px;background:var(--tag-bg);color:var(--tag-text);font-family:IBM Plex Mono,monospace;letter-spacing:.02em}.area-project-more{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.area-card-top{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:var(--radius-sm);background:var(--detail-bg)}.area-card-top.empty{opacity:.5}.area-top-name{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.area-top-day{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;flex-shrink:0}.area-card-footer{display:flex;align-items:center}.area-backlog-count{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.dash-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dash-panel{padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-a);display:flex;flex-direction:column;gap:12px}.priority-list{display:flex;flex-direction:column;gap:8px}.priority-row{display:flex;align-items:center;gap:8px}.priority-name{font-size:12px;color:var(--text-secondary);width:52px;text-transform:capitalize}.priority-bar-track{flex:1;height:4px;background:var(--progress-track);border-radius:2px;overflow:hidden}.priority-bar-fill{height:100%;background:var(--text-faint);border-radius:2px;transition:width .3s;opacity:.6}.priority-count{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;width:20px;text-align:right}.week-plan{display:flex;flex-direction:column;gap:6px}.week-day-row{display:flex;align-items:center;gap:8px}.week-day-row.today .week-day-label{color:var(--text-primary);font-weight:500}.week-day-label{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;width:28px;flex-shrink:0}.week-bar-track{flex:1;height:6px;background:var(--progress-track);border-radius:3px;overflow:hidden}.week-bar-fill{height:100%;background:var(--text-secondary);border-radius:3px;transition:width .3s;opacity:.35}.week-day-count{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;width:50px;text-align:right;flex-shrink:0}.dash-upcoming{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-a);overflow:hidden}.upcoming-row{display:flex;align-items:center;gap:10px;padding:8px 16px;border-bottom:1px solid var(--border-faint);transition:background .1s}.upcoming-row:last-child{border-bottom:none}.upcoming-row:hover{background:var(--hover)}.upcoming-name{font-size:13px;color:var(--text-primary);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upcoming-day,.upcoming-dur{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;width:40px;text-align:right}.task-row{display:grid;grid-template-columns:18px 3px 1fr 52px 40px 20px;align-items:center;gap:10px;padding:9px 18px;border-bottom:1px solid var(--border-faint);cursor:pointer;transition:background .1s;-webkit-user-select:none;user-select:none}.task-row:hover,.task-row.expanded{background:var(--hover)}.task-row.backlog{opacity:.72}.task-row.dragging{opacity:.3}.task-check{width:14px;height:14px;border:1px solid var(--border-mid);border-radius:var(--check-radius);flex-shrink:0;transition:border-color .15s}.task-check.small{width:12px;height:12px}.task-row:hover .task-check{border-color:var(--text-faint)}.task-name-col{display:flex;align-items:center;gap:6px;overflow:hidden;min-width:0}.task-name{font-size:13px;color:var(--text-primary);font-weight:400;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-open-btn{font-size:16px;color:var(--text-secondary);opacity:0;cursor:pointer;transition:opacity .15s,color .1s;flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.task-row:hover .task-open-btn{opacity:.5}.task-open-btn:hover{opacity:1!important;color:var(--text-primary);background:var(--hover)}.task-day{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-faint);text-align:right}.task-progress{display:flex;flex-direction:column;align-items:flex-end;gap:3px}.task-dur{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-faint);text-align:right}.expand-caret{font-size:13px;color:var(--text-faint);opacity:0;text-align:center;transition:opacity .1s}.task-row:hover .expand-caret,.task-row.expanded .expand-caret{opacity:.7}.task-detail{padding:11px 18px 14px 51px;border-bottom:1px solid var(--border-faint);background:var(--detail-bg)}.detail-context{font-size:12px;font-style:italic;color:var(--text-secondary);line-height:1.6;margin-bottom:10px}.detail-fields{display:flex;gap:20px;margin-bottom:10px;flex-wrap:wrap}.detail-field{display:flex;flex-direction:column;gap:2px}.detail-field-label{font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.detail-field-val{font-size:12px;color:var(--text-secondary);display:flex;align-items:center;gap:5px}.detail-tags{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:11px}.detail-subtasks{margin-bottom:10px}.subtask-row{display:flex;align-items:center;gap:8px;padding:3px 0}.subtask-name{font-size:12px;color:var(--text-secondary)}.detail-actions{display:flex;gap:6px}.quick-add-trigger{display:flex;align-items:center;gap:6px;padding:7px 18px;cursor:pointer;transition:background .1s;-webkit-user-select:none;user-select:none}.quick-add-trigger:hover{background:var(--hover)}.quick-add-plus{font-size:12px;color:var(--text-faint);width:18px;text-align:center}.quick-add-hint{font-size:12px;color:var(--text-faint);font-style:italic}.quick-add-form{display:flex;align-items:center;gap:6px;padding:5px 18px;border-bottom:1px solid var(--border-faint);background:var(--detail-bg)}.quick-add-input{background:transparent;border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:5px 8px;font-size:12px;color:var(--text-primary);font-family:Work Sans,sans-serif;outline:none;transition:border-color .1s}.quick-add-input:focus{border-color:var(--text-faint)}.quick-add-input::placeholder{color:var(--text-faint)}.quick-add-input.name{flex:1}.quick-add-input.day{width:52px;text-align:center}.quick-add-input.dur{width:48px;text-align:center}.quick-add-btn{font-size:10px;padding:5px 12px;border-radius:7px;border:1px solid var(--border-mid);background:var(--btn-primary-bg);color:var(--btn-primary-text);cursor:pointer;font-family:IBM Plex Mono,monospace;letter-spacing:.06em;text-transform:uppercase;transition:opacity .1s}.quick-add-btn:hover{opacity:.86}.quick-add-cancel{font-size:14px;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:2px 4px;transition:color .1s}.quick-add-cancel:hover{color:var(--text-secondary)}.task-list-view{display:flex;flex-direction:column;overflow:hidden;min-height:0;flex:1}.task-list-scroll{overflow-y:auto;flex:1;min-height:0}.task-list-view .content-header{display:flex;align-items:center;gap:0;padding:0 18px;height:38px;border-bottom:1px solid var(--border-faint);flex-shrink:0}.task-list-view .content-tab{font-size:12px;color:var(--text-faint);padding:0 12px;height:100%;display:flex;align-items:center;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .1s,border-color .1s;font-weight:400}.task-list-view .content-tab.active{color:var(--text-primary);border-bottom-color:var(--text-secondary)}.task-list-view .content-tab-sep{width:1px;height:14px;background:var(--border-faint);margin:0 6px}.task-list-view .area-filter-chip{font-size:11px;padding:3px 9px;border-radius:10px;border:1px solid var(--border-faint);background:transparent;color:var(--text-faint);cursor:pointer;margin-left:4px;font-family:IBM Plex Mono,monospace;letter-spacing:.04em;transition:all .1s}.task-list-view .area-filter-chip:hover{border-color:var(--border-mid);color:var(--text-secondary)}.task-list-view .area-filter-chip.active{background:var(--hover);color:var(--text-secondary);border-color:var(--border-mid)}.zone-header{display:flex;align-items:center;gap:10px;padding:10px 18px 7px;position:sticky;top:0;background:var(--surface-b);z-index:2;border-bottom:1px solid var(--border-faint)}.zone-label{font-size:10px;font-weight:500;color:var(--text-faint);letter-spacing:.12em;text-transform:uppercase;font-family:IBM Plex Mono,monospace}.zone-count{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;opacity:.55}.zone-add-btn{margin-left:auto;font-size:10px;color:var(--text-faint);cursor:pointer;font-family:IBM Plex Mono,monospace;background:none;border:none;padding:2px 4px;border-radius:3px;transition:color .1s;opacity:0}.zone-header:hover .zone-add-btn{opacity:1}.zone-add-btn:hover{color:var(--text-secondary)}.zone-empty{padding:16px 18px;font-size:12px;color:var(--text-faint);font-style:italic}.drop-zone{border-radius:var(--radius-md);transition:background .12s,outline .12s;outline:1px solid transparent;min-height:4px}.drop-zone.drop-over{background:#c9a2270d;outline-color:#c9a22740}.area-view{display:flex;flex-direction:column;overflow:hidden;min-height:0;flex:1}.area-view-header{padding:16px 24px 0;border-bottom:1px solid var(--border-faint);flex-shrink:0}.area-view-title{display:flex;align-items:center;gap:10px;margin-bottom:12px}.area-view-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.area-view-name{font-size:18px;font-weight:300;color:var(--text-primary)}.area-view-tabs{display:flex;gap:0}.area-view-tabs .content-tab{font-size:12px;color:var(--text-faint);padding:0 12px 10px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .1s,border-color .1s;font-weight:400}.area-view-tabs .content-tab:hover{color:var(--text-secondary)}.area-view-tabs .content-tab.active{color:var(--text-primary);border-bottom-color:var(--text-secondary)}.area-view-scroll{overflow-y:auto;flex:1;min-height:0}.area-overview{padding:20px 24px 32px;display:flex;flex-direction:column;gap:20px}.area-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.area-section{display:flex;flex-direction:column;gap:10px}.area-top-tasks{border-radius:var(--radius-md);border:1px solid var(--border);overflow:hidden}.area-project-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.project-card{padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-a);display:flex;flex-direction:column;gap:8px;transition:border-color .15s}.project-card.clickable{cursor:pointer}.project-card:hover{border-color:var(--border-mid)}.project-section-head.clickable{cursor:pointer}.project-section-head.clickable:hover .project-section-name{color:var(--text-primary);text-decoration:underline}.project-card-head{display:flex;align-items:center;justify-content:space-between}.project-card-name{font-size:13px;font-weight:500;color:var(--text-primary)}.project-card-status{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.project-card-desc{font-size:12px;color:var(--text-secondary);line-height:1.5}.project-card-meta{display:flex;gap:12px;font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.project-card-priority{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-secondary);text-transform:capitalize}.area-projects-tab{padding:0 0 32px}.project-section{border-bottom:1px solid var(--border);padding-bottom:4px;margin-bottom:4px}.project-section-head{display:flex;align-items:center;gap:10px;padding:14px 24px 8px}.project-section-name{font-size:14px;font-weight:500;color:var(--text-primary)}.project-status-tag{font-size:10px;padding:1px 7px;border-radius:3px;background:var(--tag-bg);color:var(--tag-text);font-family:IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.06em}.project-status-tag.paused{color:var(--watch-text);background:var(--watch-bg)}.project-status-tag.completed{color:var(--pri-medium)}.project-section-count{margin-left:auto;font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.project-section-desc{padding:0 24px 8px;font-size:12px;color:var(--text-secondary);font-style:italic}.zone-header.compact{padding:6px 24px 4px}.area-tasks-tab{padding-bottom:32px}.info-icon-wrap{display:inline-flex;align-items:center;flex-shrink:0}.info-icon-btn{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);cursor:pointer;width:14px;height:14px;border-radius:50%;border:1px solid var(--border-mid);display:inline-flex;align-items:center;justify-content:center;line-height:1;transition:color .1s,border-color .1s;-webkit-user-select:none;user-select:none}.info-icon-wrap:hover .info-icon-btn{color:var(--text-secondary);border-color:var(--text-faint)}.info-icon-wrap.md .info-icon-btn{font-size:10px;width:16px;height:16px}.info-tooltip-portal{position:fixed;z-index:9999;background:var(--surface-b);border:1px solid var(--border-mid);border-radius:var(--radius-md);padding:9px 12px;font-size:11px;font-family:Work Sans,sans-serif;font-weight:400;color:var(--text-secondary);line-height:1.6;width:248px;box-shadow:0 8px 24px #00000059;pointer-events:none}.habits-view{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0}.habits-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 32px 0;flex-shrink:0}.habits-topbar-left{display:flex;flex-direction:column;gap:6px}.habits-tabs{display:flex;gap:2px;padding:14px 32px 0;border-bottom:1px solid var(--border);flex-shrink:0}.habits-tab{font-size:12px;font-family:Work Sans,sans-serif;color:var(--text-faint);background:none;border:none;padding:7px 14px 9px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .1s,border-color .1s}.habits-tab:hover{color:var(--text-secondary)}.habits-tab.active{color:var(--text-primary);border-bottom-color:var(--text-secondary)}.habits-scroll{flex:1;overflow-y:auto;padding:24px 32px 64px;display:flex;flex-direction:column;gap:20px}.habits-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.habits-header-left{display:flex;flex-direction:column;gap:6px}.habits-date{font-size:18px;font-weight:300;color:var(--text-primary);letter-spacing:-.01em}.habits-date-nav{display:flex;align-items:center;gap:4px}.habits-nav-btn{font-size:18px;line-height:1;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:0 6px;border-radius:var(--radius-sm);transition:color .1s,background .1s}.habits-nav-btn:hover:not(:disabled){color:var(--text-secondary);background:var(--hover)}.habits-nav-btn.disabled,.habits-nav-btn:disabled{opacity:.2;cursor:default}.habits-today-badge{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);background:var(--hover);border-radius:3px;padding:1px 5px;margin-left:6px;letter-spacing:.05em;text-transform:uppercase;vertical-align:middle}.habits-progress-wrap{display:flex;align-items:center;gap:10px}.habits-progress-track{width:140px;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.habits-progress-fill{height:100%;background:var(--text-secondary);border-radius:2px;transition:width .4s ease}.habits-progress-label{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint)}.habits-today{display:flex;flex-direction:column;gap:0}.habits-done-divider{display:flex;align-items:center;gap:8px;padding:12px 0 6px;font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.6;letter-spacing:.06em}.habits-done-divider:before,.habits-done-divider:after{content:"";flex:1;height:1px;background:var(--border-faint)}.habits-checklist.faded .habit-check-row{opacity:.45}.habits-all{display:flex;flex-direction:column;gap:12px}.habits-section{display:flex;flex-direction:column;gap:8px}.habits-section-title{font-size:10px;font-family:IBM Plex Mono,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);display:flex;align-items:center;gap:8px;padding-bottom:4px;border-bottom:1px solid var(--border-faint)}.habits-section-count{font-size:10px;color:var(--text-faint);opacity:.6}.habits-empty{font-size:13px;color:var(--text-faint);font-style:italic;padding:8px 0}.habit-check-sub{display:flex;align-items:center;gap:8px}.habit-week-progress{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.7}.habits-tracker-wrap{display:flex;flex-direction:column;gap:12px}.habits-tracker-nav{display:flex;align-items:center;gap:12px;flex-shrink:0}.habits-tracker-nav-btn{font-size:18px;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:2px 8px;border-radius:var(--radius-sm);line-height:1;transition:color .1s,background .1s}.habits-tracker-nav-btn:hover{color:var(--text-secondary);background:var(--hover)}.habits-tracker-month{font-size:14px;font-weight:400;color:var(--text-primary);min-width:160px;letter-spacing:-.01em}.habits-tracker-scroll{overflow-x:auto;padding-bottom:4px}.habits-tracker-grid{display:flex;flex-direction:column;gap:2px;min-width:max-content}.habits-tracker-row{display:flex;align-items:stretch;gap:1px}.habits-tracker-label-cell{width:180px;min-width:180px;display:flex;align-items:center;gap:6px;padding-right:10px;position:sticky;left:0;background:var(--surface-base, var(--bg));z-index:1}.habits-tracker-habit-name{font-size:12px;color:var(--text-secondary);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.habits-tracker-month-count{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.6;flex-shrink:0}.habits-tracker-row.header-row .habits-tracker-label-cell{border-bottom:1px solid var(--border-faint)}.habits-tracker-day-hdr{width:22px;min-width:22px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:4px;gap:1px;border-bottom:1px solid var(--border-faint)}.habits-tracker-day-hdr.today .tracker-day-num{color:var(--text-primary);font-weight:600}.habits-tracker-day-hdr.weekend{opacity:.55}.tracker-day-num{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);line-height:1}.tracker-dow{font-size:7px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.5;line-height:1}.habits-tracker-cell{width:22px;min-width:22px;height:22px;border-radius:3px;flex-shrink:0;cursor:default;transition:opacity .1s}.habits-tracker-cell.miss{background:color-mix(in srgb,var(--pri-urgent) 15%,transparent)}.habits-tracker-cell.skip{background:var(--border-faint, var(--border));opacity:.25}.habits-tracker-cell.future{background:var(--border-faint, var(--border));opacity:.15}.habits-tracker-cell.inactive{background:transparent}.habits-tracker-cell.weekend{opacity:.7}.habits-tracker-cell.today{outline:1.5px solid var(--text-secondary);outline-offset:1px}.habits-tracker-legend{display:flex;gap:16px;padding-top:4px}.tracker-legend-item{display:flex;align-items:center;gap:5px;font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.7}.tracker-legend-cell{display:block;width:12px;height:12px;border-radius:2px}.tracker-legend-cell.done-eg{background:var(--area-virtus);opacity:.85}.tracker-legend-cell.miss{background:color-mix(in srgb,var(--pri-urgent) 15%,transparent)}.tracker-legend-cell.skip{background:var(--border);opacity:.3}.tracker-legend-cell.future{background:var(--border);opacity:.15}.habit-card-goal{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.7;white-space:nowrap}.habit-card-dates{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.5;margin-top:1px}.habits-archived-section{margin-top:8px;display:flex;flex-direction:column;gap:4px}.habit-form-input.date{max-width:140px;color-scheme:dark}.habit-form-label{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);white-space:nowrap;flex-shrink:0}.habit-form-select.flex1{flex:1}.habit-color-bar{width:3px;height:100%;min-height:20px;border-radius:2px;flex-shrink:0;opacity:.8}.habits-checklist{display:flex;flex-direction:column;gap:2px}.habit-check-row{display:flex;align-items:center;gap:12px;padding:10px 12px 10px 10px;border-radius:var(--radius-md);border:1px solid var(--border-faint);background:var(--surface-a);transition:opacity .2s,background .1s;cursor:default}.habit-check-row:hover{background:var(--hover)}.habit-check-row.done{opacity:.55}.habit-check-btn{width:22px;height:22px;border-radius:50%;border:2px solid var(--border-mid);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,border-color .15s,transform .1s}.habit-check-btn:hover{transform:scale(1.1)}.habit-check-btn.checked{border-color:transparent}.habit-check-mark{font-size:11px;color:#fff;line-height:1}.habit-check-info{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.habit-check-name{font-size:14px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.habit-check-row.done .habit-check-name{text-decoration:line-through;color:var(--text-faint)}.habit-check-domain{font-size:10px;font-family:IBM Plex Mono,monospace;opacity:.7}.habit-check-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.habit-streak-badge{display:flex;align-items:center;gap:3px;font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-secondary);background:var(--hover);border-radius:var(--radius-sm);padding:2px 7px}.habit-streak-icon{font-size:11px}.habit-freq-tag{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);background:var(--tag-bg);border:1px solid var(--border-faint);border-radius:3px;padding:1px 6px;white-space:nowrap;letter-spacing:.02em}.habits-card-list{display:flex;flex-direction:column;gap:6px}.habit-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-a);overflow:hidden;transition:border-color .1s}.habit-card:hover,.habit-card.expanded,.habit-card.editing{border-color:var(--border-mid)}.habit-card-main{display:flex;align-items:center;gap:12px;padding:12px 14px 12px 0;cursor:pointer;-webkit-user-select:none;user-select:none}.habit-card-info{flex:1;min-width:0}.habit-card-name{font-size:14px;color:var(--text-primary);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.habit-card-meta{display:flex;align-items:center;gap:8px;margin-top:2px}.habit-card-freq{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint)}.habit-card-domain{font-size:10px;font-family:IBM Plex Mono,monospace;opacity:.7}.habit-card-stats{display:flex;align-items:center;gap:10px;flex-shrink:0}.habit-rate-pill{position:relative;width:64px;height:18px;background:var(--border-faint, var(--border));border-radius:9px;overflow:hidden;display:flex;align-items:center;justify-content:center}.habit-rate-fill{position:absolute;left:0;top:0;height:100%;border-radius:9px;opacity:.35;transition:width .3s ease}.habit-rate-label{position:relative;font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-secondary);z-index:1}.habit-edit-btn{font-size:14px;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);opacity:0;transition:opacity .1s,color .1s;flex-shrink:0}.habit-card-main:hover .habit-edit-btn{opacity:1}.habit-edit-btn:hover{color:var(--text-secondary)}.habit-card-expand{border-top:1px solid var(--border-faint);padding:14px 14px 14px 12px}.habit-heatmap{display:flex;flex-direction:column;gap:4px}.habit-heatmap-header{display:flex;gap:20px;margin-bottom:4px}.habit-heatmap-stat{font-size:12px;font-family:IBM Plex Mono,monospace;color:var(--text-secondary)}.habit-heatmap-stat-label{font-size:10px;color:var(--text-faint)}.habit-heatmap-months{display:flex;padding-left:16px}.habit-heatmap-month-label{flex:1;font-size:8px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);min-width:12px;text-align:left}.habit-heatmap-body{display:flex;gap:3px;align-items:flex-start}.habit-heatmap-dow{display:flex;flex-direction:column;gap:1px;flex-shrink:0}.habit-heatmap-dow-label{font-size:7px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);width:9px;height:10px;line-height:10px;text-align:center;opacity:.4}.habit-heatmap-grid{display:flex;gap:1px;flex:1}.habit-heatmap-col{display:flex;flex-direction:column;gap:1px;flex:1;min-width:10px}.habit-heatmap-cell{display:block;width:100%;height:10px;border-radius:1.5px;flex-shrink:0}.habit-heatmap-cell.empty,.habit-heatmap-cell.skipped{background:transparent}.habit-heatmap-cell.miss{background:var(--border);opacity:.6}.habit-heatmap-cell.today-miss{background:var(--border-mid)}.habit-heatmap-cell.today{outline:1px solid var(--text-faint);outline-offset:1px}.habit-add-form,.habit-edit-form{border:1px solid var(--border-mid);border-radius:var(--radius-md);background:var(--surface-a);padding:14px 16px;display:flex;flex-direction:column;gap:10px}.habit-form-row{display:flex;gap:8px;align-items:center}.habit-form-input{font-size:13px;font-family:Work Sans,sans-serif;color:var(--text-primary);background:transparent;border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:7px 10px;outline:none;flex:1;transition:border-color .1s}.habit-form-input:focus{border-color:var(--text-faint)}.habit-form-input::placeholder{color:var(--text-faint)}.habit-form-select{font-size:11px;font-family:Work Sans,sans-serif;color:var(--text-secondary);background:var(--surface-a);border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:5px 8px;outline:none;cursor:pointer}.habit-form-days{display:flex;gap:4px;flex-wrap:wrap}.habit-day-btn{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 8px;cursor:pointer;transition:color .1s,border-color .1s,background .1s}.habit-day-btn:hover{color:var(--text-secondary);border-color:var(--border-mid)}.habit-day-btn.active{color:var(--text-primary);background:var(--hover);border-color:var(--border-mid)}.habit-form-actions{display:flex;gap:8px;align-items:center}.habits-archived-toggle{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:0;transition:color .1s}.habits-archived-toggle:hover{color:var(--text-secondary)}.habits-archived-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);opacity:.45}.habit-archived-name{font-size:13px;color:var(--text-primary);flex:1;text-decoration:line-through}.habit-restore-btn{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px 7px;cursor:pointer;transition:color .1s,border-color .1s;opacity:0}.habits-archived-row:hover .habit-restore-btn{opacity:1}.habit-restore-btn:hover{color:var(--text-secondary);border-color:var(--border-mid)}.btn.danger{color:var(--pri-urgent)}.btn.danger:hover{background:color-mix(in srgb,var(--pri-urgent) 12%,transparent)}.daily-view{display:flex;flex-direction:column;overflow:hidden;min-height:0;flex:1}.session-bar{display:flex;align-items:center;gap:10px;padding:0 20px;height:40px;border-bottom:1px solid var(--border-faint);background:var(--detail-bg);flex-shrink:0;z-index:10}.session-live-dot{width:6px;height:6px;border-radius:50%;background:var(--pri-medium);flex-shrink:0;animation:pulse-dot 2s infinite}.session-bar-area{width:3px;height:14px;border-radius:2px;flex-shrink:0;opacity:.7}.session-bar-label{font-size:12px;color:var(--text-secondary);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-bar-label strong{color:var(--text-primary);font-weight:500}.session-task-link{cursor:pointer;transition:opacity .1s}.session-task-link:hover{opacity:.7}.session-timer{font-family:IBM Plex Mono,monospace;font-size:13px;color:var(--text-primary);letter-spacing:.04em;flex-shrink:0}.session-bar-btn{font-size:10px;padding:4px 10px;border-radius:7px;border:1px solid var(--border-mid);background:transparent;color:var(--text-faint);cursor:pointer;font-family:IBM Plex Mono,monospace;letter-spacing:.05em;transition:all .1s;flex-shrink:0}.session-bar-btn:hover{color:var(--text-secondary);border-color:var(--text-faint)}.session-bar-btn.complete{background:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--btn-primary-bg)}.session-bar-btn.complete:hover{opacity:.86}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.35}}.daily-layout{display:flex;flex:1;min-height:0;overflow:hidden}.daily-tl-col{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.daily-tl-header{flex-shrink:0;padding:12px 20px 10px;border-bottom:1px solid var(--border-faint);position:relative}.daily-tl-date-row{display:flex;align-items:center;gap:2px;margin-bottom:6px}.daily-tl-date-wrap{flex:1;display:flex;justify-content:center}.daily-tl-date{display:flex;align-items:baseline;gap:10px;padding:2px 8px;border-radius:var(--radius-sm);cursor:pointer;transition:background .1s}.daily-tl-date:hover{background:var(--hover)}.daily-tl-dayname{font-size:20px;font-weight:300;color:var(--text-primary);letter-spacing:.01em}.daily-tl-datestr{font-size:12px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.03em}.daily-today-badge{font-size:9px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.08em;text-transform:uppercase;padding:1px 5px;border-radius:3px;background:var(--tag-bg);border:1px solid var(--tag-border)}.daily-tl-subrow{display:flex;align-items:center;justify-content:space-between;padding:0 4px}.daily-tl-stat{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.03em}.daily-nav-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:18px;color:var(--text-faint);cursor:pointer;border:none;background:transparent;transition:background .1s,color .1s;flex-shrink:0}.daily-nav-btn:hover{background:var(--hover);color:var(--text-secondary)}.daily-today-btn{font-size:10px;padding:3px 9px;border-radius:6px;border:1px solid var(--border-mid);background:transparent;color:var(--text-faint);cursor:pointer;font-family:IBM Plex Mono,monospace;letter-spacing:.06em;transition:all .1s;flex-shrink:0}.daily-today-btn:hover{color:var(--text-secondary);border-color:var(--text-faint)}.daily-range-btn{font-size:9px;padding:3px 8px;border-radius:6px;border:1px solid var(--border-mid);background:transparent;color:var(--text-faint);cursor:pointer;font-family:IBM Plex Mono,monospace;letter-spacing:.06em;transition:all .1s}.daily-range-btn:hover{color:var(--text-secondary);border-color:var(--text-faint)}.date-picker{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:4px;z-index:50;width:240px;padding:12px;border-radius:var(--radius-md);border:1px solid var(--border-mid);background:var(--surface-a);box-shadow:0 8px 24px #0000004d}.dp-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.dp-month{font-size:12px;font-weight:500;color:var(--text-primary)}.dp-nav{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:14px;color:var(--text-faint);cursor:pointer;border:none;background:transparent;transition:background .1s,color .1s}.dp-nav:hover{background:var(--hover);color:var(--text-secondary)}.dp-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.dp-weekday{font-size:9px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;text-align:center;padding:2px 0;letter-spacing:.08em}.dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}.dp-cell{width:30px;height:28px;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:background .1s,color .1s;position:relative}.dp-cell.empty{cursor:default}.dp-cell:not(.empty):hover{background:var(--hover)}.dp-cell.selected{background:var(--btn-primary-bg);color:var(--btn-primary-text);font-weight:500}.dp-cell.today:not(.selected){color:var(--text-primary);font-weight:500}.dp-cell.has-tasks:after{content:"";position:absolute;bottom:3px;width:3px;height:3px;border-radius:50%;background:var(--text-faint)}.dp-cell.selected.has-tasks:after{background:var(--btn-primary-text);opacity:.5}.daily-tl-scroll{flex:1;overflow-y:auto;overflow-x:hidden;position:relative;padding-top:16px}.daily-tl-inner{position:relative;margin-left:0}.daily-tl-hour{position:absolute;left:0;right:0;display:flex;align-items:center;pointer-events:none}.daily-tl-hour-label{width:40px;flex-shrink:0;font-size:9px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;opacity:.5;letter-spacing:.04em;text-align:right;padding-right:8px;transform:translateY(-50%)}.daily-tl-hour-line{flex:1;height:1px;background:var(--border-faint)}.daily-tl-now{position:absolute;left:0;right:0;display:flex;align-items:center;pointer-events:none;z-index:5}.daily-tl-now-dot{width:7px;height:7px;border-radius:50%;background:var(--pri-urgent);flex-shrink:0;margin-left:36px;transform:translateY(-50%)}.daily-tl-now-line{flex:1;height:1px;background:var(--pri-urgent);opacity:.5}.daily-tl-task{position:absolute;left:48px;right:8px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-b);display:flex;overflow:hidden;transition:border-color .1s;z-index:2;cursor:grab}.daily-tl-task:hover{border-color:var(--border-mid);z-index:3}.daily-tl-task:active{cursor:grabbing}.daily-tl-task.active-session{border-color:var(--border-mid);background:var(--detail-bg)}.daily-tl-task-bar{width:3px;flex-shrink:0;align-self:stretch;opacity:.75}.daily-tl-task-body{flex:1;padding:4px 6px;min-width:0;display:flex;flex-direction:column;gap:2px}.daily-tl-task-head{display:flex;align-items:center;gap:5px;min-width:0}.daily-tl-task-name{font-size:12px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.daily-tl-task-meta{display:flex;gap:6px;font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.daily-tl-task-context{font-size:10px;color:var(--text-secondary);font-style:italic;line-height:1.35;opacity:.75;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.daily-tl-task-modes{display:flex;gap:1px;opacity:.25;transition:opacity .12s;flex-shrink:0}.daily-tl-task:hover .daily-tl-task-modes{opacity:1}.daily-tl-start-btn{width:42px;flex-shrink:0;align-self:stretch;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-faint);font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;opacity:0;transition:opacity .1s,background .1s,color .1s;border-left:1px solid var(--border-faint);padding:0 4px;text-align:center;line-height:1.2}.daily-tl-task:hover .daily-tl-start-btn{opacity:.6}.daily-tl-start-btn:hover{background:var(--hover);opacity:1!important;color:var(--text-secondary)}.daily-tl-drop-hint{position:absolute;left:48px;right:8px;top:0;bottom:0;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.06em;border:1.5px dashed var(--border-mid);border-radius:var(--radius-sm);pointer-events:none;z-index:1;opacity:.5}.daily-col-divider{width:6px;flex-shrink:0;cursor:col-resize;position:relative;display:flex;align-items:center;justify-content:center;background:var(--border);transition:background .15s;z-index:10}.daily-col-divider:hover,.daily-col-divider:active{background:var(--border-mid)}.daily-col-divider-handle{width:2px;height:32px;border-radius:2px;background:var(--border-mid);opacity:0;transition:opacity .15s}.daily-col-divider:hover .daily-col-divider-handle{opacity:1}.daily-row-divider{height:6px;flex-shrink:0;cursor:row-resize;position:relative;display:flex;align-items:center;justify-content:center;background:var(--border);transition:background .15s}.daily-row-divider:hover,.daily-row-divider:active{background:var(--border-mid)}.daily-row-divider-handle{width:32px;height:2px;border-radius:2px;background:var(--border-mid);opacity:0;transition:opacity .15s}.daily-row-divider:hover .daily-row-divider-handle{opacity:1}.daily-right-col{flex-shrink:0;display:flex;flex-direction:column;overflow:hidden;background:var(--detail-bg)}.daily-panel-top,.daily-panel-bottom{min-height:0;display:flex;flex-direction:column;overflow:hidden}.daily-panel-header{padding:10px 14px 8px;border-bottom:1px solid var(--border-faint);flex-shrink:0;display:flex;align-items:center;gap:8px}.daily-panel-scroll{flex:1;overflow-y:auto;padding:8px}.daily-panel-empty{font-size:11px;color:var(--text-faint);font-style:italic;padding:12px 4px}.daily-section-count{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;opacity:.6}.daily-panel-drop-hint{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.05em;padding:6px 8px;margin-bottom:4px;border-radius:var(--radius-sm);border:1.5px dashed var(--border-mid);text-align:center;opacity:.6}.daily-filter-tabs{display:flex;gap:2px;margin-left:auto}.daily-filter-tab{display:flex;align-items:center;gap:4px;font-size:10px;padding:3px 8px;border-radius:5px;border:1px solid transparent;background:transparent;color:var(--text-faint);cursor:pointer;font-family:IBM Plex Mono,monospace;letter-spacing:.04em;transition:all .1s}.daily-filter-tab:hover{background:var(--hover);color:var(--text-secondary)}.daily-filter-tab.active{border-color:var(--border-mid);background:var(--hover);color:var(--text-primary)}.df-tab-count{font-size:9px;opacity:.7}.df-task-list{display:flex;flex-direction:column;gap:5px}.df-task-card{display:flex;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-a);overflow:hidden;transition:border-color .15s;cursor:grab}.df-task-card:hover{border-color:var(--border-mid)}.df-task-card:active{cursor:grabbing}.df-task-card.unscheduled{opacity:.65;border-style:dashed}.df-task-card.unscheduled:hover{opacity:1;border-style:solid;border-color:var(--border-mid)}.df-card-bar{width:3px;flex-shrink:0;align-self:stretch;opacity:.7}.df-card-body{flex:1;padding:8px 10px;display:flex;flex-direction:column;gap:5px;min-width:0}.df-card-head{display:flex;align-items:center;gap:6px;min-width:0}.df-card-name{font-size:12px;font-weight:400;color:var(--text-primary);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:opacity .1s;min-width:0}.df-card-name:hover{opacity:.7}.df-card-modes{display:flex;gap:1px;opacity:.25;transition:opacity .12s;flex-shrink:0}.df-task-card:hover .df-card-modes{opacity:1}.df-card-meta{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.df-meta-tag{font-size:9px;font-family:IBM Plex Mono,monospace;padding:1px 5px;border-radius:3px;background:var(--tag-bg);border:1px solid var(--tag-border);color:var(--tag-text);white-space:nowrap}.df-card-context{font-size:11px;font-style:italic;color:var(--text-secondary);line-height:1.4;opacity:.8}.df-card-actions{display:flex;gap:5px;flex-wrap:wrap}.df-mode-btn{width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:13px;color:var(--text-faint);cursor:pointer;border:1px solid transparent;background:transparent;transition:background .1s,color .1s,border-color .1s;padding:0;line-height:1}.df-mode-btn:hover{background:var(--hover);color:var(--text-secondary);border-color:var(--border)}.daily-completed{display:flex;flex-direction:column;gap:1px}.daily-done-row{display:flex;align-items:center;gap:8px;padding:6px 4px;border-radius:var(--radius-sm);transition:background .1s;cursor:default}.daily-done-row:hover{background:var(--hover)}.daily-done-check{font-size:11px;color:var(--pri-medium);width:22px;height:22px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:none;background:transparent;cursor:pointer;transition:background .1s,color .1s;padding:0}.daily-done-check:hover{background:var(--hover);color:var(--text-secondary)}.daily-done-name{font-size:12px;color:var(--text-faint);text-decoration:line-through;text-decoration-color:var(--border-mid);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.daily-done-restore{background:none;border:none;cursor:pointer;color:var(--text-faint);font-size:13px;padding:2px 4px;opacity:0;transition:opacity .1s,color .1s;line-height:1;flex-shrink:0;border-radius:var(--radius-sm)}.daily-done-row:hover .daily-done-restore{opacity:.6}.daily-done-restore:hover{opacity:1!important;color:var(--text-secondary);background:var(--hover)}.df-drag-ghost{position:fixed;z-index:9999;pointer-events:none;padding:5px 10px;border-radius:var(--radius-sm);background:var(--surface-b);border:1px solid var(--border-mid);font-size:12px;color:var(--text-primary);white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis;box-shadow:0 6px 20px #0006;opacity:.92;display:flex;align-items:center;gap:6px}.daily-tl-resize-handle{position:absolute;left:3px;right:0;height:7px;cursor:ns-resize;z-index:5;border-radius:2px;transition:background .1s}.daily-tl-resize-handle.top{top:0;border-radius:4px 4px 0 0}.daily-tl-resize-handle.bottom{bottom:0;border-radius:0 0 4px 4px}.daily-tl-resize-handle:hover{background:#ffffff1f}.df-habits-tray{flex-shrink:0;border-top:1px solid var(--border-faint);border-bottom:1px solid var(--border-faint);background:var(--surface-a)}.df-habits-tray-header{display:flex;align-items:center;gap:6px;width:100%;padding:7px 14px;background:none;border:none;cursor:pointer;text-align:left}.df-habits-tray-title{font-size:10px;font-family:IBM Plex Mono,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);flex:1}.df-habits-tray-count{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.7}.df-habits-tray-caret{font-size:10px;color:var(--text-faint);opacity:.5}.df-habits-list{display:flex;flex-direction:column;gap:1px;padding:2px 10px 8px}.df-habit-row{display:flex;align-items:center;gap:8px;padding:5px 4px;border-radius:var(--radius-sm);transition:opacity .2s}.df-habit-row:hover{background:var(--hover)}.df-habit-row.done{opacity:.45}.df-habit-check{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--border-mid);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:9px;color:#fff;flex-shrink:0;transition:background .15s,border-color .15s}.df-habit-check.checked{border-color:transparent}.df-habit-info{flex:1;display:flex;align-items:center;gap:6px;min-width:0}.df-habit-name{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.df-habit-row.done .df-habit-name{text-decoration:line-through;color:var(--text-faint)}.df-habit-week{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.6;flex-shrink:0}.df-habit-bar{width:2px;height:12px;border-radius:1px;flex-shrink:0;opacity:.6}.weekly-planner{display:flex;flex-direction:column;overflow:hidden;min-height:0;flex:1}.wp-header{padding:16px 24px 12px;border-bottom:1px solid var(--border-faint);flex-shrink:0;display:flex;align-items:center;justify-content:space-between}.wp-nav{display:flex;align-items:center;gap:6px}.wp-week-info{display:flex;flex-direction:column;gap:2px;padding:0 8px}.wp-week-primary{font-size:16px;font-weight:400;color:var(--text-primary);display:flex;align-items:center;gap:8px}.wp-week-secondary{display:flex;align-items:baseline;gap:8px}.wp-week-num{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.04em}.wp-week-range{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.04em;opacity:.6}.wp-header-right{display:flex;align-items:center;gap:12px}.wp-header-stats{display:flex;align-items:center;gap:8px}.wp-stat{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.04em}.wp-stat-sep{color:var(--text-faint);font-size:10px;opacity:.4}.wp-range-btn{font-size:10px;padding:4px 10px;border-radius:7px;border:1px solid var(--border-mid);background:transparent;color:var(--text-faint);cursor:pointer;font-family:IBM Plex Mono,monospace;letter-spacing:.06em;transition:all .1s}.wp-range-btn:hover{color:var(--text-secondary);border-color:var(--text-faint)}.wp-body{overflow-y:auto;flex:1;padding:0 0 32px}.wp-unscheduled{padding:12px 24px;border-bottom:1px solid var(--border);background:var(--detail-bg);transition:background .15s,border-color .15s}.wp-unscheduled.drop-active{background:var(--hover);border-bottom-color:var(--border-mid)}.wp-unscheduled-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.wp-unscheduled-count{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;opacity:.6}.wp-unscheduled-list{display:flex;gap:6px;flex-wrap:wrap}.wp-unscheduled-chip{display:flex;align-items:center;gap:6px;padding:5px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-a);cursor:grab;transition:border-color .15s;-webkit-user-select:none;user-select:none}.wp-unscheduled-chip:hover{border-color:var(--border-mid)}.wp-unscheduled-chip:active{cursor:grabbing;opacity:.7}.wp-chip-name{font-size:12px;color:var(--text-primary);white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis}.wp-chip-dur{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;flex-shrink:0}.wp-unscheduled-empty{font-size:11px;color:var(--text-faint);font-style:italic;padding:2px 0}.wp-days{display:flex;flex-direction:column;gap:6px;padding:10px 12px}.wp-day-card{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-a);overflow:hidden;transition:border-color .15s}.wp-day-card.today{border-color:var(--border-mid)}.wp-day-label{padding:8px 16px 6px;border-bottom:1px solid var(--border-faint);display:flex;align-items:center;justify-content:space-between}.wp-day-label-top{display:flex;align-items:center;gap:6px}.wp-day-name{font-size:13px;font-weight:400;color:var(--text-primary)}.wp-day-card.today .wp-day-name{font-weight:500}.wp-today-dot{width:5px;height:5px;border-radius:50%;background:var(--text-secondary)}.wp-day-label-meta{display:flex;align-items:center;gap:10px}.wp-day-date{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.wp-day-julian{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;opacity:.5;letter-spacing:.04em}.wp-day-est{font-size:10px;color:var(--text-secondary);font-family:IBM Plex Mono,monospace}.wp-timeline-container{overflow-x:auto;overflow-y:hidden;position:relative;min-height:118px;transition:background .1s}.wp-timeline-container.drop-active{background:var(--hover)}.wp-timeline{position:relative;min-height:118px}.wp-hour-markers{display:flex;position:absolute;top:0;left:0;bottom:0;pointer-events:none}.wp-hour-mark{flex-shrink:0;border-right:1px solid var(--border-faint);position:relative;height:100%}.wp-hour-label{position:absolute;top:3px;left:4px;font-size:9px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;opacity:.35;letter-spacing:.04em}.wp-timeline-tasks{position:relative;z-index:1;min-height:118px;padding:22px 0 4px}.wp-task-block{display:flex;align-items:center;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-b);overflow:hidden;cursor:grab;transition:border-color .15s;-webkit-user-select:none;user-select:none;height:28px}.wp-task-block:hover{border-color:var(--border-mid)}.wp-task-block:active{cursor:grabbing}.wp-block-bar{width:3px;align-self:stretch;flex-shrink:0;opacity:.7}.wp-block-body{display:flex;align-items:center;gap:5px;padding:0 7px;overflow:hidden;flex:1}.wp-block-name{font-size:11px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wp-block-time,.wp-block-dur{font-size:9px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;flex-shrink:0}.wp-task-outer{position:absolute;pointer-events:none}.wp-task-slot{position:relative;display:flex;align-items:center;height:22px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-b);overflow:hidden;cursor:grab;-webkit-user-select:none;user-select:none;pointer-events:all;transition:border-color .1s}.wp-task-slot:hover{border-color:var(--border-mid)}.wp-task-slot:active{cursor:grabbing}.wp-slot-bar{width:3px;align-self:stretch;flex-shrink:0;opacity:.8}.wp-slot-meta{display:flex;align-items:center;gap:3px;padding:0 4px;overflow:hidden;flex:1;min-width:0}.wp-task-name-below{display:flex;align-items:center;gap:4px;padding:3px 0 0 3px;white-space:nowrap;pointer-events:none;position:relative;z-index:3}.wp-task-name-below .wp-block-name{font-size:11px;color:var(--text-primary);overflow:visible;text-overflow:unset}.wp-resize-handle{position:absolute;top:0;bottom:0;width:7px;cursor:col-resize;z-index:4;pointer-events:all}.wp-resize-handle.left{left:0}.wp-resize-handle.right{right:0}.wp-resize-handle:hover{background:#ffffff24}.wp-open-btn{pointer-events:all;background:none;border:none;cursor:pointer;color:var(--text-faint);font-size:10px;padding:0 4px;opacity:.35;transition:opacity .1s;flex-shrink:0;line-height:1}.wp-task-block:hover .wp-open-btn,.wp-unscheduled-chip:hover .wp-open-btn,.wp-task-name-below .wp-open-btn{opacity:.5}.wp-open-btn:hover{opacity:1!important;color:var(--text-secondary)}.wp-day-empty-hint{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:11px;color:var(--text-faint);font-style:italic;pointer-events:none}.wp-day-unslotted{border-top:1px dashed var(--border-faint);padding:6px 8px;min-height:32px;background:var(--detail-bg);transition:background .15s;display:flex;align-items:center}.wp-day-unslotted.drop-hint{background:var(--hover)}.wp-day-unslotted-tasks{display:flex;gap:4px;flex-wrap:wrap}.wp-day-unslotted .wp-task-block{opacity:.7}.wp-day-unslotted .wp-task-block:hover{opacity:1;border-color:var(--border-mid)}.wp-drop-label{font-size:10px;color:var(--text-faint);font-style:italic;padding:2px 4px}.wp-drag-ghost{position:fixed;display:flex;align-items:center;gap:6px;padding:5px 10px 5px 0;background:var(--surface-a);border:1px solid var(--border-mid);border-radius:var(--radius-sm);box-shadow:0 4px 12px #0006;pointer-events:none;z-index:9999;white-space:nowrap;max-width:240px;overflow:hidden}.wp-ghost-bar{width:3px;align-self:stretch;flex-shrink:0;opacity:.8}.wp-ghost-name{font-size:12px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis}.wp-quick-add-form{display:flex;align-items:center;gap:6px;padding:6px 0 4px;width:100%}.wp-quick-add-input{flex:1;font-size:12px;font-family:Work Sans,sans-serif;color:var(--text-primary);background:var(--detail-bg);border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:5px 8px;outline:none;min-width:0}.wp-quick-add-input:focus{border-color:var(--text-faint)}.wp-quick-add-input::placeholder{color:var(--text-faint);opacity:.5}.wp-quick-add-btn{font-size:11px;padding:5px 10px;border-radius:var(--radius-sm);border:1px solid var(--border-mid);background:transparent;color:var(--text-secondary);cursor:pointer;font-family:Work Sans,sans-serif;white-space:nowrap}.wp-quick-add-btn:hover{border-color:var(--text-faint);color:var(--text-primary)}.wp-quick-add-cancel{background:none;border:none;cursor:pointer;color:var(--text-faint);font-size:14px;padding:0 4px;line-height:1}.wp-quick-add-cancel:hover{color:var(--text-secondary)}.wp-add-btn{background:none;border:none;cursor:pointer;color:var(--text-faint);font-size:14px;padding:0 2px;line-height:1;opacity:.4;transition:opacity .1s;flex-shrink:0}.wp-add-btn:hover{opacity:1;color:var(--text-secondary)}.wp-unscheduled-actions{display:flex;align-items:center;gap:6px}.wp-bucket-footer{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:20px}.wp-snap-indicator{position:absolute;top:0;bottom:0;width:1px;background:var(--text-secondary);pointer-events:none;z-index:10;opacity:.7}.wp-snap-time{position:absolute;top:2px;left:4px;font-size:9px;color:var(--text-secondary);font-family:IBM Plex Mono,monospace;white-space:nowrap;background:var(--surface-a);padding:0 2px;border-radius:2px}.wp-slot-modes{display:flex;gap:1px;opacity:.25;transition:opacity .12s;flex-shrink:0;margin-right:4px}.wp-task-slot:hover .wp-slot-modes{opacity:1}.wp-mode-btn{width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:3px;font-size:11px;color:var(--text-faint);cursor:pointer;border:1px solid transparent;background:transparent;transition:background .1s,color .1s;padding:0;line-height:1}.wp-mode-btn:hover{background:var(--hover);color:var(--text-secondary);border-color:var(--border)}.cal-view{display:flex;flex-direction:column;overflow:hidden;min-height:0;flex:1}.cal-header{padding:16px 24px 12px;border-bottom:1px solid var(--border-faint);flex-shrink:0;display:flex;align-items:center;justify-content:space-between}.cal-nav{display:flex;align-items:center;gap:8px}.cal-nav-btn{background:none;border:1px solid var(--border-mid);border-radius:var(--radius-sm);color:var(--text-faint);cursor:pointer;font-size:16px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;line-height:1;transition:color .1s,border-color .1s}.cal-nav-btn:hover{color:var(--text-secondary);border-color:var(--border-mid)}.cal-month-title{display:flex;align-items:baseline;gap:6px;padding:0 4px;min-width:160px}.cal-month-name{font-size:16px;font-weight:400;color:var(--text-primary)}.cal-month-year{font-size:12px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.04em}.cal-today-btn{font-size:10px;padding:4px 10px;border-radius:7px;border:1px solid var(--border-mid);background:transparent;color:var(--text-faint);cursor:pointer;font-family:IBM Plex Mono,monospace;letter-spacing:.06em;transition:all .1s;margin-left:4px}.cal-today-btn:hover{color:var(--text-secondary);border-color:var(--text-faint)}.cal-header-stats{display:flex;align-items:center;gap:8px}.cal-stat{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.04em}.cal-stat-sep{color:var(--text-faint);font-size:10px;opacity:.4}.cal-body{display:flex;flex:1;overflow:hidden;min-height:0}.cal-grid-wrap{flex:1;display:flex;flex-direction:column;overflow-y:auto;min-width:0;padding:0 0 24px}.cal-dow-row{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--border-faint);flex-shrink:0;position:sticky;top:0;background:var(--surface-a);z-index:10}.cal-dow{padding:6px 10px 5px;font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.08em;text-transform:uppercase;text-align:center}.cal-weeks{flex:1}.cal-week-row{border-bottom:1px solid var(--border-faint)}.cal-week-row:last-child{border-bottom:none}.cal-week-band{display:flex;align-items:center;gap:8px;padding:4px 10px 3px;border-bottom:1px solid var(--border-faint);background:var(--detail-bg)}.cal-band-label{font-size:9px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.04em;white-space:nowrap;opacity:.6;flex-shrink:0}.cal-band-chips{display:flex;gap:4px;flex-wrap:nowrap;overflow:hidden;min-width:0}.cal-band-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 7px 2px 0;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-a);cursor:pointer;white-space:nowrap;font-size:10px;color:var(--text-secondary);transition:border-color .1s;overflow:hidden}.cal-band-chip:hover{border-color:var(--border-mid);color:var(--text-primary)}.cal-band-bar{width:3px;align-self:stretch;flex-shrink:0;opacity:.7}.cal-band-name{max-width:120px;overflow:hidden;text-overflow:ellipsis}.cal-band-more{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;flex-shrink:0;padding:2px 4px}.cal-day-row{display:grid;grid-template-columns:repeat(7,1fr);min-height:90px}.cal-day{border-right:1px solid var(--border-faint);padding:6px 8px;min-height:90px;cursor:pointer;transition:background .1s;position:relative;overflow:hidden}.cal-day:last-child{border-right:none}.cal-day:hover{background:var(--hover)}.cal-day.out-of-month{opacity:.3;cursor:default}.cal-day.out-of-month:hover{background:transparent}.cal-day.today .cal-date-num{background:var(--text-faint);color:var(--surface-a);border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.cal-day.selected{background:var(--hover);outline:1px solid var(--border-mid);outline-offset:-1px}.cal-day-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.cal-date-num{font-size:11px;color:var(--text-secondary);font-family:IBM Plex Mono,monospace;line-height:1;min-width:20px;text-align:center}.cal-day.today .cal-date-num{color:var(--surface-a);font-weight:500}.cal-add-day-btn{background:none;border:none;cursor:pointer;color:var(--text-faint);font-size:14px;line-height:1;padding:0 2px;opacity:0;transition:opacity .1s}.cal-day:hover .cal-add-day-btn{opacity:.5}.cal-add-day-btn:hover{opacity:1!important;color:var(--text-secondary)}.cal-task-chip{display:flex;align-items:center;gap:4px;margin-bottom:2px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-b);overflow:hidden;cursor:pointer;transition:border-color .1s;-webkit-user-select:none;user-select:none;min-width:0}.cal-task-chip:hover{border-color:var(--border-mid);background:var(--hover)}.cal-task-chip:last-of-type{margin-bottom:0}.cal-chip-bar{width:3px;align-self:stretch;flex-shrink:0;opacity:.8}.cal-chip-time{font-size:9px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;flex-shrink:0;padding-right:1px}.cal-chip-name{font-size:11px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;padding:3px 6px 3px 0;min-width:0}.cal-overflow{font-size:9px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;padding:1px 2px 0;opacity:.7}.cal-quick-add{display:flex;align-items:center;gap:4px;width:100%;padding:2px 0}.cal-quick-input{flex:1;font-size:11px;font-family:Work Sans,sans-serif;color:var(--text-primary);background:var(--detail-bg);border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:4px 6px;outline:none;min-width:0}.cal-quick-input:focus{border-color:var(--text-faint)}.cal-quick-input::placeholder{color:var(--text-faint);opacity:.5}.cal-quick-submit{font-size:10px;padding:4px 7px;border-radius:var(--radius-sm);border:1px solid var(--border-mid);background:transparent;color:var(--text-secondary);cursor:pointer;font-family:Work Sans,sans-serif;white-space:nowrap;flex-shrink:0}.cal-quick-submit:hover{border-color:var(--text-faint);color:var(--text-primary)}.cal-quick-cancel{background:none;border:none;cursor:pointer;color:var(--text-faint);font-size:13px;padding:0 2px;line-height:1;flex-shrink:0}.cal-quick-cancel:hover{color:var(--text-secondary)}.cal-day-panel{width:260px;flex-shrink:0;border-left:1px solid var(--border);display:flex;flex-direction:column;background:var(--detail-bg);overflow:hidden}.cal-panel-header{padding:14px 16px 10px;border-bottom:1px solid var(--border-faint);display:flex;align-items:flex-start;justify-content:space-between;flex-shrink:0}.cal-panel-title{display:flex;flex-direction:column;gap:2px}.cal-panel-dow{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.06em;text-transform:uppercase}.cal-panel-date{font-size:15px;color:var(--text-primary);font-weight:400}.cal-panel-today-badge{display:inline-block;font-size:9px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;border:1px solid var(--border-mid);border-radius:4px;padding:1px 5px;letter-spacing:.04em;margin-top:2px;align-self:flex-start}.cal-panel-close{background:none;border:none;cursor:pointer;color:var(--text-faint);font-size:16px;line-height:1;padding:0;opacity:.5;transition:opacity .1s}.cal-panel-close:hover{opacity:1}.cal-panel-empty{padding:20px 16px;font-size:12px;color:var(--text-faint);font-style:italic}.cal-panel-tasks{flex:1;overflow-y:auto;padding:8px 10px;display:flex;flex-direction:column;gap:3px}.cal-panel-task{display:flex;align-items:stretch;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-a);cursor:pointer;overflow:hidden;transition:border-color .1s;-webkit-user-select:none;user-select:none}.cal-panel-task:hover{border-color:var(--border-mid)}.cal-panel-task-bar{width:3px;flex-shrink:0;opacity:.7}.cal-panel-task-body{flex:1;padding:6px 8px;min-width:0}.cal-panel-task-top{display:flex;align-items:center;gap:5px}.cal-panel-task-name{font-size:12px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-panel-task-meta{display:flex;align-items:center;gap:6px;margin-top:3px;font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.cal-panel-footer{padding:10px;border-top:1px solid var(--border-faint);flex-shrink:0}.cal-panel-add-btn{width:100%;padding:7px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;color:var(--text-faint);cursor:pointer;font-size:11px;font-family:Work Sans,sans-serif;text-align:left;transition:all .1s}.cal-panel-add-btn:hover{border-color:var(--border-mid);color:var(--text-secondary);background:var(--hover)}.ns-view{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0}.ns-scroll{flex:1;overflow-y:auto;padding:28px 32px;display:flex;flex-direction:column;gap:28px}.ns-section-label{font-size:10px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--text-faint);font-family:IBM Plex Mono,monospace;margin-bottom:14px}.ns-section-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.ns-section-header-row .ns-section-label{margin-bottom:0}.ns-statements-section{max-width:680px}.ns-statements{display:flex;flex-direction:column;gap:4px}.ns-statement{display:grid;grid-template-columns:28px 1fr 24px;align-items:start;gap:12px;padding:10px 0;border-bottom:1px solid var(--border-faint);transition:background .1s}.ns-statement:last-of-type{border-bottom:none}.ns-ordinal{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);padding-top:3px}.ns-statement-text{font-size:17px;font-weight:300;color:var(--text-primary);line-height:1.5;cursor:text;padding:2px 4px;border-radius:var(--radius-sm);transition:background .1s}.ns-statement-text:hover{background:var(--hover)}.ns-statement-input{font-size:17px;font-weight:300;color:var(--text-primary);background:transparent;border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:4px 8px;outline:none;font-family:Work Sans,sans-serif;line-height:1.5;resize:none;width:100%}.ns-statement-input:focus{border-color:var(--text-faint)}.ns-statement-delete{font-size:14px;color:var(--text-faint);background:none;border:none;cursor:pointer;opacity:0;padding:3px 4px 2px;border-radius:var(--radius-sm);transition:opacity .1s,color .1s}.ns-statement:hover .ns-statement-delete{opacity:1}.ns-statement-delete:hover{color:var(--pri-urgent)}.ns-placeholder{color:var(--text-faint);font-style:italic}.ns-add-statement{font-size:11px;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:8px 0 4px;text-align:left;font-family:Work Sans,sans-serif;transition:color .1s}.ns-add-statement:hover{color:var(--text-secondary)}.ns-divider{border:none;border-top:1px solid var(--border)}.ns-seasons-section{display:flex;flex-direction:column;max-width:820px}.ns-empty{font-size:12px;color:var(--text-faint);font-style:italic;padding:8px 0}.ns-empty-inner{font-size:11px;color:var(--text-faint);font-style:italic;padding:6px 0 4px 28px}.ns-season-card{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;margin-bottom:10px;background:var(--surface-a)}.ns-season-card.active{border-color:var(--border-mid)}.ns-season-header{display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;transition:background .1s}.ns-season-header:hover{background:var(--hover)}.ns-caret{font-size:9px;color:var(--text-faint);transition:transform .15s;flex-shrink:0}.ns-caret.open{transform:rotate(90deg)}.ns-season-title-block{flex:1;display:flex;align-items:baseline;gap:10px;min-width:0}.ns-season-title{font-size:13px;font-weight:500;color:var(--text-primary)}.ns-season-range{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint)}.ns-season-progress{display:flex;align-items:center;gap:8px;padding:0 14px 10px}.ns-progress-track{flex:1;height:2px;background:var(--progress-track);border-radius:1px;overflow:hidden}.ns-progress-fill{height:100%;background:var(--progress-fill);border-radius:1px;transition:width .3s}.ns-progress-label{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);min-width:28px;text-align:right}.ns-season-body{padding:4px 14px 14px;border-top:1px solid var(--border-faint);display:flex;flex-direction:column;gap:8px}.ns-season-notes{font-size:12px;color:var(--text-faint);font-style:italic;line-height:1.55;padding:4px 0 2px;margin:0}.ns-year-goal{padding:8px 0;border-bottom:1px solid var(--border-faint)}.ns-year-goal:last-of-type{border-bottom:none}.ns-year-goal-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.ns-area-bar{width:3px;height:14px;border-radius:2px;flex-shrink:0;opacity:.7}.ns-year-label{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);flex-shrink:0}.ns-year-title{font-size:13px;color:var(--text-primary);flex:1}.ns-sprints-list{display:flex;flex-direction:column;gap:1px;padding-left:24px}.ns-sprint-row{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:var(--radius-sm);font-size:12px;color:var(--text-secondary);transition:background .1s}.ns-sprint-row.current{cursor:pointer;color:var(--text-primary)}.ns-sprint-row.current:hover{background:var(--hover)}.ns-sprint-row.complete{opacity:.5}.ns-sprint-quarter{font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--text-faint);min-width:44px}.ns-sprint-title{flex:1;font-size:12px}.ns-current-badge{font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);background:var(--tag-bg);border:1px solid var(--border-mid);border-radius:3px;padding:1px 6px}.ns-done-mark{font-size:10px;color:var(--pri-medium);opacity:.6}.ns-status-badge{font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:3px;flex-shrink:0}.ns-status-badge.active{color:var(--pri-medium);background:#4e88581a}.ns-status-badge.upcoming{color:var(--text-faint);background:var(--tag-bg)}.ns-status-badge.complete{color:var(--text-faint);background:var(--tag-bg);text-decoration:line-through;opacity:.6}.ns-status-badge.sm{font-size:8px;padding:1px 5px}.ns-label-row{display:flex;align-items:center;gap:6px;margin-bottom:0}.ns-label-row .ns-section-label{margin-bottom:0}.ns-season-card.complete-season{opacity:.75}.ns-season-card.complete-season:hover{opacity:1}.ns-retro-section{border:1px solid var(--border-faint);border-radius:var(--radius-sm);overflow:hidden;margin:2px 0 8px}.ns-retro-header{display:flex;align-items:center;gap:8px;padding:8px 10px;cursor:pointer;transition:background .1s;background:var(--detail-bg)}.ns-retro-header:hover{background:var(--hover)}.ns-retro-label{font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);font-family:IBM Plex Mono,monospace;flex:1}.ns-retro-editor{padding:10px 10px 4px;background:var(--detail-bg);display:flex;flex-direction:column;gap:12px}.ns-retro-field{display:flex;flex-direction:column;gap:4px}.ns-retro-field-label{font-size:10px;font-family:IBM Plex Mono,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.ns-retro-display{font-size:12px;color:var(--text-secondary);font-style:italic;line-height:1.6;padding:5px 6px;border-radius:var(--radius-sm);min-height:36px;transition:background .1s}.ns-retro-display.editable{cursor:text}.ns-retro-display.editable:hover{background:var(--hover)}.ns-retro-textarea{font-size:12px;color:var(--text-primary);background:transparent;border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:5px 6px;outline:none;font-family:Work Sans,sans-serif;font-style:italic;line-height:1.6;resize:vertical}.ns-retro-textarea:focus{border-color:var(--text-faint)}.ns-year-goal-header .info-icon-wrap{margin-right:2px}.ns-add-year-btn{font-size:11px;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:4px 0;text-align:left;font-family:Work Sans,sans-serif;transition:color .1s;margin-top:4px}.ns-add-year-btn:hover{color:var(--text-secondary)}.ns-statement-card{display:flex;align-items:flex-start;gap:12px;padding:14px 12px;border-radius:var(--radius-md);border:1px solid var(--border-faint);background:var(--surface-a);transition:border-color .1s;position:relative}.ns-statement-card:hover,.ns-statement-card.editing{border-color:var(--border-mid)}.ns-statement-fields{flex:1;display:flex;flex-direction:column;gap:5px;min-width:0}.ns-field-statement{font-size:15px;color:var(--text-primary);line-height:1.5;cursor:text}.ns-field-statement:hover{color:var(--text-primary)}.ns-field-mantra{font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--text-secondary);cursor:text;font-family:Work Sans,sans-serif}.ns-field-mantra.empty{font-weight:400}.ns-field-description{font-size:12px;font-style:italic;color:var(--text-faint);line-height:1.6;cursor:text}.ns-field-input{background:transparent;border:none;border-bottom:1px solid var(--border-mid);color:var(--text-primary);font-family:inherit;font-size:inherit;line-height:inherit;width:100%;outline:none;resize:none;padding:2px 0}.ns-field-input.mantra{font-size:12px;font-weight:600;letter-spacing:.04em;font-family:Work Sans,sans-serif}.ns-field-input.description{font-style:italic;font-size:12px;color:var(--text-faint)}.ns-field-input.statement{font-size:15px}.ns-placeholder-sm{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.4;font-style:normal;font-weight:400;letter-spacing:.02em}.ns-current-season-section{display:flex;flex-direction:column;gap:10px}.ns-current-season-label{display:flex;align-items:center;gap:10px}.ns-active-badge{font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--area-virtus, #4a90d9);background:color-mix(in srgb,var(--area-virtus, #4a90d9) 12%,transparent);border:1px solid color-mix(in srgb,var(--area-virtus, #4a90d9) 30%,transparent);border-radius:3px;padding:1px 6px}.ns-current-season-card{border:1px solid var(--border-mid);border-radius:var(--radius-md);background:var(--surface-a);padding:20px 24px 16px;cursor:pointer;transition:border-color .15s,background .1s}.ns-current-season-card:hover{border-color:var(--text-faint);background:var(--hover)}.ns-cs-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}.ns-cs-title{font-size:20px;font-weight:300;color:var(--text-primary);letter-spacing:-.02em}.ns-cs-range{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);flex-shrink:0}.ns-cs-notes{font-size:12px;color:var(--text-faint);font-style:italic;margin:0 0 12px;line-height:1.6}.ns-cs-progress-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.ns-cs-track{flex:1;height:3px;background:var(--border);border-radius:2px;overflow:hidden}.ns-cs-fill{height:100%;background:var(--text-secondary);border-radius:2px;transition:width .4s ease}.ns-cs-pct{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);min-width:36px;text-align:right}.ns-cs-footer{display:flex;justify-content:flex-end}.ns-cs-hint{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.5}.ns-no-season{font-size:13px;color:var(--text-faint);font-style:italic;padding:20px 0;display:flex;align-items:center;gap:8px}.ns-link-btn{background:none;border:none;color:var(--text-secondary);font-size:inherit;font-family:inherit;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px;transition:color .1s}.ns-link-btn:hover{color:var(--text-primary)}.ns-carousel-section{display:flex;flex-direction:column;width:100%}.ns-carousel-wrap{display:flex;flex-direction:column;align-items:center;gap:12px;padding:4px 0 8px}.ns-carousel-row{display:flex;align-items:center;gap:6px;width:100%}.ns-carousel-outer{flex:1;position:relative;height:230px;overflow:hidden;mask-image:linear-gradient(to right,transparent 0%,black 12%,black 88%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 12%,black 88%,transparent 100%)}.ns-arc-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.ns-carousel-stage{position:relative;width:100%;height:100%;z-index:1}.ns-carousel-card{position:absolute;left:calc(50% - 140px);top:12px;width:280px;height:168px;background:var(--surface-a);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px 18px 12px;cursor:pointer;transform-origin:center top;transition:transform .42s cubic-bezier(.25,.46,.45,.94),opacity .35s ease,border-color .15s;display:flex;flex-direction:column;gap:5px;overflow:hidden;box-sizing:border-box;-webkit-user-select:none;user-select:none}.ns-carousel-card.ns-cc-focused{border-color:var(--border-mid);box-shadow:0 4px 24px #0000002e}.ns-carousel-card.ns-cc-active{border-color:var(--border-mid)}.ns-carousel-card:not(.ns-cc-focused):hover{border-color:var(--border-mid)}.ns-cc-top{display:flex;align-items:center;gap:6px}.ns-cc-pip{width:6px;height:6px;border-radius:50%;flex-shrink:0}.ns-cc-pip.status-active{background:var(--pri-medium)}.ns-cc-pip.status-upcoming{background:var(--text-faint);opacity:.5}.ns-cc-pip.status-complete{background:var(--text-faint);opacity:.3}.ns-cc-status-lbl{font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint)}.ns-cc-retro-hint{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.5;margin-left:auto}.ns-carousel-card .ns-cc-title{font-size:15px;font-weight:500;color:var(--text-primary);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ns-carousel-card.status-complete .ns-cc-title{color:var(--text-faint)}.ns-cc-range{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint)}.ns-cc-notes{font-size:11px;color:var(--text-faint);font-style:italic;line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.ns-cc-progress{display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:4px}.ns-cc-track{flex:1;height:2px;background:var(--border);border-radius:1px;overflow:hidden}.ns-cc-fill{height:100%;background:var(--text-secondary);border-radius:1px;transition:width .4s ease}.ns-cc-pct{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);min-width:28px;text-align:right}.ns-cc-open-hint{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.45;text-align:right;margin-top:auto;padding-top:2px}.ns-carousel-arrow{flex-shrink:0;width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--surface-a);color:var(--text-secondary);font-size:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s,color .1s,opacity .15s;line-height:1;padding:0}.ns-carousel-arrow:hover:not(:disabled){border-color:var(--border-mid);color:var(--text-primary)}.ns-carousel-arrow:disabled{opacity:.18;cursor:default}.ns-carousel-footer{display:flex;align-items:center;gap:12px}.ns-carousel-dots{display:flex;align-items:center;gap:5px}.ns-carousel-dot{width:5px;height:5px;border-radius:50%;background:var(--border-mid);border:none;padding:0;cursor:pointer;transition:background .2s,transform .2s}.ns-carousel-dot.active{background:var(--text-secondary);transform:scale(1.4)}.ns-carousel-dot:hover:not(.active){background:var(--text-faint)}.ns-carousel-counter{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.5}.seasons-view{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0}.seasons-scroll{flex:1;overflow-y:auto;padding:24px 32px;display:flex;flex-direction:column;gap:16px}.seasons-empty{padding:40px;text-align:center;color:var(--text-faint);font-size:13px;line-height:2}.seasons-link-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:13px;text-decoration:underline;font-family:Work Sans,sans-serif;padding:0}.seasons-link-btn:hover{color:var(--text-primary)}.season-block{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-a)}.season-block.hero{border-color:var(--border-mid)}.season-block.upcoming{opacity:.65}.season-block-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;cursor:pointer;transition:background .1s;gap:12px}.season-block-header:hover{background:var(--hover)}.season-block-left{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.season-caret{font-size:9px;color:var(--text-faint);transition:transform .15s;flex-shrink:0}.season-caret.open{transform:rotate(90deg)}.season-caret.sm{font-size:8px}.season-block-title-group{display:flex;flex-direction:column;gap:2px;min-width:0}.season-title-row{display:flex;align-items:center;gap:6px}.season-block-title{font-size:14px;font-weight:500;color:var(--text-primary)}.season-block-range{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint)}.season-block-days{opacity:.6}.season-block-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.season-active-label{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint)}.season-status-badge{font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:3px;flex-shrink:0}.season-status-badge.active{color:var(--pri-medium);background:#4e88581a}.season-status-badge.upcoming{color:var(--text-faint);background:var(--tag-bg)}.season-status-badge.complete{color:var(--text-faint);background:var(--tag-bg);opacity:.6}.season-status-badge.sm{font-size:8px;padding:1px 5px}.season-timeline-wrap{padding:4px 16px 12px;border-bottom:1px solid var(--border-faint)}.season-timeline-bar{position:relative;height:20px;background:var(--progress-track);border-radius:2px;overflow:visible;margin-bottom:4px}.season-timeline-fill{position:absolute;left:0;top:0;height:100%;background:var(--progress-fill);border-radius:2px 0 0 2px}.season-sprint-band{position:absolute;top:0;height:100%;border-top:2px solid;background:#fffdf00a;border-radius:1px;transition:background .1s;box-sizing:border-box}.season-sprint-band.current{background:#fffdf012;cursor:pointer}.season-sprint-band.current:hover{background:#fffdf01c}.season-sprint-band.complete{opacity:.5}.season-today-marker{position:absolute;top:-3px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;z-index:2;pointer-events:none}.season-today-line{width:1px;height:26px;background:var(--text-secondary);opacity:.5}.season-today-dot{width:5px;height:5px;border-radius:50%;background:var(--text-secondary);opacity:.7;margin-top:-3px}.season-edit-btn{font-size:12px;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:2px 6px;border-radius:var(--radius-sm);opacity:0;transition:opacity .1s,color .1s;flex-shrink:0}.season-block-header:hover .season-edit-btn{opacity:1}.season-edit-btn:hover{color:var(--text-secondary);background:var(--hover)}.season-edit-panel{padding:12px 16px 14px;border-bottom:1px solid var(--border-faint);background:var(--detail-bg);display:flex;flex-direction:column;gap:10px}.season-edit-row{display:grid;grid-template-columns:60px 1fr;align-items:center;gap:10px}.season-edit-row.notes{align-items:start}.season-edit-label{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);text-transform:uppercase;letter-spacing:.07em}.season-edit-input{font-size:13px;font-family:Work Sans,sans-serif;color:var(--text-primary);background:transparent;border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:5px 8px;outline:none;transition:border-color .1s}.season-edit-input:focus{border-color:var(--text-faint)}.season-edit-input.date{font-family:IBM Plex Mono,monospace;font-size:12px;color-scheme:dark;width:140px}.season-edit-select{font-size:12px;font-family:Work Sans,sans-serif;color:var(--text-primary);background:var(--surface-a);border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:5px 8px;outline:none;width:130px}.season-edit-textarea{font-size:12px;font-family:Work Sans,sans-serif;color:var(--text-secondary);background:transparent;border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:5px 8px;outline:none;resize:vertical;line-height:1.55;font-style:italic}.season-edit-textarea:focus{border-color:var(--text-faint)}.season-edit-actions{display:flex;gap:8px;padding-top:2px;padding-left:70px}.season-year-tick{position:absolute;top:0;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;pointer-events:none}.season-year-line{width:1px;height:20px;background:var(--border-mid)}.season-year-label{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);margin-top:3px;white-space:nowrap}.season-quarter-tick{position:absolute;top:0;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;pointer-events:none}.season-quarter-line{width:1px;height:10px;background:var(--border-faint)}.season-quarter-label{font-size:7px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);margin-top:3px;white-space:nowrap;opacity:.6}.season-landmark{position:absolute;top:-4px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;z-index:3;pointer-events:none}.season-landmark-line{width:1px;height:28px;opacity:.7}.season-landmark-dot{width:6px;height:6px;border-radius:50%;margin-top:-3px;flex-shrink:0}.season-landmark-label{font-size:7px;font-family:IBM Plex Mono,monospace;font-weight:600;letter-spacing:.04em;margin-top:3px;white-space:nowrap;opacity:.9}.season-landmark-controls{display:flex;align-items:center;justify-content:space-between;padding:2px 2px 8px;margin-bottom:2px;border-bottom:1px solid var(--border-faint)}.season-landmark-hint{font-size:11px;color:var(--text-faint);font-style:italic}.btn.landmark-active{color:var(--text-secondary);border-color:var(--border-mid)}.season-timeline-labels{display:flex;justify-content:space-between;font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);padding:0 1px}.season-goals-body{padding:12px 16px 16px;display:flex;flex-direction:column;gap:4px}.season-notes{font-size:12px;color:var(--text-faint);font-style:italic;line-height:1.55;margin:0 0 10px;padding:0 2px}.season-empty{font-size:12px;color:var(--text-faint);font-style:italic;padding:4px 0}.season-empty-sm{font-size:11px;color:var(--text-faint);font-style:italic;padding:4px 0 4px 14px}.year-goal-row{border-radius:var(--radius-sm);overflow:hidden;transition:background .1s}.year-goal-row.selected>.year-goal-header{background:var(--hover)}.year-goal-landmark-badge{font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.05em;white-space:nowrap;flex-shrink:0;opacity:.8}.year-goal-header{display:flex;align-items:center;gap:8px;padding:8px 6px;cursor:pointer;border-radius:var(--radius-sm);transition:background .1s}.year-goal-header:hover{background:var(--hover)}.year-goal-area-bar{width:3px;height:13px;border-radius:2px;flex-shrink:0;opacity:.7}.year-goal-year{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);min-width:32px;flex-shrink:0}.year-goal-title{font-size:13px;color:var(--text-primary);flex:1}.year-goal-progress{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint)}.year-goal-sprints{padding:2px 0 6px 28px;display:flex;flex-direction:column;gap:1px}.sprint-list-row{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:var(--radius-sm);cursor:pointer;transition:background .1s}.sprint-list-row:hover,.sprint-list-row.current{background:var(--hover)}.sprint-list-row.complete{opacity:.55}.sprint-list-row.complete:hover{opacity:.8}.sprint-list-row.upcoming{opacity:.65}.sprint-list-row.upcoming:hover{opacity:1}.sprint-list-quarter{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);min-width:44px;flex-shrink:0}.sprint-list-center{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.sprint-list-title{font-size:12px;color:var(--text-primary)}.sprint-list-dates{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint)}.sprint-list-days{opacity:.6}.sprint-list-progress{display:flex;align-items:center;gap:6px}.sprint-mini-bar{width:60px;height:2px;background:var(--progress-track);border-radius:1px;overflow:hidden}.sprint-mini-fill{height:100%;background:var(--progress-fill);border-radius:1px}.sprint-mini-label{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);white-space:nowrap}.sprint-done-mark{font-size:10px;color:var(--pri-medium);opacity:.6}.sprint-current-tag{font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.04em;color:var(--text-faint);white-space:nowrap}.upcoming-tag{opacity:.5}.seasons-page-header{display:flex;align-items:center;justify-content:space-between;padding:0 0 16px;flex-shrink:0}.seasons-page-title{font-size:11px;font-family:IBM Plex Mono,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint)}.season-card-footer{padding:8px 16px 10px;display:flex;justify-content:flex-end;border-top:1px solid var(--border-faint)}.season-archive-btn{font-size:10px;font-family:IBM Plex Mono,monospace;letter-spacing:.05em;color:var(--text-faint);background:none;border:1px solid var(--border);border-radius:3px;padding:4px 10px;cursor:pointer;transition:color .1s,border-color .1s}.season-archive-btn:hover{color:var(--text-secondary);border-color:var(--border-mid)}.season-block.complete{opacity:.72}.season-block.complete:hover{opacity:1}.season-retro-btn{font-size:10px;font-family:IBM Plex Mono,monospace;letter-spacing:.05em;color:var(--text-faint);background:none;border:1px solid var(--border);border-radius:3px;padding:2px 8px;cursor:pointer;opacity:0;transition:opacity .1s,border-color .1s,color .1s;flex-shrink:0}.season-block-header:hover .season-retro-btn{opacity:1}.season-retro-btn:hover{border-color:var(--border-mid);color:var(--text-secondary)}.season-retro-grade{font-size:11px;font-family:IBM Plex Mono,monospace;font-weight:700;color:var(--text-faint);background:var(--tag-bg);border:1px solid var(--border-mid);border-radius:3px;padding:1px 7px;letter-spacing:.06em;flex-shrink:0}.retro-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:200;display:flex;justify-content:flex-end;animation:retro-overlay-in .22s ease forwards}@keyframes retro-overlay-in{0%{background:#0000}to{background:#00000073}}.retro-panel{width:480px;max-width:95vw;height:100%;background:var(--surface-a);border-left:1px solid var(--border-mid);display:flex;flex-direction:column;animation:retro-panel-in .28s cubic-bezier(.25,.46,.45,.94) forwards;overflow:hidden}@keyframes retro-panel-in{0%{transform:translate(100%)}to{transform:translate(0)}}.retro-panel-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 24px 20px;border-bottom:1px solid var(--border);flex-shrink:0}.retro-panel-meta{display:flex;flex-direction:column;gap:4px;min-width:0}.retro-panel-eyebrow{font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint)}.retro-panel-title{font-size:20px;font-weight:300;color:var(--text-primary);letter-spacing:-.02em;margin:0;line-height:1.2}.retro-panel-range{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint)}.retro-panel-dur{opacity:.55}.retro-close-btn{font-size:20px;line-height:1;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:0 0 0 12px;flex-shrink:0;transition:color .1s}.retro-close-btn:hover{color:var(--text-primary)}.retro-grade-section{padding:16px 24px 14px;border-bottom:1px solid var(--border-faint);display:flex;flex-direction:column;gap:8px;flex-shrink:0}.retro-grade-label{font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint)}.retro-grade-pills{display:flex;gap:6px}.retro-grade-pill{width:40px;height:40px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;font-size:15px;font-weight:600;font-family:IBM Plex Mono,monospace;color:var(--text-faint);cursor:pointer;transition:border-color .15s,color .15s,background .15s;display:flex;align-items:center;justify-content:center}.retro-grade-pill:hover{border-color:var(--border-mid);color:var(--text-secondary)}.retro-grade-pill.active{border-color:var(--text-secondary);color:var(--text-primary);background:var(--hover)}.retro-grade-pill.grade-S.active{border-color:#c9a227;color:#c9a227}.retro-grade-pill.grade-A.active{border-color:var(--pri-medium);color:var(--pri-medium)}.retro-grade-pill.grade-D.active{border-color:var(--pri-urgent);color:var(--pri-urgent);opacity:.7}.retro-grade-desc{font-size:11px;color:var(--text-faint);font-style:italic;margin:0;line-height:1.5;min-height:18px}.retro-fields-scroll{flex:1;overflow-y:auto;padding:16px 24px 8px;display:flex;flex-direction:column;gap:18px}.retro-field-block{display:flex;flex-direction:column;gap:6px}.retro-field-header{display:flex;align-items:center;gap:7px}.retro-field-icon{font-size:9px;color:var(--text-faint);opacity:.5;flex-shrink:0;width:12px;text-align:center}.retro-field-label{font-size:10px;font-family:IBM Plex Mono,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.retro-field-textarea{font-size:13px;font-family:Work Sans,sans-serif;color:var(--text-secondary);background:var(--surface-b);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;outline:none;resize:vertical;line-height:1.6;min-height:80px;transition:border-color .15s,color .1s}.retro-field-textarea:focus{border-color:var(--border-mid);color:var(--text-primary)}.retro-field-textarea::placeholder{color:var(--text-faint);opacity:.45;font-style:italic}.retro-completeness{display:flex;align-items:center;gap:10px;padding:4px 0 8px}.retro-completeness-bar{flex:1;height:2px;background:var(--border);border-radius:1px;overflow:hidden}.retro-completeness-fill{height:100%;background:var(--text-faint);border-radius:1px;transition:width .3s ease}.retro-completeness-label{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.45;white-space:nowrap}.retro-panel-actions{display:flex;align-items:center;gap:8px;padding:16px 24px;border-top:1px solid var(--border);flex-shrink:0;background:var(--surface-a)}.sprint-view{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0}.sprint-scroll{flex:1;overflow-y:auto;padding:20px 28px;display:flex;flex-direction:column;gap:16px}.sprint-empty{padding:40px;text-align:center;color:var(--text-faint);font-size:13px;line-height:2}.sprint-link-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:13px;text-decoration:underline;font-family:Work Sans,sans-serif;padding:0}.sprint-link-btn:hover{color:var(--text-primary)}.sprint-selector{display:flex;gap:4px;flex-wrap:wrap}.sprint-sel-btn{font-size:10px;font-family:IBM Plex Mono,monospace;letter-spacing:.04em;padding:4px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;color:var(--text-faint);cursor:pointer;transition:all .1s;display:flex;align-items:center;gap:5px}.sprint-sel-btn:hover{border-color:var(--border-mid);color:var(--text-secondary);background:var(--hover)}.sprint-sel-btn.active{border-color:var(--border-mid);color:var(--text-primary);background:var(--hover)}.sprint-sel-btn.complete{opacity:.5}.sprint-sel-btn.upcoming{opacity:.65}.sprint-sel-dot{width:4px;height:4px;border-radius:50%;background:var(--pri-medium);flex-shrink:0}.sprint-hero{background:var(--surface-a);border:1px solid var(--border-mid);border-radius:var(--radius-lg);padding:18px 20px;display:flex;flex-direction:column;gap:12px}.sprint-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.sprint-hero-left{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.sprint-breadcrumb{display:flex;align-items:center;gap:6px;font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);margin-bottom:2px}.sprint-crumb-btn{background:none;border:none;color:var(--text-faint);cursor:pointer;font-size:10px;font-family:IBM Plex Mono,monospace;padding:0;transition:color .1s}.sprint-crumb-btn:hover{color:var(--text-secondary)}.sprint-crumb-sep{opacity:.4}.sprint-crumb-text{color:var(--text-faint)}.sprint-crumb-current{color:var(--text-secondary)}.sprint-title{font-size:18px;font-weight:400;color:var(--text-primary);margin:0;line-height:1.3}.sprint-dates{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint)}.sprint-hero-right{display:flex;gap:20px;flex-shrink:0}.sprint-stat{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.sprint-stat-value{font-size:22px;font-weight:300;color:var(--text-primary);font-family:Work Sans,sans-serif;line-height:1}.sprint-stat-label{font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.sprint-progress-wrap{display:flex;align-items:center;gap:8px}.sprint-progress-track{flex:1;height:3px;background:var(--progress-track);border-radius:2px;overflow:hidden}.sprint-progress-fill{height:100%;border-radius:2px;transition:width .3s}.sprint-progress-pct{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);min-width:28px;text-align:right}.sprint-status-badge{font-size:10px;font-family:IBM Plex Mono,monospace;letter-spacing:.05em;padding:3px 8px;border-radius:4px;align-self:flex-start;margin-top:4px}.sprint-status-badge.complete{color:var(--pri-medium);background:#4e88581f}.sprint-status-badge.upcoming{color:var(--text-faint);background:var(--tag-bg)}.sprint-notes{font-size:12px;color:var(--text-faint);font-style:italic;line-height:1.6;margin:0}.sprint-columns{display:grid;grid-template-columns:1fr 240px;gap:16px;align-items:start}.sprint-left{display:flex;flex-direction:column;gap:12px;min-width:0}.sprint-right{display:flex;flex-direction:column;gap:12px}.sprint-section{display:flex;flex-direction:column;gap:4px}.sprint-section-label{font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);font-family:IBM Plex Mono,monospace;padding:0 2px;margin-bottom:4px;display:flex;align-items:center;gap:6px}.sprint-count{font-size:10px;color:var(--text-faint);background:var(--tag-bg);border-radius:3px;padding:0 5px;font-weight:400}.sprint-empty-sm{font-size:12px;color:var(--text-faint);font-style:italic;padding:4px 2px}.sprint-more{font-size:11px;color:var(--text-faint);padding:4px 2px;font-style:italic}.sprint-project-row{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:var(--radius-sm);background:var(--surface-a);border:1px solid var(--border-faint);margin-bottom:2px}.sprint-project-bar{width:3px;height:28px;border-radius:2px;flex-shrink:0;opacity:.6}.sprint-project-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.sprint-project-name{font-size:13px;color:var(--text-primary)}.sprint-project-meta{display:flex;gap:12px;font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint)}.done-count{color:var(--pri-medium);opacity:.8}.sprint-project-status{font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.05em;color:var(--text-faint);text-transform:lowercase}.sprint-task-row{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:var(--radius-sm);transition:background .1s}.sprint-task-row:hover{background:var(--hover)}.sprint-task-row.faded{opacity:.5}.sprint-task-name{font-size:12px;color:var(--text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sprint-task-project{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--tag-text);background:var(--tag-bg);border-radius:3px;padding:1px 6px;flex-shrink:0}.sprint-task-day{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);flex-shrink:0}.sprint-cal{display:flex;flex-direction:column;gap:4px}.sprint-cal-header{display:grid;grid-template-columns:24px repeat(7,1fr);gap:1px;margin-bottom:2px}.sprint-cal-dow{font-size:8px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);text-align:center;letter-spacing:.04em}.sprint-cal-dow:first-child{visibility:hidden}.sprint-cal-grid{display:flex;flex-direction:column;gap:1px}.sprint-cal-week{display:grid;grid-template-columns:24px repeat(7,1fr);gap:1px;align-items:center}.sprint-cal-month-label{font-size:8px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);text-align:right;padding-right:3px;opacity:.7}.sprint-cal-day{width:100%;aspect-ratio:1;border-radius:2px;background:var(--progress-track);position:relative;display:flex;align-items:center;justify-content:center;transition:background .1s;min-width:14px;min-height:14px}.sprint-cal-day.empty{background:transparent}.sprint-cal-day.past{background:#fffdf008}.sprint-cal-day.weekend{opacity:.5}.sprint-cal-day.today{background:var(--border-mid);outline:1px solid var(--text-faint);outline-offset:0px}.sprint-cal-day.has-activity{background:#4e885826}.sprint-cal-day.has-activity.today{background:#4e885840}.sprint-cal-dot{width:3px;height:3px;border-radius:50%;background:var(--pri-medium);opacity:.7}.sprint-cal-day.sample{display:inline-flex;min-width:12px;min-height:12px;width:12px;height:12px}.sprint-cal-legend{display:flex;gap:10px;margin-top:6px;padding-left:26px}.sprint-cal-legend-item{display:flex;align-items:center;gap:4px;font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint)}.log-view{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0}.log-tabs{display:flex;gap:2px;padding:16px 32px 0;border-bottom:1px solid var(--border);flex-shrink:0}.log-tab{font-size:12px;font-family:Work Sans,sans-serif;color:var(--text-faint);background:none;border:none;padding:8px 14px 10px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .1s,border-color .1s}.log-tab:hover{color:var(--text-secondary)}.log-tab.active{color:var(--text-primary);border-bottom-color:var(--text-secondary)}.log-body{flex:1;overflow-y:auto}.log-tab-content{max-width:760px;padding:24px 32px 48px;display:flex;flex-direction:column;gap:16px}.log-stats-strip{display:flex;align-items:center;gap:0;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;align-self:flex-start}.log-stat{display:flex;flex-direction:column;align-items:center;padding:10px 24px;gap:2px}.log-stat-value{font-size:22px;font-weight:300;color:var(--text-primary);font-family:IBM Plex Mono,monospace;line-height:1}.log-stat-label{font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint)}.log-stat-sep{width:1px;height:40px;background:var(--border);flex-shrink:0}.log-filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.log-search{font-size:12px;font-family:Work Sans,sans-serif;color:var(--text-primary);background:transparent;border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:6px 10px;outline:none;flex:1;min-width:160px;max-width:260px;transition:border-color .1s}.log-search:focus{border-color:var(--text-faint)}.log-search::placeholder{color:var(--text-faint)}.log-select{font-size:11px;font-family:Work Sans,sans-serif;color:var(--text-secondary);background:var(--surface-a);border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:5px 9px;outline:none;cursor:pointer}.log-toggle-label{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-faint);cursor:pointer;-webkit-user-select:none;user-select:none;margin-left:4px}.log-toggle-label input[type=checkbox]{accent-color:var(--text-secondary);cursor:pointer}.log-dismiss-all-btn{margin-left:auto}.log-empty{font-size:13px;color:var(--text-faint);font-style:italic;padding:24px 0 8px;line-height:1.6}.log-list{display:flex;flex-direction:column;gap:0}.log-day-group{margin-bottom:20px}.log-day-header{display:flex;align-items:center;justify-content:space-between;padding:0 2px 6px;border-bottom:1px solid var(--border-faint);margin-bottom:4px}.log-day-label{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-secondary);letter-spacing:.04em}.log-day-count{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint)}.log-task-row{display:flex;align-items:center;gap:10px;padding:8px 6px;border-radius:var(--radius-sm);transition:background .1s;position:relative}.log-task-row:hover{background:var(--hover)}.log-task-row:hover .log-restore-btn{opacity:1}.log-task-color-bar{width:2px;height:14px;border-radius:1px;flex-shrink:0;opacity:.6}.log-task-name{font-size:13px;color:var(--text-primary);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.log-task-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}.log-task-project{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);background:var(--tag-bg);border:1px solid var(--border-faint);border-radius:3px;padding:1px 6px;white-space:nowrap}.log-task-domain{font-size:10px;font-family:IBM Plex Mono,monospace;opacity:.7;white-space:nowrap}.log-task-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.log-task-time{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);white-space:nowrap}.log-task-duration{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.6}.log-restore-btn{font-size:14px;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:1px 4px;border-radius:var(--radius-sm);opacity:0;transition:opacity .1s,color .1s,background .1s;line-height:1}.log-restore-btn:hover{color:var(--text-secondary);background:var(--hover)}.log-flag-row{border:1px solid var(--border-faint);border-radius:var(--radius-md);padding:12px 14px;margin-bottom:8px;background:var(--surface-a);transition:opacity .15s}.log-flag-row.dismissed{opacity:.4}.log-flag-row:not(.dismissed):hover{border-color:var(--border-mid)}.log-flag-top{display:flex;align-items:center;gap:10px;margin-bottom:8px}.log-flag-type{font-size:9px;font-family:IBM Plex Mono,monospace;letter-spacing:.07em;text-transform:uppercase;font-weight:600;padding:2px 7px;border-radius:3px;border:1px solid;opacity:.85;flex-shrink:0}.log-flag-date{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);flex:1}.log-flag-dismiss{font-size:16px;line-height:1;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:0 4px;opacity:0;transition:opacity .1s,color .1s;border-radius:3px;flex-shrink:0}.log-flag-row:hover .log-flag-dismiss{opacity:1}.log-flag-dismiss:hover{color:var(--pri-urgent)}.log-flag-dismissed-mark{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);letter-spacing:.05em;flex-shrink:0}.log-flag-message{font-size:12px;color:var(--text-secondary);line-height:1.6;margin:0 0 6px}.log-flag-action-wrap{margin-top:4px}.log-flag-action-toggle{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);background:none;border:none;cursor:pointer;padding:0;transition:color .1s;letter-spacing:.02em}.log-flag-action-toggle:hover{color:var(--text-secondary)}.log-flag-action{font-size:11px;color:var(--text-faint);font-style:italic;line-height:1.6;margin:6px 0 0;padding:8px 10px;border-left:2px solid var(--border-mid);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--detail-bg)}.stats-view{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0}.stats-scroll{flex:1;overflow-y:auto;padding:28px 32px 64px;display:flex;flex-direction:column;gap:20px}.stats-range-row{display:flex;align-items:center;gap:12px;flex-shrink:0}.stats-range-label{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);letter-spacing:.04em}.stats-range-pills{display:flex;gap:4px}.stats-range-pill{font-size:11px;font-family:Work Sans,sans-serif;color:var(--text-faint);background:transparent;border:1px solid var(--border);border-radius:20px;padding:4px 12px;cursor:pointer;transition:color .1s,border-color .1s,background .1s}.stats-range-pill:hover{color:var(--text-secondary);border-color:var(--border-mid)}.stats-range-pill.active{color:var(--text-primary);background:var(--hover);border-color:var(--border-mid)}.stats-summary{display:flex;gap:12px;flex-wrap:wrap}.stats-summary-card{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 20px 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-a);min-width:110px;transition:border-color .1s}.stats-summary-card.accent,.stats-summary-card:hover{border-color:var(--border-mid)}.stats-summary-value{font-size:28px;font-weight:300;font-family:IBM Plex Mono,monospace;color:var(--text-primary);line-height:1}.stats-summary-card.accent .stats-summary-value{color:var(--text-primary)}.stats-summary-label{font-size:11px;font-family:Work Sans,sans-serif;color:var(--text-secondary);margin-top:4px}.stats-summary-sub{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);letter-spacing:.05em;text-transform:uppercase}.stats-two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media(max-width:900px){.stats-two-col{grid-template-columns:1fr}}.stats-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-a);padding:20px 22px 18px;display:flex;flex-direction:column;gap:14px}.stats-section-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.stats-section-title{font-size:11px;font-family:IBM Plex Mono,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);font-weight:500}.stats-section-hint{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);letter-spacing:.03em}.stats-toggle-group{display:flex;gap:2px;background:var(--surface-b, var(--surface-a));border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px}.stats-toggle-btn{font-size:10px;font-family:Work Sans,sans-serif;color:var(--text-faint);background:transparent;border:none;border-radius:calc(var(--radius-sm) - 1px);padding:3px 10px;cursor:pointer;transition:color .1s,background .1s}.stats-toggle-btn:hover{color:var(--text-secondary)}.stats-toggle-btn.active{color:var(--text-primary);background:var(--hover)}.stats-bar-list{display:flex;flex-direction:column;gap:8px}.stats-bar-row{display:flex;align-items:center;gap:10px}.stats-bar-name{font-size:12px;color:var(--text-secondary);min-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stats-bar-track{flex:1;height:6px;background:var(--border-faint, var(--border));border-radius:3px;overflow:hidden}.stats-bar-track.sm{height:5px}.stats-bar-fill{height:100%;border-radius:3px;transition:width .3s ease}.stats-bar-val{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);min-width:24px;text-align:right}.stats-pri-grid{display:flex;flex-direction:column;gap:8px}.stats-pri-row{display:flex;align-items:center;gap:10px}.stats-pri-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.stats-pri-name{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);text-transform:capitalize;min-width:52px}.stats-pri-pct{font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);min-width:32px;text-align:right;opacity:.6}.stats-velocity-chart{display:flex;align-items:flex-end;gap:4px;height:100px}.stats-velocity-col{display:flex;flex-direction:column;align-items:center;flex:1;height:100%;gap:4px}.stats-velocity-bar-wrap{flex:1;width:100%;display:flex;align-items:flex-end}.stats-velocity-bar{width:100%;background:var(--border-mid);border-radius:2px 2px 0 0;min-height:0;transition:height .3s ease}.stats-velocity-bar.current{background:var(--text-secondary)}.stats-velocity-label{font-size:8px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);white-space:nowrap;text-align:center;letter-spacing:-.02em}.stats-velocity-label.current{color:var(--text-secondary)}.stats-velocity-footer{display:flex;justify-content:flex-end;margin-top:-4px}.stats-heatmap-wrap{display:flex;flex-direction:column;gap:4px;overflow-x:auto}.stats-heatmap-months{display:flex;padding-left:28px}.stats-heatmap-month-label{flex:1;font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);letter-spacing:.04em;text-align:left;min-width:14px}.stats-heatmap-body{display:flex;gap:4px;align-items:flex-start}.stats-heatmap-dow{display:flex;flex-direction:column;gap:2px;padding-top:0;flex-shrink:0}.stats-heatmap-dow-label{font-size:8px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);height:12px;line-height:12px;width:10px;text-align:center;opacity:.5}.stats-heatmap-grid{display:flex;gap:2px;flex:1}.stats-heatmap-col{display:flex;flex-direction:column;gap:2px;flex:1;min-width:12px}.stats-heatmap-cell{display:block;width:100%;height:12px;border-radius:2px;cursor:default;flex-shrink:0}.stats-heatmap-cell.empty{background:transparent}.stats-heatmap-cell.level-0{background:var(--border-faint, var(--surface-a));border:1px solid var(--border)}.stats-heatmap-cell.level-1{background:color-mix(in srgb,var(--area-virtus) 30%,transparent);border:none}.stats-heatmap-cell.level-2{background:color-mix(in srgb,var(--area-virtus) 60%,transparent);border:none}.stats-heatmap-cell.level-3{background:var(--area-virtus);border:none}.stats-heatmap-cell.today{outline:1px solid var(--text-secondary);outline-offset:1px}.stats-heatmap-legend{display:flex;align-items:center;gap:4px;padding-left:28px;margin-top:4px}.stats-heatmap-legend-label{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.6}.stats-heatmap-legend .stats-heatmap-cell{width:12px;height:12px;flex-shrink:0;cursor:default}.stats-project-list{display:flex;flex-direction:column;gap:10px}.stats-project-row{display:flex;align-items:center;gap:12px}.stats-project-info{display:flex;align-items:center;gap:7px;min-width:200px;max-width:220px}.stats-project-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.stats-project-name{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.stats-project-domain{font-size:9px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);white-space:nowrap;opacity:.7}.stats-project-bar-wrap{flex:1}.stats-project-bar-track{height:6px;background:var(--border-faint, var(--border));border-radius:3px;overflow:hidden;display:flex;position:relative}.stats-project-bar-done{height:100%;border-radius:3px 0 0 3px;opacity:1;transition:width .3s ease;flex-shrink:0}.stats-project-bar-active{height:100%;opacity:.3;transition:width .3s ease;flex-shrink:0}.stats-project-counts{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);white-space:nowrap;min-width:64px;text-align:right}.stats-project-done-count{color:var(--text-faint);opacity:.6}.stats-project-legend{display:flex;gap:14px;margin-top:2px}.stats-project-legend-item{display:flex;align-items:center;gap:5px;font-size:10px;font-family:IBM Plex Mono,monospace;color:var(--text-faint);opacity:.6}.stats-project-legend-swatch{display:block;width:14px;height:5px;border-radius:2px;background:var(--text-secondary)}.stats-project-legend-swatch.faint{opacity:.3}.project-dashboard{display:flex;flex-direction:column;overflow:hidden;min-height:0;flex:1}.pd-header{flex-shrink:0;display:flex;border-bottom:1px solid var(--border-faint);position:relative}.pd-color-accent{width:3px;flex-shrink:0}.pd-header-inner{flex:1;padding:16px 24px 14px;display:flex;flex-direction:column;gap:8px}.pd-header-top{display:flex;align-items:center;justify-content:space-between}.pd-breadcrumb{display:flex;align-items:center;gap:6px}.pd-bc-link{display:flex;align-items:center;gap:6px;background:none;border:none;padding:0;cursor:pointer;font-size:12px;color:var(--text-secondary);font-family:inherit;transition:color .1s}.pd-bc-link:hover{color:var(--text-primary)}.pd-bc-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.pd-bc-sep,.pd-bc-current{font-size:12px;color:var(--text-faint)}.pd-header-actions{display:flex;align-items:center;gap:10px}.pd-pin-btn{background:none;border:none;cursor:pointer;font-size:16px;color:var(--text-faint);padding:0 2px;line-height:1;transition:color .1s}.pd-pin-btn:hover{color:var(--text-secondary)}.pd-pin-btn.pinned{color:var(--watch-text)}.pd-title-row{display:flex;align-items:baseline;gap:12px}.pd-project-name{font-size:22px;font-weight:300;color:var(--text-primary);margin:0;line-height:1.2}.pd-priority{font-size:10px;font-family:IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.08em;padding:2px 7px;border-radius:3px;background:var(--tag-bg);color:var(--tag-text)}.pd-priority.pri-urgent{color:var(--pri-urgent);background:#b852521a}.pd-priority.pri-high{color:var(--pri-high);background:#b890301a}.pd-priority.pri-medium{color:var(--pri-medium);background:#4e88581a}.pd-description{background:transparent;border:none;outline:none;resize:none;font-size:13px;font-family:inherit;color:var(--text-secondary);line-height:1.5;width:100%;padding:0}.pd-description::placeholder{color:var(--text-faint)}.pd-description:focus{color:var(--text-primary)}.pd-stats{display:flex;gap:24px;padding-top:4px}.pd-stat{display:flex;flex-direction:column;gap:1px}.pd-stat-value{font-size:18px;font-weight:300;color:var(--text-primary);font-family:IBM Plex Mono,monospace;line-height:1}.pd-stat-label{font-size:10px;color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em}.pd-body{flex:1;overflow-y:auto;padding:20px 24px 48px;display:flex;flex-direction:column;gap:24px;min-height:0}.pd-section{display:flex;flex-direction:column;gap:10px}.pd-section-label{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--text-faint)}.pd-tasks-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pd-task-col{display:flex;flex-direction:column}.pd-task-list{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;margin-bottom:1px}.pd-card{border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 16px;background:var(--surface-a);display:flex;flex-direction:column;gap:12px}.pd-timeline-dates{display:flex;gap:20px}.pd-date-field{display:flex;flex-direction:column;gap:4px}.pd-date-label{font-size:10px;color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em}.pd-date-input{background:var(--tag-bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:12px;font-family:IBM Plex Mono,monospace;padding:4px 8px;outline:none;cursor:pointer}.pd-date-input:focus{border-color:var(--border-mid);color:var(--text-primary)}.pd-timeline-bar-wrap{display:flex;flex-direction:column;gap:6px}.pd-timeline-bar{height:6px;background:var(--border);border-radius:3px;position:relative;overflow:visible}.pd-timeline-fill{position:absolute;left:0;top:0;height:100%;border-radius:3px;opacity:.6;transition:width .3s}.pd-timeline-today-marker{position:absolute;top:50%;transform:translate(-50%,-50%);width:10px;height:10px;border-radius:50%;background:var(--text-secondary);border:2px solid var(--surface-b)}.pd-timeline-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.pd-timeline-pct{color:var(--text-secondary)}.pd-milestones{display:flex;flex-direction:column;gap:6px}.pd-milestone{display:flex;align-items:center;gap:8px;padding:4px 0}.pd-milestone-check{background:none;border:none;cursor:pointer;font-size:13px;color:var(--text-faint);padding:0;line-height:1;transition:color .1s}.pd-milestone-check:hover{color:var(--text-secondary)}.pd-milestone.done .pd-milestone-check{color:var(--pri-medium)}.pd-milestone-name{flex:1;font-size:13px;color:var(--text-primary)}.pd-milestone.done .pd-milestone-name{color:var(--text-faint);text-decoration:line-through}.pd-milestone-date{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.pd-milestone-remove{background:none;border:none;cursor:pointer;font-size:14px;color:var(--text-faint);padding:0 2px;opacity:0;transition:opacity .1s,color .1s}.pd-milestone:hover .pd-milestone-remove{opacity:1}.pd-milestone-remove:hover{color:var(--text-secondary)}.pd-inline-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pd-inline-input{background:var(--tag-bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:13px;font-family:inherit;padding:5px 9px;outline:none;flex:1;min-width:160px}.pd-inline-input:focus{border-color:var(--border-mid)}.pd-inline-input::placeholder{color:var(--text-faint)}.pd-link-url-input{flex:2;min-width:220px}.pd-btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:var(--radius-sm);font-size:12px;font-family:inherit;padding:5px 12px;cursor:pointer;white-space:nowrap}.pd-btn-ghost{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:12px;font-family:inherit;padding:5px 12px;cursor:pointer;white-space:nowrap;transition:border-color .1s,color .1s}.pd-btn-ghost:hover{border-color:var(--border-mid);color:var(--text-primary)}.pd-add-row-btn{background:none;border:none;cursor:pointer;font-size:12px;color:var(--text-faint);padding:4px 0;text-align:left;font-family:inherit;transition:color .1s}.pd-add-row-btn:hover{color:var(--text-secondary)}.pd-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pd-textarea{width:100%;min-height:120px;background:var(--surface-a);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:13px;font-family:inherit;line-height:1.6;padding:12px 14px;outline:none;resize:vertical;box-sizing:border-box}.pd-textarea::placeholder{color:var(--text-faint)}.pd-textarea:focus{border-color:var(--border-mid)}.pd-empty-hint{font-size:12px;color:var(--text-faint);font-style:italic}.pd-link-row{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid var(--border-faint)}.pd-link-row:last-of-type{border-bottom:none}.pd-link-icon{font-size:12px;color:var(--text-faint);flex-shrink:0}.pd-link-label{font-size:13px;color:var(--text-primary);text-decoration:none;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-link-label:hover{text-decoration:underline}.pd-link-url{font-size:10px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.pd-link-remove{background:none;border:none;cursor:pointer;font-size:14px;color:var(--text-faint);padding:0 2px;opacity:0;transition:opacity .1s,color .1s;flex-shrink:0}.pd-link-row:hover .pd-link-remove{opacity:1}.pd-link-remove:hover{color:var(--text-secondary)}.help-view{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0}.help-header{padding:16px 32px 0;border-bottom:1px solid var(--border);flex-shrink:0}.help-title-row{display:flex;align-items:baseline;gap:12px;margin-bottom:12px}.help-title-row h1{margin:0;font-size:1.5rem;font-weight:300;letter-spacing:-.01em;color:var(--text-primary);font-family:Work Sans,sans-serif}.help-version{font-family:IBM Plex Mono,monospace;font-size:.72rem;letter-spacing:.06em;color:var(--text-faint);border:1px solid var(--border-faint);padding:2px 8px;border-radius:var(--radius-sm)}.help-tabs{display:flex;gap:2px;margin-bottom:-1px}.help-tab{font-size:12px;font-family:Work Sans,sans-serif;color:var(--text-faint);background:none;border:none;padding:8px 14px 10px;cursor:pointer;border-bottom:2px solid transparent;transition:color .1s,border-color .1s;letter-spacing:.01em}.help-tab:hover{color:var(--text-secondary)}.help-tab.active{color:var(--text-primary);border-bottom-color:var(--watch-text, #c9a227)}.help-body{flex:1;overflow-y:auto;padding:24px 32px 48px}.help-content{max-width:760px}.help-lede{color:var(--text-secondary);font-size:.92rem;line-height:1.55;margin:0 0 24px}.help-sections{display:flex;flex-direction:column;gap:4px}.help-accordion{border-bottom:1px solid var(--border-faint)}.help-accordion-header{display:flex;align-items:center;gap:10px;width:100%;background:none;border:none;padding:12px 4px;cursor:pointer;text-align:left;color:var(--text-primary);font-family:inherit;font-size:.95rem;transition:background .1s}.help-accordion-header:hover{background:var(--hover)}.help-accordion-caret{font-size:11px;color:var(--text-faint);width:14px;flex-shrink:0}.help-accordion-title{font-weight:500}.help-accordion-body{padding:0 4px 14px 28px;color:var(--text-secondary);font-size:.88rem;line-height:1.6}.help-accordion-body p{margin:0}.changelog-list{display:flex;flex-direction:column;gap:28px}.changelog-entry{border-left:2px solid var(--border);padding-left:18px}.changelog-meta{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}.changelog-version{font-family:IBM Plex Mono,monospace;font-size:.78rem;color:var(--watch-text, #c9a227);letter-spacing:.05em}.changelog-date{font-family:IBM Plex Mono,monospace;font-size:.72rem;color:var(--text-faint)}.changelog-title{margin:0 0 8px;font-size:1.05rem;font-weight:400;color:var(--text-primary)}.changelog-notes{margin:0;padding-left:18px;color:var(--text-secondary);font-size:.88rem;line-height:1.55}.changelog-notes li{margin-bottom:4px}.feature-form{display:flex;flex-direction:column;gap:18px;max-width:640px}.feature-field{display:flex;flex-direction:column;gap:6px}.feature-field label{font-size:.7rem;font-family:IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.12em;color:var(--text-faint)}.feature-type-row{display:flex;gap:6px;flex-wrap:wrap}.feature-type-btn{background:var(--surface-b);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 12px;font-size:.82rem;font-family:inherit;cursor:pointer;transition:border-color .1s,color .1s,background .1s}.feature-type-btn:hover{color:var(--text-primary);border-color:var(--border-mid)}.feature-type-btn.active{border-color:var(--watch-text, #c9a227);color:var(--text-primary);background:var(--surface-a)}.feature-input,.feature-textarea{background:var(--tag-bg, var(--surface-b));border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:.65rem .8rem;color:var(--text-primary);font-family:inherit;font-size:.92rem;transition:border-color .12s,background .12s}.feature-textarea{resize:vertical;min-height:140px;line-height:1.5}.feature-input:focus,.feature-textarea:focus{outline:none;border-color:var(--text-faint);background:var(--surface-a)}.feature-submit{align-self:flex-start;text-decoration:none;display:inline-block}.feature-submit.disabled{opacity:.5;pointer-events:none;cursor:not-allowed}.feature-footnote{font-size:.78rem;color:var(--text-faint);font-family:IBM Plex Mono,monospace;margin:0}.feature-footnote code{color:var(--text-secondary)}.auth-screen{min-height:100vh;display:grid;place-items:center;background:var(--surface-a);background-image:radial-gradient(circle at 50% 0%,rgba(195,165,95,.045) 0%,transparent 55%),radial-gradient(circle at 12% 92%,rgba(255,253,248,.025) 0%,transparent 50%);padding:2rem 1rem;color:var(--text-primary);font-family:Work Sans,system-ui,-apple-system,sans-serif}.auth-card{width:100%;max-width:380px;background:var(--surface-b);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2.25rem 2rem 1.75rem;box-shadow:0 1px #fffdf005 inset,0 24px 60px #00000073,0 4px 12px #00000040}.auth-brand{display:flex;align-items:center;gap:.55rem;margin-bottom:2rem;color:var(--text-primary)}.auth-compass{flex-shrink:0;display:block}.auth-brand h1{font-family:Work Sans,system-ui,sans-serif;font-size:.78rem;font-weight:500;letter-spacing:.28em;text-transform:uppercase;margin:0;color:var(--text-primary)}.auth-headline{margin-bottom:1.5rem}.auth-headline h2{font-size:1.5rem;font-weight:300;letter-spacing:-.01em;margin:0 0 .4rem;color:var(--text-primary)}.auth-hint{color:var(--text-secondary);font-size:.88rem;line-height:1.5;margin:0}.auth-hint strong{color:var(--text-primary);font-weight:500}.auth-form{display:flex;flex-direction:column;gap:.85rem}.auth-field{display:flex;flex-direction:column;gap:.3rem}.auth-field span{font-size:.7rem;font-family:IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.12em;color:var(--text-faint)}.auth-field input{background:var(--tag-bg);border:1px solid var(--border-mid);border-radius:var(--radius-sm);padding:.65rem .8rem;color:var(--text-primary);font-family:inherit;font-size:.92rem;transition:border-color .12s,background .12s}.auth-field input::placeholder{color:var(--text-faint)}.auth-field input:focus{outline:none;border-color:var(--text-faint);background:var(--surface-a)}.auth-submit{margin-top:.6rem;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:var(--radius-sm);padding:.7rem 1rem;font-family:inherit;font-size:.9rem;font-weight:500;letter-spacing:.04em;cursor:pointer;transition:opacity .12s,transform .08s}.auth-submit:hover:not(:disabled){opacity:.9}.auth-submit:active:not(:disabled){transform:translateY(1px)}.auth-submit:disabled{opacity:.55;cursor:wait}.auth-error{background:#b8525214;border:1px solid rgba(184,82,82,.3);color:var(--pri-urgent);padding:.55rem .75rem;border-radius:var(--radius-sm);font-size:.82rem;line-height:1.4}.auth-toggle{margin-top:1rem;text-align:center}.auth-toggle button,.auth-linkbtn{background:none;border:none;color:var(--text-secondary);font-family:inherit;font-size:.82rem;cursor:pointer;padding:.3rem .5rem;transition:color .12s}.auth-toggle button:hover,.auth-linkbtn:hover{color:var(--text-primary)}.auth-linkbtn{margin-top:1.5rem;display:inline-flex;align-items:center;gap:.3rem}.auth-footnote{margin:1.6rem 0 0;padding-top:1rem;border-top:1px solid var(--border-faint);font-size:.72rem;color:var(--text-faint);text-align:center;line-height:1.5;font-family:IBM Plex Mono,monospace;letter-spacing:.04em}.app-shell{display:flex;height:100vh;min-height:560px;background:var(--surface-b)}.app-right{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.app-body{display:flex;overflow:hidden;min-height:0;flex:1}.main-area{background:var(--surface-b);display:flex;flex-direction:column;overflow:hidden;min-height:0;flex:1}.app-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:8px}.loading-text{font-size:13px;color:var(--text-faint);font-family:IBM Plex Mono,monospace;letter-spacing:.08em}.loading-text.error{color:var(--pri-urgent)}.loading-hint{font-size:11px;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.view-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:6px}.placeholder-label{font-size:11px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.placeholder-hint{font-size:12px;color:var(--text-disabled)}:root,[data-theme=dark]{--surface-a: #1d1d1b;--surface-b: #212120;--detail-bg: #1b1b19;--hover: rgba(255, 253, 248, .14);--border: rgba(255, 253, 240, .08);--border-faint: rgba(255, 253, 240, .045);--border-mid: rgba(255, 253, 240, .12);--text-primary: #f5f3ef;--text-secondary: #c8c5bf;--text-faint: #8e8c86;--text-disabled: #44443f;--tag-bg: rgba(255, 253, 240, .06);--tag-text: #a4a09c;--tag-border: rgba(255, 253, 240, .08);--watch-bg: rgba(195, 165, 95, .1);--watch-text: #c0a050;--progress-track: rgba(255, 253, 240, .06);--progress-fill: rgba(255, 253, 240, .2);--btn-primary-bg: #e8e5df;--btn-primary-text: #1d1d1b;--area-virtus: #6e8ebc;--area-truenorth: #68a070;--area-training: #ba9260;--area-personal: #9878be;--pri-urgent: #b85252;--pri-high: #b89030;--pri-medium: #4e8858;--pri-low: #464642;--radius-sm: 5px;--radius-md: 7px;--radius-lg: 10px;--check-radius: 3px}[data-theme=light]{--surface-a: #fcfbf6;--surface-b: #ffffff;--detail-bg: #f8f7f2;--hover: rgba(0, 0, 0, .07);--border: rgba(0, 0, 0, .075);--border-faint: rgba(0, 0, 0, .045);--border-mid: rgba(0, 0, 0, .12);--text-primary: #14140f;--text-secondary: #4a4843;--text-faint: #807d76;--text-disabled: #c4c1bc;--tag-bg: rgba(0, 0, 0, .045);--tag-text: #6e6a64;--tag-border: rgba(0, 0, 0, .07);--watch-bg: rgba(145, 110, 30, .08);--watch-text: #7a6020;--progress-track: rgba(0, 0, 0, .06);--progress-fill: rgba(0, 0, 0, .2);--btn-primary-bg: #1c1c18;--btn-primary-text: #f8f7f2;--area-virtus: #3e6ea8;--area-truenorth: #3a8048;--area-training: #9a6a30;--area-personal: #6848a8;--pri-urgent: #a84040;--pri-high: #987828;--pri-medium: #387048;--pri-low: #aeaba4}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;overflow:hidden}body{font-family:Work Sans,sans-serif;font-weight:400;font-size:14px;line-height:1.5;color:var(--text-primary);background:var(--surface-b);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.mono{font-family:IBM Plex Mono,monospace}.label{font-size:10px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--text-faint);font-family:IBM Plex Mono,monospace}.meta{font-size:11px;font-family:IBM Plex Mono,monospace;color:var(--text-faint)}.context{font-size:12px;font-style:italic;color:var(--text-secondary);line-height:1.6}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-mid);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-faint)}::selection{background:#fffdf01f}:focus-visible{outline:1px solid var(--border-mid);outline-offset:1px}.transition-fast{transition:all .1s}.transition-med{transition:all .2s}.btn{font-size:11px;padding:5px 13px;border-radius:7px;border:1px solid var(--border-mid);background:transparent;color:var(--text-secondary);cursor:pointer;font-family:Work Sans,sans-serif;font-weight:400;white-space:nowrap;transition:background .1s,border-color .1s,color .1s}.btn:hover{background:var(--hover);border-color:var(--text-faint)}.btn.primary{background:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--btn-primary-bg)}.btn.primary:hover{opacity:.86}.btn.ghost{border-color:transparent;color:var(--text-faint)}.btn.ghost:hover{color:var(--text-secondary);background:var(--hover)}.btn.sm{font-size:10px;padding:4px 10px}.btn.danger{border-color:var(--pri-urgent);color:var(--pri-urgent);background:transparent}.btn.danger:hover{background:var(--pri-urgent);color:var(--btn-primary-text);border-color:var(--pri-urgent)}.btn.danger:disabled{opacity:.45;cursor:not-allowed;background:transparent;color:var(--pri-urgent)}.tag{font-size:11px;padding:2px 8px;border-radius:4px;background:var(--tag-bg);color:var(--tag-text);border:1px solid var(--tag-border);font-family:IBM Plex Mono,monospace;letter-spacing:.03em;display:inline-block}.tag.watch{background:var(--watch-bg);color:var(--watch-text);border-color:transparent}.tag.area{border-color:transparent}.pri-dot{width:5px;height:5px;border-radius:50%;display:inline-block;flex-shrink:0}.pri-dot.urgent{background:var(--pri-urgent)}.pri-dot.high{background:var(--pri-high)}.pri-dot.medium{background:var(--pri-medium)}.pri-dot.low{background:var(--pri-low)}.area-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;opacity:.85}.area-bar{height:14px;width:3px;border-radius:2px;flex-shrink:0;opacity:.7}.session-progress-bar{width:32px;height:2px;background:var(--progress-track);border-radius:1px;overflow:hidden}.session-progress-fill{height:100%;background:var(--progress-fill);border-radius:1px}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}
