/* Shared capture and task-editor additions. Every field can shrink on iPhone. */
.task-extras{min-width:0;margin:10px 0 2px;padding:14px 0;border-top:1px solid #e9edf3;border-bottom:1px solid #e9edf3}
.task-extras .task-extras-help{margin:6px 0 0;color:#77859a;font-size:11px;line-height:1.55;overflow-wrap:anywhere}
.task-extras .task-extras-help:empty{display:none}
.task-extras .task-repeat-fields{margin-top:16px}
.task-extras .task-repeat-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.task-extras [hidden]{display:none!important}
#task-dialog .task-extras label,#capture-manual .task-extras label{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:7px;min-width:0;min-height:0;margin:0;padding:0;border:0;color:#65758a;font-size:12px;line-height:1.4}
#task-dialog .task-extras :is(input,select),#capture-manual .task-extras :is(input,select){display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;height:44px;min-height:44px;border:1px solid #e5ebf3;border-radius:10px;padding:10px 12px;background-color:#f7f9fc;color:#233247;font:16px/1.4 var(--font);text-align:left;text-align-last:left;overflow:hidden}
#capture-manual .task-extras select,#task-dialog .task-extras select{padding-right:30px;background-position:right 12px center}
#capture-manual .task-extras input::-webkit-date-and-time-value{min-width:0;text-align:left}
.task-extras :is(input,select):disabled{opacity:.65}
.task-repeat-instance{padding:8px 0}
.task-repeat-instance button{min-height:40px;margin-top:6px;padding:8px 12px;border-radius:9px;background:#edf4ff;color:#2864c5;font:600 12px/1.4 var(--font)}
.task-tags{display:flex;flex-wrap:wrap;gap:5px;min-width:0;margin-top:7px}
.task-tag{display:inline-flex;align-items:center;max-width:100%;min-height:28px;padding:4px 9px;border:1px solid #dae6f5;border-radius:999px;background:#f1f6fc;color:#416991;font:500 11px/1.5 var(--font);overflow-wrap:anywhere;text-align:left;white-space:normal}
.task-tag[aria-pressed=true]{border-color:#9dbde9;background:#e4efff;color:#215dad}
.task-tag-filter{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0;margin:0 0 14px}.task-tag-filter[hidden]{display:none}
.task-tag-filter-label{margin-right:3px;color:#77859a;font-size:11px}
.task-tag-reset{min-height:32px;padding:4px 8px;color:#627b99;font:500 11px/1.5 var(--font)}
.task-tag-context{opacity:.65}
#capture.has-shortcuts{display:grid;grid-template-columns:16px minmax(0,1fr) auto auto;gap:0 8px;padding:4px 10px 10px}
#capture.has-shortcuts>#task-title{grid-column:2;grid-row:1;min-width:0}
#capture.has-shortcuts>span{grid-column:1;grid-row:1}
#capture.has-shortcuts>button[type=submit]{grid-column:3;grid-row:1}
#capture.has-shortcuts>#capture-options{grid-column:4;grid-row:1}
#capture-manual>.field-help{display:none}
.capture-shortcuts{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:0 4px;min-width:0;max-width:100%;margin-top:0}
#capture .capture-shortcut{position:relative;isolation:isolate;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:4px;min-width:44px;max-width:114px;height:44px;min-height:44px;padding:0 8px;border:0;border-radius:7px;background:transparent;color:#65758a;font:500 11px/1.35 var(--font);text-align:left;box-shadow:none;transform:none}
#capture .capture-shortcut::before{content:'';position:absolute;inset:8px 0;z-index:-1;border-radius:7px;background:#f3f5f8;transition:background .15s ease}
#capture .capture-shortcut svg{flex:0 0 13px;width:13px;height:13px}
#capture .capture-shortcut span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:76px}
#capture .capture-shortcut[data-active=true]{background:transparent;color:#2864c5}
#capture .capture-shortcut[data-active=true]::before{background:#edf3fc}
#capture .capture-shortcut:hover,#capture .capture-shortcut:active{background:transparent;box-shadow:none;transform:none}
#capture .capture-shortcut:hover::before{background:#e8eff8}
#capture .capture-shortcut:disabled{opacity:.45}
#capture .capture-shortcuts-hint{margin:4px 0 8px;color:#7c899a;font-size:11px;line-height:1.6;text-wrap:pretty}
.capture-typing-help{grid-column:1/-1;min-width:0;margin-top:0;color:#7c899a;font-size:11px;line-height:1.55}
.capture-typing-help summary{cursor:pointer;min-height:32px;padding:6px 0}
.capture-typing-help p{margin:4px 0 8px}
#capture-manual[data-quick-field=date]>label:not(:has(#capture-date,#capture-time,#capture-zone)),
#capture-manual[data-quick-field=priority]>label:not(:has(#capture-priority)),
#capture-manual[data-quick-field=note]>label:not(:has(#capture-note)),
#capture-manual:is([data-quick-field=tags],[data-quick-field=repeat])>label,
#capture-manual:is([data-quick-field=date],[data-quick-field=priority],[data-quick-field=note])>.task-extras,
#capture-manual[data-quick-field=repeat] :is(.task-tags-field,#capture-tags-help),
#capture-manual[data-quick-field=tags] :is(.task-repeat-fields,.task-repeat-instance,.task-repeat-preview){display:none!important}
#capture-manual[data-quick-field] .task-extras{border:0;margin:0;padding:14px 0 0}
#capture-manual[data-quick-field=repeat] .task-repeat-fields{margin-top:0}
@media(pointer:coarse){.task-tag,.task-tag-reset{min-height:44px}}
@media(max-width:360px){.task-extras .task-repeat-dates{grid-template-columns:minmax(0,1fr)}}
/* Completed visibility is a display preference beside Tree/List, even when empty. */
.tasks>.section-title{flex-wrap:wrap;gap:8px}
.tree-modes{flex-wrap:wrap;justify-content:flex-end;gap:2px;min-width:0}
.tree-modes #task-completed-toggle{min-height:32px;margin-left:6px;padding:5px 8px;border:1px solid #e1e7ef;border-radius:7px;background:transparent;color:#6c7e94;font:500 11px/1.4 var(--font);white-space:nowrap;box-shadow:none}
.tree-modes #task-completed-toggle:hover{background:#f3f6fa;color:#365879}
@media(max-width:480px){.tasks>.section-title .tree-modes{width:100%;margin-left:0;justify-content:flex-start}}
@media(pointer:coarse){.tree-modes #task-completed-toggle{min-height:44px}}
/* Parameter shortcuts appear while composing; each opens a small anchored menu. */
#capture.has-shortcuts{padding-bottom:4px}
#capture.has-shortcuts .capture-shortcuts,#capture.has-shortcuts .capture-typing-help{display:none}
#capture.has-shortcuts:is(:focus-within,[data-capture-draft=true],[data-capture-popover=true]) .capture-shortcuts{display:flex;width:fit-content;padding:0 5px;border:1px solid #e8edf4;border-radius:10px;background:#fff;box-shadow:0 3px 10px #23324709}
#capture.has-shortcuts:is(:focus-within,[data-capture-draft=true],[data-capture-popover=true]) .capture-typing-help{display:block}
.capture-popover-heading,.capture-parameter-menu{display:none}
#capture-manual[popover]:not(:popover-open){display:none!important}
#capture-fields #capture-manual[popover]{display:block;position:fixed;inset:auto;box-sizing:border-box;width:min(288px,calc(100vw - 24px));max-width:calc(100vw - 24px);margin:0;padding:12px 14px;border:1px solid #dce5f1;border-radius:14px;background:#fff;color:#233247;box-shadow:0 12px 36px #24395420,0 2px 8px #24395409;overflow:auto;overscroll-behavior:contain}
#capture-manual[popover]::backdrop{background:transparent}
#capture-manual[popover] .capture-popover-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:12px}
#capture-manual[popover] .capture-popover-done{min-height:32px;padding:4px 7px;font-size:11px;font-weight:500;color:var(--blue)}
#capture-manual[popover][data-quick-field=priority]>.capture-parameter-menu[data-parameter-menu=priority],#capture-manual[popover][data-quick-field=repeat] .capture-parameter-menu[data-parameter-menu=repeat]{display:grid;gap:2px}
#capture-manual[popover][data-quick-field=priority]>label:has(#capture-priority),#capture-manual[popover][data-quick-field=repeat] label:has(#capture-repeat-frequency){display:none!important}
#capture-manual[popover] .capture-parameter-menu button{position:relative;display:block;min-height:34px;width:100%;padding:7px 28px 7px 9px;border-radius:7px;background:transparent;font-size:12px;line-height:1.5;text-align:left;color:#52677f}
#capture-manual[popover] .capture-parameter-menu button[aria-pressed=true]{background:#edf3fd;color:var(--blue)}
#capture-manual[popover] .capture-parameter-menu button[aria-pressed=true]::after{content:'✓';position:absolute;right:10px}
#capture-manual[popover] .capture-parameter-menu button:hover{background:#f3f6fa}
#capture-manual[popover] :focus-visible{outline:2px solid #a9c4eb;outline-offset:1px}
#capture-fields #capture-manual[popover]>label{display:grid;grid-template-columns:minmax(0,1fr);min-height:0;gap:5px;margin:9px 0;padding:0;border:0;font-size:11px;color:#718299}
#capture-fields #capture-manual[popover] :is(input,select,textarea){display:block;min-width:0;width:100%;max-width:100%;min-height:40px;padding:8px 10px;border:1px solid #e4ebf4;border-radius:8px;background:#f8fafd;color:#31445c;font:14px/1.4 var(--font);text-align:left;text-align-last:left}
#capture-fields #capture-manual[popover] textarea{height:92px;resize:vertical}
#capture-fields #capture-manual[popover] .task-extras{padding:0;margin:0;border:0}
#capture-fields #capture-manual[popover] .task-repeat-dates{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:12px}
#capture-fields #capture-manual[popover] .task-extras :is(input,select){height:40px;min-height:40px}
#capture-manual[popover] .task-repeat-fields{margin-top:0}
#capture-manual[popover] .task-extras-help{font-size:10px;line-height:1.5}
@media(pointer:coarse){#capture-manual[popover] .capture-parameter-menu button,#capture-manual[popover] .capture-popover-done{min-height:44px}#capture-fields #capture-manual[popover] :is(input,select,textarea){font-size:16px}}
/* A quiet focus treatment; priority text stays colored and menu selections bounce. */
#capture.has-shortcuts{position:relative;transition:border-color .16s ease,box-shadow .16s ease}
#capture.has-shortcuts:has(#task-title:focus){border-color:#a8bfdf;box-shadow:0 0 0 2px #2864c50a}
#capture.has-shortcuts>#task-title:focus,#capture.has-shortcuts>#task-title:focus-visible{outline:none;box-shadow:none}
.capture-priority-feedback{position:absolute;z-index:1;box-sizing:border-box;display:flex;align-items:center;overflow:hidden;pointer-events:none;white-space:pre;background:transparent}
.capture-priority-line{display:block;flex:0 0 auto;white-space:pre}
#capture #task-title.priority-feedback-active{-webkit-text-fill-color:transparent;caret-color:var(--blue)}
.capture-priority-slot{display:inline-block;position:relative;color:transparent}
.capture-priority-token{position:absolute;left:0;top:0;display:inline-block;color:#967000;font-weight:700;transform-origin:50% 75%}
.capture-priority-token[data-priority="2"]{color:#c13f3f;font-weight:800}
.capture-priority-token.is-bouncing{animation:capture-priority-bounce .46s cubic-bezier(.2,.8,.25,1) both}
@keyframes capture-priority-bounce{0%{transform:scale(.75);opacity:.35}38%{transform:translateY(-4px) scale(1.25);opacity:1}65%{transform:translateY(1px) scale(.96)}82%{transform:translateY(-1px) scale(1.04)}100%{transform:none;opacity:1}}
@media(prefers-reduced-motion:reduce){#capture.has-shortcuts{transition:none}.capture-priority-token{animation:none}}

/* One inline composer is shared by Inbox, Today and Projects. */
.capture-inline-host{min-width:0;max-width:100%}
#inbox-capture.capture-inline-host{margin:0 0 10px}
#capture-fields.capture-inline{min-width:0;max-width:100%;scroll-margin-block:100px}
#capture-fields.capture-inline #capture{display:grid;grid-template-columns:16px minmax(0,1fr) auto 44px;align-items:center;gap:0 5px;box-sizing:border-box;min-width:0;min-height:52px;margin:0;padding:3px 7px 3px 12px;border:1px solid #dce6f3;border-radius:12px;background:#f8fbff;box-shadow:none}
#capture-fields.capture-inline #capture:focus-within,#capture-fields.capture-inline #capture[data-capture-popover=true]{border-color:#afc8e9;background:#fff;box-shadow:0 0 0 2px #397cca08}
#capture-fields.capture-inline #capture>span:first-child{display:flex;align-items:center;justify-content:center;min-width:0;height:44px;grid-column:1;grid-row:1;margin:0;padding:0;color:#7696be;font:300 22px/1 var(--font)}
#capture-fields.capture-inline #task-title{display:block;grid-column:2;grid-row:1;box-sizing:border-box;width:100%;max-width:100%;min-width:0;height:44px;min-height:44px;margin:0;padding:10px 3px;border:0;border-radius:0;background:transparent;color:#304a68;font:400 14px/1.5 var(--font);letter-spacing:0;box-shadow:none}
#capture-fields.capture-inline #task-title::placeholder{color:#6d86a4}
#capture-fields.capture-inline #task-title:focus,#capture-fields.capture-inline #task-title:focus-visible{outline:none;box-shadow:none}
#capture-fields.capture-inline #capture>button[type=submit]{display:flex;align-items:center;justify-content:center;grid-column:3;grid-row:1;min-width:44px;min-height:44px;max-width:92px;margin:0;padding:7px 8px;border:0;border-radius:8px;background:transparent;color:#2f70bc;font:600 12px/1.4 var(--font);overflow-wrap:anywhere;box-shadow:none}
#capture-fields.capture-inline #capture>button[type=submit]:hover{background:#edf5ff}
#capture-fields.capture-inline #capture>button[type=submit]:disabled{color:#7892b2;opacity:.6;cursor:default}
#capture-fields.capture-inline #capture-options{display:grid;place-items:center;grid-column:4;grid-row:1;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;margin:0;border:0;border-radius:8px;background:transparent;color:#7590b0;font:500 18px/1 var(--font);box-shadow:none}
#capture-fields.capture-inline #capture-options::after{content:none}
#capture-fields.capture-inline #capture-options:hover,#capture-fields.capture-inline #capture-options[aria-expanded=true]{color:#3979c4;background:#eef5ff}
#capture-fields.capture-inline #capture button:focus-visible{outline:2px solid #9abce8;outline-offset:1px}
#capture-fields.capture-inline #capture .capture-shortcuts{grid-column:1/-1;grid-row:2;flex-wrap:nowrap;gap:2px;box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin:0;padding:1px 0 0;overflow-x:auto;overflow-y:hidden;border:0;border-top:1px solid #eef2f8;border-radius:0;background:transparent;box-shadow:none;scrollbar-width:thin;scrollbar-color:#d5e3f5 transparent}
#capture-fields.capture-inline #capture .capture-shortcuts::-webkit-scrollbar{height:3px}
#capture-fields.capture-inline #capture .capture-shortcuts::-webkit-scrollbar-thumb{background:#d5e3f5;border-radius:3px}
#capture-fields.capture-inline #capture .capture-shortcut{min-width:44px;max-width:110px;min-height:44px;height:44px;padding:0 6px;gap:4px;border-radius:7px;color:#607d9e;font-size:11px;line-height:1.4}
#capture-fields.capture-inline #capture .capture-shortcut::before{inset:8px 0;background:#f1f5fa}
#capture-fields.capture-inline #capture .capture-shortcut[data-active=true]{color:#386fae}
#capture-fields.capture-inline #capture .capture-shortcut[data-active=true]::before{background:#eaf2fd}
#capture-fields.capture-inline #capture .capture-shortcut:hover::before{background:#e6effb}
#capture-fields.capture-inline .capture-typing-help{grid-column:1/-1;grid-row:3;margin:0;color:#6f849e;font-size:11px;line-height:1.5}
#capture-fields.capture-inline .capture-typing-help summary{box-sizing:border-box;width:fit-content;min-height:28px;margin:0;padding:4px 1px 6px;font-size:11px;line-height:1.5}
#capture-fields.capture-inline .capture-typing-help[open] summary{padding-bottom:3px}
#capture-fields.capture-inline .capture-typing-help p,#capture-fields.capture-inline #capture .capture-shortcuts-hint{margin:3px 1px 8px;color:#687f9b;font-size:11px;line-height:1.6;overflow-wrap:anywhere}
#capture-fields.capture-inline #capture-preview,#capture-fields.capture-inline #capture-status{margin:6px 1px 0;min-height:0;font-size:11px;line-height:1.5;overflow-wrap:anywhere}
#capture-fields.capture-inline #capture-preview{color:#647e9d}
#capture-fields.capture-inline #capture-preview:empty,#capture-fields.capture-inline #capture-status:empty{display:none}
#capture-fields.capture-inline #capture-manual:not([popover]){gap:12px;margin:10px 0 0;padding:14px;border:1px solid #e3eaf4;border-radius:12px;background:#fbfcff}
#capture-fields.capture-inline #capture-manual:not([popover])[hidden]{display:none}
#capture-fields.capture-inline #capture-manual:not([popover]) :is(input,select,textarea){display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:44px;padding:10px 11px;border:1px solid #e1e8f3;border-radius:9px;background:#fff;color:#344b67;font:14px/1.4 var(--font);text-align:left;text-align-last:left;overflow:hidden}
#capture-fields.capture-inline #capture-manual:not([popover]) label{min-width:0;color:#6a7f9a;font-size:12px;line-height:1.5}
#capture-fields.capture-inline #capture-manual:not([popover]) textarea{min-height:84px;resize:vertical}
#capture-fields.capture-inline #capture-manual:not([popover]) input::-webkit-date-and-time-value{min-width:0;text-align:left}
@media(max-width:760px){
 body:has(#capture-fields.capture-inline:focus-within) #quick-add,body:has(#capture[data-capture-popover=true]) #quick-add{visibility:hidden;pointer-events:none}
 #capture-fields.capture-inline #capture{padding-left:10px;padding-right:4px;column-gap:3px}
 #capture-fields.capture-inline #task-title{font-size:16px;padding-left:2px;padding-right:2px}
 #capture-fields.capture-inline #capture>button[type=submit]{font-size:12px;padding-left:5px;padding-right:5px}
 #capture-fields.capture-inline .capture-typing-help summary{min-height:32px;padding-top:6px;padding-bottom:7px}
 #capture-fields #capture-manual[popover] :is(input,select,textarea),#capture-fields.capture-inline #capture-manual:not([popover]) :is(input,select,textarea){font-size:16px}
 #capture-fields.capture-inline #capture-manual:not([popover]){grid-template-columns:minmax(0,1fr);padding:12px}
 #capture-manual[popover] .capture-parameter-menu button,#capture-manual[popover] .capture-popover-done{min-height:44px}
}
@media(prefers-reduced-motion:reduce){#capture-fields.capture-inline #capture{transition:none}}

/* Project selection shares the same compact parameter surface as dates/tags. */
#capture-manual[data-quick-field]:not([data-quick-field=project])>.capture-project-field,
#capture-manual[data-quick-field=project]>label,
#capture-manual[data-quick-field=project]>.task-extras{display:none!important}
.capture-project-field{min-width:0;max-width:100%;padding:0;margin:0}
#capture-manual:not([popover])>.capture-project-field{padding-bottom:14px;border-bottom:1px solid #e5edf7}
#capture-manual .capture-project-modes{display:grid;gap:2px;margin:0 0 12px}
#capture-manual .capture-project-modes button,#capture-manual .capture-project-option,#capture-manual #capture-project-create{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;box-sizing:border-box;width:100%;min-width:0;min-height:40px;padding:9px 28px 9px 10px;border:0;border-radius:8px;background:transparent;color:#536d8a;font:500 12px/1.45 var(--font);text-align:left;white-space:normal;overflow-wrap:anywhere;box-shadow:none}
#capture-manual .capture-project-modes button:hover,#capture-manual .capture-project-option:hover{background:#f3f7fc}
#capture-manual .capture-project-modes button[aria-pressed=true],#capture-manual .capture-project-option[aria-pressed=true]{background:#ecf3fe;color:#2f6cb7}
#capture-manual .capture-project-modes button[aria-pressed=true]::after,#capture-manual .capture-project-option[aria-pressed=true]::after{content:'✓';position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:13px}
#capture-manual .capture-project-search-label{display:block;padding:0;margin:0 0 6px;min-height:0;color:#627b97;font:500 12px/1.45 var(--font)}
#capture-manual .capture-project-list{display:grid;gap:2px;max-height:178px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;margin:7px 0 0}
#capture-manual .capture-project-option span{display:block;min-width:0;max-width:100%;overflow-wrap:anywhere}
#capture-manual .capture-project-option small{margin-top:2px;color:#647a95;font-size:10px;font-weight:400}
#capture-manual #capture-project-create{margin-top:7px;padding-right:10px;background:#eef5ff;color:#2a67b1;font-weight:600}
#capture-manual .capture-project-empty,#capture-manual .capture-project-help,#capture-manual .capture-project-error{margin:9px 2px 0;color:#657c97;font:400 11px/1.55 var(--font);overflow-wrap:anywhere}
#capture-manual .capture-project-error{color:#a34747}
#capture-manual .capture-project-error:empty{display:none}
#capture-manual .capture-project-field [hidden]{display:none!important}
#capture-manual .capture-project-field button:disabled{opacity:.55;cursor:default}
@media(pointer:coarse),(max-width:760px){#capture-manual .capture-project-modes button,#capture-manual .capture-project-option,#capture-manual #capture-project-create{min-height:44px}#capture-manual .capture-project-list{max-height:180px}}
.task-extras .task-repeat-preview{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:12px;border:1px solid #e2ebf7;border-radius:10px;background:#f3f7fd}
.task-repeat-preview>div{display:grid;gap:3px;min-width:0;color:#667d99;font:400 11px/1.45 var(--font)}
.task-repeat-preview strong{color:#315b8b;font:600 13px/1.45 var(--font)}
#capture-manual .task-repeat-preview button,#task-dialog .task-repeat-preview button{flex:0 1 auto;min-height:44px;min-width:44px;padding:7px 9px;border:1px solid #d9e4f1;border-radius:8px;background:#fff;color:#586f89;font:500 12px/1.4 var(--font);box-shadow:none;white-space:normal}
#task-dialog .task-repeat-instance button{min-height:44px}
