.manage-narrow{max-width:720px}.hint.manage-intro{margin:-8px 0 16px}.hint.manage-footnote{margin-top:10px}.manage-confirm p{margin:0 0 10px}.manage-confirm p:last-child{margin-bottom:0}.manage-name-button{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:2px 0;font-weight:500;display:inline-flex}.manage-name-button:hover span:not(.project-dot):not(.tag-chip){text-decoration:underline}.manage-name-button .tag-chip{font-size:var(--text-sm)}.manage-actions{white-space:nowrap;text-align:right;width:1%}.manage-actions>*{vertical-align:middle}.manage-actions .button{min-height:32px;padding:2px 12px}.manage-notes{text-overflow:ellipsis;white-space:nowrap;max-width:320px;color:var(--muted);overflow:hidden}.inline-input{flex:1;width:min(320px,100%);min-width:0}.manage-inline-create{margin-top:8px}.manage-inline-create input{flex:1}.manage-menu-gap{width:16px;display:inline-block}.manage-status{border:2px solid var(--primary);border-radius:var(--radius-pill);background:var(--state-selected);color:var(--primary-text);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;align-items:center;gap:5px;padding:1px 9px 1px 7px;font-weight:800;display:inline-flex}.manage-status:before{content:"";border-radius:var(--radius-pill);background:currentColor;width:7px;height:7px}.manage-status.is-archived{border-style:dashed;border-color:var(--muted);border-radius:var(--radius-sm);color:var(--muted);background:0 0}.manage-status.is-archived:before{background:0 0;border-radius:0;box-shadow:inset 0 0 0 2px}.estimate{flex-direction:column;gap:3px;min-width:120px;display:flex}.estimate-track{border-radius:var(--radius-pill);background:var(--surface-2);height:8px;overflow:hidden}.estimate-fill{background:var(--primary);border-radius:inherit;height:100%}.estimate-fill.is-over{background:var(--danger)}.estimate-label{font-size:var(--text-xs);color:var(--muted);font-variant-numeric:tabular-nums;font-weight:600}.estimate-label.is-over{color:var(--danger)}.color-field,.color-options{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.color-swatch{border-radius:var(--radius-pill);cursor:pointer;width:36px;height:36px;color:var(--swatch-check);transition:transform var(--duration-fast) var(--ease);border:none;place-items:center;padding:0;display:inline-grid}.color-swatch:hover{transform:scale(1.08)}.color-swatch.selected{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--text)}.color-swatch:focus-visible{outline-offset:5px}.color-custom{border-radius:var(--radius-pill);border:2px solid var(--border);cursor:pointer;min-height:36px;color:var(--muted);font-size:var(--text-md);background:0 0;align-items:center;gap:4px;padding:0 14px 0 8px;font-weight:600;display:inline-flex}.color-custom.selected{border-color:var(--text);color:var(--text)}.color-custom-check{place-items:center;width:16px;height:16px;display:inline-grid}.color-custom-input{cursor:pointer;background:0 0;border:none;border-radius:50%;width:36px;height:36px;padding:0}.color-custom-input::-webkit-color-swatch-wrapper{padding:0}.color-custom-input::-webkit-color-swatch{border:1px solid var(--border);border-radius:50%}.color-custom-input::-moz-color-swatch{border:1px solid var(--border);border-radius:50%}.project-tasks{border-top:2px solid var(--border);flex-direction:column;gap:10px;min-width:0;margin-top:20px;padding-top:16px;display:flex}.project-tasks h3{font-size:var(--text-lg);font-weight:900}.project-tasks .inline-controls input,.manage-inline-create input{flex:1;min-width:0}.manage-inline-create{flex-wrap:wrap}.task-list{border:2px solid var(--border);border-radius:var(--radius-md);margin:0;padding:0;list-style:none}.task-row{flex-wrap:wrap;align-items:center;gap:4px 8px;min-height:44px;padding:4px 8px 4px 10px;display:flex}.task-row>*{min-width:0}.task-row .inline-input{flex:8rem;width:auto}.task-row+.task-row{border-top:1px solid var(--border)}.task-row.is-done .inline-input{color:var(--muted);text-decoration:line-through}.task-tracked{font-variant-numeric:tabular-nums;color:var(--muted);font-size:var(--text-md);white-space:nowrap;font-weight:600}.settings-page{max-width:820px}.settings-nav{gap:var(--space-2);margin:calc(-1 * var(--space-1)) 0 var(--space-5);font-size:var(--text-md);flex-wrap:wrap;display:flex}.settings-nav a{border:2px solid var(--border);border-radius:var(--radius-pill);align-items:center;min-height:32px;padding:2px 12px;font-weight:700;text-decoration:none;display:inline-flex}.settings-nav a:hover{background:var(--state-selected);border-color:var(--primary)}.settings-card{scroll-margin-top:16px}.card.settings-card{padding-top:0}.settings-card-head{margin:0 calc(-1 * var(--space-5)) var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:2px solid var(--border);border-radius:calc(var(--radius-lg) - 2px) calc(var(--radius-lg) - 2px) 0 0;background:linear-gradient(to right, var(--texture-glow), transparent 60%), repeating-linear-gradient(135deg, transparent 0 8px, var(--texture-stripe) 8px 11px) right / 30% 100% no-repeat, var(--surface)}.card .settings-card-head h2{font-size:var(--text-xl);text-transform:uppercase;letter-spacing:.02em;margin:0;font-weight:900}.hint.settings-intro{margin-bottom:14px}.settings-card>.form-grid,.settings-card>.length-stepper-grid{margin-top:8px}.hint.settings-hint{margin-top:12px}.settings-actions{justify-content:flex-end;margin-top:16px;display:flex}.settings-subheading{margin:16px 0 6px}.settings-card-head+.settings-subheading{margin-top:0}.page-header h1[tabindex]:focus-visible,.settings-card h2[tabindex]:focus-visible,.settings-subheading[tabindex]:focus-visible,.project-tasks h3[tabindex]:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.settings-row{flex-wrap:wrap;align-items:center;margin-top:10px}.settings-notice{border-radius:var(--radius-md);background:var(--state-selected);font-size:var(--text-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.token-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.token-value{font-size:var(--text-md);overflow-wrap:anywhere;flex:0 auto;min-width:0;padding:7px 10px}.code-block{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);margin:0 0 8px;padding:10px 12px;overflow-x:auto}.code-block code{font-size:var(--text-sm);background:0 0;border:none;padding:0}.file-button{position:relative;overflow:hidden}.file-button input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.file-button:focus-within{outline:2px solid var(--primary);outline-offset:1px}.file-name{font-size:var(--text-md);overflow-wrap:anywhere}.import-summary{border-radius:var(--radius-md);background:var(--surface-2);font-size:var(--text-md);margin-top:12px;padding:12px 14px}.import-summary p{overflow-wrap:anywhere;margin:8px 0 0}.import-stats{flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;list-style:none;display:flex}.import-stats li{font-variant-numeric:tabular-nums}.import-stats .is-error{color:var(--danger)}.import-errors{margin-top:8px}.import-errors summary{cursor:pointer;color:var(--danger)}.import-errors ul{max-height:200px;margin:6px 0 0;padding-left:18px;overflow:auto}.import-users{border:0;min-width:0;margin:12px 0 0;padding:0}.import-users legend{font-size:var(--text-md);margin-bottom:6px;padding:0}.import-users .checkbox-field{overflow-wrap:anywhere;padding:4px 0}.import-users .checkbox-field>input{flex:none}@media (width<=760px){.manage-actions .button{min-height:44px}}.admin-table td{white-space:nowrap}.admin-account-name{font-weight:600;display:block}.admin-account-email{color:var(--muted);font-size:var(--text-sm);display:block}.admin-status{align-items:center;gap:8px;display:flex}.admin-table .field-error{white-space:normal;max-width:260px;margin-top:4px}.admin-table .button{min-height:32px;padding:2px 12px}.admin-invite-form .settings-actions{margin-top:0}.admin-new-link{margin-top:12px}.admin-new-link-text{flex:260px;min-width:0}.admin-new-link-text p{margin:0 0 6px}.admin-new-link .token-value{display:block}@media (width<=760px){.admin-table .button,.admin-table select{min-height:44px}.admin-table .icon-button{min-width:44px;height:44px}}.reports .is-dimmed{opacity:.55;transition:opacity .15s}.reports .nowrap{white-space:nowrap}.reports .strong{font-weight:600}.reports-header{row-gap:10px}.range-control{align-items:center;gap:var(--space-1);min-width:0;display:inline-flex}.range-control .icon-button{border-radius:var(--radius-pill);width:40px;height:40px}.range-button{white-space:nowrap;gap:var(--space-2);border-radius:var(--radius-pill);min-width:0;min-height:40px;font-family:var(--font-display);border-width:2px;padding:6px 16px;font-weight:600;font-stretch:85%}.range-button strong{font-weight:800}.range-button>span{text-overflow:ellipsis;overflow:hidden}.range-button[aria-expanded=true]{border-color:var(--primary)}.range-presets{flex-direction:column;padding:4px;display:flex}.range-preset{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:7px 10px;display:flex}.range-preset:hover{background:var(--surface-2)}.range-preset.selected{font-weight:600}.range-check{width:16px;color:var(--primary);display:inline-flex}.range-custom{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:8px;padding:10px 12px 12px;display:grid}.range-custom-title{color:var(--muted);grid-column:1/-1;font-size:.82rem;font-weight:600}.range-custom .field{min-width:0}.range-custom input{width:100%;min-width:0}.range-custom .button{grid-column:1/-1;justify-content:center}.export-buttons{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.export-buttons .button{align-items:center;gap:6px;display:inline-flex}.report-filters{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.report-filters>*{min-width:0}.filter-chip,.filter-select{border:2px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);max-width:100%;min-height:40px;color:var(--text);cursor:pointer;font-size:var(--text-md);transition:background-color var(--duration-fast), border-color var(--duration-fast);align-items:center;gap:6px;padding:6px 14px;font-weight:600;display:inline-flex}.filter-chip:hover,.filter-select:hover{background:var(--surface-2)}.filter-chip.active,.filter-select.active,.filter-chip.active:hover,.filter-select.active:hover{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.filter-chip.active:focus-visible,.filter-select.active:focus-visible{outline-offset:2px}.filter-chip-value{text-overflow:ellipsis;white-space:nowrap;max-width:160px;color:var(--primary-text);font-weight:800;overflow:hidden}.filter-chip.active .filter-chip-value{color:inherit}.filter-select{padding-right:10px}.filter-select option{background:var(--surface);color:var(--text)}.report-filters .search-box{border-radius:var(--radius-pill);border-width:2px;min-height:40px}.report-filters .search-box input{width:160px;padding:4px 0}.filter-option-hint{margin-left:auto;font-size:.82rem}.filter-popover-footer{border-top:1px solid var(--border);justify-content:flex-end;padding:6px 12px 10px;display:flex}.report-tabs{align-items:center;gap:var(--space-1);border-bottom:2px solid var(--border);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.report-tab{cursor:pointer;color:var(--muted);font-family:var(--font-display);font-stretch:85%;font-size:var(--text-base);transition:border-color var(--duration-fast), color var(--duration-fast);background:0 0;border:none;border-bottom:5px solid #0000;margin-bottom:-2px;padding:10px 16px 8px;font-weight:600}.report-tab:hover{color:var(--text);border-bottom-color:var(--border)}.report-tab.active{color:var(--text);border-bottom-color:var(--primary);font-weight:800}.report-refreshing,.report-stale{margin-left:auto}.report-stale{color:var(--danger)}.report-error p{margin:0 0 12px}.report-totals{--tile-basis:220px;gap:var(--space-3);margin:0 0 var(--space-4);flex-wrap:wrap;display:flex}.report-totals>.card{flex:1 1 var(--tile-basis);border-radius:var(--radius-lg);border-width:2px;min-width:0}.report-totals>.report-totals-amount{flex-basis:auto}.report-totals>.card+.card{margin-top:0}.report-totals dt{font-size:var(--text-sm);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:700}.report-totals dd{margin:var(--space-1) 0 0;font-family:var(--font-display);font-stretch:85%;font-size:var(--text-2xl);overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:4px 12px;min-width:0;font-weight:800;line-height:1.1;display:flex}.report-totals-share{font-size:var(--text-md);font-weight:600}.report-amount{font-size:var(--text-3xl);color:var(--primary-text);white-space:nowrap;overflow-wrap:normal;font-weight:900}.report-chart-card{margin-bottom:16px}.series-chart{--chart-height:220px;--chart-margin-top:12px;--chart-margin-right:8px;--chart-margin-bottom:28px;--chart-margin-left:48px;--chart-max-bar:24px;--chart-gap:2px;--chart-radius:4px;transition:opacity .15s}.series-chart.is-dimmed{opacity:.55}.chart-defs{position:absolute}.chart-legend{gap:var(--space-4);font-size:var(--text-sm);color:var(--muted);margin-bottom:var(--space-2);display:flex}.chart-legend span{align-items:center;gap:6px;display:inline-flex}.chart-frame{width:100%;min-height:var(--chart-height);position:relative}.chart-frame svg{display:block;overflow:visible}.chart-frame svg:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}.mark-billable{fill:var(--chart-billable)}.chart-stripes-wash{fill:var(--chart-other-wash)}.chart-stripes-line{stroke:var(--chart-other);stroke-width:3px}.chart-grid{stroke:var(--surface-2);stroke-width:1px;shape-rendering:crispedges}.chart-baseline{stroke:var(--border);stroke-width:1px;shape-rendering:crispedges}.chart-tick{fill:var(--muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.chart-hit{fill:#0000}.chart-band{fill:var(--chart-band)}.chart-band-strip{fill:var(--primary)}.chart-tooltip{pointer-events:none;z-index:2;min-width:170px;padding:var(--space-2) var(--space-3);background:var(--chart-tooltip-bg);color:var(--chart-tooltip-text);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);font-size:var(--text-sm);flex-direction:column;gap:2px;display:flex;position:absolute}.chart-tooltip strong{font-size:var(--text-base);font-variant-numeric:tabular-nums}.chart-tooltip-label{color:var(--muted);margin-bottom:var(--space-1)}.chart-tooltip-row{color:var(--muted);align-items:center;gap:6px;display:flex}.chart-tooltip-row b{color:var(--chart-tooltip-text);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:600}.chart-tooltip .key{flex-shrink:0}.chart-data{margin-top:var(--space-3);font-size:var(--text-md)}.chart-data summary{cursor:pointer;color:var(--muted)}.chart-data summary:hover{color:var(--text)}.chart-data .table-wrap{margin-top:var(--space-2);max-height:320px;overflow:auto}:is(.breakdown-table,.detailed-table,.weekly-table) thead th{background:var(--report-head-bg);color:var(--report-head-text);border-bottom:none;font-weight:700}:is(.breakdown-table,.detailed-table,.weekly-table) thead .sort-button.active{color:inherit}:is(.breakdown-table,.detailed-table,.weekly-table) thead :focus-visible{outline-color:var(--report-head-text)}:is(.breakdown-table,.detailed-table,.weekly-table)>tbody>tr:nth-child(2n){background:var(--report-zebra)}.breakdown-toolbar{gap:12px}.inline-select{color:var(--muted);align-items:center;gap:6px;font-size:.9rem;display:inline-flex}.inline-select select{color:var(--text)}.breakdown-table td:first-child{width:50%}.group-title{align-items:center;gap:8px;min-width:0;display:inline-flex}.group-toggle{width:26px;min-width:26px;height:26px;padding:0}.group-toggle-space{flex-shrink:0;width:26px;display:inline-block}.subgroup-row td{background:var(--surface-2);font-size:.92rem}.subgroup-title{padding-left:34px}.share{align-items:center;gap:10px;width:100%;min-width:150px;display:inline-flex}.share-track{border-radius:var(--radius-pill);background:var(--surface-2);flex:1;min-width:60px;height:8px;overflow:hidden}.subgroup-row .share-track{background:var(--surface)}.share-fill{border-radius:var(--radius-pill);background:var(--primary);height:100%;display:block}.share-value{font-variant-numeric:tabular-nums;color:var(--muted);text-align:right;min-width:48px;font-size:.88rem}.report-detailed .hint,.report-weekly .hint,.report-breakdown .hint{margin-bottom:10px}.report-breakdown>.hint{margin-top:8px}.sort-button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;display:inline-flex}.sort-button.active{color:var(--text)}.sort-arrow{min-width:8px;font-size:.65rem}.entry-row{cursor:pointer}.entry-row:hover td,.entry-row:focus-visible td{background:var(--surface-2)}.entry-row:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.entry-row.is-loading{opacity:.6}.detailed-table td{font-size:.92rem}.detailed-description{min-width:180px;max-width:340px}.billable-mark{vertical-align:middle;color:var(--state-billable);margin-left:6px;display:inline-flex}.tag-list{flex-wrap:wrap;gap:4px;display:inline-flex}.detailed-table .project-label{max-width:220px}.detailed-table .detailed-client{white-space:nowrap;text-overflow:ellipsis;max-width:180px;overflow:hidden}.detailed-table .detailed-tags .tag-list{flex-wrap:nowrap}.detailed-table .detailed-tags .tag-chip{white-space:nowrap}.pager{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:14px 0;display:flex}.pager .button{align-items:center;gap:4px;display:inline-flex}.weekly-table th.num{vertical-align:bottom}.weekly-head{flex-direction:column;align-items:flex-end;line-height:1.2;display:inline-flex}.weekly-head span{font-size:.75rem;font-weight:400}.weekly-table .weekly-row-title{white-space:nowrap;color:var(--text);background:0 0;font-size:.95rem;font-weight:500}.weekly-table tbody th,.weekly-table tfoot th{text-align:left}.weekly-table tfoot td,.weekly-table tfoot th{border-top:2px solid var(--border);background:var(--surface-2)}.weekly-table td.num{min-width:72px}.weekly-table tfoot th,.weekly-table tfoot td{border-bottom:none}.report-weekly .toolbar .hint{margin:0}@media (width<=760px){.reports-header .spacer{display:none}.range-control{width:100%}.range-button{flex:1;justify-content:center}.report-filters .search-box{flex:160px}.report-filters .search-box input{width:100%}.report-totals dd{font-size:var(--text-xl)}.report-amount{font-size:var(--text-2xl)}.report-totals{--tile-basis:160px}.report-totals>.report-totals-entries{flex-basis:auto}.report-tab{padding:8px 12px 6px}.breakdown-table td:first-child{width:auto}.share{gap:6px;min-width:110px}.share-track{min-width:36px}}.filter-mode{align-self:flex-start;margin:0 8px 6px}.pomodoro-page{max-width:760px}.pomodoro-card{align-items:stretch;gap:var(--space-4);flex-direction:column;display:flex}.pomodoro-card>h2,.pomodoro-card p,.pomodoro-card h2{margin:0}.pomodoro-card>.button{align-self:flex-start}.pomodoro-entry-fields{border:none;min-width:0;margin:0;padding:0}.pomodoro-entry-fields legend{margin-bottom:var(--space-2);font-weight:700}.pomodoro-entry-fields .timer-controls{margin-top:var(--space-2);justify-content:flex-start}.pomodoro-entry-fields .timer-description input{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2)}.pomodoro-session-countdown{align-items:center;gap:var(--space-2);padding:var(--space-4) 0;flex-direction:column;display:flex}.pomodoro-clock{font-family:var(--font-display);font-size:var(--text-3xl);font-variant-numeric:tabular-nums;font-weight:800}.pomodoro-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.pomodoro-notifications{margin-top:var(--space-5)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:var(--lightningcss-light,#fffdf7)var(--lightningcss-dark,#08061f);--surface:var(--lightningcss-light,#fff)var(--lightningcss-dark,#14112e);--surface-2:var(--lightningcss-light,#f3f1ea)var(--lightningcss-dark,#221e40);--text:var(--lightningcss-light,#08061f)var(--lightningcss-dark,#fff);--muted:var(--lightningcss-light,#4d4a5c)var(--lightningcss-dark,#b9b5d6);--border:var(--lightningcss-light,#08061f)var(--lightningcss-dark,#8c86c0);--primary:var(--lightningcss-light,#f05a00)var(--lightningcss-dark,#ff6500);--on-primary:#08061f;--primary-text:var(--lightningcss-light,#b23c00)var(--lightningcss-dark,#ff8a3d);--selected:#ffe600;--on-selected:#08061f;--secondary:var(--lightningcss-light,#02a4a4)var(--lightningcss-dark,#00dfd5);--accent-pink:var(--lightningcss-light,#e6007e)var(--lightningcss-dark,#ff008c);--accent-lime:var(--lightningcss-light,#5ea556)var(--lightningcss-dark,#80e36b);--danger:var(--lightningcss-light,#c4283d)var(--lightningcss-dark,#ff5464);--on-danger:var(--lightningcss-light,#fff)var(--lightningcss-dark,#08061f);--danger-soft:var(--lightningcss-light,#f7e1e4)var(--lightningcss-dark,#431e39);--success:var(--lightningcss-light,#4a8049)var(--lightningcss-dark,#80e36b);--warning:var(--lightningcss-light,#ab640b)var(--lightningcss-dark,#ff9500);--shadow:3px 3px 0 var(--border);--backdrop:var(--lightningcss-light,#08061f73)var(--lightningcss-dark,#08061fb3);--project-mix:var(--lightningcss-light,#08061f)var(--lightningcss-dark,#fff);--swatch-check-light:#fff;--swatch-check-dark:#08061f;--state-running:var(--accent-pink);--state-selected:var(--lightningcss-light,#fff8b3)var(--lightningcss-dark,#37166d);--state-billable:var(--lightningcss-light,#0086d1)var(--lightningcss-dark,#00b9fa);--calendar-today:color-mix(in srgb, var(--state-selected) 35%, var(--surface));--chart-billable:var(--lightningcss-light,#0086d1)var(--lightningcss-dark,#00b9fa);--chart-other:var(--lightningcss-light,#f05a00)var(--lightningcss-dark,#ff9500);--chart-other-wash:var(--lightningcss-light,#fbceb3)var(--lightningcss-dark,#5b3920);--chart-band:var(--lightningcss-light,#f9f8f5)var(--lightningcss-dark,#1b1837);--chart-tooltip-bg:var(--surface);--report-zebra:var(--chart-band);--row-hover:var(--chart-band);--report-head-bg:var(--secondary);--report-head-text:var(--on-primary);--texture-glow:var(--lightningcss-light,#fde8db)var(--lightningcss-dark,#351d28);--texture-swell:var(--lightningcss-light,#e1f4f4)var(--lightningcss-dark,#122a42);--texture-stripe:var(--lightningcss-light,#c7ebeb)var(--lightningcss-dark,#103e53);--scene-glow:var(--lightningcss-light,#fbcfb2)var(--lightningcss-dark,#4d2116);--scene-swell:var(--lightningcss-light,#c2e8e3)var(--lightningcss-dark,#063a4b);--scene-stripe:var(--lightningcss-light,#fde6d4)var(--lightningcss-dark,#2b131b);--chart-tooltip-text:var(--text);--hue-orange:#f05a00;--hue-sky:#00b9fa;--hue-cyan:#00dfd5;--hue-violet:#8722ff;--hue-yellow:#ffe600;--hue-pink:#ff008c;--on-hue:#08061f;--on-hue-violet:#fff;--sticker-outline:var(--lightningcss-light,#08061f)var(--lightningcss-dark,#0000);--spectrum-strip:linear-gradient(to right, #ffe900, #ff9500, #ff008c, #00dfd5, #00b9fa, #8722ff, #eb00d5);--font-body:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:"Anybody", var(--font-body);--font-mono:ui-monospace, SFMono-Regular, Menlo, monospace;--text-xs:.72rem;--text-sm:.82rem;--text-md:.9rem;--text-base:1rem;--text-lg:1.15rem;--text-xl:1.5rem;--text-2xl:1.9rem;--text-3xl:2.4rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:48px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:999px;--duration-fast:.12s;--duration-base:.2s;--ease:cubic-bezier(.2, .7, .2, 1);--sidebar:210px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@font-face{font-family:Anybody;src:url(/fonts/anybody-wdth-wght.woff2)format("woff2");font-weight:100 900;font-stretch:50% 150%;font-style:normal;font-display:swap}:root{font-family:var(--font-body);font-variant-numeric:tabular-nums;color:var(--text);background:var(--bg);font-size:93.75%;line-height:1.45}*{box-sizing:border-box}body{min-height:100vh;margin:0}button,input,select,textarea{font:inherit;color:inherit}input,select,textarea{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);min-width:0;padding:7px 10px}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--primary);outline-offset:1px}input[type=checkbox]{accent-color:var(--primary);width:16px;height:16px;padding:0}a{color:var(--primary-text)}h1,h2,h3,.timer-clock,.timer-summary strong,.day-total,.manual-duration,.empty-state-title,.calendar-range,.calendar-day-head,.calendar-block-duration{font-family:var(--font-display);font-stretch:85%}h1,h2,h3{font-weight:800}h1{font-size:var(--text-xl);margin:0 0 16px}h2{font-size:var(--text-lg);margin:0}h3{font-size:var(--text-base);margin:0}code,kbd{font-family:var(--font-mono);font-size:var(--text-sm);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1px 5px}.muted{color:var(--muted)}.hint{color:var(--muted);font-size:var(--text-sm);margin:0}.spacer{flex:1}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.empty-state{align-items:center;gap:var(--space-2);color:var(--muted);text-align:center;padding:var(--space-8) var(--space-4);flex-direction:column;display:flex}.empty-state p{margin:0}.empty-state-art{align-items:center;gap:var(--space-1);color:var(--secondary);flex-direction:column;display:flex}.empty-state-swell{color:var(--primary)}.empty-state-title{color:var(--text);font-size:var(--text-lg);font-weight:800}.empty-state-body{max-width:46ch}.empty-state-actions{justify-content:center;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.empty-state.is-compact{align-items:flex-start;gap:var(--space-1);padding:var(--space-2) 0;text-align:left}.empty-state.is-compact .empty-state-title{color:var(--muted);font:inherit}.picker-list .empty-state.is-compact{font-size:var(--text-md);padding:8px 10px}.page-state{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-4);text-align:center;color:var(--muted);flex-direction:column;display:flex}.page-state p{margin:0}.page-loading{gap:var(--space-2);flex-direction:row}.page-error p{color:var(--danger)}.page-error-message{text-align:left;align-items:flex-start;gap:6px;display:inline-flex}.error-icon{color:var(--danger);flex:none;margin-top:1px}.page-error-title{color:var(--text);margin:0}.page-error .button{color:var(--text)}.page-state.is-compact{padding:var(--space-2) 0;text-align:left;justify-content:flex-start;align-items:flex-start}.page-loading.is-compact{align-items:center}.page-state-spinner{border-radius:var(--radius-pill);border:3px solid var(--border);border-top-color:var(--primary);flex:none;width:16px;height:16px;animation:.8s linear infinite page-state-spin}@keyframes page-state-spin{to{transform:rotate(360deg)}}.surface,.timer-bar,.suggestions,.favorite,.day-group,.bulk-bar,.popover,.modal,.auth-card,.calendar-head,.calendar-strip,.calendar-body,.card,.table-wrap,.search-box,.select-button,.splash .page-state,.error-page .page-state{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md)}.surface,.timer-bar,.suggestions,.day-group,.bulk-bar,.popover,.modal,.auth-card,.calendar-head,.calendar-strip,.calendar-body,.card,.table-wrap,.splash .page-state,.error-page .page-state{box-shadow:var(--shadow);border-width:2px}.row-button,.nav-link,.suggestion,.picker-item,.menu button{text-align:left;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;width:100%;display:flex}.row-button:hover,.nav-link:hover,.suggestion:hover,.picker-item:hover,.picker-item.highlighted,.menu button:hover{background:var(--surface-2)}.entry-line.selected,.picker-item.selected,.suggestion.highlighted{background:var(--state-selected);box-shadow:inset 3px 0 0 var(--primary)}.picker-item.highlighted{outline:2px solid var(--primary);outline-offset:-2px}.segmented button.active{background:var(--selected);color:var(--on-selected);box-shadow:inset 0 0 0 2px var(--primary);font-weight:800}.timer-clock,.manual-duration,.day-total,.entry-duration{font-variant-numeric:tabular-nums;font-weight:600}.inline-input,.timer-clock-input,.entry-description,.entry-duration{background:0 0;border:1px solid #0000}.inline-input:is(:hover,:focus),.timer-clock-input:is(:hover,:focus),.entry-description:is(:hover,:focus),input.entry-duration:is(:hover,:focus){border-color:var(--border)}.button{border-radius:var(--radius-pill);cursor:pointer;background:var(--surface-2);white-space:nowrap;min-height:38px;transition:transform var(--duration-fast) var(--ease), background-color var(--duration-fast) var(--ease);border:2px solid #0000;align-items:center;gap:6px;padding:5px 16px;font-weight:600;display:inline-flex}.button:hover:not(:disabled){border-color:var(--border)}.button:active:not(:disabled){transform:scale(.97)}.button:disabled{opacity:.6;cursor:default}.button-primary{background:var(--primary);color:var(--on-primary);font-weight:800}.button-danger{background:var(--danger);color:var(--on-danger);font-weight:800}.button-primary:hover:not(:disabled),.button-danger:hover:not(:disabled){box-shadow:var(--shadow);border-color:#0000;transform:translateY(-1px)}.button-ghost{border-color:var(--border);background:0 0}.button-ghost:hover:not(:disabled){background:var(--surface-2)}.button-danger-ghost{color:var(--danger);border-color:var(--border);background:0 0}.button-danger-ghost:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger)}.button-block{justify-content:center;width:100%}.icon-button{border-radius:var(--radius-md);min-width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:4px;padding:0 6px;display:inline-flex}.icon-button:hover{background:var(--surface-2);color:var(--text)}.icon-button.active{color:var(--primary)}.icon-button.billable{color:var(--state-billable)}.billable-toggle{border-radius:var(--radius-pill);border:1px solid;width:32px;min-width:32px;padding:0}.billable-toggle.billable,.billable-toggle.billable:hover{background:var(--state-billable);border-color:var(--state-billable);color:var(--surface)}.link-button{color:var(--primary-text);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:inline-flex}.badge{font-size:var(--text-xs);background:var(--primary);color:var(--on-primary);border-radius:var(--radius-pill);padding:0 5px}.shell{min-height:100vh;display:flex}[data-section=timer]{--section-hue:var(--hue-orange);--on-section-hue:var(--on-hue)}[data-section=pomodoro]{--section-hue:var(--hue-cyan);--on-section-hue:var(--on-hue)}[data-section=reports]{--section-hue:var(--hue-sky);--on-section-hue:var(--on-hue)}[data-section=projects]{--section-hue:var(--hue-violet);--on-section-hue:var(--on-hue-violet)}[data-section=settings]{--section-hue:var(--hue-yellow);--on-section-hue:var(--on-hue)}[data-section=more]{--section-hue:var(--hue-pink);--on-section-hue:var(--on-hue)}.sidebar{height:100vh;width:var(--sidebar);border-right:1px solid var(--border);background:linear-gradient(to bottom, var(--texture-glow), transparent 40%), repeating-linear-gradient(135deg, transparent 0 10px, var(--texture-stripe) 10px 13px) bottom / 100% 30% no-repeat, linear-gradient(to top, var(--texture-swell) 60%, transparent) bottom / 100% 30% no-repeat, var(--surface);flex-direction:column;flex-shrink:0;gap:2px;padding:16px 10px;display:flex;position:sticky;top:0}.brand{line-height:1;display:inline-flex}.sidebar .brand{justify-content:center;padding:6px 10px 20px}.nav-link{border-radius:var(--radius-md);color:var(--muted);gap:10px;padding:9px 10px;text-decoration:none}.nav-link:hover:not(.active){color:var(--text)}.nav-link.active,.nav-link.active:hover{background:var(--section-hue);color:var(--on-section-hue);box-shadow:inset 0 0 0 2px var(--border);font-weight:800}.nav-link.active .nav-icon{stroke-width:2.6px}.running-dot{border-radius:var(--radius-pill);background:var(--state-running);width:8px;height:8px;margin-left:auto;animation:1.6s infinite pulse}.nav-link.active .running-dot{background:currentColor}@keyframes pulse{50%{opacity:.35}}.signed-in{min-width:0;font-size:var(--text-sm);flex-direction:column;gap:2px;padding:8px 10px 4px;line-height:1.3;display:flex}.signed-in-name,.signed-in-email{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.signed-in-name{font-weight:700}.signed-in-email{color:var(--muted)}.app-version{color:var(--muted);font-size:var(--text-sm);padding:8px 10px 0}.content{flex:1;min-width:0;padding:24px clamp(12px,3vw,40px) 80px}.page{max-width:1100px;margin:0 auto}.page-header{margin-bottom:var(--space-5);flex-wrap:wrap;align-items:center;gap:12px;display:flex}.page-header h1{font-size:var(--text-3xl);text-transform:uppercase;letter-spacing:.02em;margin:0;font-weight:900;line-height:1}.page-header h1:after{content:"";height:6px;margin-top:var(--space-2);border-radius:var(--radius-pill);background:var(--spectrum-strip);display:block}.phone-header{border-bottom:1px solid var(--border);background:var(--spectrum-strip) bottom / 100% 4px no-repeat, linear-gradient(to right, var(--texture-glow), transparent 70%), var(--surface);justify-content:center;align-items:center;min-height:44px;padding:6px 12px 10px;display:flex}.more-backdrop,.more-sheet{display:none}@media (width<=760px){.shell{flex-direction:column}.sidebar{z-index:20;width:100%;height:auto;padding:4px 4px calc(4px + env(safe-area-inset-bottom));border-right:none;border-top:1px solid var(--border);background:var(--surface);flex-direction:row;gap:4px;position:fixed;inset:auto 0 0}.sidebar>.nav-link{text-align:center;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:2px;min-width:44px;min-height:52px;padding:4px 2px;font-size:.75rem;position:relative}.sidebar>.nav-link .running-dot{margin:0;position:absolute;top:6px;left:calc(50% + 9px)}.more-backdrop{z-index:1;background:var(--backdrop);animation:fade-in var(--duration-base) var(--ease);display:block;position:fixed;inset:0}.more-sheet{z-index:2;padding:8px 12px calc(12px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow);animation:sheet-up var(--duration-base) var(--ease);flex-direction:column;gap:2px;display:flex;position:fixed;bottom:0;left:0;right:0}.more-sheet-head{justify-content:space-between;align-items:center;padding:4px 0 8px 10px;display:flex}.more-sheet-head .icon-button{width:44px;height:44px}.more-sheet .nav-link{min-height:48px;font-size:var(--text-base);padding:0 12px}.more-sheet .signed-in{padding:8px 12px 4px}.content{padding:12px 10px 90px}.page-header h1{font-size:var(--text-2xl)}.button,.menu button{min-height:44px}.modal-close{min-width:44px;height:44px}}@keyframes fade-in{0%{opacity:0}}@keyframes sheet-up{0%{transform:translateY(100%)}}.timer-bar{z-index:10;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border-radius:var(--radius-lg);box-shadow:var(--shadow);border-width:2px;flex-wrap:wrap;display:flex;position:sticky;top:0}.timer-bar.is-running{border-color:var(--state-running)}.timer-running{color:var(--state-running);font-size:var(--text-sm);align-items:center;gap:6px;font-weight:600;display:inline-flex}.timer-running-dot{border-radius:var(--radius-pill);background:currentColor;width:8px;height:8px;animation:1.6s infinite pulse}.timer-paused{color:var(--muted);font-size:var(--text-sm);font-weight:600}.timer-description{flex:280px;min-width:0;position:relative}.timer-description input{width:100%;font-size:var(--text-lg);padding:var(--space-2) var(--space-1);background:0 0;border:none;font-weight:600}.timer-controls{align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;min-width:0;display:flex}.timer-attr{min-width:40px;height:40px;padding:0 var(--space-3);border:2px solid var(--border);border-radius:var(--radius-pill);gap:6px;font-weight:600}.timer-attr.active:not(.billable){color:var(--text);border-color:var(--primary)}.timer-project.active{border-color:color-mix(in srgb, var(--project-color,var(--muted)) 60%, var(--project-mix))}.timer-project .project-label{max-width:180px}.timer-project .project-dot{width:14px;height:14px}.timer-attr.billable-toggle{width:40px;padding:0}.timer-attr.billable-toggle:not(.billable){border-color:currentColor}.timer-clock,.manual-duration{font-size:var(--text-3xl);font-weight:800;line-height:1.1}.timer-clock{text-align:right;cursor:pointer;min-width:4.4em;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);background:0 0;border:none}.timer-clock:hover{background:var(--surface-2)}.timer-clock.is-paused{cursor:default}.timer-clock.is-paused:hover{background:0 0}.timer-clock-input{width:4.8em}.timer-clock-input::placeholder{color:var(--muted);opacity:1}.pomodoro-banner,.timer-reminder{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--state-selected);flex-basis:100%;font-weight:600;display:flex}.content>.pomodoro-banner{margin-bottom:var(--space-3)}.pomodoro-session-banner{flex-wrap:wrap}.timer-reminder{margin-bottom:var(--space-3);flex-wrap:wrap}.timer-button{justify-content:center;align-items:center;gap:var(--space-2);min-width:56px;height:56px;padding:0 var(--space-5) 0 var(--space-4);border-radius:var(--radius-pill);cursor:pointer;font-family:var(--font-display);font-stretch:85%;font-size:var(--text-lg);text-transform:uppercase;letter-spacing:.04em;box-shadow:var(--shadow);transition:transform var(--duration-fast) var(--ease);border:none;font-weight:900;display:inline-flex}.timer-button:hover{transform:translateY(-1px)}.timer-button:active{transform:scale(.97)}.timer-button.start,.timer-button.add{background:var(--primary);color:var(--on-primary)}.timer-button.stop{background:var(--danger);color:var(--on-danger)}.timer-button.pause{background:var(--surface-2);color:var(--text);box-shadow:inset 0 0 0 2px var(--border), var(--shadow)}.mode-switch{align-items:center;display:inline-flex}.mode-switch[role=group]{border:2px solid var(--border);border-radius:var(--radius-pill);gap:2px;padding:2px}.mode-switch .icon-button{border-radius:var(--radius-pill);min-width:32px;height:32px}.mode-switch .icon-button.active{background:var(--selected);color:var(--on-selected);box-shadow:inset 0 0 0 2px var(--primary)}.manual-fields{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.manual-fields input[type=date]{width:140px}.time-field{text-align:center;width:76px}.manual-duration-field{width:96px}.manual-duration{text-align:right;min-width:4em}.manual-switch{font-size:var(--text-md);color:var(--muted);cursor:pointer;align-items:center;gap:6px;display:inline-flex}.suggestions{z-index:30;box-shadow:var(--shadow);margin:4px 0 0;padding:4px;list-style:none;position:absolute;top:100%;left:0;right:0}.suggestion{justify-content:space-between;gap:12px;padding:8px 10px}.suggestion-project{font-size:var(--text-md);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.timer-summary{gap:var(--space-3) var(--space-6);padding:var(--space-4) var(--space-1);color:var(--muted);flex-wrap:wrap;align-items:center;display:flex}.timer-summary>span{align-items:baseline;gap:var(--space-2);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.06em;font-weight:700;display:inline-flex}.timer-summary strong{color:var(--text);font-size:var(--text-2xl);letter-spacing:0;font-weight:800;line-height:1}.favorites{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.favorite{border-radius:var(--radius-pill);border-width:2px;align-items:center;min-width:0;max-width:100%;padding-right:2px;display:inline-flex}.favorite:hover{border-color:var(--primary)}.favorite-start{align-items:center;gap:var(--space-2);cursor:pointer;background:0 0;border:none;min-width:0;min-height:36px;padding:4px;font-weight:700;display:inline-flex}.favorite-name,.favorite-project{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.favorite-project{color:var(--muted);font-weight:500}.favorite-project:before{content:"• "}.favorite-start kbd{border-radius:var(--radius-pill);background:var(--primary);min-width:26px;height:26px;color:var(--on-primary);font-family:var(--font-display);font-size:var(--text-sm);border:none;flex:none;place-items:center;padding:0 6px;font-weight:900;display:inline-grid}.favorite .project-dot{width:12px;height:12px}.project-dot{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--project-color,var(--muted)) 60%, var(--project-mix));flex-shrink:0;width:9px;height:9px;display:inline-block}.share-fill.project-fill{background:color-mix(in srgb, var(--project-color,var(--muted)) 60%, var(--project-mix))}.project-label{min-width:0;color:var(--text);align-items:center;gap:6px;font-weight:500;display:inline-flex}.project-label-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-label-client{color:var(--muted);white-space:nowrap;font-weight:400}.project-label-client:before{content:"• "}.tag-chip{font-size:var(--text-sm);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--muted);padding:1px 8px;display:inline-block}.entry-list{gap:var(--space-5);flex-direction:column;display:flex}.day-group{border-radius:var(--radius-lg);border-width:2px;overflow:visible}.day-header{align-items:center;gap:var(--space-3);margin:var(--space-2);padding:var(--space-2) var(--space-4) var(--space-2) var(--space-3);background:var(--section-hue);color:var(--on-section-hue);border-radius:var(--radius-pill);box-shadow:inset 0 0 0 2px var(--sticker-outline);display:flex}.day-header h3{min-width:0;font-size:var(--text-lg);text-transform:uppercase;letter-spacing:.03em;flex:1;font-weight:900}.day-total{font-size:var(--text-xl);font-weight:800;line-height:1}.day-select{display:inline-flex}.day-select input{accent-color:var(--on-section-hue);box-shadow:0 0 0 2px var(--on-section-hue)}.entries{margin:0;padding:0;list-style:none}.entries.nested{background:var(--surface-2)}.entries.nested .entry-line{padding-left:40px}.entry-row-wrap+.entry-row-wrap,.entry-row-wrap.grouped>.entries.nested{border-top:1px solid var(--border)}.day-group>.entries>li:last-child>:last-child{border-radius:0 0 calc(var(--radius-lg) - 2px) calc(var(--radius-lg) - 2px)}.entry-line{align-items:center;gap:var(--space-2);min-height:52px;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-4);grid-template-columns:auto auto minmax(120px,1fr) minmax(0,auto) auto auto auto auto auto auto;display:grid}.entry-line:not(:has(.count-badge)){grid-template-columns:auto minmax(120px,1fr) minmax(0,auto) auto auto auto auto auto auto}.entry-line>*{min-width:0}.entry-description{padding:6px;font-weight:500}.entry-project,.entry-tags,.entry-times{cursor:pointer;color:inherit;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:4px;min-width:0;max-width:260px;padding:4px 6px;display:inline-flex}.entry-project.has-project{max-width:min(260px,100%);padding:2px var(--space-3) 2px var(--space-2);border-radius:var(--radius-pill);border:2px solid color-mix(in srgb, var(--project-color,var(--muted)) 60%, var(--project-mix));justify-self:start}.entry-project:hover,.entry-tags:hover,.entry-times:hover:not(:disabled){background:var(--surface-2)}.entry-times:disabled{cursor:default}.add-project{color:var(--muted);opacity:0;align-items:center;gap:4px;display:inline-flex}.entry-line:hover .add-project,.entry-project:focus-visible .add-project{opacity:1}.entry-tags{color:var(--muted);flex-wrap:wrap}.entry-tags .tag-chip{border:1px solid var(--border);color:var(--text);padding:0 var(--space-2);font-weight:600}.entry-times{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:var(--text-md)}.entry-duration{text-align:right;width:84px;font-size:var(--text-base);padding:4px 6px;font-weight:700}.entry-continue{opacity:0}.entry-line:hover .entry-continue,.entry-continue:focus-visible{opacity:1}.count-badge{min-width:30px;height:28px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:2px solid var(--primary);background:var(--surface);color:var(--primary-text);cursor:pointer;font-family:var(--font-display);font-stretch:85%;font-size:var(--text-base);font-weight:900}.count-badge[aria-expanded=true]{background:var(--primary);color:var(--on-primary)}.load-more{justify-content:center;padding:18px;display:flex}.bulk-bar{top:var(--timer-bar-height,0px);z-index:9;align-items:center;gap:var(--space-2);border-width:2px;border-color:var(--primary);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);box-shadow:var(--shadow);flex-wrap:wrap;display:flex;position:sticky}.bulk-bar>strong{font-family:var(--font-display);font-stretch:85%;font-size:var(--text-lg);margin-right:var(--space-2);font-weight:900}@media (width<=760px){.timer-bar{padding:var(--space-2) var(--space-2) var(--space-2) var(--space-3)}.timer-button{width:56px;padding:0}.timer-button-label{display:none}:is(.entry-line,.entry-line:not(:has(.count-badge))){grid-template-columns:auto 1fr auto auto;grid-template-areas:none}.entry-line .entry-select{display:none}.page:has(.bulk-bar){--timer-bar-height:0px}.page:has(.bulk-bar) .timer-bar{position:relative}.entry-line .entry-description{grid-column:1/-2}.entry-line .entry-project{grid-column:1/3}.entry-times{display:none}.entry-continue,.add-project{opacity:1}}.popover{z-index:1000;border-radius:var(--radius-lg);box-shadow:var(--shadow);border-width:2px;flex-direction:column;display:flex;position:fixed;overflow:auto}.picker-search{border-radius:var(--radius-pill);margin:8px}.picker-list{max-height:340px;padding:0 6px 6px;overflow:auto}.picker-list:empty{display:none}.picker-actions{padding:0 6px 6px}.picker-item{border-radius:var(--radius-md);padding:7px 10px}.picker-subitem{color:var(--muted);font-size:var(--text-md);padding-left:28px}.picker-group{font-family:var(--font-display);font-stretch:85%;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text);padding:10px 10px 2px;font-weight:900}.picker-create{color:var(--primary-text);font-weight:700}.picker-empty{color:var(--muted);font-size:var(--text-md);padding:8px 10px}.picker-check input{margin:0}.menu{flex-direction:column;padding:6px;display:flex}.menu button{border-radius:var(--radius-md);padding:8px 12px;font-weight:600}.menu .danger{color:var(--danger)}.modal-backdrop{background:var(--backdrop);z-index:900;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{border-radius:var(--radius-lg);width:min(560px,100%);min-width:0;max-height:calc(100vh - 32px);box-shadow:var(--shadow);border-width:2px;flex-direction:column;display:flex}.modal-wide{width:min(820px,100%)}.modal-header{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--surface-2);border-bottom:2px solid var(--border);border-radius:calc(var(--radius-lg) - 2px) calc(var(--radius-lg) - 2px) 0 0;padding:10px 10px 10px 18px;display:flex}.modal-header h2{overflow-wrap:anywhere;min-width:0;font-size:var(--text-xl);font-weight:900;line-height:1.15}.modal-close{font-size:var(--text-xl);border-radius:var(--radius-pill);flex:none}.modal-close:hover{background:var(--surface)}.modal-body{padding:18px;overflow:auto}.modal-footer{border-top:2px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 18px;display:flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.form-grid>*,.field>*{min-width:0}.field{flex-direction:column;gap:4px;min-width:0;display:flex}.field>span:first-child,.field>label:first-child:not(.field){font-size:var(--text-sm);color:var(--muted);font-weight:700}.field-full{grid-column:1/-1}.checkbox-field{flex-direction:row;align-self:end;align-items:center;gap:8px;padding-bottom:8px}.checkbox-field>span:first-child{font-size:inherit;color:inherit}.select-button{text-align:left;cursor:pointer;align-items:center;gap:6px;min-height:37px;padding:7px 10px;display:flex}.select-button:hover{background:var(--surface-2)}.search-box{border-radius:var(--radius-pill);min-height:40px;color:var(--muted);border-width:2px;align-items:center;gap:6px;padding:0 14px;display:inline-flex}.search-box:focus-within{border-color:var(--primary);outline:2px solid var(--primary);outline-offset:1px}.search-box input{width:200px;color:var(--text);background:0 0;border:none;padding:7px 0}.search-box input:focus-visible{outline:none}@media (width<=560px){.search-box{flex:160px}.search-box input{width:100%}}.inline-controls{gap:8px;display:flex}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--danger)}.field-error{color:var(--danger);font-size:var(--text-sm);margin:0}.manual-fields .field-error{flex-basis:100%}.timer-controls .field-error{text-align:right;flex-basis:100%}.toolbar:has(>form .field-error){align-items:flex-start}@media (width<=560px){.form-grid{grid-template-columns:1fr}}.length-stepper-grid{container-type:inline-size}.length-stepper-cards{gap:var(--space-3);grid-template-columns:repeat(auto-fit, minmax(max(136px, calc((100% - var(--space-3)) / 2)), 1fr));display:grid}@container (width>=580px){.length-stepper-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}.length-stepper{align-items:center;gap:var(--space-1);min-width:0;padding:var(--space-3);border:2px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;display:flex;position:relative}.length-stepper-label{font-size:var(--text-sm);color:var(--muted);text-align:center}.length-stepper-value{text-align:center;width:100%;color:var(--text);font-family:var(--font-display);font-variant-numeric:tabular-nums;background:0 0;border:1px solid #0000;padding:0;font-size:2.75rem;font-weight:900;line-height:1.1}.length-stepper-value:is(:hover,:focus){border-color:var(--border)}.length-stepper-value[aria-invalid=true]{border-color:#0000}.length-stepper-value[aria-invalid=true]:is(:hover,:focus){border-color:var(--danger)}.length-stepper-unit{font-size:var(--text-sm);color:var(--muted);text-align:center;margin:0}.length-stepper-steps{gap:var(--space-2);padding-top:var(--space-2);margin-top:auto;display:flex}.length-stepper-step{border:2px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:48px;height:44px;color:var(--text);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.length-stepper-step:hover:not([aria-disabled=true]){background:var(--surface-2)}.length-stepper-step[aria-disabled=true]{opacity:.6;cursor:default}.length-stepper .field-error{text-align:center}.length-stepper[data-invalid]{border-color:var(--danger)}.length-stepper[data-invalid] :is(.length-stepper-value,.length-stepper-unit){color:var(--danger)}.length-stepper[data-invalid] .length-stepper-unit{font-weight:700}.card{padding:var(--space-5);border-radius:var(--radius-lg);border-width:2px}.card+.card{margin-top:var(--space-4)}.card h2{margin-bottom:12px}.table-wrap{border-radius:var(--radius-lg);border-width:2px;position:relative;overflow-x:auto}table.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 14px}.table th{font-size:var(--text-sm);background:var(--surface-2);white-space:nowrap;font-weight:600}.table tbody th,.table tfoot th{color:var(--muted)}.table thead{color:var(--text)}.table thead th{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;border-bottom-width:2px;font-weight:800;font-stretch:85%}.table tbody tr{transition:background-color var(--duration-fast) var(--ease)}.table tbody tr:hover{background:var(--row-hover)}.table tr:last-child td{border-bottom:none}.table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.table tr.archived td{color:var(--muted)}.toolbar{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.toolbar select,.toolbar input:not([type=search],[type=checkbox]){border-radius:var(--radius-pill);border-width:2px;min-height:40px;padding:6px 14px}.segmented{border:2px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);gap:2px;padding:2px;display:inline-flex}.segmented button{border-radius:var(--radius-pill);cursor:pointer;min-height:32px;color:var(--muted);background:0 0;border:none;padding:4px 14px;font-weight:600}.segmented button:hover:not(.active){background:var(--surface-2);color:var(--text)}@media (width<=760px){.segmented button{min-height:36px}.search-box,.toolbar select,.toolbar input:not([type=search],[type=checkbox]){min-height:44px}}.toasts{z-index:2000;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:16px;right:16px}.toast{border-radius:var(--radius-md);background:var(--text);color:var(--bg);box-shadow:var(--shadow);align-items:center;gap:12px;max-width:420px;padding:10px 10px 10px 14px;display:flex}.toast .link-button{color:var(--state-selected);font-weight:600}.toast .icon-button{color:inherit;opacity:.7}.toast-error{background:var(--danger);color:var(--on-danger)}.toast-icon{flex-shrink:0}@media (width<=760px){.toasts{bottom:76px;left:10px;right:10px}}.auth-page,.splash{align-content:center;place-items:center;gap:var(--space-6);min-height:100vh;padding:var(--space-6) var(--space-4);background:radial-gradient(ellipse 70% 45% at 0% 0%, var(--scene-glow), transparent), radial-gradient(ellipse 70% 45% at 100% 100%, var(--scene-swell), transparent), repeating-linear-gradient(-45deg, transparent 0 22px, var(--scene-stripe) 22px 26px), var(--bg);display:grid}.auth-card{border-radius:var(--radius-lg);width:min(400px,100%);min-width:0;box-shadow:var(--shadow);flex-direction:column;gap:14px;padding:28px;display:flex}.auth-card h1{font-size:var(--text-2xl);margin:0}.auth-card p{margin:0}.auth-error{align-items:flex-start;gap:6px;display:flex}.auth-links{gap:var(--space-2);text-align:center;width:min(400px,100%);min-width:0;display:grid}.splash .page-state,.error-page .page-state{border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--space-6)}.splash .page-state{min-width:0;max-width:100%}.error-page .page-state{max-width:560px;margin:var(--space-8) auto 0}.shortcut-list{gap:8px;margin:0;display:grid}.shortcut-list div{grid-template-columns:110px 1fr;align-items:center;display:grid}.shortcut-list dd{margin:0}.view-switch{margin-left:auto}.calendar{gap:var(--space-2);flex-direction:column;display:flex}.calendar-toolbar{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.calendar-toolbar .icon-button{border:2px solid var(--border);border-radius:var(--radius-pill);width:40px;height:40px;color:var(--text)}.calendar-toolbar .button{border-radius:var(--radius-pill);border-width:2px;min-height:40px;padding:6px 16px;font-weight:700}.calendar-range{font-size:var(--text-lg);margin-left:var(--space-1);font-weight:800}.calendar-head,.calendar-grid{grid-template-columns:56px repeat(7,minmax(90px,1fr));display:grid}.calendar-head{border-radius:var(--radius-md) var(--radius-md) 0 0;border-bottom:none}.calendar-day-head{border-radius:var(--radius-md);background:var(--section-hue);min-width:0;color:var(--on-section-hue);box-shadow:inset 0 0 0 2px var(--sticker-outline);flex-direction:column;align-items:flex-start;gap:2px;margin:4px 2px;padding:4px 8px;display:flex}.calendar-day-head span,.calendar-day-head small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.calendar-day-head span{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.03em;font-weight:800}.calendar-day-head small{font-weight:700}.calendar-day-head.today span{border-radius:var(--radius-pill);background:var(--on-section-hue);color:var(--section-hue);padding:0 6px}.calendar-body{border-radius:0 0 var(--radius-md) var(--radius-md);height:min(70vh,720px);overflow:auto}.calendar-frame{position:relative}.calendar-state{z-index:5;background:var(--surface);border:2px solid var(--border);border-radius:0 0 var(--radius-md) var(--radius-md);position:absolute;inset:0}.calendar-grid,.calendar-gutter{position:relative}.calendar-gutter span{font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--muted);font-weight:600;position:absolute;right:6px;transform:translateY(-50%)}.calendar-gutter span:first-child{transform:none}.calendar-column{border-left:1px solid var(--border);touch-action:pan-y;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background-image:linear-gradient(var(--border) 1px, transparent 1px);background-size:100% 48px;position:relative}.calendar-column.today{background-color:var(--calendar-today)}.calendar-now{background:var(--state-running);z-index:3;pointer-events:none;height:3px;margin-top:-1px;position:absolute;left:0;right:0}.calendar-now:before{content:"";border-radius:var(--radius-pill);background:var(--state-running);width:9px;height:9px;position:absolute;top:-3px;left:-5px}.calendar-block{--block-tint:color-mix(in srgb, var(--project-color,var(--primary)) 18%, var(--surface));--block-bar:color-mix(in srgb, var(--project-color,var(--primary)) 60%, var(--project-mix));border-radius:var(--radius-sm);font-size:var(--text-xs);background:var(--block-tint);border-left:5px solid var(--block-bar);cursor:grab;z-index:2;flex-direction:column;min-width:0;padding:3px 6px;line-height:1.25;display:flex;position:absolute;overflow:hidden}.calendar-block strong{white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.calendar-block span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.calendar-block .calendar-block-duration{color:var(--text);font-weight:700;font-stretch:100%}.calendar-block-line{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.calendar-block.running{border:2px dashed var(--state-running);border-left:5px solid var(--state-running)}.calendar-block.thin{z-index:3}.calendar-block.marker{z-index:4}.calendar-block.dragging{opacity:.8;box-shadow:var(--shadow);cursor:grabbing;z-index:5}.calendar-ghost{background:var(--state-selected);border-left-color:var(--primary);pointer-events:none}.calendar-block-open{border-radius:inherit;cursor:inherit;background:0 0;border:none;padding:0;position:absolute;inset:0}.calendar-block-open:focus-visible{outline-offset:-2px}.calendar-resize{cursor:ns-resize;height:7px;position:absolute;bottom:0;left:0;right:0}@media (width<=760px){.calendar-head,.calendar-grid{grid-template-columns:40px repeat(7,minmax(0,1fr))}.calendar-day-head{margin:3px 1px;padding:4px;font-stretch:70%}.calendar-day-head span{letter-spacing:0}.calendar-day-head.today span{padding:0 4px}}.calendar.day-mode .calendar-grid{grid-template-columns:40px minmax(0,1fr)}.calendar.day-mode .calendar-body{overflow-x:hidden}.calendar-strip{background:var(--surface-2);border-radius:var(--radius-md) var(--radius-md) 0 0;border-bottom:none;grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-strip-day{border:none;border-left:1px solid var(--border);cursor:pointer;min-width:0;min-height:44px;font-family:var(--font-display);background:0 0;border-bottom:3px solid #0000;flex-direction:column;align-items:center;gap:2px;padding:6px 2px 4px;font-stretch:70%;display:flex}.calendar-strip-day:first-child{border-top-left-radius:var(--radius-md);border-left:none}.calendar-strip-day:last-child{border-top-right-radius:var(--radius-md)}.calendar-strip-day>*{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.calendar-strip-weekday{font-size:var(--text-sm);text-transform:uppercase;font-weight:800}.calendar-strip-date{font-size:var(--text-xs);color:var(--muted);font-weight:600}.calendar-strip-day small{color:var(--muted);font-weight:700}.calendar-strip-day[aria-pressed=true]{background:var(--state-selected);border-bottom-color:var(--primary)}.calendar-strip-day[aria-pressed=true] .calendar-strip-date,.calendar-strip-day[aria-pressed=true] small{color:var(--text);font-weight:800}.calendar-strip-day.today .calendar-strip-weekday{border-radius:var(--radius-pill);background:var(--primary);color:var(--on-primary);padding:0 4px}.calendar-all-day{background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow);grid-template-columns:56px repeat(7,minmax(90px,1fr));display:grid}.calendar-all-day-label{text-align:right;font-size:var(--text-xs);color:var(--muted);padding:6px 6px 0 0;font-weight:600}.calendar-all-day-cell{border-left:1px solid var(--border);flex-direction:column;gap:3px;min-width:0;min-height:32px;padding:3px;display:flex;position:relative}.calendar-all-day-add{border-radius:var(--radius-sm);width:100%;color:var(--muted);cursor:pointer;background:0 0;border:none;justify-content:flex-end;align-items:flex-start;padding:7px;display:flex;position:absolute;inset:0}.calendar-all-day-add:hover,.calendar-all-day-add:focus-visible{background:var(--surface-2);color:var(--text)}.calendar-all-day-add:focus-visible{outline-offset:-3px}.calendar-all-day-cell:has(.calendar-chip){padding-top:28px}.all-day-entry-details{gap:var(--space-2);display:grid}.all-day-entry-details .timer-controls{justify-content:flex-start}.calendar-chip{--block-tint:color-mix(in srgb, var(--project-color,var(--primary)) 18%, var(--surface));--block-bar:color-mix(in srgb, var(--project-color,var(--primary)) 60%, var(--project-mix));border:none;border-left:5px solid var(--block-bar);border-radius:var(--radius-sm);background:var(--block-tint);min-width:0;min-height:24px;color:var(--text);font-size:var(--text-xs);text-align:left;cursor:pointer;justify-content:space-between;align-items:baseline;gap:6px;padding:3px 6px;line-height:1.25;display:flex;position:relative}.calendar-chip strong{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:700;overflow:hidden}.calendar-chip .calendar-block-duration{flex:none;font-weight:700;font-stretch:100%}@media (width<=760px){.calendar-all-day{grid-template-columns:40px repeat(7,minmax(0,1fr))}}.calendar.day-mode .calendar-all-day{grid-template-columns:40px minmax(0,1fr)}.calendar.day-mode .calendar-grid[data-slide=next]{--calendar-slide-from:24px;animation:calendar-slide-in var(--duration-base) var(--ease)}.calendar.day-mode .calendar-grid[data-slide=previous]{--calendar-slide-from:-24px;animation:calendar-slide-in var(--duration-base) var(--ease)}@keyframes calendar-slide-in{0%{opacity:0;transform:translateX(var(--calendar-slide-from))}}.overlap-mark{border-radius:var(--radius-pill);background:var(--danger-soft);width:16px;height:16px;color:var(--danger);font-size:var(--text-xs);place-items:center;font-weight:700;display:inline-grid}@media (prefers-reduced-motion:reduce){:root{--duration-fast:0s;--duration-base:0s}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.running-dot,.timer-running-dot{opacity:1}}
