/* Owner console additions on top of the staff interface styles (tokens.css, then app.css). */
.bap-state { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
@media (min-width: 640px) { .bap-state { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.bap-state .bap-tile b { font-size: var(--text-xl); }
.bap-signal { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; }
.bap-signal::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: var(--ok); }
.bap-signal.is-warn::before { background: var(--warn); }
.bap-signal.is-bad::before { background: var(--bad); }
.bap-steps { margin: 0; padding-inline-start: 1.3em; display: flex; flex-direction: column; gap: 10px; }
.bap-code { font-family: var(--font-num); font-size: var(--text-xs); direction: ltr; text-align: left; background: var(--raised);
  border: 1px solid var(--line); border-radius: var(--radius-control); padding: 8px 10px; overflow-x: auto; white-space: pre; }
.bap-sig { font-family: var(--font-num); font-size: var(--text-xs); direction: ltr; text-align: left; min-height: 120px; }
.bap-events { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.bap-events li { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-control); padding: 8px 10px; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.bap-events .bap-code { white-space: pre-wrap; overflow-wrap: anywhere; }
.bap-hash { font-family: var(--font-num); font-size: var(--text-xs); direction: ltr; unicode-bidi: isolate; }
/* New client questionnaire */
.bap-choices { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 8px; }
.bap-choice { display: flex; flex-direction: column; gap: 2px; text-align: start; padding: 12px 14px; border-radius: var(--radius);
  border: 1px solid var(--line); background: var(--surface); cursor: pointer; min-height: var(--target); }
.bap-choice[aria-pressed="true"] { border-color: var(--accent); background: var(--accent-soft); box-shadow: inset 0 0 0 1px var(--accent); }
.bap-check { display: flex; gap: 10px; align-items: center; min-height: 40px; cursor: pointer; }
.bap-check input { width: var(--target-min); height: var(--target-min); flex: none; }
.bap-swatch { border-radius: var(--radius); padding: 18px; color: var(--on-brand); display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.bap-swatch span { color: var(--brand-ink); border-radius: var(--radius-control); padding: 6px 14px; font-weight: 600; }
.bap-nav a { padding-inline: 4px; }
.bap-nav .bap-nav-label { max-width: 100%; text-align: center; line-height: 1.25; }
.bap-card p.bap-note { margin: 0; }
