/* O-02, the first sign-in: the owner terms card, the draft's full text, and the Continue bar */
.bh-welcome { width: 100%; max-width: var(--shell-content-max); margin: 0 auto; }
.bh-welcome-form { display: grid; gap: var(--space-6); padding: var(--space-6) var(--page-pad) 0; }
.bh-welcome-head { display: grid; gap: var(--space-2); }
.bh-link-button {
  appearance: none; margin: 0; padding: 0; border: 0; background: none; color: var(--primary); font: inherit;
  text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 0.18em; cursor: pointer;
}
.bh-link-button:hover { color: var(--primary-hover); text-decoration-thickness: 2px; }
.bh-terms { display: grid; gap: var(--space-3); }
.bh-terms.is-error { border: 2px solid var(--danger-ink); }
.bh-terms-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-2); }
.bh-terms-head h2 { font-size: var(--text-h3); line-height: var(--leading-h3); font-weight: var(--weight-bold); }
.bh-chip--warning { border-color: transparent; background: var(--warning-bg); color: var(--warning-ink); font-size: var(--text-label); line-height: var(--leading-label); }
.bh-terms-points { display: grid; gap: var(--space-1); padding-left: var(--space-5); list-style: disc; }
.bh-terms-full[open] > summary .bh-icon { transform: rotate(180deg); }
.bh-terms-text {
  display: grid; gap: var(--space-3); margin-top: var(--space-2); padding-top: var(--space-3); border-top: 1px solid var(--line);
  font-size: var(--text-small); line-height: var(--leading-small); overflow-wrap: break-word;
}
.bh-terms-text :is(h3, h4, h5) { font-weight: var(--weight-bold); }
.bh-terms-text h3 { font-size: var(--text-h3); line-height: var(--leading-h3); }
.bh-terms-text h4 { margin-top: var(--space-3); font-size: var(--text-body); line-height: var(--leading-body); }
.bh-terms-text :is(ul, ol) { display: grid; gap: var(--space-1); padding-left: var(--space-5); }
.bh-terms-text ul { list-style: disc; }
.bh-terms-text ol { list-style: decimal; }
.bh-terms-text blockquote { margin: 0; padding: var(--space-2) var(--space-3); border-radius: var(--radius-control); background: var(--warning-bg); }
.bh-terms-text hr { width: 100%; margin: 0; border: 0; border-top: 1px solid var(--line); }
.bh-terms-text table { width: 100%; table-layout: fixed; border-collapse: collapse; }
.bh-terms-text :is(th, td) { padding: var(--space-1); border: 1px solid var(--line); text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.bh-terms-text .bh-align-right { text-align: right; }
.bh-terms-text .bh-align-center { text-align: center; }
.bh-error { display: flex; gap: var(--space-2); align-items: flex-start; color: var(--danger-ink); font-size: var(--text-small); line-height: var(--leading-small); font-weight: var(--weight-bold); }
.bh-check { display: flex; gap: var(--space-3); align-items: flex-start; padding-top: var(--space-4); border-top: 1px solid var(--line); cursor: pointer; }
.bh-check input { flex: none; width: 24px; height: 24px; margin: 0; accent-color: var(--primary); }
.bh-check-text { display: grid; gap: var(--space-1); }
.bh-actionbar {
  position: sticky; bottom: 0; margin: 0 calc(var(--page-pad) * -1); padding: var(--space-3) var(--page-pad) calc(var(--space-3) + env(safe-area-inset-bottom, 0px));
  background: var(--card); border-top: 1px solid var(--line);
}
@media (min-width: 1024px) {
  .bh-welcome-form { padding-top: var(--space-10); }
  .bh-actionbar { position: static; margin: 0; padding: 0 0 var(--space-12); border: 0; background: none; }
  .bh-actionbar .bh-btn { width: auto; }
}
