/* ================================================================
   Signals — NSS signal rows, yes/no dropdowns, evidence fields
   ================================================================ */

/* Signal row grid: number | question | control */
.sig {
  display: grid;
  grid-template-columns: 36px 1fr 140px;
  border-bottom: 1px solid var(--border);
  transition: background var(--ease);
}
.sig:last-of-type { border-bottom: none; }
.sig:hover { background: var(--surface-2); }

/* Signal number */
.sig-n {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 14px;
  font-family: var(--mono);
  font-size: 10px;
  font-weight: 600;
  color: var(--text-4);
}

/* Signal body (question + hint) */
.sig-b { padding: 12px 12px 12px 0; }
.sig-q {
  font-size: 14px;
  font-weight: 500;
  color: var(--text-2);
  line-height: 1.5;
}
.sig-h {
  font-size: 12px;
  color: var(--text-4);
  margin-top: 3px;
  font-style: italic;
}

/* Signal control column */
.sig-c {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 12px;
}

/* Yes / No / IDK dropdown */
.yn {
  background: var(--surface-2);
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 6px 8px;
  font-family: var(--font);
  font-size: 12px;
  font-weight: 600;
  color: var(--text);
  cursor: pointer;
  width: 126px;
  appearance: none;
  transition: all var(--ease);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23e11d48' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  padding-right: 24px;
}
.yn:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 2px var(--accent-bg);
}
.yn.y  { background-color: var(--success-bg); color: var(--success); border-color: var(--success-border); }
.yn.n  { background-color: var(--danger-bg);  color: var(--danger);  border-color: var(--danger-border); }
.yn.idk { background-color: var(--warning-bg); color: var(--warning); border-color: var(--warning-border); }

/* Evidence field (hidden by default, opens on Yes/No selection) */
.ev {
  grid-column: 1 / -1;
  padding: 8px 12px 12px 36px;
  display: none;
}
.ev.open { display: block; }
.ev textarea {
  width: 100%;
  background: var(--surface-2);
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 8px 12px;
  font-family: var(--font);
  font-size: 13px;
  color: var(--text);
  min-height: 40px;
  resize: vertical;
  transition: all var(--ease);
}
.ev textarea:focus {
  outline: none;
  background: var(--surface-3);
  border-color: var(--accent);
  box-shadow: var(--glow);
}
.ev textarea::placeholder { color: var(--text-4); }

/* Signal footer (count display) */
.sig-ft {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 22px;
  background: var(--surface-2);
  border-top: 1px solid var(--border);
  font-size: 13px;
  font-weight: 600;
  color: var(--text-3);
}
.sig-ft .ct {
  font-family: var(--mono);
  font-size: 15px;
  color: var(--accent);
}
