.sbpr-wrap {
	max-width: 640px;
	margin: 0 auto;
	padding: 16px;
	box-sizing: border-box;
	font-size: 16px;
}
.sbpr-wrap * { box-sizing: border-box; }

.sbpr-form p { margin: 0 0 14px; }
.sbpr-form label { display: block; font-weight: 600; margin-bottom: 4px; }
.sbpr-form input[type="text"],
.sbpr-form input[type="tel"],
.sbpr-form input[type="email"],
.sbpr-form input[type="password"],
.sbpr-form select,
.sbpr-form textarea {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid #ccc;
	border-radius: 6px;
	font-size: 16px; /* prevents iOS zoom-on-focus */
}

.sbpr-btn {
	display: inline-block;
	padding: 10px 18px;
	border-radius: 6px;
	border: none;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	font-size: 15px;
}
.sbpr-btn-primary { background: #1a7f37; color: #fff; }
.sbpr-btn-secondary { background: #eee; color: #222; margin-right: 8px; }

.sbpr-alert { padding: 10px 14px; border-radius: 6px; margin-bottom: 14px; }
.sbpr-alert-error { background: #fdecea; color: #a33; }
.sbpr-alert-success { background: #e9f7ef; color: #1a7f37; }

.sbpr-stats-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 10px;
	margin: 16px 0;
}
@media (min-width: 560px) {
	.sbpr-stats-grid { grid-template-columns: repeat(3, 1fr); }
}
.sbpr-stat {
	background: #f7f7f8;
	border-radius: 8px;
	padding: 12px;
	text-align: center;
}
.sbpr-stat-num { display: block; font-size: 22px; font-weight: 700; }
.sbpr-stat-label { display: block; font-size: 12px; color: #666; margin-top: 2px; }

.sbpr-table { width: 100%; border-collapse: collapse; margin-top: 8px; }
.sbpr-table th, .sbpr-table td {
	text-align: left;
	padding: 8px 6px;
	border-bottom: 1px solid #eee;
	font-size: 14px;
}

.sbpr-badge {
	display: inline-block;
	padding: 3px 8px;
	border-radius: 12px;
	font-size: 12px;
	background: #eee;
}
.sbpr-badge-converted { background: #e9f7ef; color: #1a7f37; }
.sbpr-badge-new { background: #eaf1fb; color: #2560c4; }
.sbpr-badge-duplicate,
.sbpr-badge-lost,
.sbpr-badge-not_interested,
.sbpr-badge-not_reachable { background: #fdecea; color: #a33; }
.sbpr-badge-paid { background: #e9f7ef; color: #1a7f37; }
.sbpr-badge-pending { background: #fff6e0; color: #a67c00; }
.sbpr-badge-approved { background: #eaf1fb; color: #2560c4; }

.sbpr-referral-link-box, .sbpr-qr-box, .sbpr-recent-referrals, .sbpr-commissions {
	margin-top: 24px;
	padding-top: 16px;
	border-top: 1px solid #eee;
}
.sbpr-referral-url code {
	display: block;
	background: #f7f7f8;
	padding: 8px 10px;
	border-radius: 6px;
	word-break: break-all;
	margin-bottom: 10px;
}
.sbpr-qr-box { text-align: center; }
#sbpr-qr-canvas { display: inline-block; margin: 12px 0; }
