/* Analyst console layout, on top of base.css: the queue table, the dossier and the decision. */
.login-wrap { display: flex; align-items: center; justify-content: center; padding: 48px 0; }
.login-brand { font-weight: 600; font-size: 16px; letter-spacing: -0.01em; }
.login-title { font-size: 26px; }
.login-wrap .sim { align-self: flex-start; }

.strong { font-weight: 500; }
.cell-stack { display: flex; flex-direction: column; gap: 3px; min-width: 0; }

/* Queue */
.queue-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; flex-wrap: wrap; margin-bottom: 20px; }
.queue-head .page-head { margin: 0; }
.stats { display: flex; gap: 28px; flex-wrap: wrap; }
.stats > div { display: flex; flex-direction: column; gap: 2px; }
.stat { font-size: 26px; font-weight: 600; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.queue-filters { margin-bottom: 14px; }
.queue.card { padding: 0; }
.queue .table { min-width: 980px; }
.queue .trow { grid-template-columns: 150px 1.3fr 1fr 110px 70px 1.5fr 90px 120px; }
.queue .trow:last-child { border-bottom: 0; }
.queue .reason { color: var(--ink-2); line-height: 1.4; }
.queue .pill { justify-self: start; }
.sla.bad { color: var(--bad); }
.sla.warn { color: var(--warn); }
.note-below { margin-top: 12px; }

/* Dossier */
.case { display: flex; flex-direction: column; gap: 16px; max-width: 1000px; }
.card-head.start { align-items: flex-start; }
.tight-stack { gap: 4px; }
.case-title { font-size: clamp(24px, 3vw, 30px); }
.message {
  display: flex; flex-direction: column; gap: 8px; padding: 14px; border-radius: var(--radius-md);
  border: 1px solid var(--line);
}
.message .original { font-size: 15px; line-height: 1.5; white-space: pre-wrap; overflow-wrap: anywhere; }
.translation { display: flex; flex-direction: column; gap: 4px; padding-top: 8px; border-top: 1px solid var(--line-soft); }
.translation .sim { align-self: flex-start; }
.translation p { font-size: 14px; line-height: 1.5; color: var(--ink-2); white-space: pre-wrap; }
.exchanges { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.exchanges .question { font-weight: 600; }
.exchanges .answer { white-space: pre-wrap; color: var(--ink-2); }
.boxed { border: 1px solid var(--line); border-radius: var(--radius-md); }
.boxed .table { min-width: 560px; }
.boxed .trow { padding: 12px 16px; font-variant-numeric: tabular-nums; }
.boxed .trow:last-child { border-bottom: 0; }
.trow.in-set { background: var(--primary-soft); }
.pair { gap: 16px; }
.action-row { padding: 10px 0; }
.list > li.action-row + li.action-row { border-top: 1px solid var(--line-soft); }
.rule { font-size: 14px; color: var(--bad); overflow-wrap: anywhere; }
/* The sentences of an injected instruction inside the original message (TRZ-46 follow-up). */
mark.injected { background: var(--bad-soft); color: var(--bad); border-radius: 3px; padding: 0 2px; }

/* Estado de autonomía (TRZ-31) */
.thresholds { margin-bottom: 14px; }
.autonomy.card { padding: 0; }
.autonomy .table { min-width: 1040px; }
.autonomy .trow { grid-template-columns: 1.3fr 1.2fr 90px 90px 80px 1.3fr 1.6fr 120px; }
.autonomy .cell-block { border-bottom: 1px solid var(--line-soft); }
.autonomy .cell-block:last-child { border-bottom: 0; }
.autonomy .cell-block .trow { border-bottom: 0; }
.reversed { display: flex; flex-direction: column; gap: 12px; padding: 4px 20px 16px; }
.reversed-row { gap: 12px; padding: 4px 0; }

/* The console bar holds two tabs and more controls than the customer's. From laptop width up it
   stays on one line: the gaps are tighter, the brand keeps its size, and the subtitle beside
   the logo gives way when the line is short. Narrower screens keep the bar of base.css. */
@media (min-width: 1180px) {
  .appbar-inner { flex-wrap: nowrap; gap: 16px; }
  .appbar .brand { flex: none; }
  .appbar .brand-name span { white-space: nowrap; }
  .appbar .navpills { flex-wrap: nowrap; }
  .appbar-end { flex: none; flex-wrap: nowrap; gap: 8px; }
}
@media (min-width: 1180px) and (max-width: 1400px) {
  .appbar .brand-name span { display: none; }
}

/* Global automation switch in the header (TRZ-35) */
/* A pill sits at the top of a card; in the header it is centered like the other controls. */
.pill.switch {
  align-self: center; border: 0; cursor: pointer; font: 600 12px/1 var(--sans); padding: 7px 12px;
}
.pill.switch:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }

/* The switch dialog: the buttons at the end, as the prototype's dialogs. */
.dialog-buttons { justify-content: flex-end; gap: 10px; flex-wrap: wrap; }

/* Decision */
.decision .soft-body { font-size: 15px; line-height: 1.5; color: var(--ink-2); }
.decision-buttons { gap: 10px; }
.inner { background: var(--surface); border-radius: var(--radius-md); padding: 16px; }
.decision textarea { background: var(--surface); }

@media (max-width: 640px) {
  /* PT is not available in the console yet; the login keeps the switch. */
  .appbar .segmented.lang { display: none; }
}
