:root{--todoist-red:#e44332;--todoist-red-light:#fceceb;--todoist-red-dark:#c53727;--todoist-p1:#d1453b;--todoist-p2:#eb8909;--todoist-p3:#246fe0;--todoist-p4:#666;--todoist-p1-ink:#c53727;--todoist-p2-ink:#a86200;--todoist-p3-ink:#1c5cc4;--todoist-p4-ink:#5c5c5c;--bg:#fff;--bg-subtle:#f5f4f1;--bg-muted:#eeedeb;--bg-hover:#37352f12;--border:#00000014;--border-light:#0000000d;--text:#1d1d1f;--text-muted:#5f5f66;--text-faint:#6e6e73;--ok-ink:#1a7f4b;--ok-bg:#e8f5ee;--sidebar-width:272px;--header-height:64px;--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--radius-xl:28px;--radius-pill:999px;--shadow-sm:0 1px 2px #0f0f0f0a, 0 4px 12px #0f0f0f08;--shadow-md:0 4px 16px #0f0f0f14, 0 1px 3px #0f0f0f0a;--shadow-lg:0 12px 40px #0f0f0f1f, 0 2px 8px #0f0f0f0d;--red-gradient:linear-gradient(180deg, #c53727 0%, #a52c1e 100%);--red-gradient-hover:linear-gradient(180deg, #a52c1e 0%, #8b2418 100%);--red-gradient-pill:linear-gradient(145deg, #f06a5a 0%, var(--todoist-red) 100%);--glass-bg:#ffffff85;--glass-bg-strong:#ffffffbd;--glass-bg-soft:#ffffff5c;--glass-border-outer:#00000012;--glass-highlight:inset 0 1px 0 #ffffffd1;--glass-highlight-strong:inset 0 1px 0 #ffffffe6, inset 0 -1px 0 #ffffff26;--glass-shadow:0 8px 32px #0f0f0f14, 0 1px 2px #0f0f0f0a;--glass-blur:blur(28px) saturate(1.45);--glass-blur-sm:blur(18px) saturate(1.3);--app-wash:radial-gradient(1200px 700px at 8% -10%, #ffc8be8c, transparent 55%), radial-gradient(900px 600px at 92% 8%, #aad2ff80, transparent 50%), radial-gradient(800px 500px at 50% 100%, #dcc8ff59, transparent 55%), linear-gradient(165deg, #f4f1ec 0%, #eef2f7 45%, #f7f0ef 100%);--transition:.22s cubic-bezier(.22, 1, .36, 1);--transition-fast:.14s cubic-bezier(.22, 1, .36, 1);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Helvetica,Arial,sans-serif;line-height:1.5}*{box-sizing:border-box}body{background:var(--app-wash);background-attachment:fixed;min-height:100vh;margin:0}button,input,select{font:inherit}button{transition:background var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition), transform var(--transition-fast)}@media (prefers-reduced-motion:reduce){:root{--transition:1ms linear;--transition-fast:1ms linear}}.skip-link{z-index:100;border-radius:0 0 var(--radius-md) 0;background:var(--todoist-red-dark);color:#fff;padding:10px 18px;font-size:14px;font-weight:600;text-decoration:none;position:absolute;top:0;left:-9999px}.skip-link:focus-visible{outline:3px solid var(--text);outline-offset:-3px;left:0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--todoist-red-dark);outline-offset:2px;border-radius:var(--radius-sm)}.app{background:var(--app-wash);background-attachment:fixed;height:100dvh;min-height:0;display:flex;overflow:hidden}.sidebar{width:var(--sidebar-width);border-right:1px solid var(--glass-border-outer);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-highlight), 4px 0 24px #0f0f0f08;overscroll-behavior:contain;flex-direction:column;flex-shrink:0;gap:14px;min-height:0;padding:20px 16px;display:flex;overflow-y:auto}.sidebar__brand{align-items:center;gap:10px;margin-bottom:4px;padding:4px 6px;display:flex}.sidebar__logo{background:linear-gradient(145deg, #f06a5a 0%, var(--todoist-red) 45%, var(--todoist-red-dark) 100%);color:#fff;border-radius:12px;place-items:center;width:36px;height:36px;font-size:14px;font-weight:700;display:grid;box-shadow:inset 0 1px #ffffff59,0 4px 12px #e4433259}.sidebar__title{letter-spacing:-.02em;color:var(--text);min-width:0;font-size:15px;font-weight:600}.sidebar__token{background:var(--glass-bg-soft);border:1px solid var(--glass-border-outer);border-radius:var(--radius-md);box-shadow:var(--glass-highlight), var(--shadow-sm);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);margin-top:auto;padding:14px}.sidebar__token label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;font-size:11px;font-weight:600;display:block}.sidebar__token-form{flex-wrap:wrap;gap:8px;display:flex}.sidebar__token input{border:1px solid var(--glass-border-outer);border-radius:var(--radius-sm);min-width:0;color:var(--text);box-shadow:var(--glass-highlight);transition:border-color var(--transition), box-shadow var(--transition), background var(--transition);background:#ffffffb8;flex:120px;padding:10px 12px}.sidebar__token input::placeholder{color:var(--text-faint)}.sidebar__token input:hover{background:#ffffffe0;border-color:#0000001f}.sidebar__token input:focus{box-shadow:0 0 0 3px #e4433273, var(--glass-highlight);background:#ffffffe0;border-color:#e4433273}.sidebar__token button{border-radius:var(--radius-sm);background:var(--red-gradient);color:#fff;cursor:pointer;border:none;padding:10px 12px;font-size:14px;font-weight:600;box-shadow:inset 0 1px #ffffff38,0 4px 12px #a52c1e4d}.sidebar__token button:hover{background:var(--red-gradient-hover)}.sidebar__source{color:var(--text-muted);border-radius:var(--radius-sm);border:1px solid var(--border-light);background:#ffffff73;margin:0;padding:6px 10px;font-size:11px}.sidebar__source-status:not(:empty){margin-top:8px}.sidebar__source[data-source=api]{color:var(--ok-ink);background:var(--ok-bg)}.sidebar__hint{color:var(--text-muted);margin:0;padding:0 4px;font-size:11px;line-height:1.45}.main{border-radius:var(--radius-xl);border:1px solid var(--glass-border-outer);min-width:0;min-height:0;box-shadow:var(--glass-highlight), var(--shadow-md);z-index:1;background:#ffffffe0;flex-direction:column;flex:1 1 0;margin:10px 10px 10px 0;display:flex;position:relative;overflow:hidden}.main__body{flex-direction:row;flex:1;min-width:0;min-height:0;display:flex;position:relative}.main.has-task-panel[data-task-panel=dock] .main__body{flex-direction:column;min-height:0;overflow:hidden}.main.has-task-panel[data-task-panel=dock] .main__body>.calendar-surface{flex:1 1 0;min-height:0;overflow:auto}.toolbar{height:var(--header-height);border-bottom:1px solid var(--glass-border-outer);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-highlight);z-index:6;flex-shrink:0;align-items:center;gap:10px;padding:0 20px;display:flex;position:relative}.toolbar__today{border:1px solid var(--glass-border-outer);border-radius:var(--radius-pill);background:var(--glass-bg-soft);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);box-shadow:var(--glass-highlight), var(--shadow-sm);cursor:pointer;color:var(--text);padding:8px 16px;font-size:13px;font-weight:500}.toolbar__today:hover{background:var(--glass-bg-strong);box-shadow:var(--glass-highlight-strong), var(--shadow-sm)}.toolbar__nav{border-radius:var(--radius-pill);background:var(--glass-bg-soft);border:1px solid var(--glass-border-outer);box-shadow:var(--glass-highlight);align-items:center;gap:4px;padding:3px;display:flex}.toolbar__nav button{border-radius:var(--radius-pill);cursor:pointer;width:32px;height:32px;color:var(--text-muted);background:0 0;border:none;place-items:center;font-size:20px;display:grid}.toolbar__nav button:hover{color:var(--text);box-shadow:var(--shadow-sm);background:#ffffffb3}.toolbar__nav button:disabled{opacity:1;color:var(--text-faint);cursor:not-allowed}.toolbar__nav button:disabled:hover{box-shadow:none;background:0 0}.toolbar__title{white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.025em;min-width:0;color:var(--text);flex:1;margin:0;font-size:21px;font-weight:600;overflow:hidden}.toolbar__view-select{border:1px solid var(--glass-border-outer);border-radius:var(--radius-pill);background:var(--glass-bg-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236e6e73' d='M3 4.5L6 7.5L9 4.5'/%3E%3C/svg%3E") no-repeat right 12px center;-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);box-shadow:var(--glass-highlight), var(--shadow-sm);appearance:none;cursor:pointer;color:var(--text);min-width:120px;transition:border-color var(--transition), background-color var(--transition), box-shadow var(--transition);padding:8px 32px 8px 14px;font-size:13px;font-weight:500}.toolbar__view-select:hover{background-color:var(--glass-bg-strong)}.toolbar__view-select:focus{box-shadow:0 0 0 3px #e4433273, var(--glass-highlight);border-color:#e4433273}.calendar-surface{background:var(--bg);scrollbar-gutter:stable;flex:1;min-width:0;min-height:400px;position:relative;overflow:auto}.calendar-surface__status{z-index:5;background:var(--bg);color:var(--text-muted);padding:20px 24px;font-size:14px;position:sticky;top:0}.calendar-surface__status--notice{color:var(--todoist-red-dark);background:var(--todoist-red-light);border-bottom:1px solid var(--border);font-size:13px}.mini-cal{border-radius:var(--radius-md);background:var(--glass-bg-soft);border:1px solid var(--glass-border-outer);box-shadow:var(--glass-highlight), var(--shadow-sm);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);flex-direction:column;gap:4px;padding:12px;display:flex}.mini-cal__nav{letter-spacing:-.01em;color:var(--text);grid-template-columns:auto 1fr auto;align-items:center;gap:4px;margin-bottom:2px;font-size:13px;font-weight:600;display:grid}.mini-cal__nav span[aria-live]{text-align:center}.mini-cal__nav button{cursor:pointer;border-radius:var(--radius-pill);width:28px;height:28px;color:var(--text-muted);background:0 0;border:1px solid #0000;place-items:center;font-size:16px;display:grid}.mini-cal__nav button:hover{background:var(--glass-bg-strong);border-color:var(--glass-border-outer);box-shadow:var(--glass-highlight), var(--shadow-sm);color:var(--text)}.mini-cal__weekdays{text-align:center;letter-spacing:.02em;color:var(--text-muted);grid-template-columns:repeat(7,1fr);margin:6px 0 2px;font-size:10px;font-weight:600;display:grid}.mini-cal__grid{flex-direction:column;gap:2px;display:flex}.mini-cal__row{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.mini-cal__day{aspect-ratio:1;border-radius:var(--radius-pill);cursor:pointer;color:var(--text);transition:background var(--transition), color var(--transition);background:0 0;border:none;padding:0;font-size:11px;font-weight:500;position:relative}.mini-cal__day.is-outside{color:var(--text-faint)}.mini-cal__day.is-in-range{background:var(--todoist-red-light);color:var(--todoist-red-dark);border-radius:0}.mini-cal__grid .mini-cal__day.is-in-range:nth-child(7n+1){border-top-left-radius:var(--radius-pill);border-bottom-left-radius:var(--radius-pill)}.mini-cal__grid .mini-cal__day.is-in-range:nth-child(7n){border-top-right-radius:var(--radius-pill);border-bottom-right-radius:var(--radius-pill)}.mini-cal__grid .mini-cal__day.is-in-range[data-range-start]{border-radius:var(--radius-pill) 0 0 var(--radius-pill)}.mini-cal__grid .mini-cal__day.is-in-range[data-range-end]{border-radius:0 var(--radius-pill) var(--radius-pill) 0}.mini-cal__day.is-today{background:var(--red-gradient);color:#fff;font-weight:700;box-shadow:inset 0 1px #ffffff3d,0 2px 8px #a52c1e5c}.mini-cal__day:hover:not(.is-today){box-shadow:var(--glass-highlight);background:#ffffff8c}.time-grid{--time-gutter-width:52px;--time-allday-height:56px;--compact-task-height:18px;--time-day-columns:repeat(var(--day-count,1), minmax(0, 1fr));grid-template-columns:var(--time-gutter-width) var(--time-day-columns);grid-auto-rows:auto;align-content:start;height:100%;min-height:600px;display:grid}.time-grid__corner,.time-grid__day-header{z-index:3;background:var(--bg);border-bottom:1px solid var(--border);position:sticky;top:0}.time-grid__corner{border-right:1px solid var(--border-light)}.time-grid__day-header{text-align:center;border-right:1px solid var(--border-light);min-width:0;padding:10px 8px}.time-grid__day-header.is-in-range,.time-grid__column.is-in-range{background:var(--todoist-red-light)}.time-grid__day-header.is-today .time-grid__day-label{background:var(--red-gradient-pill);color:#fff;border-radius:var(--radius-pill);place-items:center;width:30px;height:30px;display:inline-grid;box-shadow:inset 0 1px #ffffff4d,0 2px 8px #e4433252}.time-grid__day-sublabel{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:600;display:block}.time-grid__day-label{letter-spacing:-.02em;font-size:18px;font-weight:600}.time-grid__allday-gutter,.time-grid__allday-cell{top:var(--time-grid-header-height,52px);z-index:3;border-bottom:1px solid var(--border);background:#fffffff5;position:sticky}.time-grid__allday-gutter{color:var(--text-muted);border-right:1px solid var(--border-light);height:var(--time-allday-height);min-height:var(--time-allday-height);max-height:var(--time-allday-height);box-sizing:border-box;justify-content:flex-end;align-items:flex-start;padding:6px;font-size:10px;font-weight:500;display:flex}.time-grid__allday-cell{border-right:1px solid var(--border-light);height:var(--time-allday-height);min-height:var(--time-allday-height);max-height:var(--time-allday-height);box-sizing:border-box;flex-direction:column;min-width:0;padding:4px 5px;display:flex;overflow:hidden}.time-grid__allday-tasks{overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin;flex-direction:column;flex:1;gap:2px;min-height:0;display:flex;overflow:hidden auto}.time-grid__allday-cell.is-in-range{background:var(--todoist-red-light)}.time-grid__times{border-right:1px solid var(--border-light)}.time-grid__time-label{height:48px;color:var(--text-muted);text-align:right;padding-right:8px;font-size:10px;font-weight:500;transform:translateY(-6px)}.time-grid__column{border-right:1px solid var(--border-light);min-width:0;min-height:1152px;position:relative}.time-grid__hour-cell{border-bottom:1px solid var(--border-light);height:48px}.time-grid__now-line{background:var(--todoist-red);z-index:2;pointer-events:none;width:calc(100% + 1px);height:2px;position:absolute;left:0}.time-grid__now-line:before{content:"";background:var(--todoist-red);border-radius:50%;width:10px;height:10px;position:absolute;top:-4px;left:-5px}.task-block{border-radius:var(--radius-sm);color:#fff;cursor:pointer;box-shadow:inset 0 1px 0 #ffffff38, var(--shadow-sm);transition:transform var(--transition), box-shadow var(--transition);padding:3px 8px;font-size:11px;font-weight:500;overflow:hidden}.task-block:hover{box-shadow:inset 0 1px 0 #ffffff47, var(--shadow-md);transform:translateY(-1px)}.task-block[data-virtual=true]{outline-offset:-4px;outline:1.5px dashed #ffffffbf}.task-block--compact{white-space:nowrap;text-overflow:ellipsis;height:var(--compact-task-height,18px);flex-shrink:0;align-items:center;gap:4px;padding:2px 6px;font-size:10px;display:flex}.task-block--compact .task-block__title{flex:1;min-width:0}.task-block__time{opacity:.92;letter-spacing:.01em;font-size:9px;font-weight:600;display:block}.task-block__title{white-space:nowrap;text-overflow:ellipsis;min-width:0;line-height:1.35;display:block;overflow:hidden}.month-view{--compact-task-height:18px;flex-direction:column;height:100%;min-height:0;padding:0 16px 16px;display:flex}.month-view__header{border-bottom:1px solid var(--border);background:var(--bg);z-index:1;grid-template-columns:repeat(7,1fr);display:grid;position:sticky;top:0}.month-view__weekday{text-align:center;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding:10px 8px;font-size:11px;font-weight:600}.month-view__grid{flex:1;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(0,1fr);min-height:0;display:grid}.month-view__cell{border-right:1px solid var(--border-light);border-bottom:1px solid var(--border-light);height:100%;min-height:0;transition:background var(--transition);box-sizing:border-box;flex-direction:column;padding:6px 8px;display:flex;overflow:hidden}.month-view__cell:hover{background:var(--bg-subtle)}.month-view__cell.is-outside{background:var(--bg-muted)}.month-view__cell.is-outside:hover{background:var(--bg-subtle)}.month-view__cell.is-in-range{background:var(--todoist-red-light)}.month-view__cell.is-today .month-view__date{background:var(--red-gradient-pill);color:#fff;border-radius:var(--radius-pill);place-items:center;width:26px;height:26px;font-weight:700;display:inline-grid;box-shadow:inset 0 1px #ffffff4d,0 2px 6px #e443324d}.month-view__date{color:var(--text);font-size:12px;font-weight:600}.month-view__tasks{flex-direction:column;flex:0 auto;gap:2px;min-height:0;max-height:75%;margin-top:6px;display:flex;overflow:hidden}.month-view__more{color:var(--text-muted);white-space:nowrap;flex-shrink:0;padding:2px 4px;font-size:10px;font-weight:500;line-height:1.2}.schedule-view{max-width:900px;margin-inline:auto;padding:8px 32px 32px}.schedule-view__empty{text-align:center;color:var(--text-muted);padding:64px 24px;font-size:14px}.schedule-view__day{border-bottom:1px solid var(--border-light);gap:28px;padding:20px 0;display:flex}.schedule-view__day-header{text-align:right;flex-shrink:0;width:72px}.schedule-view__day-num{letter-spacing:-.03em;color:var(--text);font-size:28px;font-weight:600;line-height:1.1;display:block}.schedule-view__day-meta{letter-spacing:.06em;color:var(--text-muted);margin-top:2px;font-size:10px;font-weight:600;display:block}.schedule-view__day.is-today .schedule-view__day-num{color:var(--todoist-red)}.schedule-view__events{flex-direction:column;flex:1;gap:2px;display:flex}.schedule-view__event{border-radius:var(--radius-sm);transition:background var(--transition);align-items:center;gap:12px;padding:8px 12px;display:flex}.schedule-view__event:hover{background:var(--bg-hover)}.schedule-view__event[data-virtual=true]{background:var(--bg-subtle);outline:1px dashed var(--text-muted);outline-offset:-1px}.task-complete,.schedule-view__complete{border:2px solid var(--todoist-p4);cursor:pointer;box-sizing:border-box;width:18px;height:18px;color:var(--todoist-p4);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.task-complete__check{opacity:0;pointer-events:none;width:10px;height:10px}.task-complete[aria-disabled=true],.schedule-view__complete[aria-disabled=true],.task-detail__checkbox[aria-disabled=true]{border-color:var(--text-faint);color:var(--text-faint);cursor:not-allowed;border-style:dashed}.task-complete:hover,.schedule-view__complete:hover,.task-complete:focus-visible,.schedule-view__complete:focus-visible{background:color-mix(in srgb, currentColor 14%, transparent)}.task-complete:hover .task-complete__check,.schedule-view__complete:hover .task-complete__check,.task-complete:focus-visible .task-complete__check,.schedule-view__complete:focus-visible .task-complete__check{opacity:1}.schedule-view__event-main{cursor:pointer;flex:1;align-items:baseline;gap:16px;min-width:0;display:flex}.schedule-view__event-time{width:72px;color:var(--text-muted);flex-shrink:0;font-size:13px;font-weight:500}.schedule-view__event-title{color:var(--text);font-size:14px;font-weight:500;line-height:1.4}.schedule-view__now-line{pointer-events:none;align-items:center;gap:12px;padding:8px 12px;display:flex}.schedule-view__now-dot{flex-shrink:0;place-items:center;width:18px;height:18px;display:grid}.schedule-view__now-dot:before{content:"";background:var(--todoist-red);border-radius:50%;width:10px;height:10px}.schedule-view__now-time{width:72px;color:var(--todoist-red-dark);letter-spacing:.01em;flex-shrink:0;font-size:13px;font-weight:600}.schedule-view__now-rule{background:var(--todoist-red);border-radius:1px;flex:1;height:2px}.n-days-view{height:100%}.display-menu{margin-left:auto;position:relative}.display-menu__trigger{border:1px solid var(--glass-border-outer);border-radius:var(--radius-pill);background:var(--glass-bg-soft);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);box-shadow:var(--glass-highlight), var(--shadow-sm);cursor:pointer;color:var(--text);align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:500;display:flex}.display-menu__trigger:hover{background:var(--glass-bg-strong);box-shadow:var(--glass-highlight-strong), var(--shadow-sm)}.display-menu__trigger-icon{color:var(--text-muted);font-size:14px}.display-menu__popover{z-index:100;background:var(--bg);border:1px solid var(--glass-border-outer);border-radius:var(--radius-lg);min-width:288px;box-shadow:var(--glass-highlight-strong), var(--shadow-lg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:16px;animation:.2s cubic-bezier(.22,1,.36,1) glass-popover-in;position:absolute;top:calc(100% + 10px);right:0}@keyframes glass-popover-in{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.display-menu__popover{animation:none}}.display-menu__section-title{color:var(--text);margin-bottom:10px;font-size:13px;font-weight:600;display:block}.display-menu__segments{border-radius:var(--radius-md);border:1px solid var(--border-light);background:#0000000a;gap:4px;padding:4px;display:flex}.display-menu__segment{cursor:pointer;color:var(--text-muted);transition:background var(--transition), color var(--transition), box-shadow var(--transition);background:0 0;border:none;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:500;display:flex}.display-menu__segment[aria-pressed=true]{color:var(--text);box-shadow:var(--glass-highlight), var(--shadow-sm);background:#ffffffe6}.display-menu__segment:hover:not([aria-pressed=true]){background:#ffffff73}.display-menu__segment-icon{font-size:14px}.display-menu__section+.display-menu__section{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.display-menu__toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:4px 0;font-size:13px;display:flex}.display-menu__toggle input{accent-color:var(--todoist-red);width:15px;height:15px}.board-surface{background:0 0;flex:1;position:relative;overflow:auto}.board-surface__status{color:var(--text-muted);padding:12px 24px;font-size:13px}.board-surface__status--notice{color:var(--todoist-red-dark)}.board-view{flex-direction:column;min-height:100%;padding:16px 24px 32px;display:flex}.board-view__empty{text-align:center;color:var(--text-muted);padding:64px 24px;font-size:14px}.board-view__overdue{margin-bottom:20px}.board-view__overdue-header{margin-bottom:10px}.board-view__overdue-badge{border-radius:var(--radius-pill);background:var(--todoist-red-light);color:var(--todoist-red-dark);box-shadow:var(--glass-highlight);padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.board-view__overdue-cards{gap:10px;padding-bottom:8px;display:flex;overflow-x:auto}.board-view__overdue-cards .board-task-card{flex-shrink:0;width:260px}.board-view__columns{flex:1;align-items:flex-start;gap:16px;display:flex;overflow-x:auto}.board-view__column{border-radius:var(--radius-lg);background:var(--glass-bg-soft);border:1px solid var(--glass-border-outer);width:280px;box-shadow:var(--glass-highlight), var(--shadow-sm);-webkit-backdrop-filter:var(--glass-blur-sm);backdrop-filter:var(--glass-blur-sm);flex-direction:column;flex-shrink:0;gap:10px;padding:10px;display:flex}.board-view__column-header{z-index:1;background:0 0;justify-content:center;align-items:flex-start;padding:4px 32px 8px 6px;display:flex;position:sticky;top:0}.board-view__column-date{flex-direction:column;align-items:center;gap:3px;min-width:0;display:flex}.board-view__column-weekday{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:600;line-height:1;display:block}.board-view__column-day{letter-spacing:-.03em;color:var(--text);font-size:22px;font-weight:600;line-height:1.1}.board-view__column-today-dot{background:var(--todoist-red);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #e4433229}.board-view__column.is-today .board-view__column-weekday{color:var(--todoist-red-dark)}.board-view__column-count{color:var(--text-muted);border-radius:var(--radius-pill);border:1px solid var(--border-light);background:#ffffff8c;place-items:center;min-width:22px;height:22px;font-size:12px;font-weight:500;display:grid;position:absolute;top:4px;right:6px}.board-view__cards{flex-direction:column;gap:8px;display:flex}.board-task-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);min-width:0;max-width:100%;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition), border-color var(--transition);align-items:flex-start;gap:10px;padding:12px 14px;display:flex;overflow:hidden}.board-task-card:hover{box-shadow:var(--shadow-md);border-color:#0000001a}.board-task-card[data-virtual=true]{background:var(--bg-subtle);outline:1px dashed var(--text-muted);outline-offset:-1px;border-left-style:dashed}.board-task-card .task-complete{margin-top:1px}.board-task-card__body{flex:1;min-width:0;overflow:hidden}.board-task-card__title{-webkit-line-clamp:3;color:var(--text);text-overflow:ellipsis;-webkit-box-orient:vertical;min-width:0;font-size:13px;font-weight:500;line-height:1.4;display:-webkit-box;overflow:hidden}.board-task-card__time{color:var(--text-muted);margin-top:4px;font-size:11px;font-weight:500;display:block}.task-detail--center{z-index:50;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.task-detail__backdrop{-webkit-backdrop-filter:blur(12px)saturate(1.2);backdrop-filter:blur(12px)saturate(1.2);cursor:pointer;background:#1d1d1f47;border:none;position:absolute;inset:0}.task-detail--sidebar{border-left:1px solid var(--glass-border-outer);background:var(--glass-bg-strong);width:380px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-highlight), -8px 0 28px #0f0f0f0d;flex-direction:column;flex-shrink:0;min-height:0;display:flex}.task-detail--dock{border-top:1px solid var(--glass-border-outer);background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-highlight), 0 -8px 28px #0f0f0f0d;flex-direction:column;flex:none;min-height:0;max-height:min(45vh,360px);display:flex}.task-detail__panel{background:0 0;flex-direction:column;min-height:0;display:flex}.task-detail__panel:focus-visible{outline:2px solid var(--todoist-red-dark);outline-offset:-2px}.task-detail--center .task-detail__panel{z-index:1;border-radius:var(--radius-xl);background:var(--glass-bg-strong);width:min(520px,100%);max-height:min(640px,100%);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-highlight-strong), var(--shadow-lg);border:1px solid var(--glass-border-outer);position:relative;overflow:hidden}.task-detail--sidebar .task-detail__panel,.task-detail--dock .task-detail__panel{flex:1;min-height:0}.task-detail__bar{border-bottom:1px solid var(--glass-border-outer);background:#ffffff59;flex-shrink:0;align-items:center;gap:10px;min-width:0;padding:10px 14px;display:flex}.task-detail__placement-tabs{border-radius:var(--radius-pill);border:1px solid var(--border-light);background:#0000000d;gap:2px;margin-left:auto;padding:3px;display:flex}.task-detail__placement-tab{border-radius:var(--radius-pill);width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:background var(--transition), color var(--transition), box-shadow var(--transition);background:0 0;border:none;place-items:center;padding:0;display:grid}.task-detail__placement-tab svg{width:15px;height:15px;display:block}.task-detail__placement-tab[aria-pressed=true]{color:var(--text);box-shadow:var(--glass-highlight), var(--shadow-sm);background:#ffffffeb}.task-detail__placement-tab:hover:not([aria-pressed=true]){background:#fff6}.task-detail__close{border-radius:var(--radius-pill);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;place-items:center;font-size:20px;line-height:1;display:grid}.task-detail__close:hover{color:var(--text);box-shadow:var(--glass-highlight);background:#ffffff8c}.task-detail__body{flex:1;padding:20px 24px 28px;overflow:auto}.task-detail--dock .task-detail__body{padding:16px 24px 20px}.task-detail__header{align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.task-detail__checkbox{border:2px solid var(--todoist-p4);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;width:22px;height:22px;margin-top:4px}.task-detail__title{letter-spacing:-.02em;color:var(--text);flex:1;margin:0;font-size:22px;font-weight:600;line-height:1.35}.task-detail--dock .task-detail__title{font-size:18px}.task-detail__metadata{flex-direction:column;gap:10px;margin-bottom:24px;display:flex}.task-detail__meta-row{grid-template-columns:24px 88px 1fr;align-items:center;gap:8px;font-size:13px;display:grid}.task-detail__meta-icon{text-align:center;font-size:14px}.task-detail__meta-label{color:var(--text-muted);font-weight:500}.task-detail__meta-value{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.task-detail__chip{border-radius:var(--radius-pill);border:1px solid var(--glass-border-outer);box-shadow:var(--glass-highlight);color:var(--text);background:#ffffff8c;align-items:center;padding:5px 11px;font-size:13px;font-weight:500;display:inline-flex}.task-detail__chip--date{color:#1a56db;background:#e8f0fee6;border-color:#c6dafccc}.task-detail__chip--priority{box-shadow:none;background:0 0;border-color:#0000;padding-left:0;font-weight:600}.task-detail__chip--virtual{background:var(--todoist-red-light);color:var(--todoist-red-dark);border-color:#0000;font-size:12px}.task-detail__section{margin-bottom:20px}.task-detail__section-label{color:var(--text-muted);margin-bottom:8px;font-size:13px;font-weight:600;display:block}.task-detail__description{color:var(--text);white-space:pre-wrap;margin:0;font-size:14px;line-height:1.55}.task-detail__placeholder{color:var(--text-muted);margin:0;font-size:14px}@media (width<=1060px){.task-detail--sidebar{z-index:5;width:min(380px,100%);position:absolute;inset:0 0 0 auto}}@media (width<=820px){.app{flex-direction:column;height:auto;min-height:100dvh;overflow:visible}.main{overflow:visible}.sidebar{border-right:none;border-bottom:1px solid var(--glass-border-outer);width:100%;box-shadow:var(--glass-highlight), 0 4px 24px #0f0f0f08;flex-shrink:1;grid-template-columns:minmax(150px,176px) minmax(0,1fr);align-items:start;gap:10px;padding:14px 12px;display:grid}.sidebar__brand{grid-column:1/-1}.mini-cal{grid-column:1;gap:2px;padding:8px}.sidebar__hint{display:none}.sidebar__token label{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sidebar__token{flex-direction:column;grid-column:2;align-self:center;align-items:stretch;gap:8px;margin-top:0;padding:10px;display:flex}.sidebar__token input{flex:140px;min-width:0}.sidebar__token button{width:100%}.sidebar__token label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.toolbar{height:auto;min-height:var(--header-height);flex-wrap:wrap;gap:8px;padding:10px 12px}.toolbar__title{flex:auto;order:-1;font-size:18px}.toolbar__view-select{flex:140px;min-width:0}.display-menu{position:static}.display-menu__popover{z-index:100;min-width:0;max-width:none;left:0;right:0}.calendar-surface{min-height:0}.task-complete,.schedule-view__complete{width:24px;height:24px}}@media (width<=700px){.schedule-view{padding:8px 12px 32px}.schedule-view__day{gap:12px;padding:14px 0}.schedule-view__day-header{width:48px}.schedule-view__day-num{font-size:22px}.time-grid{--time-gutter-width:0px;grid-template-columns:var(--time-day-columns);min-height:0}.time-grid__times,.time-grid__corner,.time-grid__allday-gutter{display:none}.board-view__column{width:calc(100vw - 64px)}.board-view__overdue-cards .board-task-card{width:calc(100vw - 96px)}.month-view{--compact-task-height:10px;padding:0 4px 16px}.month-view__cell{padding:4px 3px}.month-view__date{font-size:11px}.month-view__tasks{gap:1px}.month-view__tasks .task-block--compact{border-radius:var(--radius-pill);padding:0;font-size:0;line-height:0;box-shadow:inset 0 1px #fff3}}@media (height<=620px) and (width>=821px){.calendar-surface{min-height:240px}}@media (height<=620px){.main.has-task-panel[data-task-panel=dock] .calendar-surface{min-height:0}.task-detail--dock{max-height:min(38vh,260px)}}@media (pointer:coarse){.mini-cal__day{min-width:44px;min-height:44px;margin:-8px -4px}.mini-cal__nav button{min-width:44px;min-height:44px;margin:-8px}.toolbar__nav button{min-width:44px;min-height:44px;margin:-6px}.toolbar__today,.toolbar__view-select,.task-detail__placement-tab,.task-detail__close,.display-menu__trigger{min-height:44px}.task-detail__placement-tab,.task-detail__close{min-width:44px;margin:-8px}.display-menu__toggle input{min-width:24px;min-height:24px;accent-color:var(--todoist-red);margin:-4px}}@media (forced-colors:active){.time-grid__now-line,.time-grid__now-line:before,.schedule-view__now-rule,.schedule-view__now-dot:before,.board-view__column-today-dot,.task-block,.task-complete,.task-detail__checkbox{forced-color-adjust:none}.sidebar,.main,.calendar-surface,.board-view__column,.display-menu__popover,.task-detail__panel,.toolbar,.mini-cal,.sidebar__token,.task-detail--sidebar,.task-detail--dock,.board-task-card,.display-menu__trigger{border:1px solid canvastext}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.sidebar,.sidebar__token,.mini-cal,.toolbar,.toolbar__today,.display-menu__trigger,.display-menu__popover,.board-view__column,.task-detail--sidebar,.task-detail--dock,.task-detail--center .task-detail__panel{-webkit-backdrop-filter:none;backdrop-filter:none;background:#ffffffeb}.toolbar__view-select{background-color:#ffffffeb}}.focus-experience{flex-direction:column;flex:1;align-items:stretch;gap:28px;min-height:0;display:flex}.focus-view{min-height:0;color:var(--text);background:0 0;flex-direction:column;flex:1;display:flex}.focus-view__body{flex-direction:column;flex:1;justify-content:flex-start;align-items:stretch;gap:28px;min-height:0;padding:8px 0 40px;display:flex;overflow-y:auto}.pomodoro-hero{text-align:center;flex-direction:column;align-self:center;align-items:center;width:min(560px,100%);padding-inline:24px;display:flex;container-type:inline-size}.pomodoro-hero__focus-on{color:var(--text-muted);margin:0 0 12px;font-size:13px;font-weight:500}.pomodoro-hero__focus-on strong{color:var(--text);font-weight:600}.pomodoro-hero__session-meta{color:var(--text-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:0 0 10px;font-size:12px;display:flex}.pomodoro-hero__phase{border-radius:var(--radius-pill);letter-spacing:.05em;text-transform:uppercase;padding:4px 10px;font-size:11px;font-weight:600}.pomodoro-hero__phase--work{color:var(--todoist-p3-ink);background:#246fe01f;border:1px solid #246fe01f;box-shadow:inset 0 1px #ffffff80}.pomodoro-hero__phase--break{background:var(--bg-muted);color:var(--text-muted);border:1px solid var(--border-light);box-shadow:inset 0 1px #ffffff80}.pomodoro-hero__session-target{font-variant-numeric:tabular-nums}.pomodoro-hero__clock{border-bottom:2px solid #0000;grid-template-columns:3ch auto 3ch;align-self:center;place-items:center;margin:0 0 24px;padding-bottom:4px;font-size:clamp(64px,20.5cqw,120px);line-height:1;display:inline-grid}.pomodoro-hero__clock:focus-within{border-bottom-color:var(--border)}.pomodoro-hero__clock-field{font-size:inherit;font-variant-numeric:tabular-nums;letter-spacing:-.03em;color:var(--text);cursor:text;background:0 0;border:none;outline:none;padding:0;font-family:inherit;font-weight:300;line-height:1}.pomodoro-hero__clock-field[readonly]{cursor:default}.pomodoro-hero__clock-field:focus-visible{outline:2px solid var(--todoist-red);outline-offset:4px;border-radius:4px}.pomodoro-hero__clock-field--minutes{text-align:right;justify-self:end;width:100%}.pomodoro-hero__clock-field--seconds{text-align:left;justify-self:start;width:100%}.pomodoro-hero__clock-sep{font-size:inherit;font-variant-numeric:tabular-nums;letter-spacing:-.03em;color:var(--text);-webkit-user-select:none;user-select:none;pointer-events:none;font-weight:300;line-height:1}.pomodoro-hero__presets{background:var(--bg-subtle);border:1px solid var(--glass-border-outer,var(--border));border-radius:var(--radius-pill);gap:4px;margin-bottom:16px;padding:4px;display:flex;box-shadow:inset 0 1px #ffffff8c}.pomodoro-hero__preset{border-radius:var(--radius-pill);cursor:pointer;font-variant-numeric:tabular-nums;color:var(--text-muted);transition:background var(--transition), box-shadow var(--transition), color var(--transition);transition:background var(--transition), box-shadow var(--transition), color var(--transition);background:0 0;border:none;padding:8px 14px;font-size:13px;font-weight:500}.pomodoro-hero__preset[aria-pressed=true]{color:var(--text);box-shadow:inset 0 1px 0 #fffc, var(--shadow-sm);background:#ffffffeb}.pomodoro-hero__preset:hover:not([aria-pressed=true]):not(:disabled){background:#ffffff73}.pomodoro-hero__preset:disabled{opacity:.62;cursor:not-allowed}.pomodoro-hero__transport{flex-direction:column;align-items:center;gap:8px;margin-bottom:16px;display:flex}.pomodoro-hero__transport-controls{align-items:center;gap:8px;display:flex}.pomodoro-hero__start{border-radius:var(--radius-pill);background:var(--red-gradient);color:#fff;cursor:pointer;border:none;padding:10px 36px;font-size:14px;font-weight:600;box-shadow:inset 0 1px #ffffff3d,0 4px 14px #a52c1e52}.pomodoro-hero__start:hover:not(:disabled){background:var(--red-gradient-hover)}.pomodoro-hero__start:disabled{opacity:.62;cursor:not-allowed}.pomodoro-hero__reset{border:1px solid var(--glass-border-outer,var(--border));border-radius:var(--radius-pill);box-shadow:inset 0 1px 0 #ffffffb3, var(--shadow-sm);cursor:pointer;color:var(--text-muted);background:#ffffff8c;padding:10px 20px;font-size:13px;font-weight:500}.pomodoro-hero__reset:hover{border-color:var(--border);color:var(--text);background:#ffffffd1}.pomodoro-hero__music{border:1px solid var(--glass-border-outer,var(--border));border-radius:var(--radius-pill);box-shadow:inset 0 1px 0 #ffffffb3, var(--shadow-sm);cursor:pointer;color:var(--text-muted);background:#ffffff8c;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:500;display:inline-flex}.pomodoro-hero__music:hover:not(:disabled),.pomodoro-hero__music.is-on{border-color:var(--border);color:var(--text);background:#ffffffd1}.pomodoro-hero__music:disabled{opacity:.62;cursor:not-allowed}.pomodoro-hero__hint{text-align:center;max-width:34ch;color:var(--text-muted);margin:6px 0 0;font-size:12px;line-height:1.4}.pomodoro-hero__music-icon{color:var(--text-muted);display:inline-flex}.pomodoro-hero__music-state{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:600}.pomodoro-hero__error{color:var(--todoist-red-dark);margin:12px 0 0;font-size:12px}.focus-task-picker{align-self:stretch;width:100%;padding-inline:clamp(16px,3vw,48px)}.focus-task-picker__label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);text-align:center;margin:0 0 12px;font-size:11px;font-weight:600}.focus-task-picker__list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px;width:100%;max-width:960px;margin:0 auto;padding:0;list-style:none;display:grid}.focus-task-picker__hint,.focus-task-picker__empty{text-align:center;color:var(--text-muted);margin:10px 0 0;font-size:11px}.focus-task-picker__empty{padding:28px 16px;font-size:13px}.focus-task-picker__item{width:100%;display:block}.focus-task-picker__card{border-radius:var(--radius-md);width:100%;position:relative}.focus-task-picker__card .board-task-card{width:100%}.focus-task-picker__card .board-task-card,.focus-task-picker__card .board-task-card:hover{transform:none}.focus-task-picker__card .board-task-card:hover{box-shadow:var(--shadow-md);border-color:#0000001a}.focus-task-picker__card .board-task-card{cursor:pointer}.focus-task-picker__select{z-index:1;border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none;width:100%;padding:0;position:absolute;inset:0}.focus-task-picker__select:focus-visible{outline:2px solid var(--todoist-red);outline-offset:2px}.focus-task-picker__card .task-complete{z-index:2;position:relative}.focus-task-picker__item[data-selected=true] .board-task-card{box-shadow:inset 0 1px 0 #ffffffd9, var(--shadow-md), 0 0 0 2px var(--todoist-red-light);border-color:#e4433247}.focus-task-picker__item .task-detail__description{margin:8px 12px 0}@media (width<=700px){.focus-experience{gap:20px}.pomodoro-hero{padding-inline:12px}.pomodoro-hero__clock{grid-template-columns:2.6ch auto 2.6ch}.focus-task-picker__list{grid-template-columns:1fr}}
