:root,:root[data-theme=light]{--color-bg: #f2f2f7;--color-bg-elevated: #ffffff;--color-fill: #e9e9ee;--color-fill-strong: #dcdce2;--color-label: #1c1c1e;--color-label-secondary: #6c6c70;--color-separator: rgba(60, 60, 67, .29);--color-accent: #ff5f3d;--color-accent-contrast: #ffffff;--color-destructive: #ff3b30;--color-success: #34c759;--color-warning-bg: #fff2d6;--color-warning-fg: #a15c00;--shadow-card: 0 1px 2px rgba(0, 0, 0, .04), 0 8px 24px rgba(0, 0, 0, .06);--shadow-sheet: 0 24px 60px rgba(0, 0, 0, .25);color-scheme:light}:root[data-theme=dark]{--color-bg: #000000;--color-bg-elevated: #1c1c1e;--color-fill: #2c2c2e;--color-fill-strong: #3a3a3c;--color-label: #f5f5f7;--color-label-secondary: rgba(235, 235, 245, .6);--color-separator: rgba(84, 84, 88, .6);--color-accent: #ff7a52;--color-accent-contrast: #1c1c1e;--color-destructive: #ff453a;--color-success: #30d158;--color-warning-bg: #3a2c00;--color-warning-fg: #ffd60a;--shadow-card: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .35);--shadow-sheet: 0 24px 60px rgba(0, 0, 0, .55);color-scheme:dark}:root[data-accent=amber]{--color-accent: #a56a00;--color-accent-contrast: #ffffff}:root[data-accent=green]{--color-accent: #1a854b;--color-accent-contrast: #ffffff}:root[data-accent=teal]{--color-accent: #0d8f82;--color-accent-contrast: #ffffff}:root[data-accent=blue]{--color-accent: #2f6fed;--color-accent-contrast: #ffffff}:root[data-accent=indigo]{--color-accent: #5a4fcf;--color-accent-contrast: #ffffff}:root[data-accent=pink]{--color-accent: #d63384;--color-accent-contrast: #ffffff}:root[data-accent=graphite]{--color-accent: #52525b;--color-accent-contrast: #ffffff}:root[data-theme=dark][data-accent=amber]{--color-accent: #f0b429;--color-accent-contrast: #1c1c1e}:root[data-theme=dark][data-accent=green]{--color-accent: #3ecf8e;--color-accent-contrast: #06231a}:root[data-theme=dark][data-accent=teal]{--color-accent: #2dd4bf;--color-accent-contrast: #06231f}:root[data-theme=dark][data-accent=blue]{--color-accent: #5b93f7;--color-accent-contrast: #0b1830}:root[data-theme=dark][data-accent=indigo]{--color-accent: #9b8cf5;--color-accent-contrast: #14103a}:root[data-theme=dark][data-accent=pink]{--color-accent: #f472b6;--color-accent-contrast: #2a0b1e}:root[data-theme=dark][data-accent=graphite]{--color-accent: #a1a1aa;--color-accent-contrast: #18181b}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--color-bg);color:var(--color-label);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Segoe UI,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;transition:background-color .2s ease,color .2s ease}h1,h2,h3{letter-spacing:-.01em}.muted{color:var(--color-label-secondary)}.error{color:var(--color-destructive)}.warning{color:var(--color-warning-fg);font-size:.85rem}.banner{padding:.7rem 1rem;border-radius:14px;margin:0 1.5rem 1rem;font-size:.88rem;line-height:1.4}.error.banner{background:color-mix(in srgb,var(--color-destructive) 12%,transparent);color:var(--color-destructive)}.warning.banner{background:var(--color-warning-bg);color:var(--color-warning-fg)}.success.banner{background:color-mix(in srgb,var(--color-success) 16%,transparent);color:color-mix(in srgb,var(--color-success) 72%,var(--color-label))}.info.banner{background:var(--color-fill);color:var(--color-label)}.carry-over-banner,.pwa-update-banner{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.pwa-update-banner .btn{flex-shrink:0}.carry-over-actions{display:inline-flex;align-items:center;gap:.75rem;flex-shrink:0}.carry-over-auto{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;color:var(--color-label-secondary);cursor:pointer}.dismissible-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.dismissible-banner.fading{opacity:0;transform:translateY(-4px)}.banner-dismiss{background:none;border:none;color:inherit;opacity:.65;cursor:pointer;font-size:1rem;line-height:1;padding:0 .15rem;flex-shrink:0;font-family:inherit}.banner-dismiss:hover{opacity:1}.toast-stack{position:fixed;top:max(.75rem,env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:500;display:flex;flex-direction:column;gap:.5rem;width:min(92vw,420px);pointer-events:none}.toast-stack .banner{margin:0;pointer-events:auto;border:1px solid var(--color-separator);border-left-width:3px;box-shadow:var(--shadow-sheet);animation:toast-in .2s cubic-bezier(.2,.8,.2,1)}.toast-stack .error.banner{background:var(--color-bg-elevated);border-left-color:var(--color-destructive)}.toast-stack .warning.banner{background:var(--color-bg-elevated);border-left-color:var(--color-warning-fg)}.toast-stack .success.banner{background:var(--color-bg-elevated);border-left-color:var(--color-success)}.toast-stack .info.banner{background:var(--color-bg-elevated);border-left-color:var(--color-accent)}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.btn{font-family:inherit;cursor:pointer;border:none;border-radius:980px;padding:.55rem 1.1rem;font-size:.9rem;font-weight:600;transition:transform .1s ease,opacity .15s ease,background-color .15s ease;-webkit-tap-highlight-color:transparent}.btn:active:not(:disabled){transform:scale(.96)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-filled{background:var(--color-accent);color:var(--color-accent-contrast)}.btn-tinted{background:color-mix(in srgb,var(--color-accent) 16%,transparent);color:var(--color-accent)}.btn-plain{background:transparent;color:var(--color-accent);padding:.55rem .8rem}.btn-destructive{background:var(--color-destructive);color:#fff}.btn-icon{width:36px;height:36px;padding:0;border-radius:50%;background:var(--color-fill);color:var(--color-label);display:inline-flex;align-items:center;justify-content:center}.btn-large{padding:.9rem 2rem;font-size:1.02rem;min-width:180px}.btn-small{padding:.35rem .7rem;font-size:.78rem}.google-btn,.google-btn:hover{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;text-decoration:none;background:var(--color-bg-elevated);color:var(--color-label);border:1px solid var(--color-separator)}.google-btn svg{flex-shrink:0}.segmented-control{display:inline-flex;background:var(--color-fill);border-radius:11px;padding:2px;gap:2px}.segment{border:none;background:transparent;padding:.45rem 1.15rem;border-radius:9px;font-size:.88rem;font-weight:500;color:var(--color-label-secondary);cursor:pointer;font-family:inherit;transition:background-color .15s ease,color .15s ease}.segment.active{background:var(--color-bg-elevated);color:var(--color-label);font-weight:600;box-shadow:0 1px 3px #0000001f}.segment:disabled{opacity:.5;cursor:not-allowed}.center-screen,.login-screen{min-height:100%;display:flex;flex-direction:column}.screen-content{flex:1;display:flex;align-items:center;justify-content:center;padding:1rem}.login-card{background:var(--color-bg-elevated);border-radius:22px;box-shadow:var(--shadow-card);padding:2.25rem 2rem;width:100%;max-width:320px;display:flex;flex-direction:column;gap:.85rem;text-align:center}.login-card h1{margin:0;color:var(--color-accent);font-size:1.6rem}.login-card input{font-family:inherit;background:var(--color-fill);border:1px solid transparent;color:var(--color-label);border-radius:12px;padding:.75rem 1rem;font-size:1rem;text-align:center}.login-card input:focus{outline:none;border-color:var(--color-accent)}.splash-card{display:flex;flex-direction:column;align-items:center;gap:.6rem;animation:fade-in .35s ease-out}.splash-logo{width:64px;height:64px;border-radius:16px;animation:splash-pulse 1.8s ease-in-out infinite}.splash-card h1{margin:0;color:var(--color-accent);font-size:1.6rem}.splash-card .spinner-large{width:22px;height:22px;margin:.4rem 0 0;border-width:2.5px}@keyframes splash-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.06);opacity:.85}}.app{max-width:980px;margin:0 auto;padding-bottom:2rem;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.app-header{position:sticky;top:0;z-index:65;display:flex;align-items:center;justify-content:space-between;padding:calc(1.25rem + env(safe-area-inset-top)) 1.5rem 1.25rem;background:color-mix(in srgb,var(--color-bg) 92%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--color-separator)}.app-header h1{color:var(--color-accent);margin:0;font-size:1.4rem;font-weight:700}.header-actions{display:flex;align-items:center;gap:.4rem}.menu-wrap{position:relative;display:inline-flex}.menu-trigger{font-family:inherit;cursor:pointer;border:none;border-radius:980px;padding:.4rem .55rem .4rem .8rem;font-size:.85rem;font-weight:600;background:var(--color-fill);color:var(--color-label);display:inline-flex;align-items:center;gap:.2rem;transition:background-color .15s ease,transform .1s ease;-webkit-tap-highlight-color:transparent}.menu-trigger:active:not(:disabled){transform:scale(.96)}.menu-trigger[aria-expanded=true],.btn-icon[aria-expanded=true]{background:var(--color-fill-strong)}.menu-pop{position:absolute;top:calc(100% + 6px);right:0;z-index:60;min-width:13rem;padding:.3rem;background:var(--color-bg-elevated);border:1px solid var(--color-separator);border-radius:14px;box-shadow:var(--shadow-sheet);display:flex;flex-direction:column;gap:1px}.menu-pop--start{right:auto;left:0}.menu-heading{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-label-secondary);padding:.4rem .55rem .25rem}.menu-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;text-align:left;background:none;border:none;font-family:inherit;font-size:.88rem;color:var(--color-label);padding:.5rem .55rem;border-radius:9px;cursor:pointer}.menu-item:hover:not(:disabled){background:var(--color-fill)}.menu-item:disabled{opacity:.45;cursor:not-allowed}.menu-item--danger{color:var(--color-destructive)}.menu-item-state{font-size:.78rem;font-weight:600;color:var(--color-label-secondary);flex-shrink:0}.menu-sep{height:1px;background:var(--color-separator);margin:.25rem .3rem}.accent-row{display:flex;flex-wrap:wrap;gap:.45rem;padding:.15rem .55rem .55rem}.accent-swatch{width:20px;height:20px;padding:0;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .1s ease}.accent-swatch:hover{transform:scale(1.12)}.accent-swatch.is-on{border-color:var(--color-label)}.accent-swatch:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.accent-swatch[data-accent=tomato]{background:#ff6a48}.accent-swatch[data-accent=amber]{background:#e0a020}.accent-swatch[data-accent=green]{background:#24a35c}.accent-swatch[data-accent=teal]{background:#13a594}.accent-swatch[data-accent=blue]{background:#3b82f6}.accent-swatch[data-accent=indigo]{background:#6d63e0}.accent-swatch[data-accent=pink]{background:#e0559a}.accent-swatch[data-accent=graphite]{background:#71717a}.accent-swatch--custom{position:relative;display:inline-flex;overflow:hidden}.accent-swatch--custom input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;border:none;padding:0}.file-tabs{display:flex;gap:.4rem;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;min-width:0;padding:0 1.5rem 1rem}.file-tabs::-webkit-scrollbar{display:none}.file-tab{flex:0 0 auto;font-family:inherit;border:1px solid var(--color-separator);cursor:pointer;padding:.35rem .85rem;border-radius:980px;background:transparent;color:var(--color-label-secondary);font-size:.8rem;font-weight:500;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.file-tab:disabled{opacity:.6;cursor:default}.file-tab.active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-contrast);font-weight:600}.day-row{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;padding:0 1.5rem 1rem;flex-wrap:wrap}.day-row-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.day-selector{display:flex;flex-direction:column;gap:.5rem;min-width:0;flex:1 1 auto}.week-nav{display:flex;align-items:center;gap:.5rem}.week-nav .btn-icon{width:28px;height:28px;font-size:1rem;line-height:1}.week-label{color:var(--color-label-secondary);font-size:.82rem;font-variant-numeric:tabular-nums}.week-today-btn{padding:.2rem .7rem;font-size:.76rem}.day-tabs{display:flex;gap:.4rem;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;min-width:0;padding:.15rem .05rem}.day-tabs::-webkit-scrollbar{display:none}.day-tab{flex:0 0 auto;font-family:inherit;border:none;cursor:pointer;padding:.4rem .9rem;border-radius:980px;background:var(--color-fill);color:var(--color-label);font-size:.85rem;font-weight:500;transition:background-color .15s ease,color .15s ease}.day-tab:disabled{opacity:.6;cursor:default}.day-tab.active{background:var(--color-accent);color:var(--color-accent-contrast);font-weight:600}.total-pill{display:flex;align-items:baseline;gap:.55rem;background:var(--color-fill);padding:.4rem .9rem;border-radius:980px;white-space:nowrap}.total-seg{display:inline-flex;align-items:baseline;gap:.35rem}.total-seg+.total-seg{padding-left:.55rem;border-left:1px solid var(--color-separator)}.total-pill-label{font-size:.68rem;color:var(--color-label-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.total-pill-value{font-weight:700;font-size:.95rem;color:var(--color-accent);font-variant-numeric:tabular-nums}.main-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:1.25rem;padding:0 1.5rem}@media (max-width: 720px){.main-grid{grid-template-columns:1fr}input,textarea,select{font-size:16px!important}}.main-grid--no-timer{grid-template-columns:1fr}.card{background:var(--color-bg-elevated);border-radius:20px;box-shadow:var(--shadow-card);padding:1.25rem}.empty-week{margin:0 1.5rem;text-align:center;padding:2.5rem 1.5rem}.timer-panel{position:sticky;top:1rem;align-self:start}.app--focus{min-height:100vh;display:flex;flex-direction:column;justify-content:center}.app--focus .app-header,.app--focus .file-tabs,.app--focus .day-row,.app--focus .inbox,.app--focus .day-note,.app--focus .shortcuts-hint,.app--focus .app-footer,.app--focus .banner,.app--focus .tasks-panel{display:none}.app--focus .main-grid{grid-template-columns:1fr;max-width:380px;margin:0 auto;padding:1.5rem}.app--focus .timer-panel{position:static}.focus-task{margin:0 0 1rem;text-align:center;font-size:1rem;font-weight:600;color:var(--color-label)}.focus-exit{position:fixed;top:calc(.75rem + env(safe-area-inset-top));right:calc(.75rem + env(safe-area-inset-right));z-index:40;background:var(--color-fill);color:var(--color-label-secondary);border:none;border-radius:980px;padding:.35rem .85rem;font:inherit;font-size:.8rem;cursor:pointer}.focus-exit:hover{color:var(--color-label)}.task-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem;min-height:2.5rem}.task-list-empty{padding:.5rem .25rem}.task-item{width:100%;display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .6rem;background:var(--color-fill);border:2px solid transparent;border-radius:14px;padding:.6rem .85rem;font-size:.92rem;color:var(--color-label);transition:border-color .15s ease,background-color .15s ease}.task-item:has(.task-select:active){background:var(--color-fill-strong)}.task-item.active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,var(--color-fill))}.task-item.locked{opacity:.6}body.is-dragging,body.is-dragging *{cursor:grabbing!important;-webkit-user-select:none;user-select:none}.task-item.is-draggable{cursor:grab}.task-list li.is-drag-src,.inbox-item.is-drag-src{opacity:.4}[data-drop-state=hot]{outline:2px dashed var(--color-accent);outline-offset:2px;border-radius:14px}.day-tab[data-drop-state=hot]{outline-offset:3px}.inbox[data-drop-state=hot]{outline-offset:4px}[data-drop-state=reject]{outline:2px dashed var(--color-destructive);outline-offset:2px;border-radius:14px}.drag-ghost{position:fixed;top:0;left:0;z-index:1000;pointer-events:none;max-width:15rem;padding:.4rem .7rem;border-radius:10px;background:var(--color-bg-elevated);color:var(--color-label);font-size:.88rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:var(--shadow-card);border:1px solid var(--color-separator);opacity:.95}.undo-snackbar{position:fixed;left:50%;bottom:1.25rem;transform:translate(-50%);z-index:150;display:flex;align-items:center;gap:.6rem;max-width:min(92vw,420px);padding:.6rem .5rem .6rem .9rem;border-radius:980px;background:var(--color-bg-elevated);border:1px solid var(--color-separator);box-shadow:var(--shadow-sheet);overflow:hidden;animation:snackbar-in .2s cubic-bezier(.2,.8,.2,1)}.undo-snackbar-text{flex:1;min-width:0;font-size:.84rem;color:var(--color-label);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.undo-snackbar-action{flex-shrink:0;background:none;border:none;color:var(--color-accent);font-weight:700;font-size:.84rem;font-family:inherit;cursor:pointer;padding:.2rem .3rem}.undo-snackbar-close{flex-shrink:0;background:none;border:none;color:var(--color-label-secondary);font-size:1.1rem;line-height:1;cursor:pointer;padding:.1rem .2rem}.undo-snackbar-bar{position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--color-accent);transform-origin:left;animation-name:undo-countdown;animation-timing-function:linear;animation-fill-mode:forwards}@keyframes undo-countdown{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes snackbar-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.task-select{flex:1 1 8rem;min-width:7rem;display:flex;align-items:center;text-align:left;background:transparent;border:none;font-family:inherit;font-size:inherit;color:inherit;cursor:pointer;padding:.1rem 0}.task-check{width:1.4rem;height:1.4rem;border-radius:50%;border:1.5px solid var(--color-separator);display:flex;align-items:center;justify-content:center;font-size:.75rem;flex-shrink:0;color:#fff;background:transparent;cursor:pointer;padding:0;transition:background-color .15s ease,border-color .15s ease,transform .1s ease}.task-check:active:not(:disabled){transform:scale(.88)}.task-check:disabled{opacity:.5;cursor:not-allowed}.task-check.checked{background:var(--color-success);border-color:var(--color-success)}.task-text{flex:1;overflow-wrap:break-word;min-width:0}.task-total{font-size:.72rem;font-weight:600;color:var(--color-label-secondary);flex-shrink:0;font-variant-numeric:tabular-nums;white-space:nowrap}.task-total.over,.report-over{color:var(--color-destructive)}.total-pill-est{color:var(--color-label-secondary)}.task-item-trailing{display:flex;align-items:center;gap:.5rem;flex-shrink:0;margin-left:auto}.task-row-menu-trigger{background:none;border:none;color:var(--color-label-secondary);font-size:1.15rem;line-height:1;cursor:pointer;width:1.9rem;height:1.9rem;border-radius:8px;font-family:inherit;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;transition:background-color .15s ease,color .15s ease}.task-row-menu-trigger:hover,.task-row-menu-trigger[aria-expanded=true]{background:var(--color-fill-strong);color:var(--color-label)}.task-row-menu-trigger.is-set{color:var(--color-accent)}.move-menu-item.move-menu-danger{color:var(--color-destructive)}.move-menu-item.move-menu-danger:hover:not(:disabled){background:color-mix(in srgb,var(--color-destructive) 12%,transparent)}.task-move,.task-delete{background:none;border:none;color:var(--color-label-secondary);font-size:.85rem;line-height:1;cursor:pointer;width:1.6rem;height:1.6rem;border-radius:8px;font-family:inherit;flex-shrink:0}.task-move:hover:not(:disabled){background:var(--color-fill-strong);color:var(--color-label)}.task-delete:hover:not(:disabled){color:var(--color-destructive);background:color-mix(in srgb,var(--color-destructive) 12%,transparent)}.task-move:disabled,.task-delete:disabled{opacity:.3;cursor:not-allowed}.task-item[data-priority=high]{box-shadow:inset 3px 0 0 var(--color-destructive)}.task-item[data-priority=med]{box-shadow:inset 3px 0 0 var(--color-accent)}.task-item[data-priority=low]{box-shadow:inset 3px 0 0 var(--color-label-secondary)}.task-due-chip{font-size:.68rem;font-weight:600;color:var(--color-label-secondary);background:var(--color-fill-strong);border-radius:980px;padding:.1rem .5rem;flex-shrink:0;white-space:nowrap}.task-due-chip.overdue{color:var(--color-destructive);background:color-mix(in srgb,var(--color-destructive) 14%,transparent)}.task-planned-chip{font-size:.68rem;font-weight:600;color:var(--color-label-secondary);background:var(--color-fill-strong);border-radius:980px;padding:.1rem .5rem;flex-shrink:0;white-space:nowrap;font-variant-numeric:tabular-nums}.task-age-chip{font-size:.68rem;font-weight:600;color:var(--color-label-secondary);opacity:.7;flex-shrink:0;white-space:nowrap;font-variant-numeric:tabular-nums}.task-checklist-chip{font-size:.68rem;font-weight:600;color:var(--color-label-secondary);background:var(--color-fill-strong);border-radius:980px;padding:.1rem .5rem;flex-shrink:0;white-space:nowrap;font-variant-numeric:tabular-nums}.task-checklist-chip.is-done{color:var(--color-success);background:color-mix(in srgb,var(--color-success) 14%,transparent)}.task-details{margin:.35rem 0 .55rem 2.6rem;display:flex;flex-direction:column;gap:.55rem;padding:.65rem .75rem;background:var(--color-fill);border-radius:12px}.task-details-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.task-details-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-label-secondary);min-width:4.25rem}.priority-pills{display:inline-flex;gap:.3rem}.priority-pill{border:1px solid var(--color-separator);background:none;color:var(--color-label-secondary);border-radius:980px;padding:.2rem .7rem;font-size:.76rem;font-family:inherit;cursor:pointer}.priority-pill:disabled{opacity:.5;cursor:not-allowed}.priority-pill.on.p-high{background:var(--color-destructive);border-color:var(--color-destructive);color:#fff}.priority-pill.on.p-med{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-contrast)}.priority-pill.on.p-low{background:var(--color-label-secondary);border-color:var(--color-label-secondary);color:var(--color-bg-elevated)}.task-due-input,.task-planned-start-input,.task-estimate-input,.task-notes-input{font-family:inherit;background:var(--color-bg-elevated);border:1px solid var(--color-separator);color:var(--color-label);border-radius:8px;font-size:.84rem}.task-due-input,.task-planned-start-input{padding:.25rem .5rem}.task-estimate-input{padding:.25rem .5rem;width:7rem}.task-notes-input{padding:.4rem .55rem;resize:vertical;width:100%}.task-due-input:focus,.task-planned-start-input:focus,.task-estimate-input:focus,.task-notes-input:focus{outline:none;border-color:var(--color-accent)}.task-checklist{flex-basis:100%;display:flex;flex-direction:column;gap:.35rem}.task-checklist-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem}.task-checklist-list li{display:flex;align-items:center;gap:.5rem}.task-checklist-list .task-check{width:1.15rem;height:1.15rem;font-size:.62rem}.task-checklist-text{flex:1;font-size:.86rem;color:var(--color-label);word-break:break-word}.task-checklist-list li.is-done .task-checklist-text{text-decoration:line-through;color:var(--color-label-secondary)}.task-checklist-del{border:none;background:none;color:var(--color-label-secondary);font-size:1rem;line-height:1;padding:0 .2rem;cursor:pointer;flex-shrink:0}.task-checklist-del:disabled{opacity:.5;cursor:not-allowed}.task-checklist-input{font-family:inherit;background:var(--color-bg-elevated);border:1px solid var(--color-separator);color:var(--color-label);border-radius:8px;font-size:.84rem;padding:.3rem .5rem;width:100%}.task-checklist-input:focus{outline:none;border-color:var(--color-accent)}@media (max-width: 480px){.task-details{margin-left:1.4rem}}.move-menu-wrap{position:relative;display:inline-flex}.move-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:50;min-width:12rem;max-height:16rem;overflow-y:auto;padding:.25rem;background:var(--color-bg-elevated);border:1px solid var(--color-separator);border-radius:12px;box-shadow:var(--shadow-sheet);display:flex;flex-direction:column;gap:1px}.move-menu-heading{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-label-secondary);padding:.35rem .55rem .25rem}.move-menu-item{text-align:left;background:none;border:none;font-family:inherit;font-size:.85rem;color:var(--color-label);padding:.45rem .55rem;border-radius:8px;cursor:pointer}.move-menu-item:hover:not(:disabled){background:var(--color-fill)}.move-menu-item:disabled{opacity:.5;cursor:default}.move-menu-back{color:var(--color-accent);font-size:.8rem}.move-menu-sep{height:1px;background:var(--color-separator);margin:.25rem .3rem}.move-menu-empty,.move-menu-error{font-size:.8rem;color:var(--color-label-secondary);padding:.45rem .55rem}.move-menu-error{color:var(--color-destructive)}.sheet--recurring{max-width:min(94vw,640px)}.recurring-scroll{overflow-y:auto;min-height:0}.recurring-list{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:2px}.context-order-scroll{overflow-y:auto;min-height:0}.context-order-list{list-style:none;margin:0 0 1.5rem;padding:0;display:flex;flex-direction:column;gap:.3rem}.context-order-list li{display:flex;align-items:center;justify-content:space-between;gap:.6rem;background:var(--color-fill);border-radius:12px;padding:.5rem .7rem}.context-order-name{font-size:.92rem;color:var(--color-label);min-width:0;overflow-wrap:break-word}.context-order-actions{display:flex;gap:.25rem;flex-shrink:0}.recurring-list li{display:flex;flex-direction:column;gap:.4rem;padding:.45rem .4rem .5rem .5rem;border-radius:8px}.recurring-list li:hover{background:var(--color-fill)}.recurring-row-top{display:flex;align-items:center;gap:.5rem}.recurring-freq{flex-shrink:0}.recurring-freq button{font-size:.7rem;padding:.2rem .5rem}.recurring-text{flex:1;min-width:0;word-break:break-word;font-size:.9rem}.recurring-actions{display:flex;align-items:center;gap:.1rem;flex-shrink:0}.recurring-edit{display:flex;align-items:center;gap:.3rem;flex:1}.recurring-edit input{flex:1;min-width:0;font-family:inherit;font-size:.9rem;background:var(--color-fill);border:1px solid transparent;color:var(--color-label);border-radius:8px;padding:.35rem .5rem}.recurring-edit input:focus{outline:none;border-color:var(--color-accent)}.recurring-days,.recurring-monthdays{display:flex;flex-wrap:wrap;gap:2px}.recurring-monthday{min-width:1.5rem;height:1.5rem;border:1px solid var(--color-separator);background:none;color:var(--color-label-secondary);border-radius:6px;font-size:.68rem;font-family:inherit;cursor:pointer;padding:0 .2rem}.recurring-monthday.on{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-contrast)}.recurring-monthday.is-last{padding:0 .45rem;font-size:.66rem}.recurring-time-row{display:flex;align-items:center;gap:.5rem}.recurring-time-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-label-secondary)}.recurring-day{width:1.5rem;height:1.5rem;border:1px solid var(--color-separator);background:none;color:var(--color-label-secondary);border-radius:6px;font-size:.7rem;font-family:inherit;cursor:pointer;padding:0}.recurring-day.on{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-contrast)}.sheet--business-hours{max-width:min(94vw,680px)}.bh-master-toggle{margin-bottom:.5rem}.bh-scroll{overflow-y:auto;min-height:0}.bh-days{list-style:none;margin:0 0 1.25rem;padding:0;display:flex;flex-direction:column;gap:2px}.bh-day{display:flex;flex-direction:column;gap:.4rem;padding:.55rem .5rem;border-radius:8px}.bh-day:hover{background:var(--color-fill)}.bh-day-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.bh-day-name{display:flex;align-items:center;gap:.45rem;font-size:.9rem;font-weight:600;color:var(--color-label);cursor:pointer}.bh-blocks{display:flex;flex-direction:column;gap:.35rem}.bh-block{display:flex;align-items:center;gap:.4rem}.bh-no-blocks{margin:0;font-size:.82rem}.task-add-form{display:flex;gap:.5rem;margin-top:.6rem}.sheet .task-add-form{margin-bottom:1.5rem}.task-add-form input{flex:1;min-width:0;font-family:inherit;background:var(--color-fill);border:1px solid transparent;color:var(--color-label);border-radius:980px;padding:.5rem .9rem;font-size:.88rem}.task-add-form input:focus{outline:none;border-color:var(--color-accent)}.task-add-form input:disabled{opacity:.6}.inbox{margin:0 1.5rem 1rem}.inbox-header{display:flex;align-items:center;gap:.45rem;width:100%;background:none;border:none;font-family:inherit;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-label-secondary);cursor:pointer;padding:.4rem 0;-webkit-tap-highlight-color:transparent}.inbox-chevron{flex-shrink:0;transition:transform .15s ease}.inbox.is-open .inbox-chevron{transform:rotate(90deg)}.inbox-count{background:var(--color-fill-strong);color:var(--color-label);border-radius:980px;padding:.05rem .45rem;font-size:.7rem;font-weight:700}.inbox-body{margin-top:.5rem;padding:.85rem;background:var(--color-bg-elevated);border-radius:14px;box-shadow:var(--shadow-card)}.day-note{margin:0 1.5rem 1rem}.day-note.is-open .inbox-chevron{transform:rotate(90deg)}.day-note-dot{width:.42rem;height:.42rem;border-radius:50%;background:var(--color-accent);flex-shrink:0}.day-note-status{font-weight:500;text-transform:none;letter-spacing:0;color:var(--color-label-secondary)}.day-note-body{margin-top:.5rem;padding:.85rem;background:var(--color-bg-elevated);border-radius:14px;box-shadow:var(--shadow-card)}.day-note-body .task-notes-input{margin:0}.inbox-body .task-add-form{margin:0 0 .6rem}.inbox-empty{margin:.2rem 0 0;font-size:.85rem}.inbox-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem}.inbox-item{display:flex;align-items:center;gap:.5rem;background:var(--color-fill);border-radius:12px;padding:.5rem .7rem;font-size:.9rem}.inbox-item-name{flex:1;min-width:0;overflow-wrap:break-word}.inbox-edit-input{flex:1;min-width:0;font-family:inherit;font-size:.9rem;background:var(--color-bg-elevated);border:1px solid var(--color-accent);color:var(--color-label);border-radius:8px;padding:.25rem .5rem;outline:none}[data-tag-color=slate]{--tag-bg: #e9edf1;--tag-fg: #47546a;--tag-solid: #8a99ad}[data-tag-color=red]{--tag-bg: #fde8e7;--tag-fg: #c22b22;--tag-solid: #e5484d}[data-tag-color=orange]{--tag-bg: #ffece0;--tag-fg: #bb4d15;--tag-solid: #f76b15}[data-tag-color=amber]{--tag-bg: #fdf0d5;--tag-fg: #8a6011;--tag-solid: #ffb224}[data-tag-color=green]{--tag-bg: #e3f5e6;--tag-fg: #1f7a37;--tag-solid: #30a46c}[data-tag-color=teal]{--tag-bg: #dbf3ef;--tag-fg: #0f766e;--tag-solid: #12a594}[data-tag-color=blue]{--tag-bg: #e4eefe;--tag-fg: #1f5fc0;--tag-solid: #3b82f6}[data-tag-color=violet]{--tag-bg: #ece7fb;--tag-fg: #5b3fc4;--tag-solid: #7c5cf0}[data-tag-color=pink]{--tag-bg: #fce4ef;--tag-fg: #b83280;--tag-solid: #e93d82}:root[data-theme=dark] [data-tag-color=slate]{--tag-bg: #2b3340;--tag-fg: #b7c2d0}:root[data-theme=dark] [data-tag-color=red]{--tag-bg: #3b2422;--tag-fg: #ff9d95}:root[data-theme=dark] [data-tag-color=orange]{--tag-bg: #3a2a1e;--tag-fg: #ffb27a}:root[data-theme=dark] [data-tag-color=amber]{--tag-bg: #372c1a;--tag-fg: #f5c877}:root[data-theme=dark] [data-tag-color=green]{--tag-bg: #1f3326;--tag-fg: #86e0a0}:root[data-theme=dark] [data-tag-color=teal]{--tag-bg: #16302e;--tag-fg: #74d6c8}:root[data-theme=dark] [data-tag-color=blue]{--tag-bg: #1e2b40;--tag-fg: #8bb8f5}:root[data-theme=dark] [data-tag-color=violet]{--tag-bg: #2a2440;--tag-fg: #b7a3f0}:root[data-theme=dark] [data-tag-color=pink]{--tag-bg: #3a2130;--tag-fg: #f4a6cd}.task-tags{display:inline-flex;flex-wrap:wrap;gap:.3rem;align-items:center;min-width:0}.task-tag{font-size:.68rem;font-weight:600;line-height:1;padding:.18rem .45rem;border-radius:980px;background:var(--tag-bg, var(--color-fill-strong));color:var(--tag-fg, var(--color-label-secondary));white-space:nowrap}.tag-toggle-row{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}.tag-toggle{border:1px solid var(--color-separator);background:none;color:var(--color-label-secondary);border-radius:980px;padding:.2rem .6rem;font-size:.74rem;font-family:inherit;cursor:pointer}.tag-toggle.is-on{background:var(--tag-bg);color:var(--tag-fg);border-color:transparent}.tag-toggle:disabled{opacity:.5;cursor:not-allowed}.tag-filter{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.7rem}.bulk-bar{display:flex;flex-direction:column;gap:.45rem;margin-bottom:.7rem;padding:.55rem .65rem;border-radius:12px;background:color-mix(in srgb,var(--color-accent) 12%,var(--color-bg-elevated));border:1px solid color-mix(in srgb,var(--color-accent) 30%,transparent)}.bulk-bar-top{display:flex;align-items:center;justify-content:space-between}.bulk-count{font-size:.82rem;font-weight:600;color:var(--color-label);white-space:nowrap}.bulk-actions{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.bulk-cancel{background:none;border:none;color:var(--color-label-secondary);font-size:1rem;line-height:1;padding:.2rem .4rem;cursor:pointer;border-radius:6px}.bulk-cancel:hover:not(:disabled){background:var(--color-fill);color:var(--color-label)}.task-item.is-selecting .task-item-trailing{display:none}.task-item.is-selecting{cursor:pointer}.task-item.is-selected{background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.task-item.is-selecting .task-check{border-radius:6px}.task-item.is-selecting .task-check.checked{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-contrast)}.tag-filter-chip{border:1px solid var(--color-separator);background:none;color:var(--color-label-secondary);border-radius:980px;padding:.22rem .7rem;font-size:.76rem;font-family:inherit;cursor:pointer}.tag-filter-chip.is-on{border-color:transparent;background:var(--color-fill-strong);color:var(--color-label);font-weight:600}.tag-filter-chip--color.is-on{background:var(--tag-bg);color:var(--tag-fg)}.sheet--tags{max-width:min(94vw,520px)}.tags-scroll{overflow-y:auto;min-height:0}.tag-new-form{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem}.tag-new-form input{flex:1 1 10rem;min-width:0;font-family:inherit;background:var(--color-fill);border:1px solid transparent;color:var(--color-label);border-radius:980px;padding:.4rem .8rem;font-size:.85rem}.tag-new-form input:focus{outline:none;border-color:var(--color-accent)}.tag-swatches{display:inline-flex;gap:.25rem;flex-wrap:wrap}.tag-swatch{width:1.15rem;height:1.15rem;border-radius:50%;border:2px solid transparent;background:var(--tag-solid);cursor:pointer;padding:0}.tag-swatch.is-active{border-color:var(--color-label)}.tag-swatch:disabled{opacity:.5;cursor:not-allowed}.tag-manage-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.tag-manage-item{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.tag-dot{width:.7rem;height:.7rem;border-radius:50%;background:var(--tag-solid);flex-shrink:0}.tag-manage-name{flex:1 1 6rem;min-width:0;text-align:left;background:none;border:none;font-family:inherit;font-size:.9rem;color:var(--color-label);cursor:pointer;padding:.2rem 0}.tag-rename-input{flex:1 1 6rem;min-width:0;font-family:inherit;font-size:.9rem;background:var(--color-bg-elevated);border:1px solid var(--color-accent);color:var(--color-label);border-radius:8px;padding:.2rem .5rem;outline:none}.tag-manage-delete{background:none;border:none;color:var(--color-label-secondary);font-size:1.1rem;line-height:1;width:1.7rem;height:1.7rem;border-radius:8px;cursor:pointer;flex-shrink:0}.tag-manage-delete:hover:not(:disabled){color:var(--color-destructive);background:color-mix(in srgb,var(--color-destructive) 12%,transparent)}.report-note{font-size:.72rem;color:var(--color-label-secondary);margin:-.25rem 0 .5rem}.sheet--templates{max-width:min(94vw,560px)}.dt-scroll{overflow-y:auto;min-height:0}.dt-create{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.1rem}.dt-create input,.dt-create textarea{font-family:inherit;background:var(--color-fill);border:1px solid transparent;color:var(--color-label);border-radius:10px;padding:.45rem .75rem;font-size:.86rem;width:100%}.dt-create textarea{resize:vertical}.dt-create input:focus,.dt-create textarea:focus{outline:none;border-color:var(--color-accent)}.dt-create-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.dt-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.dt-item{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap;background:var(--color-fill);border-radius:12px;padding:.55rem .75rem}.dt-item-main{display:flex;align-items:baseline;gap:.5rem;min-width:0;flex:1 1 10rem}.dt-item-name{background:none;border:none;font-family:inherit;font-size:.92rem;font-weight:600;color:var(--color-label);cursor:pointer;padding:0;text-align:left;overflow-wrap:anywhere}.dt-item-count{font-size:.72rem;color:var(--color-label-secondary);white-space:nowrap}.dt-rename-input{flex:1 1 8rem;min-width:0;font-family:inherit;font-size:.92rem;background:var(--color-bg-elevated);border:1px solid var(--color-accent);color:var(--color-label);border-radius:8px;padding:.2rem .5rem;outline:none}.dt-item-actions{display:flex;align-items:center;gap:.3rem;flex-shrink:0}.dt-item-delete{background:none;border:none;color:var(--color-label-secondary);font-size:1.1rem;line-height:1;width:1.7rem;height:1.7rem;border-radius:8px;cursor:pointer;flex-shrink:0}.dt-item-delete:hover:not(:disabled){color:var(--color-destructive);background:color-mix(in srgb,var(--color-destructive) 12%,transparent)}.sheet--goals{max-width:min(94vw,540px)}.goals-scroll{overflow-y:auto;min-height:0}.goal-new{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:1.1rem}.goal-new-in{font-size:.85rem;color:var(--color-label-secondary)}.goal-hours-input{width:4rem;font-family:inherit;background:var(--color-fill);border:1px solid transparent;color:var(--color-label);border-radius:8px;padding:.4rem .55rem;font-size:.85rem}.goal-tag-select{flex:0 1 9rem;min-width:0;font-family:inherit;background:var(--color-fill);border:1px solid transparent;color:var(--color-label);border-radius:8px;padding:.4rem .5rem;font-size:.85rem}.goal-hours-input:focus,.goal-tag-select:focus{outline:none;border-color:var(--color-accent)}.goal-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.9rem}.goal-item{--goal-color: var(--color-accent)}.goal-item[data-state=behind]{--goal-color: var(--color-destructive)}.goal-item[data-state=ahead],.goal-item[data-state=done]{--goal-color: var(--color-success)}.goal-item-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}.goal-item-name{font-size:.92rem;font-weight:600;color:var(--color-label);overflow-wrap:anywhere}.goal-item-delete{background:none;border:none;color:var(--color-label-secondary);font-size:1.1rem;line-height:1;width:1.6rem;height:1.6rem;border-radius:8px;cursor:pointer;flex-shrink:0}.goal-item-delete:hover:not(:disabled){color:var(--color-destructive);background:color-mix(in srgb,var(--color-destructive) 12%,transparent)}.goal-bar{position:relative;height:.7rem;background:var(--color-fill);border-radius:980px;overflow:hidden}.goal-bar-fill{height:100%;background:var(--goal-color);border-radius:980px;transition:width .25s ease}.goal-bar-pace{position:absolute;top:-1px;bottom:-1px;width:2px;background:var(--color-label);opacity:.5}.goal-item-meta{margin:.35rem 0 0;font-size:.78rem;color:var(--color-label-secondary);font-variant-numeric:tabular-nums}.goal-item-pace{color:var(--goal-color);font-weight:600}.sheet--post-its{max-width:min(94vw,760px)}.post-it-toolbar{margin-bottom:1rem}.post-it-board{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.9rem;max-height:min(60vh,560px);overflow-y:auto}.post-it{background:var(--tag-bg);border-radius:12px;padding:.7rem .8rem .8rem;display:flex;flex-direction:column;gap:.5rem;box-shadow:0 1px 2px #0000000f}.post-it-head{display:flex;align-items:center;gap:.3rem}.post-it-title-input{flex:1 1 auto;min-width:0;background:none;border:none;color:var(--tag-fg);font-family:inherit;font-size:.88rem;font-weight:600;padding:.15rem .2rem}.post-it-title-input:focus{outline:none;background:color-mix(in srgb,var(--tag-fg) 8%,transparent);border-radius:6px}.post-it-title-input::placeholder{color:var(--tag-fg);opacity:.55}.post-it-pin,.post-it-delete{background:none;border:none;color:var(--tag-fg);opacity:.6;cursor:pointer;flex-shrink:0;width:1.5rem;height:1.5rem;border-radius:8px;display:inline-flex;align-items:center;justify-content:center}.post-it-pin:hover:not(:disabled),.post-it-delete:hover:not(:disabled){opacity:1;background:color-mix(in srgb,var(--tag-fg) 12%,transparent)}.post-it-pin.is-active{opacity:1}.post-it-delete{font-size:1.05rem;line-height:1}.post-it-body-input{resize:vertical;min-height:4.5rem;background:color-mix(in srgb,var(--tag-fg) 6%,transparent);border:none;border-radius:8px;color:var(--tag-fg);font-family:inherit;font-size:.85rem;line-height:1.4;padding:.5rem .6rem}.post-it-body-input:focus{outline:1px solid color-mix(in srgb,var(--tag-fg) 35%,transparent)}.post-it-body-input::placeholder{color:var(--tag-fg);opacity:.5}.post-it .tag-swatches{align-self:flex-start}.sheet--admin{max-width:min(94vw,560px)}.admin-scroll{overflow-y:auto;min-height:0}.admin-section-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-label-secondary);margin:1rem 0 .5rem}.admin-user-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.admin-user{display:flex;align-items:center;gap:.6rem;background:var(--color-fill);border-radius:12px;padding:.5rem .7rem}.admin-user.is-pending{background:color-mix(in srgb,var(--color-accent) 12%,var(--color-fill))}.admin-user-avatar{width:1.9rem;height:1.9rem;border-radius:50%;background:var(--color-fill-strong);color:var(--color-label);display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:700;flex-shrink:0}.admin-user-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.05rem}.admin-user-name{font-size:.88rem;font-weight:600;color:var(--color-label);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:.4rem}.admin-user-badge{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 16%,transparent);border-radius:980px;padding:.05rem .4rem;flex-shrink:0}.admin-user-sub{font-size:.72rem;color:var(--color-label-secondary);overflow-wrap:anywhere}.admin-user-revoke{color:var(--color-label-secondary)}.admin-user-revoke:hover:not(:disabled){color:var(--color-destructive)}.sheet--feeds{max-width:min(94vw,600px)}.feeds-scroll{overflow-y:auto;min-height:0}.feeds-intro{margin:-.3rem 0 1rem;font-size:.78rem;line-height:1.45}.feed-new{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1.1rem}.feed-new-row{display:flex;flex-wrap:wrap;gap:.4rem}.feed-url-input,.feed-name-input,.feed-file-select{font-family:inherit;background:var(--color-fill);border:1px solid transparent;color:var(--color-label);border-radius:8px;padding:.45rem .55rem;font-size:.85rem}.feed-url-input{width:100%}.feed-name-input{flex:1 1 7rem;min-width:0}.feed-file-select{flex:0 1 9rem;min-width:0}.feed-url-input:focus,.feed-name-input:focus,.feed-file-select:focus{outline:none;border-color:var(--color-accent)}.feed-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.feed-item{display:flex;flex-direction:column;gap:.5rem;background:var(--color-fill);border-radius:12px;padding:.6rem .75rem}.feed-item[data-error]{background:color-mix(in srgb,var(--color-destructive) 12%,var(--color-fill))}.feed-item-main{min-width:0;display:flex;flex-direction:column;gap:.1rem}.feed-item-name{font-size:.9rem;font-weight:600;color:var(--color-label);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-item-sub{font-size:.74rem;color:var(--color-label-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-item-sync{font-size:.74rem;color:var(--color-label-secondary);overflow-wrap:anywhere}.feed-item[data-error] .feed-item-sync{color:var(--color-destructive)}.feed-item-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.feed-toggle{display:flex;align-items:center;gap:.3rem;font-size:.76rem;color:var(--color-label-secondary);cursor:pointer;margin-right:auto}.feed-item-delete{background:none;border:none;color:var(--color-label-secondary);font-size:1.1rem;line-height:1;width:1.6rem;height:1.6rem;border-radius:8px;cursor:pointer;flex-shrink:0}.feed-item-delete:hover:not(:disabled){color:var(--color-destructive);background:color-mix(in srgb,var(--color-destructive) 12%,transparent)}.task-src{flex-shrink:0;margin-right:.3rem;font-size:.8em;opacity:.85}.session-list{margin:0;padding:0;list-style:none;color:var(--color-label-secondary);font-size:.78rem;display:flex;flex-direction:column;gap:.15rem}.session-list li{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.session-delete{background:none;border:none;color:var(--color-label-secondary);font-size:1rem;line-height:1;cursor:pointer;padding:.1rem .4rem;border-radius:6px;font-family:inherit}.session-delete:hover{color:var(--color-destructive);background:color-mix(in srgb,var(--color-destructive) 12%,transparent)}.session-row-actions{display:flex;align-items:center;flex-shrink:0}.session-area{margin:.25rem 0 .6rem 2.6rem}.manual-session-trigger{background:none;border:none;color:var(--color-label-secondary);font-family:inherit;font-size:.76rem;cursor:pointer;padding:.15rem 0}.manual-session-trigger:hover{color:var(--color-accent)}.session-edit-form,.manual-session-form{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;font-size:.78rem;color:var(--color-label-secondary);padding:.2rem 0}.session-edit-duration{width:3.2rem}.session-edit-time{width:4rem}.session-edit-duration,.session-edit-time{font-family:inherit;background:var(--color-fill);border:1px solid transparent;color:var(--color-label);border-radius:8px;padding:.2rem .4rem;font-size:.78rem}.session-edit-duration:focus,.session-edit-time:focus{outline:none;border-color:var(--color-accent)}.task-edit-form{flex:1;min-width:0;display:flex;align-items:center;gap:.4rem}.task-edit-form input{flex:1;min-width:0;font-family:inherit;background:var(--color-fill-strong);border:1px solid var(--color-accent);color:var(--color-label);border-radius:8px;padding:.3rem .6rem;font-size:.9rem}.task-edit-form input:focus{outline:none}.task-edit-form .btn-icon{width:26px;height:26px;font-size:.8rem;flex-shrink:0}.timer{display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.timer-dial{position:relative;width:220px;height:220px;max-width:100%;display:flex;align-items:center;justify-content:center}.progress-ring{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.progress-ring-track{stroke:var(--color-fill)}.progress-ring-fill{stroke:var(--color-accent);transition:stroke-dashoffset .25s linear}.progress-ring-pulse .progress-ring-fill{animation:ring-pulse 2.2s ease-in-out infinite;transform-origin:center}@keyframes ring-pulse{0%,to{opacity:.35}50%{opacity:1}}.timer-clock{font-size:2.6rem;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.02em;color:var(--color-label)}.timer-phase-label{color:var(--color-label-secondary);font-size:.85rem;min-height:1.2em;word-break:break-word;max-width:260px}.timer-actions{display:flex;justify-content:center}.timer-overrun{margin:0;display:flex;align-items:center;justify-content:space-between;gap:.75rem;text-align:left;width:100%;max-width:320px}.timer-overrun-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;height:100vh;height:100dvh;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:1.25rem;z-index:100;animation:fade-in .15s ease}.sheet{background:var(--color-bg-elevated);border-radius:20px;padding:1.5rem;max-width:min(92vw,420px);width:100%;box-shadow:var(--shadow-sheet);animation:sheet-in .2s cubic-bezier(.2,.8,.2,1);max-height:min(85vh,640px);display:flex;flex-direction:column}.sheet h2{margin:0 0 .5rem;font-size:1.05rem}.sheet p{margin:0 0 1.35rem;color:var(--color-label-secondary);font-size:.88rem;line-height:1.45}.sheet-actions{display:flex;gap:.6rem;justify-content:flex-end}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-in{0%{opacity:0;transform:scale(.94) translateY(8px)}to{opacity:1;transform:none}}.sheet--report{max-width:440px;max-height:min(80vh,640px);display:flex;flex-direction:column}.report-range{display:flex;gap:.75rem;flex-wrap:wrap}.report-range label{display:flex;flex-direction:column;gap:.25rem;font-size:.78rem;color:var(--color-label-secondary)}.report-range input{font-family:inherit;background:var(--color-fill);border:1px solid transparent;color:var(--color-label);border-radius:8px;padding:.3rem .5rem;font-size:.85rem}.report-range input:focus{outline:none;border-color:var(--color-accent)}.report-buttons{display:flex;gap:.6rem;align-items:center;margin-top:1rem}.report-result{margin-top:1rem;overflow-y:auto;min-height:0}.report-total{margin:0 0 .75rem;font-size:.9rem}.report-result h3{margin:1rem 0 .4rem;font-size:.8rem;color:var(--color-label-secondary);font-weight:600}.report-table{width:100%;border-collapse:collapse;font-size:.82rem}.report-table td{padding:.3rem 0;border-bottom:1px solid var(--color-separator)}.report-table td:last-child{text-align:right;white-space:nowrap;padding-left:1rem;color:var(--color-label-secondary);font-variant-numeric:tabular-nums}.sheet--search{max-width:min(94vw,540px);max-height:min(80vh,620px);display:flex;flex-direction:column}.search-input{font-family:inherit;width:100%;background:var(--color-fill);border:1px solid transparent;color:var(--color-label);border-radius:10px;padding:.55rem .7rem;font-size:.95rem}.search-input:focus{outline:none;border-color:var(--color-accent)}.search-empty{margin:1rem 0 0}.search-results{list-style:none;margin:.85rem 0 0;padding:0;overflow-y:auto;min-height:0;display:flex;flex-direction:column;gap:.15rem}.search-result{width:100%;display:flex;flex-direction:column;gap:.15rem;text-align:left;background:none;border:none;border-radius:8px;padding:.45rem .55rem;cursor:pointer;color:inherit;font:inherit}.search-results [aria-selected=true] .search-result{background:var(--color-fill)}.search-result-name{font-size:.9rem;color:var(--color-label)}.search-result-name.is-done{text-decoration:line-through;color:var(--color-label-secondary)}.search-result-meta{font-size:.76rem;color:var(--color-label-secondary)}.sheet--backup{max-width:min(94vw,480px)}.backup-section{margin-top:1rem}.backup-section:first-of-type{margin-top:.25rem}.backup-section h3{margin:0 0 .35rem;font-size:.8rem;font-weight:600;color:var(--color-label-secondary)}.backup-section p{margin:0 0 .7rem}.backup-section code{font-size:.85em;background:var(--color-fill);border-radius:4px;padding:.05rem .3rem}.backup-file{font:inherit;font-size:.82rem;color:var(--color-label-secondary);max-width:100%}.backup-ready{margin:.6rem 0 0;font-size:.82rem;color:var(--color-label)}.sheet--timer{max-width:min(94vw,440px)}.timer-fields{display:flex;flex-direction:column;gap:.55rem;margin:.25rem 0 1rem}.timer-field{display:flex;align-items:center;justify-content:space-between;gap:1rem}.timer-field-label{font-size:.88rem;color:var(--color-label)}.timer-field-hint{color:var(--color-label-secondary);font-size:.78rem}.timer-field input{width:4.5rem;font-family:inherit;font-size:.9rem;text-align:right;background:var(--color-fill);border:1px solid transparent;color:var(--color-label);border-radius:8px;padding:.3rem .5rem}.timer-field input:focus{outline:none;border-color:var(--color-accent)}.timer-field input:disabled{opacity:.5}.timer-note{margin:-.4rem 0 1rem;font-size:.78rem}.timer-toggle{display:flex;align-items:flex-start;gap:.5rem;font-size:.85rem;color:var(--color-label);line-height:1.4;cursor:pointer}.timer-toggle input{margin-top:.15rem;flex-shrink:0;accent-color:var(--color-accent)}.sheet--month{max-width:min(94vw,540px)}.month-scroll{overflow-y:auto;min-height:0}.month-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.month-header h2{margin:0;flex:1;text-align:center;font-size:1rem}.month-grid{display:flex;flex-direction:column;gap:4px}.month-weekdays,.month-week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.month-weekdays span{text-align:center;font-size:.7rem;font-weight:600;color:var(--color-label-secondary);padding-bottom:.2rem}.month-cell{min-height:3.4rem;border-radius:9px;border:1px solid var(--color-separator);display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:4px 5px;font-family:inherit;overflow:hidden}.month-cell--pad{border-color:transparent}.month-cell--day{background:var(--color-bg-elevated);color:var(--color-label);cursor:pointer;transition:background .12s ease}.month-cell--day:hover{background:var(--color-fill)}.month-cell--weekend{background:transparent;opacity:.5}.month-cell-num{font-size:.78rem;font-variant-numeric:tabular-nums;line-height:1.1}.month-cell-num.is-today{background:var(--color-accent);color:var(--color-accent-contrast);border-radius:999px;min-width:1.25rem;text-align:center;padding:.05rem .2rem}.month-cell-meta{display:flex;flex-wrap:wrap;gap:1px 5px;font-size:.64rem;line-height:1.2;color:var(--color-label-secondary);font-variant-numeric:tabular-nums}.month-cell-meta .all-done{color:color-mix(in srgb,var(--color-success) 72%,var(--color-label))}.month-cell-hrs{color:var(--color-accent)}@media (max-width: 480px){.month-cell-meta{font-size:.58rem}}.sheet--heatmap{--hm-size: 13px;--hm-gap: 3px;max-width:min(92vw,760px)}.heatmap-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.1rem}.heatmap-summary{margin:0;font-size:.9rem;color:var(--color-label-secondary)}.heatmap-summary strong{color:var(--color-label)}.segmented{display:inline-flex;background:var(--color-fill);border-radius:8px;padding:2px}.segmented button{border:none;background:none;font:inherit;font-size:.8rem;padding:.3rem .75rem;border-radius:6px;cursor:pointer;color:var(--color-label-secondary)}.segmented button.is-active{background:var(--color-bg-elevated);color:var(--color-label)}.heatmap-scroll{overflow-x:auto;padding-bottom:.4rem}.heatmap-grid{display:grid;grid-template-columns:auto 1fr;column-gap:6px;row-gap:4px;width:max-content}.heatmap-months{grid-row:1;grid-column:2;display:grid;column-gap:var(--hm-gap);height:.95rem;font-size:.65rem;color:var(--color-label-secondary)}.heatmap-months span{grid-row:1}.heatmap-rows{grid-row:2;grid-column:1;display:flex;flex-direction:column;gap:var(--hm-gap);font-size:.6rem;color:var(--color-label-secondary)}.heatmap-rows span{height:var(--hm-size);line-height:var(--hm-size)}.heatmap-cols{grid-row:2;grid-column:2;display:flex;gap:var(--hm-gap)}.heatmap-col{display:flex;flex-direction:column;gap:var(--hm-gap)}.heatmap-cell{width:var(--hm-size);height:var(--hm-size);border-radius:3px;background:var(--color-fill)}.heatmap-cell--empty{background:transparent}.heatmap-cell.l1{background:color-mix(in srgb,var(--color-accent) 28%,var(--color-fill))}.heatmap-cell.l2{background:color-mix(in srgb,var(--color-accent) 52%,var(--color-fill))}.heatmap-cell.l3{background:color-mix(in srgb,var(--color-accent) 76%,var(--color-fill))}.heatmap-cell.l4{background:var(--color-accent)}.heatmap-cell.is-today{box-shadow:0 0 0 1.5px var(--color-label)}.heatmap-legend{display:flex;align-items:center;gap:var(--hm-gap);margin-top:.9rem;font-size:.65rem;color:var(--color-label-secondary)}.heatmap-legend .heatmap-cell{display:inline-block}.heatmap-legend span:first-child{margin-right:4px}.heatmap-legend span:last-child{margin-left:4px}.sheet--analytics{max-width:min(94vw,560px);max-height:min(88vh,760px);display:flex;flex-direction:column}.an-range{margin-bottom:1rem}.an-scroll{overflow-y:auto;min-height:0}.an-body{transition:opacity .15s ease}.an-body[aria-busy=true]{opacity:.55}.an-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:1.25rem}.an-stat{display:flex;flex-direction:column;gap:.15rem;background:var(--color-fill);border-radius:12px;padding:.6rem .5rem;text-align:center}.an-stat-value{font-size:1.05rem;font-weight:700;color:var(--color-label);font-variant-numeric:tabular-nums}.an-stat-label{font-size:.64rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-label-secondary);font-weight:600}.an-section{margin-bottom:1.25rem}.an-section h3{font-size:.82rem;margin:0 0 .55rem;color:var(--color-label)}.an-completion{display:flex;align-items:center;gap:.7rem}.an-completion-track{flex:1;height:.6rem;border-radius:980px;background:var(--color-fill);overflow:hidden}.an-completion-fill{height:100%;background:var(--color-success);border-radius:980px;transition:width .2s ease}.an-completion-text{font-size:.78rem;color:var(--color-label-secondary);white-space:nowrap;font-variant-numeric:tabular-nums}.an-weekday{display:flex;flex-direction:column;gap:.35rem}.an-weekday-row{display:grid;grid-template-columns:2.5rem 1fr 4.5rem;align-items:center;gap:.5rem}.an-weekday-name{font-size:.75rem;color:var(--color-label-secondary);font-weight:600}.an-weekday-track{height:.85rem;background:var(--color-fill);border-radius:6px;overflow:hidden}.an-weekday-fill{height:100%;min-width:2px;background:var(--color-accent);border-radius:6px;transition:width .2s ease}.an-weekday-value{font-size:.72rem;color:var(--color-label-secondary);text-align:right;font-variant-numeric:tabular-nums}.an-weekday-fill.is-over{background:var(--color-destructive)}.an-estimate .an-weekday-row{grid-template-columns:5rem 1fr 4.5rem}.an-estimate-msg{margin:0 0 .7rem;font-size:.88rem;color:var(--color-label)}.an-estimate-hint{margin:.6rem 0 0;font-size:.76rem;color:var(--color-label-secondary)}.an-strip{display:flex;align-items:flex-end;gap:2px;padding:0 .4rem;overflow-x:auto;scrollbar-width:none}.an-strip::-webkit-scrollbar{display:none}.an-strip-col{flex:1 0 .55rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:.55rem}.an-strip-track{width:100%;height:74px;display:flex;align-items:flex-end;background:var(--color-fill);border-radius:4px;overflow:hidden}.an-strip-fill{width:100%;background:var(--color-accent);border-radius:4px 4px 0 0;transition:height .2s ease}.an-strip-fill.is-empty{background:transparent}.an-strip-label{font-size:.6rem;color:var(--color-label-secondary);white-space:nowrap;font-variant-numeric:tabular-nums}.an-strip-label.is-hidden{visibility:hidden}@media (max-width: 480px){.an-stats{grid-template-columns:repeat(2,1fr)}.an-weekday-row{grid-template-columns:2.2rem 1fr 3.6rem}}.wr-weeknav{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:.75rem}.wr-weeknav-label{font-size:.82rem;color:var(--color-label-secondary);font-variant-numeric:tabular-nums;min-width:12rem;text-align:center}.wr-steps{display:flex;width:100%;margin-bottom:1rem}.wr-steps button{flex:1}.wr-body{min-height:8rem}.wr-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;margin-bottom:1.25rem}.wr-stat{display:flex;flex-direction:column;gap:.15rem;background:var(--color-fill);border-radius:12px;padding:.7rem .6rem;text-align:center}.wr-stat-value{font-size:1.15rem;font-weight:700;color:var(--color-label);font-variant-numeric:tabular-nums}.wr-stat-of{font-size:.85rem;font-weight:600;color:var(--color-label-secondary)}.wr-stat-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-label-secondary);font-weight:600;display:flex;gap:.35rem;justify-content:center;align-items:center}.wr-delta{text-transform:none;letter-spacing:0}.wr-delta.is-up{color:var(--color-success)}.wr-delta.is-down{color:var(--color-label-secondary)}.wr-section{margin-bottom:1.25rem}.wr-section h3{font-size:.82rem;margin:0 0 .55rem;color:var(--color-label)}.wr-body .wr-hint{margin:0 0 .75rem;font-size:.78rem;color:var(--color-label-secondary)}.wr-bars{display:flex;flex-direction:column;gap:.35rem}.wr-bar-row{display:grid;grid-template-columns:7rem 1fr 3.2rem;align-items:center;gap:.5rem}.wr-bar-label{font-size:.75rem;color:var(--color-label-secondary);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:.3rem}.wr-bar-dot{width:.5rem;height:.5rem;border-radius:50%;flex-shrink:0;background:var(--tag-solid, var(--color-accent))}.wr-bar-track{height:.85rem;background:var(--color-fill);border-radius:6px;overflow:hidden}.wr-bar-fill{height:100%;min-width:2px;background:var(--color-accent);border-radius:6px;transition:width .2s ease}.wr-bar-value{font-size:.72rem;color:var(--color-label-secondary);text-align:right;font-variant-numeric:tabular-nums}.wr-pending{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.wr-pending-item{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;background:var(--color-fill);border-radius:12px;padding:.55rem .7rem}.wr-pending-main{flex:1 1 10rem;min-width:0;display:flex;flex-direction:column;gap:.1rem}.wr-pending-name{font-size:.88rem;color:var(--color-label);overflow-wrap:break-word}.wr-pending-meta{font-size:.7rem;color:var(--color-label-secondary);font-variant-numeric:tabular-nums}.wr-pending-actions{display:flex;gap:.3rem;flex-wrap:wrap}.wr-body .wr-prevfocus{margin:0 0 .9rem;font-size:.8rem;color:var(--color-label);background:var(--color-fill);border-radius:10px;padding:.55rem .7rem;line-height:1.45}.wr-prevfocus-label{color:var(--color-label-secondary);font-weight:600}.wr-focus-label{display:block;font-size:.78rem;color:var(--color-label-secondary);font-weight:600;margin-bottom:.4rem}.wr-focus-input{width:100%;margin:0}.wr-actions{flex-wrap:wrap}@media (max-width: 480px){.wr-bar-row{grid-template-columns:5.5rem 1fr 2.8rem}.wr-weeknav-label{min-width:0;flex:1}}.shortcuts-hint{text-align:center;padding:1.75rem 1rem calc(1rem + env(safe-area-inset-bottom));color:var(--color-label-secondary);font-size:.76rem}kbd{background:var(--color-fill);border:1px solid var(--color-separator);border-radius:5px;padding:.08rem .4rem;font-family:inherit;font-size:.74rem}.app-footer{text-align:center;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom));color:var(--color-label-secondary);font-size:.72rem;opacity:.7}.icon-spin{animation:icon-spin .9s linear infinite}@keyframes icon-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{display:inline-block;width:10px;height:10px;margin-left:.4rem;border:1.5px solid var(--color-separator);border-top-color:var(--color-accent);border-radius:50%;animation:icon-spin .7s linear infinite;vertical-align:middle}.sheet--timeline{max-width:min(94vw,760px);max-height:min(90vh,760px);display:flex;flex-direction:column}.timeline-content{overflow-y:auto;min-height:0}.timeline-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem;flex-wrap:wrap}.timeline-header h2{margin:0}.timeline-day-nav{display:flex;align-items:center;gap:.4rem}.timeline-day-nav .btn-icon{width:28px;height:28px;font-size:1rem;line-height:1}.timeline-day-label{font-size:.85rem;font-weight:600;color:var(--color-label);min-width:6.5rem;text-align:center}.timeline-legend{display:flex;gap:1rem;font-size:.72rem;color:var(--color-label-secondary);margin-bottom:.65rem}.timeline-swatch{display:inline-block;width:.6rem;height:.6rem;border-radius:3px;margin-right:.3rem;vertical-align:middle}.timeline-swatch--planned{background:var(--color-accent)}.timeline-swatch--actual{background:var(--color-label-secondary)}.timeline-unscheduled{margin-bottom:.75rem}.timeline-unscheduled-label{display:block;font-size:.66rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-label-secondary);font-weight:600;margin-bottom:.35rem}.timeline-unscheduled-list{display:flex;gap:.4rem;flex-wrap:wrap}.timeline-chip{border:1px solid var(--color-separator);background:var(--color-fill);color:var(--color-label);border-radius:980px;padding:.25rem .7rem;font-size:.78rem;font-family:inherit;cursor:grab;touch-action:none}.timeline-chip.is-dragging{opacity:.4}.timeline-chip[data-priority=high]{box-shadow:inset 0 0 0 1px var(--color-destructive)}.timeline-chip[data-priority=med]{box-shadow:inset 0 0 0 1px var(--color-accent)}.timeline-scroll{max-height:min(56vh,520px);overflow-y:auto;border:1px solid var(--color-separator);border-radius:12px}.timeline-body{display:flex;position:relative}.timeline-hours{position:relative;width:3rem;flex-shrink:0;border-right:1px solid var(--color-separator)}.timeline-hour-label{position:absolute;right:.4rem;transform:translateY(-50%);font-size:.64rem;color:var(--color-label-secondary);font-variant-numeric:tabular-nums}.timeline-lanes{position:relative;flex:1;display:flex}.timeline-lane{position:relative}.timeline-lane--planned{flex:2;border-right:1px dashed var(--color-separator);touch-action:pan-y}.timeline-lane--actual{flex:1}.timeline-lane--planned.is-drop-hot{background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.timeline-now-line{position:absolute;left:0;right:0;border-top:2px solid var(--color-destructive);z-index:5;pointer-events:none}.timeline-now-dot{position:absolute;left:-4px;top:-5px;width:8px;height:8px;border-radius:50%;background:var(--color-destructive)}.timeline-block{position:absolute;border-radius:8px;background:color-mix(in srgb,var(--color-accent) 16%,var(--color-bg-elevated));border:1px solid color-mix(in srgb,var(--color-accent) 45%,transparent);padding:.2rem .4rem;overflow:hidden;cursor:grab;touch-action:none;display:flex;flex-direction:column;gap:.05rem;text-align:left}.timeline-block.is-dragging{opacity:.8;box-shadow:var(--shadow-sheet);z-index:10;cursor:grabbing}.timeline-block.is-expanded{outline:2px solid var(--color-accent);outline-offset:-1px}.timeline-block[data-priority=high]{box-shadow:inset 3px 0 0 var(--color-destructive)}.timeline-block[data-priority=med]{box-shadow:inset 3px 0 0 var(--color-accent)}.timeline-block[data-priority=low]{box-shadow:inset 3px 0 0 var(--color-label-secondary)}.timeline-block-time{font-size:.6rem;color:var(--color-label-secondary);font-variant-numeric:tabular-nums;flex-shrink:0}.timeline-block-name{font-size:.72rem;font-weight:600;color:var(--color-label);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-resize-handle{position:absolute;left:0;right:0;bottom:0;height:8px;cursor:ns-resize;touch-action:none}.timeline-session-bar{position:absolute;border-radius:6px;background:color-mix(in srgb,var(--color-label-secondary) 22%,transparent);border:1px solid color-mix(in srgb,var(--color-label-secondary) 45%,transparent);font-size:.6rem;color:var(--color-label-secondary);padding:.1rem .3rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.timeline-ghost{position:fixed;top:0;left:0;background:var(--color-accent);color:var(--color-accent-contrast);padding:.3rem .7rem;border-radius:980px;font-size:.78rem;pointer-events:none;z-index:200;box-shadow:var(--shadow-sheet)}.timeline-ghost.is-over{outline:2px solid var(--color-accent-contrast)}.timeline-details{margin-top:.85rem;border-top:1px solid var(--color-separator);padding-top:.75rem}.timeline-details-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}.sheet--contexts{max-width:min(94vw,560px)}.context-new-form{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1rem}.context-new-form input{flex:1 1 10rem;min-width:0;font-family:inherit;background:var(--color-fill);border:1px solid transparent;color:var(--color-label);border-radius:980px;padding:.4rem .8rem;font-size:.85rem}.context-new-form input:focus{outline:none;border-color:var(--color-accent)}.context-type-toggle .segment{padding:.35rem .75rem;font-size:.78rem}.context-manage-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.context-manage-item{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding-bottom:.6rem;border-bottom:1px solid var(--color-separator)}.context-manage-item:last-child{border-bottom:none;padding-bottom:0}.context-manage-name{flex:1 1 6rem;min-width:0;text-align:left;background:none;border:none;font-family:inherit;font-size:.9rem;color:var(--color-label);cursor:pointer;padding:.2rem 0}.context-rename-input{flex:1 1 6rem;min-width:0;font-family:inherit;font-size:.9rem;background:var(--color-bg-elevated);border:1px solid var(--color-accent);color:var(--color-label);border-radius:8px;padding:.2rem .5rem;outline:none}.context-manage-delete{background:none;border:none;color:var(--color-label-secondary);font-size:1.1rem;line-height:1;width:1.7rem;height:1.7rem;border-radius:8px;cursor:pointer;flex-shrink:0}.context-manage-delete:hover:not(:disabled){color:var(--color-destructive);background:color-mix(in srgb,var(--color-destructive) 12%,transparent)}.habits-view{margin:1rem 1.25rem}.habit-new-form{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1.1rem}.habit-new-form input{flex:1 1 10rem;min-width:0;font-family:inherit;background:var(--color-fill);border:1px solid transparent;color:var(--color-label);border-radius:980px;padding:.4rem .8rem;font-size:.85rem}.habit-new-form input:focus{outline:none;border-color:var(--color-accent)}.habit-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.9rem}.habit-row{padding-bottom:.9rem;border-bottom:1px solid var(--color-separator)}.habit-row:last-child{border-bottom:none;padding-bottom:0}.habit-row-head{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.5rem}.habit-dot{width:.7rem;height:.7rem;border-radius:50%;background:var(--tag-solid);flex-shrink:0}.habit-name{font-size:.92rem;font-weight:500;color:var(--color-label)}.habit-streaks{display:inline-flex;gap:.4rem;margin-left:auto}.habit-streak{font-size:.78rem;color:var(--color-label-secondary);white-space:nowrap}.habit-archive,.habit-unarchive{background:none;border:none;color:var(--color-label-secondary);font-size:.78rem;cursor:pointer;padding:.2rem .4rem}.habit-archive:hover:not(:disabled),.habit-unarchive:hover:not(:disabled){color:var(--color-label)}.habit-delete{background:none;border:none;color:var(--color-label-secondary);font-size:1.1rem;line-height:1;width:1.7rem;height:1.7rem;border-radius:8px;cursor:pointer;flex-shrink:0}.habit-delete:hover:not(:disabled){color:var(--color-destructive);background:color-mix(in srgb,var(--color-destructive) 12%,transparent)}.habit-week{display:grid;grid-template-columns:repeat(7,1fr);gap:.35rem;max-width:24rem}.habit-day{aspect-ratio:1;border-radius:8px;border:1px solid var(--color-separator);background:var(--color-fill);color:var(--color-label-secondary);font-size:.78rem;font-family:inherit;cursor:pointer}.habit-day[data-today]{border-color:var(--color-accent)}.habit-day.is-done{background:var(--tag-solid);color:var(--tag-fg);border-color:transparent}.habit-day:disabled{opacity:.6;cursor:not-allowed}.habit-archived{margin-top:1rem;border-top:1px solid var(--color-separator);padding-top:.75rem}.habit-list--archived{margin-top:.6rem;opacity:.7}.habit-row--archived .habit-row-head{margin-bottom:0}:root{--nav-bp: 860px;--bottom-nav-h: 58px;--side-nav-w: 232px}@media (max-width: 860px){.sheet-backdrop{align-items:flex-end;padding:0}.sheet{width:100%;max-width:100%!important;max-height:min(88vh,760px)!important;max-height:min(88dvh,760px)!important;border-radius:20px 20px 0 0;padding:.6rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom));animation:sheet-slide-up .24s cubic-bezier(.2,.8,.2,1)}.sheet:before{content:"";flex-shrink:0;width:36px;height:4px;margin:.15rem auto .85rem;border-radius:999px;background:var(--color-fill-strong)}.file-tabs{padding-top:.9rem}.day-tabs{margin:0 -1.5rem;padding:.15rem 1.5rem;-webkit-mask-image:linear-gradient(to right,transparent,black 1.1rem,black calc(100% - 1.1rem),transparent);mask-image:linear-gradient(to right,transparent,black 1.1rem,black calc(100% - 1.1rem),transparent)}}@keyframes sheet-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:none}}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;align-items:stretch;justify-content:space-around;height:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);background:color-mix(in srgb,var(--color-bg-elevated) 92%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--color-separator)}.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;border:none;background:none;font-family:inherit;color:var(--color-label-secondary);cursor:pointer;padding:.3rem .25rem}.nav-item svg{width:22px;height:22px}.nav-item span{font-size:.66rem;font-weight:500}.nav-item.active{color:var(--color-accent)}.nav-item.active span{font-weight:700}.nav-fab-slot{flex:1;display:flex;align-items:flex-start;justify-content:center}.fab{width:52px;height:52px;margin-top:-22px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;background:var(--color-accent);color:var(--color-accent-contrast);box-shadow:var(--shadow-sheet);cursor:pointer}.fab svg{width:24px;height:24px}.fab:active{transform:scale(.94)}.fab-desktop{display:inline-flex;align-items:center;gap:.4rem;width:auto;height:auto;margin:1rem 0 0;padding:.6rem 1rem;border-radius:12px;font:inherit;font-size:.86rem;font-weight:600}.fab-desktop svg{width:18px;height:18px}.side-nav,.desktop-search-float{display:none}@media (min-width: 861px){.bottom-nav,.fab{display:none}.side-nav{position:fixed;left:0;top:0;bottom:0;width:var(--side-nav-w);z-index:60;display:flex;flex-direction:column;padding:calc(1.1rem + env(safe-area-inset-top)) .9rem 1rem;padding-left:calc(.9rem + env(safe-area-inset-left));border-right:1px solid var(--color-separator);background:var(--color-bg-elevated)}.side-nav-brand{color:var(--color-accent);font-size:1.2rem;font-weight:800;padding:0 .5rem;margin:0 0 1.4rem}.side-nav-items{display:flex;flex-direction:column;gap:.15rem}.side-nav-item{display:flex;align-items:center;gap:.7rem;border:none;background:none;font-family:inherit;font-size:.9rem;font-weight:500;color:var(--color-label-secondary);padding:.6rem .7rem;border-radius:10px;cursor:pointer;text-align:left}.side-nav-item svg{width:19px;height:19px;flex-shrink:0}.side-nav-item:hover{background:var(--color-fill);color:var(--color-label)}.side-nav-item.active{background:color-mix(in srgb,var(--color-accent) 14%,transparent);color:var(--color-accent);font-weight:700}.side-nav-footer{margin-top:1.5rem;padding-top:.85rem;border-top:1px solid var(--color-separator);display:flex;flex-direction:column;gap:.25rem}.app{max-width:none;margin:0;padding-left:calc(var(--side-nav-w) + env(safe-area-inset-left))}.app-header{display:none}.app-footer{padding-left:1.5rem}.app-tab-body{max-width:1100px;margin:0 auto;padding-top:1.9rem}.desktop-search-float{display:inline-flex;position:fixed;top:1.75rem;right:1.75rem;z-index:65;box-shadow:var(--shadow-sheet)}}@media (max-width: 860px){.app{padding-bottom:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom) + .75rem)}}.app--focus .bottom-nav,.app--focus .side-nav,.app--focus .desktop-search-float{display:none}.settings-section{margin:0 0 1.5rem}.settings-section-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-label-secondary);margin:0 0 .4rem}.settings-list{background:var(--color-bg-elevated);border-radius:14px;overflow:hidden}.settings-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:none;background:none;font-family:inherit;font-size:.92rem;color:var(--color-label);text-align:left;padding:.8rem 1rem;cursor:pointer}.settings-row+.settings-row{border-top:1px solid var(--color-separator)}.settings-row:disabled{opacity:.5;cursor:not-allowed}.settings-row--danger{color:var(--color-destructive)}.settings-row-state{color:var(--color-label-secondary);font-size:.86rem}.settings-user{padding:.4rem 0 1rem;color:var(--color-label-secondary);font-size:.82rem}.timeline-embedded{padding:1.25rem 1.5rem 1.5rem;display:flex;flex-direction:column}.timeline-inner{display:flex;flex-direction:column}.stats-tab{padding:1.25rem 1.5rem 1.5rem}.stats-tab-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 1rem}.stats-tab-header h2{margin:0}.stats-tabs{margin:0 0 1.1rem;overflow-x:auto}.analytics-embedded,.report-embedded,.heatmap-embedded,.wr-embedded{display:contents}.analytics-inner,.report-inner,.heatmap-inner,.wr-inner{display:flex;flex-direction:column}.quick-add-form{display:flex;flex-direction:column;gap:.75rem}.quick-add-form input{font-size:1rem}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
