:root {
  --taskchef-page: light-dark(#f3f5f2, #171a18);
  --taskchef-surface-muted: light-dark(#f6f7f5, #252a27);
  --taskchef-border: light-dark(#dfe3de, #363c38);
  --taskchef-text: light-dark(#202521, #edf1ee);
  --taskchef-muted: light-dark(#657068, #aab4ad);
  --taskchef-accent: light-dark(#087f5b, #38d9a9);
  --taskchef-page-max-width: 1510px;
  --taskchef-content-max-width: 1080px;
  --taskchef-page-gutter: clamp(16px, 3vw, 48px);
}

* { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--taskchef-page);
  color: var(--taskchef-text);
}

.taskchef-shell { min-height: 100vh; background: var(--taskchef-page); }
.taskchef-header-shell { border-bottom: 1px solid var(--taskchef-border); }
.taskchef-header { max-width: var(--taskchef-page-max-width); padding: 10px var(--taskchef-page-gutter); }
.taskchef-header-layout { min-width: 0; min-height: 36px; gap: 8px; }
.taskchef-header-copy { min-width: 0; }
.taskchef-header-actions { flex: none; }
.taskchef-connection { flex: none; margin-inline-start: 5px; }
.taskchef-icon-button { flex: none; }
.taskchef-brand-title { min-width: 0; color: var(--taskchef-accent); font-size: 0.875rem; font-weight: 750; letter-spacing: 0.035em; line-height: 1; text-transform: uppercase; white-space: nowrap; }
.taskchef-version { margin-inline-start: 0.45rem; color: var(--taskchef-muted); font-size: 0.78em; font-weight: 600; letter-spacing: 0; text-transform: none; }
.taskchef-brand-icon, .taskchef-brand-icon img { display: block; flex: none; width: 28px; height: 28px; }
.taskchef-main { max-width: var(--taskchef-page-max-width); padding-top: 8px; padding-inline: var(--taskchef-page-gutter); }
.taskchef-list-layout { --taskchef-content-max-width: 600px; max-width: calc(var(--taskchef-content-max-width) + 2 * var(--taskchef-page-gutter)); }
.taskchef-content { width: 100%; max-width: var(--taskchef-content-max-width); }
.taskchef-toolbar { max-width: none; margin-bottom: 22px; padding: 8px 0 var(--mantine-spacing-md); border: 0; border-bottom: 1px solid var(--taskchef-border); background: transparent; box-shadow: none; }
.taskchef-toolbar-filters { width: min(100%, 488px); min-width: 0; }
.taskchef-toolbar-filters .mantine-InputWrapper-root { flex: 1 1 0; width: 0; min-width: 0; max-width: 240px; }
.taskchef-toolbar .mantine-InputWrapper-label, .taskchef-filter-label { font-size: var(--mantine-font-size-sm); font-weight: 600; line-height: var(--mantine-line-height-sm); }
.taskchef-toolbar .mantine-SegmentedControl-root { max-width: 650px; }
.taskchef-results-summary { max-width: var(--taskchef-content-max-width); margin-top: 12px; color: var(--taskchef-muted); font-size: var(--mantine-font-size-xs); line-height: 1.35; white-space: nowrap; }
.taskchef-list { max-width: var(--taskchef-content-max-width); }
.taskchef-settings-fields {
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  gap: var(--mantine-spacing-sm);
  width: min(100%, 36rem);
}
.taskchef-task-row { container-type: inline-size; }
.taskchef-task-row,
.taskchef-section { background: light-dark(#fff, #202421); box-shadow: 0 1px 0 light-dark(rgb(22 31 25 / 3%), transparent); }
.taskchef-task-row:hover { border-color: light-dark(var(--mantine-color-teal-4), var(--mantine-color-teal-8)); }
.taskchef-task-main { min-width: 0; flex: 1; }
.taskchef-card-heading,
.taskchef-turn-heading { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: var(--mantine-spacing-sm); }
.taskchef-card-metadata { width: max-content; min-width: 0; max-width: min(25rem, 45cqw); }
.taskchef-list-card-footer { display: flex; align-items: end; gap: 4px; min-width: 0; }
.taskchef-list-card-footer .taskchef-card-stats { flex: 1 1 auto; min-width: 0; margin-top: 2px; }
.taskchef-status-badge { flex: none; font-size: var(--mantine-font-size-xs); }
.taskchef-title-button {
  all: unset;
  border-radius: 3px;
  cursor: pointer;
  overflow-wrap: anywhere;
}
.taskchef-title-button:hover { color: var(--taskchef-accent); text-decoration: underline; text-underline-offset: 3px; }
.taskchef-title-button:focus-visible { outline: 3px solid color-mix(in srgb, var(--mantine-color-teal-6) 35%, transparent); outline-offset: 3px; }
.taskchef-summary-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 3px; max-width: 84ch; }
.taskchef-summary-grid .taskchef-field-label:not(:first-child) { margin-top: 7px; }
.taskchef-field-label { font-weight: 700; letter-spacing: 0.035em; text-transform: uppercase; }
.taskchef-preserve-lines { white-space: pre-wrap; overflow-wrap: anywhere; }
.taskchef-github-link { color: var(--taskchef-accent); text-decoration: none; }
.taskchef-github-link:hover { text-decoration: underline; text-underline-offset: 3px; }
.taskchef-github-link:focus-visible { outline: 2px solid var(--mantine-color-teal-6); outline-offset: 2px; border-radius: 2px; }
.taskchef-github-groups { display: grid; min-width: 0; gap: 3px; }
.taskchef-github-group { min-width: 0; }
.taskchef-github-reference-ambiguous { border-bottom: 2px dotted var(--mantine-color-yellow-7); cursor: help; }
.taskchef-github-reference-ambiguous:focus-visible { outline: 2px solid var(--mantine-color-yellow-7); outline-offset: 2px; }
.taskchef-time, .taskchef-stat-content { display: inline-flex; align-items: center; gap: 6px; width: fit-content; max-width: 100%; padding: 3px 4px; border-radius: 4px; color: var(--taskchef-muted); font-size: var(--mantine-font-size-xs); font-weight: 400; letter-spacing: normal; line-height: var(--mantine-line-height-xs); text-transform: none; }
.taskchef-time:hover { color: var(--taskchef-text); background: var(--taskchef-surface-muted); }
.taskchef-time:focus-visible { outline: 2px solid var(--mantine-color-teal-6); outline-offset: 2px; }
.taskchef-time-label, .taskchef-stat-content bdi { min-width: 0; overflow-wrap: anywhere; unicode-bidi: isolate; }
.taskchef-stat-content:focus-visible { outline: 2px solid var(--mantine-color-teal-6); outline-offset: 2px; }
.taskchef-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 2px; }
.taskchef-stat { display: flex; align-items: center; min-width: 0; padding: 4px 10px; }
.taskchef-stat:first-child { padding-inline-start: 0; }
.taskchef-stat + .taskchef-stat { border-inline-start: 1px solid var(--taskchef-border); }
.taskchef-empty { border-style: dashed; background: transparent; }

.taskchef-toolbar .mantine-Select-input { width: 100%; }
.taskchef-toolbar-view .mantine-SegmentedControl-root, .taskchef-toolbar-status .mantine-SegmentedControl-root { width: max-content; max-width: 100%; height: 30px; padding: 0; }
.taskchef-toolbar-view .mantine-SegmentedControl-label, .taskchef-toolbar-status .mantine-SegmentedControl-label { display: flex; align-items: center; height: 100%; padding-inline: 12px; font-size: var(--mantine-font-size-xs); text-align: start; }
.taskchef-board {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: min(340px, calc(100% - 36px));
  align-items: stretch;
  gap: 18px;
  width: 100%;
  min-width: 0;
  min-height: max(360px, calc(100dvh - 270px));
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
}
.taskchef-board:focus-visible { outline: 2px solid var(--mantine-color-teal-6); outline-offset: 2px; }
.taskchef-board-dragging { scroll-snap-type: none; user-select: none; cursor: grabbing; }
.taskchef-board-lane { min-width: 0; scroll-snap-align: start; cursor: grab; padding: 8px; border-radius: 10px; }
.taskchef-board-lane-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; padding: 0 13px 6px; margin-bottom: 6px; }
.taskchef-board-lane-heading h2 { font-size: var(--mantine-font-size-sm); font-weight: 680; }
.taskchef-board-empty { padding: 12px 4px; }
.taskchef-board-card { display: flex; flex-direction: column; min-width: 0; cursor: grab; background: light-dark(#fff, #202421); border-color: var(--taskchef-border); box-shadow: 0 1px 2px light-dark(rgb(22 31 25 / 3%), transparent); }
.taskchef-board-card:hover { border-color: light-dark(#bdc8c0, #5b685e); }
.taskchef-board-project { color: var(--taskchef-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.taskchef-board-title { line-height: 1.3; }
.taskchef-board-project { margin-top: 8px; }
.taskchef-board-title .taskchef-title-button { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; }
.taskchef-board-excerpt { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; margin-top: 18px; color: var(--taskchef-text); }
.taskchef-board-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-width: 0; margin-top: auto; padding-top: 10px; }
.taskchef-board-card-footer .taskchef-time { padding-inline-start: 0; }
.taskchef-board-chat { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 4px; background: transparent; color: var(--taskchef-muted); cursor: pointer; }
.taskchef-board-chat:hover { background: var(--taskchef-surface-muted); color: var(--taskchef-text); }
.taskchef-board-chat:focus-visible { outline: 2px solid var(--mantine-color-teal-6); outline-offset: 2px; }
.taskchef-open-chat, .taskchef-detail-more { height: 26px; min-height: 26px; }
.taskchef-open-chat .mantine-Button-section[data-position="left"] { margin-inline-end: 4px; }
.taskchef-detail-more { width: 26px; min-width: 26px; }
.taskchef-board-link-pending { text-align: right; }
.taskchef-board-more { align-self: flex-start; padding-inline: 4px; color: var(--taskchef-muted); }

.taskchef-notifications {
  position: fixed;
  z-index: 400;
  right: 18px;
  bottom: 18px;
  width: min(360px, calc(100vw - 48px));
  background: light-dark(#fff, #202421);
}
.taskchef-notification { background: var(--taskchef-surface-muted); }
.taskchef-notification-list { padding-inline-end: 10px; }
.taskchef-notification-open { all: unset; display: block; min-width: 0; flex: 1; border-radius: var(--mantine-radius-sm); cursor: pointer; }
.taskchef-notification-open:focus-visible { outline: 3px solid color-mix(in srgb, var(--mantine-color-teal-6) 35%, transparent); outline-offset: 2px; }

.taskchef-subtle-panel { background: var(--taskchef-surface-muted); }
.taskchef-metric { min-width: 0; background: transparent; }
.taskchef-metric-value { overflow-wrap: anywhere; }
.taskchef-metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: var(--mantine-spacing-xs); }
.taskchef-turn { container-type: inline-size; background: var(--taskchef-surface-muted); }
.taskchef-turn-highlighted { border-color: var(--mantine-color-teal-6); box-shadow: inset 3px 0 var(--mantine-color-teal-6); outline: 3px solid color-mix(in srgb, var(--mantine-color-teal-6) 22%, transparent); }
.taskchef-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; overflow-wrap: anywhere; }
.taskchef-code-panel { max-height: 280px; margin: 0; padding: 12px; overflow: auto; border-radius: var(--mantine-radius-md); background: var(--taskchef-surface-muted); white-space: pre-wrap; overflow-wrap: anywhere; font: 0.78rem/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.taskchef-metadata { display: grid; grid-template-columns: minmax(120px, 150px) minmax(0, 1fr); margin: 0; font-size: var(--mantine-font-size-sm); }
.taskchef-metadata dt, .taskchef-metadata dd { padding: 8px 0; border-bottom: 1px solid var(--taskchef-border); overflow-wrap: anywhere; }
.taskchef-metadata dt { color: var(--taskchef-muted); }
.taskchef-metadata dd { margin: 0; }

.taskchef-shimmer {
  display: inline-block;
  width: fit-content;
  max-width: 100%;
  color: var(--taskchef-muted);
  background: linear-gradient(100deg, var(--taskchef-muted) 48%, var(--taskchef-text) 50%, var(--taskchef-muted) 52%);
  background-size: 250% 100%;
  background-position: 100% 0;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: taskchef-text-shimmer 6.4s linear infinite;
}

@keyframes taskchef-text-shimmer {
  0% { background-position: 100% 0; }
  72%, 100% { background-position: -100% 0; }
}

@media (prefers-reduced-motion: reduce) {
  .taskchef-shimmer { background: none; animation: none; -webkit-text-fill-color: currentcolor; }
}

.taskchef-visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

@media (max-width: 48em) {
  .taskchef-toolbar-filters .mantine-InputWrapper-root { max-width: none; }
  .taskchef-toolbar .mantine-Group-root { align-items: stretch; }
  .taskchef-toolbar .mantine-SegmentedControl-root { overflow-x: auto; }
  .taskchef-notifications { right: 16px; bottom: 16px; width: min(330px, calc(100vw - 32px)); }
  .taskchef-metadata { grid-template-columns: 1fr; }
  .taskchef-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .taskchef-metadata dt { padding-bottom: 0; border-bottom: 0; }
}

@media (max-width: 34em) {
  .taskchef-header { padding-inline: 8px; padding-block: 7px; }
  .taskchef-header-layout { min-height: 32px; gap: 4px; }
  .taskchef-header-copy { gap: 5px; }
  .taskchef-brand-title { font-size: clamp(0.625rem, 2.7vw, 0.75rem); letter-spacing: 0.015em; line-height: 1.15; white-space: normal; }
  .taskchef-version { margin-inline-start: 0.3rem; }
  .taskchef-brand-icon, .taskchef-brand-icon img { width: 24px; height: 24px; }
  .taskchef-header-actions { gap: 0; }
  .taskchef-icon-button { width: 32px; min-width: 32px; height: 32px; min-height: 32px; }
  .taskchef-connection { gap: 5px; margin-inline-start: 2px; }
}

@container (max-width: 27.5rem) {
  .taskchef-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .taskchef-stat { padding-block: 8px; }
  .taskchef-stat:nth-child(3) { border-inline-start: 0; padding-inline-start: 0; }
  .taskchef-stat:nth-child(n + 3) { border-top: 1px solid var(--taskchef-border); }
}

.taskchef-refresh-spinning {
  animation: taskchef-refresh-spin 800ms linear infinite;
  transform-origin: center;
}

@keyframes taskchef-refresh-spin {
  to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
  .taskchef-refresh-spinning { animation: none; }
}

/* Markdown replies share the same renderer in the board and Details. */
.taskchef-markdown { white-space: normal; overflow-wrap: anywhere; min-width: 0; }
.taskchef-markdown > :first-child { margin-top: 0; }
.taskchef-markdown > :last-child { margin-bottom: 0; }
.taskchef-markdown p, .taskchef-markdown ul, .taskchef-markdown ol, .taskchef-markdown blockquote { margin: 0.6em 0; }
.taskchef-markdown h1, .taskchef-markdown h2, .taskchef-markdown h3, .taskchef-markdown h4, .taskchef-markdown h5, .taskchef-markdown h6 { font-size: 1.05em; margin: 1em 0 0.4em; }
.taskchef-markdown ul, .taskchef-markdown ol { padding-left: 1.5em; }
.taskchef-markdown a { color: var(--mantine-color-anchor); }
.taskchef-markdown code { background: var(--mantine-color-default-hover); border-radius: 3px; padding: 0.1em 0.25em; font-size: 0.9em; }
.taskchef-markdown pre { overflow-x: auto; max-width: 100%; padding: 0.75em; background: var(--mantine-color-default-hover); border-radius: 6px; white-space: pre; }
.taskchef-markdown pre code { padding: 0; background: none; }
.taskchef-markdown blockquote { border-left: 3px solid var(--mantine-color-default-border); padding-left: 0.75em; }
.taskchef-markdown-table { overflow-x: auto; max-width: 100%; }
.taskchef-markdown table { border-collapse: collapse; width: 100%; }
.taskchef-markdown th, .taskchef-markdown td { border: 0; padding: 0.75em 1.5em 0.75em 0; text-align: left; vertical-align: top; overflow-wrap: normal; }
.taskchef-markdown th:last-child, .taskchef-markdown td:last-child { padding-right: 0; }
.taskchef-markdown:not(.taskchef-markdown--compact) thead tr { border-bottom: 1px solid var(--mantine-color-default-border); }
.taskchef-markdown:not(.taskchef-markdown--compact) tbody tr:not(:last-child) { border-bottom: 1px solid color-mix(in srgb, var(--mantine-color-default-border) 55%, transparent); }
.taskchef-markdown--compact { display: inline; }
.taskchef-markdown--compact :is(p,h1,h2,h3,h4,h5,h6,ul,ol,li,blockquote,pre,table,thead,tbody,tr,th,td,.taskchef-markdown-table) { display: inline; margin: 0; padding: 0; border: 0; font-size: inherit; white-space: normal; }
.taskchef-markdown--compact :is(p,li,pre,blockquote,tr)::after { content: " "; }
.taskchef-markdown--compact li::before { content: "• "; }
.taskchef-markdown--compact :is(th,td)::after { content: " | "; }

.taskchef-reply-cover { display: flex; align-items: center; justify-content: center; width: calc(100% + 24px); height: 150px; margin: -12px -12px 10px; padding: 0; border: 0; border-radius: var(--mantine-radius-default) var(--mantine-radius-default) 0 0; overflow: hidden; background: light-dark(#eef1ee, #151a17); color: var(--mantine-color-dimmed); cursor: pointer; flex-shrink: 0; }
.taskchef-reply-cover img { width: 100%; height: 100%; object-fit: contain; }
.taskchef-reply-cover span { font-size: var(--mantine-font-size-xs); padding: 12px; }
.taskchef-reply-cover:focus-visible { outline: 2px solid var(--mantine-primary-color-filled); outline-offset: 2px; }

.taskchef-board-project { display: flex; align-items: center; gap: 5px; }
.taskchef-board-project > svg { flex-shrink: 0; }
.taskchef-board-project > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.taskchef-card-stats, .taskchef-card-pr-icons { display: flex; align-items: center; gap: 8px; min-width: 0; }
.taskchef-card-pr-icons { flex-wrap: wrap; }
.taskchef-card-pr-icons:empty { display: none; }
.taskchef-card-status-icon { display: inline-flex; position: relative; align-items: center; justify-content: center; width: 20px; height: 22px; padding: 0; flex-shrink: 0; background: none; border: 0; color: var(--taskchef-muted); cursor: pointer; }
.taskchef-card-status-icon:focus-visible { outline: 1px solid currentColor; outline-offset: 2px; border-radius: 3px; }

.taskchef-status-tooltip { background: var(--taskchef-surface-muted); color: var(--taskchef-text); border: 1px solid var(--taskchef-border); }

.taskchef-status-row { display: flex; align-items: center; gap: 8px; min-width: 0; font-size: 12px; line-height: 1.5; }
.taskchef-status-row-icon { display: inline-flex; align-items: center; justify-content: center; width: 18px; flex: 0 0 18px; color: var(--taskchef-muted); }
.taskchef-status-row-content { min-width: 0; flex: 1; }
.taskchef-status-pr-title { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: inherit; color: inherit; }
.taskchef-popup-pr-icon { position: relative; display: inline-flex; width: 18px; height: 18px; align-items: center; }

.taskchef-pr-access-warning { position: absolute; right: -6px; top: -3px; color: #eac54f; }

.taskchef-schedule-clock { transform: scaleX(-1); }

.taskchef-pr-access-alert { box-shadow: inset 0 0 0 1px #eac54f; border-radius: 4px; padding: 6px 8px 6px 0; }

.taskchef-board-lane-title { display: flex; align-items: center; gap: 4px; }
/* Codex desktop's default spinner geometry and animation cadence. */
.taskchef-running-spinner { flex-shrink: 0; color: var(--mantine-color-dimmed); animation: taskchef-running-spin 2s steps(60, end) infinite; }
@keyframes taskchef-running-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .taskchef-running-spinner { animation: none; } }

.taskchef-board-card:active { cursor: grabbing; }
.taskchef-board-lane-drop-target {
  background: light-dark(rgba(47, 158, 68, 0.08), rgba(81, 207, 102, 0.08));
  box-shadow: inset 0 0 0 1px light-dark(rgba(47, 158, 68, 0.5), rgba(81, 207, 102, 0.4));
}

.taskchef-card-turn-usage { font-size: 12px; white-space: nowrap; }

.taskchef-board-title { position: relative; }
.taskchef-board-title:has(.taskchef-chat-unread-dot) { padding-right: 16px; }
.taskchef-chat-unread-dot { position: absolute; right: 0; top: 5px; width: 7px; height: 7px; border-radius: 50%; background: #2f81f7; }

.taskchef-turn-content { display: flex; flex-direction: column; gap: 12px; min-width: 0; font-size: var(--mantine-font-size-sm); }
.taskchef-turn-prompt { align-self: flex-end; max-width: 85%; min-width: 0; padding: 10px 12px; border-radius: 12px; background: light-dark(#eaf1fc, #1c3d69); color: light-dark(#202c3d, #edf3fc); overflow-wrap: anywhere; }
.taskchef-prompt-clock { float: left; margin: 3px 6px 0 0; }
.taskchef-turn-response { width: 100%; min-width: 0; overflow-wrap: anywhere; }
.taskchef-turn-card { margin: 8px 0; font-size: var(--mantine-font-size-sm); }
.taskchef-turn-card .taskchef-markdown { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.taskchef-turn-collapsed { line-height: 1.55; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; max-height: calc(3 * 1.55em); overflow: hidden; }
.taskchef-turn-expand { padding: 0; margin-top: 5px; border: 0; background: transparent; color: inherit; text-decoration: underline; font: inherit; font-size: var(--mantine-font-size-xs); cursor: pointer; }
.taskchef-turn-expand:focus-visible { outline: 2px solid var(--mantine-primary-color-filled); outline-offset: 2px; }

.taskchef-turn-collapsed .taskchef-markdown :is(p,ul,ol,blockquote) { margin-top: 0; margin-bottom: 0; }

.taskchef-turn-divider { margin-top: 20px; padding-bottom: 8px; border-bottom: 1px solid var(--mantine-color-default-border); color: var(--mantine-color-dimmed); font-size: var(--mantine-font-size-xs); }
.taskchef-response-image { display: block; margin: 16px 0; }
.taskchef-image-thumbnail { display: block; padding: 0; border: 1px solid var(--mantine-color-default-border); border-radius: 8px; background: transparent; overflow: hidden; cursor: zoom-in; max-width: 100%; }
.taskchef-image-thumbnail img { display: block; max-width: 100%; width: auto; max-height: 160px; object-fit: contain; }
.taskchef-image-thumbnail:focus-visible { outline: 2px solid var(--mantine-primary-color-filled); outline-offset: 3px; }
.taskchef-image-lightbox img { display: block; max-width: calc(100vw - 64px); max-height: calc(100dvh - 140px); object-fit: contain; }

.taskchef-prompt-images { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:12px; }
.taskchef-prompt-images .taskchef-response-image { margin:0; max-width:100%; }
.taskchef-prompt-images .taskchef-image-thumbnail img { max-height:120px; }

.taskchef-turn-prompt .taskchef-markdown p:empty { display:none; }

.taskchef-annotation-link { color: var(--mantine-color-anchor); font: inherit; padding: 0; border: 0; background: none; text-decoration: underline; cursor: pointer; }
.taskchef-annotation-popup { font-size: var(--mantine-font-size-sm); line-height: 1.5; white-space: pre-wrap; overflow-wrap: anywhere; max-height: 50vh; overflow-y: auto; text-align: left; }
.taskchef-annotation-label { color: var(--mantine-color-dimmed); margin-top: 8px; margin-bottom: 4px; }
.taskchef-annotation-label:first-child { margin-top: 0; }

.taskchef-image-placeholder { display: inline-block; width: 180px; height: 120px; max-width: 100%; border-radius: 8px; background: var(--mantine-color-default-hover); }
.taskchef-queued-prompts { margin-top: 16px; }
.taskchef-queued-heading { font-size: 12px; color: var(--mantine-color-dimmed); margin-bottom: 8px; }
.taskchef-queued-prompts > ol { list-style: none; padding: 0; margin: 0; }
.taskchef-queued-prompts > ol > li { display: flex; align-items: flex-start; gap: 8px; border-top: 1px solid var(--mantine-color-default-border); padding: 10px 0; }
.taskchef-queued-prompts.is-compact { margin-top: 8px; }
.taskchef-queued-prompts.is-compact > ol > li { display: flex; align-items: center; gap: 6px; padding: 4px 0; font-size: 12px; }
.taskchef-queued-prompts.is-compact > ol > li > span { flex: 1; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.taskchef-queued-prompts.is-compact .taskchef-markdown { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.taskchef-queued-prompts.is-compact .taskchef-reply-cover { flex: 0 0 28px; width: 28px; height: 22px; min-height: 22px; margin: 0; border-radius: 3px; }
.taskchef-queued-prompts.is-compact .taskchef-reply-cover span { font-size: 0; }

.taskchef-prompt-images .taskchef-image-thumbnail { width: 180px; height: 120px; display: flex; align-items: center; justify-content: center; }
.taskchef-prompt-images .taskchef-image-thumbnail img { width: 100%; height: 100%; object-fit: contain; }

.taskchef-queued-prompts.is-compact .taskchef-markdown * { white-space: nowrap; }

.taskchef-pending-questions { margin: 20px 0; padding: 16px 0; border-top: 1px solid var(--mantine-color-default-border); border-bottom: 1px solid var(--mantine-color-default-border); }
.taskchef-pending-questions ol { padding-left: 24px; margin: 8px 0 0; font-size: var(--mantine-font-size-sm); }
.taskchef-pending-questions li { padding: 4px 0; white-space: pre-wrap; }

.taskchef-queue-icon { flex: 0 0 16px; color: var(--mantine-color-dimmed); margin-top: 2px; }
.taskchef-queue-content { flex: 1; min-width: 0; }
