/* Project map and action details, using the existing tracker palette. */
.drag-action{touch-action:none;user-select:none;-webkit-user-drag:none}
.project-page{padding-top:24px}.project-page .page-heading{margin-bottom:18px}.project-page #page-eyebrow,.project-page #page-description{display:none}.project-page h1{font-size:32px}.project-page .quick-capture{margin-bottom:16px;padding-top:2px;padding-bottom:2px}.project-page .project-overview{padding:18px 22px;margin-bottom:12px}.project-page .project-next-strip{padding-bottom:16px}.project-page .map-header{padding-top:20px}.project-page .map-header .eyebrow{display:none}
.project-overview{display:flex;gap:32px;justify-content:space-between;align-items:center;margin:0 0 20px;padding:24px 28px;background:#fff;border:1px solid var(--line);border-radius:14px}
.project-purpose{min-width:0;flex:1}.project-purpose>p:not(.eyebrow){font-size:15px;line-height:1.7;max-width:760px;margin-bottom:12px;white-space:pre-wrap;overflow-wrap:anywhere}.project-purpose .eyebrow{margin-bottom:10px}.overview-meta{display:flex;gap:16px;align-items:center;flex-wrap:wrap;font-size:11px;color:var(--muted)}
.project-completion{width:185px;flex:none;border-left:1px solid var(--line);padding-left:28px}.project-completion>strong{font:34px Georgia,serif}.project-completion>strong>span{font-size:23px;color:var(--muted)}.project-completion>p{font-size:11px;color:var(--muted);margin:5px 0 15px}.project-completion .progress-track span{display:none}
.project-next-strip{display:flex;gap:15px;align-items:center;flex-wrap:wrap;padding:0 4px 24px;font-size:12px;color:var(--muted)}.next-strip-label{font-size:10px;text-transform:uppercase;letter-spacing:1px;font-weight:650;color:var(--green)}.project-next-strip>button{padding:0;min-height:28px;font-size:13px;text-align:left;font-weight:600;color:var(--green);overflow-wrap:anywhere}.project-next-strip>button>span{margin-left:8px}
.dependency-map{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-bottom:36px}.map-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 28px 18px}.map-header .eyebrow{margin-bottom:8px}.map-header h2{font:27px Georgia,serif;letter-spacing:-.5px;margin:0 0 9px}.map-header p:not(.eyebrow){font-size:12px;line-height:1.6;color:var(--muted);margin:0}.map-controls{display:flex;align-items:center;gap:8px;flex:none}.map-controls>button{font-size:11px;min-height:36px;padding:7px 11px}.map-controls>button[aria-pressed=true]{background:var(--soft)}.map-controls>a{font-size:11px;padding:10px 6px;text-underline-offset:3px}.map-legend{display:flex;gap:21px;align-items:center;flex-wrap:wrap;padding:0 28px 18px;font-size:10px;color:#657165}.map-legend>span{display:flex;align-items:center;gap:6px}.map-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;border:1px solid #abb5ac;background:#e7ebe7}.map-legend .underway{background:#f5d16f;border-color:#b79940}.map-legend .complete{background:#4b8662;border-color:#417653}.map-legend .attention{background:#d7867c;border-color:#a84b40}
.graph-viewport{position:relative;overflow:auto;max-height:680px;border-top:1px solid #edf0e8;border-bottom:1px solid #edf0e8;background-color:#fcfdfa;background-image:radial-gradient(#dce3d9 .7px,transparent .7px);background-size:18px 18px;padding:0 12px;overscroll-behavior:contain;scrollbar-gutter:stable}.graph-viewport:focus-visible{outline:3px solid #bb8a3e;outline-offset:-3px}.graph-size{position:relative;margin:0 auto}.graph-plane{position:relative;transform-origin:top left}.graph-lines{position:absolute;inset:0;pointer-events:none;overflow:visible}.graph-edge{fill:none;stroke:#a6afa5;stroke-width:1.5;stroke-dasharray:5 4}.graph-edge.satisfied{stroke:#6c9879;stroke-dasharray:none;stroke-width:2}
.graph-node{position:absolute;width:216px;min-height:0;display:flex;flex-direction:column;align-items:center;padding:0 7px 5px;border-radius:12px;z-index:1}.graph-node:hover{background:#f0f4eb;box-shadow:0 0 0 1px #d4ddce}.graph-node:focus-visible{outline-offset:4px}.node-circle{display:grid;place-items:center;flex:none;position:relative;width:57px;height:57px;border:2px solid #aab4aa;border-radius:50%;background:#edf0eb;color:#5c695e;font-size:21px;font-weight:600;font-variant-numeric:tabular-nums;box-shadow:0 0 0 6px #fcfdfa}.underway .node-circle{background:#ffe7a0;border-color:#bd9b42;color:#6e5118}.complete .node-circle{background:#427853;border-color:#356544;color:white}.attention .node-circle{background:#f9d9d3;border-color:#b85c50;color:#8c342a}.node-check{position:absolute;right:-6px;bottom:-4px;border:2px solid #fcfdfa;background:#427853;border-radius:50%;width:23px;height:23px;display:grid;place-items:center;font-size:12px}.graph-node.chosen .node-circle{border:5px solid #243b35;outline:none;font-weight:750}.node-next{position:absolute;left:141px;top:17px;background:#e8eedc;color:#4f673f;padding:4px 7px;border-radius:5px;font-size:9px;font-weight:600}.node-title{font-size:12px;line-height:1.3;font-weight:600;margin-top:7px;max-width:200px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;background:#fcfdfa}.node-state{font-size:10px;line-height:12px;margin-top:3px;color:#616e62;background:#fcfdfa}.node-readiness{display:flex;gap:4px;align-items:center;font-size:10px;line-height:12px;color:#71806d;margin-top:3px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#fcfdfa}.attention .node-state{color:#9b4236}.underway .node-state{color:#836420}.complete .node-state{color:#416f4d}.graph-node.inactive .node-circle{border-style:dashed}.map-footnote{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted);padding:14px 28px;margin:0;line-height:1.7}.lock-icon{flex:none;display:inline-block;vertical-align:middle}
.action-list-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:17px}.action-list-heading h2{font:25px Georgia,serif;margin:0 0 9px}.action-list-heading h2>span{font:11px -apple-system,sans-serif;color:var(--muted);margin-left:7px}.action-list-heading p{font-size:12px;color:var(--muted);margin:0;line-height:1.7}.action-list-heading>button{flex:none;font-size:12px}.numbered-action-list{list-style:none;padding:0;margin:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white}.ordered-action{display:flex;align-items:stretch;border-bottom:1px solid var(--line);position:relative}.ordered-action:last-child{border-bottom:0}.ordered-action.dragging{opacity:.5}.ordered-action.drop-target{box-shadow:inset 0 3px 0 #5d7f4b;background:#f3f7ed}.ordered-action-link{display:flex;align-items:center;gap:14px;flex:1;min-width:0;min-height:56px;padding:10px 16px;text-align:left}.ordered-action-link:hover{background:#f5f8f1}.ordered-action-link:focus-visible{outline-offset:-3px}.ordered-action-title{font-size:13px;line-height:1.5;font-weight:550;overflow-wrap:anywhere}.ordered-action.done .ordered-action-title{text-decoration:line-through;color:#768070}.action-order-controls{display:flex;align-items:center;justify-content:center;width:72px;flex:none;padding:2px 4px;border-left:1px solid #eef1eb;background:#fafbf8}.drag-action{cursor:grab;min-height:44px;width:32px;padding:0;font-size:19px;color:#73816f}.drag-action:active{cursor:grabbing}.list-number{display:grid;place-items:center;flex:none;width:29px;height:29px;border-radius:50%;font-size:12px;background:#edf0eb;color:#59685b}.list-number.underway{background:#ffedb9;color:#7b5c1a}.list-number.complete{background:#dceddd;color:#386442}.list-number.attention{background:#f9dcd6;color:#943e31}.move-buttons{display:flex;flex-direction:column}.move-buttons>button{min-height:26px;min-width:28px;color:#617356;padding:2px;line-height:20px;border-radius:4px}.move-buttons>button:hover:not(:disabled),.drag-action:hover{background:#eaf0e5}.move-buttons>button:disabled{opacity:.25;cursor:default}.dependency-note{display:flex;gap:5px;align-items:baseline;font-size:11px;line-height:1.6;color:#6e786a;margin:9px 0 0}.attention-note{font-size:11px;line-height:1.6;color:#a04b3e;margin:8px 0 0}.status.in-progress{background:#fff0bd;color:#7b5c1a}.status.waiting,.status.needs-attention{background:#f9ded7;color:#944337}.status.not-started{background:#edf0eb;color:#687467}
.action-drawer{inset:0 0 0 auto;margin:0;height:100dvh;max-height:100dvh;width:min(560px,calc(100% - 24px));border-radius:17px 0 0 17px}.action-drawer form{height:100%;max-height:100dvh}.action-drawer::backdrop{background:#26352f29;backdrop-filter:none}.action-drawer .dialog-header{padding-top:23px;padding-bottom:20px}.action-context{font-size:11px;line-height:1.6;color:var(--muted);margin-bottom:20px}.dependency-fieldset{border:1px solid var(--line);border-radius:9px;padding:14px;margin:0 0 23px;min-width:0}.dependency-fieldset>legend{font-size:12px;font-weight:650;padding:0 6px}.dependency-help{font-size:11px;line-height:1.7;color:var(--muted);margin:0 0 12px}.dependency-choices{max-height:220px;overflow:auto;padding:1px 5px}.dependency-choice{display:flex;align-items:flex-start;gap:10px;padding:9px 0;font-size:12px;cursor:pointer}.dependency-choice+.dependency-choice{border-top:1px solid #edf0e8}.dependency-choice input{width:17px;height:17px;min-height:17px;margin:1px 0 0;accent-color:var(--green);flex:none}.dependency-choice strong{font-weight:500;line-height:1.5;overflow-wrap:anywhere}.dependency-choice small{display:block;font-size:10px;margin-top:4px;color:var(--muted)}.dependency-choice.unavailable{opacity:.5;cursor:default}.dependency-readiness{font-size:11px;line-height:1.6;margin:12px 0 0;color:#51734c}.dependency-readiness.has-prerequisites{color:#697465}.dependency-choices>.subtle-note{font-size:11px;margin:0;padding:6px 0}
@media(max-width:1000px){.map-header{align-items:flex-start;flex-direction:column}.map-controls{flex-wrap:wrap}.project-overview{padding:22px;gap:22px}.project-completion{width:145px;padding-left:20px}}
@media(max-width:740px){.project-overview{align-items:flex-start;padding:20px;gap:18px}.project-completion{width:95px;padding-left:15px}.project-completion>strong{font-size:26px}.project-completion>strong>span{font-size:17px}.project-purpose>p:not(.eyebrow){font-size:13px}.overview-meta{gap:8px}.map-header{padding:22px 18px 16px}.map-legend{padding:0 18px 17px;gap:12px}.map-footnote{padding:12px 18px;align-items:flex-start}.graph-viewport{max-height:600px}.action-list-heading{align-items:flex-start}.action-list-heading>button{font-size:10px;padding:8px}.ordered-action-link{gap:10px;padding:10px 12px}.action-drawer{width:100%;border-radius:0}.action-drawer .dialog-body{padding:20px}.action-drawer .dialog-header,.action-drawer .dialog-footer{padding:18px 20px}.action-list-heading h2{font-size:23px}.node-readiness{font-size:11px}}
@media(prefers-reduced-motion:reduce){.graph-node{transition:none}}

/* Next-action triage and the action editor's required fields. */
.priority-guide {display:flex;justify-content:space-between;align-items:center;gap:16px;background:#f0f4ef;border:1px solid #d9e3d7;border-radius:12px;padding:16px 20px;margin-bottom:28px}
.priority-guide p {margin:0;display:grid;gap:5px;font-size:14px;color:#536357}
.priority-guide strong {color:#243b35;font-size:15px}
.priority-unset-count {font-size:13px;font-weight:650;white-space:nowrap;color:#465b49}
.next-priority-footer {padding:0 20px 18px 56px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.next-priority {display:flex;align-items:center;gap:10px;font-size:12px;font-weight:650;color:#536357}
.next-priority select {min-width:120px;padding:8px 28px 8px 12px;border:1px solid #bdc8bd;border-radius:8px;background:#f5f7f3;color:#344d39;font:inherit;font-size:13px;cursor:pointer}
.next-priority.high select {background:#fbe7e2;color:#8b3026;border-color:#d9a299}
.next-priority.medium select {background:#fff1d0;color:#795315;border-color:#dbc38a}
.next-priority.low select {background:#eaf0f7;color:#355674;border-color:#b1c4d5}
.next-priority.unset select {background:#fff;color:#62685e;border-style:dashed}
.next-priority select:focus-visible {outline:3px solid #587b60;outline-offset:3px}
.priority-prompt {font-size:12px;color:#687363}
.required-fields {margin:0 0 26px;padding:14px 18px 2px;border:1px solid #bbcdbb;border-radius:12px;background:#f3f7f1;min-width:0}
.required-fields legend {padding:0 6px;font-size:13px;font-weight:750;color:#34503a}
.required-fields .field-help {margin:0 0 16px}
.required-label {display:inline-block;color:#466349;font-size:11px;font-weight:650}
.optional-heading {margin:0 0 20px}
.optional-heading h3 {margin:0 0 6px;font-size:15px}
.optional-heading p {margin:0;color:#697268;font-size:13px;line-height:1.5}
.field > .field-help {font-size:12px;font-weight:400;line-height:1.4}
@media(max-width:600px){.priority-guide{align-items:flex-start;flex-direction:column;gap:10px}.next-priority-footer{padding-left:20px}.next-priority{flex-wrap:wrap}}

.field-caption {display:flex;align-items:baseline;justify-content:space-between;gap:12px}

/* A single queue across groups, with local view controls. */
.next-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px;background:#f0f4ed;border:1px solid #dce4d6;border-radius:12px}
.next-filters{display:flex;gap:5px;flex-wrap:wrap}
.priority-filter{display:flex;align-items:center;gap:7px;min-height:38px;padding:8px 11px;border-radius:7px;font-size:12px;color:#5b6a53;border:1px solid transparent}
.priority-filter>span{font-size:10px;min-width:17px;text-align:center;opacity:.8}
.priority-filter.selected{background:#fff;border-color:#b9c9af;color:#304b2f;font-weight:650;box-shadow:0 1px 3px #243b3510}
.next-sort{display:flex;align-items:center;gap:9px;font-size:11px;color:#5b6a53}
.next-sort select{font:inherit;font-size:12px;min-height:38px;background:white;border:1px solid #cbd6c4;border-radius:7px;padding:7px 24px 7px 10px;color:#344a30;max-width:100%}
.next-view-summary{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:14px 2px 20px;color:var(--muted);font-size:11px;line-height:1.5}
.next-view-summary p{margin:0}
.next-flat-list{display:grid;gap:15px}
.next-flat-list .next-project{background:#fff;border:1px solid var(--line);border-left:4px solid var(--group-colour,#64716c);border-radius:12px;overflow:hidden}
.next-flat-list .next-project>header{align-items:flex-start;padding-bottom:3px}
.next-project-heading{display:flex;align-items:center;flex-wrap:wrap;gap:9px 13px;min-width:0}
.next-project-heading h2{margin:0;font-size:13px;min-width:0}
.next-project-heading h2 button{font:inherit;font-weight:650;padding:0;min-height:30px;text-align:left;overflow-wrap:anywhere}
.group-badge{display:inline-flex;align-items:center;gap:7px;border:1px solid #e2e7dd;background:#f9fbf6;border-radius:6px;min-height:28px;padding:4px 8px;font-size:10px;line-height:1.4;color:#46523e;max-width:100%;text-align:left}
.group-badge>span:last-child{overflow-wrap:anywhere;min-width:0}
.group-dot{display:inline-block;flex:none;width:10px;height:10px;border-radius:50%;background:var(--group-colour,#64716c);box-shadow:inset 0 0 0 1px #00000020}
.group-symbol[data-group-colour]{color:var(--group-colour,#64716c);background:#f4f6f1;border:1px solid #e1e7dc}
.group-colour-field{border:0;padding:0;margin:0 0 24px;min-width:0}
.group-colour-field legend{font-size:12px;font-weight:650;padding:0}
.group-colour-field p{font-size:11px;color:var(--muted);line-height:1.7;margin:8px 0 12px}
.colour-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:14px}
.colour-option{display:flex;gap:7px;align-items:center;justify-content:center;border:1px solid #dde4d6;border-radius:7px;padding:7px;font-size:11px;min-height:38px}
.colour-option[aria-pressed=true]{outline:2px solid #47663c;outline-offset:1px;background:#edf3e8}
.custom-colour{display:flex;align-items:center;gap:12px;font-size:12px;color:#52634a}
.custom-colour input[type=color]{width:48px;height:34px;min-height:34px;padding:2px;border:1px solid #c7d3be;border-radius:6px;background:white;cursor:pointer}
#group-colour-value{font:11px ui-monospace,monospace;color:var(--muted)}
@media(max-width:740px){.next-controls{align-items:flex-start;padding:12px;gap:13px}.next-sort{width:100%;justify-content:space-between}.next-filters{width:100%;gap:2px}.priority-filter{padding:8px;gap:4px}.next-project-heading{align-items:flex-start;flex-direction:column;gap:5px}.next-flat-list .next-project>header{padding-left:14px}.next-priority-footer{padding-left:48px}.next-view-summary{font-size:11px}.colour-options{grid-template-columns:repeat(2,minmax(0,1fr))}}

.custom-colour #group-colour-value{width:100px;min-height:34px;padding:7px 9px;border:1px solid #c7d3be;border-radius:6px;background:#fff;color:#46523e}

/* Explicit completion controls on the Next Actions page. */
.next-flat-list .next-priority-footer{padding-left:20px}
.complete-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-left:auto;min-height:38px;padding:8px 13px;border:1px solid #b8cdb7;border-radius:8px;background:#f1f7ed;color:#365d33;font-size:12px;font-weight:600;white-space:nowrap}
.complete-action:hover{background:#e2efdb;border-color:#92b48c}
.complete-action:disabled{opacity:.55;cursor:wait}
.complete-action>span{font-size:15px}
.completion-help{font-size:11px;line-height:1.6;color:var(--muted);margin:-6px 2px 18px}
@media(max-width:600px){.next-flat-list .next-priority-footer{padding-left:18px}.complete-action{margin-left:0}}

/* Compact queue: action and controls above one line of project context. */
.next-flat-list{gap:10px}
.next-flat-list .compact-next{padding:11px 16px 10px;border-radius:10px}
.next-compact-top{display:flex;align-items:center;justify-content:space-between;gap:10px 18px;flex-wrap:wrap}
.next-compact-top h2{flex:1 1 220px;min-width:0;font:inherit;margin:0}
.compact-action-name{padding:0;min-height:30px;text-align:left;font-size:14px;line-height:1.45;font-weight:650;overflow-wrap:anywhere}
.next-compact-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.next-compact-controls .next-priority select{min-width:99px;min-height:34px;padding:6px 22px 6px 10px;font-size:12px}
.next-compact-date{font-size:11px;line-height:1.5;color:#64715d;min-width:86px;white-space:nowrap}
.next-compact-controls .complete-action{margin:0;min-height:34px;padding:6px 10px;font-size:11px}
.next-compact-meta{display:flex;align-items:center;gap:7px 12px;flex-wrap:wrap;margin-top:5px;min-width:0}
.next-compact-meta .group-badge{min-height:24px;padding:2px 7px}
.compact-project-link{font-size:11px;line-height:1.5;min-height:26px;padding:0;text-align:left;color:#65735d;overflow-wrap:anywhere}
.compact-project-link:hover{color:#2e5033;text-decoration:underline;text-underline-offset:3px}
.compact-project-link>span{color:#87917e}
.compact-prerequisites{display:inline-flex;align-items:center;gap:5px;font-size:10px;color:#6a7264}
@media(max-width:740px){.next-flat-list .compact-next{padding:10px 12px}.next-compact-top{gap:5px}.next-compact-top h2{flex-basis:100%}.next-compact-controls{width:100%;gap:8px}.next-compact-controls .next-priority select{min-width:90px}.next-compact-date{min-width:0;flex:1}.next-compact-meta{gap:5px 9px;margin-top:7px}}

/* Keep the queue close to its heading without shrinking its controls. */
.next-actions-page{padding-top:20px}
.next-actions-page #page-eyebrow,.next-actions-page #page-description{display:none}
.next-actions-page .page-heading{margin-bottom:12px;gap:12px}
.next-actions-page h1{font-size:30px}
.next-actions-page .page-tools .secondary{min-height:36px;padding:7px 12px;font-size:12px}
.next-actions-page .next-controls{padding:8px 12px;gap:8px 12px;border-radius:10px}
.next-actions-page .next-view-summary{margin:8px 2px 12px;gap:4px 12px}
@media(max-width:740px){
  .next-actions-page{padding-top:16px}
  .next-actions-page h1{font-size:27px}
  .next-actions-page .next-controls{padding:8px}
}

/* Independent filters share one compact toolbar with the sort control. */
.next-actions-page .next-dropdown-controls{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.1fr) minmax(0,1fr) minmax(0,1.2fr);gap:12px}
.next-filter-field{display:flex;flex-direction:column;gap:4px;min-width:0;font-size:11px;color:#5b6a53}
.next-filter-field select{width:100%;min-width:0;font:inherit;font-size:12px;min-height:36px;padding:7px 24px 7px 10px;border:1px solid #cbd6c4;border-radius:7px;background:white;color:#344a30}
.reset-next-filters{font:inherit;min-height:0;padding:0;text-decoration:underline;text-underline-offset:3px;color:var(--green)}
@media(max-width:1000px){.next-actions-page .next-dropdown-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}}

/* Keep global search; show breadcrumbs only inside groups and projects. */
.topbar{height:54px}
.search{width:300px;max-width:100%}
@media(max-width:740px){.topbar{height:48px;flex-wrap:wrap;gap:4px 12px}.topbar:has(.breadcrumb:not([hidden])){height:auto;min-height:48px;padding-top:8px;padding-bottom:8px}.topbar .breadcrumb{max-width:100%;overflow-x:auto}.topbar .search{max-width:100%;flex:1 1 200px}}

.brand-icon{width:40px;height:40px;display:block;flex:none}
.compact-project-link{color:#424b46}
.compact-project-link>span{color:#59625c}
.check-field:has(input:disabled){color:#879087;opacity:.65;cursor:not-allowed}
.next-choice:disabled{opacity:.45;cursor:not-allowed}
.archive-section{margin-bottom:28px}
.archive-project-name{padding:0;min-height:28px;font:inherit;font-weight:600;text-align:left}
.archive-project-name:hover{text-decoration:underline}

/* Keep the action number and project identity together in the fixed header. */
.action-drawer .dialog-header{align-items:flex-start;gap:16px}
.action-heading{min-width:0}
.action-drawer .dialog-header .action-context{margin:8px 0 0;font-size:20px;font-weight:600;line-height:1.35;color:#3c4d42;overflow-wrap:anywhere}
.action-drawer .dialog-header .icon-button{flex:none}

.dependency-paused .node-state{font-weight:700}
.dependency-paused .node-readiness{color:#8c342a}

.graph-action{display:flex;flex-direction:column;align-items:center;flex:none;width:100%;padding:0;border:0;background:transparent;text-align:center;min-height:0}
.graph-next.next-choice{flex:none;min-height:25px;height:25px;padding:3px 8px;margin:5px 0 0;font-size:10px;border:1px solid #c6cdbb;border-radius:5px;color:#405539;background:#fff}
.graph-next.next-choice.chosen{background:#243b35;border-color:#243b35;color:#fff;font-weight:650}
.graph-node .node-state{font-weight:650}

.map-legend i.chosen{width:13px;height:13px;background:#ffe7a0;border:3px solid #243b35}

/* Optional schedule information stays separate from availability colours. */
.planning-panel{border:1px solid #dcd9e7;border-radius:12px;background:#fff;margin:0 0 20px;padding:16px 20px}
.planning-panel>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.planning-panel h2{font-size:14px;margin:0}.planning-panel>header>div{display:flex;align-items:center;gap:14px}.planning-panel .secondary{font-size:11px;min-height:30px;padding:5px 10px}.planning-summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px 24px;font-size:12px;color:var(--muted)}.planning-summary strong{color:var(--ink);margin-left:5px}.planning-message,.planning-key{font-size:12px;line-height:1.6;margin:8px 0}.planning-key{font-size:11px;color:#655481}.planning-links{line-height:1.8}.planning-action-link,.planning-conflicts button{font-size:12px;padding:2px 0;min-height:26px;text-decoration:underline;text-underline-offset:3px;text-align:left}.planning-conflicts{border-left:3px solid #ac5945;padding-left:12px;margin-top:10px;color:#8f402e}.planning-conflicts p{font-size:12px;line-height:1.6;margin:3px 0}.planning-assumptions{border:0;padding:0;margin-top:10px}.planning-assumptions summary{padding:0;font-size:11px;color:var(--muted);min-height:24px}.planning-assumptions p{font-size:11px;line-height:1.7;color:var(--muted);margin:7px 0 0;max-width:850px}.graph-edge.critical-edge{stroke:#756097;stroke-width:3;stroke-dasharray:none}.node-plan{display:flex;flex-direction:column;justify-content:center;min-height:32px;font-size:10px;line-height:14px;text-align:center;color:#655481;margin-top:3px;background:#fcfdfa}.node-plan strong{font-weight:650}.start-by{font-size:10px;color:#655481;white-space:nowrap}.late{color:#9b4031}.planning-summary .late{font-weight:600}@media(max-width:740px){.planning-panel{padding:14px}.planning-panel>header{align-items:flex-start}.planning-panel>header>div{gap:8px}.planning-summary{gap:7px 14px}.planning-key{line-height:1.7}}

/* Recovery keeps preview, replacement and undo separate. */
#recovery-live-status{font-size:12px;margin:8px 0 0;color:var(--muted)}
.recovery-portable h3,.recovery-section-heading h3{margin:0;font-size:16px}
.recovery-portable p,.recovery-versions>p{font-size:13px;line-height:1.6;color:var(--muted)}
.recovery-tools{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 26px}
.recovery-tools a{text-decoration:none;display:inline-flex;align-items:center;font-size:13px}
.recovery-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
#recovery-version-list{max-height:310px;overflow-y:auto;border-top:1px solid var(--line);margin-bottom:12px}
.recovery-version{display:flex;align-items:center;gap:16px;justify-content:space-between;padding:12px 2px;border-bottom:1px solid var(--line)}
.recovery-version>div{display:grid;gap:4px;min-width:0;font-size:13px}
.recovery-version span{overflow-wrap:anywhere}.recovery-version small{color:var(--muted);font-size:11px}
.recovery-version button{flex:none;font-size:12px}.recovery-file-details{margin-top:24px}.recovery-file-details>summary{font-weight:650;cursor:pointer;font-size:13px}
#recovery-result:empty{display:none}#recovery-result{padding:1px 12px;background:var(--soft);border-radius:8px;font-size:13px;margin-bottom:12px}
.recovery-counts{width:100%;border-collapse:collapse;margin:20px 0;font-size:13px}
.recovery-counts caption{text-align:left;font-weight:650;margin-bottom:10px}
.recovery-counts th,.recovery-counts td{padding:8px;border-bottom:1px solid var(--line);text-align:left}
.recovery-counts tbody th{text-transform:capitalize}
.recovery-change{border-bottom:1px solid var(--line);padding:10px 0;font-size:13px}
.recovery-change summary{cursor:pointer;overflow-wrap:anywhere;line-height:1.5}
.recovery-change-kind{font-weight:700;text-transform:capitalize}.recovery-change small{color:var(--muted)}
.recovery-change dl{padding:0 14px;overflow-wrap:anywhere}.recovery-change dt{font-weight:650;margin-top:12px}.recovery-change dd{display:grid;gap:5px;margin:6px 0;color:var(--muted);white-space:pre-wrap}
#recovery-preview>p{font-size:13px;line-height:1.6}

.next-actions-page .next-dropdown-controls{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.schedule-risk{font-size:12px;background:#fff1d3;padding:4px 7px;border-radius:5px}.schedule-risk.late{background:#f7e4dc;color:#863e2d}.start-by.unknown{color:#70624d;background:#f1ede3}
@media(max-width:1150px){.next-actions-page .next-dropdown-controls{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:740px){.next-actions-page .next-dropdown-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Compact overview, with the path kept central. */
.project-page .project-overview{padding:12px 16px;gap:16px;margin-bottom:8px}.project-purpose .eyebrow{margin-bottom:4px}.project-purpose>p:not(.eyebrow){line-height:1.45;margin-bottom:8px;font-size:14px}.project-completion{width:130px;padding-left:16px}.project-completion>strong{font-size:25px}.project-completion>strong>span{font-size:18px}.project-completion>p{margin:2px 0 7px}.project-page .project-next-strip{padding-bottom:10px}.node-title{-webkit-line-clamp:3;font-size:13px;line-height:1.3}.node-state,.node-readiness{font-size:11px}.graph-node.collapsed-complete .node-title,.graph-node.collapsed-complete .node-state,.graph-node.collapsed-complete .node-readiness,.graph-node.collapsed-complete .node-plan{display:none}.graph-node.collapsed-complete .node-circle{width:42px;height:42px;font-size:16px}.graph-node.collapsed-complete .node-check{width:19px;height:19px;font-size:10px}.map-controls{flex-wrap:wrap;gap:6px}.map-controls button,.map-controls a{font-size:12px;padding:7px 9px}.map-header{gap:12px}#graph-focus-dialog{width:calc(100vw - 32px);max-width:none;height:calc(100vh - 32px);max-height:none;padding:0;overflow:hidden;border:1px solid #bac8bb;border-radius:14px}#graph-focus-dialog .dependency-map{height:100%;margin:0;display:flex;flex-direction:column;border:0}#graph-focus-dialog .graph-viewport{flex:1;max-height:none;min-height:100px}#graph-focus-dialog .map-header{padding:16px 20px 10px}#graph-focus-dialog .map-footnote{padding:8px 20px}.dependency-choice[hidden]{display:none}.ordered-action-title{overflow-wrap:anywhere}.project-page .planning-panel{margin:8px 0 14px;padding:14px 18px}

/* Critique corrections: content gets the width; less frequent tools remain available. */
.project-page .map-header{display:block;padding:16px 20px 12px}.map-header h2{font-size:24px;white-space:nowrap;margin-bottom:4px}.map-header p:not(.eyebrow){line-height:1.4}.map-controls{margin-top:12px;flex-wrap:wrap}.view-options>div{display:flex;flex-wrap:wrap;gap:6px;padding:10px 0}.view-options summary,.extra-filters summary{cursor:pointer;padding:9px;font-size:12px}.map-legend{padding:0 20px 12px;gap:14px;font-size:11px}.project-page .graph-viewport{max-height:none;overflow-x:auto;overflow-y:hidden}.project-page .map-footnote{padding:10px 20px}.project-view-switch{display:flex;gap:6px;margin:8px 0 12px}.project-view-switch [aria-pressed=true]{background:var(--forest,#304e3f);color:white}.project-page .project-next-strip{display:none}#graph-focus-dialog .graph-viewport{overflow:auto;max-height:none}.next-dropdown-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.next-dropdown-controls>.next-filter-field{flex:1 1 150px}.extra-filters{flex:0 0 auto}.extra-filters[open]{flex-basis:100%;order:2}.next-compact-meta .compact-project-link{font-size:13px;font-weight:600;color:#34453c}.next-compact-meta{gap:10px}.next-compact-date:empty{display:none}.nav-section-label{font-size:10px;font-weight:700;letter-spacing:.06em;color:#526157;margin:12px 12px 5px;text-transform:uppercase}.nav-item{min-height:35px}.forecast-limit{font-size:13px;background:#f8f0da;padding:10px 12px;border-radius:6px}.personal-capacity{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:13px}.personal-capacity p{line-height:1.5}.search-scope{display:flex;align-items:center;gap:8px;margin:4px 0 18px}.supporting-fields{margin-bottom:14px}.supporting-fields summary{font-size:13px;margin-bottom:12px;cursor:pointer}.review-card{padding:16px 18px}.review-card-heading h2{margin:6px 0}.review-tools{margin-top:10px;padding-top:8px}.capacity-summary details{font-size:12px;margin-top:8px}.capacity-summary details p{margin-top:6px}.planning-assumptions{font-size:12px}.project-page .quick-capture{margin-bottom:10px}.project-page .page-heading{margin-bottom:10px}

.calendar-grid[hidden]{display:none}.calendar-toolbar{flex-wrap:wrap;gap:8px}.calendar-grid.week{grid-template-columns:repeat(7,minmax(110px,1fr));min-width:0}.time-grid-scroll{overflow:auto;border:1px solid var(--line);border-radius:10px;background:white}.time-grid{display:grid;grid-template-columns:44px repeat(var(--day-count),minmax(115px,1fr));min-width:calc(44px + var(--day-count)*115px)}.time-day-header{height:56px;padding:8px 6px;border-bottom:1px solid var(--line);font-size:12px;background:#f5f7f2}.time-day-header small{display:block;font-size:10px;margin-top:5px}.current-day{box-shadow:inset 0 3px #345343}.time-hours,.time-lane{position:relative;height:var(--grid-height)}.time-hours>span{position:absolute;right:3px;font-size:10px;color:#536158;transform:translateY(-50%)}.time-day{border-left:1px solid #e0e6df}.time-slot{position:absolute;left:0;width:100%;height:52px;border:0;border-top:1px solid #e9eee7;background:transparent;padding:0}.time-slot:hover,.time-slot:focus-visible{background:#e7eee2}.time-event{position:absolute;z-index:1;overflow:hidden;border:1px solid var(--group-colour,#52765a);border-left-width:3px;border-radius:4px;background:#edf3e9;text-align:left;padding:3px 5px;font-size:11px;line-height:1.25}.time-event strong,.time-event span,.time-event small{display:block;overflow:hidden;text-overflow:ellipsis}.time-event.unavailable{background:#e8e9ed;border-color:#677183}.time-event.missed{opacity:.6;text-decoration:line-through}.time-event.completed{background:#dcebdc}.time-grid .time-event:focus-visible{z-index:3;outline:3px solid #235c91}.calendar-note{margin-top:12px}.session-preview{font-size:13px}#session-custom-fields{grid-column:1/-1}#session-custom-fields[hidden]{display:none}.calendar-day{min-height:120px}.calendar-grid.day{grid-template-columns:1fr}

.next-actions-page .next-dropdown-controls{display:flex;align-items:end}.next-actions-page .next-dropdown-controls>.next-filter-field{flex:1 1 140px}.next-actions-page .extra-filters{border:0;margin:0;padding:0;order:1}.next-actions-page .extra-filters[open]{order:2}.view-options{border:0;margin:0;padding:0}.project-page .map-header{display:flex;flex-wrap:wrap;align-items:center}.map-header>div:first-child{flex:1 1 300px}.map-controls{margin-top:0}.calendar-toolbar{justify-content:flex-start}.calendar-toolbar button,.calendar-toolbar select,.calendar-toolbar input{font-size:12px;min-height:36px;padding:7px 9px}.calendar-toolbar>span{font-size:11px}.calendar-toolbar input[type=date]{width:132px}.calendar-toolbar [data-new-session=work]{margin-left:auto}.calendar-toolbar>div{display:flex;gap:2px}.time-day-header{box-sizing:border-box}.time-lane{background:repeating-linear-gradient(to bottom,transparent 0,transparent 51px,#e9eee7 51px,#e9eee7 52px)}

.time-event{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch}.time-event span{text-align:left}.time-event strong{flex-shrink:0}.time-day-header{height:64px}.time-grid .time-hours,.time-grid .time-lane{height:var(--grid-height)}

/* Preserve the real event duration instead of the shared button minimum. */
.time-event{min-height:0}.time-event strong{white-space:nowrap}

/* Denser Next Actions: keep small controls usable and project names prominent. */
.next-actions-page .next-flat-list{gap:6px}
.next-actions-page .next-flat-list .compact-next{padding:6px 12px;border-radius:8px}
.next-actions-page .next-compact-top{gap:4px 12px}
.next-actions-page .compact-action-name{font-size:13px;line-height:1.35;min-height:24px}
.next-actions-page .next-compact-controls{gap:8px}
.next-actions-page .next-compact-controls .next-priority select{min-height:28px;min-width:88px;padding:3px 20px 3px 8px;font-size:11px;line-height:1.35}
.next-actions-page .next-compact-controls .complete-action,
.next-actions-page .next-compact-controls .plan-today-button{min-height:28px;padding:3px 8px;font-size:11px;line-height:1.35}
.next-actions-page .next-compact-date{min-width:76px;line-height:1.35}
.next-actions-page .next-compact-meta{margin-top:2px;gap:2px 8px;font-size:11px}
.next-actions-page .next-compact-meta .compact-project-link{font-size:12px;line-height:1.35;min-height:24px}
.next-actions-page .next-compact-meta .group-badge{padding:1px 6px;line-height:1.3;min-height:24px}
.next-actions-page{padding-top:16px}
.next-actions-page h1{font-size:26px}
.next-actions-page .page-heading{margin-bottom:8px}
.next-actions-page .page-tools .secondary{min-height:30px;padding:4px 10px;font-size:11px}
.next-actions-page .next-controls{padding:6px 10px}
.next-actions-page .next-filter-field{gap:2px}
.next-actions-page .next-filter-field select{min-height:30px;padding:4px 22px 4px 8px;font-size:11px}
.next-actions-page .extra-filters summary{min-height:30px;padding:6px;font-size:11px}
.next-actions-page .next-view-summary{margin:6px 2px 8px}
@media(max-width:740px){
  .next-actions-page .next-compact-controls{gap:6px}
  .next-actions-page .next-compact-date{min-width:0}
}
