@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";.theme-toggle-btn{border-radius:var(--radius-md);cursor:pointer;width:34px;height:34px;color:var(--text-secondary);background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.theme-toggle-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.theme-toggle-btn svg{width:18px;height:18px}.landing{background:var(--bg-gradient-hero);flex-direction:column;min-height:100dvh;display:flex}.landing-header{background:0 0;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex}.landing-logo{color:var(--text-primary);letter-spacing:-.02em;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;display:flex}.landing-logo .logo-icon{width:32px;height:32px;color:var(--primary)}.landing-main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:1rem 2rem}.hero{text-align:center;padding:2rem 1rem 2.5rem;position:relative}.hero:before{content:"";background:radial-gradient(circle, var(--primary-alpha) 0%, transparent 70%);pointer-events:none;z-index:0;width:600px;height:600px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero h1{color:var(--text-primary);letter-spacing:-.03em;z-index:1;margin-bottom:1rem;font-size:clamp(2rem,5vw,3rem);font-weight:800;line-height:1.1;position:relative}.hero h1 br{display:block}.hero-subtitle{color:var(--text-secondary);z-index:1;max-width:520px;margin:0 auto;font-size:clamp(.9375rem,2vw,1.125rem);line-height:1.6;position:relative}.btn-lg{border-radius:var(--radius-lg);padding:.875rem 1.75rem;font-size:1rem;font-weight:600}.btn-primary.btn-lg{box-shadow:0 4px 14px var(--primary-alpha)}.btn-primary.btn-lg:hover{box-shadow:0 6px 20px var(--primary-alpha);transform:translateY(-2px)}.btn-outline{background:var(--card-bg);border:1.5px solid var(--border);color:var(--text-primary)}.btn-outline:hover{background:var(--bg-secondary);border-color:var(--text-muted)}.features{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;padding:1.5rem 0 2rem;display:grid}.feature-card{background:var(--card-bg);border-radius:var(--radius-lg);text-align:left;border:1px solid var(--card-border);box-shadow:var(--card-shadow);isolation:isolate;padding:1.25rem;transition:all .25s;position:relative;overflow:hidden}.feature-card:before{content:"";background:linear-gradient(90deg, var(--primary), var(--accent-hover));opacity:0;height:3px;transition:opacity .25s;position:absolute;top:0;left:0;right:0}.feature-card:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-4px)}.feature-card:hover:before{opacity:1}.feature-icon{margin-bottom:.75rem;font-size:1.5rem;display:inline-block}.feature-card h3{color:var(--text-primary);letter-spacing:-.01em;margin-bottom:.375rem;font-size:.9375rem;font-weight:600}.feature-card p{color:var(--text-secondary);font-size:.8125rem;line-height:1.5}.modes-section{text-align:center;padding:1.5rem 0 2rem}.modes-section h2{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:1.25rem;font-size:1.5rem;font-weight:700}.modes-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;max-width:640px;margin:0 auto;display:grid}.mode-card{background:var(--card-bg);border-radius:var(--radius-lg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);text-align:center;padding:1.5rem;transition:all .25s}.mode-card:hover{box-shadow:var(--card-shadow-hover)}.mode-icon{margin-bottom:.75rem;font-size:2rem;display:inline-block}.mode-card h3{color:var(--text-primary);letter-spacing:-.01em;margin-bottom:.5rem;font-size:1.125rem;font-weight:600}.mode-card p{color:var(--text-secondary);margin-bottom:1rem;font-size:.875rem;line-height:1.5}.mode-card .btn{width:100%}.landing-footer{text-align:center;color:var(--text-muted);padding:1.5rem;font-size:.8125rem}@media (width<=640px){.landing-header{padding:1rem}.hero{padding:2.5rem 0 3rem}.hero h1{font-size:2rem}.hero-subtitle{font-size:1rem}.landing-main{padding:1rem}.hero-actions{flex-direction:column;align-items:stretch}.btn-lg{width:100%}.feature-card{padding:1.5rem}}.banner{border-radius:var(--radius-md);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.625rem 1rem;font-size:.8125rem;display:flex}.banner strong{color:var(--text-primary)}.banner--info{background:var(--info-bg)}.banner--warning{background:var(--warning-muted);border:1px solid var(--warning-bg)}.banner--danger{border:1px solid var(--error);background:#ef444414}.banner__icon{flex-shrink:0;font-size:1.25rem;line-height:1}.banner__content{flex:1;min-width:0}.banner__actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.banner__dismiss{width:28px;height:28px;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1.25rem;line-height:1;display:flex}.banner__dismiss:hover{color:var(--text-secondary);background:var(--bg-tertiary)}.login-container{background:var(--bg-gradient-hero);justify-content:center;align-items:center;min-height:100dvh;padding:1.5rem;display:flex}.login-card{background:var(--card-bg);border-radius:var(--radius-xl);width:100%;max-width:400px;box-shadow:var(--shadow-xl);border:1px solid var(--card-border);padding:2.5rem}.login-logo{text-align:center;margin-bottom:2rem}.logo-icon{width:56px;height:56px;color:var(--primary);margin-bottom:.75rem}.login-logo h1{color:var(--text-primary);letter-spacing:-.02em;margin:0;font-size:1.625rem;font-weight:700}.login-logo .tagline{color:var(--text-secondary);margin-top:.375rem;font-size:.875rem}.login-form h2{color:var(--text-primary);text-align:center;letter-spacing:-.01em;margin-bottom:1.5rem;font-size:1.125rem;font-weight:600}.remember-me-label{margin-right:.2em}.remember-me-checkbox{margin-right:.4em}.error-message{background:var(--error-bg);color:var(--error);border-radius:var(--radius-md);margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem}.success-message{background:var(--success-bg);color:var(--success);border-radius:var(--radius-md);margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem}.forgot-link{color:var(--primary);cursor:pointer;text-align:center;background:0 0;border:none;margin-bottom:1rem;padding:0;font-size:.8125rem;display:block}.forgot-link:hover{text-decoration:underline}.form-group input{transition:all var(--transition-fast);height:auto;padding:.75rem 1rem;font-size:1rem}.submit-btn{background:var(--primary);width:100%;color:var(--text-on-primary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);box-shadow:0 2px 8px var(--primary-alpha);border:none;padding:.875rem;font-size:1rem;font-weight:600}.submit-btn:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 4px 12px var(--primary-alpha);transform:translateY(-1px)}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.toggle-mode{text-align:center;color:var(--text-secondary);margin-top:1.5rem;font-size:.875rem}.toggle-mode button{color:var(--primary);cursor:pointer;background:0 0;border:none;margin-left:.25rem;font-weight:600}.toggle-mode button:hover{text-decoration:underline}.back-link{text-align:center;width:100%;color:var(--text-muted);cursor:pointer;background:0 0;border:none;margin-top:1rem;padding:.5rem;font-size:.875rem;transition:color .15s;display:block}.back-link:hover{color:var(--text-secondary)}.modal-overlay{background:var(--overlay-bg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;justify-content:center;align-items:center;padding:1rem;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal-container{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);flex-direction:column;width:100%;max-width:600px;max-height:90vh;animation:.2s scaleIn;display:flex;overflow:hidden}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.modal-header h3{color:var(--text-primary);margin:0;font-size:1.125rem;font-weight:600}.modal-close-btn{border-radius:var(--radius-sm);cursor:pointer;width:32px;height:32px;color:var(--text-muted);background:0 0;border:none;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;transition:all .15s;display:flex}.modal-close-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.modal-body{padding:1.25rem;overflow-y:auto}@media (width<=640px){.modal-container{border-radius:0;max-width:100%;height:100%;max-height:100dvh}.modal-overlay{padding:0}.modal-body{padding:1rem}}.time-tracker{padding:1.5rem}.active-tracker{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.7rem;display:flex}.timer-display{flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex}.timer-time{color:var(--text-primary);letter-spacing:-.02em;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:clamp(2rem,6vw,3rem);font-weight:600;line-height:1;display:flex}.timer-digits{align-items:baseline;display:flex}.digit-group{min-width:2ch;display:inline-block}.digit-separator{opacity:.3;margin:0 .1rem}.timer-info{flex-direction:row;justify-content:center;align-items:center;gap:.375rem;display:flex}.timer-description{color:var(--text-primary);font-size:.875rem}.timer-actions{flex-wrap:wrap;align-items:center;gap:.625rem;display:flex}.stop-button-group{align-items:center;gap:.5rem;display:flex}.stop-main{min-width:88px;min-height:38px}.btn-end-at{justify-content:center;align-items:center;gap:.375rem;min-width:50px;height:38px;padding:0 .75rem;display:inline-flex}.btn-end-at.scheduled{padding:0 .875rem}.clock-icon{flex-shrink:0;width:12px;height:12px;display:block}.scheduled-time{letter-spacing:.02em;font-size:.8125rem;font-weight:600}.schedule-stop-modal{max-width:420px}.schedule-stop-modal .modal-body{flex-direction:column;gap:.75rem;padding:1rem 1.25rem;display:flex}.schedule-mode-tabs{border-radius:var(--radius-lg);background:var(--bg-secondary);justify-content:center;gap:.5rem;padding:.25rem;display:flex}.schedule-mode-tab{border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex:1;padding:.5rem .75rem;font-size:.8125rem;font-weight:600}.schedule-mode-tab.active{background:var(--card-bg);color:var(--text-primary);box-shadow:var(--shadow-sm)}.schedule-duration-inputs{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.duration-input-group{justify-content:center;align-items:center;gap:.5rem;display:flex}.duration-input{border-radius:var(--radius-md);border:1.5px solid var(--border);background:var(--input-bg);width:72px;height:48px;color:var(--text-primary);text-align:center;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;appearance:textfield;padding:0 .5rem;font-size:1.125rem}.duration-input::-webkit-outer-spin-button{appearance:none;filter:invert();margin:0}.duration-input::-webkit-inner-spin-button{appearance:none;filter:invert();margin:0}.duration-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-alpha);outline:none}.duration-label{color:var(--text-secondary);font-size:.875rem}.schedule-time-input{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;display:flex}.date-input{border-radius:var(--radius-md);border:1.5px solid var(--border);background:var(--input-bg);height:48px;color:var(--text-primary);min-width:165px;padding:0 .75rem;font-size:1rem}.date-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-alpha);outline:none}.time-input{border-radius:var(--radius-md);border:1.5px solid var(--border);background:var(--input-bg);height:48px;color:var(--text-primary);padding:0 .75rem;font-size:1rem}.time-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-alpha);outline:none}.time-hint{color:var(--text-muted);font-size:.8125rem}.schedule-quick-options{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;display:flex}.quick-options-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.6875rem;font-weight:600}.quick-duration-btn{border-radius:var(--radius-md);border:1.5px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);padding:.375rem .625rem;font-size:.75rem}.quick-duration-btn:hover{background:var(--bg-tertiary)}.schedule-icon{font-size:1rem}.schedule-error{text-align:center;width:100%;color:var(--color-danger,#ef4444);margin-bottom:.25rem;font-size:.8rem}.task-prompt-actions .btn{min-width:120px}.task-prompt-actions .btn-success,.task-prompt-actions .btn-ghost{justify-content:center}.stop-icon{font-size:.5rem}.pause-icon{letter-spacing:-2px;font-size:.625rem}.btn-warning{background:var(--warning);color:var(--text-on-primary)}.btn-warning:hover{filter:brightness(1.1)}.forgotten-timer-end-time{align-items:center;gap:.5rem;display:flex}.forgotten-time-input{border:1px solid var(--border);background:var(--bg-primary);color:var(--text-primary);border-radius:.375rem;padding:.375rem .5rem;font-size:.8125rem}.switch-task-section{border-top:1px solid var(--border);flex-direction:column;gap:1rem;margin-top:.5rem;padding-top:1rem;display:flex}.switch-task-row{align-items:center;gap:.5rem;margin-bottom:.325rem;display:flex}.switch-quick-options{flex-wrap:nowrap;flex:1;justify-content:center;align-items:center;gap:.5rem;min-width:0;display:flex;overflow:hidden}.btn-sm{padding:.25rem .625rem;font-size:.75rem}.switch-task-btn{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;flex-shrink:0;align-items:center;gap:.375rem;max-width:20ch;padding:.5rem .875rem;font-size:.8125rem;display:inline-flex}.switch-task-btn:hover{background:var(--bg-tertiary)}.switch-task-description{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.switch-category-btn{background:var(--bg-tertiary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:1.5px solid;align-items:center;gap:.375rem;padding:.5rem .875rem;font-size:.8125rem;font-weight:500;display:inline-flex}.switch-category-btn:hover{background:var(--bg-hover)}.new-task-inline{align-items:center;gap:.625rem;display:flex}.new-task-category-wrapper{border-radius:var(--radius-md);flex-shrink:0;align-items:center;display:flex;position:relative}.new-task-category-wrapper .category-color-indicator{z-index:2;pointer-events:none;border-radius:50%;width:.5rem;height:.5rem;display:block;position:absolute;top:50%;left:.625rem;transform:translateY(-50%)}.switch-category-select,.switch-description-input{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--input-bg);color:var(--text-primary);box-sizing:border-box;height:2.5rem;padding:.5rem .75rem;font-size:.8125rem}.new-task-category-wrapper .switch-category-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5L6 7.5L9 4.5' stroke='%23999' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:12px;min-width:130px;padding-left:1.625rem;padding-right:1.75rem}.switch-category-select{min-width:130px}.switch-description-input{flex:1;min-width:150px}.switch-description-wrapper{flex:1;min-width:150px;position:relative}.switch-description-wrapper .switch-description-input{width:100%}.switch-description-input:focus,.switch-category-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-alpha);outline:none}.task-prompt-modal.modal-container{max-width:400px}.task-prompt-modal .modal-body{flex-direction:column;gap:1.25rem;display:flex}.task-prompt-actions{justify-content:flex-end;gap:.5rem;display:flex}.start-btn{white-space:nowrap;border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;height:2.5rem;padding:0 1.25rem;display:flex}.start-btn-text{display:inline}.play-icon{font-size:.625rem}.new-category-form{background:var(--bg-secondary);border-radius:var(--radius-lg);flex-wrap:wrap;align-items:center;gap:.5rem;padding:1rem;animation:.2s slideIn;display:flex}.new-category-form input[type=text]{flex:150px;min-width:0}.new-category-form .btn{flex-shrink:0}.new-category-modal-form{flex-direction:column;gap:1rem;display:flex}.new-category-input-row{align-items:center;gap:.5rem;display:flex}.new-category-input-row input[type=text]{flex:1;min-width:0}.new-category-input-row .color-picker{width:36px;height:36px;padding:2px}.new-category-modal-actions{justify-content:flex-end;gap:.5rem;display:flex}.color-picker{border-radius:var(--radius-md);cursor:pointer;border:1.5px solid var(--border);background:var(--input-bg);appearance:none;flex-shrink:0;width:44px;height:44px;padding:4px}.color-picker::-webkit-color-swatch-wrapper{padding:0}.color-picker::-webkit-color-swatch{border-radius:calc(var(--radius-md) - 4px);border:none}.color-picker::-moz-color-swatch{border-radius:calc(var(--radius-md) - 4px);border:none}.color-picker:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-alpha);outline:none}.autocomplete-wrapper{flex:200px;min-width:0;position:relative}.task-prompt-modal .description-input-wrapper{position:relative}.modal-suggestions{margin-top:.25rem;position:absolute;top:100%;left:0;right:0}.modal-suggestions .suggestion-item{padding:.5rem .75rem}.suggestions-dropdown{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);z-index:10;box-shadow:var(--shadow-lg);max-height:15rem;margin-top:.375rem;position:absolute;top:100%;left:0;right:0;overflow:hidden auto}.suggestions-dropdown .suggestion-item{text-align:left;width:100%;color:var(--text-primary);cursor:pointer;background:0 0;border:none;padding:.75rem 1rem;font-size:.875rem;display:block}.suggestions-dropdown .suggestion-item:hover{background:var(--bg-secondary)}.suggestions-dropdown .suggestion-item:not(:last-child){border-bottom:1px solid var(--border)}@media (width<=640px){.time-tracker{padding:1rem}.description-suggestions .suggestion-category{display:none}.active-tracker{grid-template-rows:auto auto;grid-template-columns:1fr auto;align-items:center;gap:.5rem .75rem;display:grid}.timer-display{display:contents}.timer-time{grid-area:1/1;min-width:0;font-size:clamp(1.25rem,5.5vw,1.75rem);overflow:hidden}.timer-actions{flex-shrink:0;grid-area:1/2;justify-self:end}.timer-info{flex-flow:wrap;grid-area:2/1/auto/-1;justify-content:center;gap:.375rem;min-width:0;overflow:hidden}.timer-info .category-badge{text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0;overflow:hidden}.timer-description{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.stop-label{display:none}.timer-actions .btn{min-height:38px;padding:0 .625rem}.stop-main{min-width:38px;min-height:38px}.btn-end-at{min-width:38px;height:38px;padding:0 .5rem}.switch-task-section{justify-content:flex-start;gap:.375rem;padding-top:.75rem}.switch-quick-options{flex-wrap:wrap;flex:1;gap:.375rem;width:100%;overflow:visible}.new-task-inline{flex-wrap:wrap;align-items:center;gap:.5rem;width:100%;display:flex}.new-task-inline .new-task-category-wrapper{border-radius:var(--radius-md);background:var(--cat-bg,var(--bg-tertiary));border:1.5px solid var(--border);isolation:isolate;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;min-width:2.5rem;height:2.5rem;display:flex;position:relative;overflow:hidden}.new-task-inline .new-task-category-wrapper .category-color-indicator{border-radius:var(--radius-sm);width:.75rem;height:.75rem;margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.new-task-inline .switch-category-select{width:100%;min-width:0;height:2.5rem;min-height:2.5rem;color:var(--cat-text,var(--text-muted));appearance:none;text-overflow:ellipsis;cursor:pointer;opacity:0;background:0 0;border:none;flex:none;padding:0 .5rem 0 1.5rem;font-size:.75rem;font-weight:500;position:absolute;inset:0}.new-task-inline .switch-description-wrapper{flex:1;min-width:0}.new-task-inline .switch-description-input{width:100%;min-width:0;height:2.5rem;min-height:2.5rem}.new-task-inline .start-btn{flex-shrink:0;width:2.5rem;min-width:2.5rem;height:2.5rem;min-height:2.5rem;padding:0}.new-task-inline .start-btn .start-btn-text{display:none}.switch-task-btn,.switch-category-btn{min-height:44px}.switch-category-select,.switch-description-input{font-size:16px}.task-prompt-modal.modal-container{max-width:calc(100vw - 2rem)}.task-prompt-modal .modal-body{padding:1.25rem}.task-prompt-actions{flex-direction:column}.task-prompt-actions .btn{width:100%;min-height:48px}}@media (width<=420px){.category-badge{padding:.25rem .5rem;font-size:.75rem}.new-category-form{gap:.375rem;padding:.75rem}.switch-task-section{gap:.25rem;padding-top:.625rem}.switch-quick-options{gap:.25rem}}@media (width<=380px){.time-tracker{padding:.75rem}.active-tracker{gap:.375rem .5rem}.stop-button-group{gap:.25rem}.stop-main{min-width:34px;min-height:34px}.timer-actions .btn{min-height:34px;padding:0 .375rem}.btn-end-at{min-width:34px;height:34px;padding:0 .25rem}.new-task-inline .new-task-category-wrapper{width:2.25rem;min-width:2.25rem;height:2.25rem}.new-task-inline .start-btn{width:2.25rem;min-width:2.25rem;height:2.25rem;min-height:2.25rem}.new-task-inline .switch-description-input{height:2.25rem;min-height:2.25rem}}.time-entry-list .card-header{margin-bottom:.75rem}.time-entry-list .header-actions{align-items:center;gap:.5rem;display:flex}.manual-entry-modal.modal-container{max-width:28rem}.time-edit-modal.modal-container{border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-width:32rem;animation:.2s slideUpModal}.time-edit-modal .modal-overlay{align-items:flex-end;padding:0}@keyframes slideUpModal{0%{transform:translateY(100%)}to{transform:translateY(0)}}.manual-entry-form{flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.manual-entry-form .form-group{flex-direction:column;gap:.375rem;margin-bottom:0;display:flex}.manual-entry-form .description-input-wrapper{position:relative}.manual-entry-form .description-input-wrapper input{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--input-bg);width:100%;color:var(--text-primary);transition:all var(--transition-fast);outline:none;padding:.625rem .875rem;font-size:.875rem}.manual-entry-form .description-input-wrapper input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-alpha)}.manual-entry-form .form-group label{color:var(--text-muted);letter-spacing:.06em;margin-bottom:0;font-size:.6875rem}.manual-entry-form .form-group label .optional{text-transform:none;color:var(--text-muted);opacity:.7;font-weight:400}.manual-entry-form select,.manual-entry-form input[type=text],.manual-entry-form input[type=time],.manual-entry-form input[type=date]{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--input-bg);width:100%;color:var(--text-primary);transition:all var(--transition-fast);outline:none;padding:.625rem .875rem;font-size:.875rem}.manual-entry-form select:focus,.manual-entry-form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-alpha)}.form-row-datetime{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.form-row-datetime .form-group input[type=date],.form-row-datetime .form-group input[type=time]{width:100%}.manual-entry-error{color:var(--error);background:var(--error-bg);border-radius:var(--radius-md);padding:.625rem .875rem;font-size:.8125rem}.manual-entry-actions{justify-content:flex-end;gap:.5rem;padding-top:.5rem;display:flex}.date-presets{flex-wrap:wrap;gap:.375rem;margin-bottom:.75rem;display:flex}.preset-btn{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);padding:.375rem .75rem;font-size:.75rem;font-weight:500}.preset-btn:hover{border-color:var(--primary);color:var(--text-primary)}.preset-btn.active{background:var(--primary);border-color:var(--primary);color:var(--text-on-primary)}.date-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.6875rem;font-weight:600;display:flex}.date-header-actions{align-items:center;gap:.375rem;display:flex}.day-total-badge{color:var(--primary);background:var(--primary-alpha);border-radius:var(--radius-full);text-transform:none;padding:.175rem .5rem;font-family:JetBrains Mono,monospace;font-size:.6875rem;font-weight:500}.delete-day-btn{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.6875rem;font-weight:500}.filter-toggle{border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast);padding:.375rem;position:relative}.filter-toggle:hover{color:var(--text-primary);background:var(--bg-secondary)}.filter-toggle.active{color:var(--primary);background:var(--primary-alpha)}.filter-toggle.has-filters .filter-badge{background:var(--primary);border-radius:50%;width:6px;height:6px;position:absolute;top:.125rem;right:.125rem}.total-badge{color:var(--primary);background:var(--primary-alpha);border-radius:var(--radius-full);padding:.375rem .75rem;font-family:JetBrains Mono,monospace;font-size:.8125rem;font-weight:500}.total-badge .filtered-count{color:var(--text-secondary);font-size:.75rem;font-weight:400}.filters-panel{background:var(--bg-secondary);border-radius:var(--radius-lg);flex-direction:column;gap:.75rem;margin-bottom:1rem;padding:1rem;animation:.2s slideIn;display:flex}.filter-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.filter-group{align-items:center;gap:.5rem;display:flex}.filter-group.search-group{flex:1;min-width:12rem;position:relative}.filter-group.date-group{flex-shrink:0}.filter-label{color:var(--text-secondary);white-space:nowrap;font-size:.75rem}.filter-input,.filter-select{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);color:var(--text-primary);transition:all var(--transition-fast);outline:none;padding:.5rem .75rem;font-size:.8125rem}.filter-input:focus,.filter-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-alpha)}.filter-input::placeholder{color:var(--text-muted)}.search-input{width:100%;padding-right:2rem}.clear-search{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.125rem .25rem;font-size:1rem;line-height:1;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.clear-search:hover{color:var(--text-primary)}.date-input{width:9rem}.btn-text{color:var(--primary);cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;padding:.375rem .625rem;font-size:.8125rem;transition:background .15s}.btn-text:hover{background:var(--primary-alpha)}.clear-filters{margin-left:auto}.empty-state{padding:3rem 1.5rem}.entries-by-date{flex-direction:column;gap:1.5rem;display:flex}.entries{flex-direction:column;display:flex}.break-indicator{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:.5rem;width:100%;margin:.125rem 0;padding:.25rem 0;transition:opacity .15s;display:flex}.break-indicator:hover{opacity:1}.break-indicator:hover .break-text{color:var(--primary);opacity:1}.break-indicator:hover .break-line{background:var(--primary);opacity:.5}.break-line{background:var(--border);opacity:.5;flex:1;max-width:3rem;height:1px}.break-text{color:var(--text-muted);opacity:.7;white-space:nowrap;font-size:.625rem}.entry-item{border-radius:var(--radius-lg);cursor:pointer;align-items:center;gap:.5rem;padding:.2rem;transition:background .15s;display:flex}.entry-item.entry-striped{background:var(--bg-hover)}.entry-item:hover{background:var(--bg-row-hover)}.entry-item.selected{background:var(--primary-alpha)}.entry-item:hover .delete-btn,.entry-item:hover .resume-btn,.entry-item:hover .restart-btn{opacity:1}.entry-actions{flex-shrink:0;align-items:center;gap:.125rem;display:flex}.swipe-actions{display:none}.entry-content{flex:1;justify-content:space-between;align-items:center;gap:1rem;min-width:0;display:flex}.entry-main{flex:auto;grid-template-columns:auto 1fr;align-items:center;gap:.875rem;min-width:0;display:grid}.entry-category{cursor:pointer;flex-shrink:0}.entry-category.category-badge{gap:.25rem;padding:.1875rem .5rem;font-size:.75rem}.entry-category.category-badge .category-dot{width:6px;height:6px}.entry-description{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.875rem;overflow:hidden}.editable{border-radius:var(--radius-sm);cursor:text;margin:-.125rem -.375rem;padding:.125rem .375rem}.entry-category.editable{border-radius:var(--radius-full,9999px);cursor:pointer;margin:0;padding:.375rem .75rem}.editable:hover{background:var(--bg-tertiary)}.entry-category.editable:hover{filter:brightness(.95);background:unset}.inline-edit-select,.inline-edit-input{border-radius:var(--radius-sm);border:1.5px solid var(--primary);background:var(--card-bg);color:var(--text-primary);outline:none;padding:.25rem .5rem;font-size:.8125rem}.inline-edit-select{font-size:.875rem;font-weight:500}.inline-new-category{align-items:center;gap:.375rem;display:flex}.inline-color-picker{border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:0 0;width:1.75rem;height:1.75rem;padding:0}.inline-color-picker::-webkit-color-swatch-wrapper{padding:2px}.inline-color-picker::-webkit-color-swatch{border:none;border-radius:2px}.inline-edit-input{flex:1;min-width:6.25rem}.inline-edit-input::placeholder{color:var(--text-muted)}.inline-edit-suggestions{flex:1;min-width:6.25rem}.inline-edit-suggestions .switch-description-input{border-radius:var(--radius-sm);border:1.5px solid var(--primary);background:var(--card-bg);color:var(--text-primary);box-sizing:border-box;outline:none;width:100%;padding:.25rem .5rem;font-size:.8125rem}.inline-edit-suggestions .switch-description-input::placeholder{color:var(--text-muted)}.inline-edit-suggestions .description-suggestions{min-width:220px}.entry-meta{flex-shrink:0;align-items:center;display:flex}.time-separator{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.75rem}.end-time-group{display:contents}.time-full{display:inline}.time-compact{display:none}.entry-duration{color:var(--text-primary);text-align:right;min-width:3.5rem;font-family:JetBrains Mono,monospace;font-size:.8125rem;font-weight:500}.entry-duration.active{color:var(--success)}.entry-duration-btn{color:var(--text-primary);text-align:right;border-radius:var(--radius-sm);cursor:pointer;min-width:5rem;transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;padding:.125rem .375rem;font-family:JetBrains Mono,monospace;font-size:.8125rem;font-weight:500}.entry-duration-btn:hover{background:var(--bg-tertiary)}.entry-duration-btn.active{color:var(--success)}.entry-duration-btn.duration-negative{color:var(--error,#ef4444)}.duration-warning-icon{margin-right:.25rem;font-style:normal}.entry-time-btn{color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;min-width:10ch;margin:-.25rem -.5rem;padding:.25rem .5rem;font-family:JetBrains Mono,monospace;font-size:.8125rem}.entry-time-btn:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-secondary)}.entry-time-btn:disabled{cursor:default}.entry-time-btn.active-time{color:var(--success);font-weight:500}.inline-edit-time-form{flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.inline-edit-time{border-radius:var(--radius-sm);border:1.5px solid var(--primary);background:var(--card-bg);color:var(--text-primary);-webkit-text-size-adjust:100%;outline:none;padding:.25rem .25rem .25rem .375rem;font-family:inherit;font-size:.75rem}.inline-edit-time::-webkit-datetime-edit{font-family:inherit;font-size:inherit}.inline-edit-time::-webkit-datetime-edit-fields-wrapper{font-family:inherit;font-size:inherit}.inline-edit-time::-webkit-datetime-edit-text{font-family:inherit;font-size:inherit}.inline-edit-time::-webkit-datetime-edit-month-field{font-family:inherit;font-size:inherit}.inline-edit-time::-webkit-datetime-edit-day-field{font-family:inherit;font-size:inherit}.inline-edit-time::-webkit-datetime-edit-year-field{font-family:inherit;font-size:inherit}.inline-edit-time::-webkit-datetime-edit-hour-field{font-family:inherit;font-size:inherit}.inline-edit-time::-webkit-datetime-edit-minute-field{font-family:inherit;font-size:inherit}.inline-edit-time::-webkit-datetime-edit-ampm-field{font-family:inherit;font-size:inherit}.inline-edit-time::-webkit-inner-spin-button{margin:0;padding:0}.inline-edit-time::-webkit-calendar-picker-indicator{margin:0;padding:0}.inline-edit-time-only{width:5.75rem}.inline-edit-date{width:7.25rem}.inline-edit-time-error{color:var(--error);flex-basis:100%;margin-top:.125rem;font-size:.75rem}.time-edit-error{color:var(--error);background:var(--error-bg);border-radius:var(--radius-md);padding:.5rem .75rem;font-size:.8125rem}.inline-edit-save-btn,.inline-edit-cancel-btn{border-radius:var(--radius-sm);cursor:pointer;width:1.5rem;height:1.5rem;transition:all var(--transition-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;display:flex}.inline-edit-save-btn{background:var(--success);color:var(--text-on-primary)}.inline-edit-save-btn:hover{background:var(--success-hover)}.inline-edit-cancel-btn{background:var(--bg-tertiary);color:var(--text-muted)}.inline-edit-cancel-btn:hover{background:var(--error-bg);color:var(--error)}.overlap-warning{cursor:help;flex-shrink:0;margin-right:.5rem;font-size:.875rem}.delete-btn,.resume-btn,.restart-btn{opacity:.4;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;padding:.25rem}.delete-btn{font-size:1.125rem}.resume-btn{font-size:.75rem}.restart-btn{font-size:1rem}.delete-btn:hover{color:var(--error)}.resume-btn:hover{color:var(--success)}.restart-btn:hover{color:var(--primary)}.time-edit-body{flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.time-edit-label{color:var(--text-secondary);flex-direction:column;gap:.375rem;font-size:.8125rem;font-weight:500;display:flex}.time-edit-input{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--bg-secondary);width:100%;max-width:100%;min-height:44px;color:var(--text-primary);box-sizing:border-box;appearance:none;outline:none;padding:.5rem .75rem;font-size:1rem;transition:border-color .15s}.time-edit-input:focus{border-color:var(--primary)}.time-edit-actions{border-top:1px solid var(--border);gap:.75rem;padding:1rem 1.25rem;display:flex}.time-edit-actions .btn{flex:1;min-height:44px;font-size:.9375rem}@media (width<=640px){.add-entry-label,.suggestion-category{display:none}.filter-row{flex-direction:column;align-items:stretch}.filter-group.search-group{min-width:100%}.filter-group:has(.filter-select){width:100%}.filter-group:has(.filter-select) .filter-select{width:100%}.filter-row:has(.date-group){flex-flow:wrap;gap:.75rem}.filter-group.date-group{flex:none}.date-input{width:auto;min-width:8rem;height:44px}.clear-filters{text-align:center;width:100%;margin-left:0}.entry-content{will-change:transform;flex-wrap:nowrap;align-self:center;gap:.5rem;min-width:0;transition:transform .25s cubic-bezier(.25,.46,.45,.94)}.entry-meta .inline-edit-time-form{flex:100%}.time-full{display:none}.time-compact{display:inline}.entry-actions,.entry-item>.delete-btn{display:none}.delete-day-btn{opacity:1;min-width:44px;min-height:44px}.entry-item{touch-action:pan-y;-webkit-user-select:none;user-select:none;align-items:center;padding:.5rem;position:relative;overflow:hidden}.entry-item+.entry-item,.entry-item+.break-indicator+.entry-item{margin-top:.25rem}.end-time-group{display:none}.entry-main{grid-template-columns:auto 1fr;gap:.25rem;min-width:0;overflow:hidden}.entry-category{flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;max-width:none;font-size:0;display:flex}.entry-category.category-badge{border-radius:0;gap:0;min-width:auto;padding:0;background:0 0!important}.entry-category .category-badge-text{display:none}.entry-category .category-dot{width:10px;height:10px}.entry-description{font-size:.8125rem}.entry-time-btn{text-align:left;min-width:3.75rem;margin:0;padding:.25rem;font-size:.75rem}.entry-meta{gap:.25rem;min-width:auto}.entry-duration-btn{text-align:right;min-width:4.5rem;padding:.25rem;font-size:.75rem}.entry-duration-btn:hover,.entry-duration-btn:active{background:var(--bg-tertiary);color:var(--primary)}.entry-duration-btn.active{color:var(--success)}.inline-edit-time-form{flex-wrap:wrap;width:100%}.inline-edit-time{min-width:0;min-height:44px;padding:.5rem;font-size:.875rem}.inline-edit-time-only,.inline-edit-date{flex:1;width:auto}.inline-edit-save-btn,.inline-edit-cancel-btn{flex-shrink:0;width:44px;height:44px;font-size:1.125rem}.filter-input,.filter-select{min-height:44px}.time-entry-list .card-header{flex-wrap:wrap;gap:.375rem}.time-entry-list .header-actions{gap:.375rem}.preset-btn{min-height:44px;padding:.5rem .875rem}.manual-entry-modal.modal-container{max-width:calc(100vw - 2rem);max-height:90vh;overflow:hidden auto}.manual-entry-modal .modal-header{padding:1rem 1.25rem}.manual-entry-modal .manual-entry-form{padding:1.25rem}.manual-entry-form select,.manual-entry-form input[type=text],.manual-entry-form input[type=time],.manual-entry-form input[type=date]{min-width:0;max-width:100%}.form-row-datetime{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.75rem}.cleanup-item{flex-direction:column;align-items:flex-start;gap:.625rem}.cleanup-item-actions{justify-content:flex-end;width:100%}.swipe-actions{will-change:transform;z-index:2;align-items:stretch;transition:transform .25s cubic-bezier(.25,.46,.45,.94);display:flex;position:absolute;top:0;bottom:0;right:0;transform:translate(100%)}.entry-item.swiped .swipe-actions{transform:translate(0)}.entry-item.swiped .entry-content{transform:translate(-6rem)}.entry-item.swiped.swiped-wide .entry-content{transform:translate(-9rem)}.swipe-action-btn{color:#fff;cursor:pointer;border:none;justify-content:center;align-items:center;width:3rem;padding:0;font-size:1.125rem;display:flex}.swipe-action-btn.resume,.swipe-action-btn.restart{background:var(--primary)}.swipe-action-btn.delete{background:var(--error,#ef4444)}}.cleanup-banner{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:1rem;animation:.2s slideIn;overflow:hidden}.cleanup-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border);align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.cleanup-icon{font-size:1rem}.cleanup-title{color:var(--text-primary);flex:1;font-size:.8125rem;font-weight:600}.cleanup-apply-all{margin-left:auto}.cleanup-close{color:var(--text-muted);padding:.125rem .25rem;font-size:1.125rem}.cleanup-close:hover{color:var(--text-primary)}.cleanup-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.cleanup-item:last-child{border-bottom:none}.cleanup-item-info{flex:1;align-items:center;gap:.625rem;min-width:0;display:flex}.cleanup-item-icon{flex-shrink:0;font-size:.875rem}.cleanup-item-text{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.cleanup-description{color:var(--text-secondary)}.cleanup-duration{color:var(--text-muted);font-size:.75rem}.cleanup-item-actions{flex-shrink:0;gap:.375rem;display:flex}.cleanup-item-actions .btn-sm{padding:.25rem .625rem;font-size:.75rem}.cleanup-item-actions .btn-danger{background:var(--error);color:var(--text-on-primary);border-color:var(--error)}.cleanup-item-actions .btn-danger:hover{background:var(--error-hover)}@media (width<=380px){.time-entry-list .card-header{flex-wrap:wrap;gap:.375rem}.total-badge{padding:.25rem .5rem;font-size:.75rem}.entry-item{gap:.25rem;padding:.375rem .25rem}.entry-content,.entry-main{gap:.25rem}.entry-time-btn{min-width:3.25rem;padding:.25rem .125rem;font-size:.6875rem}.entry-duration-btn{min-width:3rem;padding:.25rem .125rem;font-size:.6875rem}.entry-description{font-size:.75rem}.date-header{flex-wrap:wrap;gap:.25rem;font-size:.625rem}.day-total-badge{padding:.125rem .375rem;font-size:.625rem}}.category-manager{flex-direction:column;gap:1.25rem;display:flex}.category-form{align-items:center;gap:.5rem;display:flex}.category-name-input{flex:1;min-width:0;height:40px}.color-picker-small{border-radius:var(--radius-md);cursor:pointer;appearance:none;background:0 0;border:none;flex-shrink:0;width:40px;height:40px;padding:0;overflow:hidden}.color-picker-small::-webkit-color-swatch-wrapper{padding:0}.color-picker-small::-webkit-color-swatch{border-radius:var(--radius-md);border:none}.color-picker-small::-moz-color-swatch{border-radius:var(--radius-md);border:none}.color-picker-small:focus{box-shadow:0 0 0 3px var(--primary-alpha);outline:none}.btn-group{gap:.5rem;display:flex}.btn-group .btn{height:40px}.categories-list{flex-direction:column;display:flex}.category-item{border-radius:var(--radius-lg);justify-content:space-between;align-items:center;gap:.875rem;padding:.875rem;transition:background .15s;display:flex}.category-item:hover{background:var(--bg-secondary)}.category-item:hover .category-actions{opacity:1}.category-item-editing{background:var(--bg-secondary)}.category-info{flex:1;align-items:center;gap:.875rem;min-width:0;display:flex}.category-edit-inline{align-items:center;gap:.5rem;width:100%;display:flex}.category-edit-input{border:1.5px solid var(--primary);border-radius:var(--radius-md);background:var(--input-bg);min-width:0;height:36px;color:var(--text-primary);box-shadow:0 0 0 3px var(--primary-alpha);outline:none;flex:1;padding:0 .75rem;font-size:.9375rem}.category-edit-actions{flex-shrink:0;gap:.25rem;display:flex}.category-color{border-radius:var(--radius-md);flex-shrink:0;width:1.5rem;height:1.5rem;box-shadow:inset 0 0 0 1px #0000001a}.category-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;font-weight:500;overflow:hidden}.category-actions{opacity:0;flex-shrink:0;gap:.25rem;transition:opacity .15s;display:flex}.btn-icon{border-radius:var(--radius-md);cursor:pointer;width:2.25rem;height:2.25rem;transition:all var(--transition-fast);color:var(--text-secondary);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:.875rem;display:flex}.btn-icon:hover{background:var(--bg-tertiary);color:var(--text-primary)}.empty-state .empty-icon{opacity:.4;margin-bottom:.75rem;font-size:2.5rem}@media (width<=480px){.category-actions{opacity:1}}@media (width<=420px){.category-name-input{height:36px}.color-picker-small{width:36px;height:36px}.btn-group .btn{height:36px;padding:0 .625rem;font-size:.875rem}.category-item{gap:.5rem;padding:.5rem}.category-name{font-size:.875rem}.category-edit-input{height:32px;font-size:.875rem}}.delete-category-modal.modal-container{max-width:400px}.delete-category-modal p{color:var(--text-secondary);margin:0 0 1rem;font-size:.9375rem;line-height:1.5}.delete-category-modal .form-group{margin-bottom:1.25rem}.delete-category-modal .form-group label{color:var(--text-primary);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.replacement-select{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--input-bg);width:100%;height:44px;color:var(--text-primary);cursor:pointer;padding:0 .875rem;font-size:.9375rem}.replacement-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-alpha);outline:none}.modal-actions{justify-content:flex-end;gap:.75rem;display:flex}.btn-danger{color:var(--text-on-primary);border:none}.btn-danger:hover{background:var(--error-hover)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.error-toast{background:var(--error);color:var(--text-on-primary);border-radius:var(--radius-lg);z-index:1001;padding:.75rem 1.25rem;font-size:.875rem;font-weight:500;animation:.2s slideUpCategory;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}@keyframes slideUpCategory{0%{opacity:0;transform:translate(-50%)translateY(10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.analytics{flex-direction:column;gap:1rem;display:flex}.loading-spinner{border:2px solid var(--bg-tertiary,var(--bg-secondary));border-top-color:var(--primary);border-radius:50%;width:1.5rem;height:1.5rem;margin:0 auto .75rem;animation:.8s linear infinite spin}.chart-hint-action{color:var(--primary);font-weight:500}.analytics-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.period-selector-wrapper{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.period-selector{background:var(--bg-secondary);border-radius:var(--radius-md,.5rem);border:1px solid var(--border);flex-wrap:wrap;gap:.125rem;width:fit-content;padding:.25rem;display:flex}.period-selector button{border-radius:var(--radius-sm,.25rem);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:none;padding:.5rem 1rem;font-size:.8125rem;font-weight:500}.period-selector button:hover{color:var(--text-primary)}.period-selector button.active{background:var(--primary);color:var(--text-on-primary)}.period-nav{gap:.25rem;display:flex}.period-nav-btn{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm,.25rem);width:2rem;height:2rem;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.period-nav-btn.today-btn{width:auto;padding:0 .75rem;font-size:.8125rem;font-weight:500}.period-nav-btn:hover:not(:disabled){background:var(--bg-tertiary,var(--bg-secondary));color:var(--text-primary)}.period-nav-btn:disabled{opacity:.4;cursor:not-allowed}.period-dropdown,.export-dropdown{position:relative}.dropdown-trigger{align-items:center;gap:.25rem;display:flex}.dropdown-menu{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md,.5rem);z-index:100;min-width:140px;position:absolute;top:calc(100% + .25rem);right:0;overflow:hidden;box-shadow:0 4px 12px #00000026}.export-dropdown .dropdown-menu{left:auto;right:0}.dropdown-menu button{width:100%;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;padding:.625rem .875rem;font-size:.8125rem;transition:background .15s;display:block}.dropdown-menu button:hover{background:var(--bg-tertiary,var(--primary-alpha))}.dropdown-menu button.active{background:var(--primary-alpha);color:var(--primary);font-weight:500}.export-btn{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md,.5rem);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:.375rem;padding:.5rem .875rem;font-size:.8125rem;font-weight:500;display:flex}.export-btn:hover:not(:disabled){background:var(--bg-tertiary,var(--bg-secondary));border-color:var(--text-tertiary)}.export-btn:disabled{opacity:.6;cursor:not-allowed}.export-btn svg{flex-shrink:0}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.active-task-card{background:linear-gradient(135deg, var(--bg-secondary) 0%, var(--primary-alpha) 100%);border:1px solid var(--primary);border-radius:var(--radius-lg,.75rem);flex-wrap:wrap;align-items:center;gap:1rem;padding:.875rem 1rem;display:flex}.active-task-indicator{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.pulse-dot{background:var(--success,#22c55e);border-radius:50%;width:.5rem;height:.5rem;animation:2s ease-in-out infinite pulseAnalytics}@keyframes pulseAnalytics{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.active-label{color:var(--primary);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.active-task-info{flex:1;justify-content:flex-end;align-items:center;gap:.75rem;min-width:0;display:flex}.active-task-card .category-badge{border-radius:var(--radius-sm,.25rem);white-space:nowrap;flex-shrink:0;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.8125rem;font-weight:500;display:inline-flex}.active-task-card .category-dot{border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem}.active-task-description{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0;font-size:.875rem;overflow:hidden}.active-task-timer{color:var(--primary);flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:1.25rem;font-weight:600}@media (width<=480px){.active-task-card{flex-direction:column;align-items:stretch;gap:.75rem;padding:.75rem}.active-task-indicator{justify-content:center}.active-task-info{flex-direction:column;justify-content:center;align-items:center;gap:.5rem}.active-task-description{text-align:center;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.active-task-timer{text-align:center;width:100%;font-size:1.5rem}}.summary-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg,.75rem);padding:1rem}.summary-label{color:var(--text-tertiary,var(--text-muted));text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-size:.75rem;font-weight:500}.summary-value{color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:clamp(1.25rem,3vw,1.5rem);font-weight:600}.summary-change{margin-top:.25rem;font-size:.75rem;font-weight:500}.summary-change.positive{color:var(--success)}.summary-change.negative{color:var(--error)}.daily-chart-wrapper{position:relative;overflow:hidden}.daily-chart{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--border) var(--bg-secondary);align-items:stretch;gap:.5rem;height:10rem;padding:1rem 0;display:flex;overflow:auto hidden}.daily-chart.vertical-labels{height:12rem}@supports not (-webkit-touch-callout:none){.daily-chart::-webkit-scrollbar{height:6px}.daily-chart::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:3px}.daily-chart::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.daily-chart::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}}.daily-chart.empty{align-items:flex-end;min-height:8rem}.daily-chart.empty.vertical-labels{min-height:10rem}.chart-bar-container{cursor:default;flex-direction:column;flex:none;align-items:center;gap:.25rem;min-width:3.5rem;transition:transform .15s,background .15s;display:flex;overflow:visible}.chart-bar-container.clickable{cursor:pointer}.chart-bar-container.clickable:hover{transform:translateY(-2px)}.chart-bar-container.clickable:hover .chart-bar-wrapper{box-shadow:0 4px 12px #00000026}.chart-bar-container.clickable:focus{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm,.25rem)}.daily-chart.view-day .chart-bar-container{flex:3rem;min-width:3rem}.daily-chart.view-hour .chart-bar-container,.daily-chart.view-week .chart-bar-container{flex:4rem;min-width:4rem}.daily-chart.view-month .chart-bar-container{flex:3rem;min-width:3rem}.chart-bar-container.today{background:var(--primary-alpha);border-radius:var(--radius-sm,.25rem);margin:-.25rem;padding:.25rem}.chart-bar-container.today .chart-label{color:var(--primary);font-weight:600}.chart-bar-container.empty .chart-value{color:var(--text-tertiary,var(--text-muted));opacity:.5}.chart-bar-wrapper{background:var(--bg-tertiary,var(--bg-secondary));border-radius:var(--radius-sm,.25rem);flex-direction:column;flex:1;width:100%;min-height:.25rem;display:flex;overflow:hidden}.daily-chart.empty .chart-bar-wrapper{display:none}.chart-bar{border-radius:var(--radius-sm,.25rem);background:var(--primary);width:100%;min-height:0}.chart-bar-stack{border-radius:var(--radius-sm,.25rem);flex-direction:column-reverse;width:100%;display:flex;overflow:hidden}.chart-bar-segment{width:100%;min-height:2px;transition:height .3s}.chart-bar-segment:first-child{border-radius:0 0 var(--radius-sm,.25rem) var(--radius-sm,.25rem)}.chart-bar-segment:last-child{border-radius:var(--radius-sm,.25rem) var(--radius-sm,.25rem) 0 0}.chart-bar-segment:only-child{border-radius:var(--radius-sm,.25rem)}.chart-bar-container.empty .chart-bar,.chart-bar-container.empty .chart-bar-stack{background:0 0}.chart-hint{color:var(--text-tertiary,var(--text-muted));font-size:.75rem}.chart-label{color:var(--text-tertiary,var(--text-muted));white-space:nowrap;text-align:center;max-width:100%;font-size:.6875rem}.daily-chart.vertical-labels .chart-label{writing-mode:vertical-rl;text-orientation:mixed;text-overflow:ellipsis;height:4.5rem;min-height:4.5rem;max-height:4.5rem;font-size:.625rem;overflow:hidden;transform:rotate(180deg)}.chart-value{color:var(--text-secondary);white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:.625rem}.chart-legend{border-top:1px solid var(--border);flex-wrap:wrap;gap:.75rem 1rem;margin-top:.5rem;padding-top:.75rem;display:flex}.legend-item{align-items:center;gap:.375rem;display:flex}.legend-dot{border-radius:.125rem;flex-shrink:0;width:.5rem;height:.5rem}.legend-label{color:var(--text-secondary);font-size:.75rem}.category-breakdown{flex-direction:column;gap:.5rem;display:flex}.category-row{align-items:center;gap:.75rem;display:flex}.category-row.clickable{cursor:pointer;border-radius:var(--radius-md,.5rem);margin:-.375rem -.5rem;padding:.375rem .5rem;transition:background .15s}.category-row.clickable:hover{background:var(--bg-tertiary,var(--bg-secondary))}.category-row.clickable:focus{outline:2px solid var(--primary);outline-offset:2px}.category-row .chevron-icon{color:var(--text-tertiary,var(--text-muted));opacity:0;flex-shrink:0;transition:opacity .15s}.category-row.clickable:hover .chevron-icon{opacity:1}.category-drilldown{flex-direction:column;gap:1rem;display:flex}.drilldown-header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding-bottom:.75rem;display:flex}.drilldown-header .category-info{align-items:center;gap:.5rem;display:flex}.drilldown-header .category-dot{border-radius:.25rem;flex-shrink:0;width:.75rem;height:.75rem}.drilldown-header .category-name{color:var(--text-primary);font-size:1rem;font-weight:600}.drilldown-header .category-stats{align-items:center;gap:1rem;display:flex}.drilldown-header .category-time{color:var(--primary);font-family:JetBrains Mono,monospace;font-size:1rem;font-weight:600}.drilldown-header .category-count{color:var(--text-tertiary,var(--text-muted));font-size:.875rem}.drilldown-loading{text-align:center;color:var(--text-secondary);padding:1.5rem}.descriptions-list{flex-direction:column;display:flex}.back-btn{border:1px solid var(--border);border-radius:var(--radius-sm,.25rem);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;align-items:center;gap:.25rem;padding:.375rem .625rem;font-size:.75rem;font-weight:500;display:flex}.back-btn:hover{background:var(--bg-tertiary,var(--bg-secondary));color:var(--text-primary)}.pagination{border-top:1px solid var(--border);justify-content:center;align-items:center;gap:1rem;margin-top:.5rem;padding-top:1rem;display:flex}.pagination-btn{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm,.25rem);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);padding:.5rem 1rem;font-size:.8125rem;font-weight:500}.pagination-btn:hover:not(:disabled){background:var(--bg-tertiary,var(--bg-secondary));border-color:var(--text-tertiary)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-info{color:var(--text-secondary);font-size:.8125rem}.page-size-select{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm,.25rem);color:var(--text-primary);cursor:pointer;margin-left:auto;padding:.375rem .625rem;font-size:.75rem}.page-size-select:hover{border-color:var(--text-tertiary)}.descriptions-count{color:var(--text-tertiary,var(--text-muted));font-size:.75rem}.descriptions-header-controls{align-items:center;gap:.75rem;display:flex}.sort-select{border:1px solid var(--border);border-radius:var(--radius-sm,.25rem);background:var(--input-bg);color:var(--text-primary);cursor:pointer;padding:.375rem .625rem;font-size:.75rem}.sort-select:hover{border-color:var(--text-tertiary)}.sort-select:focus{border-color:var(--primary);outline:none}.category-row .category-info{flex-shrink:0;align-items:center;gap:.5rem;min-width:10rem;display:flex}.category-row .category-dot{border-radius:.1875rem;flex-shrink:0;width:.625rem;height:.625rem}.category-row .category-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:500;overflow:hidden}.category-bar-wrapper{background:var(--bg-tertiary,var(--bg-secondary));border-radius:.25rem;flex:1;min-width:4rem;height:.5rem;overflow:hidden}.category-bar{border-radius:.25rem;height:100%;transition:width .3s}.category-stats{white-space:nowrap;flex-shrink:0;gap:.5rem;display:flex}.category-time{color:var(--text-primary);text-align:right;min-width:4rem;font-family:JetBrains Mono,monospace;font-size:.8125rem}.category-percent{color:var(--text-tertiary,var(--text-muted));text-align:right;min-width:2.5rem;font-size:.8125rem}.top-tasks{flex-direction:column;display:flex}.task-row{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.625rem 0;display:flex}.task-row:last-child{border-bottom:none}.task-rank{color:var(--text-tertiary,var(--text-muted));flex-shrink:0;min-width:1.5rem;font-size:.75rem;font-weight:600}.task-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.875rem;overflow:hidden}.task-count{color:var(--text-tertiary,var(--text-muted));flex-shrink:0;font-size:.75rem}.task-time{color:var(--primary);text-align:right;flex-shrink:0;min-width:3.75rem;font-family:JetBrains Mono,monospace;font-size:.8125rem}.insights-card{background:linear-gradient(135deg, var(--bg-secondary) 0%, var(--primary-alpha) 100%)}.insights{flex-direction:column;gap:.75rem;display:flex}.insight{color:var(--text-secondary);align-items:flex-start;gap:.625rem;font-size:.875rem;line-height:1.5;display:flex}.insight-icon{flex-shrink:0;font-size:1rem}.insight strong{color:var(--text-primary)}@media (width<=640px){.analytics-header{flex-direction:column;align-items:stretch;gap:.75rem}.period-selector-wrapper{flex-direction:column;align-items:stretch;gap:.5rem}.period-selector{justify-content:center;width:100%}.period-selector button{text-align:center;flex:1;min-height:44px;padding:.5rem .375rem;font-size:.75rem}.period-nav{justify-content:center}.period-nav-btn{min-width:44px;min-height:44px}.export-dropdown{width:100%}.export-btn{justify-content:center;width:100%;min-height:44px}.summary-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.summary-card{padding:.75rem}.summary-label{font-size:.6875rem}.summary-value{font-size:1.125rem}.category-breakdown{gap:0}.category-row{flex-wrap:wrap;gap:.25rem .5rem;padding:.5rem 0}.category-row.clickable{margin:0 -.375rem;padding:.5rem .375rem}.category-row .category-info{flex-shrink:1;min-width:auto}.category-row .category-name{font-size:.8125rem}.category-bar-wrapper{flex:100%;order:3;min-width:0;height:.375rem}.category-stats{gap:.375rem;margin-left:auto}.category-time{min-width:3.5rem;font-size:.75rem}.category-percent{min-width:2rem;font-size:.75rem}.category-row .chevron-icon{display:none}.drilldown-header{flex-direction:column;align-items:flex-start;gap:.75rem}.drilldown-header .category-stats{justify-content:flex-start;width:100%}.descriptions-header-controls{flex-wrap:wrap;gap:.5rem}.task-row{flex-wrap:nowrap;gap:.375rem;padding:.5rem .25rem}.task-name{flex:1;min-width:0;font-size:.8125rem}.task-rank{min-width:1.25rem;font-size:.6875rem}.task-category{display:none}.task-count{font-size:.6875rem}.task-time{min-width:3rem;font-size:.75rem}.task-edit-trigger{display:none}.pagination{flex-wrap:wrap;gap:.5rem}.pagination-btn{min-height:44px;padding:.5rem .875rem}.page-size-select{min-height:44px;margin-left:0}.daily-chart{gap:.25rem;padding:.75rem 0}.chart-bar-container{min-width:2.5rem}.daily-chart.view-day .chart-bar-container,.daily-chart.view-week .chart-bar-container{flex:1;min-width:2.25rem}.chart-legend{gap:.5rem .75rem}.legend-label{font-size:.6875rem}.dropdown-menu{min-width:120px}}.merge-btn{background:var(--primary);border-radius:var(--radius-sm,.25rem);color:var(--text-on-primary);cursor:pointer;transition:all var(--transition-fast);border:none;padding:.375rem .75rem;font-size:.75rem;font-weight:500}.merge-btn:hover{background:var(--primary-hover,var(--primary));filter:brightness(1.1)}.merge-hint{color:var(--text-tertiary,var(--text-muted));font-size:.75rem;font-style:italic}.task-checkbox{flex-shrink:0;justify-content:center;align-items:center;width:1.25rem;display:flex}.task-checkbox input[type=checkbox]{cursor:pointer;width:.8125rem;height:.8125rem;accent-color:var(--primary);margin:0}.task-category{border-radius:var(--radius-sm,.25rem);white-space:nowrap;flex-shrink:0;align-items:center;gap:.25rem;padding:.125rem .5rem;font-size:.6875rem;font-weight:500;display:inline-flex}.task-category-dot{border-radius:50%;flex-shrink:0;width:.375rem;height:.375rem}.task-row.selected{background:var(--primary-alpha,#6366f11a);border-radius:var(--radius-sm,.25rem);margin:0 -.5rem;padding-left:.5rem;padding-right:.5rem}.merge-modal.modal-container{max-width:26rem}.merge-modal .modal-body{padding:1.25rem 1.5rem 1.5rem}.merge-modal h3{color:var(--text-primary);margin:0 0 .375rem;font-size:1.0625rem;font-weight:600}.merge-info{color:var(--text-secondary);margin:0 0 1rem;font-size:.8125rem;line-height:1.5}.merge-section{margin-bottom:1rem}.merge-section-title{color:var(--text-tertiary,var(--text-muted));text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem;font-size:.6875rem;font-weight:600}.merge-category-hint{margin-bottom:.5rem;font-size:.75rem}.merge-options{flex-direction:column;gap:.375rem;max-height:12rem;margin-bottom:1rem;display:flex;overflow-y:auto}.merge-option{background:var(--bg-secondary);border:1.5px solid var(--border);border-radius:var(--radius-md,.5rem);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:.625rem;padding:.625rem .75rem;display:flex}.merge-option:hover{border-color:var(--text-tertiary);background:var(--bg-tertiary,var(--bg-secondary))}.merge-option.selected{border-color:var(--primary);background:var(--primary-alpha,#6366f114)}.merge-option input[type=radio]{cursor:pointer;width:.8125rem;height:.8125rem;accent-color:var(--primary);flex-shrink:0;margin:0}.merge-option-text{color:var(--text-primary);overflow-wrap:break-word;font-size:.8125rem}.merge-option-category{border-radius:var(--radius-sm,.25rem);align-items:center;gap:.3125rem;padding:.1875rem .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.merge-option-category-dot{border-radius:50%;flex-shrink:0;width:.4375rem;height:.4375rem}.merge-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:.5rem;padding-top:.75rem;display:flex}.merge-actions .btn{border-radius:var(--radius-sm,.25rem);cursor:pointer;transition:all var(--transition-fast);padding:.4375rem .875rem;font-size:.8125rem;font-weight:500}.merge-actions .btn-ghost{border:1px solid var(--border);color:var(--text-secondary);background:0 0}.merge-actions .btn-ghost:hover:not(:disabled){background:var(--bg-secondary);color:var(--text-primary)}.merge-actions .btn-primary{background:var(--primary);color:var(--text-on-primary);border:none}.merge-actions .btn-primary:hover:not(:disabled){filter:brightness(1.1)}.merge-actions .btn:disabled{opacity:.5;cursor:not-allowed}.tasks-filter-row{border-bottom:1px solid var(--border);gap:.5rem;margin-bottom:.5rem;padding:.75rem 0;display:flex}.tasks-search-input{border:1px solid var(--border);border-radius:var(--radius-md,.5rem);background:var(--input-bg,var(--bg-primary));min-width:10rem;color:var(--text-primary);transition:all var(--transition-fast);outline:none;flex:1;padding:.5rem .75rem;font-size:.8125rem}.tasks-search-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-alpha,#6366f133)}.tasks-search-input::placeholder{color:var(--text-muted)}.tasks-category-filter{border:1px solid var(--border);border-radius:var(--radius-md,.5rem);background:var(--input-bg,var(--bg-primary));color:var(--text-primary);cursor:pointer;min-width:8rem;padding:.5rem .75rem;font-size:.8125rem}.tasks-category-filter:focus{border-color:var(--primary);outline:none}.tasks-clear-filter{border:1px solid var(--border);border-radius:var(--radius-md,.5rem);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:.5rem .75rem;font-size:.75rem;font-weight:500}.tasks-clear-filter:hover{background:var(--bg-secondary);color:var(--text-primary)}.tasks-search-hint{color:var(--text-muted);white-space:nowrap;align-items:center;font-size:.75rem;display:flex}.task-row.editing{background:var(--bg-secondary);border-radius:var(--radius-md,.5rem);border:1px solid var(--primary);margin:0 -.5rem;padding:.5rem}.task-name-input{background:var(--input-bg,var(--bg-primary));border:1px solid var(--border);border-radius:var(--radius-sm,.25rem);min-width:0;color:var(--text-primary);outline:none;flex:auto;padding:.375rem .5rem;font-size:.875rem}.task-name-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-alpha,#6366f133)}.task-category-select{background:var(--input-bg,var(--bg-primary));border:1px solid var(--border);border-radius:var(--radius-sm,.25rem);color:var(--text-primary);cursor:pointer;flex-shrink:0;min-width:8rem;padding:.375rem .5rem;font-size:.75rem}.task-category-select:focus{border-color:var(--primary);outline:none}.task-edit-actions{flex-shrink:0;gap:.25rem;display:flex}.task-edit-btn{border-radius:var(--radius-sm,.25rem);cursor:pointer;width:1.75rem;height:1.75rem;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;font-size:.875rem;display:flex}.task-edit-btn.save{background:var(--success,#22c55e);color:var(--text-on-primary)}.task-edit-btn.save:hover:not(:disabled){filter:brightness(1.1)}.task-edit-btn.cancel{background:var(--bg-tertiary,var(--bg-secondary));color:var(--text-secondary);border:1px solid var(--border)}.task-edit-btn.cancel:hover:not(:disabled){background:var(--error,#ef4444);color:var(--text-on-primary);border-color:#0000}.task-edit-btn:disabled{opacity:.5;cursor:not-allowed}.task-edit-trigger{border-radius:var(--radius-sm,.25rem);width:1.5rem;height:1.5rem;color:var(--text-tertiary,var(--text-muted));cursor:pointer;opacity:0;transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.task-row:hover .task-edit-trigger{opacity:1}.task-edit-trigger:hover{background:var(--bg-tertiary,var(--bg-secondary));color:var(--primary)}.task-edit-trigger:focus{opacity:1;outline:2px solid var(--primary);outline-offset:1px}.import-wizard.modal-container{max-width:56rem;max-height:90vh}.import-wizard .modal-body{flex-direction:column;padding:0;display:flex}.import-wizard-progress{border-bottom:1px solid var(--border);background:var(--bg-secondary);justify-content:center;align-items:center;gap:.5rem;padding:1.25rem 1.5rem;display:flex}.progress-step{color:var(--text-muted);align-items:center;gap:.5rem;display:flex}.progress-step.active{color:var(--primary)}.progress-step.done{color:var(--success)}.step-number{background:var(--bg-tertiary);border-radius:50%;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.75rem;font-weight:600;display:flex}.progress-step.active .step-number{background:var(--primary);color:var(--text-on-primary)}.progress-step.done .step-number{background:var(--success);color:var(--text-on-primary)}.step-label{font-size:.8125rem;font-weight:500}.progress-line{background:var(--border);width:3rem;height:2px}.import-wizard-content{flex:1;padding:1.5rem;overflow-y:auto}.import-wizard-description{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.875rem}.import-wizard-error{background:var(--error-bg);color:var(--error);border-radius:var(--radius-md);margin:0 1.5rem;padding:.75rem 1rem;font-size:.875rem}.import-wizard-loading{flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3rem;display:flex}.import-wizard-loading p{color:var(--text-secondary);font-size:.875rem}.mapping-grid{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.mapping-row{flex-direction:column;gap:.375rem;display:flex}.mapping-row label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.mapping-row label.required:after{content:" *";color:var(--error)}.mapping-row select{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--input-bg);color:var(--text-primary);padding:.5rem .75rem;font-size:.875rem}.mapping-row select:focus{border-color:var(--primary);outline:none}.mapping-preview{margin-top:1.5rem}.mapping-preview h4{color:var(--text-secondary);margin-bottom:.75rem;font-size:.8125rem;font-weight:600}.preview-table-wrapper{border:1px solid var(--border);border-radius:var(--radius-md);overflow-x:auto}.preview-table{border-collapse:collapse;width:100%;font-size:.8125rem}.preview-table th,.preview-table td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:.5rem .75rem}.preview-table th{background:var(--bg-secondary);color:var(--text-secondary);font-weight:600}.preview-table td{color:var(--text-primary)}.preview-table tr:last-child td{border-bottom:none}.import-stats{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.import-stats .stat{border-radius:var(--radius-full);padding:.25rem .625rem;font-size:.8125rem;font-weight:500}.import-stats .stat.valid{background:var(--success-bg);color:var(--success)}.import-stats .stat.errors{background:var(--error-bg);color:var(--error)}.import-stats .stat.skipped{background:var(--bg-secondary);color:var(--text-muted)}.import-stats .stat.total{color:var(--text-secondary);background:0 0}.import-stats .btn-small{margin-left:auto;padding:.25rem .5rem;font-size:.75rem}.new-categories-notice{background:var(--primary-alpha);border-radius:var(--radius-md);color:var(--text-primary);margin-bottom:1rem;padding:.75rem 1rem;font-size:.8125rem}.entries-table-wrapper{border:1px solid var(--border);border-radius:var(--radius-md);max-height:24rem;overflow:auto}.entries-table{border-collapse:collapse;width:100%;font-size:.8125rem}.entries-table th,.entries-table td{text-align:left;border-bottom:1px solid var(--border);padding:.5rem .625rem}.entries-table th{background:var(--bg-secondary);color:var(--text-secondary);z-index:1;font-weight:600;position:sticky;top:0}.entries-table tr.has-error{background:var(--error-bg)}.entries-table tr.skipped{opacity:.5}.entries-table input[type=text]{border-radius:var(--radius-sm);width:100%;color:var(--text-primary);background:0 0;border:1px solid #0000;padding:.25rem .5rem;font-size:.8125rem}.entries-table input[type=text]:focus{border-color:var(--primary);background:var(--card-bg);outline:none}.entries-table input[type=text]:disabled{color:var(--text-muted)}.col-skip{text-align:center;width:3rem}.col-category{min-width:8rem}.col-task{min-width:10rem}.col-start,.col-end{white-space:nowrap;min-width:10rem}.col-duration{white-space:nowrap;min-width:5rem}.col-status{text-align:center;width:3rem}.new-badge{text-transform:uppercase;background:var(--primary);color:var(--text-on-primary);border-radius:var(--radius-sm);margin-left:.375rem;padding:.125rem .375rem;font-size:.625rem;font-weight:600}.status-error{cursor:help}.status-ok{color:var(--success)}.status-skip{color:var(--text-muted)}.import-wizard-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}@media (width<=640px){.import-wizard.modal-container{border-radius:0;max-height:100dvh}.mapping-grid{grid-template-columns:1fr}.step-label{display:none}.progress-line{width:1.5rem}}.settings{flex-direction:column;gap:1.25rem;display:flex}.settings-description{color:var(--text-secondary);margin-bottom:1rem;font-size:.875rem;line-height:1.6}.settings-form{flex-direction:column;gap:1rem;display:flex}.form-group{flex-direction:column;gap:.375rem;margin-bottom:0;display:flex}.form-group label{text-transform:none;letter-spacing:normal;margin-bottom:0;font-size:.8125rem;font-weight:500}.form-divider{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;border-top:1px solid var(--border);margin-top:.5rem;padding-top:.75rem;font-size:.6875rem;font-weight:600}.form-error{color:var(--error);background:var(--error-bg);border-radius:var(--radius-md);padding:.625rem .875rem;font-size:.8125rem}.form-success{color:var(--success);background:var(--success-bg);border-radius:var(--radius-md);padding:.625rem .875rem;font-size:.8125rem}.btn-primary{color:var(--text-on-primary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1.5px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);padding:.5rem 1rem;font-size:.8125rem;font-weight:500}.btn-secondary:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--text-muted)}.btn-danger{color:var(--text-on-primary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none;padding:.5rem 1rem;font-size:.8125rem;font-weight:500}.settings-actions{flex-direction:column;gap:1rem;display:flex}.settings-action{background:var(--bg-secondary);border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem;display:flex}.settings-action.danger{background:var(--error-bg)}.action-info{flex:1;min-width:200px}.action-info h3{color:var(--text-primary);margin:0 0 .25rem;font-size:.9375rem;font-weight:600}.action-info p{color:var(--text-secondary);margin:0;font-size:.8125rem;line-height:1.5}.confirm-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.danger-zone{border:1.5px solid var(--error)}.danger-zone .card-title{color:var(--error)}@media (width<=480px){.settings-action{flex-direction:column;align-items:stretch}.settings-action button,.settings-action .import-btn,.confirm-buttons{width:100%}.confirm-buttons button{flex:1}}.import-btn{cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.import-btn:hover:not(:has(input:disabled)){background:var(--bg-secondary);border-color:var(--text-tertiary)}.import-result{background:var(--bg-tertiary,var(--bg-secondary));border-radius:var(--radius-md);padding:.75rem 1rem}.import-success{color:var(--success);margin:0;font-size:.875rem}.import-errors{color:var(--text-secondary);margin:.5rem 0 0;padding-left:1.25rem;font-size:.8125rem}.import-errors li{margin-bottom:.25rem}.form-hint{color:var(--text-muted);margin-top:.25rem;font-size:.75rem}.form-group select{cursor:pointer}.form-group select:disabled{opacity:.6;cursor:not-allowed}.help{flex-direction:column;gap:1.25rem;display:flex}.help-intro p{color:var(--text-secondary);margin:0 0 1.25rem;font-size:.9375rem;line-height:1.6}.help-steps{flex-direction:column;gap:1rem;display:flex}.help-step{background:var(--bg-secondary);border-radius:var(--radius-lg);align-items:flex-start;gap:1rem;padding:1rem;display:flex}.step-number{background:var(--primary);width:2rem;height:2rem;color:var(--text-on-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;display:flex}.step-content h4{color:var(--text-primary);margin:0 0 .25rem;font-size:.9375rem;font-weight:600}.step-content p{color:var(--text-secondary);margin:0;font-size:.8125rem;line-height:1.5}.faq-list{flex-direction:column;display:flex}.faq-item{border-bottom:1px solid var(--border)}.faq-item:last-child{border-bottom:none}.faq-question{cursor:pointer;text-align:left;width:100%;color:var(--text-primary);background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;font-size:.9375rem;font-weight:500;display:flex}.faq-question:hover{color:var(--primary)}.faq-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.faq-item.expanded .faq-chevron{transform:rotate(180deg)}.faq-answer{padding:0 0 1rem}.faq-answer p{color:var(--text-secondary);margin:0;font-size:.875rem;line-height:1.6}.shortcuts-list{flex-direction:column;gap:.75rem;display:flex}.shortcut-item{background:var(--bg-secondary);border-radius:var(--radius-md);align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.shortcut-keys{gap:.375rem;display:flex}.shortcut-keys kbd{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);min-width:2rem;color:var(--text-primary);box-shadow:var(--shadow-sm);justify-content:center;align-items:center;padding:.25rem .5rem;font-family:inherit;font-size:.75rem;font-weight:500;display:inline-flex}.shortcut-action{color:var(--text-secondary);font-size:.875rem}.help-contact p{color:var(--text-secondary);margin:0 0 1rem;font-size:.875rem;line-height:1.6}.help-links{flex-wrap:wrap;gap:.75rem;display:flex}.help-link{background:var(--bg-secondary);border:1.5px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);align-items:center;gap:.5rem;padding:.625rem 1rem;font-size:.8125rem;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.help-link:hover{background:var(--bg-tertiary);border-color:var(--primary);color:var(--primary)}.help-link svg{flex-shrink:0}.help-version{text-align:center;padding:1rem 0}.help-version p{color:var(--text-muted);margin:0;font-size:.75rem}@media (width<=480px){.help-step{padding:.875rem}.faq-question{padding:.875rem 0;font-size:.875rem}.shortcut-item{flex-direction:column;align-items:flex-start;gap:.5rem}.help-links{flex-direction:column}.help-link{justify-content:center}}@media (hover:none) and (pointer:coarse){.faq-question,.help-link{min-height:var(--touch-target-min)}}:root{--primary:#6366f1;--primary-hover:#4f46e5;--primary-alpha:#6366f11f;--bg-primary:#fafafa;--bg-secondary:#f4f4f5;--bg-tertiary:#e4e4e7;--bg-hover:#0000000a;--bg-row-hover:#6366f112;--bg-gradient:linear-gradient(145deg, #fafafa 0%, #f0f0f2 100%);--bg-gradient-hero:linear-gradient(135deg, #f8f9ff 0%, #f0f4ff 50%, #faf5ff 100%);--card-bg:#fff;--card-border:#0000000f;--card-shadow:0 1px 3px #0000000a, 0 4px 12px #00000008;--card-shadow-hover:0 4px 12px #00000014, 0 8px 24px #0000000a;--input-bg:#fff;--input-border:#e4e4e7;--text-primary:#18181b;--text-secondary:#52525b;--text-tertiary:#71717a;--text-muted:#a1a1aa;--border:#e4e4e7;--error:#ef4444;--error-bg:#ef444414;--success:#22c55e;--success-bg:#22c55e14;--warning:#f59e0b;--warning-bg:#f59e0b14;--error-hover:#dc2626;--success-hover:#16a34a;--info:#3b82f6;--info-bg:#3b82f614;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 2px 8px #0000000f, 0 4px 16px #0000000a;--shadow-lg:0 8px 24px #00000014, 0 16px 48px #0000000f;--shadow-xl:0 16px 48px #0000001f, 0 32px 80px #00000014;--overlay-bg:#00000080;--text-on-primary:#fff;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--touch-target-min:44px}[data-theme=dark]{--primary:#818cf8;--primary-hover:#a5b4fc;--primary-alpha:#818cf82e;--bg-primary:#0f0f10;--bg-secondary:#18181b;--bg-tertiary:#27272a;--bg-hover:#ffffff0a;--bg-row-hover:#818cf81a;--bg-gradient:linear-gradient(145deg, #0f0f10 0%, #18181b 100%);--bg-gradient-hero:linear-gradient(135deg, #0f0f10 0%, #1a1a2e 50%, #16161d 100%);--card-bg:#18181b;--card-border:#ffffff0f;--card-shadow:0 1px 3px #0000004d, 0 4px 12px #0003;--card-shadow-hover:0 4px 12px #0006, 0 8px 24px #0000004d;--input-bg:#27272a;--input-border:#3f3f46;--text-primary:#fcfcfc;--text-secondary:#a1a1aa;--text-tertiary:#71717a;--text-muted:#62626b;--border:#27272a;--error:#f87171;--error-bg:#f871711f;--success:#4ade80;--success-bg:#4ade801f;--warning:#fbbf24;--warning-bg:#fbbf241f;--error-hover:#ef4444;--success-hover:#22c55e;--info:#60a5fa;--info-bg:#60a5fa1f;--shadow-sm:0 1px 3px #0006;--shadow-md:0 2px 8px #00000080, 0 4px 16px #0000004d;--shadow-lg:0 8px 24px #00000080, 0 16px 48px #0006;--shadow-xl:0 16px 48px #0009, 0 32px 80px #00000080;--overlay-bg:#000000a6;--text-on-primary:#fff}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}.app{background:var(--bg-gradient);flex-direction:column;min-height:100dvh;display:flex}.app-header{border-bottom:1px solid var(--border);z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;grid-template-columns:1fr auto 1fr;align-items:center;padding:.75rem 1.5rem;transition:transform .3s;display:grid;position:sticky;top:0}.app-header.header-hidden{transform:translateY(-100%)}.app-header.header-collapsed{position:fixed;left:0;right:0}.header-reveal-zone{z-index:101;cursor:pointer;background:linear-gradient(to bottom, var(--primary), transparent);opacity:.4;height:12px;transition:opacity .2s;position:fixed;top:0;left:0;right:0}.header-reveal-zone:hover,.header-reveal-zone:focus-visible{opacity:.7}[data-theme=dark] .app-header{background:#18181bd9}.header-left{justify-content:flex-start;align-items:center;display:flex;position:relative}.hamburger-btn{border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:44px;height:44px;transition:all .15s;display:none}.hamburger-btn:hover{background:var(--bg-hover)}.hamburger-line{background:var(--text-secondary);border-radius:2px;width:16px;height:2px;transition:all .3s}.hamburger-btn:hover .hamburger-line{background:var(--text-primary)}.hamburger-btn.open .hamburger-line:first-child{transform:rotate(45deg)translate(4px,4px)}.hamburger-btn.open .hamburger-line:nth-child(2){opacity:0}.hamburger-btn.open .hamburger-line:nth-child(3){transform:rotate(-45deg)translate(4px,-4px)}.mobile-nav-panel{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:200;opacity:0;transform-origin:0 0;pointer-events:none;transition:all .2s;position:absolute;top:calc(100% + 8px);left:0;overflow:hidden;transform:scale(.95)translateY(-4px)}.mobile-nav-panel.open{opacity:1;pointer-events:auto;transform:scale(1)translateY(0)}.mobile-nav-content{flex-direction:column;min-width:160px;display:flex}.mobile-nav-item{width:100%;color:var(--text-secondary);cursor:pointer;text-align:left;min-height:var(--touch-target-min);background:0 0;border:none;align-items:center;gap:.75rem;padding:.875rem 1rem;font-size:.875rem;font-weight:500;transition:all .15s;display:flex}.mobile-nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.mobile-nav-item.active{background:var(--primary-alpha);color:var(--primary)}.mobile-nav-item:not(:last-child){border-bottom:1px solid var(--border)}.mobile-nav-overlay{z-index:150;pointer-events:auto;background:0 0;position:fixed;inset:0}.header-center{justify-content:center;align-items:center;display:flex}.header-right{justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.logo{align-items:center;gap:.5rem;display:flex}.logo-icon{width:26px;height:26px;color:var(--primary);flex-shrink:0;margin-bottom:0;display:block}.logo-text{letter-spacing:-.02em;color:var(--text-primary);background:linear-gradient(135deg, var(--text-primary) 0%, var(--text-secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.125rem;font-weight:700;line-height:26px}.user-menu{align-items:center;gap:.5rem;display:flex}.username{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.logout-btn{border-radius:var(--radius-md);cursor:pointer;width:34px;height:34px;color:var(--text-muted);background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.logout-btn:hover{background:var(--error-bg);color:var(--error)}.settings-menu-container{position:relative}.settings-menu-btn{border-radius:var(--radius-md);cursor:pointer;width:34px;height:34px;color:var(--text-secondary);background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.settings-menu-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.settings-dropdown{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);min-width:200px;box-shadow:var(--shadow-lg);z-index:200;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.settings-dropdown-user{border-bottom:1px solid var(--border);flex-direction:column;gap:.125rem;padding:.75rem 1rem;display:flex}.settings-dropdown-guest{background:var(--warning-bg)}.settings-dropdown-guest .settings-dropdown-name{color:var(--warning)}.settings-dropdown-name{color:var(--text-primary);font-size:.875rem;font-weight:600}.settings-dropdown-email{color:var(--text-muted);font-size:.75rem}.settings-dropdown-item{width:100%;color:var(--text-secondary);cursor:pointer;text-align:left;min-height:var(--touch-target-min);background:0 0;border:none;align-items:center;gap:.625rem;padding:.75rem 1rem;font-size:.8125rem;transition:all .15s;display:flex}.settings-dropdown-item:hover{background:var(--bg-hover);color:var(--text-primary)}.settings-dropdown-logout{border-top:1px solid var(--border)}.settings-dropdown-logout:hover{background:var(--error-bg);color:var(--error)}.settings-dropdown-version{border-top:1px solid var(--border);color:var(--text-muted);text-align:center;background:var(--card-bg);padding:.625rem 1rem;font-size:.75rem}.app-nav{background:var(--card-bg);border-bottom:1px solid var(--border);justify-content:center;padding:.5rem 1.5rem;display:flex;overflow-x:auto}.desktop-nav{display:flex}.nav-content{background:var(--bg-secondary);border-radius:var(--radius-lg);gap:.25rem;padding:.25rem;display:flex}.nav-btn{border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);white-space:nowrap;background:0 0;border:none;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:all .15s;display:flex}.nav-btn:hover{color:var(--text-primary)}.nav-btn.active{background:var(--card-bg);color:var(--primary);box-shadow:var(--shadow-sm)}.nav-icon{font-size:1rem;line-height:1}.app-main{flex-direction:column;flex:1;gap:1.25rem;width:100%;max-width:960px;margin:0 auto;padding:1.5rem;display:flex}.loading-screen{min-height:100dvh;color:var(--text-secondary);background:var(--bg-gradient);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.loading-spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.btn{border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .15s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 1px 2px #6366f133}.btn-primary:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 2px 8px #6366f14d}.btn-success{background:var(--success);color:#fff;box-shadow:0 1px 2px #22c55e33}.btn-success:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 2px 8px #22c55e4d}.btn-danger{background:var(--error);color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(1.1)}.btn-ghost{background:var(--bg-tertiary);color:var(--text-secondary);border:1.5px solid var(--border)}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);border-color:var(--text-muted)}.btn-outline{color:var(--primary);border:1.5px solid var(--primary);background:0 0}.btn-outline:hover:not(:disabled){background:var(--primary-alpha)}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);padding:1.25rem;transition:box-shadow .2s}.card:hover{box-shadow:var(--card-shadow-hover)}.card-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.card-title{color:var(--text-primary);letter-spacing:-.01em;font-size:.9375rem;font-weight:600}@media (width<=420px){.card{border-radius:var(--radius-md);padding:.75rem}.card-header{margin-bottom:.5rem}.card-title{font-size:.8125rem}}.form-group{margin-bottom:1rem}.form-group label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.375rem;font-size:.75rem;font-weight:600;display:block}.form-group input,.form-group select{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--input-bg);width:100%;color:var(--text-primary);height:42px;padding:.625rem .875rem;font-size:.875rem;transition:all .15s}.form-group input:focus,.form-group select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-alpha);outline:none}.form-group input::placeholder{color:var(--text-muted)}.empty-state{text-align:center;color:var(--text-muted);padding:3rem 1.5rem}.empty-icon{opacity:.4;margin-bottom:1rem;font-size:3rem}.empty-hint{color:var(--text-tertiary);margin-top:.5rem;font-size:.8125rem}@media (width<=640px){.app-header{padding:.5rem .75rem}.username,.desktop-nav{display:none}.hamburger-btn{display:flex}.nav-label{display:inline}.nav-btn{padding:.5rem .75rem}.app-main{gap:1rem;padding:1rem}.form-group input,.form-group select,input[type=text],input[type=email],input[type=password],select,textarea{font-size:16px}.settings-menu-btn{width:44px;height:44px}.logo-text{font-size:1rem}.logo-icon{width:24px;height:24px}}.btn-small{border-radius:var(--radius-sm);cursor:pointer;border:none;padding:.25rem .625rem;font-size:.75rem;font-weight:500;transition:all .15s}.btn-small.btn-primary{background:var(--primary);color:#fff}.btn-small.btn-primary:hover{background:var(--primary-hover)}.btn-small.btn-ghost{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border)}.btn-small.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}@media (width<=380px){.app-main{gap:.75rem;padding:.5rem}.card{padding:.625rem}}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--border) transparent;margin:0;padding:0}:root{--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-full:9999px;--transition-fast:.15s ease;--transition-normal:.2s ease;--transition-slow:.3s ease;--accent:#6366f1;--accent-hover:#4f46e5;--accent-muted:#6366f11f;--accent-subtle:#6366f10f;--success-muted:#22c55e1f;--danger-muted:#ef44441f;--warning-muted:#f59e0b1f}[data-theme=dark]{--accent:#818cf8;--accent-hover:#a5b4fc;--accent-muted:#818cf82e;--accent-subtle:#818cf814}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-primary);color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.6}#root{min-height:100dvh}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;font-weight:600;line-height:1.3}button{cursor:pointer;transition:all var(--transition-fast);border:none;font-family:inherit;font-weight:500}button:active:not(:disabled){transform:scale(.98)}button:disabled{cursor:not-allowed;opacity:.6}input,select,textarea{border:1.5px solid var(--border);background:var(--input-bg);border-radius:var(--radius-md);color:var(--text-primary);transition:all var(--transition-fast);padding:.625rem .875rem;font-family:inherit;font-size:14px}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted);outline:none}input::placeholder,textarea::placeholder{color:var(--text-muted)}@supports not (-webkit-touch-callout:none){::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}}::selection{background:var(--accent-muted);color:var(--text-primary)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-slide-in{animation:.25s ease-out slideIn}.category-badge{border-radius:var(--radius-full,9999px);align-items:center;gap:.375rem;max-width:100%;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;display:inline-flex;overflow:hidden}.category-badge-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.category-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible){outline:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.description-input-wrapper{position:relative}.description-suggestions{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);z-index:100;box-shadow:var(--shadow-lg);max-height:280px;margin-top:.375rem;position:absolute;top:100%;left:0;right:0;overflow:hidden auto}.description-suggestions .suggestion-item{text-align:left;width:100%;color:var(--text-primary);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:.75rem;padding:.625rem .875rem;font-size:.8125rem;transition:background .1s;display:flex}.description-suggestions .suggestion-item:hover,.description-suggestions .suggestion-item.selected{background:var(--bg-tertiary)}.description-suggestions .suggestion-item:not(:last-child){border-bottom:1px solid var(--border)}.suggestion-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.suggestion-meta{color:var(--text-muted);flex-shrink:0;align-items:center;gap:.375rem;font-size:.6875rem;display:flex}.suggestion-meta .category-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.suggestion-category{text-overflow:ellipsis;white-space:nowrap;max-width:80px;overflow:hidden}.suggestion-count{opacity:.6;font-family:JetBrains Mono,monospace}
