/* Experimental strip console (F2). Scoped under .v2 — does not affect production UI. */
.v2 {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 18px 40px;
}
.v2-shell { display: flex; flex-direction: column; gap: 14px; }
.v2-top {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  align-items: center;
  padding: 10px 0;
  border-bottom: 1px solid var(--line);
}
.v2-brand { display: flex; gap: 10px; align-items: baseline; flex-wrap: wrap; }
.v2-exp {
  font-size: 0.7rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border: 1px solid var(--line);
  padding: 2px 6px;
  color: var(--muted);
}
.v2-clock { font-family: var(--mono); font-size: 1.05rem; }
.v2-general, .v2-chip { font-size: 0.9rem; color: var(--muted); }
.v2-planes { display: flex; gap: 0.75rem; align-items: stretch; flex-wrap: wrap; }
.v2-plane { display: flex; flex-direction: column; min-width: 8rem; max-width: 22rem; padding: 0.35rem 0.55rem; border: 1px solid var(--border, #d0d5dd); border-radius: 6px; line-height: 1.2; }
.v2-plane-label { font-size: 0.68rem; color: var(--muted); letter-spacing: 0.01em; }
.v2-plane strong, .v2-plane .level-value { font-size: 1.15rem; font-variant-numeric: tabular-nums; }
.v2-plane .level-name { font-size: 0.72rem; font-weight: 650; letter-spacing: 0.04em; text-transform: uppercase; }
.v2-plane-owner { font-size: 0.68rem; font-style: normal; color: var(--muted); }
.v2-plane.is-write { outline: 1px solid #4b6bfb; }
.v2-plane.is-read { background: transparent; }
.v2-plane.pbip-1, .v2-plane.tal-1 { background: #0f3d24; border-color: #22c55e; color: #bbf7d0; }
.v2-plane.pbip-2, .v2-plane.tal-2, .v2-plane.tal-3 { background: #4a3b0a; border-color: #eab308; color: #fef08a; }
.v2-plane.tal-2 { background: #3f3a08; border-color: #ca8a04; color: #fde68a; }
.v2-plane.tal-4 { background: #4c1d0a; border-color: #f97316; color: #fed7aa; }
.v2-plane.pbip-3, .v2-plane.tal-5 { background: #3f0a0a; border-color: #dc2626; color: #fecaca; }
.v2-plane.level-plane .v2-plane-owner { color: inherit; opacity: 0.8; }
.v2-pbip-protocol { margin-top: 0.4rem; padding-top: 0.35rem; border-top: 1px solid color-mix(in srgb, currentColor 35%, transparent); }
.v2-pbip-def { margin: 0 0 0.3rem; font-size: 0.72rem; font-weight: 650; line-height: 1.3; }
.v2-pbip-measures { margin: 0 0 0.3rem; padding-left: 1rem; font-size: 0.68rem; line-height: 1.35; }
.v2-pbip-measures li { margin: 0.1rem 0; }
.v2-pbip-cite { margin: 0; font-size: 0.62rem; opacity: 0.85; font-family: var(--mono, ui-monospace, monospace); letter-spacing: 0.01em; }
.v2-pbip-quote { margin-top: 0.25rem; font-size: 0.65rem; }
.v2-pbip-quote summary { cursor: pointer; font-weight: 650; }
.v2-pbip-quote p { margin: 0.35rem 0 0; line-height: 1.35; }
.v2-tal-note { margin: 0.35rem 0 0; font-size: 0.65rem; line-height: 1.3; opacity: 0.9; font-style: italic; }
.v2-tal-grid, .v2-pbip-grid { display: flex; gap: 0.35rem; flex-wrap: wrap; }
.v6-planes { display: flex; gap: 0.6rem; align-items: center; flex-wrap: wrap; }
.v6-pbip-ctrl { display: flex; gap: 0.25rem; }
.v6-pbip-ctrl button.pbip-1 { background: #0f3d24; border-color: #22c55e; color: #bbf7d0; }
.v6-pbip-ctrl button.pbip-2 { background: #4a3b0a; border-color: #eab308; color: #fef08a; }
.v6-pbip-ctrl button.pbip-3 { background: #3f0a0a; border-color: #dc2626; color: #fecaca; }
.v6-pbip-ctrl button.is-on { box-shadow: 0 0 0 2px #fff3; }
.v2-idle { display: flex; gap: 12px; font-family: var(--mono); font-size: 0.9rem; color: var(--muted); }
.v2-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.v2-tools label { display: flex; gap: 6px; align-items: center; font-size: 0.85rem; color: var(--muted); }
.v2-tools input { width: 180px; margin: 0; }

.v2-actor-banner {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 14px;
  row-gap: 2px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  background: #121a24;
}
.v2-actor-kicker, .v2-pending-label {
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}
.v2-actor-value {
  font-size: 1.6rem;
  font-weight: 750;
  letter-spacing: 0.04em;
}
.v2-pending { font-size: 1.05rem; }
.v2-actor-banner.actor-IT { border-left: 5px solid var(--it); }
.v2-actor-banner.actor-OPIP { border-left: 5px solid var(--opip); }
.v2-actor-banner.actor-BOTH { border-left: 5px solid var(--ok); }
.v2-actor-banner.actor-INSTRUCTOR { border-left: 5px solid var(--muted); }

.v2-board {
  display: grid;
  grid-template-columns: 1fr 1.2fr 1fr;
  gap: 10px;
  min-height: 220px;
}
@media (max-width: 900px) {
  .v2-board { grid-template-columns: 1fr; }
}
.v2-col {
  border: 1px solid var(--line);
  background: #0e1620;
  padding: 10px;
  min-height: 200px;
}
.v2-col h2 {
  margin: 0 0 10px;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}
.v2-col-body { display: flex; flex-direction: column; gap: 8px; min-height: 80px; }
.v2-empty { color: var(--muted); font-size: 0.85rem; margin: 8px 0; }

.v2-strip {
  border: 1px solid var(--line);
  background: #151e28;
  padding: 10px 12px;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.v2-strip time { font-family: var(--mono); font-size: 0.85rem; color: var(--muted); }
.v2-strip h3 { margin: 0; font-size: 1.02rem; font-weight: 700; line-height: 1.25; }
.v2-strip-meta { margin: 0; font-size: 0.8rem; color: var(--muted); }
.v2-strip-state { margin: 4px 0 0; font-size: 0.78rem; letter-spacing: 0.06em; text-transform: uppercase; }
.v2-strip-actor { margin: 0; font-size: 0.9rem; font-weight: 650; }
.v2-strip-next { margin: 0; font-size: 0.88rem; color: var(--text); }
.v2-strip.is-selected { outline: 1px solid var(--it); }
.v2-strip.sev-HIGH .v2-strip-state,
.v2-strip.sev-CRITICAL .v2-strip-state { color: #ffc9c9; }
.v2-strip.sev-MEDIUM .v2-strip-state { color: #ffe9a8; }
.v2-strip.sev-LOW .v2-strip-state { color: var(--muted); }

.v2-enter { animation: v2-in 220ms ease; }
.v2-moved { animation: v2-shift 280ms ease; }
.v2-touch { animation: v2-pulse 220ms ease; }
@keyframes v2-in {
  from { opacity: 0; transform: translateY(-6px); }
  to { opacity: 1; transform: none; }
}
@keyframes v2-shift {
  from { opacity: 0.55; }
  to { opacity: 1; }
}
@keyframes v2-pulse {
  from { background: #1c2a38; }
  to { background: #151e28; }
}

.v2-detail-wrap, .v2-log-wrap {
  border: 1px solid var(--line);
  padding: 14px 16px;
  background: #121a24;
}
.v2-detail-wrap h2, .v2-log-wrap h2 {
  margin: 0 0 10px;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}
.v2-block { margin-bottom: 12px; }
.v2-block h3 {
  margin: 0 0 4px;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}
.v2-block p, .v2-block li { margin: 0; font-size: 1rem; line-height: 1.4; }
.v2-block ul { margin: 0; padding-left: 1.1rem; }
.v2-tech { margin-top: 8px; border-top: 1px solid var(--line); padding-top: 8px; }
.v2-tech summary { cursor: pointer; color: var(--muted); font-size: 0.85rem; letter-spacing: 0.06em; text-transform: uppercase; }
.v2-tech p { margin: 8px 0 0; font-size: 0.92rem; color: var(--muted); }

.v2-log { width: 100%; border-collapse: collapse; font-size: 0.92rem; }
.v2-log th {
  text-align: left;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  padding: 6px 8px 8px 0;
  border-bottom: 1px solid var(--line);
}
.v2-log td { padding: 7px 10px 7px 0; border-bottom: 1px solid #1b2530; vertical-align: top; }
.v2-log td:first-child, .v2-log td:nth-child(2), .v2-log td:nth-child(3) {
  font-family: var(--mono);
  white-space: nowrap;
  width: 1%;
}
.v2-kind {
  letter-spacing: 0.04em;
  font-size: 0.78rem;
}
.v2-kind.kind-INFORMA { color: var(--it); }
.v2-kind.kind-PREGUNTA { color: var(--opip); }
.v2-kind.kind-RESPONDE { color: var(--ok); }
.v2-kind.kind-DECISION, .v2-kind.kind-ESCALA { color: var(--warn); }
.v2-kind.kind-CONFIRMA { color: var(--ok); }
.v2-kind.kind-SOLICITA { color: #8ab4ff; }

.v2-decide p { font-weight: 650; }
.v2-active { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 6px; }
.v2-active li { display: flex; gap: 8px; align-items: baseline; font-size: 0.95rem; }
.v2-active em { font-style: normal; font-size: 0.72rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--muted); }
.v2-active .kind-MEASURE em { color: var(--ok); }
.v2-active .kind-ESCALATION em { color: var(--warn); }
.v2-active-mark { color: var(--ok); }
.v2-strip-wait { margin: 0; font-size: 0.82rem; color: var(--warn); }
.v2-opip-actions { margin-top: 14px; display: flex; flex-direction: column; gap: 10px; }
.v2-cta-row { display: flex; flex-wrap: wrap; gap: 8px; }
.v2-cta-row button, .v2-choice-grid button {
  background: #1b2733;
  border: 1px solid var(--line);
  color: var(--text);
  padding: 8px 12px;
  cursor: pointer;
  text-align: left;
}
.v2-cta-row button:hover, .v2-choice-grid button:hover { border-color: var(--opip); }
.v2-choice-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 8px;
}
.v2-composer {
  border: 1px solid var(--line);
  padding: 12px;
  background: #0e1620;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.v2-composer-title { margin: 0; font-weight: 650; }
.v2-measure-group h4 {
  margin: 0 0 6px;
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}
.v2-composer label { display: flex; flex-direction: column; gap: 4px; font-size: 0.85rem; color: var(--muted); }
.v2-composer textarea, .v2-composer input { width: 100%; }
.v2-choice-grid button.is-on { outline: 1px solid var(--opip); background: #243140; }
.v2-composer .linkish { background: none; border: none; color: var(--muted); cursor: pointer; padding: 0; text-align: left; }

.v2-grade {
  display: inline-block;
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border: 1px solid var(--line);
  padding: 1px 6px;
  margin-right: 6px;
  color: var(--muted);
}
.v2-grade.grade-CONFIRMED { color: var(--ok); border-color: var(--ok); }
.v2-grade.grade-PROBABLE { color: var(--warn); border-color: var(--warn); }
.v2-grade.grade-POSSIBLE { color: #8ab4ff; border-color: #8ab4ff; }
.v2-grade.grade-RULED_OUT { color: var(--muted); }
.v2-relevance { border-left: 3px solid var(--it); padding-left: 10px; }
.v2-preview {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
@media (max-width: 800px) {
  .v2-preview { grid-template-columns: 1fr; }
}
.v2-preview > div { border: 1px solid var(--line); padding: 8px; background: #121a24; }
.v2-preview h4 {
  margin: 0 0 6px;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}
.v2-check { flex-direction: row !important; align-items: center; gap: 8px; }
.v2-question { font-size: 1.05rem; font-weight: 650; }
.v2-banner-ok, .v2-banner-warn {
  margin: 0 0 10px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  font-weight: 650;
}
.v2-banner-ok { border-left: 4px solid var(--ok); }
.v2-banner-warn { border-left: 4px solid var(--warn); }
.v2-pending-q-banner {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 16px;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 12px;
  padding: 14px 16px;
  border: 2px solid var(--it);
  border-left-width: 6px;
  background: linear-gradient(90deg, #0a3a4d, #121a24 55%);
  color: #e8f9ff;
}
.v2-pending-q-copy { flex: 1 1 240px; min-width: 0; }
.v2-pending-q-title {
  margin: 0 0 4px;
  font-size: 1.15rem;
  font-weight: 850;
  letter-spacing: 0.02em;
}
.v2-pending-q-count {
  display: inline-block;
  margin-left: 6px;
  padding: 1px 8px;
  border-radius: 999px;
  background: #0006;
  font-family: var(--mono);
  font-size: 0.85rem;
}
.v2-pending-q-lead {
  margin: 0 0 6px;
  font-size: 0.92rem;
  opacity: 0.92;
}
.v2-pending-q-text {
  margin: 0;
  font-size: 1rem;
  font-weight: 650;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.v2-pending-q-banner .primary {
  flex: 0 0 auto;
  font-weight: 800;
  font-size: 1.05rem;
  padding: 12px 16px;
}
.v2-log-row.is-needs-answer {
  outline: 1px solid var(--it);
  background: #0f2430;
}
.v2-log-answer-cta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: 8px;
}
.v2-log-your-turn {
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--it);
}
.v2-it-actions { margin-top: 14px; display: flex; flex-direction: column; gap: 10px; }

.v2-wait-banner {
  grid-column: 1 / -1;
  margin-top: 8px;
  padding: 6px 0 0;
  border-top: 1px solid var(--line);
  font-family: var(--mono);
  font-size: 0.92rem;
  letter-spacing: 0.04em;
  color: var(--warn);
}
.v2-log-head {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: baseline;
  margin-bottom: 8px;
}
.v2-log-head h2 { margin: 0; }
.v2-log-head .linkish, .v2-log-new {
  background: none;
  border: 1px solid var(--line);
  color: var(--muted);
  cursor: pointer;
  font-size: 0.78rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 3px 8px;
}
.v2-log-new { color: var(--warn); border-color: var(--warn); }
.v2-log-journal {
  max-height: 420px;
  overflow: auto;
  display: flex;
  flex-direction: column;
  gap: 0;
  font-size: 0.95rem;
}
.v2-log-row {
  display: grid;
  grid-template-columns: 7.2rem 5.5rem 9.5rem 1fr;
  gap: 8px 12px;
  padding: 8px 4px;
  border-bottom: 1px solid #1b2530;
  align-items: start;
}
.v2-log-row time, .v2-log-from {
  font-family: var(--mono);
  font-size: 0.88rem;
  color: var(--muted);
}
.v2-log-body p { margin: 0; line-height: 1.35; }
.v2-log-reply {
  margin: 4px 0 0;
  font-size: 0.82rem;
  color: var(--muted);
}
.v2-log-details { margin-top: 4px; color: var(--muted); font-size: 0.82rem; }
.v2-log-details summary { cursor: pointer; text-transform: uppercase; letter-spacing: 0.06em; font-size: 0.72rem; }
.v2-log-status {
  display: inline-block;
  margin-left: 6px;
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border: 1px solid var(--line);
  padding: 0 5px;
}
.v2-log-status.status-PENDIENTE { color: var(--warn); border-color: var(--warn); }
.v2-log-status.status-RESPONDIDA { color: var(--ok); border-color: var(--ok); }
.v2-kind-mark {
  display: inline-block;
  width: 1.1rem;
  text-align: center;
  font-weight: 700;
}
.v2-inst-panel {
  border: 1px solid var(--line);
  background: #0e1620;
  padding: 10px 12px;
  font-size: 0.9rem;
}
.v2-inst-panel h3 {
  margin: 10px 0 4px;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}
.v2-inst-panel p { margin: 4px 0; }
.v2-inst-counts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  list-style: none;
  padding: 0;
  margin: 8px 0;
  font-family: var(--mono);
  font-size: 0.82rem;
  color: var(--muted);
}
.v2-tools select { max-width: 260px; }
@media (max-width: 800px) {
  .v2-log-row { grid-template-columns: 5.5rem 3.5rem 1fr; }
  .v2-log-row .v2-kind { grid-column: 1 / 3; }
}

/* Instructor2 facilitation console (F6). Scoped under .v6 — does not change IT2/OPIP2. */
.v6 { max-width: 1400px; }
.v6-shell { display: flex; flex-direction: column; gap: 12px; }
.v6-top {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  align-items: center;
  border-bottom: 1px solid var(--line);
  padding-bottom: 10px;
}
.v6-brand { display: flex; gap: 10px; align-items: baseline; flex-wrap: wrap; }
.v6-clock { font-family: var(--mono); font-size: 1.05rem; }
.v6-actor {
  font-weight: 750;
  letter-spacing: 0.04em;
  border-left: 4px solid var(--ok);
  padding-left: 8px;
}
.v6-actor[data-actor="IT"] { border-color: var(--it); }
.v6-actor[data-actor="OPIP"] { border-color: var(--opip); }
.v6-actor[data-actor="INSTRUCTOR"] { border-color: var(--muted); }
.v6-levels, .v6-prot, .v6-vis { font-size: 0.88rem; color: var(--muted); }
.v6-vis { letter-spacing: 0.06em; text-transform: uppercase; }
.v6-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.v6-idle-pair { display: flex; gap: 14px; font-family: var(--mono); font-size: 0.88rem; color: var(--muted); }
.v6-desks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
@media (max-width: 900px) {
  .v6-desks, .v6-tools-grid, .v6-tl-grid, .v6-dec-cols, .v6-at-cols { grid-template-columns: 1fr; }
}
.v6-desk {
  border: 1px solid var(--line);
  background: #121a24;
  padding: 12px 14px;
}
.v6-desk.is-hot { border-left: 4px solid var(--ok); }
.v6-desk.is-blind { opacity: 0.85; }
.v6-desk h2, .v6-desk h3, .v6-blockage h2, .v6-unshared h2, .v6-tl-wrap h2, .v6-panel h2, .v6-decisions h2, .v6-events-wrap h2 {
  margin: 0 0 8px;
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}
.v6-desk-status { margin: 0; font-size: 1.15rem; font-weight: 700; }
.v6-idle { font-family: var(--mono); color: var(--muted); }
.v6-know { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 4px; }
.v6-know li { display: flex; gap: 8px; font-size: 0.92rem; }
.v6-know .mark-unknown { color: var(--muted); }
.v6-blockage, .v6-unshared, .v6-tl-wrap, .v6-events-wrap, .v6-decisions, .v6-panel {
  border: 1px solid var(--line);
  background: #121a24;
  padding: 12px 14px;
}
.v6-block-head { margin: 0 0 6px; font-size: 1.15rem; font-weight: 700; }
.v6-event { border: 1px solid var(--line); padding: 10px; background: #0e1620; }
.v6-event.vis-IT_ONLY { border-left: 4px solid var(--it); }
.v6-tl { list-style: none; padding: 0; margin: 0; max-height: 360px; overflow: auto; min-width: 0; }
.v6-tl li {
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: stretch;
  min-width: 0;
  padding: 10px 8px;
  cursor: pointer;
  border-bottom: 1px solid #1b2530;
  font-size: 0.92rem;
}
.v6-tl li.is-on { background: #1c2a38; outline: 1px solid #3a5168; }
.v6-tl-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  align-items: center;
  min-width: 0;
}
.v6-tl time,
.v6-tl-actor,
.v6-tl-verb {
  font-family: var(--mono);
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.3;
}
.v6-tl-actor,
.v6-tl-verb {
  display: inline-block;
  max-width: 100%;
  padding: 2px 8px;
  border-radius: 6px;
  border: 1px solid #31455c;
  background: #0e1620;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.v6-tl-actor[data-actor="IT"],
.v6-tl-actor:is(:where(.from-IT)) { color: var(--it); }
.v6-tl-summary {
  margin: 0;
  min-width: 0;
  color: var(--text);
  line-height: 1.4;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.v6-tl-grid, .v6-tools-grid, .v6-dec-cols, .v6-at-cols {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}
.v6-tl-grid > *,
.v6-at,
.v6-at-cols > * {
  min-width: 0;
}
.v6-at {
  border: 1px solid var(--line);
  background: #0e1620;
  padding: 10px 12px;
}
.v6-at .v6-kicker { margin: 0 0 8px; font-weight: 700; }
.v6-at h4 { margin: 0 0 6px; }
.v6-at ul { margin: 0; padding-left: 1.1rem; overflow-wrap: anywhere; }
.v6-card-list { display: flex; flex-direction: column; gap: 6px; margin-bottom: 10px; }
.v6-card {
  text-align: left;
  background: #0e1620;
  border: 1px solid var(--line);
  color: var(--text);
  padding: 8px 10px;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.v6-card.is-on { outline: 1px solid var(--ok); }
.v6-card span { font-size: 0.78rem; color: var(--muted); }
.v6-preview { border-top: 1px solid var(--line); padding-top: 10px; }
.v6-kicker {
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}
.v6-aud ul { list-style: none; padding: 0; margin: 4px 0 8px; display: flex; gap: 14px; font-family: var(--mono); }
.v6-rev-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.v6-inspect { border: 1px dashed var(--line); padding: 8px 12px; color: var(--muted); }
.v6-inspect pre {
  max-height: 280px;
  overflow: auto;
  font-size: 0.75rem;
  white-space: pre-wrap;
}
.v7-closure {
  margin-top: 14px;
  border: 1px solid var(--line);
  background: #0e1620;
  padding: 12px 14px;
}
.v7-closure h2 {
  margin: 0 0 10px;
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}
.v7-stamp {
  border-top: 1px solid #1b2530;
  padding: 8px 0;
}
.v7-stamp-name {
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  margin-right: 10px;
}
.v7-stamp-state { font-family: var(--mono); font-weight: 700; }
.v7-next-hint {
  margin: 0 0 12px;
  padding: 10px 12px;
  border-left: 4px solid var(--ok);
  background: #0f2a1c;
  color: #c8f5dc;
  font-weight: 700;
  line-height: 1.35;
}
.v7-stamp.is-ready {
  border-left: 4px solid var(--warn);
  padding-left: 10px;
}
.v7-stamp.is-confirmed {
  border-left: 4px solid var(--ok);
  padding-left: 10px;
}
.v7-stamp.is-ready .v7-stamp-state { color: var(--warn); }
.v7-stamp.is-confirmed .v7-stamp-state { color: var(--ok); }
.v7-stamp.is-blocked .v7-stamp-state { color: var(--muted); }
.v7-stamp.is-hidden { opacity: 0.55; }
.v7-stamp p { margin: 4px 0 8px; }
.v7-stamp button.primary {
  font-size: 1.05rem;
  padding: 12px 16px;
  font-weight: 800;
}
.v7-it-only { color: var(--muted); }
.v7-inst-stamps { font-family: var(--mono); font-size: 0.82rem; color: var(--muted); }
.v8-modes { display: flex; gap: 8px; margin: 8px 16px; }
.v8-modes button.active { border-color: var(--ok); color: var(--ok); }
.v8-aar { padding: 12px 16px 32px; max-width: 1100px; }
.v8-aar h1 { margin: 0 0 6px; font-size: 1.2rem; }
.v8-aar h2 { margin: 22px 0 8px; font-size: 0.78rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--muted); }
.v8-aar h3 { margin: 0 0 6px; font-size: 0.9rem; }
.v8-kicker { font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted); margin: 0 0 6px; }
.v8-tl { list-style: none; padding: 0; margin: 0; }
.v8-tl li { display: grid; grid-template-columns: 70px 90px 110px 1fr; gap: 8px; padding: 6px 0; border-bottom: 1px solid #1b2530; font-size: 0.88rem; }
.v8-actor, .v8-kind { font-family: var(--mono); }
.v8-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.v8-three { grid-template-columns: 1fr 1fr 1fr; }
.v8-matrix { width: 100%; border-collapse: collapse; font-size: 0.82rem; margin: 12px 0; }
.v8-matrix th, .v8-matrix td { border-bottom: 1px solid #1b2530; padding: 4px 8px; vertical-align: top; }
.v8-card, .v8-asym { border: 1px solid var(--line); background: #0e1620; padding: 10px 12px; margin: 8px 0; }
@media (max-width: 900px) {
  .v8-tl li { grid-template-columns: 1fr; }
  .v8-cols, .v8-three { grid-template-columns: 1fr; }
}
.v9-eval { padding: 12px 16px 32px; max-width: 1100px; }
.v9-eval h1 { margin: 0 0 8px; font-size: 1.3rem; }
.v9-eval h2 { margin: 22px 0 8px; font-size: 0.78rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--muted); }
.v9-kicker { font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted); margin: 8px 0 4px; }
.v9-dims { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin: 14px 0; }
.v9-dim { border: 1px solid var(--line); background: #0e1620; padding: 10px 12px; }
.v9-dim h3 { margin: 0; font-size: 0.82rem; }
.v9-num { font-family: var(--mono); font-size: 1.2rem; margin: 6px 0; }
.v9-dim.is-met .v9-num { color: var(--ok); }
.v9-dim.is-partial .v9-num { color: var(--warn); }
.v9-dim.is-not_met .v9-num { color: #c45; }
.v9-crit { list-style: none; padding: 0; margin: 0; }
.v9-crit li { border-bottom: 1px solid #1b2530; padding: 6px 0; }
.v9-mark { font-family: var(--mono); margin-right: 6px; }
.v9-ev { font-size: 0.85rem; }
.v9-find li.is-positive { color: var(--ok); }
@media (max-width: 900px) {
  .v9-dims { grid-template-columns: 1fr 1fr; }
}
.v10-debrief { padding: 12px 16px 32px; max-width: 900px; }
.v10-debrief h1 { margin: 0 0 6px; font-size: 1.2rem; }
.v10-debrief h2 { margin: 22px 0 8px; font-size: 0.78rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--muted); }
.v10-kicker { font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted); margin: 10px 0 4px; }
.v10-tp { border: 1px solid var(--line); background: #0e1620; padding: 12px 14px; margin: 10px 0; }
.v10-tp h3 { margin: 0 0 8px; font-size: 1rem; }
.v10-tp.is-critical { border-color: #c45; }
.v10-tp.is-strength { border-color: #1d4; }
.v10-ev { font-size: 0.85rem; }
.v11-ground { margin-top: 12px; border-top: 1px solid #1b2530; padding-top: 8px; }
.v11-ground summary { cursor: pointer; font-size: 0.78rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted); }
.v11-bok { font-size: 0.9rem; }
.v11-refs { list-style: none; padding: 0; margin: 0; }
.v11-refs li { border-bottom: 1px solid #1b2530; padding: 8px 0; }
.v11-badge { display: inline-block; font-size: 0.68rem; letter-spacing: 0.06em; text-transform: uppercase; border: 1px solid var(--line); padding: 1px 6px; margin-right: 8px; }
.v11-loc { font-family: var(--mono); font-size: 0.82rem; margin-left: 6px; }
.v19-control { margin: 12px 16px; padding: 12px 14px; border: 1px solid var(--line); background: #0e1620; }
.v19-control h2 { margin: 0 0 6px; font-size: 0.95rem; letter-spacing: 0.08em; text-transform: uppercase; }
.v19-ask { margin: 0 0 10px; color: var(--muted); }
.v19-meta { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px 14px; margin: 0 0 10px; }
.v19-meta dt { font-size: 0.68rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted); }
.v19-meta dd { margin: 2px 0 0; font-family: var(--mono); }
.v19-branches, .v19-presets { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0 12px; }
.v19-chip { border: 1px solid var(--line); padding: 4px 8px; font-size: 0.82rem; }
.v19-chip.is-on { border-color: var(--ok); color: var(--ok); }
.v19-chip.is-off { opacity: 0.45; }
.v19-now { list-style: none; padding: 0; margin: 0; }
.v19-now button { width: 100%; text-align: left; }
.v19-cat { margin-bottom: 10px; }
.v6-card.is-off { opacity: 0.45; }
@media (max-width: 900px) {
  .v19-meta { grid-template-columns: 1fr 1fr; }
}
