:root{--background:#eef2ef;--surface:#fff;--line:#d9e1db;--ink:#1d2a23;--muted:#56655c;--accent:#3e6b56;--field-border:#7d8a82;--danger:#b24a3a;--top-bar:#2f5443;--on-accent:#fff;--accent-soft:#e3ece6;--surface-raised:#f5f8f6;--hover:#edf2ee;--danger-soft:#fbedeb;--scrollbar-track:#eef2ef;--scrollbar-thumb:#7d8a82;--scrollbar-thumb-hover:#3e6b56;--panel-shadow:0 1px 2px #1d2a230a;font-family:var(--font-figtree), system-ui, sans-serif;color:var(--ink);background:var(--background);font-synthesis:none;color-scheme:light}*{box-sizing:border-box}@media (forced-colors:none){:root{scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}@supports not (scrollbar-color:auto){::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background-color:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb)}::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}}}body{background:var(--background);margin:0;font-size:1rem;line-height:1.5}.app-icon{flex-shrink:0;width:1.25rem;height:1.25rem;display:block}input::placeholder{color:var(--muted);opacity:1}button,input,select{font:inherit}button{cursor:pointer}button,input,select{-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button,a{color:inherit}[hidden]{display:none!important}.skip-link{background:var(--surface);z-index:10;padding:14px;position:fixed;top:-80px;left:20px}.skip-link:focus{top:12px}.top-bar{background:var(--top-bar);min-height:76px;color:var(--on-accent);grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:0 40px;display:grid}.brand{letter-spacing:-.5px;justify-self:start;font-size:1.5rem;font-weight:700;text-decoration:none}.view-switch{background:#ffffff14;border-radius:12px;gap:4px;padding:4px;display:flex}.view-option{min-height:44px;color:var(--on-accent);background:0 0;border:0;border-radius:9px;align-items:center;gap:8px;padding:8px 16px;font-size:1rem;font-weight:500;display:inline-flex}.view-option:hover{background:#ffffff1f}.view-option[aria-pressed=true]{background:var(--surface);color:var(--top-bar);font-weight:600}.local-badge{justify-self:end;align-items:center;gap:6px;font-size:.875rem;display:inline-flex}.local-badge .app-icon{width:1rem;height:1rem}.top-bar :focus-visible{outline-color:var(--on-accent)}.eyebrow{color:var(--muted);letter-spacing:1.8px;font-size:.875rem;font-weight:650}main{max-width:1240px;margin:0 auto;padding:48px 48px 20px}h1{letter-spacing:-1.8px;margin:17px 0 15px;font-size:clamp(2.125rem,3vw,2.875rem);font-weight:580;line-height:1.2}.primary-button{white-space:nowrap;background:var(--accent);color:var(--on-accent);border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:12px 18px;font-size:1rem;font-weight:600;display:inline-flex}.primary-button:hover{filter:brightness(.92)}h2{letter-spacing:-.3px;margin:0 0 6px;font-size:1.25rem;font-weight:600}.muted{color:var(--muted);font-size:.875rem;font-weight:400}.search-box{border:1px solid var(--field-border);border-radius:7px;align-items:center;gap:8px;width:290px;max-width:100%;padding:0 10px;display:flex}.search-box>span{color:var(--muted);flex-shrink:0;display:flex}.search-box input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;padding:11px 0;font-size:1rem}select{border:1px solid var(--field-border);background:var(--surface);max-width:100%;color:var(--ink);border-radius:7px;padding:10px;font-size:1rem}.task-name{text-align:left;overflow-wrap:anywhere;background:0 0;border:0;padding:6px 0;font-size:1rem;font-weight:500;line-height:1.6}.completed .task-name{color:var(--muted);text-decoration:line-through}.icon-button{width:32px;min-height:32px;color:var(--muted);background:0 0;border:0;border-radius:6px;place-items:center;padding:0;font-size:1.375rem;display:grid}.icon-button:hover{background:var(--accent-soft);color:var(--ink)}.empty-state{text-align:center;padding:35px 20px}.empty-state>span{color:var(--accent);justify-content:center;display:flex}.empty-state .app-icon{width:2rem;height:2rem}.empty-state h3{font-size:1.125rem;font-weight:500}.empty-state p,.notice{color:var(--muted);font-size:1rem;line-height:1.8}.notice{padding:20px}.storage-notice{text-align:center;color:var(--muted);margin:20px 0 0;font-size:.875rem;line-height:1.8}.status{text-align:center;min-height:20px;color:var(--accent);font-size:1rem}dialog{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:16px;width:min(500px,100% - 32px);padding:28px;box-shadow:0 25px 100px #0003}dialog::backdrop{backdrop-filter:blur(3px);background:#10171f99}.form-field{flex-direction:column;gap:8px;min-width:0;margin:16px 0;font-size:1rem;display:flex}.form-field input{border:1px solid var(--field-border);background:var(--surface);width:100%;color:var(--ink);border-radius:7px;min-height:44px;padding:12px}.secondary-button{border:1px solid var(--field-border);background:0 0;border-radius:8px;min-height:44px;padding:10px 18px;font-size:1rem}@media (width<=1100px){main{padding:34px 28px 20px}.top-bar{padding:0 28px}}@media (width<=900px){html{scroll-padding-bottom:calc(96px + env(safe-area-inset-bottom))}.top-bar{min-height:0;padding:12px max(16px, env(safe-area-inset-right)) 12px max(16px, env(safe-area-inset-left));background:var(--surface);color:var(--ink);border-bottom:1px solid var(--line);grid-template-columns:1fr auto;gap:12px}.top-bar :focus-visible{outline-color:var(--accent)}.local-badge{color:var(--muted)}.view-switch{border:1px solid var(--line);background:var(--surface);grid-area:2/1/auto/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.view-option{color:var(--ink);justify-content:center}.view-option:hover{background:var(--hover)}.view-option[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}main{padding:20px max(16px, env(safe-area-inset-right)) 0 max(16px, env(safe-area-inset-left));padding-bottom:calc(96px + env(safe-area-inset-bottom))}h1{letter-spacing:-.8px;margin:6px 0 0;font-size:1.875rem}#add-task{z-index:2;right:max(16px, env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));border-radius:24px;min-height:48px;position:fixed;box-shadow:0 4px 16px #1d2a2333}#add-task[data-yield]{visibility:hidden}.icon-button{width:44px;min-height:44px}dialog{overscroll-behavior:contain;border-radius:16px;width:calc(100% - 16px);max-width:500px;max-height:calc(100dvh - 16px);padding:20px;overflow-y:auto}}@media (prefers-reduced-motion:no-preference){button{transition:background-color .15s}}.agenda-list{position:relative}@media (prefers-reduced-motion:no-preference){body,.agenda-group,.task-row,dialog,button,input,select,summary{transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s}.primary-button,.secondary-button,.icon-button,.view-option{transition:background-color .16s,color .16s,box-shadow .16s,transform .16s}.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}button:active{transform:translateY(0)}details[open]>:not(summary){animation:.16s ease-out detail-enter}@keyframes detail-enter{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}dialog{opacity:0;transition:opacity .16s ease, transform .16s ease, display .16s allow-discrete, overlay .16s allow-discrete;transform:translateY(8px)scale(.985)}dialog[open]{opacity:1;transform:translateY(0)scale(1)}dialog::backdrop{opacity:0;transition:opacity .16s ease, display .16s allow-discrete, overlay .16s allow-discrete}dialog[open]::backdrop{opacity:1}@starting-style{dialog[open]{opacity:0;transform:translateY(8px)scale(.985)}dialog[open]::backdrop{opacity:0}}@supports (interpolate-size:allow-keywords) and (content-visibility:hidden){details{interpolate-size:allow-keywords}details::details-content{opacity:0;block-size:0;transition:block-size .16s ease, opacity .16s ease, content-visibility .16s allow-discrete;overflow:clip}details[open]::details-content{opacity:1;block-size:auto}}}@media (prefers-reduced-motion:reduce){*,:before,:after,dialog::backdrop,details::details-content{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.task-row.not_done .task-name{color:var(--muted)}@media (width>=901px){main{padding-top:24px}h1{margin:8px 0}}.storage-notice:empty{display:none}summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}:root{--control-shadow:0 2px 5px #1d2a2308;--control-ring:0 0 0 4px #3e6b5626}input,textarea,button,select{font:inherit}.form-field input:not([type=checkbox]),.form-field textarea,.control-trigger{border:1px solid var(--field-border);background:var(--surface);width:100%;min-height:44px;color:var(--ink);box-shadow:var(--control-shadow);border-radius:12px;padding:.7rem .9rem}textarea{resize:vertical;line-height:1.6}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.85}.search-box{background:var(--surface);box-shadow:var(--control-shadow);border-radius:12px}.search-box:focus-within{border-color:var(--accent);box-shadow:var(--control-ring)}input[type=search]{appearance:none}input[type=search]::-webkit-search-cancel-button{appearance:none;display:none}.control-clear-search{color:var(--muted);background:var(--surface-raised);border:0;border-radius:8px;padding:.4rem .6rem;font-size:.875rem}input:autofill,textarea:autofill{color:var(--ink);background:var(--surface-raised)}input:-webkit-autofill,textarea:-webkit-autofill{-webkit-text-fill-color:var(--ink);box-shadow:0 0 0 1000px var(--surface-raised) inset}input:focus-visible,textarea:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}input:not([type=checkbox]):focus-visible,textarea:focus-visible,.control-trigger:focus-visible{box-shadow:var(--control-ring)}button:disabled,input:disabled,textarea:disabled,select:disabled{cursor:not-allowed;opacity:.5}[aria-invalid=true],input:user-invalid,textarea:user-invalid{border-color:var(--danger)}.control-error{color:var(--danger);font-size:.875rem;line-height:1.5;display:block}.control-error:empty{display:none}.enhanced-control{flex-direction:column;gap:.35rem;min-width:0;max-width:100%;display:inline-flex}.form-field>.enhanced-control{width:100%}.control-trigger{text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.control-trigger:after{content:"";opacity:.7;border-bottom:2px solid;border-right:2px solid;flex:0 0 .45rem;width:.45rem;height:.45rem;transform:rotate(45deg)translateY(-2px)}.control-trigger:hover:not(:disabled),.control-option:hover:not(:disabled),.picker-day:hover:not(:disabled){background:var(--hover);border-color:var(--accent)}.control-dialog{overscroll-behavior:contain;border-radius:20px;width:min(420px,100% - 24px);max-height:calc(100dvh - 32px);padding:20px;overflow:auto}.control-dialog-heading{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1.25rem;display:flex}.control-dialog-heading h2{margin:0;font-size:1.25rem}.control-close{color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:9px;min-height:36px;padding:.4rem .6rem}.control-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.control-options{flex-direction:column;gap:.3rem;max-height:min(55dvh,360px);padding:.25rem;display:flex;overflow-y:auto}.control-option{text-align:left;background:var(--surface);min-height:44px;color:var(--ink);border:1px solid #0000;border-radius:10px;justify-content:space-between;align-items:center;padding:.7rem .8rem;display:flex}.control-option[aria-selected=true]{background:var(--accent-soft);color:var(--accent);border-color:var(--line);font-weight:600}.control-option[aria-selected=true]:after{content:"✓";margin-left:.75rem}.picker-navigation{align-items:center;gap:.5rem;margin:1rem 0 .5rem;display:flex}.picker-navigation strong{text-align:center;text-transform:capitalize;flex:1}.picker-navigation button{padding:.5rem;font-size:.875rem}.date-picker-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.25rem;display:grid}.picker-weekday{color:var(--muted);text-align:center;padding:.4rem 0;font-size:.875rem}.picker-day{background:var(--surface);min-height:40px;color:var(--ink);border:1px solid #0000;border-radius:10px;padding:.25rem}.picker-day[aria-current=date]{border-color:var(--accent)}.picker-day[aria-pressed=true]{color:var(--on-accent);background:var(--accent)}.time-picker-fields{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.time-picker-fields input{text-align:center;font-variant-numeric:tabular-nums;font-size:2rem}.task-row input[type=checkbox]{appearance:none;border:1.5px solid var(--field-border);background:var(--surface);border-radius:50%;place-content:center;display:grid}.task-row input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}.task-row input[type=checkbox]:checked:after{content:"";border-left:2px solid var(--on-accent);border-bottom:2px solid var(--on-accent);width:.55rem;height:.3rem;transform:rotate(-45deg)translateY(-1px)}.task-row input[type=checkbox][hidden]{display:none}.primary-button,.secondary-button,.icon-button{border-radius:11px}.danger-button{background:var(--danger);color:var(--surface)}@media (prefers-reduced-motion:no-preference){.control-trigger,.control-option,.picker-day,textarea,input{transition:background-color .16s,border-color .16s,box-shadow .16s}}@media (width<=600px){.control-dialog{padding:16px}.control-dialog-actions button{flex:auto}}@media (forced-colors:active){.task-row input[type=checkbox]{appearance:auto}.task-row input[type=checkbox]:after{display:none}.control-option[aria-selected=true],.picker-day[aria-pressed=true]{outline:2px solid highlight}}.select-popover{box-sizing:border-box;z-index:20;border:1px solid var(--line);background:var(--surface);color:var(--ink);overscroll-behavior:contain;border-radius:12px;margin:0;padding:.35rem;position:fixed;inset:auto;overflow-y:auto;box-shadow:0 12px 32px #0002}.select-popover::backdrop{pointer-events:none;background:0 0}.select-popover[data-fallback=dialog]{position:absolute}.search-box{gap:.65rem;min-height:44px;padding:0 .9rem}.search-box input{min-height:42px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:.7rem 0}.search-box input:focus-visible{box-shadow:none;outline:none}.search-box:hover{border-color:var(--accent)}.search-box>.control-clear-search{flex:none}@media (forced-colors:active){.search-box:focus-within{outline-offset:2px;outline:2px solid highlight}}.periodic-days{border:1px solid var(--line);border-radius:12px;margin:.8rem 0;padding:.8rem}.periodic-days label{align-items:center;gap:.4rem;margin:.35rem .75rem .35rem 0;display:inline-flex}.periodic-dates{flex-wrap:wrap;gap:.5rem;padding:0;list-style:none;display:flex}.periodic-dates li{background:var(--surface-raised);border-radius:12px;align-items:center;gap:.5rem;padding:.4rem .6rem;display:flex}.weekday-chips{border:0;padding:0}.weekday-chips legend{margin-bottom:.5rem;font-weight:600}.weekday-chips label{margin:.25rem .25rem .25rem 0;position:relative}.weekday-chips input{opacity:0;width:1px;height:1px;position:absolute}.weekday-chips span{border:1px solid var(--field-border);background:var(--surface);cursor:pointer;border-radius:12px;align-items:center;min-height:44px;padding:.5rem .85rem;display:inline-flex}.weekday-chips input:checked+span{background:var(--accent);color:var(--surface);border-color:var(--accent);font-weight:600}.weekday-chips input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}.weekday-chips input:disabled+span{opacity:.55;cursor:not-allowed}.schedule-explanation{color:var(--muted);font-size:.875rem}@media (width<=600px){.weekday-chips span{padding:.5rem .65rem}}@media (forced-colors:active){.weekday-chips input:checked+span{outline:2px solid highlight}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.workspace{grid-template-columns:minmax(0,1fr) minmax(360px,34rem);align-items:start;display:grid}.workspace[data-active-view=calendar]{grid-template-columns:minmax(0,1fr)}.workspace[data-active-view=list]>main{width:100%;max-width:52rem}.today-view h1{margin:8px 0 20px}.today-ribbon{background:var(--surface);border:1px solid var(--line);box-shadow:var(--panel-shadow);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding:16px 20px;display:flex}.today-stats{color:var(--muted);flex-wrap:wrap;gap:8px 24px;margin:0;display:flex}.today-stats strong{color:var(--ink);margin-right:4px;font-size:1.25rem;font-weight:600}.week-progress{flex:260px;gap:4px;max-width:22rem;display:grid}.week-progress-heading{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;font-size:.875rem;display:flex}.week-progress-track{background:var(--line);border-radius:4px;height:8px;overflow:hidden}.week-progress-fill{border-radius:inherit;background:var(--accent);width:0;height:100%;display:block}.link-button{min-height:44px;color:var(--accent);background:0 0;border:0;align-items:center;gap:6px;padding:0 4px;font-size:.875rem;font-weight:600;display:inline-flex}.link-button:hover{text-decoration:underline}.link-button .app-icon{width:1rem;height:1rem}.today-toolbar{flex-wrap:wrap;align-items:flex-start;gap:12px;margin:24px 0;display:flex}.today-toolbar .search-box{flex:220px;width:auto}.filter-field{flex:0 auto;min-width:0}.agenda{gap:20px;display:grid}.agenda-group{background:var(--surface);border:1px solid var(--line);box-shadow:var(--panel-shadow);border-radius:14px;padding:16px 8px 8px}.agenda-today{background:var(--accent-soft)}.agenda-group h2{align-items:center;gap:8px;margin:0 12px 8px;font-size:1.125rem;display:flex}.agenda-overdue .group-icon{color:var(--danger)}.group-count{background:var(--surface-raised);min-width:24px;color:var(--muted);text-align:center;border-radius:999px;padding:0 8px;font-size:.875rem;font-weight:500}.group-empty{margin:0 12px 8px}.agenda-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.task-row{background:var(--surface);border:1px solid #0000;border-radius:10px;grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"check name status"".meta status";align-items:center;column-gap:8px;min-height:72px;padding:8px 12px 8px 4px;display:grid}.task-row:hover{background:var(--hover)}.task-row.selected{border-color:var(--accent)}.task-row input[type=checkbox]{cursor:pointer;grid-area:check;justify-self:center;width:24px;height:24px;margin:0;position:relative}.task-row input[type=checkbox]:before{content:"";position:absolute;inset:-10px}.task-row .task-name{grid-area:name;min-height:44px}.task-meta{color:var(--muted);flex-wrap:wrap;grid-area:meta;align-items:center;gap:6px 12px;font-size:.875rem;display:flex}.task-meta .app-icon,.status-pill .app-icon{width:1rem;height:1rem}.task-date,.priority-badge{align-items:center;gap:6px;display:inline-flex}.task-date.overdue{color:var(--danger)}.priority-badge{border:1px solid var(--line);background:var(--surface-raised);border-radius:6px;padding:2px 8px}.status-pill{border:1px solid var(--line);background:var(--surface-raised);color:var(--muted);white-space:nowrap;border-radius:999px;grid-area:status;justify-self:end;padding:4px 10px;font-size:.875rem}.status-pill.in_progress,.status-pill.completed{background:var(--accent-soft);color:var(--accent);border-color:#0000}.status-pill.overdue{background:var(--danger-soft);color:var(--danger);border-color:#0000}.quick-add{border:1px solid var(--field-border);background:var(--surface);border-radius:10px;flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:8px;padding:4px 4px 4px 16px;display:flex}.quick-add:focus-within{border-color:var(--accent);box-shadow:var(--control-ring)}.quick-add input{min-width:0;min-height:44px;color:var(--ink);background:0 0;border:0;flex:12rem;font-size:1rem}.quick-add input:focus-visible{box-shadow:none;outline:none}.quick-add .control-error{flex-basis:100%}.quick-add-hint{color:var(--muted);white-space:nowrap;font-size:.875rem}.quick-add-submit{background:var(--accent);width:44px;height:44px;color:var(--on-accent);border:0;border-radius:8px;place-items:center;display:grid}.detail-pane{overscroll-behavior:contain;border-left:1px solid var(--line);background:var(--surface);flex-direction:column;min-height:calc(100dvh - 76px);max-height:100dvh;display:flex;position:sticky;top:0;overflow-y:auto}.detail-selection{padding:0 40px 32px}.detail-bar{border-bottom:1px solid var(--line);align-items:center;min-height:56px;margin:0 -40px 24px;padding:0 40px;display:flex}.detail-eyebrow{color:var(--muted);letter-spacing:0;margin:0;font-size:.875rem;font-weight:500}.detail-title-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.detail-title-row h3{overflow-wrap:anywhere;margin:0 0 12px;font-size:1.5rem;font-weight:600}.detail-fields{margin:0}.detail-fields>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:12px 0;display:flex}.detail-fields dt{color:var(--muted);align-items:center;gap:8px;display:flex}.detail-fields dt .app-icon{width:1.125rem;height:1.125rem}.detail-fields dd{text-align:right;overflow-wrap:anywhere;margin:0}.detail-notes-label{color:var(--muted);margin:20px 0 8px;font-size:.875rem;font-weight:500}.detail-notes{background:var(--surface-raised);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;margin:0;padding:14px 16px}.detail-notes.empty{color:var(--muted)}.detail-actions{gap:12px;margin-top:20px;display:grid}.detail-secondary{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:12px;display:grid}.detail-actions .secondary-button{justify-content:center;align-items:center;gap:8px;display:inline-flex}.danger-outline{border-color:var(--danger);color:var(--danger)}.danger-outline:hover{background:var(--danger-soft)}.programs-panel{border-top:1px solid var(--line);margin-top:auto;padding:24px 40px 32px}.programs-panel h2{margin:0;font-size:1.125rem}.programs-panel>p{margin:4px 0 0}.program-list{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.program-item{background:var(--surface-raised);border-radius:12px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px;display:grid}.program-icon{background:var(--accent-soft);width:40px;height:40px;color:var(--accent);border-radius:10px;place-items:center;display:grid}.program-item strong{overflow-wrap:anywhere;font-weight:600;display:block}.program-item div>span{color:var(--muted);overflow-wrap:anywhere;font-size:.875rem}@media (width<=900px){.workspace{grid-template-columns:minmax(0,1fr)}.workspace[data-active-view=list]>main{padding-bottom:16px}.today-view h1{margin:4px 0 12px;font-size:1.875rem}.today-ribbon{box-shadow:none;background:0 0;border:0;padding:0}.week-progress{flex-basis:100%;max-width:none}.today-toolbar{margin:16px 0}.filter-field{flex:8rem}.agenda-group{padding:12px 4px 4px}.priority-prefix{display:none}.detail-pane{min-height:0;max-height:none;margin:0 max(16px, env(safe-area-inset-right)) calc(96px + env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));border:1px solid var(--line);border-radius:14px;position:static;overflow:visible}.detail-selection{padding:0 20px 24px}.detail-bar{margin:0 -20px 16px;padding:0 20px}.programs-panel{padding:20px}}@media (width<=600px){.quick-add-hint{display:none}.task-row{grid-template-areas:"check name name"".meta status"}.program-item{grid-template-columns:40px minmax(0,1fr)}.program-item .secondary-button{grid-column:1/-1}}.calendar-view{--calendar-hour:3rem;--calendar-past:#f3f6f4;--calendar-done:var(--accent-soft);--calendar-program:#dbe7df;--calendar-overdue:#fbeae7;grid-template-columns:minmax(15rem,18rem) minmax(0,1fr);grid-template-areas:"side main";align-items:start;gap:1.5rem;padding:1.5rem;display:grid}.calendar-view[hidden]{display:none}.calendar-main{background:var(--surface);border:1px solid var(--line);min-width:0;box-shadow:var(--panel-shadow);border-radius:1.25rem;grid-area:main;overflow:hidden}.calendar-side{grid-area:side;gap:1rem;display:grid}.calendar-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--panel-shadow);border-radius:1.25rem;padding:1.25rem}.calendar-card h3,.calendar-header h2{color:var(--ink);margin:0}.calendar-card h3{font-size:1.05rem}.calendar-muted{color:var(--muted);margin:.25rem 0 0;font-size:.875rem}.calendar-visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.calendar-header{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;display:flex}.calendar-header h2{flex:12rem;font-size:1.4rem}.calendar-nav{flex-wrap:wrap;gap:.5rem;display:flex}.calendar-icon-button,.calendar-text-button{min-width:44px;min-height:44px;color:var(--ink);background:var(--surface);border:1px solid var(--field-border);cursor:pointer;border-radius:11px;place-items:center;padding:0 .9rem;display:inline-grid}.calendar-icon-button{padding:0}.calendar-icon-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1.2rem;height:1.2rem}.calendar-icon-button:hover,.calendar-text-button:hover{background:var(--hover)}.calendar-create{min-height:44px}.calendar-week{overflow-x:auto}.calendar-week-grid{grid-template-columns:3.5rem repeat(7,minmax(6.5rem,1fr));min-width:49rem;display:grid}.calendar-corner,.calendar-day-heading{border-bottom:1px solid var(--line);background:var(--surface-raised)}.calendar-day-heading{border-left:1px solid var(--line);align-content:start;gap:.1rem;padding:.5rem .5rem .6rem;display:grid}.calendar-day-heading.is-today{background:var(--accent-soft)}.calendar-day-create{min-height:44px;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:.35rem;padding:0 .35rem;display:flex}.calendar-day-create:hover{background:var(--hover)}.calendar-day-name{color:var(--muted);font-size:.875rem}.calendar-day-number{font-size:1.1rem;font-weight:600}.is-today .calendar-day-number{min-width:1.9rem;height:1.9rem;color:var(--on-accent);background:var(--accent);border-radius:50%;place-items:center;display:inline-grid}.calendar-day-summary{color:var(--muted);padding:0 .35rem;font-size:.78rem}.calendar-day-summary.has-overdue{color:var(--danger)}.calendar-hours,.calendar-day-column{grid-row:2/span 2;grid-template-rows:subgrid;display:grid}.calendar-hour-labels{grid-row:2;grid-auto-rows:var(--calendar-hour);display:grid}.calendar-hour-label{color:var(--muted);text-align:right;padding:.2rem .5rem 0 0;font-size:.78rem}.calendar-all-day-label{display:none}.has-all-day .calendar-all-day-label{color:var(--muted);text-align:right;padding:.3rem .4rem 0 0;font-size:.7rem;display:block}.calendar-day-column{border-left:1px solid var(--line);min-width:0}.calendar-day-column.is-past{background:var(--calendar-past)}.calendar-day-column.is-today{background:#e9f0eb}.calendar-all-day{gap:.2rem;padding:0 .2rem;display:grid}.has-all-day .calendar-all-day{min-height:var(--calendar-hour);border-bottom:1px solid var(--line);align-content:start;padding-block:.2rem}.calendar-day-hours{grid-auto-rows:var(--calendar-hour);display:grid;position:relative}.calendar-slot{border:0;border-top:1px solid var(--line);cursor:pointer;background:0 0;width:100%;padding:0;display:block}.calendar-slot:hover{background:var(--hover)}.calendar-day-hours .calendar-block{z-index:1;position:absolute;overflow:hidden}.calendar-block,.calendar-chip{--block-bar:var(--accent);box-sizing:border-box;min-width:0;color:var(--ink);background:var(--surface);text-align:left;border:1px solid var(--line);border-left:3px solid var(--block-bar);box-shadow:0 0 0 1px var(--surface);cursor:pointer;border-radius:7px;align-content:start;gap:.1rem;padding:.2rem .4rem;font-size:.8rem;display:grid}.calendar-block-title{white-space:nowrap;text-overflow:ellipsis;gap:.3rem;min-width:0;font-weight:600;display:flex;overflow:hidden}.calendar-block-time{color:var(--muted);font-size:.72rem}.calendar-block .calendar-block-title:before,.calendar-chip:before{color:var(--block-bar);flex:none;font-weight:700}.calendar-block.done,.calendar-chip.done{background:var(--calendar-done)}.calendar-block.done .calendar-block-title:before,.calendar-chip.done:before{content:"✓"}.calendar-block.pending,.calendar-chip.pending{--block-bar:var(--ink)}.calendar-block.pending .calendar-block-title:before,.calendar-chip.pending:before{content:"○"}.calendar-block.in_progress,.calendar-chip.in_progress{background:var(--surface-raised)}.calendar-block.in_progress .calendar-block-title:before,.calendar-chip.in_progress:before{content:"◔"}.calendar-block.program,.calendar-chip.program{--block-bar:var(--top-bar);background:var(--calendar-program)}.calendar-block.program .calendar-block-title:before,.calendar-chip.program:before{content:"↻"}.calendar-block.overdue,.calendar-chip.overdue{--block-bar:var(--danger);background:var(--calendar-overdue)}.calendar-block.overdue .calendar-block-title:before,.calendar-chip.overdue:before{content:"!"}.calendar-block.overdue .calendar-block-time{color:var(--danger)}.calendar-block.not_done{--block-bar:var(--field-border);color:var(--muted);background:var(--surface-raised)}.calendar-block.not_done .calendar-block-title:before{content:"–"}.calendar-block:hover{filter:brightness(.97)}.calendar-mini-header{align-items:center;gap:.25rem;margin-bottom:.5rem;display:flex}.calendar-mini-header h3{flex:1}.calendar-mini-header .calendar-icon-button{border-color:#0000}.calendar-mini-grid{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-mini-weekday{color:var(--muted);padding:.3rem 0;font-size:.75rem}.calendar-mini-day{min-height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:10px;align-content:center;justify-items:center;gap:.1rem;padding:0;font-size:.875rem;display:grid}.calendar-mini-day:hover{background:var(--hover)}.calendar-mini-day.out-of-month{color:var(--muted)}.calendar-mini-day.in-week{background:var(--accent-soft);border-radius:0}.calendar-mini-day[aria-current=date] .calendar-mini-number{width:1.7rem;height:1.7rem;color:var(--on-accent);background:var(--accent);border-radius:50%;place-items:center;display:inline-grid}.calendar-dots{gap:2px;min-height:5px;display:flex}.calendar-dot{background:var(--field-border);border-radius:50%;width:5px;height:5px}.calendar-dot.done{background:var(--accent)}.calendar-dot.overdue{background:var(--danger)}.calendar-bars{grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.calendar-bars li{color:var(--muted);grid-template-rows:auto 4rem auto;justify-items:center;gap:.25rem;font-size:.75rem;display:grid}.calendar-bar-track{border-bottom:3px solid var(--line);align-items:end;width:100%;max-width:1.6rem;height:100%;display:flex}.calendar-bar-value{min-height:1lh}.calendar-bar{background:#6c917c;border-radius:4px 4px 0 0;width:100%;display:block}.calendar-bars .is-today{color:var(--ink);font-weight:700}.calendar-bars .is-today .calendar-bar{background:var(--accent)}.calendar-attention h3{align-items:center;gap:.4rem;display:flex}.calendar-attention h3:before{content:"!";border:2px solid var(--danger);width:1.2rem;height:1.2rem;color:var(--danger);border-radius:50%;place-items:center;font-size:.75rem;display:inline-grid}.calendar-attention-list{gap:1rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.calendar-attention-item{gap:.25rem;display:grid}.calendar-attention-item .calendar-muted{margin:0}.calendar-reschedule{justify-self:start;min-height:44px;margin-top:.5rem}.calendar-legend-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.calendar-chip{cursor:default;align-items:center;gap:.35rem;display:flex}.calendar-strip,.calendar-day-agenda{display:none}@media (width<=720px){.calendar-view{flex-direction:column;align-items:stretch;gap:1rem;padding:1rem;display:flex}.calendar-main{box-shadow:none;background:0 0;border:0;overflow:visible}.calendar-side{display:contents}.calendar-week,.calendar-mini,.calendar-progress,.calendar-legend,.calendar-create{display:none}.calendar-header{border:0;padding:0 0 .75rem}.calendar-header h2{font-size:1.25rem}.calendar-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;display:grid}.calendar-strip-day{min-height:4.5rem;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;justify-items:center;gap:.15rem;padding:.5rem 0;display:grid}.calendar-strip-day.is-past{background:var(--surface);border-color:var(--line)}.calendar-strip-day[aria-pressed=true]{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.calendar-strip-day[aria-pressed=true] .calendar-dot{background:var(--on-accent)}.calendar-strip-letter{font-size:.75rem}.calendar-strip-number{font-size:1.2rem;font-weight:700}.calendar-day-agenda{margin-top:1.25rem;display:block}.calendar-day-agenda header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.calendar-day-agenda h3{margin:0;font-size:1.15rem}.calendar-day-list{gap:.5rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.calendar-day-list .calendar-block{width:100%;min-height:44px;padding:.5rem .75rem;font-size:.9rem}.calendar-attention{order:2}}@media (width>=721px) and (width<=1100px){.calendar-view{grid-template-columns:minmax(0,1fr);grid-template-areas:"main""side"}.calendar-side{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}}@media (width>=901px){.workspace[data-form-open] .calendar-view{grid-template-columns:minmax(0,1fr);grid-template-areas:"main"}.workspace[data-form-open] .calendar-side{display:none}.workspace[data-form-open] .calendar-week-grid{grid-template-columns:3.5rem repeat(7,minmax(5.5rem,1fr));min-width:42rem}}.detail-pane[data-form-open]>:not(.activity-form){display:none}@media (width>=901px){.workspace[data-form-open]{grid-template-columns:minmax(0,1fr) minmax(360px,34rem)}}.activity-form,.activity-form form{flex-direction:column;flex:1 0 auto;display:flex}.form-bar{border-bottom:1px solid var(--line);align-items:center;gap:8px;min-height:56px;padding:0 28px 0 40px;display:flex}.form-bar .icon-button{width:44px;min-height:44px}.form-back{display:none}.breadcrumb{min-width:0;color:var(--muted);flex:1;align-items:center;gap:8px;font-size:.875rem;display:flex}.breadcrumb h2{color:var(--ink);letter-spacing:0;margin:0;font-size:.875rem;font-weight:500}.form-content{flex:1 0 auto;padding:32px 40px 24px}.title-input{border:0;border-bottom:2px solid var(--accent);width:100%;min-height:48px;color:var(--ink);background:0 0;border-radius:0;padding:4px 0;font-size:1.625rem;font-weight:600}.title-input:focus-visible{box-shadow:none;border-bottom-color:var(--ink);outline:none}.form-summary{color:var(--muted);overflow-wrap:anywhere;margin:12px 0 20px}.day-strip{border:1px solid var(--line);background:var(--surface-raised);border-radius:12px;padding:16px}.day-strip-heading{flex-wrap:wrap;justify-content:space-between;gap:4px 12px;font-size:.875rem;display:flex}.day-strip-heading h3{margin:0;font-size:.875rem;font-weight:600}.day-strip-heading span{color:var(--muted)}.day-strip-track{border-bottom:4px solid var(--line);height:44px;margin:12px 0 4px;padding:0;list-style:none;position:relative}.day-strip-block{min-width:0;height:100%;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;line-height:1.4;position:absolute;bottom:-4px;overflow:hidden}.day-strip-block:after{content:"";background:var(--muted);border-radius:4px;height:8px;position:absolute;bottom:0;left:0;right:0}.day-strip-block.current{z-index:1;color:var(--accent);font-weight:600;overflow:visible}.day-strip-block.current:after{background:var(--accent)}.day-strip-scale{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;padding-right:14%;font-size:.875rem;display:flex}.day-strip[data-undated] .day-strip-track,.day-strip[data-undated] .day-strip-scale{display:none}.form-section-title{margin:24px 0 8px;font-size:1rem;font-weight:600}.field-rows{gap:8px;display:grid}.field-row{border:1px solid var(--field-border);background:var(--surface);border-radius:8px;grid-template-columns:8rem minmax(0,1fr);align-items:center;gap:8px;min-height:48px;padding:0 12px;font-size:1rem;display:grid}.field-row:focus-within{border-color:var(--accent);box-shadow:var(--control-ring)}.field-row-label{color:var(--muted);align-items:center;gap:8px;display:inline-flex}.field-row-label .app-icon{width:1.125rem;height:1.125rem}.field-row input,.field-row .control-trigger{width:100%;min-height:44px;box-shadow:none;color:var(--ink);background:0 0;border:0;border-radius:0;padding:0;font-size:1rem}.field-row input:focus-visible,.field-row .control-trigger:focus-visible{box-shadow:none;outline:none}.field-row .enhanced-control{width:100%}.time-range{flex-wrap:wrap;gap:4px 16px;display:flex}.time-range label{color:var(--muted);align-items:center;gap:8px;font-size:.875rem;display:inline-flex}.time-range input{font-variant-numeric:tabular-nums;width:auto;min-width:6.5rem}.field-help{color:var(--muted);margin:0;font-size:.875rem}.activity-form .weekday-strip{gap:6px;max-width:100%;padding:4px;display:flex;overflow-x:auto}.activity-form .creation-weekdays{margin:12px 0 0}.activity-form .creation-weekdays label{flex:none;margin:0}.activity-form .creation-weekdays span{border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid}.activity-form .creation-weekdays input:checked+span{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.activity-form details>summary{cursor:pointer;min-height:44px;padding-block:12px}.activity-form .periodic-dates li{overflow-wrap:anywhere;flex-wrap:wrap;max-width:100%}.program-hint{background:var(--accent-soft);color:var(--accent);border-radius:8px;align-items:center;gap:8px;margin:12px 0 0;padding:6px 12px;font-size:.875rem;display:inline-flex}.program-hint .app-icon{width:1rem;height:1rem}.notes-field{margin-top:20px;font-weight:600}.notes-field textarea{font-weight:400}.danger-link{min-height:44px;color:var(--danger);background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:1rem;display:inline-flex}.danger-link:hover{text-decoration:underline}.form-error{min-height:1.5em;color:var(--danger);overflow-wrap:anywhere;margin:8px 0 0}.form-error:empty{min-height:0}.form-actions{z-index:1;border-top:1px solid var(--line);background:var(--surface);gap:12px;padding:16px 40px;display:flex;position:sticky;bottom:0}.form-actions .primary-button{flex:1}.form-actions [data-form-done]{display:none}@media (width<=900px){.detail-pane[data-form-open]{z-index:10;background:var(--background);border:0;border-radius:0;margin:0;position:fixed;inset:0;overflow-y:auto}.form-bar{border-bottom:0;padding:0 16px 0 8px}.form-back{display:grid}.form-close{display:none}.form-content{padding:8px 20px 24px}.title-input{font-size:1.5rem}.form-actions{padding:12px max(16px, env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left))}.activity-form[data-mode=edit] [data-form-cancel]{display:none}.activity-form[data-mode=edit] [data-form-done]{justify-content:center;align-items:center;gap:8px;display:inline-flex}.field-row{grid-template-columns:7rem minmax(0,1fr)}}@media (forced-colors:active){.activity-form .creation-weekdays input:checked+span{outline:2px solid highlight}.day-strip-block:after{background:canvastext}}
