/* Workflow surfaces: a Task is a traceable shared intent, not a checklist. */
.workflow-page-heading { margin-bottom: var(--space-6); }
.workflow-page-heading > .btn { flex: 0 0 auto; }

.task-seed-form { display: grid; gap: var(--space-4); max-width: 920px; }
.workflow-origin { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: var(--space-3); padding: var(--space-5); background: linear-gradient(90deg, var(--violet-wash), var(--surface)); border: 1px solid #ddd8fa; border-radius: var(--radius); }
.workflow-origin__glyph { display: grid; place-items: center; width: 36px; height: 36px; color: var(--violet-deep); background: var(--surface); border-radius: var(--radius-sm); font: 700 20px/1 var(--font-mono); }
.workflow-origin .eyebrow { margin-bottom: 3px; }.workflow-origin b { display: block; font-size: 15px; }.workflow-origin p:not(.eyebrow) { margin: 4px 0 0; color: var(--text-soft); font-size: var(--type-meta); }
.workflow-section { padding: var(--space-5); background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow-sm); }
.workflow-section__heading { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-4); margin-bottom: var(--space-5); }.workflow-section__heading .eyebrow { margin-bottom: 3px; }.workflow-section__heading h2 { margin: 0; font-size: 16px; letter-spacing: -.025em; }.workflow-section__heading > p { max-width: 360px; margin: 2px 0 0; color: var(--text-faint); font-size: var(--type-meta); text-align: right; }
.workflow-field { display: grid; gap: 6px; margin-top: var(--space-3); }.workflow-field:first-of-type { margin-top: 0; }.workflow-field > span { color: var(--text-soft); font-size: var(--type-meta); font-weight: 700; }.workflow-field input, .workflow-field textarea, .workflow-field select, .workflow-stacked-form input, .workflow-stacked-form select, .workflow-inline-form input { width: 100%; color: var(--text); background: var(--surface); border: 1px solid var(--border-strong); border-radius: var(--radius-sm); font: inherit; }.workflow-field input, .workflow-field select { min-height: 38px; padding: 8px 10px; }.workflow-field textarea { min-height: 72px; padding: 10px; resize: vertical; line-height: 1.55; }.workflow-field input:focus-visible, .workflow-field textarea:focus-visible, .workflow-field select:focus-visible, .workflow-stacked-form input:focus-visible, .workflow-stacked-form select:focus-visible, .workflow-inline-form input:focus-visible { outline: none; border-color: var(--violet); box-shadow: var(--focus-ring); }
.workflow-field > .dropdown--field { margin-top: 0; }.workflow-stacked-form > .dropdown--inline { width: 100%; min-width: 0; }
.workflow-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2); }.workflow-choice { display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; align-items: center; gap: var(--space-2); width: 100%; padding: 10px; color: var(--text); background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-sm); cursor: pointer; text-align: left; transition: border-color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease); }.workflow-choice:hover { border-color: #c9c4ec; background: var(--surface-hover); }.workflow-choice[aria-pressed='true'] { border-color: var(--violet); background: var(--violet-wash); }.workflow-choice .avatar { width: 28px; height: 28px; border-radius: 8px; font-size: 10px; }.workflow-choice b, .workflow-choice small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.workflow-choice b { font-size: 12px; }.workflow-choice small { margin-top: 2px; color: var(--text-faint); font-size: 10px; }.workflow-choice__mark { color: var(--text-faint); font: 10px/1 var(--font-mono); }.workflow-choice[aria-pressed='true'] .workflow-choice__mark { color: var(--violet-deep); font-weight: 700; }
.workflow-resource-choices { display: grid; gap: 7px; }.workflow-resource-choice { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; align-items: center; gap: var(--space-3); width: 100%; padding: 11px; color: var(--text); background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-sm); cursor: pointer; text-align: left; transition: border-color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease); }.workflow-resource-choice:hover { border-color: #c9c4ec; background: var(--surface-hover); }.workflow-resource-choice[aria-pressed='true'] { border-color: var(--violet); background: var(--violet-wash); }.workflow-resource-choice b, .workflow-resource-choice small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.workflow-resource-choice b { font-size: 12px; }.workflow-resource-choice small { margin-top: 3px; color: var(--text-faint); font-size: 10px; }.resource-kind { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 22px; padding: 3px 6px; color: var(--text-soft); background: var(--surface-subtle); border: 1px solid var(--border); border-radius: 6px; font: 10px/1 var(--font-mono); }
.workflow-note, .workflow-empty { margin: var(--space-3) 0 0; color: var(--text-faint); font-size: var(--type-meta); }.workflow-form-footer { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); padding: var(--space-4) var(--space-5); background: var(--surface-subtle); border-radius: var(--radius); }.workflow-form-footer p { max-width: 580px; margin: 0; color: var(--text-soft); font-size: var(--type-meta); }

.local-task-seeds { margin-bottom: var(--space-5); overflow: hidden; }.local-task-seeds__head { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-4); padding: var(--space-4) var(--space-5); border-bottom: 1px solid var(--border); }.local-task-seeds__head .eyebrow { margin-bottom: 3px; }.local-task-seeds__head h2 { margin: 0; font-size: 14px; }.local-task-seeds__head p { max-width: 300px; margin: 0; color: var(--text-faint); font-size: var(--type-meta); text-align: right; }.local-task-seeds__list { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: var(--space-3); padding: var(--space-4); }.task-card--seed { margin-top: 0; border-color: #ddd8fa; }.task-card--seed .task-card__top { display: flex; justify-content: space-between; gap: 8px; }

.context-layers { display: grid; grid-template-columns: minmax(220px, .8fr) minmax(0, 1.4fr) minmax(220px, .8fr); gap: var(--space-3); align-items: start; }.context-layer { min-width: 0; padding: var(--space-5); background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow-sm); }.context-layer--accepted { background: linear-gradient(180deg, #fbfbff, var(--surface)); border-color: #dedafc; }.context-layer__head { padding-bottom: var(--space-3); border-bottom: 1px solid var(--border); }.context-layer__head .eyebrow { margin-bottom: 3px; }.context-layer__head h2 { margin: 0; font-size: 15px; }.context-layer > p { color: var(--text-soft); font-size: var(--type-meta); }.workflow-thread-link { display: block; width: 100%; margin-top: var(--space-4); padding: 10px; overflow: hidden; color: var(--violet-deep); background: var(--violet-wash); border: 0; border-radius: var(--radius-sm); cursor: pointer; font-size: var(--type-meta); font-weight: 750; text-align: left; text-overflow: ellipsis; white-space: nowrap; }.workflow-thread-link:hover { background: #e8e5ff; }.reference-stack { display: grid; gap: 7px; margin-top: var(--space-4); }.reference-row { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 8px; padding: 8px 0; border-top: 1px solid var(--border); }.reference-row b, .reference-row small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.reference-row b { font-size: 11px; }.reference-row small { margin-top: 2px; color: var(--text-faint); font-size: 10px; }.workflow-task-note { margin: var(--space-4) 0; padding: 10px; color: var(--text-soft); background: var(--surface-subtle); border-radius: var(--radius-sm); font-size: var(--type-meta); }.workflow-people { margin: var(--space-3) 0; color: var(--text-faint); font-size: 11px; }.workflow-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }.workflow-split > section { min-width: 0; padding-top: var(--space-3); border-top: 1px solid var(--border); }.workflow-split h3 { margin: 0 0 9px; font-size: 12px; }.workflow-stacked-form { display: grid; grid-template-columns: minmax(0, 1fr); gap: 6px; margin-bottom: var(--space-3); }.workflow-stacked-form input, .workflow-stacked-form select { min-height: 34px; padding: 7px 8px; font-size: 11px; }.workflow-stacked-form .btn { justify-self: start; }.workflow-record { margin-top: 7px; padding: 10px; background: var(--surface-subtle); border: 1px solid var(--border); border-radius: var(--radius-sm); }.workflow-record__head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }.workflow-record__head time { color: var(--text-faint); font-size: 10px; }.workflow-record > p { margin: 8px 0 0; color: var(--text-soft); font-size: 11px; line-height: 1.55; }.workflow-response { margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--border); }.workflow-response b { display: block; font-size: 10px; }.workflow-response p, p.workflow-response { margin: 3px 0 0; color: var(--text-soft); font-size: 11px; }.workflow-inline-form { display: flex; gap: 6px; margin-top: 8px; }.workflow-inline-form input { min-width: 0; min-height: 30px; padding: 5px 7px; font-size: 11px; }.workflow-action-pair { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 9px; }.workflow-empty-state { max-width: 560px; padding: var(--space-6); }.workflow-empty-state h1 { margin: 0; font-size: 20px; }.workflow-empty-state p { color: var(--text-soft); }.workflow-empty-state .btn { margin-top: 5px; }

.resource-origin-banner { display: flex; align-items: center; gap: var(--space-2); margin-bottom: var(--space-4); padding: 10px 12px; background: var(--violet-wash); border: 1px solid #dedafc; border-radius: var(--radius-sm); }.resource-origin-banner b { font-size: var(--type-meta); }.resource-origin-banner p { margin: 0 0 0 auto; color: var(--text-soft); font-size: 11px; }.resource-layout { display: grid; grid-template-columns: minmax(280px, .72fr) minmax(0, 1.4fr); gap: var(--space-4); align-items: start; }.resource-publish { display: grid; gap: var(--space-4); padding: var(--space-5); }.resource-publish h2 { margin: 0; font-size: 17px; }.resource-publish > div > p:not(.eyebrow) { margin: 5px 0 0; color: var(--text-soft); font-size: var(--type-meta); }.resource-kind-picker { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }.resource-kind-picker button { min-height: 60px; padding: 8px; color: var(--text-soft); background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-sm); cursor: pointer; text-align: left; }.resource-kind-picker button:hover { border-color: #c9c4ec; background: var(--surface-hover); }.resource-kind-picker button[aria-pressed='true'] { color: var(--violet-deep); background: var(--violet-wash); border-color: var(--violet); }.resource-kind-picker b, .resource-kind-picker small { display: block; }.resource-kind-picker b { font-size: 11px; }.resource-kind-picker small { margin-top: 3px; color: var(--text-faint); font-size: 10px; line-height: 1.35; }.resource-publish__footer { display: grid; gap: var(--space-2); padding-top: var(--space-3); border-top: 1px solid var(--border); }.resource-publish__footer p { margin: 0; color: var(--text-faint); font-size: 11px; }.resource-publish__footer .btn { justify-self: start; }.resource-library__head { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-3); margin-bottom: var(--space-3); }.resource-library__head .eyebrow { margin-bottom: 3px; }.resource-library__head h2 { margin: 0; font-size: 17px; }.resource-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }.resource-card { display: grid; gap: var(--space-3); min-width: 0; padding: var(--space-4); background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow-sm); }.resource-card[data-state='draft'] { background: linear-gradient(145deg, var(--surface), var(--amber-wash)); border-color: #efdcb6; }.resource-card__top, .resource-card__badges, .resource-card__foot { display: flex; align-items: center; gap: 6px; }.resource-card__top { justify-content: space-between; }.resource-card h2 { overflow: hidden; margin: 0; font-size: 14px; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }.resource-card > p { min-height: 38px; margin: 0; color: var(--text-soft); font-size: 11px; line-height: 1.55; }.resource-card__meta { display: grid; gap: 6px; margin: 0; padding-top: var(--space-3); border-top: 1px solid var(--border); }.resource-card__meta div { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 6px; }.resource-card__meta dt { color: var(--text-faint); font-size: 10px; }.resource-card__meta dd { overflow: hidden; margin: 0; color: var(--text-soft); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }.resource-card__foot { justify-content: space-between; padding-top: 2px; }.resource-access select { max-width: 132px; padding: 4px 17px 4px 0; color: var(--text-soft); background: transparent; border: 0; font-size: 10px; cursor: pointer; }.resource-card__note { color: var(--text-faint); font-size: 10px; text-align: right; }
.resource-card__foot .dropdown--inline { min-width: 118px; }.resource-card__foot .dropdown--inline .dropdown__trigger { min-height: 32px; border: 0; border-radius: 7px; box-shadow: none; }
.workflow-field__note { color: var(--text-faint); font-size: 10px; font-weight: 400; }.resource-locator { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 7px; align-items: center; padding: 7px 8px; background: var(--surface-subtle); border: 1px solid var(--border); border-radius: var(--radius-sm); }.resource-locator > span { color: var(--text-faint); font-size: 10px; }.resource-locator code { overflow: hidden; color: var(--text-soft); font: 10px/1.4 var(--font-mono); text-overflow: ellipsis; white-space: nowrap; }
.task-reentry-banner { display: grid; grid-template-columns: 124px minmax(0, 1fr); gap: var(--space-3); align-items: start; max-width: 920px; margin: 0 0 var(--space-4); padding: 13px var(--space-4); background: var(--violet-wash); border: 1px solid #dcd7fb; border-radius: var(--radius); }.task-reentry-banner .eyebrow { margin: 3px 0 0; }.task-reentry-banner b { font-size: 13px; }.task-reentry-banner p:not(.eyebrow) { margin: 3px 0 0; color: var(--text-soft); font-size: var(--type-meta); }.workflow-split > section[data-inbox-focus='true'], .context-layers > div[data-inbox-focus='true'] > .workflow-section, .context-layers > div[data-inbox-focus='true'] > .context-layer { position: relative; border-radius: var(--radius); box-shadow: 0 0 0 3px rgba(102, 87, 216, .12); }

/* Thread 생성은 목록보다 먼저 읽히되, 좁은 보조 열을 밀어내지 않는다. */
.thread-start { display: grid; gap: 7px; padding: var(--space-3); background: var(--surface-subtle); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.thread-start .eyebrow { margin: 0; color: var(--violet-deep); }
.thread-start label { display: grid; gap: 4px; min-width: 0; color: var(--text-soft); font-size: 10px; font-weight: 700; }
.thread-start input, .thread-start textarea { box-sizing: border-box; width: 100%; color: var(--text); background: var(--surface); border: 1px solid var(--border-strong); border-radius: 7px; font: inherit; font-size: 11px; }
.thread-start input { min-height: 32px; padding: 6px 8px; }
.thread-start textarea { min-height: 48px; padding: 7px 8px; line-height: 1.4; resize: vertical; }
.thread-start input:focus-visible, .thread-start textarea:focus-visible { outline: none; border-color: var(--violet); box-shadow: var(--focus-ring); }
.thread-start .btn { justify-self: start; }

@media (max-width: 1040px) { .context-layers { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }.context-layer--accepted { grid-column: 1 / -1; }.resource-layout { grid-template-columns: minmax(260px, .75fr) minmax(0, 1fr); }.resource-grid { grid-template-columns: 1fr; } }
@media (max-width: 720px) { .workflow-section__heading, .workflow-form-footer, .resource-origin-banner { display: block; }.workflow-section__heading > p, .local-task-seeds__head p { margin-top: 6px; text-align: left; }.workflow-choice-grid, .workflow-split, .context-layers, .resource-layout { grid-template-columns: 1fr; }.context-layer--accepted { grid-column: auto; }.workflow-form-footer .btn { width: 100%; margin-top: var(--space-3); }.local-task-seeds__head { display: block; }.resource-origin-banner p { margin: 7px 0 0; }.resource-grid { grid-template-columns: 1fr; }.resource-card > p { min-height: 0; } }
@media (prefers-reduced-motion: reduce) { .workflow-choice, .workflow-resource-choice { transition: none; } }

/* Task의 네 단계는 3개의 읽기 열 안에서 끝낸다. 결과(제안·수락)는 한 열의 순서다. */
.context-layers {
  grid-template-columns: minmax(230px, .78fr) minmax(360px, 1.35fr) minmax(290px, .98fr);
}
.context-layers__outcome {
  display: grid;
  min-width: 0;
  gap: var(--space-3);
  align-content: start;
}
.context-layers__outcome > div { min-width: 0; }
.context-layers__outcome .context-layer--accepted { grid-column: auto; }
.context-layers__outcome > div[data-inbox-focus='true'] > .workflow-section,
.context-layers__outcome > div[data-inbox-focus='true'] > .context-layer {
  position: relative;
  border-radius: var(--radius);
  box-shadow: 0 0 0 3px rgba(102, 87, 216, .12);
}

@media (max-width: 1040px) {
  .context-layers__outcome {
    grid-column: 1 / -1;
    grid-template-columns: minmax(0, 1.2fr) minmax(240px, .8fr);
  }
}

@media (max-width: 720px) {
  .context-layers__outcome {
    grid-column: auto;
    grid-template-columns: 1fr;
  }
}

/* Long-form writing remains a deliberate surface: it is neither an oversized
   chat input nor an implicit file upload. */
.draft-page-heading { max-width: 1040px; }
.draft-page-heading > div { min-width: 0; }
.draft-page-heading > .btn {
  flex: 0 0 auto;
  min-width: max-content;
  white-space: nowrap;
}
.draft-boundary { display: flex; align-items: center; gap: var(--space-3); max-width: 1040px; margin: 0 0 var(--space-4); padding: 12px var(--space-4); background: var(--violet-wash); border: 1px solid #dedafc; border-radius: var(--radius-sm); }
.draft-boundary p { margin: 0; color: var(--text-soft); font-size: var(--type-meta); line-height: 1.55; }
.document-draft-form { display: grid; gap: var(--space-4); max-width: 1040px; padding: clamp(var(--space-5), 4vw, var(--space-6)); }
.document-draft-form__head { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-4); padding-bottom: var(--space-4); border-bottom: 1px solid var(--border); }
.document-draft-form__head .eyebrow { margin-bottom: 4px; }
.document-draft-form__head h2 { margin: 0; font-size: 20px; letter-spacing: -.035em; }
.document-draft-form__head p { max-width: 660px; margin: 7px 0 0; color: var(--text-soft); font-size: var(--type-body); line-height: 1.6; }
.document-editor { overflow: hidden; border: 1px solid var(--border-strong); border-radius: var(--radius); background: var(--surface); }
.document-editor__intro { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-4); padding: var(--space-3) var(--space-4); background: var(--surface-subtle); border-bottom: 1px solid var(--border); }
.document-editor__intro b { display: block; font-size: var(--type-meta); }
.document-editor__intro p { max-width: 620px; margin: 4px 0 0; color: var(--text-faint); font-size: var(--type-meta); line-height: 1.5; }
.document-editor__mount .EasyMDEContainer { background: #fff; }
.document-editor__mount .editor-toolbar { min-height: 42px; padding: 6px 9px; background: #fff; border: 0; border-bottom: 1px solid var(--border); opacity: 1; }
.document-editor__mount .editor-toolbar button { width: 30px; height: 30px; color: var(--text-soft); border: 0; border-radius: 6px; }
.document-editor__mount .editor-toolbar button:hover, .document-editor__mount .editor-toolbar button.active { color: var(--violet-deep); background: var(--violet-wash); border-color: transparent; }
.document-editor__mount .editor-toolbar i.separator { height: 23px; margin: 3px 7px; border-color: var(--border); }
.document-editor__mount .CodeMirror { height: 500px; color: var(--text); border: 0; font-family: var(--font-sans); font-size: 15px; line-height: 1.72; }
.document-editor__mount .CodeMirror-gutters { background: #fcfcfe; border-right-color: var(--border); }
.document-editor__mount .editor-preview, .document-editor__mount .editor-preview-side { color: var(--text); background: #fdfdff; border-color: var(--border); font-family: var(--font-sans); font-size: 15px; line-height: 1.72; }
.document-editor__mount .editor-preview-side { padding: 26px 30px; }
.document-editor__mount--readonly { position: relative; filter: saturate(.72); }
.document-editor__mount--readonly::after { position: absolute; inset: 0; z-index: 4; content: ''; background: rgba(255, 255, 255, .46); cursor: not-allowed; }
.document-editor__unavailable { margin: 0; padding: var(--space-4); color: #9a4343; background: #fff8f8; }
.document-editor__note { margin: calc(var(--space-2) * -1) 0 0; color: var(--text-faint); font-size: var(--type-meta); line-height: 1.55; }
.document-draft-form__footer { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-5); padding-top: var(--space-4); border-top: 1px solid var(--border); }
.document-draft-form__footer > p { max-width: 610px; margin: 0; color: var(--text-faint); font-size: var(--type-meta); line-height: 1.55; }
.document-draft-form__actions, .workflow-form-actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: var(--space-2); }

@media (max-width: 640px) {
  .draft-boundary, .document-draft-form__head, .document-draft-form__footer { display: block; }
  .draft-boundary .context-chip { display: inline-flex; margin-bottom: var(--space-2); }
  .document-draft-form__head > .meta { display: block; margin-top: var(--space-2); }
  .document-editor__intro { display: block; }
  .document-editor__intro > .meta { display: inline-block; margin-top: 7px; }
  .document-editor__mount .editor-preview-side { padding: 22px; }
  .document-draft-form__actions { margin-top: var(--space-3); justify-content: stretch; }
  .document-draft-form__actions .btn { flex: 1 1 auto; }
}

/* Task detail is a workbench, not a four-column Context Pack poster.  The
   immediate action lives in one main surface; evidence stays available in a
   quiet rail and never competes with the form currently being used. */
.task-page-heading { margin-bottom: var(--space-5); }
.task-page-heading__actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: var(--space-2); }
.task-reentry-banner { max-width: none; grid-template-columns: 148px minmax(0, 1fr); margin-bottom: var(--space-5); }

.task-workbench { display: grid; grid-template-columns: minmax(0, 1fr) minmax(286px, 330px); gap: var(--space-5); align-items: start; }
.task-workbench__main { min-width: 0; }
.task-focus-tabs { display: flex; gap: 2px; margin-bottom: var(--space-3); padding: 4px; overflow-x: auto; background: var(--surface-subtle); border: 1px solid var(--border); border-radius: var(--radius-sm); }
.task-focus-tabs button { flex: 0 0 auto; min-height: 34px; padding: 7px 11px; color: var(--text-soft); background: transparent; border: 1px solid transparent; border-radius: 7px; cursor: pointer; font-size: 12px; font-weight: 720; white-space: nowrap; }
.task-focus-tabs button:hover { color: var(--violet-deep); background: var(--surface-hover); }
.task-focus-tabs button[aria-pressed='true'] { color: var(--text); background: var(--surface); border-color: var(--border); box-shadow: 0 1px 2px rgba(24, 24, 32, .06); }

.task-focus-panel { padding: clamp(var(--space-5), 3vw, var(--space-6)); background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); }
.task-focus-panel__head { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-4); padding-bottom: var(--space-4); border-bottom: 1px solid var(--border); }
.task-focus-panel__head .eyebrow { margin-bottom: 4px; }
.task-focus-panel__head h2 { margin: 0; font-size: 20px; letter-spacing: -.035em; }
.task-focus-panel__head p { max-width: 680px; margin: 6px 0 0; color: var(--text-soft); font-size: var(--type-body); }
.task-action-row { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-top: var(--space-4); }
.task-action-row .btn[aria-pressed='true'] { color: var(--violet-deep); background: var(--violet-wash); border-color: var(--violet); }
.task-action-composer { display: grid; gap: var(--space-3); margin-top: var(--space-4); padding: var(--space-4); background: #fbfaff; border: 1px solid #ddd8fa; border-radius: var(--radius); }
.task-action-composer__head { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-3); }
.task-action-composer__head .eyebrow { margin-bottom: 3px; }
.task-action-composer__head h2 { margin: 0; font-size: 15px; letter-spacing: -.02em; }
.task-action-composer .workflow-field { margin-top: 0; }
.task-action-composer .dropdown { width: 100%; }
.task-work-records { margin-top: var(--space-5); padding-top: var(--space-4); border-top: 1px solid var(--border); }
.task-work-records__head { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); }
.task-work-records__head h3 { margin: 0; font-size: 13px; }
.task-work-records .workflow-record-list { display: grid; gap: 8px; margin-top: var(--space-3); }
.task-work-records .workflow-record { margin-top: 0; padding: var(--space-3); }
.workflow-answer-form { display: grid; grid-template-columns: minmax(0, 1fr) 116px; gap: var(--space-2); align-items: end; margin-top: var(--space-3); }
.workflow-answer-form textarea { box-sizing: border-box; width: 100%; min-height: 84px; padding: 10px 11px; color: var(--text); background: var(--surface); border: 1px solid var(--border-strong); border-radius: var(--radius-sm); font: inherit; line-height: 1.55; resize: vertical; }
.workflow-answer-form textarea:focus-visible { outline: none; border-color: var(--violet); box-shadow: var(--focus-ring); }
.workflow-answer-form .btn { width: 116px; min-width: 116px; min-height: 42px; justify-content: center; white-space: nowrap; }

.task-workbench__main > .workflow-section { padding: clamp(var(--space-5), 3vw, var(--space-6)); border-radius: var(--radius-lg); }
.task-workbench__main > .workflow-section .workflow-section__heading { padding-bottom: var(--space-4); border-bottom: 1px solid var(--border); }
.task-version-list { display: grid; gap: var(--space-2); margin-top: var(--space-4); }
.task-version { display: grid; gap: 6px; padding: var(--space-3); background: var(--surface-subtle); border: 1px solid var(--border); border-radius: var(--radius-sm); }
.task-version b { font-size: var(--type-body); }
.task-version small { color: var(--text-faint); font-size: var(--type-meta); }

.task-context-rail { position: sticky; top: var(--space-5); display: grid; gap: var(--space-3); }
.task-context-card { padding: var(--space-4); background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow-sm); }
.task-context-card > .eyebrow { margin-bottom: 4px; }
.task-context-card > h2 { margin: 0; font-size: 16px; letter-spacing: -.03em; }
.task-context-card > h3 { margin: 0; font-size: 12px; }
.task-context-card > p:not(.eyebrow), .task-context-card__note { margin: 6px 0 0; color: var(--text-soft); font-size: var(--type-meta); line-height: 1.55; }
.task-context-card .workflow-thread-link { margin-top: var(--space-3); }
.task-context-card .reference-stack { margin-top: var(--space-2); }
.task-context-card .reference-row { padding: 8px 0; }
.task-context-card .btn { margin-top: var(--space-3); }
.task-context-card__head { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); }
.task-context-version { display: grid; gap: 6px; margin-top: var(--space-3); }
.task-context-version b { font-size: var(--type-meta); line-height: 1.5; }
.task-context-version small { color: var(--text-faint); font-size: 10px; line-height: 1.45; }
.task-context-card__people { margin: var(--space-2) 0 0; color: var(--text-soft); font-size: var(--type-meta); line-height: 1.6; }

@media (max-width: 1040px) {
  .task-workbench { grid-template-columns: minmax(0, 1fr); }
  .task-context-rail { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .task-context-card:first-child { grid-column: 1 / -1; }
}

@media (max-width: 640px) {
  .task-page-heading { display: block; }
  .task-page-heading__actions { margin-top: var(--space-3); }
  .task-page-heading__actions .btn { flex: 1 1 0; }
  .task-reentry-banner { grid-template-columns: 1fr; gap: 4px; padding: var(--space-3); }
  .task-focus-panel, .task-workbench__main > .workflow-section { padding: var(--space-4); }
  .task-focus-panel__head, .task-action-composer__head { display: block; }
  .task-focus-panel__head > .pill, .task-action-composer__head .btn { margin-top: var(--space-3); }
  .task-action-row .btn { flex: 1 1 100%; }
  .task-context-rail { grid-template-columns: 1fr; }
  .task-context-card:first-child { grid-column: auto; }
  .workflow-answer-form { grid-template-columns: 1fr; }
  .workflow-answer-form .btn { justify-self: end; }
}

/* Resource Cloud follows the same re-entry rule as Task: first show the
   references that matter to the current Task, then reveal the library or the
   registration form by intent. */
.resource-surface { width: min(1040px, 100%); }
.resource-page-heading { margin-bottom: var(--space-5); }
.resource-task-brief { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); margin-bottom: var(--space-4); padding: var(--space-4); background: var(--violet-wash); border: 1px solid #ddd8fa; border-radius: var(--radius); }
.resource-task-brief > div { min-width: 0; }
.resource-task-brief .context-chip { margin-right: var(--space-2); }
.resource-task-brief b { font-size: var(--type-meta); }
.resource-task-brief p { margin: 6px 0 0; color: var(--text-soft); font-size: var(--type-meta); }

.resource-workbench { width: 100%; max-width: none; }
.resource-mode-tabs { display: flex; gap: 2px; margin-bottom: var(--space-3); padding: 4px; overflow-x: auto; background: var(--surface-subtle); border: 1px solid var(--border); border-radius: var(--radius-sm); }
.resource-mode-tabs button { flex: 0 0 auto; min-height: 34px; padding: 7px 11px; color: var(--text-soft); background: transparent; border: 1px solid transparent; border-radius: 7px; cursor: pointer; font-size: 12px; font-weight: 720; white-space: nowrap; }
.resource-mode-tabs button:hover { color: var(--violet-deep); background: var(--surface-hover); }
.resource-mode-tabs button[aria-pressed='true'] { color: var(--text); background: var(--surface); border-color: var(--border); box-shadow: 0 1px 2px rgba(24, 24, 32, .06); }
.resource-focus-panel { padding: clamp(var(--space-5), 3vw, var(--space-6)); background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); }
.resource-focus-panel__head, .resource-focus-panel__subhead { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-4); }
.resource-focus-panel__head { padding-bottom: var(--space-4); border-bottom: 1px solid var(--border); }
.resource-focus-panel__head .eyebrow { margin-bottom: 4px; }
.resource-focus-panel__head h2 { margin: 0; font-size: 20px; letter-spacing: -.035em; }
.resource-focus-panel__head p, .resource-focus-panel__subhead p { margin: 6px 0 0; color: var(--text-soft); font-size: var(--type-meta); }
.resource-focus-panel__subhead { margin-top: var(--space-5); padding-top: var(--space-4); border-top: 1px solid var(--border); }
.resource-focus-panel__subhead h3 { margin: 0; font-size: 14px; }
.resource-list { display: grid; gap: var(--space-2); margin-top: var(--space-4); }
.resource-row { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(190px, .8fr) minmax(104px, .42fr) auto; gap: var(--space-3); align-items: center; padding: var(--space-3) var(--space-4); background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-sm); }
.resource-row[data-state='draft'] { background: linear-gradient(145deg, var(--surface), var(--amber-wash)); border-color: #efdcb6; }
.resource-row__identity, .resource-row__source, .resource-row__status, .resource-row__action { min-width: 0; }
.resource-row__labels { display: flex; align-items: center; gap: 6px; }
.resource-row h2 { margin: 6px 0 0; overflow: hidden; font-size: var(--type-body); line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.resource-row__identity > p { margin: 4px 0 0; overflow: hidden; color: var(--text-soft); font-size: var(--type-meta); line-height: 1.45; text-overflow: ellipsis; white-space: nowrap; }
.resource-row__source { display: grid; gap: 3px; }
.resource-row__source > span, .resource-row__source small, .resource-row__status small { color: var(--text-faint); font-size: 10px; }
.resource-row__source code { overflow: hidden; color: var(--text-soft); font: 10px/1.4 var(--font-mono); text-overflow: ellipsis; white-space: nowrap; }
.resource-row__status { display: grid; justify-items: start; gap: 5px; }
.resource-row__action { justify-self: end; }
.resource-row__action .dropdown { min-width: 132px; }
.resource-row__action .dropdown__trigger { min-height: 32px; border-radius: 7px; }
.resource-publish--focus { box-sizing: border-box; width: 100%; margin: 0; padding: clamp(var(--space-5), 3vw, var(--space-6)); }
.resource-publish--focus > div > p:not(.eyebrow) { max-width: 590px; }
.resource-ingest-note { padding: var(--space-3) var(--space-4); background: var(--surface-subtle); border-left: 3px solid var(--violet); border-radius: 0 var(--radius-sm) var(--radius-sm) 0; }
.resource-ingest-note b { font-size: var(--type-meta); }
.resource-ingest-note p { margin: 5px 0 0; color: var(--text-soft); font-size: var(--type-meta); line-height: 1.55; }
.resource-intake-map { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; margin: 0; padding: 0; overflow: hidden; list-style: none; border: 1px solid var(--border); border-radius: var(--radius-sm); }
.resource-intake-map li { display: grid; gap: 3px; min-width: 0; padding: var(--space-3); background: var(--surface-subtle); }
.resource-intake-map li + li { border-left: 1px solid var(--border); }
.resource-intake-map span { color: var(--violet-deep); font: 700 10px/1 var(--font-mono); }
.resource-intake-map b { overflow: hidden; font-size: var(--type-meta); text-overflow: ellipsis; white-space: nowrap; }
.resource-intake-map small { color: var(--text-faint); font-size: 10px; line-height: 1.35; }

@media (max-width: 980px) {
  .resource-row { grid-template-columns: minmax(0, 1fr) auto; }
  .resource-row__source { grid-column: 1; }
  .resource-row__status { grid-column: 2; grid-row: 1; }
  .resource-row__action { grid-column: 2; grid-row: 2; }
}

@media (max-width: 640px) {
  .resource-task-brief { display: block; }
  .resource-task-brief .btn { width: 100%; margin-top: var(--space-3); }
  .resource-focus-panel, .resource-publish--focus { padding: var(--space-4); }
  .resource-focus-panel__head, .resource-focus-panel__subhead { display: block; }
  .resource-focus-panel__head > .context-chip, .resource-focus-panel__subhead > .meta { display: inline-block; margin-top: var(--space-2); }
  .resource-row { grid-template-columns: minmax(0, 1fr); gap: 9px; padding: var(--space-3); }
  .resource-row__source, .resource-row__status, .resource-row__action { grid-column: auto; grid-row: auto; }
  .resource-row__action { justify-self: start; }
  .resource-intake-map { grid-template-columns: 1fr; }
  .resource-intake-map li + li { border-top: 1px solid var(--border); border-left: 0; }
}

/* Task lifecycle is a read model: it shows the next decision without turning
   a board move, a decline, or a quiet period into a domain command. */
.task-lifecycle-heading { align-items: flex-start; }
.task-lifecycle-heading > .pill { margin-top: 5px; white-space: nowrap; }
.task-lifecycle-map { display: grid; grid-template-columns: minmax(0, .76fr) minmax(510px, 1.24fr); gap: var(--space-5); margin-bottom: var(--space-5); padding: clamp(var(--space-5), 4vw, var(--space-7)); background: linear-gradient(135deg, #f8f7ff 0%, var(--surface) 58%); border: 1px solid #dedbf4; border-radius: var(--radius-lg); }
.task-lifecycle-map__intro .eyebrow { margin-bottom: 5px; }
.task-lifecycle-map__intro h2 { margin: 0; font-size: clamp(21px, 2.5vw, 30px); letter-spacing: -.045em; }
.task-lifecycle-map__intro p:not(.eyebrow) { max-width: 470px; margin: var(--space-3) 0 0; color: var(--text-soft); line-height: 1.65; }
.task-lifecycle-map__steps { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0; margin: 0; padding: 0; list-style: none; }
.task-lifecycle-map__steps li { position: relative; display: grid; gap: 5px; min-width: 0; padding: var(--space-3) var(--space-2); border-top: 1px solid var(--border-strong); }
.task-lifecycle-map__steps li + li::before { position: absolute; top: -5px; left: -2px; width: 9px; height: 9px; content: ''; background: var(--surface); border: 1px solid var(--border-strong); border-radius: 50%; }
.task-lifecycle-map__steps li > span { color: var(--violet-deep); font: 700 10px/1 var(--font-mono); }
.task-lifecycle-map__steps b { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.task-lifecycle-map__steps small { color: var(--text-faint); font-size: 10px; line-height: 1.35; }
.task-lifecycle-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-2); margin-bottom: var(--space-4); }
.task-lifecycle-summary > div { display: grid; gap: 3px; padding: var(--space-3) var(--space-4); background: var(--surface-subtle); border: 1px solid var(--border); border-radius: var(--radius-sm); }
.task-lifecycle-summary strong { color: var(--violet-deep); font-size: 21px; letter-spacing: -.04em; }
.task-lifecycle-summary span { color: var(--text-soft); font-size: var(--type-meta); }
.task-lifecycle-list { display: grid; gap: var(--space-3); }
.task-lifecycle-card { overflow: hidden; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow-sm); }
.task-lifecycle-card[data-stage='decision'] { border-color: #dccd98; }
.task-lifecycle-card[data-stage='dormant'] { opacity: .86; }
.task-lifecycle-card__status { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); padding: 9px var(--space-4); background: var(--surface-subtle); border-bottom: 1px solid var(--border); }
.task-lifecycle-card__status time { color: var(--text-faint); font-size: var(--type-meta); }
.task-lifecycle-card__body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(190px, .42fr); gap: var(--space-5); padding: var(--space-4); }
.task-lifecycle-card h2 { margin: 0; font-size: 16px; letter-spacing: -.025em; }
.task-lifecycle-card__body > div > p { margin: 7px 0 0; color: var(--text-soft); font-size: var(--type-body); line-height: 1.55; }
.task-lifecycle-card__facts { display: grid; gap: var(--space-2); margin: 0; }
.task-lifecycle-card__facts div { display: grid; gap: 2px; }
.task-lifecycle-card__facts dt { color: var(--text-faint); font-size: 10px; font-weight: 760; letter-spacing: .06em; text-transform: uppercase; }
.task-lifecycle-card__facts dd { margin: 0; overflow: hidden; color: var(--text-soft); font-size: var(--type-meta); line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.task-lifecycle-card__foot { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); padding: var(--space-3) var(--space-4); border-top: 1px solid var(--border); }
.task-lifecycle-card__foot p { display: grid; gap: 3px; min-width: 0; margin: 0; color: var(--text-soft); font-size: var(--type-meta); line-height: 1.45; }
.task-lifecycle-card__foot b { color: var(--text); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.task-lifecycle-card__foot .btn { flex: 0 0 auto; }
.task-lifecycle-policy { display: grid; grid-template-columns: minmax(0, .72fr) minmax(360px, 1.28fr); gap: var(--space-6); margin-top: var(--space-6); padding: clamp(var(--space-5), 4vw, var(--space-6)); background: #fffdfa; }
.task-lifecycle-policy .eyebrow { margin-bottom: 5px; }
.task-lifecycle-policy h2 { margin: 0; font-size: 18px; letter-spacing: -.03em; }
.task-lifecycle-policy p { margin: 8px 0 0; color: var(--text-soft); font-size: var(--type-body); line-height: 1.6; }
.task-lifecycle-policy ul { display: grid; gap: var(--space-3); margin: 0; padding: 0; list-style: none; }
.task-lifecycle-policy li { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: var(--space-3); padding-bottom: var(--space-3); color: var(--text-soft); border-bottom: 1px solid var(--border); font-size: var(--type-meta); line-height: 1.55; }
.task-lifecycle-policy li:last-child { padding-bottom: 0; border-bottom: 0; }
.task-lifecycle-policy li b { color: var(--text); }

@media (max-width: 1040px) {
  .task-lifecycle-map { grid-template-columns: 1fr; }
  .task-lifecycle-policy { grid-template-columns: 1fr; gap: var(--space-4); }
}

@media (max-width: 720px) {
  .task-lifecycle-heading { display: block; }
  .task-lifecycle-heading > .pill { display: inline-block; margin-top: var(--space-3); }
  .task-lifecycle-map { padding: var(--space-4); }
  .task-lifecycle-map__steps { grid-template-columns: 1fr; gap: 0; }
  .task-lifecycle-map__steps li { grid-template-columns: 22px minmax(70px, .5fr) minmax(0, 1fr); align-items: baseline; padding: 9px 0 9px 14px; border-top: 0; border-left: 1px solid var(--border-strong); }
  .task-lifecycle-map__steps li + li::before { top: -2px; left: -5px; }
  .task-lifecycle-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .task-lifecycle-card__body { grid-template-columns: 1fr; gap: var(--space-3); padding: var(--space-3); }
  .task-lifecycle-card__foot { display: block; padding: var(--space-3); }
  .task-lifecycle-card__foot .btn { width: 100%; margin-top: var(--space-3); }
  .task-lifecycle-policy { padding: var(--space-4); }
  .task-lifecycle-policy li { grid-template-columns: 1fr; gap: 4px; }
}
