.hidden{display:none!important}.loading-spinner{display:inline-flex;align-items:center;gap:.5rem}.loading-spinner__icon{width:24px;height:24px;border:3px solid var(--color-border, #e0e0e0);border-top-color:var(--color-primary, #2563eb);border-radius:50%;-webkit-animation:spin .8s linear infinite;animation:spin .8s linear infinite}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-break{word-wrap:break-word;overflow-wrap:break-word}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html,body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text);line-height:1.6;overflow-y:scroll;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{font-family:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}input,textarea,select{font-family:inherit;touch-action:manipulation}:root{--color-primary: #2563eb;--color-primary-dark: #1e40af;--color-primary-light: #eff6ff;--color-success: #10b981;--color-danger: #ef4444;--color-warning: #f59e0b;--color-text: #333;--color-text-light: #666;--color-text-muted: #999;--color-bg: #ffffff;--color-bg-secondary: #f9f9f9;--color-border: #e0e0e0;--text-primary: var(--color-text);--text-secondary: var(--color-text-muted);--primary: var(--color-primary);--border: var(--color-border);--background: var(--color-bg);--surface: var(--color-bg-secondary);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--touch-target-min: 44px}.container{max-width:50rem;margin:0 auto;padding:0 var(--spacing-lg);width:100%}.container--wide{max-width:75rem}.container--narrow{max-width:37.5rem}header{background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-xl)}.timer-main{padding-bottom:var(--spacing-xl)}@media(max-width:768px){.container{padding:0 var(--spacing-md)}.nav{padding:var(--spacing-md)}}.btn{padding:.625rem 1.5rem;border-radius:6px;font-size:.938rem;font-weight:500;border:none;cursor:pointer;transition:all .2s ease;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;-webkit-tap-highlight-color:transparent;touch-action:manipulation;user-select:none}.btn--primary{background-color:var(--color-primary);color:#fff}.btn--primary:hover{background-color:var(--color-primary-dark);box-shadow:0 2px 4px #2563eb4d}.btn--primary:active{transform:translateY(1px)}.btn--secondary{background-color:var(--color-bg-secondary);color:var(--color-text);border:1px solid var(--color-border)}.btn--secondary:hover{background-color:var(--color-border)}.btn--secondary:active{transform:translateY(1px)}.btn--outline{background-color:transparent;color:var(--color-text);border:2px solid var(--color-border)}.btn--outline:hover{background-color:var(--color-bg-secondary);border-color:var(--color-text-light)}.btn--outline:active{transform:translateY(1px)}.btn--small{padding:.375rem 1rem;font-size:.875rem}.btn--lg{padding:.875rem 2rem;font-size:1rem}.btn--block{width:100%}.icon-btn{background:transparent;border:none;cursor:pointer;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;transition:background-color .15s ease;min-width:var(--touch-target-min);min-height:var(--touch-target-min);-webkit-tap-highlight-color:transparent;touch-action:manipulation;color:var(--color-text-light)}.icon-btn:hover{background-color:var(--color-bg-secondary);color:var(--color-text)}.icon-btn:active{background-color:var(--color-border)}.icon-btn .icon{fill:currentColor}@media(max-width:480px){.btn{padding:.5rem .875rem;font-size:.875rem}.btn--small{padding:.375rem .75rem;font-size:.813rem}}.form-group input,.form-group textarea,.form-group select{padding:.75rem;border:1px solid var(--border);border-radius:6px;font-size:1rem;font-family:inherit;background:var(--background);color:var(--text-primary);transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--primary)}.form-stack{display:flex;flex-direction:column;gap:1rem}.auth-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:70vh;padding:2rem 1rem}.auth-page__card{width:100%;max-width:24rem}.auth-page__title{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0 0 .5rem}.auth-page__message{font-size:.875rem;color:var(--color-text-muted);margin:0 0 1.5rem;min-height:1.25rem}.verify-actions{margin-top:1.5rem}.trial-expired__lead{margin-bottom:1.5rem}.trial-expired__actions{display:flex;flex-direction:column;gap:.75rem}.today-entries{background:var(--color-bg-secondary);border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl)}.today-entries__header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);margin-top:var(--spacing-lg)}.today-entries__title{font-size:var(--font-size-xl);color:var(--color-text);margin-top:var(--spacing-md);margin-left:var(--spacing-md)}.today-entries__date-picker{font-family:inherit;font-size:var(--font-size-sm);color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border, #e2e8f0);border-radius:var(--radius-md);padding:.25rem .5rem;margin-top:var(--spacing-md);margin-right:var(--spacing-md);cursor:pointer;outline:none}.today-entries__date-picker:focus{border-color:var(--primary, #6366f1)}.today-entries__list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.today-entries__empty{padding:var(--spacing-xl);text-align:center;color:var(--color-text-muted);font-style:italic}@media(max-width:768px){.today-entries{padding:var(--spacing-md);margin-top:var(--spacing-md);margin-bottom:var(--spacing-md)}.today-entries__header{margin-top:var(--spacing-md)}.today-entries__empty{padding:var(--spacing-md);font-size:var(--font-size-sm)}}.entry-card__editable{cursor:text;border-radius:3px;transition:background .1s ease}.entry-card__editable:hover{background:var(--color-bg-secondary, #f3f4f6)}.entry-card__editing{display:inline-flex;align-items:center}.entry-card__title.entry-card__editing{display:flex;overflow:visible;text-overflow:clip;-webkit-line-clamp:unset;-webkit-box-orient:unset}.entry-inline-input{background:var(--background, #fff);border:1px solid var(--primary, #6366f1);border-radius:4px;font-family:inherit;color:inherit;padding:.05rem .25rem;outline:none;line-height:1.2}.entry-inline-title-wrap{position:relative;display:inline-flex;flex:0 0 auto;max-width:100%;min-width:0}.entry-inline-input--title{font-size:var(--font-size-base);font-weight:600;width:auto;min-width:4rem;max-width:100%}.entry-title-dropdown{position:absolute;top:calc(100% + 2px);left:0;min-width:100%;width:max-content;max-width:22rem;background:var(--card-bg, #fff);border:1px solid var(--border, #e5e7eb);border-radius:6px;box-shadow:0 4px 12px #0000001a;z-index:200;overflow:hidden}.entry-title-dropdown.hidden{display:none}.entry-inline-input--time{font-size:var(--font-size-sm);width:5.4rem;padding-right:1.2rem;padding-left:.25rem}.entry-inline-input--time::-webkit-calendar-picker-indicator{display:none}.entry-inline-input--time::-webkit-datetime-edit{padding:0}.entry-time-input-wrap{position:relative;display:inline-flex;align-items:center}.entry-clock-btn{position:absolute;right:.2rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:0;color:var(--color-text-muted, #9ca3af);display:flex;align-items:center;line-height:1}.entry-clock-btn:hover{color:var(--text-primary)}.entry-inline-time-wrap{display:inline-flex;align-items:center;gap:.25rem}.entry-inline-sep{color:var(--color-text-muted, #9ca3af);font-size:var(--font-size-sm)}.stats-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}@media(max-width:640px){.stats-summary-cards{grid-template-columns:1fr;gap:var(--spacing-sm)}}.stats-period-filter{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-wrap:wrap}@media(max-width:640px){.stats-period-filter{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xs)}}.stats-actions{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-md)}.entry-card{padding:var(--spacing-md);background:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:box-shadow .2s ease,border-color .2s ease}.entry-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary)}.entry-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-sm)}.entry-card__title-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;min-width:0;flex:1 1 auto}.entry-card__title{font-size:var(--font-size-base);font-weight:600;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-wrap:break-word;flex:1 1 auto;min-width:0}.entry-card__project{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:500;padding:.125rem .5rem;border-radius:3px;background:color-mix(in srgb,var(--project-color, #6366f1) 15%,transparent);color:var(--project-color, #6366f1);border-left:2px solid var(--project-color, #6366f1);white-space:nowrap;flex-shrink:0}.entry-card__duration{font-size:var(--font-size-md);font-weight:700;color:var(--color-primary);white-space:nowrap;flex-shrink:0}.entry-card__meta{display:flex;margin-top:.5rem;gap:var(--spacing-sm);flex-shrink:0}.entry-card__menu-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background-color .15s ease;margin-top:-.5rem}.entry-card__menu-btn:hover{background-color:var(--color-bg-secondary)}.entry-card__menu-btn:active{background-color:var(--color-border)}.entry-card__category{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-primary-light);border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;color:var(--color-primary-dark);white-space:nowrap;flex-shrink:0}.entry-card__time{color:var(--color-text-light);font-size:var(--font-size-sm);white-space:nowrap;flex-shrink:0}.entry-card__notes{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-light);font-style:italic}.entries-total{padding:.75rem;margin-bottom:var(--spacing-md);background:var(--color-primary-light);border-radius:var(--radius-md);text-align:center;font-size:var(--font-size-base);color:var(--color-primary-dark)}.entry-card__footer{display:flex;align-items:center;margin-top:var(--spacing-sm)}@media(max-width:480px){.entry-card{padding:var(--spacing-sm) var(--spacing-md)}.entry-card__header{flex-wrap:wrap;align-items:center}.entry-card__title,.entry-card__title-row{width:100%;margin-bottom:var(--spacing-xs)}.entry-card__title-row{flex-direction:column;align-items:flex-start;gap:.375rem}.entry-card__meta{width:100%;justify-content:space-between}}.timer__input-group{margin-bottom:var(--spacing-md);display:flex;justify-content:center}.timer__controls{margin-top:var(--spacing-lg);display:flex;justify-content:center;gap:1rem}.data-controls{margin-top:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.timer-main-container{margin-top:1rem}.timer__display{text-align:center;margin-bottom:1.5rem}.timer__clock{display:flex;justify-content:center;font-size:3.5rem;font-weight:600;--clock-cell-width: 5rem;--clock-cell-padding: .2rem .3rem;--clock-gap: .25rem;--clock-line-height: 1;--clock-weight: 600;--clock-sep-width: .6em}.timer__pause-display{margin-top:.5rem;text-align:center;font-size:var(--font-size-sm);color:var(--color-text-muted)}.timer__clock--editable{cursor:text}.timer__clock-edit,.timer__clock-display{display:inline-flex;align-items:center;gap:var(--clock-gap);font-size:inherit;line-height:var(--clock-line-height);font-variant-numeric:tabular-nums;height:1em}.timer__clock-display-part{display:inline-flex;align-items:center;justify-content:center;width:var(--clock-cell-width);padding:var(--clock-cell-padding);box-sizing:border-box;font-weight:var(--clock-weight);line-height:1em;height:1em;border:none;border-radius:.5rem}.timer__clock-input{margin:0;color:inherit;width:var(--clock-cell-width);padding:0;box-sizing:border-box;font-size:inherit;font-weight:var(--clock-weight);line-height:1em;height:1em;font-family:inherit;font-variant-numeric:tabular-nums;text-align:center;border:none;border-radius:.5rem;background:transparent;caret-color:transparent}.timer__clock-input:focus{outline:none;box-shadow:none;border:none}.timer__clock-sep{display:inline-flex;align-items:center;justify-content:center;width:var(--clock-sep-width);font-size:inherit;line-height:1em;height:1em;margin:0;padding:0}.timer__clock--editing .timer__clock-input{outline:none}.timer__clock-input::-webkit-outer-spin-button,.timer__clock-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.timer__clock-input[type=number]{-moz-appearance:textfield;appearance:textfield}#task-name,#task-category{padding:.5rem 1.5rem;border-radius:1.5rem;border:1px solid var(--color-border, #a3a7ae);font-size:1rem;width:100%;text-align:center}#task-name[readonly]{background-color:var(--color-bg-secondary, #f3f4f6);cursor:not-allowed;color:var(--color-text, #111827);font-weight:500;pointer-events:none}#task-name[readonly]:focus{outline:none;border:1px solid var(--color-border, #a3a7ae);box-shadow:none}#task-category{max-width:180px;color:var(--color-text, #111827)}#task-category:disabled{background-color:var(--color-bg-secondary, #f3f4f6);cursor:not-allowed;opacity:.6;pointer-events:none}#task-category:disabled:focus{outline:none;border:1px solid var(--color-border, #a3a7ae);box-shadow:none}#task-name{max-width:300px}.task-name-wrapper{position:relative;width:100%;max-width:300px}.task-name-wrapper #task-name{max-width:100%;width:100%}.task-name-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--background, #fff);border:1px solid var(--border, #d1d5db);border-radius:8px;box-shadow:0 4px 12px #0000001f;z-index:100;max-height:220px;overflow-y:auto}.task-name-dropdown.hidden{display:none}.task-suggestion-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .875rem;cursor:pointer;font-size:.9rem;gap:.5rem}.task-suggestion-item:hover,.task-suggestion-item--selected{background:var(--color-bg-secondary, #f3f4f6)}.task-suggestion-item__title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.task-suggestion-item__count{font-size:.75rem;color:var(--color-text-muted, #9ca3af);flex-shrink:0}.timer__menu{display:flex;justify-content:flex-end}.timer__mode{display:flex;justify-content:center;gap:1rem;margin-bottom:1.5rem}#mode-stopwatch-btn,#mode-countdown-btn,#start-btn,#log-moment-btn,#pause-btn,#resume-btn,#log-break-btn,#stop-btn,#cancel-btn{padding:.5rem 1.5rem;border-radius:1.5rem;color:#fff;border:none;background-color:var(--color-primary)}#mode-countdown-btn{background-color:var(--color-primary-light);color:var(--color-primary);border:2px solid var(--color-primary)}#mode-countdown-btn:hover{border-color:var(--color-primary-dark);box-shadow:0 0 0 2px #2563eb40}#mode-countdown-btn.mode-btn--active,#mode-countdown-btn[aria-pressed=true]{background-color:var(--color-success, #16a34a);color:#fff;border:2px solid var(--color-success, #16a34a);box-shadow:0 0 0 3px #16a34a40;transform:translateY(-1px)}#mode-countdown-btn.mode-btn--active:hover,#mode-countdown-btn[aria-pressed=true]:hover{border-color:var(--color-success, #16a34a)}#log-break-btn{background-color:var(--color-warning);color:#1f2937}#current-task-title{text-align:center}.quick-add-entry__row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin-top:1.5rem}.qae-task-wrap{position:relative;flex:1 1 160px;min-width:0}.quick-add-entry__task{width:100%;padding:.45rem .75rem;border:1px solid var(--color-border, #a3a7ae);border-radius:6px;font-size:.9rem;background:var(--background);color:var(--text-primary)}.qae-time-wrap{position:relative;flex:0 0 auto}.quick-add-entry__time{width:5.2rem;padding:.45rem 1.4rem .45rem .5rem;border:1px solid var(--color-border, #a3a7ae);border-radius:6px;font-size:.9rem;background:var(--background);color:var(--text-primary)}#qae-start-time::-webkit-calendar-picker-indicator,#qae-end-time::-webkit-calendar-picker-indicator{display:none}#qae-start-time::-webkit-datetime-edit,#qae-end-time::-webkit-datetime-edit{padding:0}.qae-clock-btn{position:absolute;right:.35rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:.15rem;color:var(--color-text-muted, #9ca3af);display:flex;align-items:center;border-radius:4px;transition:color .15s ease}.qae-clock-btn:hover{color:var(--text-primary)}.quick-add-entry__btn{flex-shrink:0}.quick-add-entry__error{margin-top:.375rem;font-size:.8rem;color:var(--color-error, #ef4444)}.quick-add-entry__error.hidden{display:none}.nav{display:flex;align-items:center;justify-content:space-between;max-width:100%;padding:var(--spacing-lg) 5rem;background:var(--color-bg);border-bottom:2px solid var(--color-border);position:sticky;top:0;z-index:100;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0);will-change:transform}.nav__content{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.nav__title{font-size:1.75rem;font-weight:700;color:var(--color-primary);padding:0;margin:0;line-height:1;letter-spacing:-.025em}.nav__tagline{color:var(--color-text-light);font-style:italic;font-size:var(--font-size-sm);margin:0;white-space:nowrap;opacity:.85}.nav__toggle{display:none;background:none;border:2px solid transparent;padding:var(--spacing-sm);cursor:pointer;color:var(--color-text);font-size:1.5rem;line-height:1;transition:all .2s ease;border-radius:var(--radius-sm)}.nav__toggle:hover{color:var(--color-primary);background:var(--color-primary-light)}.nav__toggle:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.nav__links{display:flex;gap:var(--spacing-sm);list-style:none;padding:0;margin:0;align-items:center}.nav__link{display:inline-block;color:var(--color-text);text-decoration:none;font-weight:500;font-size:var(--font-size-base);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);white-space:nowrap;position:relative;background-color:transparent;transition:color .2s ease}.nav__link:after{content:"";position:absolute;bottom:4px;left:50%;transform:translate(-50%) scaleX(0);width:80%;height:2px;background:var(--color-primary);transition:transform .2s ease}.nav__link:hover{color:var(--color-primary)}.nav__link:hover:after{transform:translate(-50%) scaleX(1)}.nav__link:active{color:var(--color-text)}.nav__link--active{color:var(--color-primary)}.nav__link--active:after{transform:translate(-50%) scaleX(1)}.nav__link--active:hover{color:var(--color-primary-dark)}.nav__user-menu{min-width:100px}.nav__user-btn{background:none;border:none;cursor:pointer;font-family:inherit;min-width:80px;text-align:center;outline:none;display:inline-flex;align-items:center;gap:.25rem;justify-content:center}.nav__user-arrow{flex-shrink:0;opacity:.7;transition:transform .2s ease,opacity .2s ease}.nav__user-btn:hover{background:var(--color-primary-light);color:var(--color-primary-dark)}.nav__user-btn:hover .nav__user-arrow{opacity:1}.nav__user-btn:focus{outline:none}@media(max-width:1024px){.nav{padding-left:3rem;padding-right:3rem}.nav__link{padding:var(--spacing-sm) var(--spacing-md);font-size:.9375rem}}@media(max-width:768px){.nav{padding:var(--spacing-md) var(--spacing-xl);flex-wrap:wrap}.nav__content{flex:1;min-width:0}.nav__title{font-size:1.5rem}.nav__tagline{display:none}.nav__toggle{display:block;order:2}.nav__links{display:none;flex-direction:column;width:100%;order:3;gap:0;margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.nav__links.nav__links--open{display:flex}.nav__item{width:100%}.nav__link{display:block;width:100%;padding:var(--spacing-md);text-align:left;border-radius:var(--radius-sm)}.nav__link:after{display:none}.nav__link:hover{color:var(--color-primary-light)}.nav__link--active:hover{transform:translate(4px)}}.trial-banner{width:100%;padding:.5rem 1rem;text-align:center;font-size:.875rem;background:var(--color-primary-light);color:var(--color-primary-dark);border-bottom:1px solid var(--color-border)}.trial-banner__text{margin:0}.trial-banner__link{color:var(--color-primary);font-weight:600;text-decoration:underline}.trial-banner__link:hover{color:var(--color-primary-dark)}@media(max-width:480px){.nav{padding:var(--spacing-md) var(--spacing-md)}.nav__title{font-size:1.25rem}.nav__links{gap:0}.nav__link{font-size:var(--font-size-sm)}}.favorites-empty{padding:var(--spacing-lg);text-align:center;color:var(--color-text-light);font-size:var(--font-size-sm);font-style:italic}.favorite-chip{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);background:var(--color-bg-secondary);color:var(--color-text);border:2px solid var(--color-border);border-radius:1rem;font-weight:600;cursor:pointer;transition:all .2s}.favorite-chip:hover{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.favorite-chip--selected{background:var(--color-primary);color:#fff;border-color:var(--color-primary-dark)}.favorite-chip__label{font-weight:600}.favorite-chip__time{opacity:.7;font-size:var(--font-size-sm)}.favorite-chip__remove{background:none;border:none;color:currentColor;cursor:pointer;padding:0;margin-left:var(--spacing-xs);font-size:1.25rem;line-height:1;opacity:.6;transition:opacity .2s}.favorite-chip__remove:hover{opacity:1}.favorite-chip--selected .favorite-chip__remove:hover{opacity:1;color:#fecaca}.duration-input{display:flex;align-items:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.duration-input__group{display:flex;flex-direction:column;align-items:center}.duration-input__group label{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-light);margin-bottom:var(--spacing-xs)}.duration-input__group input{width:4rem;padding:var(--spacing-sm);text-align:center;font-size:var(--font-size-lg);font-weight:700;border:2px solid var(--color-border);border-radius:var(--radius-md);background:#fff}.duration-input__group input:focus{outline:none;border-color:var(--color-primary)}.duration-input__separator{font-size:1.5rem;font-weight:700;padding-bottom:.4rem;color:var(--color-text-light)}.countdown-section{display:flex;flex-direction:column;align-items:center}.duration-favorites{margin-top:1rem}#add-favorite-btn{margin-top:1rem;border-radius:1rem;padding:.5rem 1.5rem;border:none;color:var(--color-text)!important;opacity:.7;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s;box-shadow:0 2px 4px #0000001a}.dropdown-menu{position:absolute;min-width:160px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 8px 24px #0000001f;z-index:1000;padding:.25rem 0}.dropdown-menu.hidden{visibility:hidden;pointer-events:none}.dropdown-menu__item{display:block;width:100%;padding:.5rem 1rem;background:none;border:none;text-align:left;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text);cursor:pointer}.dropdown-menu__item:hover{background:var(--color-bg-secondary)}.dropdown-menu__item:focus-visible{outline:none;background:var(--color-bg-secondary)}.icon{width:16px;height:16px;fill:currentColor;display:block}.icon-btn--active{background:var(--color-bg-secondary);color:#4b5563}.icon-btn--active{border-bottom-left-radius:0;border-bottom-right-radius:0}.dropdown-menu{border-top-left-radius:0}.modal{position:fixed;inset:0;z-index:1001;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:32px 24px 24px;overflow:auto}.modal.hidden{display:none}.modal-content,.modal__content{width:min(560px,100%);display:flex;flex-direction:column;gap:12px}.modal-content input,.modal__content input,.modal-content select,.modal__content select{width:100%}.moment-description-wrap{position:relative;width:100%}.moment-description-wrap input{width:100%}.moment-description-wrap .entry-title-dropdown{z-index:1100}.modal-content select,.modal__content select{padding:.75rem;border:1px solid var(--color-border, #e0e0e0);border-radius:6px;font-size:1rem;font-family:inherit;background:var(--color-bg, #fff);color:var(--color-text, #333);cursor:pointer}.modal-content select:focus,.modal__content select:focus{outline:none;border-color:var(--color-primary, #2563eb)}.modal-actions,.modal__actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.time-row{display:flex;gap:12px}.time-row .field{flex:1;display:flex;flex-direction:column;gap:6px}@media(max-width:520px){.time-row{flex-direction:column}}.modal-image-section{display:flex;align-items:center;gap:var(--spacing-sm, 8px);flex-wrap:wrap}.modal-image-preview{display:flex;align-items:center;gap:var(--spacing-sm, 8px)}.modal-image-preview__img{width:80px;height:60px;object-fit:cover;border-radius:var(--radius-sm, 4px);border:1px solid var(--color-border, #e0e0e0)}.modal-image-upload-label{cursor:pointer;display:inline-flex;align-items:center}code[class*=language-],pre[class*=language-]{color:#000;background:0 0;text-shadow:0 1px #fff;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow:none;background:#b3d4fc}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#708090}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#905}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#690}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color:#9a6e3a;background:#ffffff80}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.class-name,.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.notes-rendered{font-size:.875rem;line-height:1.55;color:var(--text-primary);word-break:break-word}.notes-rendered__p{margin:0 0 .5rem}.notes-rendered__p:last-child{margin-bottom:0}.notes-rendered__pre{margin:.5rem 0;padding:.75rem 1rem;overflow-x:auto;border-radius:6px;border:1px solid var(--border);background:var(--background);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8125rem;line-height:1.45}.notes-rendered__pre:first-child{margin-top:0}.notes-rendered__pre:last-child{margin-bottom:0}.notes-rendered__code{font-family:inherit;white-space:pre;word-wrap:normal}.notes-rendered__pre code[class*=language-] .token{font-family:inherit}.notes-rendered__pre[class*=language-]{background:var(--color-bg-secondary, #f5f5f5)}.notes-rendered__empty{margin:0;font-size:.875rem;color:var(--text-secondary);font-style:italic}.quick-add-row{display:flex;align-items:center;gap:.5rem}.quick-add-row .category-input-wrapper{flex:1;min-width:0}.quick-add-action-btn{flex:0 0 auto;width:auto;min-width:unset;padding:.5rem .6rem;font-size:.95rem}.category-input-group{display:flex;align-items:stretch;gap:.375rem}.category-input-wrapper input{width:100%;padding:.625rem .875rem;font-size:.938rem;border:2px solid var(--color-border);border-radius:4px;background:var(--color-bg);color:var(--color-text);font-family:inherit;transition:border-color .2s ease,background-color .2s ease}.category-pin-btn{flex:0 0 auto;min-width:2.5rem;padding:0 .7rem;border:2px solid var(--color-border);border-radius:4px;background:var(--color-bg);color:var(--color-text-muted);cursor:pointer;transition:border-color .2s ease,background-color .2s ease,color .2s ease,transform .15s ease}.category-pin-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.category-pin-btn:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.category-pin-btn--active{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}.quick-add-image-preview{margin-top:8px;width:100%}.quick-add-image-preview img{max-width:100%;height:auto;border-radius:8px;display:block;margin:0 auto}.quick-add-notes{width:100%}@media(max-width:768px){.quick-add-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.quick-add-row .category-input-wrapper{grid-column:1 / -1;max-width:none}.quick-add-action-btn{width:100%;min-width:0;font-size:1.3rem;padding:.5rem .25rem}.category-input-wrapper input{font-size:1rem}}.prime-list,.study-list,.review-list{display:flex;flex-direction:column;gap:.5rem;margin-top:2rem;margin-bottom:3rem;width:100%}.prime-list-sentinel{width:100%;height:1px;opacity:0;pointer-events:none}.prime-list-empty{text-align:center;padding:3rem 1rem;color:var(--text-secondary);font-size:1rem}.prime-list-loading{display:flex;justify-content:center;padding:2rem 1rem;color:var(--text-secondary)}.prime-item,.study-item,.review-item{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:1rem 1.25rem;display:flex;flex-direction:column;transition:background-color .2s ease;width:100%;box-sizing:border-box}.prime-item:hover{background:var(--background)}.prime-item--logged{box-shadow:0 0 0 2px #10b981;transition:box-shadow .3s ease}.prime-item__header-content,.study-item__header-content,.review-item__header-content{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.prime-item__title,.study-item__title,.review-item__title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0;line-height:1.4;overflow-wrap:anywhere;word-break:break-word;max-width:100%}.prime-item__category,.study-item__category,.review-item__category{display:inline-block;font-size:.75rem;padding:.125rem .5rem;background:var(--color-primary-light);color:var(--color-primary);border-radius:3px;margin-top:.25rem;font-weight:500}.prime-item__description,.study-item__description,.review-item__description{color:var(--text-secondary);font-size:.813rem;line-height:1.4;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prime-item__stats,.study-item__stats,.review-item__stats{display:flex;gap:1.5rem;align-items:center;flex-shrink:0;flex:1}.prime-stat,.study-stat,.review-stat{display:flex;flex-direction:column;align-items:center;gap:.125rem;min-width:3.5rem}.prime-stat__label,.study-stat__label,.review-stat__label{font-size:.688rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;line-height:1}.prime-stat__value,.study-stat__value,.review-stat__value{font-size:1rem;font-weight:600;color:var(--text-primary);line-height:1}.prime-item__log-btn,.study-item__log-btn,.review-item__log-btn{flex-shrink:0}.prime-item__actions{display:flex;gap:.5rem;flex-shrink:0;align-items:center}.prime-item__notes-btn{padding:.5rem 1rem;border-radius:6px;font-size:.813rem;font-weight:500;flex-shrink:0;transition:box-shadow .2s ease,border-color .2s ease}.prime-item__notes-btn--active{border-color:var(--color-success);box-shadow:0 0 0 3px #10b9814d;transition:border-color .1s ease,box-shadow .1s ease}.prime-item__notes{padding-top:.75rem}.prime-item__notes.hidden{display:none}.prime-item__note-image{display:block;max-width:100%;height:auto;border-radius:8px}.search-bar{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.search-bar input{flex:1;padding:.625rem .875rem;font-size:.938rem;border:2px solid var(--color-border, #e0e0e0);border-radius:4px;background:var(--color-bg, #ffffff);color:var(--color-text, #333);font-family:inherit;transition:border-color .2s ease}.search-bar input:focus{outline:none;border-color:var(--color-primary, #2563eb)}.search-bar input::placeholder{color:var(--color-text-muted, #999)}.search-bar .btn-icon{flex-shrink:0;background:transparent;border:none;padding:.5rem;cursor:pointer;color:var(--color-text-muted, #999);font-size:1rem;border-radius:4px;transition:color .2s ease,background-color .2s ease}.search-bar .btn-icon:hover{color:var(--color-text, #333);background:var(--color-bg-secondary, #f5f5f5)}.priming-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.priming-header__top{display:flex;justify-content:space-between;align-items:center;width:100%}.priming-header__title{font-size:1.75rem;font-weight:700;color:var(--color-text, #333);margin:0}.priming-header__subtitle{font-size:.875rem;color:var(--text-secondary);margin:.5rem 0 0;line-height:1.5}.priming-header__quick-add{display:flex;flex-direction:column;gap:.75rem;width:100%}.priming-header__quick-add textarea{width:100%;padding:.625rem .875rem;font-size:.938rem;border:2px solid var(--color-border, #e0e0e0);border-radius:4px;background:var(--color-bg, #ffffff);color:var(--color-text, #333);font-family:inherit;transition:border-color .2s ease;resize:none;overflow:hidden;max-height:none;min-height:2.5rem;line-height:1.4}.priming-header__quick-add textarea:focus{outline:none;border-color:var(--color-primary, #2563eb)}.priming-header__quick-add textarea::placeholder{color:var(--color-text-muted, #999)}.priming-header__quick-add textarea.submitted{border-color:var(--color-success);box-shadow:0 0 0 3px #10b9814d;transition:border-color .1s ease,box-shadow .1s ease}.priming-header__quick-add textarea.failed{border-color:var(--color-danger);box-shadow:0 0 0 3px #ef44444d;transition:border-color .2s ease,box-shadow .2s ease}.priming-header__bottom-row{display:flex;gap:.75rem;align-items:flex-start;width:100%}.priming-header__bottom-row button{margin-left:auto}.prime-form{display:flex;flex-direction:column;gap:1rem}.prime-item__log-btn,.study-item__log-btn,.review-item__log-btn{padding:.5rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:500}.prime-item__log-btn:disabled,.study-item__log-btn:disabled,.review-item__log-btn:disabled{opacity:.6;cursor:not-allowed}.btn--success{background:var(--color-success, #10b981);border-color:var(--color-success, #10b981);color:#fff}@media(max-width:968px){.prime-item__footer,.study-item__footer,.review-item__footer{flex-wrap:wrap}.prime-item__stats,.study-item__stats,.review-item__stats{gap:1rem}.prime-stat,.study-stat,.review-stat{min-width:3rem}}@media(max-width:768px){.stat--hide-mobile{display:none}.prime-item__footer,.study-item__footer,.review-item__footer{flex-direction:column;align-items:flex-start;gap:1rem}.prime-item__stats,.study-item__stats,.review-item__stats{width:100%;justify-content:space-between;gap:.5rem}.prime-stat,.study-stat,.review-stat{min-width:auto}.prime-item__log-btn,.study-item__log-btn,.review-item__log-btn{width:100%}.priming-header{flex-direction:column;align-items:flex-start}.priming-header__top,.priming-header__quick-add{width:100%}.priming-header__quick-add textarea{width:100%;min-width:0}.priming-header__bottom-row{flex-direction:column}.priming-header__bottom-row>button{width:100%;margin-left:0}.priming-header__quick-add textarea,.search-bar input{font-size:1rem}}.prime-item__footer,.study-item__footer,.review-item__footer{display:flex;justify-content:space-between;align-items:center;width:100%;gap:1.5rem;margin-top:1rem}.prime-item__header,.study-item__header,.review-item__header{display:flex;justify-content:space-between;align-items:flex-start;width:100%;gap:1rem}.prime-item__image,.study-item__image,.review-item__image{display:block;max-width:100%;height:auto;margin:0 auto;border-radius:8px}.study-list-empty{text-align:center;padding:3rem 1rem;color:var(--text-secondary);font-size:1rem}.study-item:hover{background:var(--background)}.study-item--logged{box-shadow:0 0 0 2px #10b981;transition:box-shadow .3s ease}.study-item__actions{display:flex;gap:.5rem;flex-shrink:0}.study-item__notes-btn{padding:.5rem 1rem;border-radius:6px;font-size:.813rem;font-weight:500;flex-shrink:0;transition:box-shadow .2s ease,border-color .2s ease}.study-item__notes-btn--active{border-color:var(--color-success);box-shadow:0 0 0 3px #10b9814d;transition:border-color .1s ease,box-shadow .1s ease}.study-item__cipher-btn{padding:.5rem 1rem;border-radius:6px;font-size:.813rem;font-weight:500;flex-shrink:0;transition:box-shadow .2s ease,border-color .2s ease}.study-item__cipher-btn--active{border-color:var(--color-success);box-shadow:0 0 0 3px #10b9814d;transition:border-color .1s ease,box-shadow .1s ease}.study-item__cipher{border-top:1px solid var(--border);padding-top:.75rem}.study-item__cipher.hidden{display:none}.study-item__cipher-text{width:100%;padding:.625rem .875rem;font-size:.875rem;border:1px solid var(--border);border-radius:4px;background:var(--background);color:var(--text-primary);font-family:inherit;line-height:1.6;white-space:pre-wrap;word-break:break-word;margin:0;box-sizing:border-box}.study-item__notes{padding-top:.75rem}.study-item__notes.hidden{display:none}.study-item__notes-textarea{width:100%;padding:.625rem .875rem;font-size:.875rem;border:1px solid var(--border);border-radius:4px;background:var(--background);color:var(--text-primary);font-family:inherit;transition:border-color .2s ease;resize:vertical;min-height:80px;line-height:1.5;box-sizing:border-box}.study-item__notes-textarea:focus{outline:none;border-color:var(--primary)}.study-item__notes-textarea::placeholder{color:var(--color-text-muted, #999)}.study-item__note-image{display:block;max-width:100%;height:auto;border-radius:8px}.study-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.study-header__top{display:flex;justify-content:space-between;align-items:center;width:100%}.study-header__title{font-size:1.75rem;font-weight:700;color:var(--color-text, #333);margin:0}.study-header__quick-add{display:flex;flex-direction:column;gap:.75rem;width:100%}.study-header__quick-add textarea{width:100%;padding:.625rem .875rem;font-size:.938rem;border:2px solid var(--color-border, #e0e0e0);border-radius:4px;background:var(--color-bg, #ffffff);color:var(--color-text, #333);font-family:inherit;transition:border-color .2s ease;resize:none;overflow:hidden;max-height:none;min-height:2.5rem;line-height:1.4}.study-header__quick-add textarea:focus{outline:none;border-color:var(--color-primary, #2563eb)}.study-header__quick-add textarea::placeholder{color:var(--color-text-muted, #999)}.study-header__bottom-row{display:flex;gap:.75rem;align-items:flex-start;width:100%}.study-header__bottom-row button{margin-left:auto}.study-form{display:flex;flex-direction:column;gap:1rem}@media(max-width:768px){.study-item__actions{width:100%;flex-wrap:wrap}.study-item__notes-btn,.study-item__cipher-btn{flex:1;min-width:0}.study-header{flex-direction:column;align-items:flex-start}.study-header__top{width:100%}.study-header__bottom-row{flex-direction:column}.study-header__bottom-row>button{width:100%;margin-left:0}.study-header__quick-add textarea,.study-item__notes-textarea{font-size:1rem}}.study-list-sentinel{width:100%;height:1px;opacity:0;pointer-events:none}.review-list-empty{text-align:center;padding:3rem 1rem;color:var(--text-secondary);font-size:1rem}.review-item:hover{background:var(--background)}.review-item--logged{box-shadow:0 0 0 2px #10b981;transition:box-shadow .3s ease}.review-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.review-header__top{display:flex;justify-content:space-between;align-items:center;width:100%}.review-header__title{font-size:1.75rem;font-weight:700;color:var(--color-text, #333);margin:0}.review-header__subtitle{font-size:.875rem;color:var(--text-secondary);margin:.5rem 0 0;line-height:1.5}.category-input-wrapper{position:relative;flex:1;max-width:15rem}.category-input-wrapper input{width:100%;padding:.625rem .875rem;font-size:.938rem;border:2px solid var(--color-border);border-radius:4px;background:var(--color-bg);color:var(--color-text);font-family:inherit;transition:border-color .2s ease}.category-input-wrapper input:focus{outline:none;border-color:var(--color-primary)}.category-input-wrapper input::placeholder{color:var(--color-text-muted)}.category-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--color-bg);border:2px solid var(--color-border);border-radius:4px;max-height:200px;overflow-y:auto;z-index:1000;box-shadow:0 4px 6px #0000001a}.category-dropdown.hidden{display:none}.category-dropdown-item{padding:.5rem .875rem;cursor:pointer;transition:background-color .15s ease;display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.category-dropdown-item:hover{background:var(--color-bg-secondary)}.category-dropdown-item--selected{background:var(--color-primary-light)}.category-count{font-size:.75rem;color:var(--color-text-muted);font-weight:500}.category-dropdown-empty{padding:.75rem .875rem;text-align:center;color:var(--color-text-muted);font-size:.875rem}.review-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.form-group input,.form-group textarea{padding:.75rem;border:1px solid var(--border);border-radius:6px;font-size:1rem;font-family:inherit;background:var(--background);color:var(--text-primary);transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary)}.form-group .category-input-wrapper{position:relative}@media(max-width:768px){.review-header{flex-direction:column;align-items:flex-start}.review-header__top{width:100%}.category-input-wrapper input,.form-group input,.form-group textarea,.review-item__notes-textarea{font-size:1rem}}.review-item__actions{display:flex;gap:.5rem;flex-shrink:0}.review-item__notes-btn{padding:.5rem 1rem;border-radius:6px;font-size:.813rem;font-weight:500;flex-shrink:0;transition:box-shadow .2s ease,border-color .2s ease}.review-item__notes-btn--active{border-color:var(--color-success);box-shadow:0 0 0 3px #10b9814d}.review-item__notes{padding-top:.75rem}.review-item__notes.hidden{display:none}.review-item__notes-textarea{width:100%;padding:.625rem .875rem;font-size:.875rem;border:1px solid var(--border);border-radius:4px;background:var(--background);color:var(--text-primary);font-family:inherit;line-height:1.6;resize:vertical;box-sizing:border-box}.review-item__note-image{display:block;max-width:100%;height:auto;border-radius:8px}.review-item__image-row{margin-top:8px}.review-item__image{display:block;max-width:100%;height:auto;margin:0 auto;border-radius:8px}.review-list-sentinel{width:100%;height:1px;opacity:0;pointer-events:none}.habits-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.habits-header h2{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text)}.habits-list{display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.habit-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md);box-shadow:var(--shadow-sm);transition:box-shadow .2s ease;justify-content:space-between;min-height:240px}.habit-card:hover{box-shadow:var(--shadow-md)}.habit-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm)}.habit-card__title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text);flex:1;margin:0;word-break:break-word}.habit-card__stats{display:flex;flex-direction:column;gap:var(--spacing-sm)}.habit-stat{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm);background:var(--color-bg-secondary);border-radius:var(--radius-sm)}.habit-stat__label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.5px}.habit-stat__value{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text)}.habit-stat--complete .habit-stat__value{color:var(--color-success)}.habit-card__log-btn{width:100%;margin-top:var(--spacing-sm)}.habit-card__meta{display:flex;flex-direction:column;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text)}.habits-empty{text-align:center;padding:var(--spacing-xl) var(--spacing-md);color:var(--color-text-muted)}.habits-empty__icon{font-size:3rem;margin-bottom:var(--spacing-md)}.habits-empty__text{font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm)}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text)}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.5rem .75rem;font-size:var(--font-size-base);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-family)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-group textarea{resize:vertical;min-height:80px}@media(max-width:768px){.habits-list{grid-template-columns:1fr}.habits-header{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}}.workspace-section{margin-bottom:3rem}.workspace-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.workspace-header__top{display:flex;justify-content:space-between;align-items:center;width:100%}.workspace-header__title{font-size:1.75rem;font-weight:700;color:var(--color-text, #333);margin:0}.workspace-header__actions{display:flex;align-items:center;gap:.75rem}.workspace-date-picker{padding:.4rem .6rem;border:1px solid var(--color-border, #ddd);border-radius:6px;font-size:.875rem;font-family:inherit;background:var(--color-bg, #fff);color:var(--color-text, #333);cursor:pointer}.workspace-date-picker:focus{outline:none;border-color:var(--primary, #6366f1)}.workspace-list-empty{text-align:center;padding:3rem 1rem;color:var(--text-secondary);font-size:1rem}.project-list{display:flex;flex-direction:column;gap:.75rem;width:100%}.project-item{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem;transition:background-color .2s ease;width:100%;box-sizing:border-box;border-left:4px solid var(--project-color, var(--color-primary))}.project-item:hover{background:var(--background)}.project-item__header{display:flex;justify-content:space-between;align-items:flex-start;width:100%;gap:1rem}.project-item__header-content{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.project-item__name{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0;line-height:1.4}.project-item__description{color:var(--text-secondary);font-size:.875rem;line-height:1.4;margin:0}.project-item__stats{display:flex;gap:1.5rem;align-items:center;flex-shrink:0}.project-stat{display:flex;flex-direction:column;align-items:center;gap:.125rem;min-width:4rem}.project-stat__label{font-size:.688rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;line-height:1}.project-stat__value{font-size:1rem;font-weight:600;color:var(--text-primary);line-height:1}.project-item__actions{display:flex;gap:.5rem;flex-shrink:0}.task-list{display:flex;flex-direction:column;gap:.5rem;width:100%}.task-group{margin-bottom:1.5rem}.task-group__header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.task-group__color{width:12px;height:12px;border-radius:2px;flex-shrink:0}.task-group__name{font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0}.task-group__count{font-size:.75rem;color:var(--text-secondary);margin-left:auto}.task-item{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.875rem 1rem;display:flex;align-items:center;gap:1rem;transition:background-color .2s ease;width:100%;box-sizing:border-box}.task-item:hover{background:var(--background)}.task-item__content{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.task-item__title{font-size:1rem;font-weight:500;color:var(--text-primary);margin:0;line-height:1.4}.task-item__meta{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem}.task-item__category{display:inline-block;font-size:.75rem;padding:.125rem .5rem;background:var(--color-primary-light);color:var(--color-primary);border-radius:3px;font-weight:500}.task-item__scheduled,.task-item__duration{font-size:.75rem;color:var(--text-secondary)}.task-item__time-spent{font-size:.875rem;font-weight:600;color:var(--color-primary);white-space:nowrap}.task-item__actions{display:flex;gap:.5rem;flex-shrink:0}.workspace-form{display:flex;flex-direction:column;gap:1rem}.workspace-form select{padding:.75rem;border:1px solid var(--border);border-radius:6px;font-size:1rem;font-family:inherit;background:var(--background);color:var(--text-primary);transition:border-color .2s ease;cursor:pointer}.workspace-form select:focus{outline:none;border-color:var(--primary)}.workspace-form input[type=color]{width:60px;height:40px;padding:2px;border:1px solid var(--border);border-radius:6px;cursor:pointer;background:var(--background)}.workspace-form input[type=datetime-local],.workspace-form input[type=number]{padding:.75rem;border:1px solid var(--border);border-radius:6px;font-size:1rem;font-family:inherit;background:var(--background);color:var(--text-primary);transition:border-color .2s ease}.workspace-form input[type=datetime-local]:focus,.workspace-form input[type=number]:focus{outline:none;border-color:var(--primary)}@media(max-width:768px){.project-item__header{flex-direction:column;gap:.75rem}.project-item__stats{width:100%;justify-content:space-between}.task-item{flex-direction:column;align-items:flex-start;gap:.75rem}.task-item__actions{width:100%;justify-content:flex-end}.workspace-header__top{flex-direction:column;align-items:flex-start;gap:1rem}.workspace-header__top button{width:100%}}.category-filter-search{width:100%;padding:.5rem .75rem;border:1px solid var(--color-border, #ddd);border-radius:6px;font-size:14px;font-family:inherit;background:var(--color-bg, #fff);color:var(--color-text, #333);outline:none;box-sizing:border-box;margin-bottom:4px}.category-filter-search:focus{border-color:var(--primary, #6366f1)}.category-filter-list{display:flex;flex-direction:column;gap:8px;margin:16px 0;max-height:60vh;overflow-y:auto}.category-filter-option{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:1px solid #ddd;border-radius:6px;background:#fff;cursor:pointer;transition:all .2s;text-align:left;width:100%;font-size:14px}.category-filter-option:hover{background:#f5f5f5;border-color:#ccc}.category-filter-option.active{background:#6366f1;color:#fff;border-color:#6366f1}.category-name{font-weight:500}.category-count{background:#0000001a;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600}.category-filter-option.active .category-count{background:#fff3}.active-filter{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#e0e7ff;border-radius:6px;margin-bottom:16px;font-size:14px}.active-filter .btn-icon{background:none;border:none;cursor:pointer;font-size:18px;padding:0 4px;color:#6366f1;line-height:1}.active-filter .btn-icon:hover{color:#4f46e5}.landing-section{max-width:56rem;margin:0 auto;padding:4rem 1.5rem}.landing-nav{position:sticky;top:0;z-index:100;background:var(--color-bg);border-bottom:1px solid var(--color-border)}.landing-nav__inner{max-width:56rem;margin:0 auto;padding:.875rem 1.5rem;display:flex;align-items:center;justify-content:space-between}.landing-nav__logo{font-size:1rem;font-weight:700;letter-spacing:2px;color:var(--color-text)}.landing-nav__actions{display:flex;gap:.75rem;align-items:center}.landing-hero{max-width:56rem;margin:0 auto;padding:5rem 1.5rem 4rem;text-align:center}.landing-hero__title{font-size:clamp(2rem,5vw,3.25rem);font-weight:700;line-height:1.15;color:var(--color-text);margin:0 0 1.25rem;letter-spacing:-.5px}.landing-hero__sub{font-size:1.125rem;color:var(--color-text-light);max-width:34rem;margin:0 auto 2.5rem;line-height:1.6}.landing-hero__actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.landing-features{background:var(--color-bg-secondary);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.landing-features__inner{max-width:56rem;margin:0 auto;padding:4rem 1.5rem}.landing-section-title{font-size:1.5rem;font-weight:700;color:var(--color-text);margin:0 0 .5rem;text-align:center}.landing-section-sub{text-align:center;color:var(--color-text-light);margin:0 0 3rem;font-size:1rem}.landing-features__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:1.5rem}.landing-feature-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem}.landing-feature-card__icon{font-size:1.75rem;margin-bottom:.75rem}.landing-feature-card h3{font-size:1rem;font-weight:600;color:var(--color-text);margin:0 0 .5rem}.landing-feature-card p{font-size:.875rem;color:var(--color-text-light);line-height:1.5;margin:0}.landing-pricing{max-width:56rem;margin:0 auto;padding:4rem 1.5rem;text-align:center}.landing-pricing__card{max-width:22rem;margin:0 auto;background:var(--color-bg);border:2px solid var(--color-primary);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-md)}.landing-pricing__badge{display:inline-block;background:var(--color-primary-light);color:var(--color-primary-dark);font-size:.8125rem;font-weight:600;padding:.25rem .75rem;border-radius:99px;margin-bottom:1.25rem}.landing-pricing__price{margin-bottom:1.5rem}.landing-pricing__amount{font-size:2.75rem;font-weight:700;color:var(--color-text);letter-spacing:-1px}.landing-pricing__period{font-size:1rem;color:var(--color-text-muted)}.landing-pricing__features{list-style:none;padding:0;margin:0;text-align:left}.landing-pricing__features li{padding:.375rem 0;font-size:.9375rem;color:var(--color-text-light);border-bottom:1px solid var(--color-border)}.landing-pricing__features li:last-child{border-bottom:none}.landing-pricing__cta{margin-top:1.5rem}.landing-pricing__note{font-size:.8125rem;color:var(--color-text-muted);margin:.75rem 0 0}.landing-footer{border-top:1px solid var(--color-border);text-align:center;padding:2rem 1.5rem;color:var(--color-text-muted);font-size:.875rem}.landing-welcome{text-align:center;padding:5rem 1.5rem;max-width:56rem;margin:0 auto}.landing-welcome__title{font-size:1.75rem;font-weight:700;color:var(--color-text);margin:0 0 .5rem}.landing-welcome__sub{color:var(--color-text-light);margin:0 0 2rem}.landing-welcome__actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.settings-page{max-width:46rem;margin:2rem auto 3rem;display:grid;gap:1rem}.settings-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem}.settings-card--danger{border-color:#f8c7c7}.settings-title{margin:0 0 .5rem}.settings-section-title{margin:0 0 .75rem;font-size:1rem}.settings-message{min-height:1.25rem;margin:0 0 .75rem;color:var(--color-text-muted);font-size:.9rem}.settings-message--success{color:var(--color-success)}.settings-message--error{color:var(--color-danger)}.settings-help{color:var(--color-text-muted);font-size:.85rem}.settings-kv{display:flex;justify-content:space-between;gap:1rem;padding:.4rem 0}.settings-kv__label{color:var(--color-text-muted)}.settings-kv__value{font-weight:600}
