
.hbsbr-reader,
.hbsbr-study,
.hbsbr-plans,
.hbsbr-locked {
	background: var(--hbsbr-surface, #fbf8f2);
	border: 1px solid rgba(122, 92, 135, 0.16);
	border-radius: 24px;
	padding: 24px;
	box-shadow: 0 14px 34px rgba(29, 20, 36, 0.08);
	color: #2f2433;
}
.hbsbr-reader *,
.hbsbr-study *,
.hbsbr-plans *,
.hbsbr-locked * { box-sizing: border-box; }
.hbsbr-header { display:flex; justify-content:space-between; gap:16px; align-items:flex-start; margin-bottom:16px; }
.hbsbr-header h2 { margin:0 0 6px; font-size:clamp(1.6rem, 2.5vw, 2.25rem); line-height:1.1; color: var(--hbsbr-accent, #7a5c87); }
.hbsbr-header p { margin:0; color:#5e5462; }
.hbsbr-tabs { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:16px; }
.hbsbr-tabs button {
	border:1px solid rgba(122, 92, 135, 0.22);
	background:#fff;
	color:#5d4867;
	border-radius:999px;
	padding:10px 16px;
	cursor:pointer;
	font-weight:600;
}
.hbsbr-tabs button.is-active,
.hbsbr-button,
.hbsbr-tabs button:hover {
	background: var(--hbsbr-accent, #7a5c87);
	color:#fff;
	border-color: var(--hbsbr-accent, #7a5c87);
}
.hbsbr-panel { display:none; }
.hbsbr-panel.is-active { display:block; }
.hbsbr-form { display:block; margin:0 0 20px; }
.hbsbr-row { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px; }
.hbsbr-row--guided { grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); }
.hbsbr-form label { display:flex; flex-direction:column; gap:8px; font-weight:600; color:#47394d; }
.hbsbr-form input,
.hbsbr-form select {
	width:100%;
	border:1px solid rgba(122, 92, 135, 0.22);
	border-radius:14px;
	background:#fff;
	padding:12px 14px;
	font:inherit;
	color:#2f2433;
}
.hbsbr-actions { margin-top:16px; display:flex; flex-wrap:wrap; gap:12px; }
.hbsbr-button {
	border:0;
	border-radius:999px;
	padding:12px 18px;
	font:inherit;
	font-weight:700;
	cursor:pointer;
	box-shadow:0 10px 20px rgba(122, 92, 135, 0.18);
}
.hbsbr-button--secondary {
	background:#fff;
	color:var(--hbsbr-accent, #7a5c87);
	border:1px solid rgba(122, 92, 135, 0.22);
	box-shadow:none;
}
.hbsbr-result,
.hbsbr-study-results,
.hbsbr-plan-output {
	background:#fff;
	border:1px solid rgba(122, 92, 135, 0.14);
	border-radius:18px;
	padding:18px;
	min-height:120px;
}
.hbsbr-empty { color:#726677; }
.hbsbr-passage-header { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; align-items:flex-start; margin-bottom:12px; padding-bottom:12px; border-bottom:1px solid rgba(122, 92, 135, 0.12); }
.hbsbr-passage-header h3 { margin:0 0 4px; color:#2f2433; font-size:1.35rem; }
.hbsbr-passage-header p { margin:0; color:#6b616f; }
.hbsbr-copy {
	border:1px solid rgba(122, 92, 135, 0.2);
	background:#fff;
	color:var(--hbsbr-accent, #7a5c87);
	border-radius:999px;
	padding:8px 12px;
	font:inherit;
	cursor:pointer;
}
.hbsbr-verse-list { display:grid; gap:10px; }
.hbsbr-verse {
	font-size:1.04rem;
	line-height:1.7;
	color:#2f2433;
}
.hbsbr-verse-number {
	font-weight:700;
	color:var(--hbsbr-accent, #7a5c87);
	margin-right:6px;
}
.hbsbr-study-card {
	padding:14px 0;
	border-bottom:1px solid rgba(122, 92, 135, 0.12);
}
.hbsbr-study-card:last-child { border-bottom:0; }
.hbsbr-study-card h3 { margin:0 0 6px; color:#2f2433; }
.hbsbr-study-meta { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:8px; color:#6b616f; font-size:.95rem; }
.hbsbr-study-badge {
	display:inline-flex;
	align-items:center;
	padding:4px 10px;
	border-radius:999px;
	background:rgba(122, 92, 135, 0.08);
	color:var(--hbsbr-accent, #7a5c87);
	font-weight:700;
}
.hbsbr-study-body p:first-child,
.hbsbr-study-body { margin-top:0; }
.hbsbr-study-refs { margin-top:8px; display:flex; flex-wrap:wrap; gap:8px; }
.hbsbr-ref-pill {
	display:inline-block;
	padding:6px 10px;
	border-radius:999px;
	background:#f5eef7;
	color:#5d4867;
	font-size:.95rem;
}
.hbsbr-plan-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:16px; }
.hbsbr-plan-card {
	background:#fff;
	border:1px solid rgba(122, 92, 135, 0.14);
	border-radius:18px;
	padding:18px;
}
.hbsbr-plan-card h3 { margin:0 0 8px; color:#2f2433; }
.hbsbr-plan-card p { margin:0 0 14px; color:#5e5462; }
.hbsbr-plan-output ul { margin:8px 0 0 20px; }
.hbsbr-loading { color:#5d4867; }
.hbsbr-error {
	background:#fff4f4;
	color:#8f2d2d;
	border:1px solid #efc0c0;
	border-radius:14px;
	padding:12px 14px;
}
@media (max-width: 640px) {
	.hbsbr-reader, .hbsbr-study, .hbsbr-plans, .hbsbr-locked { padding:18px; border-radius:18px; }
}


.hbsbr-branding {
	margin-top: 20px;
	padding-top: 16px;
	border-top: 1px solid rgba(122, 92, 135, 0.12);
	text-align: center;
	color: #6b616f;
	font-size: .95rem;
	line-height: 1.6;
}
.hbsbr-branding p { margin: 0; }
.hbsbr-branding a {
	color: var(--hbsbr-accent, #7a5c87);
	font-weight: 700;
	text-decoration: none;
}
.hbsbr-branding a:hover,
.hbsbr-branding a:focus { text-decoration: underline; }
