.App{width:100%;min-height:100vh}.login-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;display:flex}.tasks-root h1{font-size:var(--heading-page);line-height:var(--line-height-tight);color:var(--text-primary);font-weight:var(--font-weight-bold);margin-bottom:1.5rem}.login-screen h1{letter-spacing:-.025em;background:linear-gradient(135deg, var(--text-primary) 0%, var(--accent-color) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.tasks-container{text-align:left;margin-top:2rem}.task-list{padding:0;list-style:none}.task-item{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:.5rem;padding:1rem}.task-title{margin-bottom:.25rem;font-size:1.1em;font-weight:500}.task-notes{color:var(--text-secondary);font-size:.9em}.loading{opacity:var(--opacity-secondary);color:var(--text-muted);font-style:italic}.error{color:var(--error-text);background:var(--error-bg);border:1px solid var(--error-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:1rem;padding:1rem 1.25rem;font-weight:500}.drag-instructions{background:linear-gradient(135deg, var(--primary-color) 0%, var(--accent-color) 100%);color:var(--text-inverse);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-md);margin-bottom:1.5rem;padding:1rem 1.5rem;font-size:.9rem;font-weight:500;line-height:1.6}.tasks-root button{padding:var(--btn-padding-md);background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--btn-font-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast)}.tasks-root button:hover:not(:disabled){background:var(--bg-hover);border-color:var(--text-secondary)}.tasks-root button:disabled{background:var(--bg-tertiary);color:var(--text-muted);cursor:not-allowed;box-shadow:none;transform:none}.btn-signout{background:var(--button-bg-primary);font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-md)}.btn-signout:hover{background:var(--button-bg-primary-hover);box-shadow:var(--shadow-lg)}.btn-login{background:var(--button-bg-primary);font-weight:var(--font-weight-semibold);font-size:var(--btn-font-lg);padding:var(--btn-padding-lg);box-shadow:var(--shadow-md)}.btn-login:hover{background:var(--button-bg-primary-hover);box-shadow:var(--shadow-lg)}.toast-container{bottom:var(--spacing-md);right:var(--spacing-md);z-index:var(--z-toast);gap:var(--spacing-sm);flex-direction:column;max-width:400px;display:flex;position:fixed}.toast{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);animation:slideIn var(--transition-base);background:var(--bg-card);min-width:280px;color:var(--text-primary);justify-content:space-between;align-items:center;display:flex}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-error{background:var(--error-color);color:var(--text-on-error)}.toast-success{background:var(--color-success);color:var(--text-on-success)}.toast-warning{background:var(--color-warning);color:var(--text-on-warning)}.toast-info{background:var(--info-color);color:var(--text-on-info)}.toast-message{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);flex:1}.toast-action{background:var(--toast-action-bg,#ffffffe6);color:var(--text-primary);font-size:var(--btn-font-sm);font-weight:var(--font-weight-semibold);cursor:pointer;padding:var(--btn-padding-xs);margin-left:var(--spacing-sm);border-radius:var(--radius-sm);transition:background var(--transition-fast);border:none}.toast-action:hover{background:var(--toast-action-bg-hover,#fff)}.toast-success .toast-action{color:var(--color-success)}.toast-error .toast-action{color:var(--error-color)}.toast-info .toast-action{color:var(--info-color)}.toast-warning .toast-action{background:var(--toast-warning-action-bg,#00000026);color:var(--text-on-warning)}.toast-warning .toast-action:hover{background:var(--toast-warning-action-bg-hover,#00000040)}.toast-dismiss{color:inherit;font-size:var(--font-size-lg);cursor:pointer;padding:0 var(--spacing-xs);margin-left:var(--spacing-sm);opacity:1;transition:opacity var(--transition-fast);background:0 0;border:none}.toast-dismiss:hover{opacity:var(--opacity-hover)}[data-theme=dark] .toast{box-shadow:var(--shadow-lg)}@media (width<=480px){.toast-container{left:var(--spacing-md);right:var(--spacing-md);max-width:none}.toast{min-width:unset}}.error-fallback{padding:var(--spacing-xl);text-align:center;background:var(--error-bg);border:1px solid var(--error-color);border-radius:var(--radius-lg);min-height:200px;margin:var(--spacing-md);flex-direction:column;justify-content:center;align-items:center;display:flex}.error-fallback-icon{color:var(--error-color);margin-bottom:var(--spacing-md)}.error-fallback-title{margin:0 0 var(--spacing-sm) 0;font-size:var(--heading-compact);font-weight:var(--font-weight-semibold);color:var(--error-text)}.error-fallback-message{margin:0 0 var(--spacing-md) 0;color:var(--error-text);font-size:var(--font-size-sm)}.error-fallback-details{margin-bottom:var(--spacing-md);text-align:left;width:100%;max-width:400px}.error-fallback-details summary{cursor:pointer;color:var(--error-text);font-size:var(--font-size-sm);padding:var(--spacing-xs) 0}.error-fallback-details pre{margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-card);border:1px solid var(--error-color);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;color:var(--error-text);overflow-x:auto}.error-fallback-button{padding:var(--btn-padding-md);background:var(--error-color);color:var(--text-on-error);border-radius:var(--radius-md);font-size:var(--btn-font-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:filter var(--transition-base);border:none}.error-fallback-button:hover{filter:brightness(.9)}.error-fallback-button:focus{outline:2px solid var(--error-color);outline-offset:2px}.view-error-fallback{padding:var(--spacing-lg);text-align:center;background:var(--warning-bg);border:1px solid var(--warning-color);border-radius:var(--radius-lg);min-height:150px;margin:var(--spacing-sm);flex-direction:column;justify-content:center;align-items:center;display:flex}.view-error-fallback-title{margin:0 0 var(--spacing-sm) 0;font-size:var(--heading-card);font-weight:var(--font-weight-semibold);color:var(--warning-text)}.view-error-fallback-message{margin:0 0 var(--spacing-md) 0;color:var(--warning-text);font-size:var(--font-size-sm)}.view-error-fallback-button{padding:var(--btn-padding-sm);background:var(--warning-color);color:var(--text-on-warning);border-radius:var(--radius-sm);font-size:var(--btn-font-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:filter var(--transition-base);border:none}.view-error-fallback-button:hover{filter:brightness(.9)}.view-error-fallback-button--primary{background:var(--button-bg-primary);color:var(--text-on-accent);font-size:var(--btn-font-md);padding:var(--btn-padding-md)}.view-error-fallback-button--primary:hover{background:var(--button-bg-primary-hover)}.critical-error-fallback{padding:var(--spacing-2xl);text-align:center;background:var(--error-bg);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.critical-error-fallback-icon{color:var(--error-color);margin-bottom:var(--spacing-lg)}.critical-error-fallback-title{margin:0 0 var(--spacing-md) 0;font-size:var(--heading-view);font-weight:var(--font-weight-bold);color:var(--error-text)}.critical-error-fallback-message{margin:0 0 var(--spacing-lg) 0;color:var(--error-text);font-size:var(--font-size-base);max-width:400px}.critical-error-fallback-button{padding:var(--btn-padding-lg);background:var(--error-color);color:var(--text-on-error);border-radius:var(--radius-lg);font-size:var(--btn-font-lg);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base);border:none}.critical-error-fallback-button:hover{filter:brightness(.9);transform:translateY(-1px)}.item-error-fallback{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--error-bg);border:1px solid var(--error-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--error-text);display:flex}.item-error-fallback-icon{background:var(--error-color);width:18px;height:18px;color:var(--text-on-error);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);justify-content:center;align-items:center;display:flex}.item-error-fallback-text{flex:1}.item-error-fallback-retry{padding:var(--btn-padding-xs);border:1px solid var(--error-color);border-radius:var(--radius-sm);font-size:var(--btn-font-xs);color:var(--error-text);cursor:pointer;transition:background-color var(--transition-base);background:0 0}.item-error-fallback-retry:hover{background:var(--error-bg)}.theme-toggle{isolation:isolate;display:inline-flex;position:relative}.theme-toggle-button{border:1px solid var(--border-color);border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;padding:0;display:flex}.theme-toggle-button:hover{background:var(--bg-hover);border-color:var(--accent-color);color:var(--text-primary)}.theme-toggle-button:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-transparent);outline:none}.theme-toggle-menu{z-index:var(--z-tooltip);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);min-width:140px;box-shadow:var(--shadow-lg);padding:var(--spacing-xs);animation:.15s ease-out themeMenuFadeIn;position:absolute;top:calc(100% + 4px);right:0}@keyframes themeMenuFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.theme-toggle-option{width:100%;padding:var(--spacing-sm) 12px;border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-sm);cursor:pointer;transition:background var(--transition-fast);align-items:center;gap:var(--spacing-sm);background:0 0;border:none;display:flex}.theme-toggle-option:hover{background:var(--bg-hover)}.theme-toggle-option.selected{background:var(--accent-color-transparent)}.option-icon{color:var(--text-secondary);justify-content:center;align-items:center;display:flex}.theme-toggle-option.selected .option-icon{color:var(--accent-color)}.option-label{text-align:left;flex:1}.option-check{color:var(--accent-color);justify-content:center;align-items:center;display:flex}@media (width<=768px){.theme-toggle-button{width:40px;height:40px}.theme-toggle-menu{min-width:130px}}.sync-indicator{border-radius:var(--radius-sm);font-size:var(--font-size-xs);background:var(--bg-tertiary);color:var(--text-secondary);align-items:center;gap:.25rem;padding:.25rem .5rem;display:flex}.sync-indicator-icon{font-size:.875rem}.sync-indicator-text{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.sync-indicator.syncing{background:var(--bg-tertiary);color:var(--text-secondary)}.sync-indicator.syncing .sync-indicator-icon{animation:1s linear infinite spin}.sync-indicator.error{background:color-mix(in srgb, var(--color-error) 15%, transparent);color:var(--color-error)}.sync-indicator.offline{background:color-mix(in srgb, var(--color-warning) 15%, transparent);color:var(--color-warning)}.sync-indicator.pending{background:var(--bg-tertiary);color:var(--text-muted)}.sync-retry-btn{cursor:pointer;color:inherit;background:0 0;border:none;border-radius:2px;padding:.125rem .25rem;font-size:.875rem}.sync-retry-btn:hover{background:var(--bg-secondary)}@media (width<=768px){.sync-indicator-text{display:none}}.modal-overlay{background:var(--backdrop-color);z-index:var(--z-modal-backdrop,300);padding:var(--spacing-md);-webkit-backdrop-filter:var(--backdrop-blur-sm);backdrop-filter:var(--backdrop-blur-sm);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-primary);padding:var(--spacing-lg);border-radius:var(--radius-lg);width:100%;max-width:500px;max-height:90vh;box-shadow:var(--shadow-xl);z-index:var(--z-modal,400);position:relative;overflow-y:auto}.modal-title{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.modal-close-btn{top:var(--spacing-sm);right:var(--spacing-sm);cursor:pointer;color:var(--text-secondary);padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;font-size:1.5rem;line-height:1;position:absolute}.modal-close-btn:hover{color:var(--text-primary);background:var(--bg-hover)}@media (width<=768px){.modal-overlay{background:var(--backdrop-color-mobile,#000000bf);-webkit-backdrop-filter:var(--backdrop-blur-md);backdrop-filter:var(--backdrop-blur-md)}.modal-content{max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem);margin:1rem}}@media (width<=480px){.modal-overlay{background:var(--backdrop-color-small,#000000eb);padding:var(--spacing-sm);-webkit-backdrop-filter:var(--backdrop-blur-lg);backdrop-filter:var(--backdrop-blur-lg)}.modal-content{padding:var(--spacing-md);border-radius:var(--radius-md);background:var(--bg-primary);box-shadow:var(--shadow-xl)}}.modal-content .form-group{margin-bottom:var(--spacing-lg);border:none;padding:0}.modal-content .form-group>label,.modal-content .form-group>legend{margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);display:block}.modal-content .form-group input[type=text],.modal-content .form-group input[type=number],.modal-content .form-group input[type=date],.modal-content .form-group textarea,.modal-content .form-group select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--bg-primary);color:var(--text-primary);box-sizing:border-box;font-family:inherit}.modal-content .form-group textarea{resize:vertical;min-height:80px}.modal-content .form-group input[type=text]:focus,.modal-content .form-group input[type=number]:focus,.modal-content .form-group input[type=date]:focus,.modal-content .form-group textarea:focus,.modal-content .form-group select:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-transparent);outline:none}.modal-content .radio-label{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) 0;cursor:pointer;display:flex}.modal-content .radio-label input[type=radio]{width:18px;height:18px;accent-color:var(--accent-color)}.modal-content .color-picker{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.modal-content .color-option{cursor:pointer}.modal-content .color-option input[type=radio]{opacity:0;pointer-events:none;position:absolute}.modal-content .color-swatch{width:32px;height:32px;transition:transform var(--transition-fast), border-color var(--transition-fast);border:2px solid #0000;border-radius:50%;display:block}.modal-content .color-option input[type=radio]:checked+.color-swatch{border-color:var(--text-primary);transform:scale(1.1)}.modal-content .color-option:hover .color-swatch{transform:scale(1.1)}.modal-content .day-picker{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.modal-content .day-checkbox{align-items:center;gap:var(--spacing-xs);cursor:pointer;flex-direction:column;display:flex}.modal-content .day-checkbox input[type=checkbox]{cursor:pointer;width:36px;height:36px;accent-color:var(--accent-color)}.modal-content .day-checkbox span{font-size:var(--font-size-xs);color:var(--text-secondary)}.modal-content .target-fields{gap:var(--spacing-md);display:flex}.modal-content .target-input{flex:1}.modal-content .target-input label{margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);display:block}.modal-content .target-input input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);box-sizing:border-box;background:var(--bg-primary);color:var(--text-primary)}.modal-content .task-attributes-group{background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-light);flex-direction:column;gap:0;padding:12px;display:flex}.modal-content .task-attributes-group .form-group{margin-bottom:12px}.modal-content .task-attributes-group .form-group:last-child{margin-bottom:0}.modal-content .modal-actions{justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-color);display:flex}.modal-content .modal-actions-right{gap:var(--spacing-sm);margin-left:auto;display:flex}.modal-content .delete-confirm{align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--error-color);display:flex}.btn-loading{pointer-events:none;position:relative;color:#0000!important}.btn-spinner{opacity:1;border:2px solid;border-right-color:#0000;border-radius:50%;width:1em;height:1em;animation:.6s linear infinite btn-spin;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.btn-loading .btn-spinner{color:var(--text-on-accent)}.btn-secondary.btn-loading .btn-spinner,.btn-ghost.btn-loading .btn-spinner{color:var(--text-secondary)}@keyframes btn-spin{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}.btn-icon-left,.btn-icon-right{flex-shrink:0;align-items:center;display:inline-flex}.btn-icon-left{margin-right:var(--spacing-xs)}.btn-icon-right{margin-left:var(--spacing-xs)}.btn-icon .btn-icon-left,.btn-icon .btn-icon-right{margin:0}.feedback-modal{max-width:480px}.feedback-categories{gap:var(--spacing-sm);display:flex}.feedback-category-btn{justify-content:center;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);font-size:var(--font-size-sm);flex:1;display:flex}.feedback-category-btn:hover{background:var(--bg-hover);border-color:var(--border-dark)}.feedback-category-btn.selected{border-color:var(--accent-color);background:var(--bg-accent-subtle);color:var(--accent-color);font-weight:var(--font-weight-medium)}.feedback-success p{color:var(--text-secondary);margin:var(--spacing-sm) 0 var(--spacing-lg);line-height:1.5}@media (width<=480px){.feedback-categories{flex-direction:column}}.app-header{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);z-index:var(--z-sticky);-webkit-backdrop-filter:var(--backdrop-blur-lg);justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1.5rem;display:flex;position:relative}.header-left{flex-shrink:0;align-items:center;gap:2rem;display:flex}.app-header h1{font-size:var(--heading-compact);font-weight:var(--font-weight-semibold);color:var(--text-primary);white-space:nowrap;letter-spacing:-.025em;background:linear-gradient(135deg, var(--text-primary) 0%, var(--accent-color) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0}.btn-signout{padding:var(--btn-padding-md);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--btn-font-md);cursor:pointer;transition:all var(--transition-base);background-color:#0000}.btn-setup-lists{align-items:center;gap:var(--spacing-sm);padding:var(--btn-padding-md);background:var(--button-bg-primary);border-radius:var(--radius-md);color:var(--text-on-accent);font-size:var(--btn-font-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-sm);border:none;display:flex}.toggle-btn{padding:var(--btn-padding-sm);color:var(--text-secondary);font-size:var(--btn-font-md);font-weight:var(--font-weight-medium);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-base);align-items:center;gap:var(--spacing-sm);background:0 0;border:none;display:flex}.app-header .btn-icon{min-width:var(--btn-icon-md);min-height:var(--btn-icon-md);width:var(--btn-icon-md);height:var(--btn-icon-md);border:1px solid var(--border-light);background:var(--bg-primary);color:var(--text-primary);box-shadow:var(--shadow-xs)}.app-header .btn-icon:hover{border-color:var(--border-color);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.app-header .btn-icon:active{box-shadow:var(--shadow-xs);transform:translateY(0)}.btn-feedback{align-items:center;gap:var(--spacing-xs);padding:var(--btn-padding-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--btn-font-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-base);background:0 0;text-decoration:none;display:flex}.btn-feedback:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--text-secondary)}.btn-feedback svg{flex-shrink:0}.desktop-only{display:flex}.tip-button-container{position:relative}.tip-button{align-items:center;gap:var(--spacing-xs);padding:var(--btn-padding-sm);background:var(--button-bg-primary);color:var(--text-on-accent);border-radius:var(--radius-full);font-size:var(--btn-font-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast);border:none;display:inline-flex}.tip-button:hover{box-shadow:0 4px 12px var(--accent-color-transparent);transform:translateY(-1px)}.tip-button svg{flex-shrink:0}.tip-button svg:last-child{color:var(--error-color)}.tip-tooltip{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--text-secondary);white-space:nowrap;box-shadow:var(--shadow-md);z-index:var(--z-tooltip);padding:6px 10px;animation:.15s ease-out tooltipFadeIn;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)}.tip-tooltip:after{content:"";border:5px solid #0000;border-bottom-color:var(--bg-card);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%)translateY(-4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.bottom-nav{background:var(--bg-secondary);border-top:1px solid var(--border-light);z-index:var(--z-sticky);padding:.375rem .5rem;padding-bottom:calc(.375rem + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:var(--backdrop-blur-xl);justify-content:space-around;align-items:center;display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -1px 3px #0000000a}.bottom-nav-btn{min-width:60px;min-height:48px;padding:var(--spacing-xs) var(--spacing-sm);color:var(--text-secondary);font-size:var(--btn-font-xs);cursor:pointer;border-radius:var(--radius-lg);transition:all var(--transition-fast);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;display:flex;position:relative}.bottom-nav-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.bottom-nav-btn.active{color:var(--primary-color);background:0 0}.bottom-nav-btn.active:after{content:"";background:var(--primary-color);border-radius:0 0 3px 3px;width:20px;height:3px;position:absolute;top:0;left:50%;transform:translate(-50%)}.bottom-nav-icon{transition:transform var(--transition-fast) ease-out;font-size:1.35rem;line-height:1}.bottom-nav-btn.active .bottom-nav-icon{transform:scale(1.1)}.bottom-nav-label{white-space:nowrap;letter-spacing:.01em;text-transform:uppercase;font-weight:600}.more-menu-container{position:relative}.more-menu-popup{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--spacing-xs);min-width:140px;z-index:var(--z-modal);animation:.15s ease-out moreMenuFadeIn;position:absolute;bottom:calc(100% + 8px);right:0}.more-menu-popup:after{content:"";border:8px solid #0000;border-top-color:var(--bg-card);position:absolute;top:100%;right:20px}.more-menu-popup:before{content:"";border:9px solid #0000;border-top-color:var(--border-color);position:absolute;top:100%;right:19px}@keyframes moreMenuFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.more-menu-item{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast);text-align:left;background:0 0;border:none;display:flex}.more-menu-item:hover{background:var(--bg-hover);color:var(--text-primary)}.more-menu-item.active{color:var(--primary-color);background:var(--bg-hover)}.more-menu-icon{font-size:1.1rem;line-height:1}.more-menu-label{flex:1}@media (width>=769px){.bottom-nav{display:none}.desktop-only{display:flex}}@media (width<=768px){.bottom-nav{display:flex}.desktop-only{display:none!important}.app-header{background:var(--bg-secondary);flex-wrap:wrap;padding:.625rem 1rem;overflow:hidden}.btn-setup-lists{display:none!important}.app-header h1{white-space:nowrap;font-size:1.1rem;font-weight:700;line-height:1.2}.header-left{flex-shrink:0;gap:.5rem;min-width:auto}.header-right{flex-shrink:0;gap:.375rem}.app-header .btn-icon{width:40px;min-width:40px;height:40px;min-height:40px;font-size:var(--btn-font-sm)}.btn-signout{min-height:40px;padding:var(--btn-padding-md);font-size:var(--btn-font-sm);border-radius:var(--radius-md)}.btn-setup-lists{min-height:40px;padding:var(--btn-padding-md);font-size:var(--btn-font-sm)}.tip-button{justify-content:center;min-width:40px;min-height:40px;padding:.375rem .5rem}.tip-label{display:none}.btn-feedback{justify-content:center;min-width:40px;min-height:40px;padding:.375rem .5rem}.feedback-label,.tip-tooltip{display:none}}@media (width<=480px){.app-header{padding:.5rem .75rem}.app-header h1{white-space:nowrap;font-size:.95rem;line-height:1.15}.header-right{flex-shrink:0;gap:.25rem}.app-header .btn-icon{min-width:var(--btn-icon-md);min-height:var(--btn-icon-md);width:var(--btn-icon-md);height:var(--btn-icon-md)}.btn-signout{padding:var(--btn-padding-sm);font-size:var(--btn-font-sm);min-height:var(--btn-icon-md);white-space:nowrap}.bottom-nav{padding:.25rem .375rem;padding-bottom:calc(.25rem + env(safe-area-inset-bottom,0px))}.bottom-nav-btn{min-width:52px;padding:.25rem .5rem}.bottom-nav-icon{font-size:1.2rem}.bottom-nav-label{font-size:.6rem}}@media (width<=360px){.app-header{padding:var(--spacing-xs) var(--spacing-sm);gap:var(--spacing-sm)}.app-header h1{font-size:var(--btn-font-md);white-space:nowrap;line-height:var(--line-height-tight)}.app-header .btn-icon{width:32px;min-width:32px;height:32px;min-height:32px;font-size:var(--btn-font-xs)}.btn-signout{padding:var(--btn-padding-xs);font-size:var(--btn-font-xs);min-height:32px}}.duration-prompt{text-align:center;min-width:280px}.duration-prompt h3{margin:0 0 var(--spacing-sm) 0;color:var(--text-primary)}.duration-prompt-task{margin:0 0 var(--spacing-md) 0;color:var(--text-secondary);font-size:var(--font-size-sm);word-break:break-word}.calendar-select-wrapper{margin-bottom:var(--spacing-md);text-align:left}.calendar-select-wrapper label{margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--text-secondary);display:block}.calendar-select{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--font-size-sm)}.calendar-select:focus{border-color:var(--primary-color);outline:none}.duration-section-label{text-align:left;font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.duration-buttons{gap:var(--spacing-sm);margin-bottom:var(--spacing-md);grid-template-columns:repeat(3,1fr);display:grid}.duration-buttons button{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;transition:all var(--transition-base)}.duration-buttons button:hover{background:var(--bg-primary);border-color:var(--primary-color);color:var(--primary-color)}.duration-buttons button.duration-suggested{border-color:var(--accent-color);background:color-mix(in srgb, var(--accent-color) 12%, var(--bg-secondary));color:var(--accent-color);font-weight:600}.duration-buttons button.duration-suggested:hover{background:color-mix(in srgb, var(--accent-color) 20%, var(--bg-secondary))}.duration-suggested-hint{color:var(--accent-color);font-weight:500}.duration-cancel{padding:var(--spacing-sm) var(--spacing-md);color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);background:0 0;border:none}.duration-cancel:hover{color:var(--text-primary)}.view-loader{padding:var(--spacing-xl);justify-content:center;align-items:center;gap:var(--spacing-md);flex-direction:column;min-height:200px;display:flex}.view-loader-spinner{width:var(--spacing-xl);height:var(--spacing-xl);border:3px solid var(--border-color,#e0e0e0);border-top-color:var(--primary-color,#4285f4);border-radius:var(--radius-full);animation:.8s linear infinite spin}.view-loader-message{color:var(--text-secondary,#666);font-size:var(--font-size-sm)}.app-footer{padding:12px var(--spacing-md);background:var(--bg-secondary);border-top:1px solid var(--border-color);flex-shrink:0;margin-top:auto}.footer-content{align-items:center;gap:var(--spacing-sm);text-align:center;flex-direction:column;max-width:1200px;margin:0 auto;display:flex}.footer-links{align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xs);display:flex}.footer-link{color:var(--text-secondary);cursor:pointer;font-size:inherit;transition:color var(--transition-fast);background:0 0;border:none;padding:0;text-decoration:underline}.footer-link:hover{color:var(--accent-color)}@media (width<=768px){.app-footer{padding:10px 12px}.footer-content{gap:6px}}.number-input{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:var(--font-size-base);box-sizing:border-box;width:100%}.number-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-transparent);outline:none}.number-input:disabled{opacity:var(--opacity-muted);cursor:not-allowed}.number-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.number-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.number-input[type=number]{-moz-appearance:textfield}.habits-table-container{margin:0 -20px;padding:0 20px}@media (width<=480px){.habits-table-container{margin:0 calc(-1 * var(--spacing-md));padding:0 var(--spacing-md)}.habits-table{font-size:.8rem}.date-header{width:28px;min-width:28px;padding:2px 1px}.day-abbrev{font-size:.55rem}.day-num{font-size:.7rem}.day-cell{width:26px;height:26px}.habit-name-cell{padding-right:var(--spacing-sm);max-width:80px}.habit-title{text-overflow:ellipsis;white-space:nowrap;max-width:60px;overflow:hidden}.habit-color-dot{width:8px;height:8px;margin-right:var(--spacing-xs)}.habit-target-badge,.weekly-progress,.habit-reorder-buttons{display:none}}.habits-table-nav{align-items:center;gap:var(--spacing-sm);margin-bottom:12px;display:flex}.month-range-header{text-align:center;color:var(--text-primary);flex:1;font-size:.875rem;font-weight:600}.habits-table-nav .nav-btn{padding:var(--btn-padding-sm);font-size:var(--btn-font-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.habits-table-nav .nav-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-color)}.habits-table-nav .nav-btn:disabled{opacity:.4;cursor:not-allowed}.habits-table{border-collapse:separate;border-spacing:2px 0;font-size:.875rem}.habits-table th,.habits-table td{padding:var(--spacing-xs);vertical-align:middle}.habits-table th{color:var(--text-secondary);font-weight:600;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.02em}.habit-name-header{text-align:left;padding-right:var(--spacing-md);white-space:nowrap}.date-header{width:36px;min-width:36px;padding:var(--spacing-xs) 2px;text-align:center}.date-header.today{color:var(--accent-color);background:color-mix(in srgb, var(--accent-color) 8%, transparent);border-radius:var(--radius-sm) var(--radius-sm) 0 0;font-weight:700}.day-abbrev{color:var(--text-tertiary);font-size:.65rem;display:block}.day-num{color:var(--text-primary);font-size:.8rem;font-weight:600;display:block}.date-header.today .day-abbrev,.date-header.today .day-num{color:var(--accent-color)}.month-abbrev{color:var(--accent-color);text-transform:uppercase;letter-spacing:.02em;margin-bottom:1px;font-size:.55rem;font-weight:600;display:block}.date-header.has-month{padding-top:2px}.action-header{width:50px}.habits-table-row:hover{background:var(--bg-hover,#00000005)}.habit-name-cell{text-align:left;white-space:nowrap;padding-right:var(--spacing-md)}.habit-color-dot{width:10px;height:10px;margin-right:var(--spacing-sm);vertical-align:middle;border-radius:50%;display:inline-block}.habit-title{color:var(--text-primary);vertical-align:middle;font-weight:500;display:inline-block}.habits-table td.day-cell{text-align:center;padding:2px}.day-cell{border-radius:var(--radius-md);cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast);background:var(--bg-secondary);border:2px solid var(--border-light)}.day-cell:hover{border-color:var(--text-tertiary)}.day-cell.today{border-color:var(--accent-color);border-width:2px}.habits-table td.day-cell.today{background:color-mix(in srgb, var(--accent-color) 6%, var(--bg-secondary))}.day-cell.not-scheduled{background:repeating-linear-gradient(45deg, transparent, transparent 2px, var(--bg-tertiary) 2px, var(--bg-tertiary) 4px);border-color:var(--border-light);opacity:.5;cursor:default;border-style:dashed}.day-cell.not-scheduled:hover{border-color:var(--border-light);opacity:var(--opacity-muted)}.day-cell.just-completed{animation:.4s ease-out habit-complete}@keyframes habit-complete{0%{transform:scale(1)}40%{transform:scale(1.3)}70%{transform:scale(.9)}to{transform:scale(1)}}.day-cell.skipped{background:repeating-linear-gradient(45deg, var(--bg-secondary), var(--bg-secondary) 2px, var(--border-light) 2px, var(--border-light) 4px)}.action-cell{text-align:center}.habits-table .btn-create-task-small{padding:var(--btn-padding-xs);border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:var(--btn-font-xs);font-weight:var(--font-weight-medium);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);opacity:0;background:0 0}.habits-table-row:hover .btn-create-task-small{opacity:1;background:var(--bg-tertiary)}.habits-table .btn-create-task-small:hover{background:var(--button-bg-primary);border-color:var(--button-bg-primary);color:var(--text-on-accent)}.habit-target-badge{color:var(--text-tertiary);background:var(--bg-secondary);border-radius:var(--radius-lg);margin-left:6px;padding:1px 5px;font-size:.65rem}.weekly-progress{color:var(--text-secondary);background:var(--bg-secondary);border-radius:var(--radius-lg);margin-left:6px;padding:1px 5px;font-size:.65rem;font-weight:600}.weekly-progress.complete{color:var(--success-color);background:#22c55e1a}.btn-edit-habit{margin-left:var(--spacing-sm);padding:var(--btn-padding-xs);border-radius:var(--radius-sm);font-size:var(--btn-font-sm);color:var(--text-primary);cursor:pointer;opacity:0;transition:all var(--transition-fast);background:0 0;border:1px solid #0000}.habits-table-row:hover .btn-edit-habit{opacity:1;background:var(--bg-tertiary)}.btn-edit-habit:hover{border-color:var(--border-light);color:var(--text-primary);background:var(--bg-secondary)}.day-cell.target-habit{cursor:pointer}.value-input-backdrop{z-index:var(--z-modal-backdrop);background:0 0;position:fixed;inset:0}.value-input-popup{z-index:var(--z-modal);background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:140px;padding:12px}.value-input-header{font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:capitalize;margin-bottom:6px;font-weight:600}.value-input-mode{color:var(--text-tertiary);font-size:.7rem;font-weight:400}.value-input-row{align-items:center;gap:6px;display:flex}.btn-increment{width:36px;height:36px;font-size:var(--font-size-xl);color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.btn-increment:hover{background:var(--bg-hover);border-color:var(--border-color)}.btn-increment:active{background:var(--bg-tertiary)}.value-input-field{min-width:0;padding:var(--input-padding-md);font-size:var(--font-size-base);text-align:center;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-card);transition:border-color var(--transition-fast);-moz-appearance:textfield;outline:none;flex:1}.value-input-field::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.value-input-field::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.value-input-field:focus{border-color:var(--accent-color)}.value-input-target{color:var(--text-tertiary);margin-top:var(--spacing-xs);margin-bottom:var(--spacing-sm);font-size:.7rem}.value-input-actions{gap:6px;display:flex}.habit-context-menu{z-index:var(--z-tooltip);background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--spacing-xs);box-shadow:var(--shadow-lg);min-width:100px}.habit-context-menu button{width:100%;padding:var(--spacing-sm) 12px;text-align:left;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-primary);transition:background var(--transition-fast);background:0 0;border:none;font-size:.875rem;display:block}.habit-context-menu button:hover{background:var(--bg-secondary)}.day-cell.has-notes{position:relative}.notes-indicator{background:var(--text-secondary);width:6px;height:6px;opacity:var(--opacity-secondary);border-radius:50%;position:absolute;top:2px;right:2px}.notes-input-backdrop{z-index:var(--z-modal-backdrop);background:0 0;position:fixed;inset:0}.notes-input-popup{z-index:var(--z-modal);background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:200px;max-width:300px;padding:12px}.notes-input-header{font-size:var(--font-size-xs);color:var(--text-secondary);margin-bottom:var(--spacing-sm);font-weight:600}.notes-input-field{width:100%;padding:var(--input-padding-md);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-card);resize:vertical;min-height:60px;transition:border-color var(--transition-fast);outline:none;font-family:inherit;font-size:.875rem}.notes-input-field:focus{border-color:var(--accent-color)}.notes-input-field::placeholder{color:var(--text-tertiary)}.notes-input-actions{margin-top:var(--spacing-sm);gap:6px;display:flex}.habit-reorder-buttons{vertical-align:middle;opacity:0;transition:opacity var(--transition-fast);flex-direction:column;gap:1px;margin-right:6px;display:inline-flex}.habits-table-row:hover .habit-reorder-buttons{opacity:1}.btn-reorder{border:1px solid var(--border-light);width:16px;height:12px;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border-radius:3px;padding:0;font-size:10px;line-height:1}.btn-reorder:hover:not(:disabled){background:var(--button-bg-primary);border-color:var(--button-bg-primary);color:var(--text-on-accent)}.btn-reorder:disabled{opacity:.3;cursor:not-allowed}.create-habit-modal{max-width:480px}.create-habit-modal .form-group{margin-bottom:var(--spacing-sm)}.create-habit-modal .form-group>label,.create-habit-modal .form-group>legend{margin-bottom:var(--spacing-xs)}.create-habit-modal .radio-label{padding:var(--spacing-xs) 0}.create-habit-modal .modal-actions{justify-content:space-between;align-items:center}.create-habit-modal .mode-help{margin-top:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--text-secondary);font-style:italic}.empty-state-container{padding:var(--spacing-xl) var(--spacing-lg);text-align:center;align-items:center;gap:var(--spacing-md);flex-direction:column;display:flex}.empty-state-icon{font-size:var(--heading-page);opacity:var(--opacity-secondary);margin-bottom:var(--spacing-sm)}.empty-state-illustration{margin-bottom:var(--spacing-sm)}.empty-state-illustration svg{width:120px;height:120px;opacity:var(--opacity-hover)}.empty-state-title{font-size:var(--heading-card);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.empty-state-description{font-size:var(--font-size-sm);color:var(--text-secondary);max-width:280px;line-height:var(--line-height-normal);margin:0}.empty-state-action{margin-top:var(--spacing-sm);padding:var(--btn-padding-md);border-radius:var(--radius-md);background:var(--button-bg-primary);color:var(--text-on-accent);font-size:var(--btn-font-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-fast);border:none}.empty-state-action:hover{background:var(--button-bg-primary-hover)}.habits-view{padding:var(--spacing-lg);gap:var(--spacing-lg);flex-direction:column;width:100%;max-width:1000px;margin:0 auto;display:flex;overflow-x:auto}.habits-layout{gap:var(--spacing-lg);flex-direction:column;display:flex}.habits-view-header{justify-content:space-between;align-items:center;display:flex}.habits-view-header h2{font-size:var(--heading-view);font-weight:var(--font-weight-semibold);margin:0}.habits-list-section{background:var(--bg-card);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);width:100%}.habits-section-header{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.habits-section-header h3{font-size:var(--heading-section);font-weight:var(--font-weight-semibold);color:var(--text-secondary);margin:0}.habits-list-section h3{margin:0 0 var(--spacing-md) 0;font-size:var(--heading-section);font-weight:var(--font-weight-semibold);color:var(--text-secondary)}.habits-list{gap:var(--spacing-md);grid-template-columns:1fr;display:grid}@media (width>=1200px){.habits-list{grid-template-columns:repeat(2,1fr)}}@media (width>=1600px){.habits-list{grid-template-columns:repeat(3,1fr)}}.habit-row{background:var(--bg-secondary);border-radius:var(--radius-xl);padding:var(--spacing-md);flex-direction:column;gap:12px;display:flex}@media (width>=640px){.habit-row{flex-direction:row;align-items:flex-start}.habit-row>.habit-card{flex:0 0 280px}.habit-row>.habit-calendar-grid{flex:1;justify-content:flex-end}}.habit-row>.habit-card{box-shadow:none;background:0 0;border-left:none;padding:0}.goal-card{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-md);border-left:var(--spacing-xs) solid var(--card-accent-color,var(--accent-color));gap:var(--spacing-sm);cursor:pointer;transition:box-shadow var(--transition-fast);flex-direction:column;display:flex}.goal-card:hover{box-shadow:var(--shadow-sm)}.goal-card-header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);display:flex}.goal-title{font-size:var(--heading-card);font-weight:var(--font-weight-semibold);flex:1;margin:0}.goal-meta{align-items:center;gap:var(--spacing-sm);flex-shrink:0;display:flex}.goal-progress{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-tertiary);background:var(--bg-card);padding:2px var(--spacing-sm);border-radius:var(--radius-full)}.goal-deadline{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary);background:var(--bg-card);padding:2px var(--spacing-sm);border-radius:var(--radius-full)}.goal-deadline.urgent{color:var(--warning-color);background:#f59e0b1a}.goal-deadline.overdue{color:var(--error-color);background:#ef44441a}.goal-description{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}.linked-list-indicator{font-size:var(--font-size-xs);color:var(--accent-color);margin:0;font-style:italic}.goal-actions-list{gap:var(--spacing-sm);flex-direction:column;display:flex}.no-actions{font-size:var(--font-size-sm);color:var(--text-tertiary);margin:0;font-style:italic}.action-item-row{justify-content:space-between;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) 10px;background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-light);display:flex}.action-item{align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:var(--font-size-sm);flex:1;display:flex}.btn-create-task-small{opacity:0}.action-item-row:hover .btn-create-task-small{opacity:1}.action-item input[type=checkbox]{cursor:pointer;width:16px;height:16px}.action-item span.completed{color:var(--text-tertiary);text-decoration:line-through}.goal-actions-list+.btn-dashed{align-self:flex-start}.add-action-form{gap:var(--spacing-sm);flex-direction:column;display:flex}.action-input{padding:var(--spacing-sm) 10px;font-size:var(--font-size-sm);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-card);transition:border-color var(--transition-fast);outline:none}.action-input:focus{border-color:var(--accent-color)}.add-action-buttons{gap:var(--spacing-sm);display:flex}.action-item-buttons{align-items:center;gap:var(--spacing-xs);display:flex}.btn-delete-action{opacity:0;color:var(--text-primary)}.action-item-row:hover .btn-delete-action{opacity:1;background:var(--bg-tertiary)}.btn-delete-action:hover{color:var(--color-error);background:color-mix(in srgb, var(--color-error) 15%, transparent)}.btn-edit-goal:hover{color:var(--accent-color);background:color-mix(in srgb, var(--accent-color) 10%, transparent)}.btn-delete-goal:hover{color:var(--color-error);background:color-mix(in srgb, var(--color-error) 15%, transparent)}.delete-confirm-overlay{border-radius:var(--radius-md);padding:var(--spacing-sm);gap:var(--spacing-sm);background:#ef44440d;border:1px solid #ef444433;flex-direction:column;display:flex}.delete-confirm-message{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--error-color)}.create-goal-modal{max-width:480px}.create-goal-modal .modal-actions{justify-content:space-between;align-items:center;gap:var(--spacing-md);display:flex}.create-goal-modal .modal-actions-right{gap:var(--spacing-sm);display:flex}.create-goal-modal .btn-delete{padding:var(--btn-padding-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--error-color);border:1px solid var(--error-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0}.create-goal-modal .btn-delete:hover{background:var(--error-color);color:var(--text-on-error)}.delete-confirm-section{background:var(--error-bg);border:1px solid color-mix(in srgb, var(--error-color) 20%, transparent);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.delete-confirm-message{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--error-color)}.delete-confirm-actions{gap:var(--spacing-sm);display:flex}.btn-confirm-delete{padding:var(--btn-padding-sm);font-size:var(--btn-font-xs);font-weight:var(--font-weight-medium);background:var(--error-color);color:var(--text-on-error);border-radius:var(--radius-md);cursor:pointer;transition:filter var(--transition-fast);border:none}.btn-confirm-delete:hover{filter:brightness(.9)}.btn-cancel-delete{padding:var(--btn-padding-sm);font-size:var(--btn-font-xs);font-weight:var(--font-weight-medium);background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.btn-cancel-delete:hover{background:var(--bg-hover);color:var(--text-primary)}.horizon-picker{gap:var(--spacing-xs);background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-xs);display:flex}.horizon-option{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex:1}.horizon-option:hover{color:var(--text-primary);background:var(--bg-tertiary)}.horizon-option.active{background:var(--bg-card);color:var(--text-primary);font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-xs)}.goals-view{gap:var(--spacing-md);padding:var(--spacing-md);flex-direction:column;width:100%;max-width:800px;margin:0 auto;display:flex}.goals-view-header{justify-content:space-between;align-items:center;display:flex}.goals-view-header h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0}.horizon-tabs{gap:var(--spacing-xs);background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-xs);display:flex}.horizon-tab{justify-content:center;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex:1;display:flex}.horizon-tab:hover{color:var(--text-primary);background:var(--bg-tertiary)}.horizon-tab.active{background:var(--bg-card);color:var(--text-primary);font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-xs)}.horizon-count{font-size:var(--font-size-xs);background:var(--accent-color);color:var(--text-on-accent);border-radius:var(--radius-full);min-width:18px;height:18px;padding:0 var(--spacing-xs);justify-content:center;align-items:center;display:flex}.parent-context{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.parent-context-label{color:var(--text-tertiary);font-weight:var(--font-weight-medium)}.parent-context-chip{color:var(--text-secondary);padding:2px var(--spacing-sm);border-radius:var(--radius-full);border:1px solid var(--border-color);font-size:var(--font-size-xs)}.goals-view-content{gap:var(--spacing-md);flex-direction:column;display:flex}.goals-view .goals-list{flex-direction:column;gap:12px;display:flex}.current-period-section{gap:var(--spacing-sm);flex-direction:column;display:flex}.period-header-current{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) 0;display:flex}.period-header-current .period-label{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.period-empty-hint{font-size:var(--font-size-sm);color:var(--text-muted);font-style:italic}.period-section{border-radius:var(--radius-md)}.period-section>.period-header{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-xs);cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none;display:flex}.period-section>.period-header::-webkit-details-marker{display:none}.period-section>.period-header:before{content:"▸";font-size:var(--font-size-xs);color:var(--text-muted);transition:transform var(--transition-fast);width:12px;display:inline-block}.period-section[open]>.period-header:before{transform:rotate(90deg)}.period-section .period-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.period-section .period-count{font-size:var(--font-size-xs);color:var(--text-muted)}.period-content{gap:var(--spacing-sm);padding-left:var(--spacing-sm);flex-direction:column;display:flex}.period-past .period-label{color:var(--text-tertiary)}.period-past .period-content{opacity:.85}.period-future .period-label{color:var(--text-secondary)}.period-unassigned .period-label{color:var(--text-muted);font-style:italic}.past-periods,.future-periods{gap:var(--spacing-xs);border-top:1px solid var(--border-light);padding-top:var(--spacing-sm);flex-direction:column;display:flex}.period-unassigned{border-top:1px solid var(--border-light);padding-top:var(--spacing-sm)}.completed-goals-section{border-top:1px solid var(--border-light);padding-top:var(--spacing-md)}.completed-goals-toggle{font-size:var(--font-size-sm);color:var(--text-tertiary);cursor:pointer;padding:var(--spacing-sm) 0;-webkit-user-select:none;user-select:none}.completed-goals-toggle:hover{color:var(--text-secondary)}.completed-goals-section .goals-list{margin-top:var(--spacing-sm);opacity:.7}.dag-visualization{padding:var(--spacing-md);background:var(--color-surface);border-radius:var(--radius-md);min-height:200px;position:relative;overflow:hidden}.dag-timing-summary{gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-surface-raised);border-radius:var(--radius-md);border:1px solid var(--color-border);flex-wrap:wrap;display:flex}.dag-timing-item{padding:var(--spacing-xs) var(--spacing-sm);flex-direction:column;gap:2px;display:flex}.dag-timing-critical{border-left:3px solid var(--color-primary);padding-left:var(--spacing-md)}.dag-timing-label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.dag-timing-value{font-size:var(--text-lg);color:var(--color-text);font-weight:600}.dag-timing-critical .dag-timing-value{color:var(--color-primary)}.dag-empty{color:var(--color-text-muted);justify-content:center;align-items:center;display:flex}.dag-edges{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.dag-edge{fill:none;stroke:var(--color-border);stroke-width:2px}.dag-edge-critical{stroke:var(--color-primary);stroke-width:2.5px}.dag-arrow{fill:var(--color-border)}.dag-arrow-critical{fill:var(--color-primary)}.dag-levels{gap:var(--spacing-xl);z-index:1;flex-direction:column;display:flex;position:relative}.dag-level{gap:var(--spacing-sm);flex-direction:column;display:flex}.dag-level-header{align-items:center;gap:var(--spacing-sm);display:flex}.dag-level-label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.dag-level-timing{font-size:var(--text-xs);color:var(--color-text-secondary);background:var(--color-surface-raised);border-radius:var(--radius-sm);padding:2px 6px;font-weight:500}.dag-level-nodes{gap:var(--spacing-md);flex-wrap:wrap;justify-content:flex-start;display:flex}.dag-node{gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface-raised);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:left;min-width:140px;max-width:200px;transition:all var(--transition-fast);flex-direction:column;display:flex}.dag-node:hover{border-color:var(--color-primary);background:var(--color-surface-hover);box-shadow:0 4px 8px var(--color-shadow);transform:translateY(-2px)}.dag-node-critical{border-color:var(--color-primary);background:var(--color-primary-bg,#6366f11a)}.dag-node-selected{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring,#6366f14d)}.dag-node-title{font-weight:600;font-size:var(--text-sm);text-overflow:ellipsis;-webkit-line-clamp:2;color:var(--color-text,var(--text-primary));-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box;overflow:hidden}.dag-node-time{gap:var(--spacing-xs);font-size:var(--text-xs);color:var(--color-text-muted);flex-wrap:wrap;display:flex}.dag-node-time span{background:var(--color-surface);padding:1px var(--spacing-xs);border-radius:var(--radius-sm)}.dag-node-deps{font-size:var(--text-xs);color:var(--color-text-secondary)}.dag-legend{gap:var(--spacing-lg);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);display:flex}.dag-legend-item{align-items:center;gap:var(--spacing-xs);font-size:var(--text-xs);color:var(--color-text-muted);display:flex}.dag-legend-node{border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);width:16px;height:16px}.dag-legend-critical{border-color:var(--color-primary);background:var(--color-primary-bg,#6366f11a)}@media (width<=600px){.dag-visualization{padding:var(--spacing-sm)}.dag-edges{display:none}.dag-timing-summary{gap:var(--spacing-sm);padding:var(--spacing-sm);margin-bottom:var(--spacing-md)}.dag-timing-item{min-width:80px;padding:var(--spacing-xs);flex:1}.dag-timing-critical{padding-left:var(--spacing-sm)}.dag-timing-value{font-size:var(--text-md)}.dag-levels{gap:var(--spacing-md)}.dag-level{gap:var(--spacing-xs)}.dag-level-nodes{gap:var(--spacing-sm);flex-direction:column}.dag-node{min-width:unset;max-width:100%;padding:var(--spacing-xs) var(--spacing-sm)}.dag-node-title{-webkit-line-clamp:3}.dag-legend{gap:var(--spacing-md);margin-top:var(--spacing-md);padding-top:var(--spacing-sm);flex-wrap:wrap}}@media (width<=375px){.dag-timing-summary{flex-direction:column}.dag-timing-item{flex:unset;width:100%}}.recipe-step-editor{margin-top:var(--spacing-lg)}.step-editor-header{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.step-editor-header h4{margin:0}.btn-add-step{padding:var(--spacing-xs) var(--spacing-sm);background:var(--button-bg-primary);color:var(--text-on-accent);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);border:none}.btn-add-step:hover{opacity:.9}.step-list{gap:var(--spacing-md);flex-direction:column;display:flex}.step-item{background:var(--color-surface-raised);border-radius:var(--radius-md);padding:var(--spacing-md)}.step-item-new{border:2px dashed var(--color-border);background:var(--color-surface);margin-top:var(--spacing-lg)}.step-display{gap:var(--spacing-md);align-items:flex-start;display:flex}.step-number{background:var(--color-primary);width:28px;height:28px;color:var(--color-bg);font-weight:600;font-size:var(--text-sm);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.step-content{flex:1}.step-title{margin-bottom:var(--spacing-xs);font-weight:600}.step-instructions{color:var(--color-text-secondary);font-size:var(--text-sm);margin-bottom:var(--spacing-xs);white-space:pre-wrap}.step-meta{gap:var(--spacing-sm);font-size:var(--text-xs);color:var(--color-text-muted);flex-wrap:wrap;display:flex}.step-meta span{background:var(--color-surface);border-radius:var(--radius-sm);padding:2px 6px}.step-output-badge{font-weight:500;background:var(--color-success-bg,#22c55e26)!important;color:var(--color-success)!important}.step-actions{gap:var(--spacing-xs);flex-shrink:0;display:flex}.step-actions .btn-icon{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;font-size:var(--text-xs);color:var(--color-text-primary,var(--text-primary));border-radius:2px;width:auto;min-width:auto;height:auto;min-height:auto;font-weight:500}.step-actions .btn-icon:hover{background:var(--color-surface-hover);border-color:var(--color-border-dark,var(--border-color-dark))}.step-actions .btn-icon:focus-visible{outline:2px solid var(--color-primary,var(--accent-color));outline-offset:1px}.step-actions .btn-icon.btn-danger:hover{background:var(--color-danger);color:var(--text-on-accent);border-color:var(--color-danger)}.step-form{gap:var(--spacing-md);flex-direction:column;display:flex}.step-form .form-group{gap:var(--spacing-xs);flex-direction:column;display:flex}.step-form .form-group label{font-size:var(--text-sm);font-weight:500}.step-form input[type=text],.step-form input[type=number],.step-form textarea{padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-sm);background:var(--color-bg)}.step-form input:focus,.step-form textarea:focus{border-color:var(--color-primary);outline:none}.step-form .form-row{gap:var(--spacing-md);grid-template-columns:1fr 1fr;display:grid}.ingredient-list,.equipment-list{gap:var(--spacing-xs);flex-direction:column;display:flex}.ingredient-item,.equipment-item{justify-content:space-between;align-items:center;gap:var(--spacing-sm);background:var(--color-surface);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--text-sm);border-left:3px solid var(--color-primary);display:flex}.ingredient-item span,.equipment-item span{flex:1}.ingredient-weight{color:var(--color-text-secondary);font-size:var(--text-xs,.75rem)}.btn-remove{border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-secondary);padding:2px var(--spacing-xs);font-size:var(--text-xs);transition:color var(--transition-fast), background-color var(--transition-fast);background:0 0;border:none;line-height:1}.btn-remove:hover{color:var(--color-danger);background:var(--color-danger-bg,#ef44441a)}.btn-remove:focus-visible{outline:2px solid var(--color-danger);outline-offset:1px;color:var(--color-danger)}.add-ingredient-row,.add-equipment-row{gap:var(--spacing-xs);margin-top:var(--spacing-xs);display:flex}.add-ingredient-row .input-qty{width:60px}.add-ingredient-row .input-unit{width:80px}.add-ingredient-row .input-weight{width:60px}.add-ingredient-row .input-name,.add-equipment-row input{flex:1}.btn-add{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-surface);color:var(--color-text-primary,var(--text-primary));border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm)}.btn-add:hover{background:var(--color-surface-hover);color:var(--color-text-primary,var(--text-primary))}.custom-ingredient-input{gap:var(--spacing-xxs,2px);flex-direction:column;flex:1;display:flex}.custom-ingredient-input .input-name{width:100%}.custom-ingredient-actions{gap:var(--spacing-sm);margin-top:2px;display:flex}.btn-quick-add{border:1px solid var(--color-primary);color:var(--color-primary);cursor:pointer;font-size:var(--text-xs);border-radius:var(--radius-sm);white-space:nowrap;background:0 0;padding:2px 6px}.btn-quick-add:hover{background:var(--button-bg-primary);color:var(--text-on-accent)}.ingredient-header{margin-bottom:var(--spacing-xs);justify-content:space-between;align-items:center;display:flex}.ingredient-header label{margin:0}.btn-bulk-toggle{border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-xs);padding:2px var(--spacing-sm);border-radius:var(--radius-sm);background:0 0}.btn-bulk-toggle:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.bulk-add-container{gap:var(--spacing-sm);margin-top:var(--spacing-xs);flex-direction:column;display:flex}.bulk-add-textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-sm);resize:vertical;background:var(--color-bg);min-height:100px;font-family:inherit}.bulk-add-textarea:focus{border-color:var(--color-primary);outline:none}.bulk-add-actions{gap:var(--spacing-sm);justify-content:flex-end;display:flex}.bulk-add-actions .btn-secondary,.bulk-add-actions .btn-primary{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer}.bulk-add-actions .btn-secondary{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-primary)}.bulk-add-actions .btn-primary{background:var(--button-bg-primary);color:var(--text-on-accent);border:none}.bulk-add-actions .btn-primary:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.dependency-list{gap:var(--spacing-xs);flex-direction:column;display:flex}.dependency-checkbox{align-items:center;gap:var(--spacing-xs);font-size:var(--text-sm);cursor:pointer;display:flex}.dependency-checkbox.dependency-cycle{opacity:var(--opacity-muted);cursor:not-allowed}.dependency-checkbox.dependency-cycle input:not(:checked){cursor:not-allowed}.cycle-warning{font-size:var(--text-xs);color:var(--color-warning);background:var(--color-warning-bg,#e6a70026);border-radius:var(--radius-sm);margin-left:auto;padding:1px 6px}.form-actions{justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);display:flex}.form-actions .btn-secondary{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer}.form-actions .btn-primary{padding:var(--spacing-sm) var(--spacing-md);background:var(--button-bg-primary);color:var(--text-on-accent);border-radius:var(--radius-sm);cursor:pointer;border:none}.form-actions .btn-primary:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.empty-steps{text-align:center;padding:var(--spacing-xl);color:var(--color-text-muted)}.empty-steps p{margin:0}.modernist-ingredient-table{border-collapse:collapse;width:100%;font-size:var(--text-sm);margin:var(--spacing-md) 0}.modernist-ingredient-table th{text-align:left;padding:var(--spacing-sm) var(--spacing-md);border-bottom:2px solid var(--color-border);color:var(--color-text-secondary);text-transform:uppercase;font-weight:600;font-size:var(--text-xs);letter-spacing:.05em}.modernist-ingredient-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border-light,var(--color-border))}.modernist-ingredient-table tbody tr:hover{background:var(--color-surface-hover)}.modernist-ingredient-table .base-ingredient{background:var(--color-surface-raised);font-weight:500}.modernist-ingredient-table .ingredient-name{align-items:center;gap:var(--spacing-sm);display:flex}.modernist-ingredient-table .ingredient-weight,.modernist-ingredient-table .ingredient-volume,.modernist-ingredient-table .ingredient-scaling{font-variant-numeric:tabular-nums;text-align:right}.modernist-ingredient-table .ingredient-scaling{color:var(--color-text-muted)}@media (width<=480px){.modernist-ingredient-table{font-size:var(--text-xs)}.modernist-ingredient-table th,.modernist-ingredient-table td{padding:var(--spacing-xs) var(--spacing-sm)}}.timeline-graph{background:var(--bg-secondary);border-radius:var(--radius-md);padding:.75rem;position:relative;overflow:hidden}.timeline-empty{min-height:100px;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.timeline-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:0 .25rem;display:flex}.timeline-time-start,.timeline-time-end{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:600}.timeline-time-end{color:var(--color-success)}.timeline-axis{border-bottom:1px solid var(--border-color);height:20px;margin-bottom:.5rem;position:relative}.timeline-marker{border-left:1px dashed var(--border-color);height:100%;position:absolute}.timeline-marker-label{color:var(--text-muted);white-space:nowrap;font-size:.6rem;position:absolute;top:2px;left:4px}.timeline-content{--row-height:36px;min-height:calc(var(--row-count,1) * var(--row-height));margin-bottom:.5rem;position:relative}.timeline-edges{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.timeline-edge{fill:none;stroke:var(--border-color);stroke-width:1.5px;opacity:var(--opacity-muted)}.timeline-edge-critical{stroke:var(--accent-color);stroke-width:2px;opacity:var(--opacity-hover)}.timeline-arrow{fill:var(--border-color)}.timeline-arrow-critical{fill:var(--accent-color)}.timeline-node{height:calc(var(--row-height) - 6px);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:all var(--transition-fast);z-index:1;justify-content:space-between;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.7rem;display:flex;position:absolute;overflow:hidden}.timeline-node:hover{border-color:var(--accent-color);box-shadow:0 2px 4px var(--shadow-color,#0000001a);z-index:2;transform:translateY(-1px)}.timeline-node-critical{border-color:var(--accent-color);background:var(--accent-color-light,#6366f11a)}.timeline-node-selected{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-light,#6366f14d);z-index:3}.timeline-node-title{text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);flex:1;font-weight:500;overflow:hidden}.timeline-node-duration{color:var(--text-muted);background:var(--bg-secondary);padding:1px var(--spacing-xs);border-radius:3px;flex-shrink:0;font-size:.6rem}.timeline-ready{text-align:right;font-size:var(--font-size-xs);color:var(--color-success);border-top:1px dashed var(--border-color);padding-top:.25rem;font-weight:600}.timeline-graph-vertical .timeline-header{flex-direction:row;align-items:baseline;gap:.5rem;margin-bottom:.25rem}.timeline-vertical-body{gap:0;display:flex}.timeline-axis-vertical{border-right:1px solid var(--border-color);flex-shrink:0;width:70px}.timeline-marker-vertical-grid{border-top:1px dashed var(--border-color);padding:2px var(--spacing-xs) 0;min-height:0}.timeline-marker-label-vertical{color:var(--text-muted);white-space:nowrap;font-size:.6rem;line-height:1.2}.timeline-content-vertical{--col-width:1fr;flex:1;gap:2px;min-width:0}.timeline-node-vertical{box-sizing:border-box;flex-direction:column;justify-content:flex-start;align-items:flex-start;width:auto;height:auto;padding:.375rem .5rem;position:relative;top:auto;left:auto}.timeline-node-vertical .timeline-node-title{white-space:normal;text-overflow:unset;font-size:var(--font-size-xs);line-height:1.3;overflow:visible}.timeline-node-vertical .timeline-node-duration{margin-top:auto}.timeline-phase-boundary{border-top:2px dashed var(--border-color);pointer-events:none;position:relative}.timeline-phase-label{color:var(--text-muted);background:var(--bg-secondary);padding:0 var(--spacing-xs);text-transform:uppercase;letter-spacing:.5px;z-index:4;pointer-events:none;font-size:.55rem;position:absolute;top:-8px;right:4px}.timeline-node-start-time{color:var(--accent-color);font-size:.6rem;font-weight:600}.timeline-graph-vertical .timeline-ready{text-align:left;align-items:baseline;gap:.5rem;padding-left:70px;display:flex}[data-theme=dark] .timeline-graph{background:var(--bg-tertiary)}[data-theme=dark] .timeline-node{background:var(--bg-secondary)}[data-theme=dark] .timeline-node:hover{background:var(--bg-card)}[data-theme=dark] .timeline-node-critical{background:#6366f126}@media (width<=600px){.timeline-graph{padding:.5rem}.timeline-content{--row-height:32px}.timeline-node{padding:.25rem;font-size:.65rem}.timeline-marker-label,.timeline-node-duration{display:none}}.recipe-print-overlay{background:var(--bg-primary);z-index:var(--z-modal,400);position:fixed;inset:0;overflow-y:auto}.recipe-print-container{max-width:800px;padding:var(--spacing-lg);margin:0 auto}.print-controls{gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.print-time-scheduler{align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.print-time-scheduler label{font-size:var(--text-sm);color:var(--text-secondary);font-weight:500}.print-time-scheduler input[type=time]{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);background:var(--bg-primary);color:var(--text-primary)}.schedule-start-hint{font-size:var(--text-sm);color:var(--accent-color);font-weight:500}.print-controls-buttons{gap:var(--spacing-sm);display:flex}.recipe-print-content{color:var(--text-primary)}.recipe-print-header{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--border-color)}.recipe-print-header h1{margin:0 0 var(--spacing-sm) 0;font-size:2rem;font-weight:700}.recipe-print-meta{gap:var(--spacing-md);font-size:var(--text-sm);color:var(--text-secondary);flex-wrap:wrap;display:flex}.recipe-print-meta span:not(:last-child):after{content:"•";margin-left:var(--spacing-md);color:var(--text-tertiary)}.recipe-print-description{margin-top:var(--spacing-md);color:var(--text-secondary);font-style:italic}.recipe-print-section{margin-bottom:var(--spacing-xl)}.recipe-print-section h2{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-xl);border-bottom:1px solid var(--border-color);padding-bottom:var(--spacing-xs);font-weight:600}.recipe-print-gantt{margin-top:var(--spacing-sm)}.recipe-print-graph{gap:var(--spacing-sm);flex-direction:column;display:flex}.print-graph-level{align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-sm);background:var(--bg-secondary);border-radius:var(--radius-sm);display:flex}.print-graph-level-label{min-width:70px;font-weight:600;font-size:var(--text-sm);color:var(--text-secondary)}.level-scheduled-time{color:var(--accent-color);font-weight:600}.schedule-summary{margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-sm);font-size:var(--text-sm)}.print-graph-level-steps{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.print-graph-step{padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);flex-direction:column;display:flex}.print-graph-step-title{font-weight:500;font-size:var(--text-sm)}.print-graph-step-time{font-size:var(--text-xs);color:var(--text-tertiary)}.recipe-print-ingredients{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));display:grid}.print-ingredient-group h3{margin:0 0 var(--spacing-xs) 0;font-size:var(--text-sm);color:var(--text-secondary);font-weight:600}.print-ingredient-group ul{padding-left:var(--spacing-lg);margin:0}.print-ingredient-group li{margin-bottom:var(--spacing-xs);font-size:var(--text-sm)}.ing-amount{margin-right:.25em;font-weight:500}.ing-unit{margin-right:.25em}.ing-notes{color:var(--text-tertiary);margin-left:.25em;font-style:italic}.recipe-print-empty{color:var(--text-tertiary);font-style:italic}.recipe-print-instructions{gap:var(--spacing-lg);flex-direction:column;display:flex}.print-instruction-level{padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);border-left:3px solid var(--border-color)}.print-instruction-level.parallel{border-left-color:var(--accent-color);background:var(--bg-tertiary)}.print-level-header{align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-light);display:flex}.print-level-number{font-weight:600;font-size:var(--text-sm);color:var(--text-secondary)}.print-level-time{font-weight:600;font-size:var(--text-sm);color:var(--accent-color)}.print-parallel-badge{font-size:var(--text-xs);padding:2px var(--spacing-sm);background:var(--button-bg-primary);color:var(--text-on-accent);border-radius:var(--radius-sm);font-weight:500}.print-level-steps{gap:var(--spacing-md);flex-direction:column;display:flex}.print-level-steps.parallel-steps{gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.print-step-letter{color:var(--accent-color);margin-right:var(--spacing-xs);font-weight:700}.print-step-scheduled-time{font-weight:600;font-size:var(--text-sm);color:var(--accent-color);background:var(--bg-secondary);border-radius:var(--radius-sm);margin-right:var(--spacing-sm);padding:2px 6px}.recipe-print-steps{padding-left:var(--spacing-lg);margin:0}.print-step{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-light)}.print-step:last-child{border-bottom:none}.print-step[data-highlighted=true]{animation:1.5s ease-out step-highlight-pulse}@keyframes step-highlight-pulse{0%{background-color:var(--accent-color-light,#6366f133);outline:2px solid var(--accent-color);outline-offset:4px}to{background-color:#0000;outline-color:#0000}}.print-step-header{align-items:baseline;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs);display:flex}.print-step-time{font-size:var(--text-sm);color:var(--text-tertiary);font-weight:400}.print-step-instructions{margin:var(--spacing-xs) 0;line-height:1.6}.print-step-ingredients{font-size:var(--text-sm);color:var(--text-secondary)}.print-nutrition-grid{gap:var(--spacing-md);text-align:center;grid-template-columns:repeat(4,1fr);display:grid}.print-nutrition-grid div{padding:var(--spacing-sm);background:var(--bg-secondary);border-radius:var(--radius-sm)}@media print{@page{size:auto;margin:.5in}:root{--print-title:36pt;--print-section-header:22pt;--print-subsection-header:18pt;--print-body:16pt;--print-secondary:14pt;--print-small:11pt;--print-spacing:.3in}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body>:not(.recipe-print-overlay),.no-print{display:none!important}.recipe-print-overlay{background:#fff;width:100%;min-height:auto;position:static}.recipe-print-container{max-width:none;margin:0;padding:0}.recipe-print-content{color:#000;font-size:var(--print-body);line-height:1.5}.recipe-print-header{margin-bottom:var(--print-spacing);border-bottom-color:#333}.recipe-print-header h1{font-size:var(--print-title);margin-bottom:.15in}.recipe-print-meta{color:#444;font-size:var(--print-secondary)}.recipe-print-description{font-size:var(--print-secondary);margin-top:.12in}.recipe-print-section{margin-bottom:var(--print-spacing)}.recipe-print-section h2{font-size:var(--print-section-header);border-bottom-color:#333;margin-bottom:.2in}.schedule-summary{font-size:var(--print-secondary);-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#f5f5f5}.level-scheduled-time{color:#333;font-weight:700}.recipe-print-gantt .timeline-content-vertical{min-height:600px}.recipe-print-gantt .timeline-axis-vertical{width:80px}.recipe-print-gantt .timeline-marker-label-vertical{color:var(--text-primary);font-size:10pt;font-weight:600}.recipe-print-gantt .timeline-node-vertical .timeline-node-title{font-size:var(--print-small);color:var(--text-primary)}.recipe-print-gantt .timeline-graph{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#f8f8f8}.recipe-print-gantt .timeline-node{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;border-color:#ccc}.recipe-print-gantt .timeline-node-critical{background:#eef2ff;border-color:#6366f1}.recipe-print-gantt .timeline-edge{stroke:#999}.recipe-print-gantt .timeline-edge-critical{stroke:#6366f1}.recipe-print-gantt .timeline-arrow{fill:#999}.recipe-print-gantt .timeline-arrow-critical{fill:#6366f1}.recipe-print-gantt .timeline-content{--row-height:42px}.recipe-print-gantt .timeline-node-title{color:#000;font-size:var(--print-small)}.recipe-print-gantt .timeline-node-duration{background:#eee;font-size:9pt}.recipe-print-gantt .timeline-marker-label{color:#666}.recipe-print-gantt .timeline-time-start,.recipe-print-gantt .timeline-time-end,.recipe-print-gantt .timeline-ready{color:#333}.print-ingredient-group h3{color:#333;font-size:var(--print-subsection-header);margin-bottom:.12in}.print-ingredient-group li{font-size:var(--print-body);margin-bottom:.1in}.print-instruction-level{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#f8f8f8;border-left:4px solid #999;margin-bottom:.2in;padding:.15in}.print-instruction-level.parallel{background:#f0f0f0;border-left-color:#333}.print-level-header{border-bottom-color:#ddd;margin-bottom:.1in;padding-bottom:.08in}.print-level-number,.print-level-time{font-size:var(--print-secondary)}.print-parallel-badge{font-size:var(--print-small);-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#333}.print-step-letter{font-size:var(--print-subsection-header)}.print-step-scheduled-time{font-size:var(--print-secondary);background:var(--print-badge-bg);padding:2px var(--spacing-sm);border-radius:var(--radius-sm);-webkit-print-color-adjust:exact;print-color-adjust:exact}.print-step{border-bottom-color:#ddd;margin-bottom:.25in;padding-bottom:.25in}.print-step-header strong{font-size:var(--print-subsection-header)}.print-step-time{font-size:var(--print-secondary)}.print-step-instructions{font-size:var(--print-body);line-height:1.6}.print-step-ingredients,.print-nutrition-grid{font-size:var(--print-secondary)}.print-nutrition-grid div{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#f5f5f5}.recipe-print-section,.print-step,.print-ingredient-group{break-inside:avoid}}.planned-meals-section{padding:var(--spacing-md)}.planned-meals-header{margin-bottom:var(--spacing-lg);justify-content:space-between;align-items:center;display:flex}.planned-meals-header h3{font-size:var(--text-lg);margin:0;font-weight:600}.planned-meals-actions{gap:var(--spacing-sm);display:flex}.filter-select{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);font-size:var(--text-sm)}.btn-add-meal{padding:var(--spacing-xs) var(--spacing-md);background:var(--button-bg-primary);color:var(--text-on-accent);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);border:none;font-weight:500}.btn-add-meal:hover{background:var(--button-bg-primary-hover)}.add-meal-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.add-meal-form .form-row{gap:var(--spacing-md);margin-bottom:var(--spacing-md);grid-template-columns:1fr 2fr 100px;display:grid}.add-meal-form label{gap:var(--spacing-xs);font-size:var(--text-sm);flex-direction:column;font-weight:500;display:flex}.add-meal-form input,.add-meal-form select{padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-sm)}.add-meal-form .form-actions{justify-content:flex-end;gap:var(--spacing-sm);display:flex}.empty-state{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary)}.empty-state p{margin:0}.empty-hint{font-size:var(--text-sm);margin-top:var(--spacing-sm)!important}.meals-by-date{gap:var(--spacing-lg);flex-direction:column;display:flex}.date-group{gap:var(--spacing-sm);flex-direction:column;display:flex}.date-header{font-size:var(--text-md);color:var(--color-text-primary);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--color-border);white-space:nowrap;margin:0;font-weight:600}.date-meals{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.meal-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);gap:var(--spacing-sm);cursor:pointer;transition:box-shadow var(--transition-fast), border-color var(--transition-fast);flex-direction:column;display:flex}.meal-card:hover{box-shadow:var(--shadow-sm);border-color:var(--accent-color)}.meal-card-header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);display:flex}.meal-card-header-actions{align-items:center;gap:var(--spacing-xs);display:flex}.meal-menu-container{position:relative}.btn-menu{border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-md);color:var(--color-text-secondary);background:0 0;border:none;padding:2px 6px;line-height:1}.btn-menu:hover{background:var(--color-surface-hover,#0000000d);color:var(--color-text-primary)}.meal-menu{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:10;min-width:120px;position:absolute;top:100%;right:0;overflow:hidden}.meal-menu button{align-items:center;gap:var(--spacing-xs);width:100%;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;font-size:var(--text-sm);color:var(--color-text-primary);text-align:left;background:0 0;border:none;display:flex}.meal-menu button:hover{background:var(--color-surface-hover,#0000000d)}.meal-name{font-weight:600;font-size:var(--text-md);color:var(--color-text-primary)}.status-badge{font-size:var(--text-xs);padding:2px var(--spacing-sm);border-radius:var(--radius-full);font-weight:500}.status-badge.status-planned{background:var(--status-planned-bg);color:var(--status-planned-text)}.status-badge.status-cooked{background:var(--status-cooked-bg);color:var(--status-cooked-text)}.status-badge.status-eaten{background:var(--status-eaten-bg);color:var(--status-eaten-text)}.status-badge.status-cancelled{background:var(--status-cancelled-bg);color:var(--status-cancelled-text)}.meal-card-meta{font-size:var(--text-sm);color:var(--color-text-secondary)}.meal-notes{font-size:var(--text-sm);color:var(--color-text-muted);font-style:italic}.meal-card-actions{gap:var(--spacing-xs);margin-top:var(--spacing-xs);flex-wrap:wrap;display:flex}.btn-action{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);transition:all var(--transition-fast);font-weight:500;display:inline-flex}.btn-cooked{background:var(--status-cooked-bg);color:var(--status-cooked-text);border:1px solid var(--status-cooked-border)}.btn-cooked:hover{background:var(--status-cooked-bg-hover);border-color:var(--status-cooked-border-hover);transform:translateY(-1px)}.btn-eaten{background:var(--status-eaten-bg);color:var(--status-eaten-text);border:1px solid var(--status-eaten-border)}.btn-eaten:hover{background:var(--status-eaten-bg-hover);border-color:var(--status-eaten-border-hover);transform:translateY(-1px)}.btn-cancel-meal{background:var(--status-cancelled-bg);color:var(--status-cancelled-text);border:1px solid var(--status-cancelled-border)}.btn-cancel-meal:hover{background:var(--status-cancelled-bg-hover);border-color:var(--status-cancelled-border-hover)}.btn-delete{background:var(--status-danger-bg);color:var(--status-danger-text);border:1px solid var(--status-danger-border)}.btn-delete:hover{background:var(--status-danger-bg-hover);border-color:var(--status-danger-border-hover)}.btn-calendar{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.btn-calendar:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--accent-color)}.btn-calendar:disabled{opacity:var(--opacity-muted);cursor:not-allowed}.location-select{align-items:center;gap:var(--spacing-xs);font-size:var(--text-xs);display:flex}.location-select span{color:var(--color-text-secondary)}.location-select button{padding:2px var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;font-size:var(--text-xs)}.location-select button:hover{background:var(--color-surface-hover)}.location-select .btn-cancel{color:var(--color-text-muted)}.date-header-row{justify-content:space-between;align-items:center;gap:var(--spacing-sm);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-sm);flex-wrap:wrap;display:flex}.date-header-row .date-header{border-bottom:none;margin-bottom:0;padding-bottom:0}.daily-macros-summary{gap:var(--spacing-md);font-size:var(--text-sm);color:var(--color-text-secondary);display:flex}.macro-total{color:var(--color-text-primary);font-weight:600}.macro-detail{color:var(--color-text-muted)}.meal-macros{gap:var(--spacing-sm);font-size:var(--text-xs);color:var(--color-text-muted);margin-top:var(--spacing-xs);display:flex}@media (width<=768px){.add-meal-form .form-row,.date-meals{grid-template-columns:1fr}.planned-meals-header{align-items:flex-start;gap:var(--spacing-sm);flex-direction:column}.planned-meals-actions{width:100%}.filter-select,.btn-add-meal{flex:1}.date-header-row{flex-direction:column;align-items:flex-start}.daily-macros-summary{gap:var(--spacing-sm);font-size:var(--text-xs)}}[data-theme=dark] .meal-menu,.dark .meal-menu{background:var(--color-surface,#1f1f23);border-color:var(--color-border,#333);box-shadow:var(--shadow-lg)}[data-theme=dark] .btn-menu:hover,.dark .btn-menu:hover,[data-theme=dark] .meal-menu button:hover,.dark .meal-menu button:hover{background:#ffffff1a}.meals-view{padding:var(--spacing-lg);gap:var(--spacing-lg);flex-direction:column;width:100%;display:flex}.meals-view-header{justify-content:space-between;align-items:center;display:flex}.meals-view-header h2{font-size:var(--heading-view);font-weight:var(--font-weight-semibold);margin:0}.meals-tab,.location-tab{border-radius:var(--radius-lg);font-size:var(--text-sm,.875rem);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;align-items:center;display:flex}.meals-tab:hover,.location-tab:hover{color:var(--text-primary);background:var(--bg-hover,#0000000d)}.meals-tabs{gap:var(--spacing-xs);background:var(--bg-secondary);padding:var(--spacing-xs);border-radius:var(--radius-xl);width:fit-content;display:flex}.meals-tab{gap:var(--spacing-sm);padding:var(--btn-padding-lg);font-weight:var(--font-weight-medium)}.meals-tab.active{background:var(--bg-card);color:var(--text-primary);box-shadow:var(--shadow-sm,0 1px 3px #0000001a)}.tab-count{min-width:20px;height:20px;padding:0 var(--spacing-xs);background:var(--button-bg-primary);color:var(--text-on-accent);border-radius:var(--radius-full);font-size:var(--text-xs,.75rem);justify-content:center;align-items:center;font-weight:600;display:inline-flex}.meals-tab:not(.active) .tab-count{background:var(--text-tertiary)}.meals-content{background:var(--bg-card);border-radius:var(--radius-xl);padding:var(--spacing-md);box-shadow:var(--shadow-sm,0 1px 3px #0000001a);min-height:400px}.inventory-section{gap:var(--spacing-md);flex-direction:column;display:flex}.location-tabs{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.location-tab{padding:var(--btn-padding-md);background:var(--bg-secondary)}.location-tab.active{background:var(--button-bg-primary);color:var(--text-on-accent)}.location-tab .count{margin-left:var(--spacing-xs);opacity:var(--opacity-secondary)}.inventory-grid{gap:var(--spacing-sm);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.inventory-item{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-sm);gap:var(--spacing-xs);flex-direction:column;display:flex}.inventory-item-name{font-weight:500;font-size:var(--text-sm,.875rem)}.inventory-item-details{font-size:var(--text-xs,.75rem);color:var(--text-secondary)}.inventory-item-expiring{color:var(--color-warning)}.inventory-item-expired{color:var(--color-error)}.inventory-item-actions{gap:var(--spacing-sm);margin-top:var(--spacing-sm);display:flex}.inventory-item-actions button{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-xs,.75rem);cursor:pointer;color:var(--text-secondary);transition:all var(--transition-fast);background:0 0}.inventory-item-actions button:hover{background:var(--bg-tertiary);color:var(--text-primary)}.recipe-list{gap:var(--spacing-md);flex-direction:column;display:flex}.recipe-search{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.recipe-search input{min-width:200px;padding:var(--input-padding-lg);border:1px solid var(--border-color);border-radius:var(--radius-lg);font-size:var(--text-sm,.875rem);flex:1}.recipe-search select{padding:var(--input-padding-lg);border:1px solid var(--border-color);border-radius:var(--radius-lg);font-size:var(--text-sm,.875rem);background:var(--bg-card)}.recipe-filters{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.recipe-filters label{font-size:var(--font-size-xs);color:var(--text-secondary);padding:var(--spacing-xs) 12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-2xl);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:6px;display:flex}.recipe-filters label:hover{background:var(--bg-tertiary);border-color:var(--text-tertiary)}.recipe-filters label:has(input:checked){background:var(--button-bg-primary);color:var(--text-on-accent);border-color:var(--button-bg-primary)}.recipe-filters input[type=checkbox]{width:14px;height:14px;accent-color:var(--text-on-accent);margin:0}.recipe-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.recipe-card{background:var(--bg-secondary);border-radius:var(--radius-xl);padding:var(--spacing-md);cursor:pointer;transition:all var(--transition-fast);position:relative}.recipe-card:hover{background:var(--bg-tertiary)}.recipe-card-title{font-weight:600;font-size:var(--font-size-base);margin-bottom:var(--spacing-xs);padding-right:28px}.recipe-card-meta{font-size:var(--text-xs,.75rem);color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.recipe-card-timing{font-size:var(--text-xs,.75rem);color:var(--text-secondary)}.recipe-card-macros{gap:var(--spacing-sm);font-size:var(--text-xs,.75rem);color:var(--text-tertiary);margin-top:var(--spacing-xs);display:flex}.recipe-card-macros span{background:var(--bg-tertiary);padding:2px var(--spacing-xs);border-radius:var(--radius-sm)}.recipe-card-status{align-items:center;gap:var(--spacing-xs);padding:2px var(--spacing-sm);border-radius:var(--radius-full,9999px);font-size:var(--text-xs,.75rem);margin-top:var(--spacing-sm);font-weight:500;display:inline-flex}.recipe-card-status.ready{background:var(--status-eaten-bg,#22c55e26);color:var(--status-eaten-text)}.recipe-card-status.missing{background:var(--status-cooked-bg,#f59e0b26);color:var(--status-cooked-text)}.btn-favorite{top:var(--spacing-sm);right:var(--spacing-sm);padding:var(--spacing-xs);cursor:pointer;color:var(--text-secondary);transition:all var(--transition-fast);border-radius:var(--radius-sm);background:0 0;border:none;position:absolute}.btn-favorite:hover{color:var(--color-warning);background:var(--bg-tertiary);transform:scale(1.1)}.btn-favorite.is-favorite{color:var(--color-warning)}.tag-filter{align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.tag-filter .filter-label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.tag-chips{flex-wrap:wrap;gap:6px;display:flex}.tag-chip{padding:var(--spacing-xs) 12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-2xl);font-size:var(--font-size-xs);cursor:pointer;transition:all var(--transition-fast);color:var(--text-secondary)}.tag-chip:hover{background:var(--bg-tertiary);border-color:var(--text-tertiary)}.tag-chip.selected{background:var(--button-bg-primary);color:var(--text-on-accent);border-color:var(--button-bg-primary)}.empty-tag-hint .empty-hint{font-size:var(--font-size-xs);color:var(--text-tertiary);font-style:italic}.shopping-list-section{gap:var(--spacing-md);flex-direction:column;display:flex}.shopping-list-header{justify-content:space-between;align-items:center;display:flex}.shopping-list-actions{gap:var(--spacing-sm);display:flex}.shopping-summary{color:var(--text-secondary);font-size:.875rem}.shopping-items{gap:var(--spacing-sm);flex-direction:column;display:flex}.shopping-item{background:var(--bg-secondary);border-radius:var(--radius-lg);align-items:center;gap:12px;padding:12px;display:flex}.shopping-item.checked{opacity:var(--opacity-muted)}.shopping-item input[type=checkbox]{cursor:pointer;width:20px;height:20px}.shopping-item-info{flex:1}.shopping-item-name{font-size:.875rem;font-weight:500}.shopping-item-name.checked{text-decoration:line-through}.shopping-item-quantity{font-size:var(--font-size-xs);color:var(--text-secondary)}.shopping-item button{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-xs);cursor:pointer;color:var(--text-secondary);transition:all var(--transition-fast);background:0 0}.shopping-item button:hover{background:var(--color-error);border-color:var(--color-error);color:var(--text-on-accent)}.add-item-form{padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-lg);flex-direction:column;gap:12px;display:flex}.add-item-row{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.add-item-row input,.add-item-row select{padding:var(--input-padding-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);font-size:.875rem}.add-item-row input[type=text]:first-child{flex:2;min-width:120px}.add-item-row .quantity-input{width:70px}.add-item-row .unit-input{width:80px}.add-item-row select{min-width:100px}.add-item-actions{gap:var(--spacing-sm);justify-content:flex-end;display:flex}.empty-state{justify-content:center;align-items:center;gap:var(--spacing-md);padding:var(--spacing-2xl) var(--spacing-lg);text-align:center;color:var(--text-secondary);flex-direction:column;display:flex}.empty-state p{max-width:320px;margin:0}.empty-steps-message{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.modal-overlay{background:var(--backdrop-color);z-index:var(--z-modal);padding:var(--spacing-lg);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-card);border-radius:var(--radius-xl);padding:var(--spacing-lg);width:100%;max-width:480px;max-height:90vh;overflow-y:auto}.modal-content.modal-large{max-width:640px}.modal-content h3{margin:0 0 var(--spacing-lg) 0;font-size:var(--heading-compact);font-weight:var(--font-weight-semibold)}.form-group{gap:var(--spacing-sm);margin-bottom:var(--spacing-md);flex-direction:column;display:flex}.form-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.form-group input,.form-group select,.form-group textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--bg-card);color:var(--text-primary)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-color-transparent);outline:none}.form-row{gap:var(--spacing-md);grid-template-columns:1fr 1fr;display:grid}.form-hint{font-size:var(--font-size-xs);color:var(--text-tertiary);margin:0}.recipe-detail-header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding-right:40px;display:flex}.recipe-header-actions{align-items:center;gap:var(--spacing-xs,4px);flex-shrink:0;display:flex}.recipe-detail-header h3{flex:1;margin:0}.btn-edit-recipe{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:6px;display:flex}.btn-edit-recipe:hover{color:var(--accent-color);background:color-mix(in srgb, var(--accent-color) 10%, transparent)}.btn-edit-recipe:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.btn-edit-steps{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:6px;display:flex}.btn-edit-steps:hover{color:var(--accent-color);background:color-mix(in srgb, var(--accent-color) 10%, transparent)}.btn-edit-steps:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.recipe-edit-form{flex-direction:column;gap:12px;display:flex}.recipe-edit-form .form-group{margin-bottom:0}.recipe-detail-meta{color:var(--text-secondary);margin-top:var(--spacing-sm);flex-wrap:wrap;gap:12px;font-size:.875rem;display:flex}.recipe-description{color:var(--text-secondary);white-space:pre-wrap;margin-bottom:20px;font-size:.875rem}.recipe-detail-sections{gap:var(--spacing-lg);flex-direction:column;display:flex}.recipe-ingredients h4,.recipe-steps h4{font-size:var(--heading-card);font-weight:var(--font-weight-semibold);margin:0 0 12px}.recipe-ingredients .section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.recipe-ingredients .section-header h4{margin:0}.recipe-ingredients ul{gap:var(--spacing-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.recipe-ingredients li{padding:var(--spacing-sm) 12px;background:var(--bg-secondary);border-radius:var(--radius-md);justify-content:space-between;align-items:center;font-size:.875rem;display:flex}.ingredient-available{border-left:3px solid var(--color-success)}.ingredient-expiring,.ingredient-partial{border-left:3px solid var(--color-warning)}.ingredient-missing{border-left:3px solid var(--color-error)}.ingredient-status{font-size:var(--font-size-xs);color:var(--text-secondary)}.ingredients-by-step{gap:var(--spacing-md);flex-direction:column;display:flex}.step-ingredient-group{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:12px}.step-group-title{margin:0 0 var(--spacing-sm) 0;color:var(--text-primary);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color);font-size:.875rem;font-weight:600}.step-ingredient-group ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.step-ingredient-group li{background:var(--bg-tertiary);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;padding:6px 10px;font-size:.875rem;display:flex}.recipe-steps ol{counter-reset:step;margin:0;padding:0;list-style:none}.recipe-steps li{counter-increment:step;background:var(--bg-secondary);border-radius:var(--radius-lg);margin-bottom:var(--spacing-sm);padding:12px}.recipe-steps li:before{content:counter(step) ".";margin-right:var(--spacing-sm);font-weight:600}.step-title{font-weight:500;display:inline}.step-instructions{margin-top:var(--spacing-sm);color:var(--text-secondary);font-size:.875rem}.step-meta{margin-top:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--text-tertiary);flex-wrap:wrap;gap:12px;display:flex}.step-ingredients,.step-equipment{margin-top:var(--spacing-sm);flex-wrap:wrap;align-items:center;gap:6px;font-size:.8rem;display:flex}.step-detail-label{color:var(--text-secondary);margin-right:var(--spacing-xs);font-weight:500}.step-ingredient{background:var(--color-primary-bg,#3b82f61a);color:var(--color-primary);padding:2px var(--spacing-sm);border-radius:var(--radius-xl);font-size:var(--font-size-xs)}.step-equipment-item{background:var(--color-secondary-bg,#6b72801a);color:var(--text-secondary);padding:2px var(--spacing-sm);border-radius:var(--radius-xl);font-size:var(--font-size-xs)}.expiring-warning{padding:12px var(--spacing-md);background:var(--color-warning-bg);color:var(--color-warning-text);border-radius:var(--radius-lg);font-size:.875rem;font-weight:500}.recipe-card-expiring{font-size:var(--font-size-xs);color:var(--color-warning);margin-top:var(--spacing-xs)}.recipe-card-scaling{align-items:center;gap:var(--spacing-xs);color:var(--accent-color);margin-top:var(--spacing-xs);background:color-mix(in srgb, var(--accent-color) 10%, transparent);border-radius:var(--radius-sm);padding:2px 6px;font-size:.7rem;display:inline-flex}.leftovers-section{gap:var(--spacing-md);flex-direction:column;display:flex}.location-count{opacity:var(--opacity-secondary);margin-left:6px}.leftovers-list{flex-direction:column;gap:12px;display:flex}.leftover-item{justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-xl);border-left:4px solid #0000;display:flex}.leftover-item.expiring{border-left-color:var(--color-warning)}.leftover-item.expired{border-left-color:var(--color-error);opacity:var(--opacity-secondary)}.leftover-info{gap:var(--spacing-xs);flex-direction:column;flex:1;display:flex}.leftover-name{font-weight:600;font-size:var(--font-size-base)}.leftover-meta{font-size:var(--font-size-xs);color:var(--text-secondary);flex-wrap:wrap;gap:12px;display:flex}.leftover-meta .servings{font-weight:500}.leftover-meta .expiration{color:var(--text-secondary)}.leftover-meta .expiration.warning{color:var(--color-warning)}.leftover-meta .expiration.expired{color:var(--color-error)}.leftover-meta .thaw-time{color:var(--color-info)}.leftover-notes{color:var(--text-secondary);margin-top:var(--spacing-xs);font-size:.875rem;font-style:italic}.leftover-actions{gap:var(--spacing-sm);display:flex}.add-leftover-modal select,.add-leftover-modal input[type=number],.add-leftover-modal input[type=date]{width:100%}@media (width<=768px){.meals-view{gap:12px;padding:12px;overflow-x:hidden}.meals-view-header{align-items:stretch;gap:var(--spacing-sm);flex-direction:column;width:100%}.meals-view-header h2{font-size:var(--font-size-lg)}.meals-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:thin;width:100%;max-width:100%;padding:var(--spacing-xs);gap:var(--spacing-xs);flex-wrap:nowrap;overflow-x:auto}.meals-tabs::-webkit-scrollbar{height:4px}.meals-tabs::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-full)}.meals-tab{padding:var(--btn-padding-md);font-size:var(--btn-font-sm);white-space:nowrap}.location-tabs{gap:6px}.location-tab{padding:var(--btn-padding-sm);font-size:var(--btn-font-sm)}.meals-content{padding:var(--spacing-md);border-radius:var(--radius-lg);min-height:auto}.inventory-grid,.recipe-grid{grid-template-columns:1fr}.recipe-search{flex-direction:column}.recipe-search input{min-width:auto}.shopping-list-header{flex-direction:column;align-items:flex-start;gap:12px}.shopping-list-actions{width:100%}.shopping-list-actions button{flex:1}.modal-overlay{padding:var(--spacing-md)}.modal-content{border-radius:var(--radius-xl);padding:20px}}@media (width<=480px){.meals-view{padding:var(--spacing-sm);gap:var(--spacing-sm)}.meals-tab,.location-tab{padding:var(--btn-padding-sm);font-size:var(--btn-font-sm)}.meals-content{padding:12px}}.section-header-actions{align-items:center;gap:var(--spacing-sm,8px);display:flex}.view-mode-toggle{background:var(--color-surface);border-radius:var(--radius-sm,6px);border:1px solid var(--color-border);padding:2px;display:flex}.btn-view-mode{padding:var(--spacing-xs) 12px;color:var(--color-text-secondary);font-size:var(--text-sm,.85rem);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none}.btn-view-mode:hover{color:var(--color-text-primary)}.btn-view-mode.active{background:var(--color-bg,white);color:var(--color-text-primary);box-shadow:var(--shadow-xs);font-weight:500}.btn-view-mode:focus-visible{outline:2px solid var(--accent-color);outline-offset:1px}.macros-fieldset{border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:12px var(--spacing-md);margin:0}.macros-fieldset legend{color:var(--text-secondary);padding:0 var(--spacing-sm);font-size:.875rem;font-weight:500}.macros-inputs{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.macros-inputs .form-group{margin-bottom:0}.macros-inputs input{text-align:center}.macros-inputs input::placeholder{color:var(--text-tertiary);font-size:var(--font-size-xs)}@media (width<=480px){.macros-inputs{grid-template-columns:repeat(2,1fr)}}.recipe-macros{align-items:center;gap:var(--spacing-md,16px);padding:var(--spacing-sm,8px) var(--spacing-md,16px);background:var(--bg-secondary);border-radius:var(--radius-md,8px);margin-bottom:var(--spacing-md,16px);flex-wrap:wrap;font-size:.9rem;display:flex}.recipe-macros .macro-item{color:var(--text-primary)}.recipe-macros .macro-item strong{color:var(--accent-color);font-weight:600}.recipe-macros .macro-label{color:var(--text-tertiary);font-size:.8rem}.recipe-scaling-controls{align-items:center;gap:var(--spacing-sm,8px);padding:var(--spacing-sm,8px) var(--spacing-md,16px);background:var(--bg-secondary);border-radius:var(--radius-md,8px);margin-bottom:var(--spacing-md,16px);flex-wrap:wrap;font-size:.9rem;display:flex}.recipe-scaling-controls label{color:var(--text-secondary);margin-right:var(--spacing-xs,4px);font-weight:500}.scale-buttons{background:var(--bg-tertiary);border-radius:var(--radius-sm,4px);gap:2px;padding:2px;display:flex}.scale-btn{padding:var(--spacing-xs,4px) var(--spacing-sm,8px);border-radius:var(--radius-sm,4px);font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;font-weight:500}.scale-btn:hover{background:var(--bg-card);color:var(--text-primary)}.scale-btn.active{background:var(--button-bg-primary);color:var(--text-on-accent)}.scale-method-hint{font-size:var(--font-size-xs);color:var(--text-tertiary);font-style:italic}.recipe-import-modal,.recipe-export-modal{background:var(--bg-card);border-radius:var(--radius-xl,16px);width:100%;max-width:700px;max-height:85vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.recipe-import-modal .modal-header,.recipe-export-modal .modal-header{padding:var(--spacing-lg,24px);padding-bottom:var(--spacing-md,16px);border-bottom:none;justify-content:space-between;align-items:center;display:flex}.recipe-import-modal .modal-header h2,.recipe-export-modal .modal-header h2{font-size:var(--font-size-xl);color:var(--text-primary);margin:0;font-weight:600}.recipe-import-modal .modal-content,.recipe-export-modal .modal-content{border-radius:0;flex:1;max-width:none;overflow-y:auto}.import-tabs{gap:var(--spacing-xs,4px);padding:0 var(--spacing-lg,24px);border-bottom:1px solid var(--border-color);background:var(--bg-card);display:flex}.import-tabs .tab-btn{padding:var(--spacing-sm,8px) var(--spacing-md,16px);color:var(--text-secondary);font-size:var(--text-sm,.875rem);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px}.import-tabs .tab-btn:hover{color:var(--text-primary)}.import-tabs .tab-btn.active{color:var(--accent-color);border-bottom-color:var(--accent-color);font-weight:500}.import-tab-content,.schema-tab-content{gap:var(--spacing-md,16px);flex-direction:column;height:100%;display:flex}.import-instructions,.schema-instructions,.export-instructions{color:var(--text-secondary);font-size:var(--text-sm,.875rem);margin:0}.gem-link{color:var(--accent-color);font-weight:500;text-decoration:none}.gem-link:hover{text-decoration:underline}.json-input{width:100%;min-height:250px;padding:var(--spacing-md,16px);border:1px solid var(--border-color);border-radius:var(--radius-md,8px);resize:vertical;background:var(--bg-secondary);color:var(--text-primary);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8rem;line-height:1.5}.json-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-transparent);outline:none}.json-input::placeholder{color:var(--text-muted);white-space:pre-line}.validation-errors{padding:var(--spacing-md,16px);background:var(--color-error-bg);border:1px solid var(--color-error);border-radius:var(--radius-md,8px);color:var(--color-error);font-size:var(--text-sm,.875rem)}.validation-errors strong{margin-bottom:var(--spacing-sm,8px);display:block}.validation-errors ul{padding-left:var(--spacing-lg,24px);margin:0}.validation-errors li{margin-bottom:var(--spacing-xs,4px)}.validation-success,.import-success{padding:var(--spacing-md,16px);background:var(--color-success-bg);border:1px solid var(--color-success);border-radius:var(--radius-md,8px);color:var(--color-success);font-size:var(--text-sm,.875rem);text-align:center;font-weight:500}.import-actions,.schema-actions-top,.export-actions-top{gap:var(--spacing-sm,8px);justify-content:flex-end;display:flex}.schema-actions-top,.export-actions-top{padding-bottom:var(--spacing-sm,8px);border-bottom:1px solid var(--border-color)}.schema-content,.json-output{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md,8px);flex:1;max-height:400px;overflow:auto}.schema-content pre,.json-output pre{padding:var(--spacing-md,16px);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:var(--font-size-xs);white-space:pre-wrap;word-break:break-word;color:var(--text-primary);margin:0;line-height:1.6}.recipe-list-header{margin-bottom:var(--spacing-md,16px);justify-content:space-between;align-items:center;display:flex}.recipe-list-header h3{color:var(--text-primary);margin:0;font-size:1.1rem}.recipe-header-actions{gap:var(--spacing-sm,8px);display:flex}.btn-import{align-items:center;gap:var(--spacing-xs,4px);padding:var(--spacing-xs,4px) var(--spacing-sm,8px);border:1px solid var(--border-color);border-radius:var(--radius-sm,6px);color:var(--text-secondary);font-size:var(--text-sm,.875rem);cursor:pointer;transition:all var(--transition-fast);background:0 0;display:inline-flex}.btn-import:hover{background:var(--bg-hover,#0000000d);color:var(--text-primary);border-color:var(--text-secondary)}.btn-export{align-items:center;gap:var(--spacing-xs,4px);padding:var(--spacing-xs,4px) var(--spacing-sm,8px);border:1px solid var(--border-color);border-radius:var(--radius-sm,6px);color:var(--text-secondary);font-size:var(--text-sm,.875rem);cursor:pointer;transition:all var(--transition-fast);background:0 0;display:inline-flex}.btn-export:hover{background:var(--bg-hover,#0000000d);color:var(--text-primary);border-color:var(--text-secondary)}[data-theme=dark] .json-input,[data-theme=dark] .schema-content,[data-theme=dark] .json-output{background:var(--bg-tertiary);border-color:var(--border-color)}[data-theme=dark] .validation-errors{background:#ef44441a}[data-theme=dark] .validation-success,[data-theme=dark] .import-success{background:#22c55e1a}@media (width<=600px){.recipe-import-modal,.recipe-export-modal{max-width:100%;max-height:90vh}.import-tabs{padding:0 var(--spacing-md,16px)}.json-input{min-height:200px}.schema-content,.json-output{max-height:300px}}.connections-view{padding:var(--spacing-lg);gap:var(--spacing-lg);flex-direction:column;width:100%;display:flex}.connections-header{justify-content:space-between;align-items:center;display:flex}.connections-header-main{align-items:center;gap:var(--spacing-md);display:flex}.connections-header h2{font-size:var(--heading-view);font-weight:var(--font-weight-semibold);margin:0}.connections-overdue-summary{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-error);color:var(--text-on-accent);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-weight-semibold);align-items:center;display:inline-flex}.connections-content{background:var(--bg-card);border-radius:var(--radius-xl);padding:var(--spacing-md);box-shadow:var(--shadow-sm);min-height:400px}.connections-empty{text-align:center;min-height:300px;color:var(--text-secondary);justify-content:center;align-items:center;gap:var(--spacing-md);flex-direction:column;display:flex}.connections-empty p{margin:0}.connections-groups{gap:var(--spacing-lg);flex-direction:column;display:flex}.connection-group{border-bottom:1px solid var(--border-light);padding-bottom:var(--spacing-lg)}.connection-group:last-child{border-bottom:none;padding-bottom:0}.group-header{padding:var(--spacing-sm) 0;margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.group-header-main{align-items:center;gap:var(--spacing-sm);display:flex}.group-color-dot{border-radius:var(--radius-full);flex-shrink:0;width:12px;height:12px}.group-name{font-size:var(--text-base);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.group-slo{font-size:var(--text-sm);color:var(--text-secondary)}.slo-value{color:var(--accent-color);cursor:pointer;font-size:inherit;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.slo-input{width:60px;padding:2px var(--spacing-xs);font-size:var(--text-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);text-align:center}.group-overdue-badge{padding:2px var(--spacing-sm);background:var(--color-error);color:var(--text-on-accent);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-weight-medium);align-items:center;display:inline-flex}.group-header-actions{align-items:center;gap:var(--spacing-md);display:flex}.group-contact-count{font-size:var(--text-sm);color:var(--text-tertiary)}.group-contacts{gap:var(--spacing-xs);flex-direction:column;display:flex}.group-empty{padding:var(--spacing-md);text-align:center;color:var(--text-tertiary);font-size:var(--text-sm);border-radius:var(--radius-md);transition:border-color var(--transition-fast), background-color var(--transition-fast);border:2px dashed #0000;font-style:italic}.connection-group.drag-over{background:var(--bg-hover);border-radius:var(--radius-lg)}.group-empty.drag-target{border-color:var(--accent-color);background:var(--bg-hover);color:var(--accent-color);font-style:normal}.draggable-contact-wrapper{transition:opacity var(--transition-fast), transform var(--transition-fast)}.draggable-contact-wrapper.dragging{opacity:var(--opacity-disabled);transform:scale(.98)}.contact-card{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);border-left:3px solid var(--group-color,var(--border-color));transition:background-color var(--transition-fast);justify-content:space-between;align-items:center;display:flex}.contact-card:hover{background:var(--bg-hover)}.contact-card.overdue{background:var(--color-error-bg-light,#ef444414)}[data-theme=dark] .contact-card.overdue{background:var(--color-error-bg-dark,#ef444426)}.contact-card.due_soon{background:var(--color-warning-bg-light,#f59e0b14)}[data-theme=dark] .contact-card.due_soon{background:var(--color-warning-bg-dark,#f59e0b26)}.contact-card-main{flex-direction:column;gap:2px;display:flex}.contact-card-header{align-items:center;gap:var(--spacing-sm);display:flex}.contact-badge{border-radius:var(--radius-full);width:18px;height:18px;font-size:var(--text-xs);font-weight:var(--font-weight-bold);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.contact-badge.overdue{background:var(--color-error);color:var(--text-on-accent)}.contact-badge.due-soon{background:var(--color-warning);color:var(--text-on-warning)}.contact-badge.optional{background:var(--text-tertiary);color:var(--text-on-accent)}.contact-name{font-weight:var(--font-weight-medium);color:var(--text-primary);cursor:pointer;font-size:inherit;text-align:left;background:0 0;border:none;padding:0}.contact-name:hover{color:var(--accent-color);text-decoration:underline}.contact-timing{font-size:var(--text-xs);color:var(--text-secondary)}.contact-notes{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:var(--spacing-xs);text-overflow:ellipsis;white-space:nowrap;font-style:italic;display:block;overflow:hidden}.contact-card-actions{align-items:center;gap:var(--spacing-md);display:flex}.contact-has-task{font-size:var(--text-xs);color:var(--text-tertiary);font-style:italic}.contact-action{font-size:var(--text-sm);color:var(--text-secondary)}.contact-action:hover{color:var(--accent-color)}.contact-action-primary{color:var(--accent-color);font-weight:var(--font-weight-medium)}.contact-form-modal{width:90%;max-width:480px}.contact-form-modal .form-group{margin-bottom:var(--spacing-md)}.contact-form-modal .form-group label{margin-bottom:var(--spacing-xs);font-weight:var(--font-weight-medium);color:var(--text-primary);display:block}.contact-form-modal input[type=text],.contact-form-modal input[type=number],.contact-form-modal select,.contact-form-modal textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--text-base);background:var(--bg-primary);color:var(--text-primary)}.contact-form-modal input[type=text]:focus,.contact-form-modal input[type=number]:focus,.contact-form-modal select:focus,.contact-form-modal textarea:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--focus-ring-color,#3b82f61a);outline:none}.contact-form-modal .form-group-checkbox{gap:var(--spacing-xs);flex-direction:column;display:flex}.contact-form-modal .form-group-checkbox label{align-items:center;gap:var(--spacing-sm);cursor:pointer;font-weight:400;display:flex}.contact-form-modal .form-group-checkbox input[type=checkbox]{cursor:pointer;width:18px;height:18px}.contact-form-modal .form-hint{font-size:var(--text-xs);color:var(--text-tertiary);margin:0}.contact-form-modal .form-actions{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;display:flex}.contact-form-modal .form-actions-right{gap:var(--spacing-sm);display:flex}@media (width<=768px){.connections-view{padding:var(--spacing-md)}.connections-header{align-items:flex-start;gap:var(--spacing-md);flex-direction:column}.contact-card{align-items:flex-start;gap:var(--spacing-sm);flex-direction:column}.contact-card-actions{justify-content:flex-end;width:100%}.group-header{align-items:flex-start;gap:var(--spacing-sm);flex-direction:column}.group-header-actions{justify-content:space-between;width:100%}}.skills-view{padding:var(--spacing-lg);gap:var(--spacing-lg);flex-direction:column;width:100%;display:flex}.skills-view-header{justify-content:space-between;align-items:center;display:flex}.skills-view-header h2{font-size:var(--heading-view);font-weight:var(--font-weight-semibold);margin:0}.skills-view-actions{gap:var(--spacing-sm);display:flex}.skills-content{flex:1}.skills-grid{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-items:start;display:grid}@media (width<=768px){.skills-grid{grid-template-columns:1fr}}.skill-card{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-md);border-left:var(--spacing-xs) solid var(--card-accent-color,var(--accent-color));gap:var(--spacing-sm);transition:box-shadow var(--transition-fast);flex-direction:column;display:flex}.skill-card:hover{box-shadow:var(--shadow-sm)}.skill-card-header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);display:flex}.skill-card-title{font-size:var(--heading-card);font-weight:var(--font-weight-semibold);color:var(--text-primary);word-wrap:break-word;flex:1;min-width:0;margin:0}.skill-card-actions{opacity:0;transition:opacity var(--transition-fast);flex-shrink:0;gap:2px;display:flex}.skill-card:hover .skill-card-actions,.skill-card:focus-within .skill-card-actions{opacity:1}@media (hover:none){.skill-card-actions{opacity:1}}.skill-card-actions .btn-icon{color:var(--text-primary)}.skill-card-delete:hover{color:var(--error-color)}.skill-card-details{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:var(--line-height-normal);white-space:pre-wrap;word-wrap:break-word;margin:0}.skill-group-section{margin-bottom:var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--radius-lg);overflow:hidden}.skill-group-header{padding:var(--spacing-md);background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.skill-group-toggle{align-items:center;gap:var(--spacing-sm);cursor:pointer;color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);text-align:left;background:0 0;border:none;flex:1;min-width:0;padding:0;display:flex}.skill-group-toggle:hover{color:var(--accent-color)}.skill-group-collapse-indicator{font-size:var(--font-size-xs);color:var(--text-muted);flex-shrink:0;width:16px}.skill-group-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.skill-group-count{color:var(--text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);margin-left:var(--spacing-xs)}.skill-group-actions{opacity:0;transition:opacity var(--transition-fast);flex-shrink:0;gap:2px;display:flex}.skill-group-header:hover .skill-group-actions,.skill-group-header:focus-within .skill-group-actions{opacity:1}@media (hover:none){.skill-group-actions{opacity:1}}.skill-group-actions .btn-icon{color:var(--text-primary)}.skill-group-delete:hover{color:var(--error-color)}.skill-group-content{padding:var(--spacing-md)}.skill-group-empty{color:var(--text-muted);font-size:var(--font-size-sm);text-align:center;padding:var(--spacing-lg);margin:0}.ungrouped-section{margin-top:var(--spacing-lg)}.ungrouped-section-header{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--spacing-md) 0;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.skill-group-form-modal{width:100%;max-width:400px}.skill-group-form-modal form{gap:var(--spacing-lg);flex-direction:column;display:flex}.skill-group-form-modal .form-actions{justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-md);display:flex}.skill-form-modal{width:100%;max-width:480px}.skill-form-modal form{gap:var(--spacing-lg);flex-direction:column;display:flex}.skill-form-modal .form-actions{justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-md);display:flex}.color-picker{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.color-option{cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast);border:2px solid #0000;border-radius:50%;padding:0}.color-option:hover{transform:scale(1.1)}.color-option.selected{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--bg-primary)}@media (width<=768px){.skills-view .undo-toast{bottom:80px}}.gratitude-view{padding:var(--spacing-lg);gap:var(--spacing-lg);flex-direction:column;width:100%;display:flex}.gratitude-view-header{justify-content:space-between;align-items:center;display:flex}.gratitude-view-header h2{font-size:var(--heading-view);font-weight:var(--font-weight-semibold);margin:0}.gratitude-add-form{gap:var(--spacing-sm);align-items:flex-start;display:flex}.gratitude-add-form textarea{resize:vertical;min-height:44px;max-height:120px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);font-family:inherit;font-size:var(--font-size-base);line-height:var(--line-height-normal);flex:1}.gratitude-add-form textarea::placeholder{color:var(--text-muted)}.gratitude-add-form textarea:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-alpha,#4da6ff33);outline:none}.gratitude-date-group{gap:var(--spacing-sm);flex-direction:column;display:flex}.gratitude-date-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--border-light)}.gratitude-entry{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-md);border-left:3px solid var(--color-success);justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);transition:box-shadow var(--transition-fast);display:flex}.gratitude-entry:hover{box-shadow:var(--shadow-sm)}.gratitude-entry-content{flex:1;min-width:0}.gratitude-entry-text{font-size:var(--font-size-base);color:var(--text-primary);line-height:var(--line-height-normal);white-space:pre-wrap;word-wrap:break-word;margin:0}.gratitude-entry-category{margin-top:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--text-muted);background:var(--bg-tertiary);padding:2px var(--spacing-sm);border-radius:var(--radius-sm);display:inline-block}.gratitude-entry-actions{opacity:0;transition:opacity var(--transition-fast);flex-shrink:0;gap:2px;display:flex}.gratitude-entry:hover .gratitude-entry-actions,.gratitude-entry:focus-within .gratitude-entry-actions{opacity:1}@media (hover:none){.gratitude-entry-actions{opacity:1}}.gratitude-stats{gap:var(--spacing-lg);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);display:flex}.gratitude-stat{text-align:center}.gratitude-stat-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-success)}.gratitude-stat-label{font-size:var(--font-size-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}@media (width<=768px){.gratitude-add-form{flex-direction:column}.gratitude-add-form textarea{width:100%}.gratitude-stats{gap:var(--spacing-md);flex-wrap:wrap}.gratitude-stat{flex:1;min-width:60px}}.privacy-modal{flex-direction:column;max-width:600px;max-height:80vh;display:flex}.privacy-modal-content{flex:1;overflow-y:auto}.privacy-updated{font-size:var(--font-size-sm);color:var(--text-muted);margin-bottom:20px}.privacy-section{margin-bottom:var(--spacing-lg)}.privacy-section:last-child{margin-bottom:0}.privacy-section h3{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--spacing-sm) 0}.privacy-section p{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0 0 var(--spacing-sm) 0;line-height:1.6}.privacy-section p:last-child{margin-bottom:0}.privacy-section ul,.privacy-section ol{font-size:var(--font-size-sm);color:var(--text-secondary);margin:var(--spacing-sm) 0;padding-left:var(--spacing-lg);line-height:1.6}.privacy-section li{margin-bottom:var(--spacing-xs)}.privacy-section a{color:var(--accent-color);text-decoration:none}.privacy-section a:hover{text-decoration:underline}.privacy-section strong{color:var(--text-primary);font-weight:var(--font-weight-medium)}.privacy-table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm);margin:var(--spacing-sm) 0}.privacy-table th,.privacy-table td{text-align:left;padding:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.privacy-table th{color:var(--text-primary);font-weight:var(--font-weight-medium);background:var(--bg-secondary)}.privacy-table td{color:var(--text-secondary)}.privacy-table tr:last-child td{border-bottom:none}.delete-cloud-data{background:var(--bg-secondary);border-radius:var(--radius-lg);margin-top:12px;padding:12px}.btn-delete-data{padding:var(--spacing-sm) var(--spacing-md);background:var(--error-color);color:var(--text-on-error);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;transition:opacity var(--transition-base);border:none;font-weight:500}.btn-delete-data:hover{opacity:.9}.delete-confirm{margin-top:var(--spacing-sm)}.delete-warning{color:var(--error-color);margin-bottom:12px;font-weight:500}.delete-confirm-buttons{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.btn-confirm-delete{padding:var(--spacing-sm) var(--spacing-md);background:var(--error-color);color:var(--text-on-error);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;border:none;font-weight:500}.btn-confirm-delete:hover{opacity:.9}.btn-cancel-delete{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer}.btn-cancel-delete:hover{background:var(--bg-hover)}.delete-status{color:var(--text-secondary);font-style:italic}.delete-success{color:var(--success-color);font-weight:500}.delete-error{color:var(--error-color)}@media (width<=768px){.privacy-modal{max-height:90vh}.privacy-section h3{font-size:var(--font-size-sm)}.privacy-section p,.privacy-section ul,.privacy-section ol,.privacy-table{font-size:var(--font-size-xs)}.privacy-table th,.privacy-table td{padding:6px}}.about-modal{flex-direction:column;max-width:550px;max-height:80vh;display:flex}.about-modal-content{flex:1;overflow-y:auto}.about-modal-content p{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0 0 var(--spacing-md) 0;line-height:1.7}.about-modal-content p:last-child{margin-bottom:0}.about-modal-content em{color:var(--text-primary);font-style:italic}@media (width<=768px){.about-modal{max-height:90vh}.about-modal-content p{font-size:var(--font-size-xs)}}.energy-level-chip-icon{font-size:.875rem;line-height:1}.energy-level-chip-small .energy-level-chip-icon{font-size:var(--font-size-xs)}.energy-level-chip-label{font-weight:500}.energy-level-chip[data-level=HIGH_VOLTAGE]{background-color:var(--energy-high-bg);color:var(--energy-high)}.energy-level-chip[data-level=LOW_VOLTAGE]{background-color:var(--energy-low-bg);color:var(--energy-low)}.energy-level-chip[data-level=RECOVERY]{background-color:var(--energy-recovery-bg);color:var(--energy-recovery)}.dopamenu-pairing-chip{background:var(--bg-tertiary);cursor:help;justify-content:center;font-size:.9rem}.dopamenu-pairing-chip-small{font-size:var(--font-size-xs)}.priority-chip-icon{font-size:.625rem;line-height:1}.priority-chip-small .priority-chip-icon{font-size:.5rem}.priority-chip-label{font-weight:500}.priority-chip[data-priority=P0]{background-color:var(--priority-p0-bg);color:var(--priority-p0)}.priority-chip[data-priority=P1]{background-color:var(--priority-p1-bg);color:var(--priority-p1)}.priority-chip[data-priority=P2]{background-color:var(--priority-p2-bg);color:var(--priority-p2)}.priority-chip[data-priority=P3]{background-color:var(--priority-p3-bg);color:var(--priority-p3)}.priority-chip[data-priority=P4]{background-color:var(--priority-p4-bg);color:var(--priority-p4)}.focus-type-chip{padding:2px var(--spacing-sm);border-radius:var(--radius-xl);font-weight:500}.focus-type-chip-small{gap:2px;padding:1px 6px;font-size:.6875rem}.focus-type-chip-icon{font-size:.875rem;line-height:1}.focus-type-chip-small .focus-type-chip-icon{font-size:var(--font-size-xs)}.focus-type-chip-label{line-height:1.2}.focus-type-chip[data-focus-type=DEEP]{background-color:var(--focus-deep-bg);color:var(--focus-deep-color)}.focus-type-chip[data-focus-type=SHALLOW]{background-color:var(--focus-shallow-bg);color:var(--focus-shallow-color)}.icnu-drivers-chip{font-size:var(--font-size-sm,.875rem);background:var(--bg-tertiary);gap:2px}.icnu-drivers-chip-small{font-size:var(--font-size-xs,.75rem)}.icnu-driver-icon{font-size:inherit;display:inline-block}.contexts-chip{font-size:var(--font-size-sm,.875rem);background:var(--bg-tertiary);color:var(--text-secondary)}.contexts-chip-small{font-size:var(--font-size-xs,.75rem)}.contexts-chip-icon{font-size:inherit;display:inline-block}.contexts-chip-text{white-space:nowrap}.effort-type-chip{font-size:var(--font-size-sm,.875rem);line-height:1.2}.effort-type-chip[data-effort-type=MENTAL]{background:var(--effort-mental-bg,#6366f126);color:var(--effort-mental-color,#818cf8)}.effort-type-chip[data-effort-type=PHYSICAL]{background:var(--effort-physical-bg,#10b98126);color:var(--effort-physical-color,#34d399)}.effort-type-chip-small{font-size:var(--font-size-xs,.75rem)}.effort-type-chip-icon{font-size:inherit;display:inline-block}.effort-type-chip-label{white-space:nowrap}.chip-selector{flex-wrap:wrap;gap:6px;display:flex}.chip-selector__chip{align-items:center;gap:var(--spacing-xs);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);padding:6px 10px;font-family:inherit;font-size:.875rem;display:flex}.chip-selector__chip:hover:not(:disabled){background:var(--bg-hover,var(--bg-tertiary));border-color:var(--border-color)}.chip-selector__chip:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.chip-selector__chip--selected{background:var(--bg-accent-subtle,#4da6ff1a);border-color:var(--accent-color);color:var(--accent-color);border-width:2px;padding:5px 9px}.chip-selector__chip:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.chip-selector__icon{font-size:var(--font-size-base);justify-content:center;align-items:center;line-height:1;display:flex}.chip-selector__label{white-space:nowrap}.chip-selector--pill .chip-selector__chip{border-radius:var(--radius-2xl);padding:6px 12px}.chip-selector--pill .chip-selector__chip--selected{padding:5px 11px}.chip-selector--compact .chip-selector__chip{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);gap:3px}.chip-selector--compact .chip-selector__chip--selected{padding:3px 7px}.chip-selector--compact .chip-selector__icon{font-size:.875rem}.energy-level-selector .chip-selector__chip--selected[data-value=HIGH_VOLTAGE]{background:var(--energy-high-bg);border-color:var(--energy-high);color:var(--energy-high)}.energy-level-selector .chip-selector__chip--selected[data-value=LOW_VOLTAGE]{background:var(--energy-low-bg);border-color:var(--energy-low);color:var(--energy-low)}.energy-level-selector .chip-selector__chip--selected[data-value=RECOVERY]{background:var(--energy-recovery-bg);border-color:var(--energy-recovery);color:var(--energy-recovery)}.context-tag-selector{gap:var(--spacing-sm);flex-direction:column;display:flex}.context-tag-chips{flex-wrap:wrap;gap:6px;display:flex}.context-tag-chip{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) 10px;border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);font-size:.8125rem;font-weight:500;display:inline-flex}.context-tag-chip:hover{background:var(--bg-hover)}.context-tag-chip[data-selected=true]{background:var(--bg-accent-subtle,#4da6ff1a);border-color:var(--accent-color);color:var(--accent-color)}.context-tag-chip[data-selected=true]:hover{background:var(--bg-accent-subtle,#4da6ff26)}.context-tag-chip-custom{padding-right:6px}.context-tag-remove{font-size:var(--font-size-base);opacity:var(--opacity-secondary);margin-left:2px;line-height:1}.context-tag-chip-custom:hover .context-tag-remove{opacity:1}.context-tag-input{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);width:120px;transition:border-color var(--transition-fast);padding:6px 10px;font-size:.8125rem}.context-tag-input::placeholder{color:var(--text-muted)}.context-tag-input:focus{border-color:var(--accent-color);outline:none}.dopamenu-picker{padding:var(--spacing-sm) 12px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;min-width:200px;transition:border-color var(--transition-fast);font-size:.875rem}.dopamenu-picker:hover{border-color:var(--accent-color)}.dopamenu-picker:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-transparent,#4da6ff33);outline:none}.dopamenu-picker option{padding:var(--spacing-xs) var(--spacing-sm)}.dopamenu-picker optgroup{color:var(--text-secondary);font-weight:600}.dopamenu-manager{gap:var(--spacing-md);flex-direction:column;min-width:320px;display:flex}.dopamenu-manager-add-btn{padding:var(--spacing-sm) var(--spacing-md);border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;align-self:flex-start}.dopamenu-manager-add-btn:hover{border-color:var(--accent-color);color:var(--accent-color)}.dopamenu-manager-form{padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-lg);flex-direction:column;gap:12px;display:flex}.dopamenu-manager-form .form-group{gap:var(--spacing-xs);flex-direction:column;display:flex}.dopamenu-manager-form label{color:var(--text-secondary);font-size:.875rem}.dopamenu-manager-form input,.dopamenu-manager-form select{padding:var(--input-padding-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:var(--font-size-base)}.dopamenu-manager-form-actions{gap:var(--spacing-sm);margin-top:var(--spacing-sm);justify-content:flex-end;display:flex}.dopamenu-manager-form-actions button{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);font-size:.875rem}.dopamenu-manager-form-actions button:first-child{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary)}.dopamenu-manager-form-actions button:first-child:hover{background:var(--bg-hover);border-color:var(--text-secondary)}.dopamenu-manager-empty{text-align:center;color:var(--text-muted);padding:var(--spacing-lg) var(--spacing-md)}.dopamenu-manager-list{gap:var(--spacing-md);flex-direction:column;display:flex}.dopamenu-manager-group{gap:var(--spacing-sm);flex-direction:column;display:flex}.dopamenu-manager-group-header{color:var(--text-secondary);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--border-light);margin:0;font-size:.875rem;font-weight:600}.dopamenu-manager-item{padding:var(--spacing-sm) 12px;background:var(--bg-secondary);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:12px;display:flex}.dopamenu-manager-item-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.dopamenu-manager-item-title{color:var(--text-primary)}.dopamenu-manager-item-contexts{font-size:var(--font-size-xs);color:var(--text-muted)}.dopamenu-manager-item-actions{gap:var(--spacing-xs);display:flex}.dopamenu-manager-item-btn{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none}.dopamenu-manager-item-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.dopamenu-manager-item-btn-delete:hover{background:var(--color-error);color:var(--text-on-error)}.dopamenu-context-chips{flex-wrap:wrap;gap:6px;display:flex}.dopamenu-context-chip{padding:var(--spacing-xs) 10px;border:1px solid var(--border-color);border-radius:var(--radius-2xl);background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);font-size:.8rem}.dopamenu-context-chip:hover{border-color:var(--accent-color);color:var(--accent-color)}.dopamenu-context-chip.selected{background:var(--button-bg-primary);border-color:var(--button-bg-primary);color:var(--text-on-accent)}.form-hint{font-size:var(--font-size-xs);color:var(--text-muted);font-weight:400}.dopamenu-manager-footer{padding-top:var(--spacing-sm);border-top:1px solid var(--border-light);justify-content:flex-end;display:flex}@media (width<=480px){.dopamenu-manager{min-width:unset;width:100%}.dopamenu-manager-item{flex-wrap:wrap}.dopamenu-manager-item-title{margin-bottom:var(--spacing-xs);flex:100%}.dopamenu-manager-item-actions{justify-content:flex-end;width:100%}.dopamenu-manager-item-btn{padding:6px 12px;font-size:.8rem}}.priority-selector .chip-selector__chip--selected[data-value=P0]{background:var(--priority-p0-bg);border-color:var(--priority-p0);color:var(--priority-p0)}.priority-selector .chip-selector__chip--selected[data-value=P1]{background:var(--priority-p1-bg);border-color:var(--priority-p1);color:var(--priority-p1)}.priority-selector .chip-selector__chip--selected[data-value=P2]{background:var(--priority-p2-bg);border-color:var(--priority-p2);color:var(--priority-p2)}.priority-selector .chip-selector__chip--selected[data-value=P3]{background:var(--priority-p3-bg);border-color:var(--priority-p3);color:var(--priority-p3)}.priority-selector .chip-selector__chip--selected[data-value=P4]{background:var(--priority-p4-bg);border-color:var(--priority-p4);color:var(--priority-p4)}.focus-type-selector .chip-selector__chip--selected[data-value=DEEP]{background:var(--focus-deep-selected-bg);border-color:var(--focus-deep-color);color:var(--focus-deep-color)}.focus-type-selector .chip-selector__chip--selected[data-value=SHALLOW]{background:var(--focus-shallow-selected-bg);border-color:var(--focus-shallow-color);color:var(--focus-shallow-color)}.effort-type-selector .chip-selector__chip--selected[data-value=MENTAL]{background:var(--effort-mental-bg,#6366f126);border-color:var(--effort-mental-color);color:var(--effort-mental-color)}.effort-type-selector .chip-selector__chip--selected[data-value=PHYSICAL]{background:var(--effort-physical-bg,#10b98126);border-color:var(--effort-physical-color);color:var(--effort-physical-color)}.smart-task-filter{align-items:center;gap:var(--spacing-sm);padding:12px var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-lg);flex-wrap:wrap;font-size:.875rem;display:flex}.smart-task-filter-text{color:var(--text-secondary)}.smart-task-filter-select{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;transition:border-color var(--transition-fast);padding:6px 10px;font-size:.875rem}.smart-task-filter-select:hover{border-color:var(--accent-color)}.smart-task-filter-select:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-transparent,#4da6ff33);outline:none}.smart-task-filter-clear{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;transition:all var(--transition-fast);padding:6px 12px}.smart-task-filter-clear:hover{background:var(--bg-hover);color:var(--text-primary)}.smart-task-filter-chips{gap:var(--spacing-xs);display:flex}.smart-task-filter-chip{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-secondary);font-size:var(--font-size-base);cursor:pointer;transition:all var(--transition-fast)}.smart-task-filter-chip:hover{border-color:var(--accent-color);background:var(--bg-hover)}.smart-task-filter-chip.active{background:var(--button-bg-primary);border-color:var(--button-bg-primary);color:var(--text-on-accent)}@media (width<=480px){.smart-task-filter{align-items:stretch;gap:var(--spacing-sm);flex-direction:column;padding:10px 12px}.smart-task-filter>.smart-task-filter-text:first-child,.smart-task-filter>.smart-task-filter-select:nth-child(2){display:inline}.smart-task-filter-select{width:100%;min-width:unset;padding:10px 12px}.smart-task-filter-text{display:none}.smart-task-filter-text:first-of-type{color:var(--text-primary);margin-bottom:-4px;font-weight:500;display:block}.smart-task-filter-chips{flex-wrap:wrap;width:100%}.smart-task-filter-chip{text-align:center;min-width:calc(50% - 4px);padding:var(--spacing-sm);flex:1}.smart-task-filter-clear{width:100%;margin-top:var(--spacing-xs);padding:10px}}.dep-selector{flex-direction:column;gap:6px;display:flex}.dep-selector-chips{gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.dep-selector-chip{align-items:center;gap:var(--spacing-xs);padding:2px var(--spacing-sm);background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--radius-xl);color:var(--text-primary);font-size:.8rem;display:inline-flex}.dep-selector-chip-title{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.dep-selector-chip-remove{all:unset;cursor:pointer;font-size:var(--font-size-base);color:var(--text-muted);padding:0 2px;line-height:1}.dep-selector-chip-remove:hover{color:var(--color-error)}.dep-selector-search-wrap{position:relative}.dep-selector-search{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);width:100%;color:var(--text-primary);font-size:var(--font-size-sm);box-sizing:border-box;padding:6px 10px}.dep-selector-search::placeholder{color:var(--text-muted)}.dep-selector-dropdown{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);z-index:10;max-height:200px;padding:var(--spacing-xs);margin-top:2px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.dep-selector-option{all:unset;width:100%;font-size:var(--font-size-sm);color:var(--text-primary);cursor:pointer;border-radius:var(--radius-sm);box-sizing:border-box;padding:6px 10px;display:block}.dep-selector-option:hover{background:var(--bg-tertiary)}.dep-selector-empty{color:var(--text-muted);text-align:center;padding:10px;font-size:.8rem}.badge{padding:var(--btn-padding-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);align-items:center;gap:var(--spacing-xs);white-space:nowrap;cursor:inherit;background:0 0;border:none;font-family:inherit;display:inline-flex}.tasks-root button.badge{cursor:pointer;transition:all var(--transition-fast)}.tasks-root button.badge:hover:not(:disabled){filter:brightness(.95)}.tasks-root button.badge:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.badge-pill{border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-secondary)}.badge-flat{border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-secondary)}.badge-outlined{border-radius:var(--radius-full);border:1px solid var(--border-color);color:var(--text-secondary);background:0 0}.badge-primary{background:var(--button-bg-primary);color:var(--text-on-accent)}.badge-outlined.badge-primary{border-color:var(--accent-color);color:var(--accent-color);background:0 0}.badge-outlined.badge-success{border-color:var(--color-success);color:var(--color-success);background:0 0}.badge-outlined.badge-warning{border-color:var(--warning-color);color:var(--warning-color);background:0 0}.badge-danger{background:color-mix(in srgb, var(--color-error) 15%, transparent);color:var(--color-error)}.badge-outlined.badge-danger{border-color:var(--color-error);color:var(--color-error);background:0 0}.badge-sm{padding:var(--btn-padding-xs);font-size:var(--btn-font-xs)}.card{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-md);gap:var(--spacing-sm);transition:all var(--transition-fast);flex-direction:column;display:flex}.card-padding-sm{padding:var(--spacing-sm)}.card-padding-none{padding:0}.card-accent-left{border-left:var(--spacing-xs) solid var(--card-accent-color,var(--accent-color))}.card-default{background:var(--bg-secondary)}.card-default:hover{box-shadow:var(--shadow-sm)}.card-compact{background:var(--bg-card);border:1px solid var(--border-light);gap:var(--spacing-xs)}.card-compact.card-accent-left{border-left:var(--spacing-xs) solid var(--card-accent-color,var(--accent-color))}.card-stat{background:var(--bg-card);border:1px solid var(--border-light);text-align:center;justify-content:center;align-items:center}.card-interactive{cursor:pointer;text-align:left;font-family:inherit;font-size:inherit;color:var(--text-primary);border:none;width:100%}.card-interactive:hover{background:var(--bg-hover)}.card-interactive:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.card-interactive:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.card-interactive:disabled:hover{background:var(--bg-secondary)}.card-interactive.card-compact{border:1px solid var(--border-light)}.card-interactive.card-compact:hover{border-color:var(--accent-color)}.section-header{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-primary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:var(--spacing-md);flex-shrink:0;display:flex}.section-header-left{align-items:baseline;gap:var(--spacing-sm);min-width:0;display:flex}.section-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--text-primary);white-space:nowrap;margin:0}.section-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary);white-space:nowrap}.section-header-right{align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;justify-content:flex-end;display:flex}.section-header .btn-action{padding:var(--btn-padding-sm);border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.section-header .btn-action:hover:not(:disabled){background:var(--bg-hover);border-color:var(--text-secondary)}.section-header .btn-action:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.section-header .filter-group{background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color);padding:2px;display:flex}.section-header .btn-filter{padding:var(--spacing-xs) var(--spacing-sm);color:var(--text-secondary);font-size:var(--font-size-sm);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none}.section-header .btn-filter:hover{color:var(--text-primary)}.section-header .btn-filter.active{background:var(--bg-primary);color:var(--text-primary);box-shadow:var(--shadow-xs);font-weight:500}.section-header .selection-count{font-size:var(--font-size-sm);color:var(--text-secondary);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-accent-subtle);border-radius:var(--radius-sm)}.section-header .toggle-label{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer;display:flex}.section-header .toggle-label input[type=checkbox]{cursor:pointer}.section-header select{padding:var(--input-padding-sm);border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--font-size-sm);cursor:pointer}.section-header .btn-refresh{padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;font-size:var(--font-size-md);color:var(--text-secondary);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none}.section-header .btn-refresh:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover)}.section-header .btn-refresh:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.style-guide{background:var(--bg-primary);z-index:var(--z-modal);padding:var(--spacing-lg);position:fixed;inset:0;overflow:auto}.sg-header{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.sg-header h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);margin:0}.sg-content{max-width:1200px;margin:0 auto}.sg-section{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--radius-lg)}.sg-section-title{margin:0 0 var(--spacing-lg);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--accent-color)}.sg-subsection{margin-bottom:var(--spacing-lg)}.sg-subsection:last-child{margin-bottom:0}.sg-subsection h3{margin:0 0 var(--spacing-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.sg-color-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.sg-color-swatch{gap:var(--spacing-xs);flex-direction:column;display:flex}.sg-color-sample{border-radius:var(--radius-md);border:1px solid var(--border-color);width:100%;height:60px}.sg-color-info{flex-direction:column;gap:2px;display:flex}.sg-color-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.sg-color-var{font-size:var(--font-size-xs);color:var(--text-muted);font-family:monospace}.sg-typography-samples{gap:var(--spacing-md);flex-direction:column;display:flex}.sg-type-sample{padding:var(--spacing-sm);background:var(--bg-primary);border-radius:var(--radius-sm);color:var(--text-primary)}.sg-spacing-grid{gap:var(--spacing-lg);flex-wrap:wrap;align-items:flex-end;display:flex}.sg-spacing-item{align-items:center;gap:var(--spacing-xs);flex-direction:column;display:flex}.sg-spacing-visual{background:var(--accent-color);border-radius:var(--radius-sm);min-width:8px;min-height:8px}.sg-spacing-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.sg-spacing-var{font-size:var(--font-size-xs);color:var(--text-muted);font-family:monospace}.sg-button-row{gap:var(--spacing-md);flex-wrap:wrap;align-items:center;display:flex}.sg-badge-row{gap:var(--spacing-sm);flex-wrap:wrap;align-items:center;display:flex}.sg-card-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));display:grid}.sg-card-grid h4{margin:0 0 var(--spacing-xs);font-size:var(--font-size-base)}.sg-card-grid p{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}.sg-section-headers{gap:var(--spacing-lg);flex-direction:column;display:flex}.sg-empty-states{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.sg-form-samples{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));display:grid}.sg-form-field{gap:var(--spacing-xs);flex-direction:column;display:flex}.sg-form-field span{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.sg-form-field input[type=text],.sg-form-field select,.sg-form-field textarea{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:var(--font-size-base)}.sg-form-field input:focus,.sg-form-field select:focus,.sg-form-field textarea:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--focus-ring-color,#3b82f633);outline:none}.sg-checkbox-field{align-items:center;gap:var(--spacing-sm);flex-direction:row}@media (width<=768px){.style-guide{padding:var(--spacing-md)}.sg-header{gap:var(--spacing-md);text-align:center;flex-direction:column}.sg-color-grid,.sg-card-grid,.sg-form-samples,.sg-empty-states{grid-template-columns:1fr}}.agenda-view{gap:var(--spacing-md);flex-direction:column;flex:1;padding:12px;display:flex;overflow-y:auto}.agenda-day{background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-color);overflow:hidden}.agenda-day--today{border-color:var(--accent-color);box-shadow:0 0 0 1px var(--accent-color)}.agenda-day--selected{outline:2px solid var(--accent-color);outline-offset:-2px}.agenda-day--selected .agenda-day-header{background:color-mix(in srgb, var(--accent-color) 12%, var(--bg-secondary))}.agenda-day-header.clickable{cursor:pointer;transition:background var(--transition-fast)}.agenda-day-header.clickable:hover{background:color-mix(in srgb, var(--accent-color) 8%, var(--bg-secondary))}.agenda-schedule-hint{color:var(--text-muted);opacity:0;transition:opacity var(--transition-fast);font-size:.7rem;display:block}.agenda-day-header.clickable:hover .agenda-schedule-hint{opacity:1}.agenda-day-header{padding:12px var(--spacing-md);background:var(--bg-secondary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.agenda-day--today .agenda-day-header{background:color-mix(in srgb, var(--accent-color) 10%, var(--bg-secondary))}.agenda-day-name{color:var(--text-primary);font-size:.95rem;font-weight:600}.agenda-day--today .agenda-day-name{color:var(--accent-color)}.agenda-day-date{font-size:var(--font-size-sm);color:var(--text-secondary)}.agenda-events{flex-direction:column;display:flex}.agenda-empty{padding:var(--spacing-md);text-align:center;color:var(--text-muted);font-size:.9rem}.agenda-event{padding:12px var(--spacing-md);border-bottom:1px solid var(--border-color);transition:background-color var(--transition-fast);align-items:flex-start;gap:12px;display:flex}.agenda-event:last-child{border-bottom:none}.agenda-event:active{background:var(--bg-secondary)}.agenda-event-indicator{background:var(--event-color);border-radius:2px;flex-shrink:0;align-self:stretch;width:4px;min-height:36px}.agenda-event-content{gap:var(--spacing-xs);flex-direction:column;flex:1;min-width:0;display:flex}.agenda-event-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:500;overflow:hidden}.agenda-event-time{font-size:var(--font-size-sm);color:var(--text-secondary)}.agenda-event--all-day .agenda-event-time{font-style:italic}.agenda-event--overlap{border-left:3px solid var(--warning-color)}.agenda-event--overlap .agenda-event-indicator{margin-left:-3px}.agenda-overlap-badge{margin-left:var(--spacing-sm);color:var(--warning-text);background:color-mix(in srgb, var(--warning-color) 15%, transparent);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.02em;padding:1px 6px;font-size:.7rem;font-weight:500;display:inline-block}@media (width<=768px){.agenda-view{padding:var(--spacing-sm);gap:12px}.agenda-event{gap:var(--spacing-sm);min-height:auto;padding:10px 12px}.agenda-day-header{padding:10px 12px}.agenda-event-title{white-space:normal;text-overflow:clip;font-size:.875rem;line-height:1.3;overflow:visible}.agenda-event-indicator{min-height:24px}.agenda-overlap-badge{padding:1px var(--spacing-xs);font-size:.6rem}}.calendar-view{background:var(--bg-card);border-bottom:1px solid var(--border-color);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.calendar-header{padding:12px var(--spacing-md);background:var(--bg-primary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.calendar-header h2{margin:0;font-size:1.1rem;font-weight:600}.calendar-controls{align-items:center;gap:var(--spacing-sm);display:flex}.view-toggle{background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color);padding:2px;display:flex}.view-toggle .toggle-btn{padding:var(--spacing-xs) 12px;color:var(--text-secondary);font-size:var(--font-size-sm);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none}.view-toggle .toggle-btn:hover{color:var(--text-primary)}.view-toggle .toggle-btn.active{background:var(--button-bg-primary);color:var(--text-on-accent);box-shadow:var(--shadow-xs);font-weight:500}.calendar-range-select{padding:var(--input-padding-sm);border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-size:.9rem}.calendar-refresh{cursor:pointer;color:var(--text-secondary);padding:0 var(--spacing-xs);background:0 0;border:none;font-size:1.2rem}.calendar-refresh:hover{color:var(--text-primary)}.calendar-grid{gap:12px;height:100%;padding:12px;display:flex;overflow-x:auto}.calendar-day-column{background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-color);height:100%;transition:background-color var(--transition-base), border-color var(--transition-base);flex-direction:column;flex:0 0 200px;display:flex}.calendar-day-column.today{border-color:var(--accent-color);background:var(--bg-accent-subtle)}.calendar-day-column.drag-over{background:var(--bg-hover);border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-transparent)}.day-header{border-bottom:1px solid var(--border-color);align-items:baseline;gap:var(--spacing-sm);padding:12px;display:flex}.day-name{color:var(--text-secondary);text-transform:uppercase;font-size:.8rem;font-weight:600}.day-number{color:var(--text-primary);font-size:1.2rem;font-weight:700}.day-events{padding:var(--spacing-sm);gap:var(--spacing-sm);flex-direction:column;flex:1;display:flex;overflow-y:auto}.calendar-event-card{background:var(--bg-card);border:1px solid var(--border-color);border-left:3px solid var(--accent-color);border-radius:var(--radius-sm);padding:var(--spacing-sm);box-shadow:var(--shadow-xs);font-size:.9rem}.event-time{font-size:var(--font-size-xs);color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;overflow:hidden}.event-title{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.empty-day-placeholder{height:100%;color:var(--text-tertiary);border-radius:var(--radius-sm);transition:border-color var(--transition-base);border:2px dashed #0000;justify-content:center;align-items:center;font-size:.9rem;display:flex}.calendar-day-column.drag-over .empty-day-placeholder{border-color:var(--accent-color-transparent)}.calendar-error{padding:var(--spacing-sm) var(--spacing-md);background:var(--error-bg);color:var(--error-text);text-align:center;font-size:.9rem}.calendar-error.calendar-warning{background:var(--warning-bg);color:var(--warning-text)}.hours-view-container{flex-direction:column;flex:1;gap:1rem;padding:1rem;display:flex;overflow-y:auto}.calendar-selector{gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-primary);border-bottom:1px solid var(--border-color);flex-wrap:wrap;display:flex}.calendar-toggle{padding:var(--spacing-xs) 10px;background:var(--bg-secondary);border-radius:var(--radius-2xl);cursor:pointer;font-size:var(--font-size-sm);transition:background var(--transition-fast);align-items:center;gap:6px;display:flex}.calendar-toggle:hover{background:var(--bg-hover)}.calendar-toggle input[type=checkbox]{cursor:pointer;width:14px;height:14px}.calendar-color-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.calendar-name{color:var(--text-primary)}.calendar-toggle.dragging{box-shadow:var(--shadow-md);background:var(--bg-hover)}.time-range-selector{border-left:1px solid var(--border-color);align-items:center;gap:12px;margin-left:auto;padding-left:12px;display:flex}.time-range-label{color:var(--text-secondary);align-items:center;gap:6px;font-size:.8rem;display:flex}.time-range-text{white-space:nowrap}.time-range-label select{padding:var(--input-padding-sm);border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;font-size:.8rem}.time-range-label select:hover{border-color:var(--accent-color)}.time-range-label select option:disabled{color:var(--text-muted)}.event-stream{padding:0 var(--spacing-md) var(--spacing-md);flex:1;overflow-y:auto}.date-group{margin-bottom:var(--spacing-xs)}.date-separator{align-items:center;gap:var(--spacing-sm);padding:12px 0 var(--spacing-sm);background:var(--bg-secondary);z-index:1;border-bottom:1px solid var(--border-color);margin-bottom:var(--spacing-sm);display:flex;position:sticky;top:0}.date-separator.today{border-bottom-color:var(--accent-color)}.date-separator-day{color:var(--text-primary);font-size:.95rem;font-weight:600}.date-separator.today .date-separator-day{color:var(--accent-color)}.date-separator-date{font-size:var(--font-size-sm);color:var(--text-secondary)}.date-events{flex-direction:column;gap:6px;display:flex}.stream-event-card{background:var(--bg-primary);border:1px solid var(--border-color);border-left:3px solid var(--accent-color);border-radius:var(--radius-md);transition:background var(--transition-fast), box-shadow var(--transition-fast);align-items:center;gap:12px;padding:10px 12px;display:flex}.stream-event-card:hover{background:var(--bg-hover);box-shadow:var(--shadow-xs)}.stream-event-card .event-time{color:var(--text-secondary);min-width:100px;margin-bottom:0;font-size:.8rem;font-weight:500}.stream-event-card .event-title{white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:500;overflow:hidden}.empty-date{padding:var(--spacing-sm) 0;color:var(--text-tertiary);font-size:var(--font-size-sm);font-style:italic}.calendar-timeline{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.timeline-body{flex-direction:column;display:flex}.timeline-date-section{border-bottom:2px solid var(--border-color)}.timeline-date-section.today{background:var(--bg-accent-subtle)}.timeline-date-header{padding:var(--spacing-sm) 12px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);align-items:center;display:flex}.timeline-date-section.today .timeline-date-header{background:var(--bg-accent-subtle);border-left:3px solid var(--accent-color)}.timeline-date-label{font-size:var(--font-size-sm);color:var(--text-primary);font-weight:700}.timeline-date-section.today .timeline-date-label{color:var(--accent-color)}.timeline-date-section.selected{outline:2px solid var(--accent-color);outline-offset:-2px}.timeline-date-section.selected .timeline-date-header{background:color-mix(in srgb, var(--accent-color) 12%, var(--bg-secondary));border-left:3px solid var(--accent-color)}.timeline-date-header.clickable{cursor:pointer;transition:background var(--transition-fast)}.timeline-date-header.clickable:hover{background:color-mix(in srgb, var(--accent-color) 8%, var(--bg-secondary))}.timeline-schedule-hint{font-size:var(--font-size-xs);color:var(--text-muted);opacity:0;transition:opacity var(--transition-fast);margin-left:auto;font-weight:400}.timeline-date-header.clickable:hover .timeline-schedule-hint{opacity:1}.timeline-time-col{width:80px;min-width:80px;padding:6px var(--spacing-sm);flex-shrink:0;align-items:center;display:flex}.timeline-time-label{color:var(--text-secondary);white-space:nowrap;font-size:.7rem;font-weight:500}.timeline-allday-row{min-height:36px;padding:var(--spacing-sm);gap:var(--spacing-sm);display:flex}.timeline-allday-row .timeline-time-label{color:var(--text-tertiary);font-style:italic}.timeline-allday-grid{min-height:36px;padding:var(--spacing-sm);gap:var(--spacing-sm);align-items:start}.timeline-allday-grid .timeline-time-col{align-items:center;display:flex}.timeline-allday-grid .timeline-time-label{color:var(--text-tertiary);font-style:italic}.timeline-allday-cell{gap:var(--spacing-xs);padding-left:var(--spacing-sm);border-left:1px solid var(--border-color);flex-direction:column;display:flex}.timeline-allday-cell:first-of-type{border-left:none}.timeline-calendars-row{gap:var(--spacing-sm);flex:1;display:flex}.timeline-cal-column{gap:var(--spacing-xs);border-left:1px solid var(--border-color);flex-direction:column;flex:150px;min-width:120px;display:flex}.timeline-cal-column:first-child{border-left:none}.timeline-cal-column.empty{justify-content:center;align-items:center}.no-events{color:var(--text-tertiary);font-size:.8rem}.timeline-empty-row{border-bottom:1px solid var(--border-color);min-height:36px;display:flex}.timeline-event.allday{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);background:var(--event-bg-color,var(--accent-color));color:var(--event-text-color,var(--text-inverse));font-size:.8rem;font-weight:500}.timeline-event-title{word-wrap:break-word;overflow-wrap:break-word;font-weight:500}.timeline-unified-grid{padding:var(--spacing-sm);gap:0 var(--spacing-sm);align-items:stretch}.timeline-time-cell{padding-top:var(--spacing-xs);min-height:32px;padding-right:var(--spacing-sm);align-items:flex-start;display:flex}.timeline-grid-bg{border-top:1px dashed var(--border-color);border-left:1px solid var(--border-color);min-height:32px}.timeline-grid-bg.first-calendar{border-left:none}.timeline-grid-bg.first-row{border-top:none}.timeline-grid-wrapper{padding:var(--spacing-sm);gap:var(--spacing-sm);display:flex}.timeline-time-column{flex-shrink:0;width:80px;min-width:80px}.timeline-time-row{padding-top:var(--spacing-xs);align-items:flex-start;min-height:32px;display:flex}.timeline-calendars-flex{gap:var(--spacing-sm);flex:1;display:flex}.timeline-cal-grid{border-left:1px solid var(--border-color);flex:150px;min-width:120px;position:relative}.timeline-cal-grid:first-child{border-left:none}.timeline-event-span{border-radius:var(--radius-md);background:linear-gradient(135deg, color-mix(in srgb, var(--event-color,var(--accent-color)) 20%, var(--bg-primary)) 0%, color-mix(in srgb, var(--event-color,var(--accent-color)) 8%, var(--bg-primary)) 100%);border:1px solid color-mix(in srgb, var(--event-color,var(--accent-color)) 30%, var(--border-color));border-left:3px solid var(--event-color,var(--accent-color));box-sizing:border-box;z-index:1;flex-direction:column;justify-content:center;min-width:0;margin:2px;padding:6px 10px;display:flex;position:relative;overflow:hidden}.timeline-event-span:hover{background:linear-gradient(135deg, color-mix(in srgb, var(--event-color,var(--accent-color)) 30%, var(--bg-hover)) 0%, color-mix(in srgb, var(--event-color,var(--accent-color)) 15%, var(--bg-hover)) 100%);box-shadow:var(--shadow-sm)}.timeline-event-span.from-task{border-style:dashed;border-left-width:3px}.event-span-title{color:var(--text-primary);word-wrap:break-word;overflow-wrap:break-word;font-size:.8rem;font-weight:600}.event-span-time{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.empty-calendar{height:100%;min-height:100px;color:var(--text-tertiary);font-size:var(--font-size-sm);justify-content:center;align-items:center;padding:20px;font-style:italic;display:flex}.timeline-drop-zones-section{border-top:1px solid var(--border-color);background:var(--bg-secondary);margin-top:12px;padding:12px}.drop-zones-header{color:var(--text-secondary);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.5px;font-size:.8rem;font-weight:600}.drop-zones-header-clickable{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;display:flex}.drop-zones-header-clickable:hover{color:var(--text-primary)}.drop-zones-header-clickable:focus{outline:2px solid var(--accent-color);outline-offset:2px;border-radius:2px}.time-blocks-date-nav{gap:2px;margin-left:auto;display:flex}.time-blocks-nav-btn{border:1px solid var(--border-color);border-radius:var(--radius-sm,4px);color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm);min-width:44px;min-height:44px;transition:all var(--transition-base);background:0 0;justify-content:center;align-items:center;padding:8px 10px;line-height:1;display:inline-flex}.time-blocks-nav-btn:hover{background:var(--bg-hover,var(--bg-primary));border-color:var(--accent-color);color:var(--text-primary)}.time-blocks-today-btn{font-size:var(--font-size-xs);padding:2px var(--spacing-sm);color:var(--accent-color);border-color:var(--accent-color);font-weight:500}.time-blocks-settings{padding:var(--spacing-sm) 0 var(--spacing-xs);font-size:var(--font-size-xs);gap:12px;display:flex}.time-blocks-settings label{align-items:center;gap:var(--spacing-xs);color:var(--text-secondary);display:flex}.time-blocks-settings select{padding:2px var(--spacing-xs);border:1px solid var(--border-color);border-radius:var(--radius-sm,4px);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--font-size-xs)}.collapse-indicator{transition:transform var(--transition-fast);font-size:.7rem}.timeline-drop-zones{gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.timeline-drop-zones.timeline-no-slots{justify-content:center;padding:12px 0}.no-slots-message{color:var(--text-secondary);font-size:var(--font-size-sm);font-style:italic}.time-slot-drop-zone{min-width:70px;padding:var(--spacing-sm) 10px;background:var(--bg-primary);border:2px dashed var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex:0 0 calc(25% - 3px);justify-content:center;align-items:center;display:flex}.time-slot-drop-zone:hover{border-color:var(--accent-color);background:var(--bg-hover)}.time-slot-drop-zone.drop-zone-over{border-color:var(--accent-color);background:var(--bg-accent-subtle);box-shadow:0 0 0 3px var(--accent-color-transparent);border-style:solid}.time-slot-label{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:500}.time-slot-drop-zone:hover .time-slot-label,.time-slot-drop-zone.drop-zone-over .time-slot-label{color:var(--accent-color)}.timeline-drop-zones-group{margin-bottom:12px}.timeline-drop-zones-group:last-child{margin-bottom:0}.drop-zones-subheader{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;opacity:var(--opacity-hover);margin-bottom:6px;font-size:.7rem;font-weight:600}.time-slot-drop-zone{flex-direction:column;gap:2px}.time-slot-duration{color:var(--text-secondary);font-size:.75rem;font-weight:400}.time-slot-drop-zone:hover .time-slot-duration,.time-slot-drop-zone.drop-zone-over .time-slot-duration{color:var(--accent-color);opacity:var(--opacity-hover)}.subheader-focus{color:var(--accent-color);opacity:1}.subheader-quick{color:var(--color-warning);opacity:1}.shallow-work-slot{background:var(--bg-secondary);border-style:dotted;border-color:var(--color-warning-muted,color-mix(in srgb, var(--color-warning) 40%, var(--border-color)))}.shallow-work-slot:hover{background:var(--bg-hover);border-color:var(--color-warning)}.task-item-wrapper{margin-bottom:.15rem;position:relative}.task-item{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);cursor:grab;transition:transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast), background-color var(--transition-fast);padding:.625rem .875rem;position:relative}.task-drag-handle{color:var(--text-muted);opacity:.4;transition:opacity var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;padding:.25rem 0;display:flex}.task-item:hover .task-drag-handle{opacity:var(--opacity-muted)}.task-item-wrapper:last-child{margin-bottom:0}.task-item:hover{border-color:var(--border-color);background:var(--bg-hover);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.task-item-selected{border-color:var(--accent-color);border-left:4px solid var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-transparent);background-color:var(--bg-selected);padding-left:calc(.75rem - 3px)}.task-item:active{cursor:grabbing}.task-completing{pointer-events:none;animation:.4s ease-out forwards taskComplete}.task-completing .task-title{color:var(--text-muted);transition:color var(--transition-base), text-decoration var(--transition-base);text-decoration:line-through}.task-completing .task-checkbox{accent-color:var(--success-color);animation:.3s ease-out checkboxPop}@keyframes taskComplete{0%{opacity:1;background-color:var(--bg-card);border-color:var(--border-color);transform:scale(1)translate(0)}20%{background-color:var(--success-bg);border-color:var(--success-color);transform:scale(1.02)translate(0)}to{opacity:0;background-color:var(--success-bg);border-color:var(--success-color);transform:scale(.95)translate(20px)}}@keyframes checkboxPop{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.task-content{flex-wrap:wrap;align-items:flex-start;gap:.5rem;width:100%;display:flex}.task-left{align-items:center;gap:.125rem;display:flex}.task-item-dragging{box-shadow:0 8px 24px var(--accent-color-transparent);border-color:var(--accent-color)}.task-checkbox-label{cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;margin:-.5rem;display:flex}.task-checkbox{cursor:pointer;flex-shrink:0;width:18px;height:18px}.task-details{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex:150px;min-width:120px}.task-details:active{cursor:grabbing}.task-title{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:var(--line-height-snug);color:var(--text-primary);text-align:left;overflow-wrap:break-word;white-space:normal;letter-spacing:-.01em;display:block}.connection-badge{flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;display:inline-flex}.connection-name{color:var(--accent-color);font-weight:var(--font-weight-semibold)}.task-meta{flex-wrap:wrap;flex:none;align-items:center;gap:.375rem;margin-left:auto;display:flex}.task-meta:empty{display:none}.task-edit-button{cursor:pointer;min-width:44px;min-height:44px;opacity:var(--opacity-disabled);transition:opacity var(--transition-base), transform var(--transition-base);color:var(--text-secondary);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:-.5rem;padding:.75rem;display:flex}.task-edit-button:hover{opacity:1;color:var(--text-primary)}.task-item-editing{background:var(--bg-accent-subtle);border-color:var(--accent-color)}.task-edit-popover{z-index:var(--z-modal);background:var(--bg-card);border:2px solid var(--accent-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);box-sizing:border-box;width:340px;max-width:calc(100vw - 2rem);padding:.75rem;animation:.15s ease-out popoverFadeIn;position:fixed}@keyframes popoverFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.task-edit-form{box-sizing:border-box;flex-direction:column;gap:.5rem;width:100%;display:flex}.task-edit-form *{box-sizing:border-box}.task-edit-title,.task-edit-notes,.task-edit-date,.task-edit-duration,.task-edit-time{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);transition:border-color var(--transition-base);padding:.5rem;font-family:inherit;font-size:.9rem}.task-edit-title:focus,.task-edit-notes:focus,.task-edit-date:focus,.task-edit-duration:focus,.task-edit-time:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-color-transparent);outline:none}.task-edit-row{align-items:center;gap:.5rem;width:100%;display:flex}.task-edit-date{flex:1;min-width:0}.task-edit-duration{flex-shrink:0;width:70px}.task-edit-label{font-size:var(--font-size-xs);color:var(--info-text);font-weight:var(--font-weight-medium);white-space:nowrap;align-items:center;gap:.3rem;display:flex}.task-edit-time{flex:1}.task-edit-notes{resize:vertical;min-height:3rem}.task-edit-actions{gap:.5rem;display:flex}.task-edit-save,.task-edit-cancel{border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-base);font-weight:var(--font-weight-medium);border:none;padding:.4rem .8rem}.task-edit-save{background:var(--success-color);color:var(--text-inverse);flex:1}.task-edit-save:hover{filter:brightness(.9)}.task-edit-cancel{background:var(--text-muted);color:var(--text-inverse)}.task-edit-cancel:hover{filter:brightness(.85)}.task-edit-clear-btn{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-tertiary);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.task-edit-clear-btn:hover{background:var(--error-bg);color:var(--error-text);border-color:var(--error-text)}.task-scheduled-time{font-size:var(--font-size-xs);border-radius:var(--radius-lg);font-weight:var(--font-weight-medium);white-space:nowrap;background:var(--info-bg);color:var(--info-text);border:1px solid var(--info-color);align-items:center;gap:.2rem;padding:.1rem .4rem;display:inline-flex}.task-scheduled-time svg{flex-shrink:0}.task-unschedule-button{cursor:pointer;min-width:28px;min-height:28px;opacity:var(--opacity-hover);transition:opacity var(--transition-base), background-color var(--transition-base);border-radius:var(--radius-full);color:var(--info-text);background:0 0;border:none;justify-content:center;align-items:center;margin-left:.1rem;padding:.35rem;display:inline-flex}.task-unschedule-button:hover{opacity:1;background-color:var(--accent-color-transparent)}.task-calendar-select{font-size:var(--font-size-xs);border-radius:var(--radius-lg);border:1px solid var(--border-color);background-color:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;appearance:none;text-overflow:ellipsis;white-space:nowrap;max-width:100px;transition:border-color var(--transition-fast), background-color var(--transition-fast);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right .3rem center;background-repeat:no-repeat;padding:.1rem 1.2rem .1rem .3rem;overflow:hidden}@media (prefers-color-scheme:dark){.task-calendar-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}}[data-theme=dark] .task-calendar-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}.task-calendar-select:hover{border-color:var(--accent-color);background-color:var(--bg-secondary)}.task-calendar-select:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-transparent);outline:none}.task-due-date{font-size:var(--font-size-xs);border-radius:var(--radius-lg);font-weight:var(--font-weight-medium);white-space:nowrap;align-items:center;gap:.2rem;padding:.1rem .4rem;display:inline-flex}.task-due-date svg{flex-shrink:0}.task-clear-due-button{cursor:pointer;min-width:28px;min-height:28px;opacity:var(--opacity-hover);transition:opacity var(--transition-base), background-color var(--transition-base);border-radius:var(--radius-full);color:inherit;background:0 0;border:none;justify-content:center;align-items:center;margin-left:.1rem;padding:.35rem;display:inline-flex}.task-clear-due-button:hover{opacity:1;background-color:var(--bg-hover)}.task-due-date.due-today{background:var(--warning-bg);color:var(--warning-text)}.task-due-date.due-soon{background:var(--info-bg);color:var(--info-text)}.task-due-date.due-overdue{background:var(--error-bg);color:var(--error-text)}.task-due-date.due-later{background:var(--bg-tertiary);color:var(--text-secondary)}.task-duration{font-size:var(--font-size-xs);color:var(--text-secondary);background:var(--bg-tertiary);border-radius:var(--radius-lg);align-items:center;gap:.2rem;padding:.1rem .4rem;display:inline-flex}.task-clear-duration-button{cursor:pointer;min-width:28px;min-height:28px;opacity:var(--opacity-hover);transition:opacity var(--transition-base), background-color var(--transition-base);border-radius:var(--radius-full);color:var(--text-secondary);background:0 0;border:none;justify-content:center;align-items:center;margin-left:.1rem;padding:.35rem;display:inline-flex}.task-clear-duration-button:hover{opacity:1;background-color:var(--bg-hover)}.task-dep-blocked{font-size:var(--font-size-xs);border-radius:var(--radius-lg);font-weight:var(--font-weight-medium);background:color-mix(in srgb, var(--color-warning) 12%, transparent);color:var(--color-warning);align-items:center;padding:.1rem .4rem;display:inline-flex}.task-dep-unblocks{font-size:var(--font-size-xs);border-radius:var(--radius-lg);font-weight:var(--font-weight-medium);background:color-mix(in srgb, var(--color-success) 12%, transparent);color:var(--color-success);align-items:center;padding:.1rem .4rem;display:inline-flex}.task-notes{font-size:var(--font-size-sm);color:var(--text-secondary);border-top:1px solid var(--border-light);margin-top:.5rem;padding-top:.5rem;line-height:1.4}.drag-overlay-item{box-shadow:var(--shadow-lg);cursor:grabbing;border-color:var(--accent-color);background:var(--bg-card);opacity:.95;max-width:300px;transform:rotate(1.5deg)scale(1.01)}.task-select-checkbox{cursor:pointer;justify-content:center;align-items:center;min-width:44px;min-height:44px;margin:-.5rem 0 -.5rem -.5rem;display:flex}.task-select-checkbox input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--accent-color)}@media (width<=768px){.task-item-wrapper{margin-bottom:2px}.task-item{padding:.375rem .5rem}.task-content{gap:.25rem}.task-drag-handle{opacity:var(--opacity-muted)}.task-meta{flex-basis:100%;order:10;margin-left:0}.task-actions{opacity:1}.task-left{gap:0}.task-checkbox-label{min-width:40px;min-height:40px;margin:-.375rem}.task-checkbox{width:16px;height:16px}.task-edit-button{min-width:40px;min-height:40px;margin:-.375rem;padding:.625rem}.task-title{font-size:.8125rem;line-height:1.3}.task-meta{gap:.2rem;margin-top:.1rem}.task-due-date,.task-scheduled-time,.task-duration{padding:.05rem .25rem;font-size:.625rem}.task-clear-due-button,.task-unschedule-button,.task-clear-duration-button{min-width:20px;min-height:20px;padding:.2rem}.task-select-checkbox{min-width:32px;min-height:32px;margin:-.25rem 0 -.25rem -.25rem}.task-select-checkbox input[type=checkbox]{width:14px;height:14px}}@media (width<=480px){.task-item{padding:.3rem .4rem}.task-edit-button{min-width:32px;min-height:32px;margin:-.25rem;padding:.4rem}.task-title{font-size:var(--font-size-xs)}.task-due-date,.task-scheduled-time,.task-duration{font-size:.6rem}}.task-actions{opacity:0;transition:opacity var(--transition-fast);flex-shrink:0;align-items:center;gap:.25rem;display:flex}.task-item:hover .task-actions,.task-item:focus-within .task-actions,.task-item-selected .task-actions{opacity:1}@media (hover:none){.task-actions{opacity:1}.task-edit-button{opacity:.7}.task-drag-handle{opacity:var(--opacity-muted)}}.task-action-btn{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;padding:.25rem .625rem}.task-action-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--text-secondary)}.task-action-btn.action-today{background:var(--button-bg-primary);color:var(--text-on-accent);border-color:var(--button-bg-primary)}.task-action-btn.action-today:hover{background:var(--button-bg-primary-hover)}.task-action-btn.action-week{background:var(--info-bg);color:var(--info-text);border-color:var(--info-color)}.task-action-btn.action-week:hover{filter:brightness(.95)}.task-more-menu-wrapper{position:relative}.task-more-menu-dropdown{z-index:var(--z-dropdown);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);min-width:140px;box-shadow:var(--shadow-lg);margin-top:.25rem;padding:.25rem 0;animation:.15s ease-out dropdownFadeIn;position:absolute;top:100%;right:0}.task-more-menu-item{width:100%;font-size:var(--font-size-sm);text-align:left;color:var(--text-primary);cursor:pointer;transition:background-color var(--transition-fast);background:0 0;border:none;padding:.5rem .75rem;display:block}.task-more-menu-item:hover{background:var(--bg-hover)}.task-more-menu-item-danger{color:var(--error-text)}.task-more-menu-item-danger:hover{background:var(--error-bg)}.task-more-menu-divider{background:var(--border-color);height:1px;margin:.25rem 0}@media (width<=768px){.task-actions{gap:.2rem}.task-action-btn{padding:.2rem .4rem;font-size:.6rem}}@media (width<=480px){.task-action-btn{padding:.15rem .4rem;font-size:.6rem}}.quick-add-button{border:1px dashed var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;padding:12px}.quick-add-button:hover{background:var(--bg-hover);border-color:var(--primary-color);color:var(--primary-color)}.quick-add-form{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);flex-direction:column;gap:12px;display:flex}.quick-add-input-wrapper{gap:var(--spacing-sm);align-items:center;display:flex;position:relative}.quick-add-title{padding:var(--input-padding-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-input);color:var(--text-primary);font-size:var(--font-size-base);flex:1}.quick-add-form .btn-icon{padding:.2rem;font-size:1.2rem}.project-select-dropdown{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);width:200px;box-shadow:var(--shadow-md);z-index:var(--z-dropdown);max-height:200px;position:absolute;top:100%;right:0;overflow-y:auto}.project-select-item{padding:var(--spacing-sm);cursor:pointer;font-size:var(--font-size-sm)}.project-select-item:hover{background:var(--bg-hover)}.project-select-item.disabled{color:var(--text-secondary);cursor:default}.quick-add-notes{padding:var(--input-padding-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-input);color:var(--text-primary);resize:vertical;font-family:inherit}.quick-add-row{gap:12px;display:flex}.quick-add-field{gap:var(--spacing-xs);flex-direction:column;flex:1;display:flex}.quick-add-label{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:var(--font-weight-medium)}.quick-add-date,.quick-add-duration{padding:var(--input-padding-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-input);color:var(--text-primary);width:100%}.quick-add-duration{-moz-appearance:textfield}.quick-add-duration::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.quick-add-duration::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quick-add-more-options{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-color);flex-direction:column;gap:12px;padding:12px;display:flex}.quick-add-actions{gap:var(--spacing-sm);justify-content:flex-end;display:flex}.contact-picker{width:100%;position:relative}.contact-picker-input{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--text-base);background:var(--bg-primary);color:var(--text-primary)}.contact-picker-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--focus-ring-color,#3b82f61a);outline:none}.contact-picker-input::placeholder{color:var(--text-muted)}.contact-picker-selected{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);justify-content:space-between;align-items:center;display:flex}.contact-picker-selected-name{font-size:var(--text-base);color:var(--text-primary)}.contact-picker-clear{border-radius:var(--radius-full);background:var(--text-tertiary);width:24px;height:24px;color:var(--text-on-accent);cursor:pointer;border:none;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;display:flex}.contact-picker-clear:hover{background:var(--text-secondary)}.contact-picker-clear:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.contact-picker-dropdown{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);max-height:250px;box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.contact-picker-no-results{padding:var(--spacing-md);text-align:center;color:var(--text-muted);font-size:var(--text-sm)}.contact-picker-group{border-bottom:1px solid var(--border-light)}.contact-picker-group:last-child{border-bottom:none}.contact-picker-group-header{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--text-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary);background:var(--bg-tertiary);text-transform:uppercase;letter-spacing:.05em}.contact-picker-item{padding:var(--spacing-sm);cursor:pointer;min-height:40px;transition:background-color var(--transition-fast);justify-content:space-between;align-items:center;display:flex}.contact-picker-item:hover,.contact-picker-item.selected{background:var(--bg-hover)}.contact-picker-item-name{font-size:var(--text-sm);color:var(--text-primary)}.contact-picker-item-badge{border-radius:var(--radius-full);min-width:24px;min-height:24px;font-size:10px;font-weight:var(--font-weight-bold);justify-content:center;align-items:center;display:inline-flex}.contact-picker-item-badge.overdue{background:var(--color-error,#ef4444);color:var(--text-on-accent)}.timeblocking-view{padding:var(--spacing-md,16px);flex-direction:column;gap:0;display:flex}.timeblocking-loading{padding:var(--spacing-xl,32px);color:var(--text-secondary);justify-content:center;align-items:center;display:flex}.timeblocking-lists-grid{gap:var(--spacing-md,16px);align-items:flex-start;display:flex}.timeblocking-column{gap:var(--spacing-md,16px);flex-direction:column;flex:1;min-width:0;display:flex}.timeblocking-lists-grid.mobile{flex-direction:column}.timeblocking-lists-grid.mobile .timeblocking-column{width:100%;max-width:100%}@media (width<=640px){.timeblocking-lists-grid.mobile{gap:var(--spacing-sm,8px)}}.timeblocking-section{background:var(--bg-card,var(--surface-card));border-radius:var(--radius-lg);border-left:3px solid var(--list-accent-color,var(--accent-color));padding:var(--spacing-sm,8px) var(--spacing-md,16px);box-shadow:var(--shadow-sm);flex-direction:column;min-height:44px;max-height:600px;display:flex;overflow:hidden}.timeblocking-section .list-content{scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.timeblocking-section .list-content::-webkit-scrollbar{width:6px}.timeblocking-section .list-content::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-full)}.timeblocking-section .list-content::-webkit-scrollbar-track{background:0 0}.timeblocking-section:has(.section-header.collapsed){padding:var(--spacing-sm,8px) var(--spacing-md,16px);box-shadow:none;border-bottom:1px solid var(--border-default);background:0 0;border-radius:0}.timeblocking-section:has(.section-header.collapsed):last-child{border-bottom:none}.timeblocking-section.collapsed{min-height:auto;max-height:none}.timeblocking-section.expanded{max-height:600px}.timeblocking-section .section-header.collapsible{align-items:center;gap:var(--spacing-sm,8px);background:linear-gradient(90deg, color-mix(in srgb, var(--list-accent-color,var(--accent-color)) 12%, transparent) 0%, transparent 100%);border-radius:var(--radius-md) var(--radius-md) 0 0;cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;box-shadow:none;transition:background var(--transition-fast);border:none;margin-bottom:0;padding:10px 12px;display:flex;transform:none}.timeblocking-section .section-header.collapsible:hover{background:linear-gradient(90deg, color-mix(in srgb, var(--list-accent-color,var(--accent-color)) 18%, transparent) 0%, transparent 100%)}.timeblocking-section .section-header.collapsed .collapse-indicator{transform:rotate(-90deg)}.timeblocking-section .section-header.collapsible.expanded{margin-bottom:var(--spacing-xs,4px)}.collapse-indicator{font-size:var(--font-size-base);color:var(--text-secondary);width:1.25rem;transition:transform var(--transition-base);flex-shrink:0}.timeblocking-section .section-header h3{font-size:var(--font-size-base,1rem);color:var(--text-primary);flex:1;margin:0;font-weight:600}.section-header-row{align-items:center;gap:var(--spacing-xs,4px);display:flex}.section-header-row .section-header{flex:1}.list-action-btn{border:1px solid var(--border-color);border-radius:var(--radius-md,6px);background:var(--bg-primary);width:36px;height:36px;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-xs);flex-shrink:0;justify-content:center;align-items:center;display:flex}.list-action-btn svg,.list-delete-btn svg{flex-shrink:0;width:20px;height:20px}.list-action-btn:hover{background:color-mix(in srgb, var(--accent-color) 15%, transparent);color:var(--accent-color);border-color:var(--accent-color)}.list-delete-btn{border:1px solid var(--border-color);border-radius:var(--radius-md,6px);background:var(--bg-primary);width:36px;height:36px;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-xs);flex-shrink:0;justify-content:center;align-items:center;display:flex}.list-delete-btn:hover{background:color-mix(in srgb, var(--color-error) 15%, transparent);color:var(--color-error);border-color:var(--color-error)}.delete-confirm-content{gap:var(--spacing-md,16px);flex-direction:column;display:flex}.delete-confirm-content p{color:var(--text-secondary);margin:0}.delete-warning{color:var(--color-error);font-weight:500}.delete-confirm-actions{gap:var(--spacing-sm,8px);justify-content:flex-end;display:flex}.timeblocking-section.primary-list{border:1px solid var(--border-focus)}.timeblocking-section.primary-list:has(.section-header.collapsed){background:var(--surface-card);box-shadow:var(--shadow-sm);border-radius:var(--radius-lg);border-bottom:none}.timeblocking-section.drag-over{background:var(--color-primary-light,#4f46e51a);border:2px dashed var(--color-primary);border-radius:var(--radius-lg)}.task-count-badge{min-width:1.5rem;height:1.5rem;padding:0 var(--spacing-sm,8px);font-size:var(--font-size-sm,.875rem);background:var(--bg-secondary);color:var(--text-secondary);border-radius:var(--radius-full);justify-content:center;align-items:center;font-weight:500;display:inline-flex}.list-content{gap:var(--spacing-sm,8px);flex-direction:column;flex:1;display:flex;overflow-y:auto}.timeblocking-tasks{gap:var(--spacing-sm,8px);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.list-content .quick-add-button{margin-top:var(--spacing-xs,4px);padding:var(--spacing-sm,8px) var(--spacing-md,16px);font-size:var(--font-size-sm,.875rem)}.list-content .quick-add-form{margin-top:var(--spacing-xs,4px);padding:var(--spacing-sm,8px);background:var(--bg-secondary);border-radius:var(--radius-md)}.column-group-wrapper{gap:var(--spacing-md,16px);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:0 var(--spacing-sm) var(--spacing-sm);flex-direction:column;display:flex;overflow:hidden}.column-group-wrapper.collapsed{gap:0;padding-bottom:0}.column-group-label{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold,600);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;padding:var(--spacing-sm) var(--spacing-xs) var(--spacing-xs);text-align:left;background:0 0;border:none;width:100%;display:flex}.column-group-label.clickable{cursor:pointer;border-radius:var(--radius-sm);padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-xs);transition:background var(--transition-fast)}.column-group-label.clickable:hover{background:var(--bg-hover)}.group-collapse-arrow{text-align:center;flex-shrink:0;width:.75rem;font-size:.5rem}.column-group-label:first-child{margin-top:0}.group-collapse-summary{font-size:var(--font-size-xs);font-weight:var(--font-weight-normal,400);color:var(--text-muted);text-transform:none;letter-spacing:normal;margin-left:auto}.empty-section{padding:var(--spacing-md,16px);text-align:center;color:var(--text-muted);font-size:var(--font-size-sm,.875rem);background:var(--bg-secondary);border-radius:var(--radius-md)}.end-of-list-drop-zone{min-height:16px;margin-top:var(--spacing-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.end-of-list-drop-zone.drop-over{background:color-mix(in srgb, var(--accent-color) 15%, transparent);border:2px dashed var(--accent-color);min-height:48px}.create-list-inline{align-items:center;gap:var(--spacing-sm,8px);display:flex}.create-list-inline input{padding:var(--spacing-xs,4px) var(--spacing-sm,8px);font-size:var(--font-size-sm,.875rem);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);min-width:150px}.create-list-inline input:focus{outline:2px solid var(--color-primary);outline-offset:1px;border-color:var(--color-primary)}.create-list-inline .btn-primary{background:var(--button-bg-primary);color:var(--text-on-accent)}@media (width<=640px){.timeblocking-view,.timeblocking-section{padding:var(--spacing-sm,8px)}.create-list-inline{flex-wrap:wrap}.create-list-inline input{flex:1;min-width:120px}}.schedule-conflicts-banner{background:color-mix(in srgb, var(--color-warning) 10%, var(--bg-card));border:1px solid color-mix(in srgb, var(--color-warning) 30%, var(--border-color));border-radius:var(--radius-md);overflow:hidden}.conflicts-header{align-items:center;gap:var(--spacing-xs);display:flex}.conflicts-toggle{align-items:center;gap:var(--spacing-sm);min-width:0;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;text-align:left;transition:background var(--transition-fast);background:0 0;border:none;flex:1;display:flex}.conflicts-toggle:hover{background:color-mix(in srgb, var(--color-warning) 5%, transparent)}.conflicts-icon{font-size:var(--font-size-base);flex-shrink:0}.conflicts-summary{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);flex:1}.conflicts-expand-btn{color:var(--text-secondary);padding:2px var(--spacing-xs);font-size:var(--font-size-xs);flex-shrink:0;line-height:1}.conflicts-dismiss-all-btn{color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);transition:color var(--transition-fast);background:0 0;border:none;padding:2px 6px;line-height:1}.conflicts-dismiss-all-btn:hover{color:var(--text-primary)}.conflicts-list{border-top:1px solid color-mix(in srgb, var(--color-warning) 20%, var(--border-color));margin:0;padding:0;list-style:none}.conflict-item{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-light);display:flex}.conflict-item:last-child{border-bottom:none}.conflict-task-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.conflict-task-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.conflict-time-info{font-size:var(--font-size-xs);color:var(--text-secondary)}.conflict-actions{gap:var(--spacing-xs);flex-shrink:0;display:flex}.conflict-reschedule-btn{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-on-accent);background:var(--button-bg-primary);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);border:none}.conflict-reschedule-btn:hover{background:var(--button-bg-primary-hover)}.conflict-dismiss-btn{color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);transition:color var(--transition-fast);background:0 0;border:none;padding:2px 6px}.conflict-dismiss-btn:hover{color:var(--text-primary)}@media (width<=480px){.conflict-item{flex-direction:column;align-items:flex-start}.conflict-actions{align-self:flex-end}}.weekly-focus-banner{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);min-height:36px;display:flex;overflow-x:auto}.focus-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-tertiary);white-space:nowrap;text-transform:uppercase;letter-spacing:.5px}.focus-chips{gap:var(--spacing-xs);flex:1;display:flex;overflow-x:auto}.focus-chip{align-items:center;gap:var(--spacing-xs);padding:2px var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border-light);white-space:nowrap;border-left:3px solid var(--chip-color,var(--accent-color));display:inline-flex}.focus-chip.completed{color:var(--text-secondary);text-decoration:line-through}.chip-check{color:var(--color-success);font-size:var(--font-size-xs)}.focus-link{font-size:var(--font-size-xs);color:var(--accent-color);cursor:pointer;white-space:nowrap;padding:2px var(--spacing-xs);border-radius:var(--radius-sm);transition:background var(--transition-fast);background:0 0;border:none}.focus-link:hover{background:var(--bg-tertiary)}.smart-list-setup-modal .modal-content{max-width:560px}.smart-list-setup{gap:var(--spacing-md);flex-direction:column;display:flex}.setup-description{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0;line-height:1.5}.setup-progress{align-items:center;gap:var(--spacing-sm);display:flex}.progress-bar{background:var(--bg-tertiary);border-radius:var(--radius-full);flex:1;height:8px;overflow:hidden}.progress-fill{background:var(--color-accent);border-radius:var(--radius-full);height:100%;transition:width var(--transition-normal)}.progress-text{font-size:var(--font-size-xs);color:var(--text-secondary);white-space:nowrap}.smart-list-items{gap:var(--spacing-sm);flex-direction:column;display:flex}.smart-list-item{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color);transition:border-color var(--transition-fast);justify-content:space-between;align-items:center;display:flex}.smart-list-item.configured{border-color:var(--color-success);background:color-mix(in srgb, var(--color-success) 5%, var(--bg-secondary))}.list-info{flex:1;min-width:0}.list-name{font-weight:var(--font-weight-medium);color:var(--text-primary);align-items:center;gap:var(--spacing-xs);display:flex}.check-mark{color:var(--color-success);font-weight:var(--font-weight-bold)}.list-description{font-size:var(--font-size-xs);color:var(--text-tertiary);margin-top:2px}.list-action{margin-left:var(--spacing-sm);flex-shrink:0}.list-action select{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;min-width:140px}.list-action select:hover{border-color:var(--color-accent)}.list-action select:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--color-accent) 20%, transparent);outline:none}.setup-error{padding:var(--spacing-sm) var(--spacing-md);background:color-mix(in srgb, var(--color-error) 10%, var(--bg-secondary));border:1px solid var(--color-error);border-radius:var(--radius-sm);color:var(--color-error);font-size:var(--font-size-sm)}[data-theme=dark] .smart-list-item.configured{background:color-mix(in srgb, var(--color-success) 8%, var(--bg-secondary))}.search-modal-overlay{background:var(--backdrop-color);z-index:var(--z-modal);animation:fadeIn var(--transition-fast);-webkit-backdrop-filter:var(--backdrop-blur-sm);backdrop-filter:var(--backdrop-blur-sm);justify-content:center;align-items:flex-start;padding-top:15vh;display:flex;position:fixed;inset:0}.search-modal{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:600px;max-height:70vh;animation:slideDown var(--transition-fast);flex-direction:column;display:flex;overflow:hidden}.search-input-wrapper{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-color);align-items:center;gap:var(--spacing-sm);display:flex}.search-icon{font-size:var(--font-size-lg);opacity:var(--opacity-hover)}.search-input{font-size:var(--font-size-lg);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1}.search-input::placeholder{color:var(--text-tertiary)}.search-results{padding:var(--spacing-sm) 0;flex:1;overflow-y:auto}.search-no-results{padding:var(--spacing-xl) var(--spacing-lg);text-align:center;color:var(--text-secondary)}.search-result-group{margin-bottom:var(--spacing-sm)}.search-result-group-header{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.search-result-item{padding:var(--spacing-sm) var(--spacing-lg);align-items:center;gap:var(--spacing-sm);cursor:pointer;transition:background-color var(--transition-fast);display:flex}.search-result-item:hover,.search-result-item.selected{background-color:var(--bg-hover)}.search-result-item.selected{background-color:var(--button-bg-primary);color:var(--text-on-accent)}.search-result-item.selected .task-status-icon{opacity:1}.task-status-icon{font-size:var(--font-size-sm);opacity:var(--opacity-hover);text-align:center;width:1rem}.search-modal .task-title{font-size:var(--font-size-base);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.search-footer{padding:var(--spacing-sm) var(--spacing-lg);border-top:1px solid var(--border-color);background:var(--bg-secondary)}.search-hint{align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--text-tertiary);display:flex}.search-hint kbd{min-width:1.5rem;padding:2px var(--spacing-xs);font-size:var(--font-size-xs);font-family:var(--font-mono);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-right:var(--spacing-xs);justify-content:center;align-items:center;display:inline-flex}@media (width<=640px){.search-modal-overlay{-webkit-backdrop-filter:var(--backdrop-blur-md);backdrop-filter:var(--backdrop-blur-md);background:#000000d9;align-items:stretch;padding:0}.search-modal{border-radius:0;max-width:100%;max-height:100vh}}.workflow-layout{flex-direction:column;min-height:100vh;display:flex}.app-header{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex;position:relative}.header-left{align-items:center;gap:2rem;display:flex}.app-header h1{color:var(--text-primary);margin:0;font-size:1.5rem}.header-right{align-items:center;gap:1rem;display:flex}.btn-signout{border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-base);background-color:#0000;padding:.5rem 1rem}.btn-signout:hover{background-color:var(--bg-hover);color:var(--text-primary);border-color:var(--text-secondary)}.btn-setup-lists{background:var(--button-bg-primary);border-radius:var(--radius-md);color:var(--text-on-accent);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-sm);border:none;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:500;display:flex}.btn-setup-lists:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-setup-lists svg{flex-shrink:0}.workflow-content,.main-content-toggle{flex-direction:column;flex:1;display:flex}.view-toggle{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-left:2rem;padding:2px;display:flex}.toggle-btn{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-base);background:0 0;border:none;align-items:center;gap:.5rem;padding:.4rem 1rem;font-size:.9rem;font-weight:500;display:flex}.toggle-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.toggle-btn.active{background:var(--button-bg-primary);color:var(--text-on-accent);box-shadow:var(--shadow-xs)}.dashboard-container{flex-direction:column;height:100%;display:flex}.dashboard-sub-toggle{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);gap:.5rem;padding:.75rem 1rem;display:flex}.sub-toggle-btn{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-base);padding:.5rem 1rem;font-size:.875rem;font-weight:500}.sub-toggle-btn:hover{color:var(--text-primary);background:var(--bg-hover);border-color:var(--text-secondary)}.sub-toggle-btn.active{background:var(--button-bg-primary);color:var(--text-on-accent);border-color:var(--button-bg-primary)}.sub-toggle-btn.back-btn{font-size:var(--font-size-base);padding:.5rem .75rem}.tasks-section{flex-direction:column;flex:1;display:flex}.habits-section,.meals-section{flex-direction:column;flex:1;width:100%;display:flex}.inbox-section{background:var(--bg-card);flex-direction:column;flex:1;display:flex;overflow:hidden}.task-inbox-triage{background:var(--bg-card);border-bottom:1px solid var(--border-color);padding:1rem}.triage-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.triage-header h3{font-size:var(--font-size-base);color:var(--text-primary);margin:0}.quick-capture-inline{max-width:100%}.review-actions{background:var(--bg-secondary);border-radius:var(--radius-lg);align-items:center;gap:1rem;margin-bottom:1rem;padding:.75rem 1rem;display:flex}.review-quick-capture{flex:1}.triage-inbox-btn{background:var(--button-bg-primary);color:var(--text-on-accent);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;border:none;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:flex}.triage-inbox-btn:hover{background:var(--button-bg-primary-hover)}.inbox-count-badge{min-width:20px;height:20px;font-size:var(--font-size-xs);background:#ffffff4d;border-radius:10px;justify-content:center;align-items:center;padding:0 6px;font-weight:600;display:inline-flex}.inbox-count-badge-inline{background:var(--button-bg-primary);min-width:20px;height:20px;color:var(--text-on-accent);font-size:var(--font-size-xs);border-radius:10px;justify-content:center;align-items:center;margin-left:.5rem;padding:0 6px;font-weight:600;display:inline-flex}.inbox-shortcuts-legend{font-size:var(--font-size-xs);color:var(--text-secondary);flex-wrap:wrap;gap:.75rem;padding:.5rem 0;display:flex}.inbox-shortcuts-legend kbd{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:3px;margin-right:2px;padding:1px 5px;font-family:monospace;font-size:.7rem;display:inline-block}@media (width<=768px){.inbox-shortcuts-legend{display:none}.workflow-layout{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}.workflow-content,.main-content-toggle,.tasks-section,.inbox-section{padding-bottom:var(--spacing-lg)}.dashboard-sub-toggle{flex-wrap:wrap;gap:.35rem;padding:.5rem}.sub-toggle-btn{min-height:44px;font-size:var(--font-size-sm);padding:.5rem .75rem}.tasks-section,.inbox-section{padding:.5rem;padding-bottom:var(--spacing-xl)}}@media (width<=480px){.sub-toggle-btn{padding:.5rem .6rem;font-size:.8rem}}.tasks-root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:#ffffffde;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--spacing-3xl:64px;--font-size-xs:.75rem;--font-size-sm:.85rem;--font-size-base:1rem;--font-size-md:1.1rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--font-size-3xl:2.5rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.1;--line-height-snug:1.3;--line-height-normal:1.5;--line-height-relaxed:1.6;--btn-padding-xs:2px 6px;--btn-padding-sm:6px 10px;--btn-padding-md:8px 16px;--btn-padding-lg:10px 20px;--btn-icon-sm:28px;--btn-icon-md:36px;--btn-icon-lg:44px;--input-padding-sm:4px 8px;--input-padding-md:8px 12px;--input-padding-lg:10px 16px;--btn-font-xs:.625rem;--btn-font-sm:.75rem;--btn-font-md:.875rem;--btn-font-lg:1rem;--heading-page:2.5rem;--heading-view:1.5rem;--heading-section:1.125rem;--heading-card:1rem;--heading-compact:1.25rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-full:9999px;--shadow-xs:0 1px 2px #0000000d;--shadow-sm:0 1px 3px #0000001a;--shadow-md:0 4px 6px #0000001a;--shadow-lg:0 10px 15px #0000001a;--shadow-xl:0 20px 25px #0000001a;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease;--z-dropdown:100;--z-sticky:200;--z-modal-backdrop:300;--z-modal:400;--z-tooltip:500;--z-toast:600;--backdrop-blur-sm:blur(2px);--backdrop-blur-md:blur(4px);--backdrop-blur-lg:blur(8px);--backdrop-blur-xl:blur(12px);--opacity-disabled:.5;--opacity-muted:.6;--opacity-secondary:.7;--opacity-hover:.8;--breakpoint-xs:0px;--breakpoint-sm:480px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--bg-primary:#1e1e1e;--bg-secondary:#2d2d2d;--bg-tertiary:#3d3d3d;--bg-hover:#3a3a3a;--bg-selected:#7ba7d126;--bg-accent-subtle:#1a2937;--bg-card:#252525;--bg-input:#2a2a2a;--backdrop-color:#000000bf;--text-primary:#f0f0f0;--text-secondary:#b0b0b0;--text-tertiary:#888;--text-muted:#888;--text-inverse:#1e1e1e;--border-color:#444;--border-light:#333;--border-dark:#555;--accent-color:#4da6ff;--accent-hover:#3d96ef;--accent-color-transparent:#4da6ff33;--primary-color:#4da6ff;--primary-hover:#3d96ef;--color-accent:var(--accent-color);--color-accent-hover:var(--accent-hover);--text-link:#5ab0ff;--text-link-hover:#7cc4ff;--success-color:#4caf50;--success-bg:#1b3d1b;--success-text:#81c784;--color-success:var(--success-color);--error-color:#f44336;--error-bg:#3d1b1b;--error-text:#e57373;--color-error:var(--error-color);--warning-color:#ff9800;--warning-bg:#3d2e1b;--warning-text:#ffb74d;--info-color:#2196f3;--info-bg:#1b2d3d;--info-text:#64b5f6;--priority-p0:#f87171;--priority-p0-bg:#f8717133;--priority-p1:#fb923c;--priority-p1-bg:#fb923c33;--priority-p2:#facc15;--priority-p2-bg:#facc1533;--priority-p3:#4ade80;--priority-p3-bg:#4ade8033;--priority-p4:#60a5fa;--priority-p4-bg:#60a5fa33;--energy-high:#fb923c;--energy-high-bg:#f9731626;--energy-low:#60a5fa;--energy-low-bg:#3b82f626;--energy-recovery:#a78bfa;--energy-recovery-bg:#8b5cf626;--deep-work-bg:linear-gradient(135deg, #7c3aed 0%, #9333ea 100%);--deep-work-border:#6d28d9;--deep-work-shadow:#7c3aed4d;--deep-work-badge-bg:#ffffff40;--deep-work-text:#fff;--shallow-work-bg:linear-gradient(135deg, #d97706 0%, #f59e0b 100%);--shallow-work-border:#b45309;--shallow-work-shadow:#d977064d;--shallow-work-badge-bg:#ffffff40;--shallow-work-text:#fff;--focus-deep-color:#a78bfa;--focus-deep-bg:#8b5cf626;--focus-deep-selected-bg:#8b5cf633;--focus-shallow-color:#fbbf24;--focus-shallow-bg:#d9770626;--focus-shallow-selected-bg:#d9770633;--status-planned-text:#3b82f6;--status-planned-bg:#3b82f626;--status-cooked-text:#d97706;--status-cooked-bg:#f59e0b26;--status-cooked-border:#f59e0b4d;--status-cooked-bg-hover:#f59e0b40;--status-cooked-border-hover:#f59e0b80;--status-eaten-text:#16a34a;--status-eaten-bg:#22c55e26;--status-eaten-border:#22c55e4d;--status-eaten-bg-hover:#22c55e40;--status-eaten-border-hover:#22c55e80;--status-cancelled-text:#6b7280;--status-cancelled-bg:#6b728026;--status-cancelled-border:#6b72804d;--status-cancelled-bg-hover:#6b728040;--status-cancelled-border-hover:#6b728080;--status-danger-text:#ef4444;--status-danger-bg:#ef44441a;--status-danger-border:#ef444433;--status-danger-bg-hover:#ef444433;--status-danger-border-hover:#ef444466;--button-bg-primary:#1a73e8;--button-bg-primary-hover:#1557b0;--color-bg:var(--bg-primary);--color-surface:var(--bg-secondary);--color-surface-raised:var(--bg-tertiary);--color-surface-hover:var(--bg-hover);--color-text:var(--text-primary);--color-text-primary:var(--text-primary);--color-text-secondary:var(--text-secondary);--color-text-muted:var(--text-muted);--color-border:var(--border-color);--color-primary:var(--primary-color);--color-primary-bg:var(--bg-accent-subtle);--color-shadow:#00000026;--color-danger:var(--error-color);--text-xs:var(--font-size-xs);--text-sm:var(--font-size-sm);--text-on-accent:#fff;--text-on-success:#fff;--text-on-error:#fff;--text-on-warning:#333;--text-on-info:#fff;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;background-color:#242424;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}@media (prefers-color-scheme:dark){.tasks-root{--lightningcss-light: ;--lightningcss-dark:initial}}.tasks-root,.tasks-root *{box-sizing:border-box}.tasks-root{width:100%;min-width:320px;max-width:100%;min-height:100vh;margin:0}.tasks-root button{border-radius:var(--radius-md);border:1px solid var(--border-color);background-color:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;transition:border-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);padding:.6em 1.2em;font-family:inherit;font-size:1em;font-weight:500}.tasks-root button:hover{border-color:var(--text-secondary)}.tasks-root button:active:not(:disabled){transform:scale(.98)}.tasks-root button:focus-visible,.tasks-root a:focus-visible,.tasks-root input:focus-visible,.tasks-root textarea:focus-visible,.tasks-root select:focus-visible,.tasks-root [tabindex]:focus-visible{outline:2px solid var(--accent-color,#1a73e8);outline-offset:2px}.tasks-root button:focus:not(:focus-visible),.tasks-root a:focus:not(:focus-visible),.tasks-root input:focus:not(:focus-visible),.tasks-root textarea:focus:not(:focus-visible),.tasks-root select:focus:not(:focus-visible){outline:none}.tasks-root.light{color:#213547;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-primary:#fff;--bg-secondary:#f5f5f5;--bg-tertiary:#e8e8e8;--bg-hover:#f0f0f0;--bg-selected:#1a73e81f;--bg-accent-subtle:#f0f7ff;--bg-card:#fff;--bg-input:#fff;--backdrop-color:#0009;--text-primary:#333;--text-secondary:#595959;--text-tertiary:#767676;--text-muted:#767676;--text-inverse:#fff;--border-color:#ddd;--border-light:#eee;--border-dark:#ccc;--accent-color:#1c6ae9;--accent-hover:#1f6be5;--accent-color-transparent:#1c6ae933;--primary-color:#1c6ae9;--primary-hover:#1f6be5;--color-accent:var(--accent-color);--color-accent-hover:var(--accent-hover);--text-link:#155dd1;--text-link-hover:#0f4eb3;--success-color:#35a751;--success-bg:#e6f4e9;--success-text:#1e7b35;--color-success:var(--success-color);--error-color:#ea4034;--error-bg:#fceae8;--error-text:#c7221f;--color-error:var(--error-color);--warning-color:#fbb904;--warning-bg:#fef6e1;--warning-text:#846206;--info-color:#4387f4;--info-bg:#e7f0fe;--info-text:#1a60d1;--status-planned-text:#2563eb;--status-cooked-text:#b45309;--status-eaten-text:#15803d;--status-cancelled-text:#6b7280;--status-danger-text:#dc2626;--priority-p0:#dc2626;--priority-p0-bg:#dc26261a;--priority-p1:#ea580c;--priority-p1-bg:#ea580c1a;--priority-p2:#ca8a04;--priority-p2-bg:#ca8a041a;--priority-p3:#16a34a;--priority-p3-bg:#16a34a1a;--priority-p4:#2563eb;--priority-p4-bg:#2563eb1a;--energy-high:#f97316;--energy-high-bg:#f973161a;--energy-low:#3b82f6;--energy-low-bg:#3b82f61a;--energy-recovery:#8b5cf6;--energy-recovery-bg:#8b5cf61a;--deep-work-bg:linear-gradient(135deg, #7c3aed 0%, #9333ea 100%);--deep-work-border:#6d28d9;--deep-work-shadow:#7c3aed40;--deep-work-badge-bg:#ffffff40;--deep-work-text:#fff;--shallow-work-bg:linear-gradient(135deg, #d97706 0%, #f59e0b 100%);--shallow-work-border:#b45309;--shallow-work-shadow:#d9770640;--shallow-work-badge-bg:#ffffff40;--shallow-work-text:#fff;--focus-deep-color:#7c3aed;--focus-deep-bg:#8b5cf626;--focus-deep-selected-bg:#8b5cf61a;--focus-shallow-color:#b45309;--focus-shallow-bg:#d9770626;--focus-shallow-selected-bg:#d977061a;--color-bg:var(--bg-primary);--color-surface:var(--bg-secondary);--color-surface-raised:var(--bg-tertiary);--color-surface-hover:var(--bg-hover);--color-text:var(--text-primary);--color-text-primary:var(--text-primary);--color-text-secondary:var(--text-secondary);--color-text-muted:var(--text-muted);--color-border:var(--border-color);--color-primary:var(--primary-color);--color-primary-bg:var(--bg-accent-subtle);--color-shadow:#0000001a;--color-danger:var(--error-color);--text-xs:var(--font-size-xs);--text-sm:var(--font-size-sm);background-color:#fff}.tasks-root.light button:not([class]){background-color:#f9f9f9;border-color:#ccc}@media (prefers-color-scheme:light){.tasks-root:not(.dark):not(.light){color:#213547;--bg-primary:#fff;--bg-secondary:#f5f5f5;--bg-tertiary:#e8e8e8;--bg-hover:#f0f0f0;--bg-selected:#1a73e81f;--bg-accent-subtle:#f0f7ff;--bg-card:#fff;--bg-input:#fff;--backdrop-color:#0009;--text-primary:#333;--text-secondary:#595959;--text-tertiary:#767676;--text-muted:#767676;--text-inverse:#fff;--border-color:#ddd;--border-light:#eee;--border-dark:#ccc;--accent-color:#1a73e8;--accent-hover:#1557b0;--accent-color-transparent:#1a73e833;--primary-color:#1a73e8;--primary-hover:#1557b0;--color-accent:var(--accent-color);--color-accent-hover:var(--accent-hover);--success-color:#34a853;--success-bg:#e6f4ea;--success-text:#1e7e34;--color-success:var(--success-color);--error-color:#ea4335;--error-bg:#fce8e6;--error-text:#c5221f;--color-error:var(--error-color);--warning-color:#fbbc04;--warning-bg:#fef7e0;--warning-text:#856404;--info-color:#4285f4;--info-bg:#e8f0fe;--info-text:#1967d2;--status-planned-text:#2563eb;--status-cooked-text:#b45309;--status-eaten-text:#15803d;--status-cancelled-text:#6b7280;--status-danger-text:#dc2626;--priority-p0:#dc2626;--priority-p0-bg:#dc26261a;--priority-p1:#ea580c;--priority-p1-bg:#ea580c1a;--priority-p2:#ca8a04;--priority-p2-bg:#ca8a041a;--priority-p3:#16a34a;--priority-p3-bg:#16a34a1a;--priority-p4:#2563eb;--priority-p4-bg:#2563eb1a;--energy-high:#f97316;--energy-high-bg:#f973161a;--energy-low:#3b82f6;--energy-low-bg:#3b82f61a;--energy-recovery:#8b5cf6;--energy-recovery-bg:#8b5cf61a;--color-bg:var(--bg-primary);--color-surface:var(--bg-secondary);--color-surface-raised:var(--bg-tertiary);--color-surface-hover:var(--bg-hover);--color-text:var(--text-primary);--color-text-primary:var(--text-primary);--color-text-secondary:var(--text-secondary);--color-text-muted:var(--text-muted);--color-border:var(--border-color);--color-primary:var(--primary-color);--color-primary-bg:var(--bg-accent-subtle);--color-shadow:#0000001a;--color-danger:var(--error-color);--text-xs:var(--font-size-xs);--text-sm:var(--font-size-sm);background-color:#fff}.tasks-root button{background-color:#f9f9f9;border-color:#ccc}}.tasks-root.dark{color:#ffffffde;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-primary:#121215;--bg-secondary:#1a1a1e;--bg-tertiary:#2a2a2f;--bg-hover:#2e2e33;--bg-selected:#7ba7d126;--bg-accent-subtle:#1e2d3d;--bg-card:#1e1e22;--bg-input:#2a2a2f;--backdrop-color:#000000bf;--text-primary:#e0e0e4;--text-secondary:#b0b0b4;--text-tertiary:#96969a;--text-muted:#96969a;--text-inverse:#1e1e22;--border-color:#44444a;--border-light:#333338;--border-dark:#55555c;--accent-color:#80a6cb;--accent-hover:#98b8d7;--accent-color-transparent:#80a6cb33;--primary-color:#80a6cb;--primary-hover:#98b8d7;--color-accent:var(--accent-color);--color-accent-hover:var(--accent-hover);--text-link:#5ea6ed;--text-link-hover:#7bb8f4;--success-color:#4cae4f;--success-bg:#1d3520;--success-text:#80c684;--color-success:var(--success-color);--error-color:#f44034;--error-bg:#3d1f1f;--error-text:#ef9a9a;--color-error:var(--error-color);--warning-color:#ffc105;--warning-bg:#3c3116;--warning-text:#ffd24c;--info-color:#2094f3;--info-bg:#1f2e3d;--info-text:#80a6cb;--deep-work-bg:linear-gradient(135deg, #8b5cf6 0%, #a855f7 100%);--deep-work-border:#7c3aed;--deep-work-shadow:#8b5cf659;--deep-work-badge-bg:#fff3;--deep-work-text:#fff;--shallow-work-bg:linear-gradient(135deg, #f59e0b 0%, #fbbf24 100%);--shallow-work-border:#d97706;--shallow-work-shadow:#f59e0b59;--shallow-work-badge-bg:#00000026;--shallow-work-text:#1f2937;--focus-deep-color:#a78bfa;--focus-deep-bg:#8b5cf626;--focus-deep-selected-bg:#8b5cf633;--focus-shallow-color:#fbbf24;--focus-shallow-bg:#d9770626;--focus-shallow-selected-bg:#d9770633;--status-planned-text:#60a5fa;--status-cooked-text:#f59e0b;--status-eaten-text:#4ade80;--status-cancelled-text:#9ca3af;--status-danger-text:#f87171;--button-bg-primary:#155dd1;--button-bg-primary-hover:#114eb0;--shadow-xs:0 1px 2px #0003;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 6px #0000004d;--shadow-lg:0 10px 15px #0000004d;--shadow-xl:0 20px 25px #0000004d;--color-bg:var(--bg-primary);--color-surface:var(--bg-secondary);--color-surface-raised:var(--bg-tertiary);--color-surface-hover:var(--bg-hover);--color-text:var(--text-primary);--color-text-primary:var(--text-primary);--color-text-secondary:var(--text-secondary);--color-text-muted:var(--text-muted);--color-border:var(--border-color);--color-primary:var(--primary-color);--color-primary-bg:var(--bg-accent-subtle);--color-shadow:#0000004d;--color-danger:var(--error-color);--text-xs:var(--font-size-xs);--text-sm:var(--font-size-sm);background-color:#121215}.tasks-root.dark button:not([class]){background-color:#1a1a1e;border-color:#55555c}.tasks-root[data-theme=dark]{--bg-primary:#121215;--bg-secondary:#1a1a1e;--bg-tertiary:#2a2a2f;--bg-hover:#2e2e33;--bg-selected:#7ba7d126;--bg-accent-subtle:#1e2d3d;--bg-card:#1e1e22;--bg-input:#2a2a2f;--backdrop-color:#000000bf;--text-primary:#e0e0e4;--text-secondary:#b0b0b4;--text-tertiary:#96969a;--text-muted:#96969a;--text-inverse:#1e1e22;--border-color:#44444a;--border-light:#333338;--border-dark:#55555c;--accent-color:#80a6cb;--accent-hover:#98b8d7;--accent-color-transparent:#80a6cb33;--primary-color:#80a6cb;--primary-hover:#98b8d7;--color-accent:var(--accent-color);--color-accent-hover:var(--accent-hover);--success-color:#4cae4f;--success-bg:#1d3520;--success-text:#80c684;--color-success:var(--success-color);--error-color:#f44034;--error-bg:#3d1f1f;--error-text:#ef9a9a;--color-error:var(--error-color);--warning-color:#ffc105;--warning-bg:#3c3116;--warning-text:#ffd24c;--info-color:#2094f3;--info-bg:#1f2e3d;--info-text:#80a6cb;--status-planned-text:#60a5fa;--status-cooked-text:#f59e0b;--status-eaten-text:#4ade80;--status-cancelled-text:#9ca3af;--status-danger-text:#f87171;--button-bg-primary:#155dd1;--button-bg-primary-hover:#114eb0;--shadow-xs:0 1px 2px #0003;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 6px #0000004d;--shadow-lg:0 10px 15px #0000004d;--shadow-xl:0 20px 25px #0000004d;--color-bg:var(--bg-primary);--color-surface:var(--bg-secondary);--color-surface-raised:var(--bg-tertiary);--color-surface-hover:var(--bg-hover);--color-text:var(--text-primary);--color-text-primary:var(--text-primary);--color-text-secondary:var(--text-secondary);--color-text-muted:var(--text-muted);--color-border:var(--border-color);--color-primary:var(--primary-color);--color-primary-bg:var(--bg-accent-subtle);--color-shadow:#0000004d;--color-danger:var(--error-color);--text-xs:var(--font-size-xs);--text-sm:var(--font-size-sm)}.task-duration{color:var(--text-secondary);background-color:var(--bg-tertiary);border-radius:var(--radius-sm);margin-left:8px;padding:2px 6px;font-size:.85em}.task-edit-row{gap:10px;margin-bottom:10px;display:flex}.task-edit-duration{border:1px solid var(--border-color);border-radius:var(--radius-sm);flex:1;padding:8px}@media print{html,body{color:#000!important;background:#fff!important;margin:0!important;padding:0!important}body.printing-recipe #root{display:none!important}body.printing-recipe>.recipe-print-overlay{background:#fff!important;width:100%!important;min-height:auto!important;display:block!important;position:static!important;overflow:visible!important}}.btn{padding:var(--btn-padding-md);border-radius:var(--radius-md);font-size:var(--btn-font-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;gap:var(--spacing-xs);border:none;text-decoration:none;display:inline-flex}.btn:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.btn-xs{padding:var(--btn-padding-xs);font-size:var(--btn-font-xs);border-radius:var(--radius-sm)}.btn-sm{padding:var(--btn-padding-sm);font-size:var(--btn-font-sm)}.btn-md{padding:var(--btn-padding-md);font-size:var(--btn-font-md)}.btn-lg{padding:var(--btn-padding-lg);font-size:var(--btn-font-lg)}.btn-action{padding:var(--btn-padding-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;font-size:var(--btn-font-md);transition:all var(--transition-base);font-weight:var(--font-weight-medium);box-shadow:none;justify-content:center;align-items:center;display:inline-flex}.btn-action:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-action:disabled{opacity:var(--opacity-disabled);cursor:not-allowed;color:var(--text-secondary);background:0 0}.btn-primary{padding:var(--btn-padding-md);border-radius:var(--radius-md);background:var(--button-bg-primary);color:var(--text-on-accent);font-size:var(--btn-font-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:inline-flex}.btn-primary:hover:not(:disabled){background:var(--button-bg-primary-hover);color:var(--text-on-accent)}.btn-primary:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.heading-page{font-size:var(--heading-page);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--text-primary);margin:0}.heading-view{font-size:var(--heading-view);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--text-primary);margin:0}.heading-section{font-size:var(--heading-section);font-weight:var(--font-weight-semibold);line-height:var(--line-height-snug);color:var(--text-secondary);margin:0}.heading-card{font-size:var(--heading-card);font-weight:var(--font-weight-semibold);line-height:var(--line-height-snug);color:var(--text-primary);margin:0}.heading-compact{font-size:var(--heading-compact);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--text-primary);margin:0}.view-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-color);background:var(--bg-primary);justify-content:space-between;align-items:center;display:flex}.view-header h2{font-size:var(--heading-view);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.header-actions{gap:var(--spacing-sm);display:flex}.empty-state,.loading-state,.error-state{padding:var(--spacing-2xl);text-align:center;color:var(--text-secondary);font-size:var(--font-size-base)}.error-state button{margin-top:var(--spacing-md)}.form-group{gap:var(--spacing-sm);flex-direction:column;display:flex}.form-group label{font-weight:var(--font-weight-medium);color:var(--text-secondary);font-size:var(--font-size-sm)}.form-input,.form-group input,.form-group textarea,.form-group select{padding:var(--input-padding-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-base);background:var(--bg-primary);color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);font-family:inherit}.form-input:focus,.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-transparent);outline:none}.form-input::placeholder,.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group textarea{resize:vertical;min-height:80px}.checkbox-label{align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:var(--font-size-sm);color:var(--text-secondary);min-height:44px;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--accent-color);box-sizing:content-box;margin:-13px;padding:13px}.tasks-root input[type=checkbox].checkbox-visible{appearance:none;border:2px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);cursor:pointer;width:18px;height:18px;transition:all var(--transition-fast);position:relative}.tasks-root input[type=checkbox].checkbox-visible:hover{border-color:var(--accent-color)}.tasks-root input[type=checkbox].checkbox-visible:checked{background:var(--accent-color);border-color:var(--accent-color)}.tasks-root input[type=checkbox].checkbox-visible:checked:after{content:"";border:solid var(--text-on-accent);border-width:0 2px 2px 0;width:4px;height:8px;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.tasks-root input[type=checkbox].checkbox-visible:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.tasks-root input[type=range]{accent-color:var(--accent-color)}.tasks-root input[type=time],.tasks-root input[type=number]{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary)}.tasks-root input[type=time]:focus,.tasks-root input[type=number]:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-transparent);outline:none}.btn-secondary{padding:var(--btn-padding-md);border:1px solid var(--border-dark,var(--text-secondary));border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-size:var(--btn-font-md);transition:all var(--transition-base);font-weight:var(--font-weight-medium);background:0 0;justify-content:center;align-items:center;display:inline-flex}.btn-secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--accent-color);color:var(--accent-color)}.btn-secondary:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.btn-icon{min-width:var(--btn-icon-lg);min-height:var(--btn-icon-lg);width:var(--btn-icon-lg);height:var(--btn-icon-lg);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.btn-icon:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-icon:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.btn-icon-sm{min-width:var(--btn-icon-sm);min-height:var(--btn-icon-sm);width:var(--btn-icon-sm);height:var(--btn-icon-sm)}.btn-icon-md{min-width:var(--btn-icon-md);min-height:var(--btn-icon-md);width:var(--btn-icon-md);height:var(--btn-icon-md)}.btn-close{top:var(--spacing-sm);right:var(--spacing-sm);font-size:var(--font-size-xl);cursor:pointer;color:var(--text-secondary);padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;line-height:1;position:absolute}.btn-close:hover{color:var(--text-primary);background:var(--bg-hover)}.btn-filter{padding:var(--btn-padding-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:var(--btn-font-sm);transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;display:inline-flex}.btn-filter:hover:not(:disabled){background:var(--bg-hover)}.btn-filter.active{background:var(--button-bg-primary);color:var(--text-on-accent);border-color:var(--button-bg-primary)}.btn-danger{padding:var(--btn-padding-md);border-radius:var(--radius-md);background:var(--error-color);color:var(--text-on-accent);cursor:pointer;font-size:var(--btn-font-md);font-weight:var(--font-weight-medium);transition:all var(--transition-base);border:none;justify-content:center;align-items:center;display:inline-flex}.btn-danger:hover:not(:disabled){filter:brightness(.9)}.btn-danger:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.btn-link{color:var(--text-link);font:inherit;cursor:pointer;text-underline-offset:2px;transition:color var(--transition-fast);background:0 0;border:none;padding:0;text-decoration:underline}.btn-link:hover{color:var(--text-link-hover)}.btn-link:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.btn-edit{padding:var(--btn-padding-md);border-radius:var(--radius-md);background:var(--button-bg-primary);color:var(--text-on-accent);cursor:pointer;font-size:var(--btn-font-md);font-weight:var(--font-weight-medium);transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:inline-flex}.btn-edit:hover:not(:disabled){background:var(--button-bg-primary-hover)}.btn-edit:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.btn-success{padding:var(--btn-padding-md);border-radius:var(--radius-md);background:var(--success-color);color:var(--text-on-accent);cursor:pointer;font-size:var(--btn-font-md);font-weight:var(--font-weight-medium);transition:all var(--transition-base);border:none;justify-content:center;align-items:center;display:inline-flex}.btn-success:hover:not(:disabled){filter:brightness(.9)}.btn-success:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.btn-outline-primary{padding:var(--btn-padding-md);border:1px solid var(--accent-color);border-radius:var(--radius-md);color:var(--accent-color);cursor:pointer;font-size:var(--btn-font-md);font-weight:var(--font-weight-medium);transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;display:inline-flex}.btn-outline-primary:hover:not(:disabled){background:var(--button-bg-primary);color:var(--text-on-accent)}.btn-outline-primary:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.btn-outline-danger{padding:var(--btn-padding-md);border:1px solid var(--error-color);border-radius:var(--radius-md);color:var(--error-color);cursor:pointer;font-size:var(--btn-font-md);font-weight:var(--font-weight-medium);transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;display:inline-flex}.btn-outline-danger:hover:not(:disabled){background:var(--error-color);color:var(--text-on-accent)}.btn-outline-danger:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.btn-secondary-danger{padding:var(--btn-padding-md);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:var(--btn-font-md);font-weight:var(--font-weight-medium);transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;display:inline-flex}.btn-secondary-danger:hover:not(:disabled){background:var(--error-color);border-color:var(--error-color);color:var(--text-on-accent)}.btn-secondary-danger:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.btn-dashed{padding:var(--btn-padding-sm);border:1px dashed var(--border-dark,var(--border-color));border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:var(--btn-font-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-fast);justify-content:center;align-items:center;gap:var(--spacing-xs);background:0 0;display:inline-flex}.btn-dashed:hover:not(:disabled){border-color:var(--accent-color);color:var(--accent-color);background:var(--bg-hover)}.btn-dashed:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.flex{display:flex}.inline-flex{display:inline-flex}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-row-reverse{flex-direction:row-reverse}.flex-col-reverse{flex-direction:column-reverse}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.flex-1{flex:1}.flex-auto{flex:auto}.flex-initial{flex:0 auto}.flex-none{flex:none}.flex-grow{flex-grow:1}.flex-shrink-0{flex-shrink:0}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.self-start{align-self:flex-start}.self-center{align-self:center}.self-end{align-self:flex-end}.self-stretch{align-self:stretch}kbd{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:var(--radius-xs);box-shadow:0 1px 0 var(--border-color);white-space:nowrap;padding:2px 6px;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}@keyframes skeleton{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pop{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.animate-spin{animation:1s linear infinite spin}.animate-fade-in{animation:.2s ease-out fadeIn}.animate-slide-down{animation:.2s ease-out slideDown}.animate-slide-up{animation:.2s ease-out slideUp}.animate-pulse{animation:2s ease-in-out infinite pulse}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hover-reveal{opacity:0;transition:opacity var(--transition-fast)}:hover>.hover-reveal,:focus-within>.hover-reveal{opacity:1}@media (hover:none){.hover-reveal{opacity:1}}.card-accent{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-md);border-left:var(--spacing-xs) solid var(--card-accent-color,var(--accent-color));gap:var(--spacing-sm);flex-direction:column;display:flex}.card-header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);display:flex}.card-header-left{gap:var(--spacing-xs);flex-direction:column;flex:1;min-width:0;display:flex}.card-header-actions{gap:var(--spacing-xs);flex-shrink:0;display:flex}.btn-ghost{padding:var(--btn-padding-xs);border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:var(--btn-font-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;gap:var(--spacing-xs);background:0 0;display:inline-flex}.btn-ghost:hover:not(:disabled){background:var(--button-bg-primary);border-color:var(--button-bg-primary);color:var(--text-on-accent)}.btn-ghost:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.btn-ghost-xs{font-size:var(--btn-font-xs);padding:2px 6px}.badge{padding:2px var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:var(--bg-tertiary);color:var(--text-secondary);align-items:center;gap:var(--spacing-xs);white-space:nowrap;display:inline-flex}.badge-success{background:var(--color-success-light,#22c55e26);color:var(--color-success)}.badge-warning{background:var(--color-warning-light,#eab30826);color:var(--color-warning-text)}.badge-error{background:var(--color-error-light,#ef444426);color:var(--color-error)}.badge-accent{background:var(--button-bg-primary);color:var(--text-on-accent)}.tag-chip{padding:var(--spacing-xs) 10px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);border:none;align-items:center;display:inline-flex}.tag-chip:hover{background:var(--bg-hover)}.tag-chip.active{background:var(--button-bg-primary);color:var(--text-on-accent)}.modal-actions{justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-lg);display:flex}.modal-actions-split{justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-lg);display:flex}.modal-actions-left,.modal-actions-right{gap:var(--spacing-sm);display:flex}.form-section-collapsible{margin-top:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.form-section-toggle{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);text-align:left;border:none;display:flex}.form-section-toggle:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.form-section-toggle:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.form-section-toggle-icon{color:var(--text-muted);flex-shrink:0;font-size:.625rem}.form-section-content{padding:var(--spacing-md);gap:var(--spacing-md);border-top:1px solid var(--border-color);background:var(--bg-primary);flex-direction:column;display:flex}@media (width<=480px){.form-section-content{padding:var(--spacing-sm);gap:var(--spacing-sm)}.form-section-toggle{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}}.chip{align-items:center;gap:var(--spacing-xs);border-radius:var(--radius-sm);font-size:var(--font-size-xs);white-space:nowrap;padding:2px 6px;line-height:1;display:inline-flex}.chip-sm{padding:1px var(--spacing-xs);font-size:.7rem}.chip-icon{flex-shrink:0}.chip-label{font-weight:500}.undo-toast{bottom:var(--spacing-lg);align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:var(--text-primary);color:var(--text-on-accent);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);font-size:var(--font-size-sm);z-index:var(--z-toast);animation:toastSlideUp var(--transition-base);display:flex;position:fixed;left:50%;transform:translate(-50%)}@keyframes toastSlideUp{0%{opacity:0;transform:translate(-50%)translateY(16px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.undo-toast button{padding:var(--btn-padding-sm);border-radius:var(--radius-md);color:var(--text-on-accent);font-size:var(--btn-font-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #ffffff4d}.undo-toast button:hover{background:#ffffff1a;border-color:#ffffff80}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-normal:1.5;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-0{margin:0}.mt-\(--hub-space-md\){margin-top:var(--hub-space-md)}.mt-\(--hub-space-sm\){margin-top:var(--hub-space-sm)}.mr-\(--hub-space-sm\){margin-right:var(--hub-space-sm)}.mb-\(--hub-space-sm\){margin-bottom:var(--hub-space-sm)}.mb-\(--hub-space-xs\){margin-bottom:var(--hub-space-xs)}.mb-1{margin-bottom:var(--spacing)}.ml-\(--hub-space-sm\){margin-left:var(--hub-space-sm)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.size-\[1em\]{width:1em;height:1em}.h-screen{height:100vh}.min-h-full{min-height:100%}.w-5{width:calc(var(--spacing) * 5)}.w-56{width:calc(var(--spacing) * 56)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-70{max-width:calc(var(--spacing) * 70)}.min-w-0{min-width:0}.min-w-full{min-width:100%}.flex-1{flex:1}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-\(--hub-space-md\){gap:var(--hub-space-md)}.gap-\(--hub-space-sm\){gap:var(--hub-space-sm)}.gap-\(--hub-space-xs\){gap:var(--hub-space-xs)}.gap-1{gap:var(--spacing)}.gap-x-\(--hub-space-md\){column-gap:var(--hub-space-md)}.gap-y-\(--hub-space-xs\){row-gap:var(--hub-space-xs)}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-t-md{border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-\(--hub-accent\){border-color:var(--hub-accent)}.border-\(--hub-border\){border-color:var(--hub-border)}.border-\(--hub-danger\){border-color:var(--hub-danger)}.border-\(--hub-success\){border-color:var(--hub-success)}.border-\(--hub-warning\){border-color:var(--hub-warning)}.border-current{border-color:currentColor}.border-transparent{border-color:#0000}.border-r-transparent{border-right-color:#0000}.border-l-\(--hub-card-accent\,var\(--hub-accent\)\){border-left-color:var(--hub-card-accent,var(--hub-accent))}.bg-\(--hub-accent\){background-color:var(--hub-accent)}.bg-\(--hub-bg-card\){background-color:var(--hub-bg-card)}.bg-\(--hub-bg-primary\){background-color:var(--hub-bg-primary)}.bg-\(--hub-bg-secondary\){background-color:var(--hub-bg-secondary)}.bg-\(--hub-bg-tertiary\){background-color:var(--hub-bg-tertiary)}.bg-\(--hub-danger\),.bg-\(--hub-danger\)\/15{background-color:var(--hub-danger)}@supports (color:color-mix(in lab, red, red)){.bg-\(--hub-danger\)\/15{background-color:color-mix(in oklab, var(--hub-danger) 15%, transparent)}}.bg-\(--hub-success\),.bg-\(--hub-success\)\/15{background-color:var(--hub-success)}@supports (color:color-mix(in lab, red, red)){.bg-\(--hub-success\)\/15{background-color:color-mix(in oklab, var(--hub-success) 15%, transparent)}}.bg-\(--hub-warning\)\/15{background-color:var(--hub-warning)}@supports (color:color-mix(in lab, red, red)){.bg-\(--hub-warning\)\/15{background-color:color-mix(in oklab, var(--hub-warning) 15%, transparent)}}.bg-transparent{background-color:#0000}.p-\(--hub-space-md\){padding:var(--hub-space-md)}.p-\(--hub-space-sm\){padding:var(--hub-space-sm)}.p-0{padding:0}.px-\(--hub-space-lg\){padding-inline:var(--hub-space-lg)}.px-\(--hub-space-md\){padding-inline:var(--hub-space-md)}.px-\(--hub-space-sm\){padding-inline:var(--hub-space-sm)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-\(--hub-space-md\){padding-block:var(--hub-space-md)}.py-\(--hub-space-sm\){padding-block:var(--hub-space-sm)}.py-\(--hub-space-xl\){padding-block:var(--hub-space-xl)}.py-\(--hub-space-xs\){padding-block:var(--hub-space-xs)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.pt-\(--hub-space-md\){padding-top:var(--hub-space-md)}.pt-\(--hub-space-sm\){padding-top:var(--hub-space-sm)}.pb-\(--hub-space-xs\){padding-bottom:var(--hub-space-xs)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-\[inherit\]{font-family:inherit}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-\(--hub-accent\){color:var(--hub-accent)}.text-\(--hub-danger\){color:var(--hub-danger)}.text-\(--hub-success\){color:var(--hub-success)}.text-\(--hub-text-muted\){color:var(--hub-text-muted)}.text-\(--hub-text-on-accent\){color:var(--hub-text-on-accent)}.text-\(--hub-text-primary\){color:var(--hub-text-primary)}.text-\(--hub-text-secondary\){color:var(--hub-text-secondary)}.text-\(--hub-warning\){color:var(--hub-warning)}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.no-underline{text-decoration-line:none}.underline-offset-2{text-underline-offset:2px}.opacity-60{opacity:.6}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[filter\]{transition-property:filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:bg-\(--hub-accent\)\/10:hover{background-color:var(--hub-accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\(--hub-accent\)\/10:hover{background-color:color-mix(in oklab, var(--hub-accent) 10%, transparent)}}.hover\:bg-\(--hub-accent-hover\):hover{background-color:var(--hub-accent-hover)}.hover\:bg-\(--hub-bg-hover\):hover{background-color:var(--hub-bg-hover)}.hover\:bg-\(--hub-danger\)\/10:hover{background-color:var(--hub-danger)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\(--hub-danger\)\/10:hover{background-color:color-mix(in oklab, var(--hub-danger) 10%, transparent)}}.hover\:text-\(--hub-text-primary\):hover{color:var(--hub-text-primary)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-sm:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\:brightness-90:hover{--tw-brightness:brightness(90%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.hover\:brightness-95:hover{--tw-brightness:brightness(95%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}.focus\:border-\(--hub-accent\):focus{border-color:var(--hub-accent)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-\(--hub-accent\):focus-visible{outline-color:var(--hub-accent)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media (width>=40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=48rem){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=64rem){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}}}:root{--hub-bg-primary:#fff;--hub-bg-secondary:#f5f5f5;--hub-bg-tertiary:#e8e8e8;--hub-bg-card:#fff;--hub-bg-hover:#ececec;--hub-text-primary:#333;--hub-text-secondary:#595959;--hub-text-muted:#888;--hub-text-on-accent:#fff;--hub-accent:#1a73e8;--hub-accent-hover:#1557b0;--hub-success:#2e7d32;--hub-warning:#b26a00;--hub-danger:#c62828;--hub-info:#1565c0;--hub-border:#d9d9d9;--hub-space-xs:4px;--hub-space-sm:8px;--hub-space-md:16px;--hub-space-lg:24px;--hub-space-xl:32px;--hub-chart-1:#2a78d6;--hub-chart-2:#1baf7a;--hub-chart-3:#eda100;--hub-chart-4:#008300;--hub-chart-5:#4a3aa7}[data-theme=dark]{--hub-bg-primary:#1e1e1e;--hub-bg-secondary:#2d2d2d;--hub-bg-tertiary:#3d3d3d;--hub-bg-card:#252525;--hub-bg-hover:#383838;--hub-text-primary:#f0f0f0;--hub-text-secondary:#b0b0b0;--hub-text-muted:#888;--hub-text-on-accent:#fff;--hub-accent:#4da6ff;--hub-accent-hover:#1a73e8;--hub-success:#4caf50;--hub-warning:#ff9800;--hub-danger:#f44336;--hub-info:#2196f3;--hub-border:#444;--hub-chart-1:#3987e5;--hub-chart-2:#199e70;--hub-chart-3:#c98500;--hub-chart-4:#008300;--hub-chart-5:#9085e9}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
