.support-form select {
  width: 100%;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
  color: var(--ink);
}

.registry-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 14px;
}

.registry-card {
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #fbfcfe;
}

.registry-card h3 { margin: 0; }
.registry-card details { margin-top: 12px; }
.registry-card summary,
.panel > details > summary {
  cursor: pointer;
  font-weight: 700;
  color: var(--accent);
}
.json.compact { max-height: 320px; }
.agent-conversation-guide {
  padding: .85rem;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
}
.agent-prompt-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 1rem; }
.agent-prompt-grid h4 { margin: .5rem 0; }
.agent-conversation-guide pre { white-space: pre-wrap; overflow-wrap: anywhere; max-height: 300px; overflow: auto; }
.agent-conversation-guide dl { margin: 0; }
.agent-conversation-guide dt { margin-bottom: .35rem; }
.agent-conversation-guide dd { margin: 0 0 .8rem; }

.flow-metrics .metric {
  display: flex;
  min-width: 0;
  min-height: 132px;
  padding: 18px;
  flex-direction: column;
  justify-content: space-between;
}
.flow-metrics .metric strong {
  font-size: clamp(15px, 1.2vw, 18px);
  line-height: 1.3;
  letter-spacing: -.015em;
  overflow-wrap: anywhere;
  hyphens: auto;
}
.flow-metrics .metric span {
  display: block;
  margin-top: 14px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.flow-map-panel { margin-bottom: 14px; }
.flow-diagram { min-height: 210px; overflow: auto; padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: #fbfdff; }
.flow-diagram svg { display: block; width: 100%; min-width: 760px; max-height: 430px; margin: auto; }
.flow-diagram.diagram-loading { display: grid; place-items: center; }
.flow-topology-details { margin-top: 14px; }
.flow-topology-provenance {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.flow-topology-provenance span {
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
  color: var(--muted);
  font-size: 11px;
  overflow-wrap: anywhere;
}
.flow-topology-provenance strong {
  display: block;
  margin-bottom: 4px;
  color: var(--ink);
  font-size: 12px;
}
.flow-topology-warning {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  gap: 10px;
  margin: 8px 0 0;
  padding: 9px 11px;
  border: 1px solid #e7ca85;
  border-radius: 9px;
  background: #fff9e9;
  color: #684d0b;
  font-size: 12px;
  line-height: 1.4;
}
.flow-contract-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 8px;
}
.flow-contract-grid details {
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
}
.flow-contract-grid summary {
  display: grid;
  gap: 4px;
  color: var(--ink);
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}
.flow-contract-grid summary b { color: var(--accent); font-size: 10px; }
.flow-contract-grid h4 { margin: 12px 0 5px; font-size: 11px; }
.flow-contract-grid ul { margin: 5px 0 0; padding-left: 17px; }
.flow-contract-grid li { margin: 4px 0; overflow-wrap: anywhere; font-size: 11px; }
.flow-contract-grid code { white-space: normal; }

.support-message button.secondary {
  border: 1px solid var(--accent);
  border-radius: 8px;
  padding: 9px 12px;
  background: #fff;
  color: var(--accent);
  font-weight: 700;
  cursor: pointer;
}

.evidence-request {
  margin: 1rem 0;
  padding: 1rem;
  border: 1px solid #b9a7ff;
  border-radius: 12px;
  background: #f7f4ff;
}

.evidence-request h4 { margin-top: 0; }

.panel-heading,
.case-controls {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.case-controls { align-items: center; flex-wrap: wrap; }
.case-controls button.secondary {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 9px 12px;
  background: #fff;
  color: var(--ink);
  font-weight: 700;
  cursor: pointer;
}

.essential-filters { margin-bottom: 14px; }
.advanced-filters {
  margin: 8px 0 14px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fbfcfe;
}
.advanced-filters > summary {
  padding: 12px 14px;
  cursor: pointer;
  font-weight: 800;
  color: var(--accent);
}
.filter-groups { display: grid; gap: 12px; padding: 0 14px 14px; }
.filter-groups fieldset {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 12px;
}
.filter-groups legend { color: var(--muted); font-size: 12px; font-weight: 800; }
.event-actions { max-width: 340px; margin-top: 12px; }

.event-results { max-height: min(58vh, 680px); overflow: auto; border: 1px solid var(--line); border-radius: 12px; }
.event-table { min-width: 940px; }
.event-table thead th { position: sticky; top: 0; z-index: 2; background: #fff; box-shadow: 0 1px 0 var(--line); }
.event-table tbody tr { cursor: pointer; }
.event-table tbody tr:hover,
.event-table tbody tr:focus { background: #f7f4ff; outline: none; }
.event-action-col {
  position: sticky;
  left: 0;
  z-index: 2;
  width: 110px;
  background: #fff;
  box-shadow: 10px 0 18px -18px rgba(23, 32, 51, .8);
}
.event-table thead .event-action-col { z-index: 3; }
.event-table tr:hover .event-action-col { background: #f7f4ff; }
.context-label { color: var(--muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }

.event-pagination { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 14px; }
.event-pagination p { margin: 0; }
.event-pagination div { display: flex; gap: 8px; }
.event-pagination button { border: 1px solid var(--line); border-radius: 8px; padding: 8px 12px; background: #fff; color: var(--ink); font-weight: 700; cursor: pointer; }
.event-pagination button:disabled { opacity: .45; cursor: not-allowed; }

.support-workspace { padding-bottom: 22px; min-width: 0; }
.support-case-grid { display: grid; grid-template-columns: 170px minmax(300px,.85fr) minmax(360px,1.15fr); gap: 16px; min-height: 620px; }
.support-case-list, .support-composer, .support-thread { min-width: 0; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.support-case-list { padding: 14px 10px; max-height: 660px; overflow-y: auto; }
.support-case-list h3 { margin: 0 6px 12px; font-size: 13px; color: var(--muted); text-transform: uppercase; letter-spacing: .08em; }
.case-list-item { display: grid; gap: 5px; width: 100%; margin-bottom: 8px; padding: 11px; border: 1px solid transparent; border-radius: 10px; background: #f5f8fb; color: var(--ink); text-align: left; cursor: pointer; overflow-wrap: anywhere; }
.case-list-item strong { font-size: 11px; }
.case-list-item span { color: var(--muted); font-size: 11px; }
.case-list-item:hover, .case-list-item.active { border-color: #8edee8; background: #eaf9fb; }
.support-thread { display: grid; align-content: start; gap: 12px; margin: 0; padding: 14px; max-height: 660px; overflow-y: auto; }
.support-welcome { display: grid; place-items: start; padding: 18px; border: 1px dashed #91dbe5; border-radius: 14px; background: linear-gradient(145deg,#f5fdff,#f8fbfd); }
.support-welcome-art { width: min(100%, 280px); max-height: 145px; object-fit: cover; object-position: left center; border-radius: 10px; margin-bottom: 14px; }
.support-welcome p { margin-bottom: 0; }
.support-composer {
  position: static;
  margin: 0;
  padding: 16px;
  overflow-y: auto;
  max-height: 660px;
  box-shadow: none;
}
.support-composer > details { margin-bottom: 12px; }
.support-composer > details > summary { cursor: pointer; color: var(--accent); font-weight: 800; }
.context-form { margin-top: 12px; }
.support-form label small,
.attachment-control span { color: var(--muted); font-size: 11px; font-weight: 400; }
.message-form { margin-top: 10px; }
.analysis-warning,
.missing-parameter {
  padding: 10px 12px;
  border: 1px solid #f0c27b;
  border-radius: 9px;
  background: #fff8ea;
  color: #744000;
}
.evidence-steps { padding-left: 22px; }
.parameter-list code { font-size: 12px; overflow-wrap: anywhere; }
.diagnosis-summary { font-size: 15px; line-height: 1.55; }
.diagnosis-details { margin: 14px 0; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: #fbfdfe; }
.diagnosis-details > summary { color: var(--accent); cursor: pointer; font-weight: 800; }
.support-operation { display: grid; gap: 9px; margin: 18px 0; padding: 14px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.support-operation label { display: grid; gap: 6px; color: var(--muted); font-size: 12px; }
.support-operation input, .support-operation select { width: 100%; min-width: 0; padding: 9px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.support-operation button { border: 1px solid var(--accent); border-radius: 8px; padding: 9px 12px; background: #fff; color: var(--accent); font-weight: 800; cursor: pointer; }
.danger-operation { margin-top: 6px; padding-top: 10px; border-top: 1px solid var(--line); }
.danger-operation > summary { color: var(--danger); cursor: pointer; font-weight: 800; }
.warning-box { margin: 12px 0; padding: 10px 12px; border: 1px solid #f5b7b1; border-radius: 9px; background: #fff4f2; color: #7a271a; font-size: 12px; line-height: 1.45; }
.support-operation .check-label { display: grid; grid-template-columns: 18px 1fr; align-items: start; gap: 8px; margin: 9px 0; color: var(--ink); line-height: 1.35; }
.support-operation .check-label input { width: 16px; height: 16px; margin: 1px 0 0; }
.support-operation .danger-button { width: 100%; margin-top: 7px; border-color: var(--danger); background: var(--danger); color: #fff; }

@media (max-width: 850px) {
  .panel-heading { flex-direction: column; }
  .event-table { min-width: 760px; }
  .event-table th:nth-child(4), .event-table td:nth-child(4) { display: none; }
}

@media (max-width: 1250px) {
  .support-layout { grid-template-columns: 1fr; }
  .support-case-grid { grid-template-columns: 170px minmax(300px,.85fr) minmax(360px,1.15fr); }
}

@media (max-width: 980px) {
  .support-case-grid { grid-template-columns: 150px minmax(280px,1fr); }
  .support-thread { grid-column: 1 / -1; max-height: 620px; }
}

@media (max-width: 650px) {
  .support-case-grid { grid-template-columns: 1fr; min-height: 0; }
  .support-case-list, .support-composer, .support-thread { grid-column: auto; max-height: none; }
  .support-case-list { max-height: 220px; }
  .event-pagination { align-items: stretch; flex-direction: column; }
  .event-pagination div, .event-pagination button { flex: 1; }
  .event-action-col { width: 96px; }
}

/* Compact workspace navigation and retained-case architecture. */
.shell { grid-template-columns: 270px 1fr; transition: grid-template-columns .2s ease; }
.rail { position: relative; min-width: 0; }
.brand { min-width: 0; }
.brand-copy { min-width: 0; }
.brand-mark { flex: 0 0 auto; }
.nav-item { display: flex; align-items: center; gap: 11px; white-space: nowrap; }
.nav-icon { width: 20px; text-align: center; font-weight: 800; }
.rail-toggle { position: fixed; z-index: 25; top: 16px; left: 220px; width: 34px; height: 34px; border: 1px solid rgba(255,255,255,.22); border-radius: 9px; background: rgba(0,0,0,.16); color: #fff; cursor: pointer; transition: left .2s ease; }
.rail-collapsed .shell { grid-template-columns: 78px 1fr; }
.rail-collapsed .rail { padding-inline: 12px; }
.rail-collapsed .brand { justify-content: center; margin-top: 24px; }
.rail-collapsed .brand-copy,
.rail-collapsed .nav-label,
.rail-collapsed .auth-card { display: none; }
.rail-collapsed .nav-item { justify-content: center; padding-inline: 8px; }
.rail-collapsed .rail-toggle { left: 22px; }
.workspace-header { justify-content: flex-start; margin-bottom: 14px; }
.workspace-header h1 { margin-bottom: 0; font-size: 24px; }
#page-header { align-items: flex-start; gap: 24px; }
#page-header .page-heading { min-width: 0; }

.support-case-grid { min-height: 560px; }
.support-case-grid.is-empty { grid-template-columns: 190px minmax(420px,1fr) minmax(220px,.55fr); min-height: 0; }
.support-case-list h3 { margin: 0; }
.case-list-heading { display: flex; align-items: center; justify-content: space-between; gap: 6px; margin: 0 6px 12px; }
.case-list-heading .text-button { padding: 4px; background: transparent; color: var(--accent); font-size: 11px; }
.case-list-item.retained { cursor: default; }
.case-list-item.retained div { display: flex; gap: 5px; }
.case-list-item.retained .text-button { padding: 5px 7px; font-size: 10px; }
.support-empty { padding: 14px; border: 1px dashed #91dbe5; border-radius: 12px; background: #f7fcfd; }
.support-empty p { margin: 6px 0 0; color: var(--muted); font-size: 12px; }
.support-intro { display: grid; gap: 10px; margin-bottom: 12px; padding-bottom: 14px; border-bottom: 1px solid var(--line); }
.support-intro .support-welcome-art { width: 100%; max-height: 112px; object-fit: cover; object-position: left center; border-radius: 10px; }
.support-intro p { margin: 4px 0 0; color: var(--muted); font-size: 12px; }
.guide-section { border-bottom: 1px solid var(--line); }
.guide-section > summary { padding: 13px 0; cursor: pointer; color: var(--accent); font-weight: 800; }
.guide-section > ol,
.guide-section > p { margin-top: 0; }
.support-operation { display: block; margin: 0; padding: 0; border-top: 0; }
.controlled-operation { display: grid; gap: 9px; margin: 8px 0 12px; padding: 10px 11px; border: 1px solid var(--line); border-radius: 10px; background: #fbfdfe; }
.controlled-operation > summary { cursor: pointer; color: var(--accent); font-weight: 800; }
.controlled-operation > p { margin: 8px 0 0; font-size: 12px; line-height: 1.45; }
.danger-operation { margin-top: 8px; padding-top: 10px; }
.operation-result { padding: 8px 0; color: var(--muted); font-size: 12px; }
.case-history .secondary,
.history-actions .text-button,
.history-search button { border: 1px solid var(--accent); border-radius: 8px; padding: 9px 12px; background: #fff; color: var(--accent); font-weight: 800; cursor: pointer; }
.history-search { display: grid; grid-template-columns: minmax(280px,640px) minmax(120px,160px); justify-content: space-between; gap: 18px; align-items: end; margin: 18px 0; }
.history-search label { display: grid; gap: 6px; color: var(--muted); font-size: 12px; }
.history-search input { width: 100%; padding: 10px; border: 1px solid var(--line); border-radius: 9px; }
.history-search small { max-width: 640px; color: var(--muted); font-size: 11px; line-height: 1.4; }
.history-search button { width: 100%; background: var(--accent); color: #fff; }
.history-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.history-filters { display: grid; grid-template-columns: repeat(5,minmax(130px,1fr)); gap: 10px; align-items: end; margin: 18px 0 12px; }
.history-filters label, .history-bulk label, .content-request-filters label { display: grid; gap: 5px; color: var(--muted); font-size: 12px; }
.history-filters .wide { grid-column: span 2; }
.history-filters input, .history-filters select, .history-bulk select, .history-bulk textarea, .content-request-filters input, .content-request-filters select { width: 100%; padding: 9px; border: 1px solid var(--line); border-radius: 8px; background: #fff; color: var(--ink); }
.history-filter-actions { display: flex; gap: 7px; }
.history-filter-actions button, .history-bulk button, .content-request-filters button { border: 1px solid var(--accent); border-radius: 8px; padding: 9px 12px; background: var(--accent); color: #fff; font-weight: 800; cursor: pointer; }
.history-filter-actions button.secondary, .content-request-filters button.secondary { background: #fff; color: var(--accent); }
.history-bulk { display: grid; grid-template-columns: minmax(170px,1fr) minmax(150px,.7fr) minmax(150px,.7fr) minmax(260px,1.5fr) auto; gap: 10px; align-items: end; margin: 0 0 14px; padding: 12px; border: 1px solid #c9dcef; border-radius: 11px; background: #f5f9fd; }
.history-bulk > div { display: grid; gap: 3px; align-self: center; }
.history-bulk > div span { color: var(--muted); font-size: 11px; }
.history-bulk [hidden] { display: none; }
.history-bulk button:disabled { opacity: .5; cursor: not-allowed; }
.case-status { display: inline-flex; padding: 4px 8px; border-radius: 999px; background: #eef8f4; color: var(--ok); font-size: 11px; font-weight: 800; }
.case-status.resolved { background: #eef2f7; color: #526176; }

@media (max-width: 980px) {
  .support-case-grid.is-empty { grid-template-columns: 150px minmax(280px,1fr); }
}

@media (max-width: 1500px) {
  .support-layout { grid-template-columns: 1fr; }
}

@media (max-width: 850px) {
  .shell,
  .rail-collapsed .shell { grid-template-columns: 1fr; }
  .rail,
  .rail-collapsed .rail { position: fixed; z-index: 20; inset: 0 auto 0 0; width: min(300px,86vw); padding: 28px 20px; transform: translateX(-102%); transition: transform .2s ease; box-shadow: 12px 0 36px rgba(3,25,45,.25); }
  .rail-open .rail { transform: translateX(0); }
  .rail-collapsed .brand { justify-content: flex-start; margin-top: 0; }
  .rail-collapsed .brand-copy,
  .rail-collapsed .nav-label,
  .rail-collapsed .auth-card { display: block; }
  .rail-collapsed .nav-item { justify-content: flex-start; padding-inline: 13px; }
  .rail-toggle,
  .rail-collapsed .rail-toggle { top: 14px; left: 14px; background: #063b67; }
  .rail-open .rail-toggle { left: min(calc(86vw - 48px),252px); }
  main { padding-top: 64px; }
}

@media (max-width: 650px) {
  .support-case-grid.is-empty { grid-template-columns: 1fr; }
  .history-search { grid-template-columns: 1fr; }
  .history-search button { width: 100%; }
}

/* Read-only message inventory: a packaged snapshot, never a runtime editor. */
.message-inventory { display: grid; gap: 14px; }
.message-inventory > .panel-heading { padding: 18px 20px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.message-snapshot { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 16px; padding: 11px 14px; border: 1px solid #bceaf0; border-radius: 10px; background: var(--accent-soft); color: var(--ink); }
.message-snapshot span { color: var(--muted); font-size: 12px; }
.message-filters { display: grid; grid-template-columns: minmax(260px,2fr) repeat(4,minmax(130px,1fr)) auto auto; gap: 10px; align-items: end; padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.message-filters.advanced { grid-template-columns: repeat(4,minmax(150px,1fr)); border: 0; border-radius: 0; padding: 14px 0 0; }
.message-filters label { display: grid; gap: 6px; min-width: 0; color: var(--muted); font-size: 12px; }
.message-filters input, .message-filters select { width: 100%; min-width: 0; padding: 9px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.message-filters button { padding: 9px 13px; border: 1px solid var(--accent); border-radius: 8px; background: var(--accent); color: #fff; font-weight: 800; cursor: pointer; }
.message-filters button.secondary { background: #fff; color: var(--accent); }
.message-inventory > .advanced-filters { padding: 0 16px 14px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.message-layout { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(330px,.75fr); gap: 14px; align-items: start; }
.message-list, .message-detail { min-width: 0; border: 1px solid var(--line); border-radius: 14px; background: #fff; overflow: hidden; }
.message-list-heading { display: flex; justify-content: space-between; gap: 12px; align-items: center; padding: 15px 16px; }
.message-list-heading h3 { margin: 0; }
.message-table { min-width: 680px; }
.message-table tbody tr { cursor: pointer; }
.message-table tbody tr:hover, .message-table tbody tr.active { background: var(--accent-soft); outline: none; }
.message-table td:first-child { min-width: 300px; }
.message-table code { color: var(--accent); font-size: 12px; }
.message-detail { position: sticky; top: 18px; padding: 17px; }
.message-detail-heading { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.message-detail-heading > div { min-width: 0; }
.message-request-button {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 40px;
  border: 1px solid var(--accent);
  border-radius: 9px;
  padding: 9px 13px;
  background: #fff;
  color: var(--accent);
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
.message-request-button:hover { background: var(--accent-soft); }

.content-request-workspace { display: grid; gap: 16px; }
.content-request-layout { display: grid; grid-template-columns: minmax(420px, 1fr) minmax(420px, 1fr); gap: 18px; align-items: start; }
.content-request-form,
.content-request-list { min-width: 0; margin: 0; }
.content-request-form { position: sticky; top: 18px; padding: 0; overflow: hidden; }
.content-request-form > .panel-heading,
.content-request-list > .panel-heading { padding: 20px 22px 17px; border-bottom: 1px solid var(--line); }
.content-request-form h2,
.content-request-list h2,
.content-request-card h3 { margin: 4px 0 7px; }
.content-request-safety,
.content-request-count {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  border-radius: 999px;
  padding: 6px 9px;
  background: var(--accent-soft);
  color: var(--accent);
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}
.content-request-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding: 14px 22px;
  border-bottom: 1px solid var(--line);
  background: #f8fbfd;
}
.content-request-steps span { display: flex; align-items: center; gap: 7px; min-width: 0; color: var(--muted); font-size: 11px; font-weight: 700; }
.content-request-steps strong { display: grid; flex: 0 0 auto; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: #dff5f8; color: var(--accent); font-size: 11px; }
.content-request-fields,
.content-request-update { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.content-request-fields { padding: 20px 22px; }
.content-request-fields label,
.content-request-update label { display: grid; align-content: start; gap: 6px; min-width: 0; color: var(--muted); font-size: 12px; }
.content-request-fields label > span,
.content-request-update label > span { color: var(--ink); font-weight: 750; }
.content-request-fields label > span b { color: var(--danger); }
.content-request-fields label small { min-height: 16px; color: var(--muted); font-size: 11px; line-height: 1.4; }
.content-request-fields input,
.content-request-fields select,
.content-request-fields textarea,
.content-request-update input,
.content-request-update select {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 9px;
  padding: 10px 11px;
  background: #fff;
  color: var(--ink);
  font: inherit;
}
.content-request-fields textarea { min-height: 118px; resize: vertical; line-height: 1.45; }
.content-request-fields label.compact textarea { min-height: 82px; }
.content-request-fields .wide,
.content-request-update .wide { grid-column: 1 / -1; }
.content-request-fields input:focus,
.content-request-fields select:focus,
.content-request-fields textarea:focus,
.content-request-update input:focus,
.content-request-update select:focus { border-color: #76cbd8; box-shadow: 0 0 0 3px rgba(9,188,208,.12); }
.content-request-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 15px 22px 20px; border-top: 1px solid var(--line); background: #fbfdfe; }
.content-request-actions small { max-width: 380px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.content-request-actions button,
.content-request-update button {
  flex: 0 0 auto;
  min-height: 40px;
  border: 1px solid var(--accent);
  border-radius: 9px;
  padding: 9px 15px;
  background: var(--accent);
  color: #fff;
  font: inherit;
  font-weight: 800;
  white-space: nowrap;
  cursor: pointer;
}
.content-request-actions button:hover,
.content-request-update button:hover { filter: brightness(.94); }
.content-request-list { display: grid; align-content: start; gap: 12px; padding: 0 0 18px; overflow: hidden; }
.content-request-list > .content-request-card,
.content-request-list > .content-request-empty { margin-inline: 18px; }
.content-request-empty { display: grid; justify-items: center; gap: 6px; padding: 36px 20px; border: 1px dashed #91dbe5; border-radius: 12px; background: #f7fcfd; text-align: center; }
.content-request-empty > span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: #dff5f8; color: var(--accent); font-size: 20px; }
.content-request-empty p { max-width: 360px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
.content-request-card { padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.content-request-card .panel-heading { padding: 0; }
.content-request-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; margin: 10px 0 14px; color: var(--muted); font-size: 12px; }
.content-request-meta code { max-width: 100%; overflow-wrap: anywhere; color: var(--accent); }
.content-request-comparison { margin: 0 0 14px; border: 1px solid var(--line); border-radius: 10px; background: #fbfdfe; }
.content-request-comparison > summary { padding: 11px 12px; color: var(--accent); font-size: 12px; font-weight: 800; cursor: pointer; }
.content-copy-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 0 12px 12px; }
.content-copy-grid section { min-width: 0; }
.content-copy-grid h4 { margin: 0 0 6px; color: var(--muted); font-size: 10px; letter-spacing: .05em; text-transform: uppercase; }
.content-copy-grid .message-copy { max-height: 180px; padding: 10px; }
.content-copy-grid .message-copy.proposed { background: #effaf7; }
.content-request-last { display: grid; gap: 4px; margin-bottom: 14px; padding: 10px 12px; border-left: 3px solid #81d5df; background: #f7fcfd; font-size: 12px; }
.content-request-last span { color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.content-request-update { align-items: end; padding-top: 14px; border-top: 1px solid var(--line); }
.content-request-update button { grid-column: 1 / -1; justify-self: end; }
.immutable-image { display: grid; gap: 5px; overflow-wrap: anywhere; }
.case-status.in_progress,
.case-status.status-in_progress { background: #fff1c7; color: #6b4b00; }

@media (max-width: 1120px) {
  .content-request-layout { grid-template-columns: 1fr; }
  .content-request-form { position: static; }
}
.message-detail-heading { padding-bottom: 14px; border-bottom: 1px solid var(--line); }
.message-detail-heading h2 { margin: 4px 0 7px; }
.message-detail-heading code { overflow-wrap: anywhere; color: var(--accent); }
.message-detail section { padding: 14px 0; border-bottom: 1px solid var(--line); }
.message-detail section:last-child { border-bottom: 0; padding-bottom: 0; }
.message-detail h3 { margin: 0 0 8px; color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .06em; }
.message-copy { margin: 0; max-height: 250px; overflow: auto; white-space: pre-wrap; overflow-wrap: anywhere; border: 0; border-radius: 9px; background: #f5f8fb; color: var(--ink); font-family: inherit; font-size: 13px; }
.message-kv { display: grid; grid-template-columns: max-content minmax(0,1fr); gap: 8px 12px; margin: 0; font-size: 12px; }
.message-kv dt { color: var(--muted); }
.message-kv dd { margin: 0; overflow-wrap: anywhere; }
.message-empty { padding: 18px; border: 1px dashed #91dbe5; border-radius: 10px; background: #f7fcfd; }
.message-empty p { margin-bottom: 0; color: var(--muted); }

@media (max-width: 1350px) {
  .message-filters { grid-template-columns: repeat(3,minmax(150px,1fr)); }
  .message-search { grid-column: span 2; }
  .message-layout { grid-template-columns: 1fr; }
  .message-detail { position: static; }
}

@media (max-width: 980px) {
  .message-filters.advanced { grid-template-columns: repeat(2,minmax(150px,1fr)); }
}

@media (max-width: 650px) {
  .message-filters, .message-filters.advanced { grid-template-columns: 1fr; }
  .message-search { grid-column: auto; }
  .message-snapshot, .message-list-heading { align-items: flex-start; flex-direction: column; }
  .message-detail-heading { align-items: stretch; flex-direction: column; }
  .message-request-button { width: 100%; }
  .content-request-form > .panel-heading,
  .content-request-list > .panel-heading,
  .content-request-actions { align-items: stretch; flex-direction: column; }
  .content-request-steps,
  .content-request-fields,
  .content-request-update,
  .content-copy-grid { grid-template-columns: 1fr; }
  .content-request-steps { gap: 10px; }
  .content-request-fields .wide,
  .content-request-update .wide,
  .content-request-update button { grid-column: auto; }
  .content-request-actions button,
  .content-request-update button { width: 100%; }
}
:root {
  --ink: #10223b;
  --muted: #617086;
  --paper: #f4f8fb;
  --line: #d8e3ec;
  --accent: #076da3;
  --accent-soft: #e5f7fb;
  --ok: #087b70;
  --warn: #9b5700;
  --danger: #b42318;
  --shadow: 0 18px 45px rgba(4, 53, 87, .08);
}

.rail { background: linear-gradient(180deg, #062f5f 0%, #064b67 64%, #056071 100%); }
.brand-mark { width: 48px; height: 48px; object-fit: contain; border-radius: 15px; background: rgba(255,255,255,.96); padding: 3px; }
.nav-item:hover, .nav-item.active { background: rgba(255,255,255,.13); }
.auth-card { border-color: rgba(255,255,255,.18); background: rgba(1,32,61,.45); }
.auth-card[hidden], .auth-card button[hidden] { display: none !important; }
.content-request-link { color: var(--accent); font-size: 12px; font-weight: 700; }
.content-notice-state { margin: 0 18px; padding: 9px 12px; border-radius: 8px; background: #f2f8fb; color: var(--muted); font-size: 12px; }
.knowledge-browser { margin-top: 22px; padding-top: 20px; border-top: 1px solid var(--line); }
.knowledge-browser form { display: flex; flex-wrap: wrap; gap: 8px; }
.knowledge-browser form input { flex: 1 1 260px; min-width: 0; }
.knowledge-browser form input, .knowledge-browser form select { padding: 9px; border: 1px solid var(--line); border-radius: 8px; }
.knowledge-browser form button { padding: 9px 14px; border: 1px solid var(--accent); border-radius: 8px; background: var(--accent); color: #fff; cursor: pointer; }
.knowledge-advanced { flex-basis: 100%; }
.knowledge-advanced summary { color: var(--accent); font-weight: 700; cursor: pointer; }
.knowledge-advanced > div { display: grid; grid-template-columns: repeat(4, minmax(120px, 1fr)); gap: 8px; margin-top: 10px; }
.knowledge-advanced label { display: grid; gap: 4px; color: var(--muted); font-size: 12px; }
.knowledge-advanced input { min-width: 0; }
.knowledge-pagination { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 12px; }
.knowledge-pagination button { padding: 8px; border: 1px solid var(--line); border-radius: 7px; background: #fff; cursor: pointer; }
.knowledge-layout { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(280px, 2fr); gap: 14px; }
.knowledge-results { display: grid; align-content: start; gap: 8px; }
.knowledge-result { display: grid; gap: 4px; width: 100%; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: #fff; text-align: left; cursor: pointer; }
.knowledge-result span, .knowledge-result small, .knowledge-detail small { color: var(--muted); }
.knowledge-detail { padding: 16px; border: 1px solid var(--line); border-radius: 10px; background: #fbfdfe; }
.knowledge-drafts { margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--line); }
.knowledge-draft-form { display: grid; gap: 12px; margin-top: 16px; }
.knowledge-draft-form label { display: grid; gap: 5px; color: var(--muted); font-size: 12px; }
.knowledge-draft-form input, .knowledge-draft-form textarea { width: 100%; padding: 9px; border: 1px solid var(--line); border-radius: 8px; color: var(--ink); background: #fff; }
.knowledge-draft-form button, .knowledge-approval button { margin: 6px 8px 0 0; padding: 9px 13px; border: 1px solid var(--accent); border-radius: 8px; background: var(--accent); color: #fff; font-weight: 700; cursor: pointer; }
.knowledge-draft-form button.secondary { background: #fff; color: var(--accent); }
.knowledge-approval { display: grid; gap: 10px; margin-top: 16px; }
.knowledge-approval label { display: flex; align-items: center; gap: 8px; }
.knowledge-review-content { display: grid; gap: 10px; padding: 14px; border: 1px solid var(--line); border-radius: 9px; background: #f8fbfe; overflow-wrap: anywhere; }
.knowledge-review-content h4, .knowledge-review-content h5, .knowledge-review-content p { margin: 0; }
.knowledge-review-content ul { margin: 4px 0 0; padding-left: 20px; }
@media (max-width: 800px) { .knowledge-layout { grid-template-columns: 1fr; } }
@media (max-width: 800px) { .knowledge-advanced > div { grid-template-columns: repeat(2, minmax(120px, 1fr)); } }
.auth-card button { background: #09bcd0; color: #052b4f; }
.auth-card .release-state { padding-top: 7px; border-top: 1px solid rgba(255,255,255,.12); font-size: 10px; overflow-wrap: anywhere; opacity: .78; }
.read-only { border: 1px solid #bceaf0; }
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible, [tabindex]:focus-visible { outline: 3px solid rgba(9,188,208,.35); outline-offset: 2px; }

.support-operations {
  display: grid;
  gap: 16px;
}

.support-operations .panel {
  margin-bottom: 0;
}

.support-operations button,
.support-operations input,
.support-operations select,
.support-operations textarea {
  font: inherit;
}

.support-operations button:not(.ops-case-card) {
  min-height: 40px;
  border: 1px solid var(--accent);
  border-radius: 9px;
  padding: 9px 13px;
  background: var(--accent);
  color: #fff;
  font-weight: 800;
  line-height: 1.25;
  white-space: normal;
  cursor: pointer;
}

.support-operations button.secondary {
  background: #fff;
  color: var(--accent);
}

.support-operations button:disabled {
  opacity: .58;
  cursor: wait;
}

.ops-indicators {
  display: grid;
  grid-template-columns: repeat(3, minmax(145px, 1fr));
  gap: 12px;
}

.ops-indicator {
  min-width: 0;
  padding: 16px 17px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: var(--shadow);
}

.ops-indicator span,
.ops-indicator small {
  display: block;
}

.ops-indicator span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.ops-indicator strong {
  display: block;
  margin: 5px 0 2px;
  font-size: 24px;
}

.ops-indicator small {
  overflow-wrap: anywhere;
  color: var(--muted);
  font-size: 11px;
}

.ops-indicator.store-ready {
  border-color: #a9ded1;
  background: linear-gradient(145deg, #fff, #f0fbf7);
}

.ops-indicator.store-ready strong { color: var(--ok); }
.ops-indicator.store-attention,
.ops-indicator.indicator-warning {
  border-color: #efc882;
  background: linear-gradient(145deg, #fff, #fff8e9);
}
.ops-indicator.store-attention strong,
.ops-indicator.indicator-warning strong { color: var(--warn); }
.ops-indicator.store-unavailable {
  border-color: #efb1ab;
  background: linear-gradient(145deg, #fff, #fff1ef);
}
.ops-indicator.store-unavailable strong { color: var(--danger); }
.ops-indicator .store-help { margin-top: 7px; padding: 0; background: transparent; color: var(--accent); font-size: 11px; }
.ops-indicator.indicator-danger {
  border-color: #efb1ab;
  background: linear-gradient(145deg, #fff, #fff1ef);
}
.ops-indicator.indicator-danger strong { color: var(--danger); }

.ops-feedback {
  margin: 0;
  padding: 11px 14px;
  border: 1px solid #a9ded1;
  border-radius: 10px;
  background: #effbf7;
  color: #075f57;
  font-weight: 700;
}

.ops-toolbar {
  padding: 18px;
}

.ops-toolbar h2,
.ops-inbox h3,
.case-detail-header h2,
.case-section h3,
.ops-new-case h2,
.ops-case-empty h2 {
  margin: 0;
}

.ops-toolbar-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.ops-filters {
  display: grid;
  grid-template-columns: repeat(4, minmax(135px, 1fr)) auto;
  gap: 10px;
  align-items: end;
  margin-top: 15px;
}

.ops-filters label,
.workflow-form label,
.case-chat-composer label,
.ops-new-case label {
  display: grid;
  gap: 6px;
  min-width: 0;
  color: var(--muted);
  font-size: 12px;
}

.ops-filters select,
.workflow-form input,
.workflow-form select,
.workflow-form textarea,
.case-chat-composer textarea,
.ops-new-case input,
.ops-new-case select,
.ops-new-case textarea,
.evidence-add textarea,
.evidence-add input {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 9px;
  padding: 10px;
  background: #fff;
  color: var(--ink);
}

.ops-workspace {
  display: grid;
  grid-template-columns: minmax(300px, 360px) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

.ops-inbox {
  position: sticky;
  top: 16px;
  min-width: 0;
  padding: 0;
  overflow: hidden;
}

.ops-inbox-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 15px 16px;
  border-bottom: 1px solid var(--line);
}

.ops-inbox-heading span {
  min-width: 28px;
  padding: 4px 8px;
  border-radius: 999px;
  background: var(--accent-soft);
  color: var(--accent);
  text-align: center;
  font-size: 11px;
  font-weight: 800;
}

.ops-case-list {
  display: grid;
  gap: 8px;
  max-height: calc(100vh - 300px);
  padding: 10px;
  overflow-y: auto;
}

.ops-case-card {
  display: grid;
  gap: 7px;
  width: 100%;
  min-width: 0;
  border: 1px solid transparent;
  border-radius: 11px;
  padding: 12px;
  background: #f6f9fb;
  color: var(--ink);
  text-align: left;
  cursor: pointer;
}

.ops-case-card:hover,
.ops-case-card.active {
  border-color: #83d5e0;
  background: #edfafd;
}

.ops-case-card.active {
  box-shadow: inset 4px 0 0 #09bcd0;
}

.ops-case-topline,
.ops-case-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 6px;
}

.ops-case-topline strong {
  overflow-wrap: anywhere;
  font-size: 11px;
}

.ops-case-title {
  overflow-wrap: anywhere;
  font-size: 14px;
  font-weight: 800;
}

.ops-case-meta,
.ops-case-bottom {
  color: var(--muted);
  font-size: 11px;
}

.ops-empty {
  padding: 18px;
  border: 1px dashed #91dbe5;
  border-radius: 11px;
  background: #f7fcfd;
}

.ops-empty.compact { padding: 14px; }
.ops-empty p { margin: 6px 0 0; color: var(--muted); font-size: 12px; }

.case-status,
.severity,
.sla {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  border-radius: 999px;
  padding: 4px 8px;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
}

.case-status.status-open { background: #e9f5fd; color: #075e91; }
.case-status.status-triage { background: #fff3cf; color: #7a4b00; }
.case-status.status-waiting_evidence { background: #f2ebfc; color: #6940a7; }
.case-status.status-escalated { background: #ffeae7; color: #a2342a; }
.case-status.status-resolved { background: #e9f7f1; color: #087366; }
.severity-critical { background: #ffe3e0; color: #a11f16; }
.severity-high { background: #fff0d7; color: #8a4a00; }
.severity-medium { background: #e9f5fd; color: #075e91; }
.severity-low { background: #eef2f6; color: #536075; }
.severity-unknown { background: #f1f3f5; color: #667085; }
.sla-overdue { color: var(--danger); background: #fff0ee; }
.sla-risk { color: var(--warn); background: #fff6df; }
.sla-paused,
.sla-unknown { color: #59677a; background: #eef2f6; }
.sla-met,
.sla-ok { color: var(--ok); background: #e9f7f1; }

.ops-case-surface,
.ops-case-detail {
  min-width: 0;
}

.ops-case-detail {
  padding: 20px;
}

.case-detail-header,
.section-heading,
.timeline-heading,
.case-chat-message > div {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.case-detail-header {
  padding-bottom: 17px;
  border-bottom: 1px solid var(--line);
}

.case-detail-header h2 {
  margin-top: 5px;
  overflow-wrap: anywhere;
}

.case-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 10px;
}

.case-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 16px 0 0;
}

.case-facts div {
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #f8fafc;
}

.case-facts dt {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.case-facts dd {
  margin: 5px 0 0;
  overflow-wrap: anywhere;
  font-size: 13px;
  font-weight: 700;
}

.case-summary-grid {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.case-narrative,
.case-analysis-grid section {
  min-width: 0;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}

.case-narrative h3,
.case-analysis-grid h3 {
  margin: 0 0 9px;
  font-size: 15px;
}

.case-narrative h4 {
  margin: 14px 0 5px;
  color: var(--muted);
  font-size: 11px;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.case-narrative p {
  margin: 0;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}

.case-analysis-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.case-analysis-grid section:nth-child(1) { border-top: 3px solid #3aa886; }
.case-analysis-grid section:nth-child(2) { border-top: 3px solid #d59a35; }
.case-analysis-grid section:nth-child(3) { border-top: 3px solid #8a72cf; }
.case-analysis-grid ul,
.case-technical ul { margin: 0; padding-left: 19px; }
.case-analysis-grid li { margin-bottom: 6px; overflow-wrap: anywhere; font-size: 12px; }

.case-section {
  margin-top: 16px;
  padding: 17px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
}

.section-heading {
  align-items: center;
  margin-bottom: 13px;
}

.section-heading > span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}

.functional-timeline {
  position: relative;
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0 0 0 22px;
  list-style: none;
}

.functional-timeline::before {
  content: "";
  position: absolute;
  top: 6px;
  bottom: 6px;
  left: 6px;
  width: 2px;
  background: #bce4ea;
}

.functional-timeline li {
  position: relative;
}

.timeline-dot {
  position: absolute;
  top: 13px;
  left: -21px;
  width: 12px;
  height: 12px;
  border: 3px solid #fff;
  border-radius: 50%;
  background: #09aabd;
  box-shadow: 0 0 0 1px #74cbd6;
}

.timeline-card {
  padding: 13px 14px;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: #f9fbfc;
}

.timeline-heading {
  color: var(--muted);
  font-size: 10px;
}

.timeline-card h4 {
  margin: 5px 0;
  font-size: 14px;
}

.timeline-card p {
  margin: 0;
  overflow-wrap: anywhere;
  font-size: 13px;
}

.timeline-card details {
  margin-top: 9px;
  padding-top: 8px;
  border-top: 1px solid var(--line);
}

.timeline-card summary,
.case-technical > summary,
.evidence-add > summary,
.ops-controlled-tools > summary {
  color: var(--accent);
  font-weight: 800;
  cursor: pointer;
}

.timeline-card dl {
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr);
  gap: 6px 10px;
  margin-bottom: 0;
  font-size: 11px;
}

.timeline-card dd { margin: 0; overflow-wrap: anywhere; }

.case-follow-up {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(240px, .75fr);
  gap: 18px;
}

.workflow-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.workflow-form .wide,
.workflow-form button {
  grid-column: 1 / -1;
}

.status-history {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.status-history li {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.status-history li > span:last-child {
  overflow-wrap: anywhere;
  color: var(--muted);
  font-size: 11px;
}

.case-chat .read-only {
  flex: 0 0 auto;
}

.case-chat .section-heading {
  flex-wrap: wrap;
}

.case-chat-toggle {
  flex: 0 0 auto;
  margin-left: auto;
}

.case-chat.is-collapsed {
  padding-bottom: 13px;
  background: #fbfdfe;
}

.case-chat.is-collapsed .section-heading {
  margin-bottom: 7px;
}

.case-chat-history {
  display: grid;
  gap: 9px;
  max-height: 420px;
  margin: 12px 0;
  overflow-y: auto;
}

.case-chat-history.case-chat-preview {
  max-height: 190px;
  margin: 7px 0 0;
  padding: 2px 5px 2px 0;
  overscroll-behavior: contain;
}

.chat-history-label {
  margin: 8px 0 0;
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.case-chat-message {
  max-width: 88%;
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: #f6f8fa;
}

.case-chat-message.operator {
  justify-self: end;
  background: #eaf8fb;
}

.case-chat-message.sentinel {
  justify-self: start;
  border-color: #c9e7eb;
  background: #f7fcfd;
}

.case-chat-message.persisted {
  max-width: 100%;
  border-style: dashed;
  background: #fbfcfe;
}

.case-chat-exchange {
  display: grid;
  gap: 7px;
}

.case-chat-exchange .case-chat-message.operator { justify-self: end; }
.case-chat-exchange .case-chat-message.sentinel { justify-self: start; }

.case-chat-message strong { font-size: 11px; }
.case-chat-message time { color: var(--muted); font-size: 10px; }
.case-chat-message p { margin: 6px 0 0; overflow-wrap: anywhere; white-space: pre-wrap; font-size: 13px; }

.chat-conclusion {
  display: inline-flex;
  margin-top: 8px;
  padding: 3px 7px;
  border-radius: 999px;
  background: #fff1cf;
  color: #805700;
  font-size: 10px;
  font-weight: 800;
}

.chat-degraded {
  display: grid;
  gap: 4px;
  margin-bottom: 9px;
  padding: 9px 10px;
  border: 1px solid #efb64d;
  border-radius: 8px;
  background: #fff8e8;
  color: #6e4b00;
  font-size: 11px;
  line-height: 1.4;
}

.chat-degraded strong { font-size: 12px; }
.chat-degraded code { width: fit-content; color: #765400; }

.chat-degraded.historical {
  border-color: #a9ccd4;
  background: #f2fafc;
  color: #315d68;
}

.chat-degraded.historical code { color: #315d68; }

.chat-answer-structure {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 9px;
}

.chat-answer-structure section {
  padding: 8px;
  border: 1px solid #dce8eb;
  border-radius: 8px;
  background: #fff;
}

.chat-answer-structure ul,
.case-chat-message details ul {
  margin: 5px 0 0;
  padding-left: 17px;
}

.chat-answer-structure li,
.case-chat-message details li {
  margin: 3px 0;
  overflow-wrap: anywhere;
  font-size: 11px;
}

.case-chat-message details { margin-top: 8px; }
.case-chat-message details summary { font-size: 11px; font-weight: 700; }

.case-chat-composer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 9px;
  align-items: end;
}

.case-chat-composer[hidden] {
  display: none;
}

.case-chat-composer label { grid-column: 1 / -1; }
.case-chat-composer textarea { resize: vertical; }

.evidence-add > summary,
.case-technical > summary {
  margin: -2px 0;
}

.evidence-add[open] > summary,
.case-technical[open] > summary {
  margin-bottom: 14px;
}

.case-technical pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.ops-controlled-tools {
  margin-top: 16px;
  padding: 14px 16px;
  border: 1px dashed #c8d3dd;
  border-radius: 11px;
  background: #fafcfd;
}

.ops-controlled-tools .controlled-operation {
  max-width: 620px;
}

.ops-controlled-tools .danger-button {
  border-color: var(--danger);
  background: var(--danger);
}

.ops-new-case {
  max-width: 980px;
}

.ops-new-case .panel-heading {
  padding-bottom: 15px;
  border-bottom: 1px solid var(--line);
}

.ops-new-case form {
  margin-top: 16px;
}

.form-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 13px;
}

.ops-case-empty {
  display: grid;
  grid-template-columns: minmax(160px, 260px) minmax(260px, 1fr);
  gap: 24px;
  align-items: center;
  min-height: 330px;
}

.ops-case-empty .support-welcome-art {
  width: 100%;
  margin: 0;
}

.ops-case-empty p {
  max-width: 600px;
  color: var(--muted);
  line-height: 1.55;
}

.case-mode-toolbar {
  position: sticky;
  top: 0;
  z-index: 12;
  display: grid;
  grid-template-columns: auto minmax(180px, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 12px 16px;
  box-shadow: 0 8px 24px rgba(5, 43, 79, .08);
}

.case-mode-toolbar h2,
.case-mode-toolbar p {
  margin: 0;
}

.case-mode-toolbar h2 { font-size: 18px; }

.support-focus-mode .case-mode-toolbar {
  grid-template-columns: auto minmax(0, 1fr);
}

.support-focus-mode .case-mode-toolbar > div:not(.ops-toolbar-actions) { display: none; }
.support-focus-mode .case-mode-toolbar .ops-toolbar-actions { grid-column: 2; }

.ops-inbox-overview {
  position: static;
}

.ops-inbox-overview .ops-case-list {
  grid-template-columns: repeat(3, minmax(250px, 1fr));
  max-height: none;
  padding: 14px;
}

.ops-workspace.case-mode {
  grid-template-columns: minmax(250px, 290px) minmax(0, 1fr);
  gap: 12px;
}

.case-mode .ops-inbox {
  top: 74px;
}

.case-mode .ops-inbox-heading {
  padding: 11px 12px;
}

.case-mode .ops-inbox-heading .eyebrow {
  margin-bottom: 2px;
}

.case-mode .ops-case-list {
  gap: 6px;
  max-height: calc(100vh - 178px);
  padding: 8px;
}

.case-mode .ops-case-card {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px;
  min-height: 72px;
  padding: 8px 9px;
}

.case-mode .ops-case-topline,
.case-mode .ops-case-bottom {
  grid-column: 1 / -1;
  flex-wrap: nowrap;
}
.case-mode .ops-case-topline { grid-column: 1 / -1; flex-wrap: nowrap; }
.case-mode .ops-case-title {
  overflow: hidden;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.case-mode .ops-case-meta {
  align-self: center;
  white-space: nowrap;
}
.case-mode .ops-case-date { display: none; }
.case-mode .ops-case-bottom > span:nth-child(2) {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.case-mode .ops-case-meta,
.case-mode .ops-case-bottom { font-size: 10px; }
.case-mode .case-status,
.case-mode .severity,
.case-mode .sla { padding: 3px 6px; font-size: 9px; }

.case-workbench {
  padding: 0;
  overflow: clip;
}

.case-workbench-chrome {
  position: sticky;
  top: 72px;
  z-index: 10;
  padding: 14px 17px 0;
  border-bottom: 1px solid var(--line);
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 8px 18px rgba(5, 43, 79, .05);
}

.case-workbench .case-detail-header {
  margin-bottom: 0;
  padding-bottom: 10px;
  border-bottom: 0;
}

.case-workbench .case-detail-header h2 {
  margin-top: 2px;
  font-size: 20px;
}

.case-workbench .case-badges {
  margin-top: 7px;
}

.case-facts.compact {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
  margin: 0 0 10px;
}

.case-facts.compact div {
  padding: 7px 9px;
}

.case-facts.compact dd {
  margin-top: 3px;
  font-size: 11px;
}

.case-workbench-tabs {
  display: flex;
  gap: 3px;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: thin;
}

.support-operations .case-tab {
  flex: 0 0 auto;
  min-height: 38px;
  border: 0;
  border-bottom: 3px solid transparent;
  border-radius: 8px 8px 0 0;
  padding: 8px 11px;
  background: transparent;
  color: var(--muted);
  font-size: 12px;
  white-space: nowrap;
}

.support-operations .case-tab:hover {
  background: #f1f8fa;
  color: var(--accent);
}

.support-operations .case-tab.active {
  border-bottom-color: #09bcd0;
  background: var(--accent-soft);
  color: var(--accent);
}

.case-workbench-panels {
  padding: 0 17px 18px;
}

.case-tab-panel[hidden] { display: none; }
.case-tab-panel > .case-section,
.case-tab-panel > .case-summary-grid { margin-top: 14px; }

.case-tab-panel .case-chat {
  min-height: 310px;
  border-color: #bce5eb;
  background: linear-gradient(145deg, #fff, #f8fdfe);
}

.case-chat-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
  margin-left: auto;
}

.case-chat-history {
  min-height: 120px;
  max-height: min(52vh, 520px);
  padding-right: 5px;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

.case-chat-history.case-chat-preview {
  min-height: 126px;
  max-height: 210px;
}

.case-chat-composer {
  position: sticky;
  bottom: 0;
  padding-top: 10px;
  border-top: 1px solid var(--line);
  background: #fff;
}

.timeline-remainder {
  margin: 12px 0 0 22px;
  padding: 10px 12px;
  border: 1px dashed #9ccfd6;
  border-radius: 10px;
  background: #f8fcfd;
}

.timeline-remainder > summary {
  color: var(--accent);
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.timeline-remainder > .functional-timeline {
  margin-top: 12px;
}

.evidence-guidance {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(220px, .8fr);
  gap: 12px;
  margin-bottom: 14px;
}

.evidence-guidance > * {
  margin: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #f8fafc;
}

.evidence-guidance h4 { margin: 0 0 7px; }
.evidence-guidance ul { margin: 0; padding-left: 18px; }
.evidence-form { display: grid; gap: 11px; }

.evidence-collection-plan {
  margin: 14px 0;
  padding: 15px;
  border: 1px solid #8fc9d4;
  border-left: 4px solid var(--accent);
  border-radius: 12px;
  background: #f5fcfd;
}

.evidence-collection-plan > p { margin: 7px 0 13px; }
.evidence-profile {
  padding: 5px 8px;
  border-radius: 999px;
  background: #dff4f8;
  color: #075b70;
  font-size: 11px;
  font-weight: 800;
}

.evidence-plan-grid {
  display: grid;
  grid-template-columns: minmax(330px, 1.1fr) minmax(260px, .9fr);
  gap: 14px;
  align-items: start;
}

.evidence-plan-grid h4,
.evidence-source-guidance h4 { margin: 0 0 8px; }
.evidence-parameter-table-wrap {
  max-width: 100%;
  margin-bottom: 10px;
  overflow-x: auto;
}
.evidence-parameter-table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
}
.evidence-parameter-table th,
.evidence-parameter-table td {
  padding: 7px 8px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  font-size: 11px;
}
.evidence-parameter-table th { width: 43%; }
.evidence-parameter-table .missing-parameter {
  color: #a45500;
  font-weight: 800;
}
.evidence-source-guidance ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.evidence-source-guidance li {
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
}
.evidence-source-guidance p { margin: 5px 0; font-size: 12px; }
.evidence-source-guidance small { color: var(--muted); }
.evidence-source-status { font-size: 11px; font-weight: 800; }
.evidence-source-status.status-applies { color: #08765d; }
.evidence-source-status.status-needs_identifier { color: #a45500; }
.evidence-source-status.status-not_applicable { color: var(--muted); }
.evidence-operator-instructions {
  padding-top: 11px;
  border-top: 1px solid #b9dce2;
  color: #234c58;
  font-size: 12px;
}

.reanalysis-callout {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
  padding: 13px 14px;
  border: 1px solid #9bcbd4;
  border-radius: 10px;
  background: #f0fbfd;
}

.reanalysis-callout p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.reanalysis-callout button { flex: 0 0 auto; }

.workflow-comments {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.workflow-comments li {
  padding: 10px 11px;
  border: 1px dashed #c6dce1;
  border-radius: 9px;
  background: #fbfdfe;
}

.workflow-comments li > div {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}

.workflow-comments time {
  color: var(--muted);
  font-size: 10px;
}

.workflow-comments p {
  margin: 6px 0 0;
  overflow-wrap: anywhere;
  font-size: 12px;
}

.status-heading {
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}

@media (max-width: 1450px) {
  .ops-indicators { grid-template-columns: repeat(3, minmax(150px, 1fr)); }
  .ops-workspace { grid-template-columns: minmax(280px, 330px) minmax(0, 1fr); }
  .ops-workspace.case-mode { grid-template-columns: minmax(240px, 270px) minmax(0, 1fr); }
  .ops-inbox-overview .ops-case-list { grid-template-columns: repeat(2, minmax(250px, 1fr)); }
  .case-analysis-grid { grid-template-columns: 1fr; }
}

@media (max-width: 1120px) {
  .flow-contract-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ops-workspace { grid-template-columns: 1fr; }
  .ops-workspace.case-mode { grid-template-columns: minmax(220px, 250px) minmax(0, 1fr); }
  .ops-inbox { position: static; }
  .ops-case-list {
    grid-template-columns: repeat(2, minmax(250px, 1fr));
    max-height: 430px;
  }
  .case-follow-up { grid-template-columns: 1fr; }
}

@media (max-width: 850px) {
  .case-mode-toolbar { position: static; grid-template-columns: 1fr; }
  .case-mode-toolbar .ops-toolbar-actions { justify-content: flex-start; }
  .ops-workspace.case-mode { grid-template-columns: 1fr; }
  .case-mode .ops-inbox { display: none; }
  .support-focus-mode .case-mode-toolbar { grid-template-columns: minmax(0, 1fr) auto; }
  .support-focus-mode .case-mode-toolbar #support-refresh,
  .support-focus-mode .case-mode-toolbar #support-open-history { display: none; }
  .support-focus-mode .case-mode-toolbar .ops-toolbar-actions { grid-column: 2; width: auto; }
  .support-focus-mode .case-mode-toolbar .ops-toolbar-actions button { width: auto; }
  .case-workbench-chrome { position: static; }
  .ops-indicators { grid-template-columns: repeat(2, minmax(140px, 1fr)); }
  .ops-filters { grid-template-columns: repeat(2, minmax(140px, 1fr)); }
  .ops-filters button { grid-column: 1 / -1; }
  .case-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .case-detail-header { align-items: stretch; flex-direction: column; }
  .case-detail-header > button { width: 100%; }
  .case-facts.compact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .evidence-guidance { grid-template-columns: 1fr; }
  .evidence-plan-grid { grid-template-columns: 1fr; }
  .reanalysis-callout { align-items: stretch; flex-direction: column; }
  .reanalysis-callout button { width: 100%; }
}

@media (max-width: 650px) {
  .flow-topology-provenance,
  .flow-contract-grid { grid-template-columns: 1fr; }
  .flow-topology-warning { grid-template-columns: 1fr; }
  .ops-indicators,
  .ops-filters,
  .ops-case-list,
  .case-facts,
  .workflow-form,
  .ops-case-empty {
    grid-template-columns: 1fr;
  }
  .ops-toolbar-actions,
  .form-actions {
    width: 100%;
  }
  .ops-toolbar-actions button,
  .form-actions button {
    flex: 1 1 100%;
    width: 100%;
  }
  .ops-case-detail,
  .ops-toolbar,
  .ops-new-case {
    padding: 15px;
  }
  .case-analysis-grid { grid-template-columns: 1fr; }
  .case-chat .section-heading {
    align-items: stretch;
    flex-direction: column;
  }
  .case-chat .read-only { width: fit-content; }
  .case-chat-message { max-width: 100%; }
  .chat-answer-structure { grid-template-columns: 1fr; }
  .case-chat-composer { grid-template-columns: 1fr; }
  .ops-inbox-overview .ops-case-list,
  .case-mode .ops-case-list,
  .case-facts.compact { grid-template-columns: 1fr; }
  .case-workbench-panels { padding: 0 11px 12px; }
  .case-workbench-chrome { padding: 12px 11px 0; }
  .case-chat-actions { width: 100%; justify-content: stretch; }
  .case-chat-actions button { flex: 1 1 auto; }
  .timeline-card dl { grid-template-columns: 1fr; }
}

/* Living, release-bound help center. */
.context-help {
  flex: 0 0 auto;
  align-self: flex-start;
  margin: 2px 0 0 auto;
  border: 1px solid transparent;
  border-radius: 9px;
  padding: 6px 8px;
  background: transparent;
  color: var(--accent);
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}
.context-help:hover, .context-help:focus-visible { border-color: #b9d4ee; background: var(--accent-soft); }
.sentinel-onboarding { display: flex; align-items: center; justify-content: space-between; gap: 20px; border-color: #a9ded1; background: linear-gradient(145deg,#fff,#f0fbf7); }
.sentinel-onboarding h2 { margin: 5px 0 7px; }
.sentinel-onboarding p { margin: 0; max-width: 700px; color: var(--muted); line-height: 1.5; }
.sentinel-onboarding-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; min-width: 310px; }
.sentinel-onboarding-actions button { border: 1px solid var(--accent); border-radius: 9px; padding: 9px 12px; background: var(--accent); color: #fff; font-weight: 800; cursor: pointer; }
.sentinel-onboarding-actions button.secondary { background: #fff; color: var(--accent); }
.help-center { display: grid; gap: 16px; }
.help-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--muted); font-size: 12px; }
.help-toolbar button,
.help-actions button,
.help-search button {
  border: 1px solid var(--accent);
  border-radius: 9px;
  padding: 9px 13px;
  background: var(--accent);
  color: #fff;
  font-weight: 800;
  cursor: pointer;
}
.help-toolbar button.secondary,
.help-actions button.secondary,
.help-search button.secondary { background: #fff; color: var(--accent); }
.help-home { margin: 0; }
.help-version { display: inline-flex; padding: 7px 10px; border-radius: 999px; background: var(--accent-soft); color: var(--accent); font-size: 12px; font-weight: 800; }
.help-search { display: grid; grid-template-columns: minmax(260px,1fr) auto auto; gap: 10px; align-items: end; margin-top: 18px; }
.help-search label { display: grid; gap: 6px; color: var(--muted); font-size: 12px; }
.help-search input { width: 100%; padding: 10px; border: 1px solid var(--line); border-radius: 9px; }
.help-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(260px,1fr)); gap: 14px; }
.help-card { display: grid; gap: 8px; min-height: 150px; padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: #fff; color: var(--ink); text-align: left; box-shadow: var(--shadow); cursor: pointer; }
.help-card:hover, .help-card:focus { border-color: var(--accent); transform: translateY(-1px); outline: none; }
.help-card span { color: var(--accent); font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.help-card strong { font-size: 17px; }
.help-card small { color: var(--muted); font-size: 12px; line-height: 1.45; }
.help-article { margin: 0; max-width: 980px; }
.help-article > h2 { margin: 6px 0 8px; font-size: 26px; }
.help-summary { margin: 0 0 22px; color: var(--muted); font-size: 15px; line-height: 1.5; }
.help-section { padding: 17px 0; border-top: 1px solid var(--line); }
.help-section h3 { margin: 0 0 10px; }
.help-section p, .help-section li { line-height: 1.55; }
.help-section ol, .help-section ul { padding-left: 24px; }
.help-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--line); }
.help-feedback { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; max-width: 980px; padding: 14px 16px; border: 1px solid #bceaf0; border-radius: 12px; background: #f1fbfc; }
.help-feedback span { color: var(--muted); font-size: 12px; }
.help-feedback .text-button { margin-left: auto; padding: 7px 10px; }
.help-empty { grid-column: 1 / -1; }
.wishlist-article { max-width: 1100px; }
.wishlist { display: grid; gap: 12px; }
.wishlist-news { display: grid; grid-template-columns: minmax(180px,.6fr) 1.5fr; gap: 16px; padding: 16px; border: 1px solid #bceaf0; border-radius: 12px; background: #f1fbfc; }
.wishlist-news h3, .wishlist-news p { margin: 4px 0 0; }
.wishlist-news article { display: grid; gap: 5px; }
.wishlist-news article span { color: var(--accent); font-size: 11px; font-weight: 800; }
.wishlist-news article p, .wishlist-intro p { color: var(--muted); line-height: 1.45; }
.wishlist-intro h3, .wishlist-intro p { margin: 0 0 5px; }
.wishlist-item { border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.wishlist-item > summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 15px; cursor: pointer; }
.wishlist-item > summary > span { display: grid; gap: 4px; }
.wishlist-item > summary small { color: var(--muted); }
.wishlist-summary-meta { text-align: right; }
.wishlist-summary-meta b { color: var(--accent); }
.wishlist-body { padding: 0 15px 16px; border-top: 1px solid var(--line); }
.wishlist-body dl { display: grid; grid-template-columns: 170px 1fr; gap: 6px 12px; }
.wishlist-body dt { color: var(--muted); font-weight: 750; }
.wishlist-body dd { margin: 0; }
.wishlist-feedback-form { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 15px; padding: 13px; border-radius: 10px; background: #f5f9fd; }
.wishlist-feedback-form label { display: grid; gap: 5px; color: var(--muted); font-size: 12px; }
.wishlist-feedback-form .wide { grid-column: 1 / -1; }
.wishlist-feedback-form input, .wishlist-feedback-form select { padding: 9px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.wishlist-feedback-form button { justify-self: end; border: 0; border-radius: 8px; padding: 9px 12px; background: var(--accent); color: #fff; font-weight: 800; }
.wishlist-discussion ol { display: grid; gap: 8px; padding: 0; list-style: none; }
.wishlist-discussion li { padding: 10px; border-left: 3px solid #b9d4ee; background: #fbfdff; }
.wishlist-discussion li div { display: flex; justify-content: space-between; gap: 10px; }
.wishlist-discussion li span { color: var(--muted); font-size: 11px; }
.wishlist-discussion li p { margin: 5px 0 0; }
.case-close-dialog form { display: grid; gap: 13px; }
.case-close-dialog label { display: grid; gap: 6px; color: var(--muted); font-size: 12px; }
.case-close-dialog select, .case-close-dialog textarea { width: 100%; padding: 10px; border: 1px solid var(--line); border-radius: 9px; background: #fff; }
.case-header-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.closure-summary { margin-bottom: 14px; padding: 12px; border: 1px solid #b8dfca; border-radius: 10px; background: #f2fbf6; }
.closure-summary p { margin: 6px 0; }
.closure-summary small { color: var(--muted); }
.content-request-filters { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(0,1fr); gap: 8px; align-items: end; margin: 14px 18px; }
.content-request-filters button { width: 100%; }
.dialog-actions { gap: 8px; }
.dialog-actions button.secondary { border: 1px solid var(--accent); background: #fff; color: var(--accent); }

@media (max-width: 650px) {
  #page-header { align-items: stretch; flex-direction: column; gap: 10px; }
  .context-help { align-self: flex-start; margin-left: 0; padding: 8px; font-size: 12px; }
  .sentinel-onboarding { align-items: stretch; flex-direction: column; }
  .sentinel-onboarding-actions { min-width: 0; justify-content: stretch; }
  .sentinel-onboarding-actions button { flex: 1 1 100%; }
  .help-search { grid-template-columns: 1fr; }
  .help-toolbar { align-items: stretch; flex-direction: column; }
  .help-feedback .text-button { width: 100%; margin-left: 0; }
  .history-filters, .history-bulk, .content-request-filters, .wishlist-feedback-form, .wishlist-news { grid-template-columns: 1fr; }
  .history-filters .wide, .wishlist-feedback-form .wide { grid-column: auto; }
  .wishlist-item > summary { align-items: flex-start; flex-direction: column; }
  .wishlist-summary-meta { text-align: left; }
  .wishlist-body dl { grid-template-columns: 1fr; }
}
.configuration-panel { display: grid; gap: 1rem; }
.runtime-toolbar { display: flex; align-items: end; gap: 1rem; flex-wrap: wrap; }
.runtime-toolbar > div { flex: 1 1 350px; }
.runtime-toolbar label { display: grid; gap: .4rem; min-width: 130px; }
.runtime-controls-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); gap: 1rem; margin-bottom: 1rem; }
.runtime-control-card { padding: 1.2rem; background: #fff; border: 1px solid var(--line); border-radius: 16px; }
.runtime-state { padding: .3rem .55rem; border-radius: 8px; font-size: .8rem; font-weight: 800; white-space: nowrap; }
.runtime-state.enabled, .runtime-comparison.same { color: #076242; background: #eaf8f1; }
.runtime-state.paused, .runtime-state.unknown, .runtime-comparison.unknown { color: #5b6470; background: #eef2f6; }
.runtime-comparison.different, .runtime-warning { color: #8c4309; background: #fff6e9; }
.runtime-warning { padding: .75rem; border-radius: 10px; }
.runtime-actions { display: flex; align-items: end; flex-wrap: wrap; gap: .6rem; margin: 1rem 0; }
.runtime-actions label { display: grid; gap: .4rem; flex: 1 1 180px; font-size: .85rem; }
.runtime-actions input, .runtime-toolbar select, .runtime-change-dialog input:not([type=checkbox]) { padding: .55rem; border: 1px solid var(--line); border-radius: 8px; max-width: 100%; }
.runtime-image-table { overflow-x: auto; }
.runtime-image-table table { min-width: 650px; }
.runtime-image-table code { overflow-wrap: anywhere; }
.runtime-comparisons { margin-top: 1rem; border-top: 1px solid var(--line); padding-top: .8rem; }
.runtime-comparisons summary { cursor: pointer; font-weight: 800; color: var(--accent); }
.runtime-comparisons ul { display: grid; gap: .6rem; padding: 0; list-style: none; }
.runtime-comparisons li { display: flex; flex-wrap: wrap; gap: .7rem; align-items: center; }
.runtime-comparison { padding: .35rem .5rem; border-radius: 7px; font-size: .85rem; }
.runtime-change-dialog { max-width: 620px; }
.runtime-change-dialog form, .runtime-change-dialog label, .runtime-change-dialog fieldset { display: grid; gap: .7rem; }
.runtime-change-dialog fieldset { border: 1px solid var(--line); border-radius: 10px; }
.runtime-change-dialog .runtime-consent { display: flex; align-items: start; font-weight: 700; }
.runtime-change-dialog #runtime-change-error { color: #914100; }
.runtime-change-dialog [hidden] { display: none; }
.runtime-info { padding: .85rem 1rem; border: 1px solid #cbdce9; border-radius: 10px; color: #344e65; background: #f3f8fc; line-height: 1.5; }
.content-request-workbench .content-request-form { position: static; max-width: 1120px; }
.content-request-workbench .content-request-list { overflow: visible; }
.content-request-workbench .content-request-filters { grid-template-columns: minmax(240px, 1.8fr) minmax(130px, 1fr) minmax(120px, .8fr) auto auto; margin: 0 22px; }
.content-request-workbench .content-request-filters button { width: auto; }
.content-request-workbench .content-request-list > .panel-heading { margin: 0; align-items: start; }
#content-request-new { flex: 0 0 auto; padding: 10px 14px; border: 0; border-radius: 8px; color: #fff; background: var(--accent); font-weight: 750; cursor: pointer; }
.content-request-summary { display: flex; flex-wrap: wrap; gap: 10px 20px; padding: 2px 22px 8px; color: var(--muted); font-size: 12px; }
.content-request-summary strong { color: var(--ink); }
.content-request-summary small { margin-left: auto; align-self: center; }
.content-request-result-count { margin: 0 22px; color: var(--muted); font-size: 12px; }
.content-request-table-scroll { overflow-x: auto; }
.content-request-table { width: 100%; min-width: 0; table-layout: fixed; }
.content-request-table th, .content-request-table td { padding: 12px 10px; vertical-align: top; text-align: left; overflow-wrap: anywhere; }
.content-request-table th { font-size: 11px; color: var(--muted); background: #f8fafc; }
.content-request-table td { font-size: 12px; border-top: 1px solid var(--line); }
.content-request-table th:first-child { width: 30%; }
.content-request-table th:nth-child(2) { width: 10%; }
.content-request-table th:nth-child(3) { width: 17%; }
.content-request-table th:nth-child(4) { width: 12%; }
.content-request-table th:nth-child(5) { width: 23%; }
.content-request-table th:last-child { width: 8%; }
.content-request-table td:first-child { padding-left: 22px; }
.content-request-table td:last-child { white-space: nowrap; }
.content-request-table td small { display: block; margin-top: 4px; color: var(--muted); font-size: 11px; }
.content-request-open { display: grid; gap: 2px; padding: 0; border: 0; background: transparent; text-align: left; color: var(--ink); cursor: pointer; }
.content-request-open strong { font-size: 13px; }
.content-request-open:hover strong, .content-request-open:focus-visible strong { color: var(--accent); text-decoration: underline; }
.content-request-key { display: block; overflow-wrap: anywhere; margin-top: 6px; color: var(--muted); font-size: 10px; }
.content-request-last-preview { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin-top: 4px; line-height: 1.5; }
.content-request-detail { padding: 22px; }
.content-request-detail .content-copy-grid { padding: 0; margin: 22px 0; }
.content-request-detail .content-copy-grid section { min-width: 0; }
.content-request-detail .message-copy { white-space: pre-wrap; overflow-wrap: anywhere; }
.content-request-detail .immutable-image code, .content-request-history code { display: block; overflow-wrap: anywhere; font-size: 11px; margin-top: 7px; }
.content-request-detail-columns { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px; padding-top: 20px; border-top: 1px solid var(--line); margin-bottom: 24px; }
.content-request-history ol { display: grid; gap: 12px; padding: 0; list-style: none; }
.content-request-history li { padding: 12px 14px; border-left: 3px solid #bcd8e8; background: #f7fafc; }
.content-request-history li > div { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; font-size: 12px; }
.content-request-history time, .content-request-history small { color: var(--muted); font-size: 11px; }
.content-request-history p { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.5; font-size: 13px; }
.content-request-detail textarea { width: 100%; padding: 10px; border: 1px solid var(--line); border-radius: 8px; resize: vertical; font: inherit; }
@media (max-width: 1100px) { .content-request-workbench .content-request-filters { grid-template-columns: minmax(160px, 1.4fr) 1fr 1fr; } }
@media (max-width: 1100px) {
  .content-request-table thead { display: none; }
  .content-request-table, .content-request-table tbody { display: block; width: 100%; }
  .content-request-table tr { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px 15px; padding: 16px 22px; border-top: 1px solid var(--line); }
  .content-request-table td, .content-request-table td:first-child { display: block; width: auto; padding: 0; border: 0; min-width: 0; }
  .content-request-table td:first-child { grid-column: 1 / -1; }
  .content-request-table td::before { content: attr(data-label); display: block; margin-bottom: 5px; color: var(--muted); font-size: 10px; font-weight: 750; }
  .content-request-table td:nth-child(5) { grid-column: 1 / 3; }
  .content-request-table td:last-child { align-self: end; text-align: right; }
}
@media (max-width: 650px) {
  .content-request-workbench .content-request-filters, .content-request-detail-columns { grid-template-columns: 1fr; }
  .content-request-summary small { margin-left: 0; width: 100%; }
  .content-request-detail { padding: 15px; }
}
.runtime-info a { display: inline-block; margin-left: .3rem; }
.organization-settings .panel-heading { align-items: flex-start; gap: 1rem; }
.organization-settings .panel-heading > div { flex: 1; }
.organization-settings .panel-heading h2 { margin: .35rem 0; }
.organization-settings label { display: grid; gap: .4rem; }
.organization-settings select, .organization-settings input { padding: .6rem; border: 1px solid var(--line); border-radius: 8px; background: #fff; max-width: 100%; }
.organization-settings-actions { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; margin: 1rem 0; }
.organization-settings button, .organization-settings .settings-action-link {
  display: inline-flex; align-items: center; justify-content: center; min-height: 42px; gap: .45rem;
  padding: .65rem 1rem; border: 1px solid #135d88; border-radius: 9px; background: #135d88;
  color: #fff; font: inherit; font-size: .85rem; font-weight: 700; line-height: 1.3; text-decoration: none; cursor: pointer;
}
.organization-settings .settings-action-link { background: #fff; color: #135d88; border-color: #afc5d6; }
.organization-settings button:hover { background: #0b4268; }
.organization-settings .settings-action-link:hover { background: #eef6fb; }
.organization-settings button:focus-visible, .organization-settings a:focus-visible { outline: 3px solid #39a9c2; outline-offset: 3px; }
.settings-connection-summary { padding: .9rem 1rem; border: 1px solid #c6d6e4; border-radius: 10px; background: #f2f7fb; }
.settings-connection-summary.is-pending { background: #fff9ec; border-color: #e7d3a5; }
.settings-connection-summary > strong { display: block; color: #163a58; }
.settings-connection-summary p { margin: .4rem 0; font-size: .9rem; }
.settings-connection-summary a { display: inline-block; margin-top: .2rem; font-size: .85rem; }
.settings-section-heading { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .5rem; margin: 1.4rem 0 .7rem; }
.settings-section-heading h3 { margin: 0; }
.settings-section-heading > span { color: var(--muted); font-size: .8rem; }
.organization-setting-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.organization-setting-card { padding: 1rem; border: 1px solid var(--line); border-radius: 12px; background: #fbfdff; min-width: 0; }
.organization-setting-card h4 { margin: 0 0 .6rem; font-size: 1rem; }
.organization-setting-card > p { font-size: .85rem; line-height: 1.5; }
.setting-current-values { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin: 1rem 0; }
.setting-current-values dt { font-size: .75rem; color: var(--muted); }
.setting-current-values dd { margin: .3rem 0 0; overflow-wrap: anywhere; }
.organization-setting-card form { display: flex; align-items: end; flex-wrap: wrap; gap: .75rem; margin-top: 1rem; }
.organization-setting-card form label { flex: 1 1 145px; font-size: .8rem; }
.organization-setting-card input { min-width: 0; width: 100%; box-sizing: border-box; }
.organization-setting-card form button { flex: 1 1 150px; }
.organization-setting-card .setting-limit { color: #795313; }
.reagenda-compatibility { margin: 1rem 0; padding: .8rem 1rem; border: 1px solid var(--line); border-radius: 9px; font-size: .85rem; }
.reagenda-compatibility summary { cursor: pointer; font-weight: 650; }
.reagenda-compatibility p { margin-bottom: 0; line-height: 1.5; }
.configuration-observation { color: #38576d; font-size: .8rem; line-height: 1.6; }
.configuration-observation.is-stale { color: #805718; }
.configuration-value-guide { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; padding: .9rem; background: #f2f7fb; border-radius: 10px; }
.configuration-value-guide dt { font-weight: 700; font-size: .8rem; }
.configuration-value-guide dd { margin: .3rem 0 0; font-size: .8rem; color: var(--muted); line-height: 1.4; }
.operational-configuration-table { width: 100%; table-layout: fixed; border-collapse: collapse; }
.operational-configuration-table th, .operational-configuration-table td { padding: .9rem .6rem; vertical-align: top; border-bottom: 1px solid var(--line); overflow-wrap: anywhere; font-size: .8rem; }
.operational-configuration-table th:first-child { width: 31%; text-align: left; }
.operational-configuration-table.has-observations th:last-child { width: 24%; }
.operational-configuration-table thead th { background: #f2f7fb; font-size: .75rem; }
.operational-configuration-table code { display: block; font-size: .69rem; font-weight: 400; margin-top: .4rem; color: #49677d; }
.operational-configuration-table small { display: block; font-size: .72rem; line-height: 1.45; font-weight: 400; color: var(--muted); margin-top: .3rem; }
.operational-configuration-table th > small { margin-top: .45rem; }
.operational-configuration-table .declared-reference { color: #315c77; }
.operational-value + .operational-value, .operational-evidence + .operational-evidence { margin-top: .75rem; padding-top: .65rem; border-top: 1px dashed #c9d9e4; }
.operational-evidence > span { font-weight: 650; }
.organization-channels { margin-top: 1.5rem; padding-top: 1.1rem; border-top: 1px solid var(--line); }
.organization-channels h3 { margin-top: 0; }
@media (max-width: 1000px) {
  .operational-configuration-table, .operational-configuration-table tbody, .operational-configuration-table tr, .operational-configuration-table th, .operational-configuration-table td { display: block; width: auto !important; }
  .operational-configuration-table thead { display: none; }
  .operational-configuration-table tr { margin: .8rem 0; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
  .operational-configuration-table th { background: #f2f7fb; }
  .operational-configuration-table td { border-bottom: 0; padding: .65rem .8rem; }
  .operational-configuration-table td::before { content: attr(data-label); display: block; font-weight: 700; font-size: .75rem; margin-bottom: .4rem; color: #254861; }
}
@media (max-width: 700px) {
  .organization-setting-grid, .configuration-value-guide { grid-template-columns: 1fr; }
  .organization-settings-actions > * { width: 100%; box-sizing: border-box; }
}
.organization-settings-table { min-width: 900px; width: 100%; }
.organization-settings-table th:first-child { width: 31%; }
.organization-settings-table td:last-child { width: 33%; }
.organization-settings-table th, .organization-settings-table td { vertical-align: top; }
.organization-settings-table code { display: block; font-size: .75rem; overflow-wrap: anywhere; margin-top: .45rem; }
.organization-settings-table p { font-size: .85rem; line-height: 1.5; margin: .5rem 0; font-weight: 400; }
.organization-settings-table form { display: grid; gap: .55rem; margin-top: .7rem; }
.organization-settings-table form label { font-size: .8rem; }
.organization-settings-table form button { justify-self: start; }
@media (max-width: 650px) {
  .organization-settings .panel-heading { flex-direction: column; }
  .organization-settings .panel-heading > label { width: 100%; }
  .organization-settings-actions { align-items: stretch; flex-direction: column; }
}
.configuration-disclosure { padding: 0; overflow: hidden; }
.configuration-disclosure > summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.2rem; cursor: pointer; list-style: none; }
.configuration-disclosure > summary::-webkit-details-marker { display: none; }
.configuration-disclosure > summary h2, .configuration-disclosure > summary p { margin-bottom: .25rem; }
.configuration-disclosure > summary:focus-visible { outline: 3px solid var(--cyan, #42b7ca); outline-offset: -3px; }
.configuration-disclosure-body { border-top: 1px solid var(--border, #c9d8e6); padding: 1.2rem; }
.disclosure-action { display: flex; flex-direction: column; align-items: end; flex: 0 0 auto; color: var(--navy, #11375f); }
.disclosure-action small { color: var(--blue, #1f6da5); font-weight: 800; }
.configuration-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: .85rem; }
.configuration-environment { border-top: 1px solid var(--border, #c9d8e6); padding-top: 1rem; }
.configuration-environment:first-of-type { border-top: 0; padding-top: 0; }
.configuration-item { display: flex; flex-direction: column; gap: .35rem; border: 1px solid var(--border, #c9d8e6); border-radius: 12px; padding: .9rem; background: #f8fbfe; }
.configuration-item > span { color: var(--navy, #11375f); font-size: 1.05rem; font-weight: 800; }
.configuration-item p { margin: 0; color: var(--muted, #52677c); }
.configuration-item small { color: var(--muted, #52677c); }
.configuration-table-scroll { overflow-x: auto; }
.configuration-comparison { min-width: 920px; table-layout: fixed; }
.configuration-comparison th:nth-child(1) { width: 22%; }
.configuration-comparison th:nth-child(2) { width: 36%; }
.configuration-comparison th:nth-child(n+3) { width: 14%; }
.configuration-comparison thead th { background: #f1f6fa; color: var(--navy, #11375f); font-size: .75rem; letter-spacing: .05em; }
.configuration-comparison tbody th { vertical-align: top; }
.configuration-comparison tbody th strong { display: block; color: var(--navy, #11375f); font-size: .9rem; line-height: 1.35; }
.configuration-comparison tbody th code { display: block; margin-top: .3rem; color: var(--muted, #52677c); font-size: .67rem; font-weight: 500; overflow-wrap: anywhere; }
.configuration-comparison td { vertical-align: top; }
.configuration-description { color: var(--muted, #52677c); line-height: 1.45; }
.configuration-value { color: var(--navy, #11375f); font-weight: 800; overflow-wrap: anywhere; }
.closed-case-explanation { margin: .85rem 0 0; color: var(--muted, #52677c); }
.closed-history-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1rem; }
.closed-conversation-history { margin-top: 1rem; }

/* Optional environment evidence follows the operational case queue. */
.audit-environments { border: 1px solid var(--line); border-radius: 12px; }
.audit-environments[open] { background: #fff; }
.audit-environments-summary { display: flex; align-items: center; gap: 10px; padding: 12px 16px; cursor: pointer; list-style: none; font-size: 13px; }
.audit-environments-summary::-webkit-details-marker { display: none; }
.audit-environments-summary::before { content: "▸"; color: var(--muted); }
.audit-environments[open] > .audit-environments-summary::before { content: "▾"; }
.audit-environments-summary > span { flex: 1; font-weight: 600; }
.audit-environments-summary > small { color: var(--muted); }
.audit-environments-summary:focus-visible { outline: 2px solid var(--accent); outline-offset: -3px; border-radius: 12px; }
.audit-environments-content { padding: 0 16px 12px; }
.audit-environments-help { display: flex; justify-content: flex-end; }
.audit-environments-help button { padding: 4px 0; }
.audit-environment { display: grid; grid-template-columns: 65px minmax(135px, .7fr) minmax(180px, 1fr) 100px; gap: 10px; align-items: start; padding: 10px 0; border-top: 1px solid var(--line); font-size: 12px; }
.audit-env-name { font-weight: 800; }
.audit-env-status { font-weight: 700; }
.audit-env-count { color: var(--muted); }
.audit-environment.store-ready .audit-env-status { color: var(--ok); }
.audit-environment.store-attention .audit-env-status { color: var(--warn); }
.audit-environment.store-unavailable .audit-env-status { color: var(--danger); }
.audit-environment details { min-width: 0; }
.audit-environment summary { cursor: pointer; color: var(--accent); }
.audit-environment details[open] { grid-column: 1 / -1; padding: 8px 12px; background: var(--surface, #f3f8fc); border-radius: 8px; }
.audit-environment details p { margin: 8px 0; }
.audit-environment details ul { margin: 0; padding-left: 18px; }
@media (max-width: 650px) {
  .audit-environment { grid-template-columns: 55px 1fr; }
  .audit-env-count, .audit-environment details { grid-column: 2; }
}
.help-code{overflow-x:auto;padding:14px;border:1px solid var(--line);border-radius:10px;background:#f5f7fa;color:var(--ink);font:12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre}
