.br-form { display: grid; gap: 18px; }
.br-kind { border: 0; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.br-kind legend { font-weight: 800; margin-bottom: 10px; font-size: 18px; }
.br-tab input, .br-chip input { position: absolute; opacity: 0; pointer-events: none; }
.br-tab span { display: inline-block; padding: 12px 18px; border-radius: 14px; border: 1px solid var(--line, #e4e8ee); font-weight: 700; cursor: pointer; background: #fff; }
.br-tab input:checked + span { background: var(--ink, #0f1a2b); color: #fff; border-color: var(--ink, #0f1a2b); }
.br-tab input:focus-visible + span, .br-chip input:focus-visible + span { outline: 2px solid var(--accent, #1d4ed8); outline-offset: 2px; }
.br-set[hidden] { display: none; }
.br-step { border: 1px solid var(--line, #e4e8ee); border-radius: 20px; padding: clamp(18px, 3vw, 28px); display: grid; gap: 14px; background: var(--card, #f8fafc); margin-bottom: 14px; }
.br-step h3 { margin: 0; display: flex; align-items: center; gap: 10px; font-size: 18px; }
.br-step h3 b { width: 28px; height: 28px; border-radius: 50%; background: var(--ink, #0f1a2b); color: #fff; display: grid; place-items: center; font-size: 13px; }
.br-checks { display: flex; flex-wrap: wrap; gap: 8px; }
.br-chip span { display: inline-block; padding: 8px 14px; border-radius: 99px; border: 1px solid var(--line, #e4e8ee); background: #fff; cursor: pointer; font-size: 14px; }
.br-chip input:checked + span { background: var(--accent, #1d4ed8); border-color: var(--accent, #1d4ed8); color: #fff; }
.br-hint { color: var(--muted, #5b6676); font-size: 13px; }
.br-done { padding: 24px; border-radius: 20px; background: #ecfdf5; border: 1px solid #a7f3d0; color: #065f46; }
.br-done h3 { margin: 0 0 6px; }
