:root{--font-ui: "Geist", Helvetica, Arial, sans-serif;--font-mono: "Geist Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--radius-xs: 5px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--radius-xl: 14px;--radius-2xl: 18px;--radius-3xl: 20px;--touch-target: 44px;--bg: #0e1113;--surface: #16191c;--elevated: #1d2126;--line: #262b30;--line-subtle: #1b1f23;--line-elevated: #2e343a;--text: #e8ecef;--text-secondary: #b9c1c7;--text-tertiary: #6d767d;--muted: #8a949b;--accent: #56aecb;--accent-contrast: #0e1113;--warn: #e0a03c;--danger: #e5654f;--danger-soft-bg: rgba(229, 101, 79, .16);--danger-soft-border: rgba(229, 101, 79, .4);--success-dot: #2e9e6b;--drag-handle-idle: #3a4147;--section-header-bg: #121518;--search-highlight: color-mix(in srgb, var(--accent) 22%, transparent);--offline-banner-bg: rgba(224, 160, 60, .12);--offline-banner-border: rgba(224, 160, 60, .3);--error-bg: rgba(229, 101, 79, .1);--error-border: rgba(229, 101, 79, .35);--focus-ring: color-mix(in srgb, var(--accent) 20%, transparent);--p1: #e5654f;--p1-soft-bg: rgba(229, 101, 79, .16);--p2: #e0a03c;--p3: #6fa8e5;--p4: #7c868d;--shadow-card: 0 2px 4px rgba(0, 0, 0, .2), 0 8px 24px -8px rgba(0, 0, 0, .4);--shadow-fab: 0 8px 22px -6px color-mix(in srgb, var(--accent) 60%, transparent);--shadow-toast: 0 14px 30px -12px rgba(0, 0, 0, .6);--shadow-drag: 0 8px 20px -8px rgba(0, 0, 0, .4);--logo-bg: #eceef0;--logo-mark: #0e1113;--logo-edge: transparent;color-scheme:dark}:root[data-theme=light]{--bg: #f7f8f9;--surface: #ffffff;--elevated: #ffffff;--logo-edge: rgba(14, 17, 19, .12);--line: #e3e7ea;--line-subtle: #e3e7ea;--line-elevated: #c9d0d5;--text: #12171a;--text-secondary: #4e565c;--text-tertiary: #9aa3a9;--muted: #626c73;--accent: #1e7e9e;--accent-contrast: #ffffff;--warn: #9a6a12;--danger: #c64430;--danger-soft-bg: #fbece9;--danger-soft-border: #e7c0b7;--success-dot: #2e9e6b;--drag-handle-idle: #c9d0d5;--section-header-bg: #f1f4f6;--search-highlight: color-mix(in srgb, var(--accent) 20%, transparent);--offline-banner-bg: rgba(154, 106, 18, .08);--offline-banner-border: rgba(154, 106, 18, .25);--error-bg: rgba(198, 68, 48, .06);--error-border: rgba(198, 68, 48, .25);--focus-ring: color-mix(in srgb, var(--accent) 28%, transparent);--p1: #c64430;--p1-soft-bg: #fbece9;--p2: #9a6a12;--p3: #2f6bb0;--p4: #6a747a;--shadow-card: 0 2px 4px rgba(18, 23, 26, .06), 0 8px 24px -8px rgba(18, 23, 26, .14);--shadow-fab: 0 8px 22px -6px color-mix(in srgb, var(--accent) 40%, transparent);--shadow-toast: 0 14px 30px -12px rgba(18, 23, 26, .35);--shadow-drag: 0 8px 20px -8px rgba(18, 23, 26, .28);color-scheme:light}:root[data-accent=blue]{--accent: #6d9eeb}:root[data-theme=light][data-accent=blue]{--accent: #2f6bb0}:root[data-accent=violet]{--accent: #a78bfa}:root[data-theme=light][data-accent=violet]{--accent: #6d4bd8}:root[data-accent=green]{--accent: #4fb383}:root[data-theme=light][data-accent=green]{--accent: #2e8f5f}:root[data-accent=amber]{--accent: #e0a03c}:root[data-theme=light][data-accent=amber]{--accent: #a56a12}:root[data-accent=rose]{--accent: #f0708f}:root[data-theme=light][data-accent=rose]{--accent: #c6486a}:root[data-accent=orange]{--accent: #e2793c}:root[data-theme=light][data-accent=orange]{--accent: #b3540f}:root[data-accent=cyan]{--accent: #4fc4d9}:root[data-theme=light][data-accent=cyan]{--accent: #146e82}:root[data-accent=magenta]{--accent: #d968c9}:root[data-theme=light][data-accent=magenta]{--accent: #9c3f92}:root[data-accent=slate]{--accent: #a3b1bc}:root[data-theme=light][data-accent=slate]{--accent: #42505a}:root[data-bg=teal]{--bg-tint: #56aecb}:root[data-bg=blue]{--bg-tint: #6d9eeb}:root[data-bg=violet]{--bg-tint: #a78bfa}:root[data-bg=green]{--bg-tint: #4fb383}:root[data-bg=amber]{--bg-tint: #e0a03c}:root[data-bg=rose]{--bg-tint: #f0708f}:root[data-bg=orange]{--bg-tint: #e2793c}:root[data-bg=cyan]{--bg-tint: #4fc4d9}:root[data-bg=magenta]{--bg-tint: #d968c9}:root[data-bg=slate]{--bg-tint: #a3b1bc}:root[data-bg]:not([data-bg=none]){--bg: color-mix(in srgb, var(--bg-tint) 11%, #0e1113);--surface: color-mix(in srgb, var(--bg-tint) 10%, #16191c);--elevated: color-mix(in srgb, var(--bg-tint) 12%, #1d2126);--line: color-mix(in srgb, var(--bg-tint) 14%, #262b30);--line-subtle: color-mix(in srgb, var(--bg-tint) 12%, #1b1f23);--line-elevated: color-mix(in srgb, var(--bg-tint) 16%, #2e343a);--section-header-bg: color-mix(in srgb, var(--bg-tint) 9%, #121518)}:root[data-theme=light][data-bg]:not([data-bg=none]){--bg: color-mix(in srgb, var(--bg-tint) 11%, #f7f8f9);--surface: color-mix(in srgb, var(--bg-tint) 5%, #ffffff);--elevated: color-mix(in srgb, var(--bg-tint) 5%, #ffffff);--line: color-mix(in srgb, var(--bg-tint) 16%, #e3e7ea);--line-subtle: color-mix(in srgb, var(--bg-tint) 14%, #e3e7ea);--line-elevated: color-mix(in srgb, var(--bg-tint) 20%, #c9d0d5);--section-header-bg: color-mix(in srgb, var(--bg-tint) 12%, #f1f4f6)}@keyframes shimmer{0%,to{opacity:.35}50%{opacity:.75}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;animation-delay:0ms!important;transition-delay:0ms!important}}*{box-sizing:border-box}html,body,#root{height:100%}html,body{overflow-x:hidden;overscroll-behavior-x:none}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;transition:background-color .15s ease,color .15s ease}#root{display:flex;flex-direction:column}a{color:var(--accent);text-decoration:none}button,input,textarea{font-family:inherit;color:inherit}@media (pointer: coarse){input,textarea,select,.hl-input__mirror{font-size:16px!important}}button{cursor:pointer;background:none;border:none}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.mono{font-family:var(--font-mono)}.label-mono{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--line);border-radius:8px}.mobile-shell{display:flex;flex-direction:column;min-height:100dvh;width:100%}.mobile-shell__main{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;padding-bottom:12px}.mobile-topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px max(20px,env(safe-area-inset-right)) 10px max(20px,env(safe-area-inset-left));padding-top:calc(10px + env(safe-area-inset-top));background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.mobile-topbar__brand{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;letter-spacing:-.01em}.mobile-topbar__logo{width:24px;height:24px;border-radius:7px;background:var(--logo-bg);color:var(--logo-mark);box-shadow:inset 0 0 0 1px var(--logo-edge);display:grid;place-items:center;flex-shrink:0}.mobile-topbar__menu-wrap{position:relative}.mobile-topbar__btn{width:36px;height:36px;border-radius:var(--radius-md);color:var(--muted);font-size:18px;display:grid;place-items:center}.desktop-shell{display:flex;height:100dvh;overflow:hidden}.desktop-shell__content{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.desktop-shell__main{flex:1;min-width:0;overflow-y:auto;scrollbar-gutter:stable}.screen{padding:20px max(20px,env(safe-area-inset-right)) 40px max(20px,env(safe-area-inset-left));display:flex;flex-direction:column;gap:16px;width:100%;max-width:840px;margin:0 auto}.screen--wide{max-width:1400px}@media (min-width: 768px){.screen{padding:28px 32px 56px}}.screen__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.screen__heading{min-width:0}.screen__title-row{display:flex;align-items:center;gap:10px}.screen__title{margin:0;font-size:22px;font-weight:600;letter-spacing:-.02em;overflow-wrap:anywhere}@media (min-width: 768px){.screen__title{font-size:28px}}.screen__subtitle{margin:4px 0 0;font-size:13px;color:var(--muted)}.screen__header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.screen__filters{display:flex;flex-wrap:wrap;gap:8px}.screen__list{display:flex;flex-direction:column;gap:24px}.task-section{display:flex;flex-direction:column}.section-label{margin:0;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.section-header{display:flex;align-items:center;gap:8px;padding:6px 0 8px;font-size:13px;font-weight:600;color:var(--text);border-bottom:1px solid var(--line);margin-bottom:2px}.section-header--danger{color:var(--danger)}.section-header__count{color:var(--text-tertiary);font-weight:400;font-family:var(--font-mono);font-size:11px}.accent-picker{display:flex;gap:8px;flex-wrap:wrap}.accent-swatch{width:26px;height:26px;border-radius:50%;border:2px solid transparent;box-shadow:0 0 0 1px var(--line-elevated) inset;cursor:pointer;padding:0;transition:transform .12s ease,border-color .12s ease}.accent-swatch:hover{transform:scale(1.08)}.accent-swatch--neutral{background:var(--bg);position:relative;overflow:hidden}.accent-swatch--neutral:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom right,transparent calc(50% - 1px),var(--muted) calc(50% - 1px),var(--muted) calc(50% + 1px),transparent calc(50% + 1px))}.accent-swatch--active{border-color:var(--text);box-shadow:0 0 0 2px var(--bg) inset}.section-header__delete{margin-left:auto;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-tertiary);border-radius:var(--radius-sm);font-size:12px;cursor:pointer;opacity:0;transition:opacity .12s ease,color .12s ease,background .12s ease}.section-header:hover .section-header__delete,.section-header__delete:focus-visible{opacity:1}.section-header__delete:hover{color:var(--danger);background:var(--danger-soft-bg)}@media (hover: none){.section-header__delete{opacity:1}}.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.task-row{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line-subtle);min-width:0}.task-row--completed{opacity:.55}.task-row--leaving{pointer-events:none;flex-wrap:nowrap}.task-row__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;text-align:left;padding:0;background:none;border:none;cursor:pointer;border-radius:var(--radius-sm)}.task-row__body--static{cursor:default}.task-row__title{font-size:15px;line-height:1.35;color:var(--text);overflow-wrap:anywhere}.task-row--completed .task-row__title{text-decoration:line-through;color:var(--text-secondary)}.task-row__description{font-size:13px;line-height:1.4;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-row__highlight{background:var(--search-highlight);color:inherit;border-radius:3px;padding:0 1px}.task-row__meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:12px;margin-top:1px}.task-row__meta-item--muted{color:var(--muted)}.task-row__meta-item--icon{display:inline-flex;align-items:center;gap:4px}.task-row__meta-item--accent{color:var(--accent)}.task-row__meta-item--danger{color:var(--danger);font-weight:500}.task-row__actions{display:flex;align-items:center;gap:2px;align-self:center;flex-shrink:0;opacity:0;transition:opacity .12s ease}.task-row:hover .task-row__actions,.task-row:focus-within .task-row__actions,.task-row__actions--open{opacity:1}@media (hover: none){.task-row__actions{opacity:1}}.task-row__action{width:30px;height:30px;border-radius:var(--radius-sm);display:grid;place-items:center;color:var(--muted);flex-shrink:0}.task-row__action:hover{background:var(--surface);color:var(--text)}.task-row__action--danger:hover{background:var(--error-bg);color:var(--danger)}.task-row__drag{color:var(--drag-handle-idle);font-size:14px;cursor:grab;user-select:none;-webkit-user-select:none}.task-row__drag:active{cursor:grabbing}body.is-sorting{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;cursor:grabbing}.sortable--active{cursor:grabbing}.sortable--active .task-row__body,.sortable--active .checkbox{pointer-events:none}.task-row--dragging{background:var(--surface);border-radius:var(--radius-md);border-bottom-color:transparent;box-shadow:0 10px 24px -8px #00000080,0 2px 6px #00000040;position:relative;z-index:20;scale:1.015;transition:scale .16s cubic-bezier(.2,0,0,1),box-shadow .16s ease;will-change:transform}.sortable [data-sortable-id]{will-change:transform}@media (prefers-reduced-motion: reduce){.task-row--dragging{scale:1;transition:none}}.task-row--dragging .task-row__actions{opacity:1}.task-row--dragging .task-row__drag{color:var(--accent)}.task-row__reopen{align-self:center;color:var(--accent);font-size:12px;font-weight:500;flex-shrink:0;padding:4px 6px;border-radius:var(--radius-sm)}.checkbox{position:relative;flex-shrink:0;margin-top:2px;border-radius:50%;border:2px solid;padding:0;display:grid;place-items:center;box-sizing:border-box;transition:background-color .14s ease,transform .12s ease}.checkbox:after{content:"";position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px;border-radius:50%}.checkbox:active{transform:scale(.9)}.checkbox svg{width:78%;height:78%;opacity:0;transform:scale(.6);transition:opacity .12s ease,transform .12s ease;pointer-events:none}.checkbox--checked svg{opacity:1;transform:scale(1)}.inline-editor{display:flex;flex-direction:column;gap:12px;padding:14px;margin:4px 0;background:var(--surface);border:1px solid var(--line-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.inline-editor--nested{background:var(--elevated);box-shadow:none}.inline-editor__main{display:flex;flex-direction:column;gap:4px}.inline-editor__title,.inline-editor__description{width:100%;border:none;background:transparent;resize:none;padding:0;font-family:inherit;overflow:hidden;field-sizing:content}.inline-editor__title{font-size:16px;font-weight:500;line-height:1.35;min-height:22px}.inline-editor__description{font-size:13px;line-height:1.45;color:var(--muted);min-height:19px}.inline-editor__title:focus-visible,.inline-editor__description:focus-visible{outline:none;box-shadow:none}.inline-editor__chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ie-chip{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--line-elevated);background:var(--bg);color:var(--muted);font-size:12px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.ie-chip:hover{border-color:var(--accent);color:var(--text)}.ie-chip--accent{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.ie-chip--select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;padding-right:24px;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 13px) 12px,calc(100% - 9px) 12px;background-size:4px 4px,4px 4px;background-repeat:no-repeat}.ie-chip:disabled{cursor:not-allowed;opacity:.5}.ie-chip:disabled:hover{border-color:var(--line-elevated);color:var(--muted)}.quick-add__reminder{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ie-menu-wrap{position:relative}.ie-menu,.dropdown{position:absolute;top:calc(100% + 8px);left:0;z-index:50;min-width:208px;max-width:min(280px,calc(100vw - 32px));max-height:280px;overflow-y:auto;padding:6px;display:flex;flex-direction:column;gap:2px;background:color-mix(in srgb,var(--elevated) 97%,transparent);backdrop-filter:blur(24px) saturate(1.3);-webkit-backdrop-filter:blur(24px) saturate(1.3);border:1px solid var(--line-elevated);border-radius:var(--radius-2xl);box-shadow:var(--shadow-card);transform-origin:top right;animation:menu-in .18s cubic-bezier(.22,1,.36,1) both}@keyframes menu-in{0%{opacity:0;transform:scale(.94) translateY(-6px)}}.dropdown--up{transform-origin:bottom right}.dropdown--up{animation-name:menu-in-up}@keyframes menu-in-up{0%{opacity:0;transform:scale(.94) translateY(6px)}}@media (prefers-reduced-motion: reduce){.ie-menu,.dropdown{animation:none}}.icon-btn--open,.mobile-topbar__btn--open{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}.dropdown__header{display:flex;flex-direction:column;gap:1px;padding:8px 12px 10px;margin-bottom:2px;border-bottom:1px solid var(--line-subtle)}.dropdown__header-label{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary)}.dropdown__header-value{font-size:13px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ie-menu--floating{position:fixed;top:auto;left:auto;z-index:200;max-width:min(320px,calc(100vw - 16px))}.ie-menu__aside{margin-left:auto;padding-left:12px;flex-shrink:0;color:var(--text-tertiary);font-family:var(--font-mono);font-size:11px}.dropdown--floating{position:fixed;top:auto;left:auto;z-index:200}.dropdown--end,.ie-menu--end{left:auto;right:0}.dropdown--up{top:auto;bottom:calc(100% + 6px);left:auto;right:0}.ie-menu button,.dropdown button{display:flex;align-items:center;gap:10px;min-height:40px;padding:9px 12px;border-radius:var(--radius-xl);font-size:14px;text-align:left;color:var(--text);width:100%;transition:background-color .12s ease,color .12s ease}.ie-menu button:hover,.dropdown button:hover,.dropdown button:focus-visible{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.ie-menu button:active,.dropdown button:active{transform:scale(.985)}.dropdown button svg{color:var(--muted);flex-shrink:0;transition:color .12s ease}.dropdown button:hover svg,.dropdown button:focus-visible svg{color:inherit}.dropdown button.dropdown__danger{color:var(--danger)}.dropdown button.dropdown__danger:hover,.dropdown button.dropdown__danger:focus-visible{background:var(--danger-soft-bg);color:var(--danger)}.dropdown button.dropdown__danger svg{color:color-mix(in srgb,var(--danger) 72%,transparent)}.dropdown button.dropdown__danger:hover svg,.dropdown button.dropdown__danger:focus-visible svg{color:var(--danger)}.ie-menu__dot{width:12px;height:12px;border-radius:50%;border:2px solid currentColor;flex-shrink:0}.ie-menu__check{width:14px;color:var(--accent);flex-shrink:0}.ie-menu__create{color:var(--accent);border-top:1px solid var(--line);margin-top:4px;padding-top:10px}.inline-editor__extras-toggle{align-self:flex-start;font-size:12px;color:var(--muted);padding:2px 0}.inline-editor__extras-toggle:hover{color:var(--accent)}.inline-editor__extras{display:flex;flex-direction:column;gap:14px;padding-top:4px;border-top:1px solid var(--line)}.inline-editor__extras-block{display:flex;flex-direction:column;gap:6px}.inline-editor__extras-input{width:100%;padding:8px 10px;font-size:13px;border-radius:var(--radius-sm);border:1px dashed var(--line-elevated);background:transparent;color:var(--text)}.inline-editor__extras-input::placeholder{color:var(--muted)}.inline-subtask{display:flex;align-items:center;gap:8px;font-size:13px;padding:2px 0}.inline-subtask__drag{color:var(--drag-handle-idle);font-size:13px;cursor:grab;user-select:none;-webkit-user-select:none;flex-shrink:0;width:16px;display:grid;place-items:center}.inline-subtask__drag:active{cursor:grabbing}.inline-subtask__drag--disabled{opacity:.3;cursor:default}.inline-subtask--dragging{background:var(--surface);border-radius:var(--radius-sm);position:relative;z-index:20;box-shadow:0 6px 16px -6px #00000080}@media (prefers-reduced-motion: reduce){.inline-subtask--dragging{box-shadow:none}}.inline-subtask--dragging .inline-subtask__drag{color:var(--accent)}.sortable--active .inline-subtask__title,.sortable--active .inline-subtask__remove{pointer-events:none}.inline-subtask__title{flex:1;min-width:0;overflow-wrap:anywhere;text-align:left;border:none;background:transparent;padding:0;color:inherit;font:inherit;cursor:pointer;display:flex;align-items:baseline;gap:6px}.inline-subtask__title:hover{color:var(--accent)}.inline-subtask__count{font-size:10px;font-family:var(--font-mono);color:var(--text-tertiary);flex-shrink:0}.inline-subtask--done .inline-subtask__title{text-decoration:line-through;color:var(--muted)}.inline-subtask__nested{margin:4px 0 4px 14px;padding-left:12px;border-left:2px solid var(--line)}.inline-subtask__remove{color:var(--muted);font-size:11px;padding:4px;flex-shrink:0}.inline-subtask__remove:hover{color:var(--danger)}.inline-note{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px;display:flex;flex-direction:column;gap:4px}.inline-note p{margin:0;font-size:13px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.inline-note__footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.inline-note__time{font-size:10px;color:var(--text-tertiary)}.inline-note__actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.inline-note__edit-btn,.inline-note__remove{color:var(--muted);font-size:11px;padding:4px;flex-shrink:0}.inline-note__edit-btn:hover{color:var(--accent)}.inline-note__remove:hover{color:var(--danger)}.inline-note__edit{display:flex;flex-direction:column;gap:6px}.inline-note__edit-actions{display:flex;justify-content:flex-end;gap:8px}.inline-note__thumb-btn{align-self:flex-start;border:none;background:none;padding:0;cursor:zoom-in;border-radius:var(--radius-sm);overflow:hidden;line-height:0}.inline-note__pdf{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:500;color:var(--text);background:var(--elevated);border:1px solid var(--line-elevated);border-radius:var(--radius-sm);text-decoration:none}.inline-note__pdf:hover{border-color:var(--accent);color:var(--accent)}.inline-note__thumb{display:block;width:96px;height:96px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line)}.inline-note__form{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.inline-note__form .inline-editor__extras-input{flex:1 0 100%}.inline-note__textarea{resize:none;min-height:56px;max-height:160px;overflow-y:auto;line-height:1.4;font-family:inherit}.inline-note__file-input{display:none}.inline-note__attach,.inline-note__send{flex-shrink:0;width:32px;height:32px;display:grid;place-items:center;border-radius:var(--radius-sm);border:1px dashed var(--line-elevated);background:transparent;color:var(--muted);font-size:14px}.inline-note__attach:hover,.inline-note__send:not(:disabled):hover{color:var(--accent);border-color:var(--accent)}.inline-note__attach:disabled,.inline-note__send:disabled{opacity:.6;cursor:default}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#000000d9;padding:24px}.lightbox__image{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.lightbox__close{position:fixed;top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right));width:40px;height:40px;border-radius:50%;border:none;background:#ffffff1f;color:#fff;font-size:16px;display:grid;place-items:center}.inline-editor__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:4px;border-top:1px solid var(--line)}.inline-editor__footer-actions{display:flex;gap:8px;margin-left:auto}.inline-editor__delete{font-size:12px;color:var(--danger);padding:6px 0}.hl-input{position:relative;display:block;width:100%;border:1px solid var(--line-elevated);border-radius:var(--radius-md);background:var(--bg);transition:border-color .12s ease,box-shadow .12s ease}.hl-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.hl-input__mirror,.hl-input__field{font-family:var(--font-ui);font-size:15px;line-height:1.5;padding:11px 12px;margin:0;border:none;white-space:pre-wrap;overflow-wrap:anywhere;letter-spacing:normal}.hl-input--lg .hl-input__mirror,.hl-input--lg .hl-input__field{font-size:16px}.hl-input--plain{border:none;background:transparent}.hl-input--plain:focus-within{box-shadow:none}.hl-input--plain .hl-input__mirror,.hl-input--plain .hl-input__field{padding:0;font-size:16px;font-weight:500;line-height:1.35}.hl-input__mirror{color:var(--text);min-height:1.5em;pointer-events:none;-webkit-user-select:none;user-select:none}.hl-input__field{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;resize:none;overflow:hidden;background:transparent;color:transparent;caret-color:var(--text)}.hl-input__field:focus-visible{outline:none;box-shadow:none}.hl-input__field::placeholder{color:var(--text-tertiary)}.hl-token{padding:0;margin:0;font-weight:inherit;font-size:inherit;letter-spacing:inherit;border-radius:4px;box-decoration-break:clone;-webkit-box-decoration-break:clone;color:var(--hl-color);background:color-mix(in srgb,var(--hl-color) 20%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--hl-color) 20%,transparent),0 0 0 3px color-mix(in srgb,var(--hl-color) 34%,transparent)}.hl-token--date,.hl-token--time{--hl-color: #3fae6a}.hl-token--project{--hl-color: var(--accent)}.hl-token--recurrence{--hl-color: #b07ad8}.hl-token--priority{--hl-color: var(--p4)}.hl-token--p1{--hl-color: var(--p1)}.hl-token--p2{--hl-color: var(--p2)}.hl-token--p3{--hl-color: var(--p3)}.hl-token--p4{--hl-color: var(--p4)}:root[data-theme=light] .hl-token--date,:root[data-theme=light] .hl-token--time{--hl-color: #1f8a4c}:root[data-theme=light] .hl-token--recurrence{--hl-color: #8145ad}.hl-suggest{position:fixed;z-index:200;margin:0;padding:4px;list-style:none;max-height:280px;overflow-y:auto;overscroll-behavior:contain;background:var(--elevated);border:1px solid var(--line-elevated);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.hl-suggest__item{display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;border-radius:var(--radius-sm);font-size:14px;text-align:left;color:var(--text)}.hl-suggest__item--active{background:var(--search-highlight);color:var(--accent)}.inline-add{display:flex;flex-direction:column;gap:8px;padding:10px 0 4px}.inline-add__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.inline-add__summary{font-size:12px;color:var(--muted)}.inline-add__actions{display:flex;gap:8px;margin-left:auto}.inline-add__trigger{display:flex;align-items:center;gap:10px;padding:10px 0;font-size:14px;color:var(--muted);text-align:left;width:100%;border-radius:var(--radius-sm)}.inline-add__trigger:hover{color:var(--accent)}.inline-add__plus{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:15px;color:var(--accent);flex-shrink:0}.inline-add__trigger:hover .inline-add__plus{background:var(--accent);color:var(--accent-contrast)}.chip{display:inline-flex;align-items:center;gap:4px;padding:6px 11px;border-radius:999px;font-size:12px;background:var(--surface);border:1px solid var(--line);color:var(--muted);white-space:nowrap;transition:border-color .12s ease,color .12s ease}.chip:hover{border-color:var(--accent);color:var(--text)}.chip--dashed{background:transparent;border-style:dashed;color:var(--accent)}.chip--active{background:var(--accent);color:var(--accent-contrast);border-color:transparent;font-weight:500}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px;border-radius:var(--radius-md);font-size:13px;font-weight:500;transition:filter .12s ease,background-color .12s ease;white-space:nowrap}.btn--sm{padding:6px 12px;font-size:12px}.btn--primary{background:var(--accent);color:var(--accent-contrast)}.btn--primary:hover:not(:disabled){filter:brightness(1.08)}.btn--outline{background:transparent;color:var(--text);border:1px solid var(--line-elevated)}.btn--outline:hover:not(:disabled){border-color:var(--accent)}.btn--ghost{background:transparent;color:var(--accent)}.btn--destructive{background:transparent;color:var(--danger);border:1px solid var(--danger-soft-border)}.btn:disabled{opacity:.45;cursor:not-allowed}.icon-btn{width:34px;height:34px;border-radius:var(--radius-md);color:var(--muted);display:grid;place-items:center;font-size:15px;flex-shrink:0}.icon-btn:hover{background:var(--surface);color:var(--text)}.icon-btn--sm{width:26px;height:26px;font-size:13px}.select{padding:7px 10px;border-radius:var(--radius-sm);border:1px solid var(--line-elevated);background:var(--surface);color:var(--text);font-size:13px}kbd{font-family:var(--font-mono);font-size:10px;padding:3px 6px;border:1px solid var(--line-elevated);border-radius:5px;color:var(--muted);background:var(--bg)}.week-nav{display:flex;gap:6px}.week-nav button{padding:7px 12px;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--line);color:var(--muted);font-size:12px}.week-nav button:hover{color:var(--text);border-color:var(--accent)}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:40px 20px 24px;color:var(--muted)}.empty-state__heading{font-size:16px;font-weight:500;color:var(--text)}.empty-state__body{font-size:13px;max-width:320px;line-height:1.5}.empty-state__actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap;justify-content:center}.skeleton{background:var(--line);border-radius:var(--radius-sm);animation:shimmer 1.4s ease-in-out infinite}.skeleton--title{height:20px;width:40%;margin-bottom:8px}.skeleton--subtitle{height:10px;width:25%;margin-bottom:20px}.skeleton-row{display:flex;gap:12px;padding:11px 0}.skeleton--circle{width:20px;height:20px;border-radius:50%;flex-shrink:0}.skeleton-row__lines{flex:1;display:flex;flex-direction:column;gap:6px}.skeleton--line{height:12px;width:70%}.skeleton--line-short{width:40%;height:9px}.offline-banner{display:flex;align-items:center;gap:8px;padding:9px 16px;background:var(--offline-banner-bg);border-bottom:1px solid var(--offline-banner-border);color:var(--warn);font-size:13px}.offline-banner__dot{width:6px;height:6px;border-radius:50%;background:var(--warn);flex-shrink:0}.status-pill{font-size:11px;font-weight:500;padding:4px 10px;border-radius:999px;background:var(--surface);border:1px solid var(--line);color:var(--muted);white-space:nowrap}.status-pill--ok{color:var(--success-dot);border-color:color-mix(in srgb,var(--success-dot) 40%,transparent)}.status-pill--warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,transparent)}.install-prompt{position:fixed;left:16px;right:16px;bottom:calc(88px + env(safe-area-inset-bottom));z-index:45;display:flex;align-items:center;gap:12px;padding:12px 40px 12px 12px;background:var(--elevated);border:1px solid var(--line-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}@media (min-width: 768px){.install-prompt{left:auto;right:24px;bottom:24px;width:380px}}.install-prompt__icon{width:38px;height:38px;border-radius:11px;background:var(--accent);display:grid;place-items:center;flex-shrink:0}.install-prompt__body{flex:1;min-width:0}.install-prompt__title{font-size:14px;font-weight:500}.install-prompt__desc{font-size:12px;color:var(--muted)}.install-prompt__dismiss{position:absolute;top:8px;right:10px;color:var(--muted);font-size:12px;width:22px;height:22px;border-radius:var(--radius-sm)}.install-prompt__dismiss:hover{color:var(--text)}.tab-bar{position:sticky;bottom:0;z-index:40;padding:24px max(12px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.tab-bar--hidden{display:none}.tab-bar__deck{position:relative;display:flex;align-items:stretch;--tab-pad: 10px;padding:0 var(--tab-pad);background:var(--elevated);border:1px solid var(--line-elevated);border-radius:28px;box-shadow:var(--shadow-card)}.tab-bar__item,.tab-bar__slot{position:relative;flex:1 1 0;min-width:0;height:56px;display:grid;place-items:center}.tab-bar__icon{font-size:17px;line-height:1;color:var(--muted);transition:opacity .32s ease .22s,transform .42s cubic-bezier(.22,1,.36,1) .18s}.tab-bar__item:active .tab-bar__icon{transform:scale(.88);transition:transform .12s ease}.tab-bar__label{position:absolute;left:0;right:0;bottom:7px;text-align:center;font-size:10px;font-weight:600;letter-spacing:.01em;color:var(--accent);opacity:0;transform:translateY(6px);transition:opacity .14s ease,transform .2s ease}.tab-bar__item--active .tab-bar__icon{opacity:0;transform:translateY(-12px) scale(.8);transition:opacity .2s ease,transform .32s cubic-bezier(.22,1,.36,1)}.tab-bar__item--active .tab-bar__label{opacity:1;transform:none;transition:opacity .3s ease .26s,transform .42s cubic-bezier(.22,1,.36,1) .26s}.tab-bar__bubble{position:absolute;top:-20px;left:calc(var(--tab-pad) + (var(--slot) + .5) * ((100% - 2 * var(--tab-pad)) / 5));margin-left:-22px;width:44px;height:44px;transition:left .52s cubic-bezier(.22,1,.36,1)}.tab-bar__bubble-pop{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px var(--bg),var(--shadow-fab);animation:bubble-pop .56s cubic-bezier(.34,1.4,.64,1) both}@keyframes bubble-pop{0%{transform:scale(.55);opacity:.4}60%{opacity:1}}.tab-bar__bubble-icon{font-size:18px;line-height:1;color:var(--accent-contrast);animation:bubble-icon .46s cubic-bezier(.22,1,.36,1) .14s both}@keyframes bubble-icon{0%{opacity:0;transform:scale(.5) translateY(6px)}}.tab-bar__fab{width:40px;height:40px;border-radius:50%;background:var(--accent);color:var(--accent-contrast);font-size:24px;font-weight:300;display:grid;place-items:center;transition:transform .16s cubic-bezier(.2,0,0,1);-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.tab-bar__fab:active{transform:scale(.94)}.sidebar{width:260px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:14px;gap:14px;overflow-y:auto}.sidebar__top{display:flex;align-items:center;justify-content:space-between}.sidebar__brand{display:flex;align-items:center;gap:9px;min-width:0}.sidebar__logo{width:28px;height:28px;border-radius:8px;background:var(--logo-bg);color:var(--logo-mark);box-shadow:inset 0 0 0 1px var(--logo-edge);display:grid;place-items:center;flex-shrink:0}.sidebar__wordmark{font-size:15px;font-weight:600;letter-spacing:-.01em}.sidebar__add-btn{display:flex;align-items:center;justify-content:space-between;height:38px;padding:0 12px;background:var(--accent);color:var(--accent-contrast);border-radius:var(--radius-md);font-size:13px;font-weight:500}.sidebar__add-btn kbd{border-color:color-mix(in srgb,var(--accent-contrast) 30%,transparent);color:var(--accent-contrast);background:transparent}.sidebar__nav{display:flex;flex-direction:column;gap:1px}.sidebar__nav-item{display:flex;align-items:center;gap:10px;height:34px;padding:0 9px;border-radius:var(--radius-sm);color:var(--text);font-size:14px}.sidebar__nav-item:hover{background:var(--bg)}.sidebar__nav-item--active{background:var(--search-highlight);color:var(--accent);font-weight:600}.sidebar__nav-icon{width:16px;text-align:center;color:var(--muted);flex-shrink:0}.sidebar__nav-item--active .sidebar__nav-icon{color:var(--accent)}.sidebar__nav-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar__nav-count{font-family:var(--font-mono);font-size:11px;color:var(--text-tertiary);flex-shrink:0}.sidebar__projects{display:flex;flex-direction:column;gap:1px;flex:1;min-height:0;overflow-y:auto}.sidebar__projects-header{display:flex;align-items:center;justify-content:space-between;padding:8px 9px 4px}.sidebar__empty{margin:4px 9px;font-size:12px;color:var(--text-tertiary)}.sidebar__footer{display:flex;align-items:center;gap:8px;padding-top:12px;border-top:1px solid var(--line);font-size:11px}.sidebar__sync-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.sidebar__sync-label{flex:1;min-width:0;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:flex-end;justify-content:center;z-index:100;animation:fade-in .14s ease}@media (min-width: 768px){.sheet-backdrop{align-items:flex-start;padding-top:12vh}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.sheet{background:var(--surface);width:100%;max-width:540px;max-height:100%;overflow-y:auto;overscroll-behavior:contain;border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;padding:16px 16px calc(20px + env(safe-area-inset-bottom));border:1px solid var(--line-elevated);border-bottom:none;animation:sheet-up .2s cubic-bezier(.2,.8,.2,1)}@media (min-width: 768px){.sheet{border-radius:var(--radius-2xl);border-bottom:1px solid var(--line-elevated);padding:20px;box-shadow:var(--shadow-card);animation:sheet-in .16s ease}}@keyframes sheet-up{0%{transform:translateY(24px)}to{transform:translateY(0)}}@keyframes sheet-in{0%{transform:scale(.97);opacity:0}to{transform:scale(1);opacity:1}}.sheet__handle{width:36px;height:4px;background:var(--line-elevated);border-radius:2px;margin:0 auto 14px}.sheet__title{font-size:16px;font-weight:600;margin:0 0 14px}.quick-add{display:flex;flex-direction:column;gap:12px}.quick-add__summary{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:12px;color:var(--muted)}.quick-add__summary-item{display:inline-flex;align-items:center;gap:4px}.quick-add__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:4px;border-top:1px solid var(--line)}.quick-add__hint{font-size:11px;color:var(--text-tertiary)}.quick-add__hint b{font-weight:500;color:var(--muted)}.quick-add__actions{display:flex;align-items:center;gap:8px;margin-left:auto}.quick-add__mic{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:var(--accent);border:1px solid var(--line-elevated);background:transparent;transition:background-color .12s ease,transform .12s ease}.quick-add__mic:active{transform:scale(.94)}@media (hover: hover){.quick-add__mic:hover{background:var(--elevated)}}.quick-add__mic--off{color:var(--text-tertiary);opacity:.6}.quick-add__voice-note{display:flex;align-items:flex-start;gap:8px;margin:-4px 0 0;font-size:12px;line-height:1.45;color:var(--muted)}.quick-add__voice-note q{color:var(--text-secondary);font-style:italic}.quick-add__voice-badge{flex-shrink:0;padding:1px 6px;border-radius:var(--radius-xs);font-size:10px;font-weight:600;letter-spacing:.04em;color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.voice-panel{display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 8px 6px;text-align:center}.voice-panel__orb{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-contrast);transition:transform .16s cubic-bezier(.2,0,0,1)}.voice-panel__orb:disabled{opacity:.85}.voice-panel__orb--live{animation:voice-pulse 1.4s ease-out infinite}.voice-panel__orb--live:active{transform:scale(.95)}@keyframes voice-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--accent) 45%,transparent)}to{box-shadow:0 0 0 18px color-mix(in srgb,var(--accent) 0%,transparent)}}.voice-panel__spinner{width:28px;height:28px;border-radius:50%;border:3px solid color-mix(in srgb,var(--accent-contrast) 30%,transparent);border-top-color:var(--accent-contrast);animation:voice-spin .8s linear infinite}@keyframes voice-spin{to{transform:rotate(360deg)}}.voice-panel__title{display:inline-flex;align-items:center;gap:8px;font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}.voice-panel__limit{font-weight:400;color:var(--text-tertiary)}.voice-panel__dot{width:8px;height:8px;border-radius:50%;background:var(--danger);animation:voice-blink 1s steps(2,start) infinite}@keyframes voice-blink{to{visibility:hidden}}.voice-panel__hint{max-width:340px;font-size:12.5px;line-height:1.5;color:var(--muted)}@media (prefers-reduced-motion: reduce){.voice-panel__orb--live,.voice-panel__dot{animation:none}}.date-picker{display:flex;flex-direction:column;gap:14px}.date-picker__quick{display:flex;flex-wrap:wrap;gap:8px}.date-picker__calendar{border:1px solid var(--line);border-radius:var(--radius-lg);padding:12px}.date-picker__calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.date-picker__calendar-header button{width:30px;height:30px;border-radius:var(--radius-sm);color:var(--muted)}.date-picker__calendar-header button:hover{background:var(--bg);color:var(--text)}.date-picker__weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-size:10px;color:var(--text-tertiary);margin-bottom:6px}.date-picker__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.date-picker__day{aspect-ratio:1;border-radius:var(--radius-sm);font-size:13px;color:var(--text);display:grid;place-items:center}.date-picker__day:hover{background:var(--bg)}.date-picker__day--today{box-shadow:inset 0 0 0 1px var(--accent);color:var(--accent)}.date-picker__day--selected{background:var(--accent);color:var(--accent-contrast);font-weight:600}.date-picker__time{display:flex;align-items:center;justify-content:space-between;gap:12px}.date-picker__time input{border:1px solid var(--line-elevated);border-radius:var(--radius-sm);padding:8px 10px;background:var(--bg);color:var(--text)}.move-sheet__list{display:flex;flex-direction:column;gap:2px;max-height:46vh;overflow-y:auto;margin-bottom:12px}.move-sheet__item{display:flex;align-items:center;gap:10px;padding:10px;border-radius:var(--radius-sm);text-align:left;font-size:14px;width:100%}.move-sheet__item:hover{background:var(--bg)}.move-sheet__item--active{background:var(--search-highlight);color:var(--accent);font-weight:500}.move-sheet__item--create{color:var(--accent)}.move-sheet__new-input{width:100%;padding:10px;border:1px solid var(--line-elevated);border-radius:var(--radius-sm);background:var(--bg);color:var(--text)}.week{display:grid;gap:12px;grid-template-columns:1fr}@media (min-width: 700px){.week{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1100px){.week{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 1500px){.week{grid-template-columns:repeat(4,minmax(0,1fr))}}.week__day{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:12px 14px;display:flex;flex-direction:column}.week__day--today{border-color:color-mix(in srgb,var(--accent) 55%,transparent)}.week__day-header{display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--line);margin-bottom:2px}.week__day-name{font-size:13px;font-weight:600}.week__today-tag{font-size:10px;padding:2px 7px;border-radius:999px;background:var(--accent);color:var(--accent-contrast)}.week__day-count{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--text-tertiary)}.progress-bar{height:4px;border-radius:2px;background:var(--line);overflow:hidden}.progress-bar__fill{height:100%;background:var(--accent);transition:width .24s ease}.histogram{display:flex;gap:6px;height:62px;align-items:flex-end}.histogram__col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;height:100%}.histogram__bar{width:100%;max-width:40px;background:var(--line);border-radius:3px;min-height:4px}.histogram__bar--peak{background:var(--accent)}.histogram__label{font-family:var(--font-mono);font-size:9px;color:var(--text-tertiary)}.search-bar{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:var(--radius-lg);border:1px solid var(--line-elevated);background:var(--surface)}.search-bar:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.search-bar input{flex:1;min-width:0;border:none;background:transparent;font-size:15px}.search-bar input:focus-visible{outline:none;box-shadow:none}.search-bar__icon{color:var(--muted)}.search-bar__clear{color:var(--muted);padding:2px 4px}.search-suggestions{display:flex;flex-direction:column;gap:18px}.search-suggestions section{display:flex;flex-direction:column;gap:10px}.result-row{display:flex;align-items:center;gap:10px;padding:11px 0;font-size:14px;text-align:left;width:100%;border-bottom:1px solid var(--line-subtle)}.note-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:12px;display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.note-card p{margin:0;font-size:13px;line-height:1.5}.note-card__time{font-family:var(--font-mono);font-size:10px;color:var(--text-tertiary)}.section-add input{width:100%;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--line-elevated);background:var(--surface);color:var(--text)}.settings-section{display:flex;flex-direction:column;gap:2px;padding-bottom:16px;border-bottom:1px solid var(--line)}.settings-section--last{border-bottom:none}.settings-section .section-label{margin-bottom:6px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;flex-wrap:wrap}.settings-row>div:first-child{flex:1 1 auto;min-width:160px}.settings-row__desc{margin:3px 0 0;font-size:12px;color:var(--muted);line-height:1.45;max-width:460px}.settings-row__danger{color:var(--danger)}.settings-row__buttons{display:flex;gap:8px}.segmented{display:flex;gap:3px;background:var(--bg);padding:3px;border-radius:var(--radius-md);border:1px solid var(--line)}.segmented__item{padding:7px 13px;border-radius:var(--radius-sm);font-size:13px;color:var(--muted);white-space:nowrap}.segmented__item--active{background:var(--accent);color:var(--accent-contrast);font-weight:500}.shortcut-row{display:flex;align-items:center;gap:12px;padding:7px 0;font-size:13px;color:var(--muted)}.shortcut-row kbd{min-width:62px;text-align:center}.splash{height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:var(--bg)}.splash__mark{width:76px;height:76px;border-radius:22px;background:var(--logo-bg);color:var(--logo-mark);box-shadow:inset 0 0 0 1px var(--logo-edge);display:grid;place-items:center}.splash__wordmark{font-size:20px;font-weight:600;letter-spacing:-.01em}.splash__progress{width:120px;height:3px;border-radius:2px;background:var(--elevated);overflow:hidden;margin-top:4px}.splash__progress-fill{width:40%;height:100%;background:var(--accent);animation:splash-loop 1.1s ease-in-out infinite alternate}@keyframes splash-loop{0%{transform:translate(-25%)}to{transform:translate(150%)}}.auth{min-height:100dvh;display:grid;place-items:center;padding:24px 16px;position:relative;overflow:hidden;background:var(--bg)}.auth__aurora{position:absolute;inset:-30% -10% auto -10%;height:70vh;background:radial-gradient(42% 55% at 22% 30%,color-mix(in srgb,var(--accent) 32%,transparent),transparent 70%),radial-gradient(38% 50% at 78% 22%,color-mix(in srgb,#8b6ad8 26%,transparent),transparent 70%);filter:blur(58px);opacity:.55;pointer-events:none}.auth__card{position:relative;width:100%;max-width:400px;background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line-elevated);border-radius:var(--radius-3xl);padding:30px 26px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:6px}.auth__brand{display:flex;align-items:center;gap:9px;margin-bottom:14px}.auth__logo{width:32px;height:32px;border-radius:9px;background:var(--logo-bg);color:var(--logo-mark);box-shadow:inset 0 0 0 1px var(--logo-edge);display:grid;place-items:center;flex-shrink:0}.auth__wordmark{font-size:16px;font-weight:600;letter-spacing:-.01em}.auth__title{margin:0;font-size:25px;font-weight:600;letter-spacing:-.02em}.auth__subtitle{margin:0 0 18px;font-size:13px;line-height:1.5;color:var(--muted)}.auth__form{display:flex;flex-direction:column;gap:14px}.auth__field{display:flex;flex-direction:column;gap:6px}.auth__label{font-size:12px;font-weight:500;color:var(--muted)}.auth__field input{width:100%;padding:11px 13px;border-radius:var(--radius-md);border:1px solid var(--line-elevated);background:var(--bg);color:var(--text);font-size:15px;transition:border-color .12s ease,box-shadow .12s ease}.auth__field input::placeholder{color:var(--text-tertiary)}.auth__field input:disabled{opacity:.6}.auth__control{position:relative}.auth__control input{padding-right:38px}.auth__control--password input{padding-right:100px}.auth__check{position:absolute;right:11px;top:50%;transform:translateY(-50%);color:var(--accent);pointer-events:none}.auth__reveal{position:absolute;right:36px;top:50%;transform:translateY(-50%);font-size:11px;color:var(--muted);padding:5px 7px;border-radius:var(--radius-sm)}.auth__reveal:hover{color:var(--accent)}.auth__error{padding:10px 12px;border-radius:var(--radius-md);background:var(--error-bg);border:1px solid var(--error-border);color:var(--danger);font-size:13px;line-height:1.4}.auth__submit{margin-top:2px;padding:12px 16px;border-radius:var(--radius-md);background:var(--accent);color:var(--accent-contrast);font-size:14px;font-weight:600;transition:filter .12s ease}.auth__submit:hover:not(:disabled){filter:brightness(1.08)}.auth__submit:disabled{opacity:.55;cursor:not-allowed}.auth__runaway{position:relative;margin-top:2px;height:96px;display:grid;place-items:center;border-radius:999px;border:1px solid var(--line-subtle);background:color-mix(in srgb,var(--bg) 55%,transparent);overflow:visible}.auth__runaway-home{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:12px 16px;font-size:14px;font-weight:600;line-height:normal;white-space:nowrap;color:transparent;border:1.5px dashed color-mix(in srgb,var(--accent) 55%,transparent);border-radius:999px;opacity:0;transition:opacity .22s ease;pointer-events:none}.auth__runaway--engaged .auth__runaway-home{opacity:1}.auth__tether-anchor{position:absolute;left:50%;top:50%;width:0;height:0;pointer-events:none}.auth__tether-anchor:before{content:"";position:absolute;left:-4px;top:-4px;width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent);opacity:0;transition:opacity .22s ease}.auth__runaway--engaged .auth__tether-anchor:before{opacity:1}.auth__tether{position:absolute;left:0;top:0;height:4px;width:0;border-radius:2px;transform-origin:0 50%;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 62%,transparent));opacity:0}.auth__submit--pill{position:relative;z-index:1;margin-top:0;min-width:124px;border-radius:999px;display:grid;place-items:center;will-change:transform;transition:background-color .26s ease,color .26s ease}.auth__submit--running{background:color-mix(in srgb,var(--accent) 15%,var(--elevated));color:var(--text)}.auth__spinner{width:17px;height:17px;border-radius:50%;border:2px solid color-mix(in srgb,var(--accent-contrast) 30%,transparent);border-top-color:var(--accent-contrast);animation:auth-spin .62s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth__status{display:flex;align-items:center;justify-content:center;gap:7px;margin:10px 0 0;font-size:12px;color:var(--muted)}.auth__status-dot{width:6px;height:6px;border-radius:50%;background:var(--text-tertiary);flex-shrink:0;transition:background-color .22s ease}.auth__status-dot--on{background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.auth__keys{display:flex;align-items:center;justify-content:center;gap:5px;margin:7px 0 0;font-size:11px;color:var(--text-tertiary);opacity:0;transition:opacity .24s ease}.auth__keys--on{opacity:1}.auth__keys kbd{font-family:var(--font-mono);font-size:10px;padding:2px 5px;border-radius:var(--radius-xs);border:1px solid var(--line-elevated);background:var(--elevated);color:var(--text-secondary)}@media (prefers-reduced-motion: reduce){.auth__runaway{height:auto;border-color:transparent;background:none}.auth__runaway-home,.auth__tether-anchor{display:none}.auth__submit--pill{width:100%}}.auth__footnote{margin:16px 0 0;font-size:11px;color:var(--text-tertiary);text-align:center;line-height:1.5}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:16px;animation:fade-in .13s ease}.modal{width:100%;max-height:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border:1px solid var(--line-elevated);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);animation:modal-in .15s cubic-bezier(.2,.8,.2,1)}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px 12px;flex-shrink:0}.modal__title{margin:0;font-size:16px;font-weight:600;letter-spacing:-.01em}.modal__close{width:30px;height:30px;border-radius:var(--radius-sm);color:var(--muted);font-size:13px;display:grid;place-items:center;flex-shrink:0}.modal__close:hover{background:var(--bg);color:var(--text)}.modal__body{padding:0 18px 4px;display:flex;flex-direction:column;gap:16px;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.modal__message{margin:0;font-size:14px;line-height:1.55;color:var(--text-secondary)}.modal__footer{display:flex;justify-content:flex-end;gap:8px;padding:16px 18px;flex-shrink:0;border-top:1px solid var(--line);background:var(--surface)}.field{display:flex;flex-direction:column;gap:7px}.field__label{font-size:12px;font-weight:500;color:var(--muted)}.field__input{width:100%;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--line-elevated);background:var(--bg);color:var(--text);font-size:15px}.field__input::placeholder{color:var(--text-tertiary)}.field__hint{font-size:11px;color:var(--text-tertiary)}.field__error{margin:0;font-size:13px;color:var(--danger)}.color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(30px,1fr));gap:8px}.color-swatch{aspect-ratio:1;border-radius:50%;position:relative;transition:transform .12s ease}.color-swatch:hover{transform:scale(1.12)}.color-swatch--active{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--text)}.color-swatch--active:after{content:"✓";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#fff;font-size:13px;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.45)}.project-preview{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:var(--radius-md);background:var(--bg);border:1px solid var(--line);font-size:14px;color:var(--text)}.modal-backdrop--compact{padding:8px}.modal-backdrop--compact .modal__header{padding:11px 14px 6px}.modal-backdrop--compact .modal__title{font-size:15px}.modal-backdrop--compact .modal__body{padding:0 14px 2px;gap:10px}.modal-backdrop--compact .modal__footer{padding:10px 14px}.modal-backdrop--compact .field{gap:4px}.modal-backdrop--compact .field__input{padding:8px 10px}.modal-backdrop--compact .color-grid{grid-template-columns:repeat(auto-fill,minmax(26px,1fr));gap:6px}.modal-backdrop--compact .project-preview{padding:7px 10px;font-size:13px}.modal-backdrop--compact .btn{padding:8px 14px}.btn--danger-solid{background:var(--danger);color:#fff}.btn--danger-solid:hover:not(:disabled){filter:brightness(1.08)}.project-list{display:flex;flex-direction:column;gap:8px}.project-card{display:flex;align-items:center;gap:12px;width:100%;padding:14px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line);text-align:left;font-size:15px;color:var(--text);transition:border-color .12s ease}.project-card:hover{border-color:var(--accent)}.project-card__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-card__count{font-family:var(--font-mono);font-size:12px;color:var(--text-tertiary)}.sidebar__empty-btn{margin:4px 9px;padding:8px 0;font-size:13px;color:var(--accent);text-align:left}.inline-editor__subtasks{display:flex;flex-direction:column;gap:6px;padding-top:12px;border-top:1px solid var(--line)}.inline-editor__subtasks-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.inline-editor__add-sub{width:26px;height:26px;border-radius:var(--radius-sm);background:var(--bg);border:1px solid var(--line-elevated);color:var(--accent);font-size:16px;line-height:1;display:grid;place-items:center;flex-shrink:0}.inline-editor__add-sub:hover{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}.ie-menu__empty{margin:0;padding:8px 10px;font-size:12px;color:var(--text-tertiary)}.ie-menu__form{border-top:1px solid var(--line);margin-top:4px;padding-top:4px}.ie-menu__form input{width:100%;padding:8px 10px;border:none;background:transparent;color:var(--accent);font-size:13px}.ie-menu__form input::placeholder{color:var(--accent)}.settings-intro{margin-bottom:8px;max-width:560px}.keyword-group{padding:10px 0}.keyword-group__title{margin:0 0 8px;font-size:13px;font-weight:600;color:var(--text)}.keyword-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.keyword-item{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.keyword-item__syntax{font-family:var(--font-mono);font-size:12px;padding:3px 8px;border-radius:5px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);flex-shrink:0;min-width:120px}.keyword-item__desc{font-size:13px;color:var(--muted)}.keyword-example{margin:12px 0 0;font-size:13px;color:var(--muted)}.keyword-example code{font-family:var(--font-mono);font-size:12px;padding:4px 8px;border-radius:5px;background:var(--bg);border:1px solid var(--line);color:var(--text)}.toast{position:fixed;left:16px;right:16px;bottom:calc(92px + env(safe-area-inset-bottom));max-width:460px;margin:0 auto;z-index:110;display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--elevated);border:1px solid var(--line-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-toast);overflow:hidden;opacity:0;transform:translateY(10px);transition:opacity .18s ease,transform .18s ease}.toast--visible{opacity:1;transform:translateY(0)}.toast--error{border-color:var(--error-border);background:color-mix(in srgb,var(--danger) 12%,var(--elevated))}@media (min-width: 768px){.toast{left:auto;right:24px;bottom:24px;width:380px;margin:0}}.toast__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.toast__message{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast--error .toast__message{color:var(--danger)}.toast__detail{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast__action{font-size:12px;font-weight:600;color:var(--accent);flex-shrink:0;padding:6px 8px;border-radius:var(--radius-sm)}.toast__action:hover{background:var(--surface)}.toast__close{color:var(--muted);font-size:11px;width:22px;height:22px;border-radius:var(--radius-sm);flex-shrink:0}.toast__progress{position:absolute;left:0;bottom:0;height:2px;background:var(--accent);animation:toast-countdown linear forwards}.toast--error .toast__progress{background:var(--danger)}@keyframes toast-countdown{0%{width:100%}to{width:0%}}.crash{min-height:100dvh;display:grid;place-items:center;padding:24px;background:var(--bg)}.crash__card{max-width:420px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}.crash__icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--error-bg);border:1px solid var(--error-border);color:var(--danger);font-size:22px;font-weight:700}.crash__title{margin:0;font-size:20px;font-weight:600}.crash__text{margin:0;font-size:14px;line-height:1.55;color:var(--muted)}.crash__actions{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap;justify-content:center}.crash__details{margin-top:12px;font-size:12px;color:var(--text-tertiary);max-width:100%}.crash__details pre{margin:8px 0 0;padding:10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);text-align:left;overflow-x:auto;font-size:11px}.app-version{font-family:var(--font-mono);font-size:10px;font-weight:400;color:var(--text-tertiary);letter-spacing:.02em;flex-shrink:0;-webkit-user-select:text;user-select:text}
