/* RBFund — Frontend styles (lightweight, responsive, no dependencies) */
:root {
	--rbfund-primary: #16a34a;
	--rbfund-primary-dark: #15803d;
	--rbfund-progress: #16a34a;
	--rbfund-btn: #16a34a;
	--rbfund-btn-shortcode: #16a34a;
	--rbfund-bg: #ffffff;
	--rbfund-muted: #6b7280;
	--rbfund-border: #e5e7eb;
	--rbfund-radius: 12px;
}

.rbfund-campaign-card,
.rbfund-single,
.rbfund-single-form,
.rbfund-form {
	box-sizing: border-box;
}
.rbfund-campaign-card *,
.rbfund-form * { box-sizing: border-box; }

/* Progress bar */
.rbfund-progress {
	background: var(--rbfund-border);
	border-radius: 999px;
	height: 12px;
	overflow: hidden;
	margin: 12px 0;
}
.rbfund-progress-bar {
	background: linear-gradient(90deg, var(--rbfund-progress, var(--rbfund-primary)), var(--rbfund-progress, var(--rbfund-primary-dark)));
	height: 100%;
	border-radius: 999px;
	transition: width .6s ease;
	min-width: 2px;
}

/* Stats */
.rbfund-stats {
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
	margin: 12px 0 16px;
}
.rbfund-stat { display: flex; flex-direction: column; }
.rbfund-stat-value { font-size: 1.15rem; font-weight: 700; color: #111827; }
.rbfund-stat-label { font-size: .8rem; color: var(--rbfund-muted); }

/* Campaign card */
.rbfund-campaign-card {
	border: 1px solid var(--rbfund-border);
	border-radius: var(--rbfund-radius);
	overflow: hidden;
	background: var(--rbfund-bg);
	max-width: 640px;
}
.rbfund-campaign-thumb img { width: 100%; height: auto; display: block; }
.rbfund-campaign-body { padding: 20px; }
.rbfund-campaign-title { margin: 0 0 8px; font-size: 1.35rem; }

/* Form */
.rbfund-form { margin-top: 16px; }
.rbfund-field { margin-bottom: 14px; }
.rbfund-field label { display: block; font-weight: 600; margin-bottom: 6px; font-size: .9rem; }
.rbfund-field input,
.rbfund-field select,
.rbfund-field textarea {
	width: 100%;
	padding: 11px 12px;
	border: 1px solid var(--rbfund-border);
	border-radius: 8px;
	font-size: 1rem;
	font-family: inherit;
}
.rbfund-field input:focus,
.rbfund-field select:focus,
.rbfund-field textarea:focus {
	outline: none;
	border-color: var(--rbfund-primary);
	box-shadow: 0 0 0 3px rgba(22,163,74,.15);
}
.rbfund-row { display: flex; gap: 12px; }
.rbfund-row .rbfund-field { flex: 1; }

.rbfund-presets { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 8px; }
.rbfund-preset {
	border: 1px solid var(--rbfund-border);
	background: #f9fafb;
	border-radius: 8px;
	padding: 8px 12px;
	cursor: pointer;
	font-size: .9rem;
	transition: all .15s ease;
}
.rbfund-preset:hover { border-color: var(--rbfund-primary); }
.rbfund-preset.active {
	background: var(--rbfund-primary);
	color: #fff;
	border-color: var(--rbfund-primary);
}

.rbfund-check { display: flex; align-items: center; gap: 8px; font-size: .9rem; margin-bottom: 14px; }
.rbfund-check input { width: auto; }

.rbfund-submit {
	width: 100%;
	background: var(--rbfund-btn, var(--rbfund-primary));
	color: #fff;
	border: none;
	border-radius: 10px;
	padding: 14px;
	font-size: 1.05rem;
	font-weight: 700;
	cursor: pointer;
	transition: background .15s ease;
}
.rbfund-submit:hover { background: var(--rbfund-primary-dark); }
.rbfund-submit:disabled { opacity: .6; cursor: not-allowed; }

.rbfund-form-message {
	margin-top: 14px;
	padding: 14px;
	border-radius: 10px;
	background: #f0fdf4;
	border: 1px solid #bbf7d0;
	font-size: .92rem;
}
.rbfund-form-message.error { background: #fef2f2; border-color: #fecaca; }
.rbfund-form-message .rbfund-bank { margin: 8px 0; padding-left: 18px; }
.rbfund-form-message .rbfund-note { color: var(--rbfund-muted); font-size: .85rem; margin-top: 8px; }
.rbfund-qris { max-width: 220px; height: auto; margin: 8px 0; }

/* Grid */
.rbfund-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 20px;
}
.rbfund-grid-item {
	border: 1px solid var(--rbfund-border);
	border-radius: var(--rbfund-radius);
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	background: var(--rbfund-bg);
	transition: transform .15s ease, box-shadow .15s ease;
}
.rbfund-grid-item:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,0,0,.08); }
.rbfund-grid-thumb img { width: 100%; height: 160px; object-fit: cover; display: block; }
.rbfund-grid-body { padding: 14px; }
.rbfund-grid-body h4 { margin: 0 0 6px; font-size: 1rem; line-height: 1.3; }
.rbfund-grid-meta { display: flex; justify-content: space-between; font-size: .85rem; color: var(--rbfund-muted); }

/* Sticky button */
.rbfund-sticky-btn {
	position: fixed;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	background: var(--rbfund-btn, var(--rbfund-primary));
	color: #fff !important;
	padding: 14px 32px;
	border-radius: 999px;
	font-weight: 700;
	text-decoration: none;
	box-shadow: 0 6px 20px rgba(22,163,74,.4);
	z-index: 9999;
}
.rbfund-sticky-btn:hover { background: var(--rbfund-primary-dark); }

.rbfund-progress-mini small { color: var(--rbfund-muted); }

/* Responsive */
@media (max-width: 560px) {
	.rbfund-row { flex-direction: column; gap: 0; }
	.rbfund-stats { gap: 12px; }
	.rbfund-campaign-body { padding: 16px; }
}

/* ============ Kabar & Doa ============ */
.rbfund-section { margin: 28px 0; }
.rbfund-section-title {
	font-size: 1.15rem;
	font-weight: 700;
	margin: 0 0 14px;
	padding-bottom: 8px;
	border-bottom: 2px solid var(--rbfund-primary, #16a34a);
	display: inline-block;
}

/* Timeline kabar */
.rbfund-timeline { border-left: 2px solid #e6ebef; padding-left: 18px; }
.rbfund-update { position: relative; margin-bottom: 22px; }
.rbfund-update::before {
	content: "";
	position: absolute;
	left: -25px;
	top: 4px;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: var(--rbfund-primary, #16a34a);
	box-shadow: 0 0 0 3px #fff;
}
.rbfund-update-date { font-size: .8rem; color: #8a97a3; margin-bottom: 3px; }
.rbfund-update-title { margin: 0 0 8px; font-size: 1rem; }
.rbfund-update-img { width: 100%; border-radius: 10px; margin: 6px 0 10px; display: block; }
.rbfund-update-content { color: #47555f; line-height: 1.6; font-size: .95rem; }
.rbfund-update-content p { margin: 0 0 8px; }

/* Dinding doa */
.rbfund-doa-list { display: flex; flex-direction: column; gap: 14px; }
.rbfund-doa-item { display: flex; gap: 12px; align-items: flex-start; }
.rbfund-doa-avatar {
	flex: none;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: var(--rbfund-primary, #16a34a);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 1rem;
}
.rbfund-doa-body {
	background: #f6f8fa;
	border-radius: 12px;
	padding: 12px 14px;
	flex: 1;
	min-width: 0;
}
.rbfund-doa-head { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 4px; margin-bottom: 4px; }
.rbfund-doa-name { font-weight: 600; }
.rbfund-doa-meta { font-size: .78rem; color: #8a97a3; }
.rbfund-doa-message { margin: 0 0 8px; color: #3c4a54; line-height: 1.55; font-size: .95rem; }

.rbfund-aamiin-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #fff;
	border: 1px solid #d7dee4;
	border-radius: 999px;
	padding: 5px 13px;
	font-size: .82rem;
	color: #4b5a66;
	cursor: pointer;
	transition: all .15s;
}
.rbfund-aamiin-btn:hover { border-color: var(--rbfund-primary, #16a34a); color: var(--rbfund-primary, #16a34a); }
.rbfund-aamiin-btn.amiined {
	background: var(--rbfund-primary, #16a34a);
	border-color: var(--rbfund-primary, #16a34a);
	color: #fff;
	cursor: default;
}
.rbfund-aamiin-count {
	background: rgba(0, 0, 0, .08);
	border-radius: 999px;
	padding: 1px 8px;
	font-weight: 700;
	font-size: .78rem;
}
.rbfund-aamiin-btn.amiined .rbfund-aamiin-count { background: rgba(255, 255, 255, .25); }

@media (max-width: 600px) {
	.rbfund-doa-avatar { width: 36px; height: 36px; }
}

/* ============ Fundraiser + Referral ============ */
.rbfund-ref-note {
	background: #eef7ff;
	border: 1px solid #cfe6fb;
	color: #1e6fa8;
	border-radius: 10px;
	padding: 10px 14px;
	margin-bottom: 14px;
	font-size: .92rem;
}
.rbfund-ref-ic { margin-right: 4px; }

.rbfund-fr-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 10px;
	margin-bottom: 16px;
}
.rbfund-fr-card {
	display: flex;
	gap: 10px;
	align-items: center;
	background: #f6f8fa;
	border-radius: 10px;
	padding: 10px 12px;
}
.rbfund-fr-avatar {
	width: 38px; height: 38px; flex: none;
	border-radius: 50%;
	background: var(--rbfund-primary, #16a34a);
	color: #fff; font-weight: 700;
	display: flex; align-items: center; justify-content: center;
}
.rbfund-fr-info { min-width: 0; }
.rbfund-fr-info strong { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rbfund-fr-sub { font-size: .78rem; color: #7a8893; }

.rbfund-fr-cta { text-align: center; margin-top: 6px; }
.rbfund-fr-toggle {
	background: transparent;
	border: 2px dashed var(--rbfund-primary, #16a34a);
	color: var(--rbfund-primary, #16a34a);
	border-radius: 999px;
	padding: 10px 20px;
	font-weight: 600;
	cursor: pointer;
	font-size: .92rem;
}
.rbfund-fr-toggle:hover { background: var(--rbfund-primary, #16a34a); color: #fff; }
.rbfund-fr-collapse { margin-top: 14px; text-align: left; }

/* Form daftar fundraiser */
.rbfund-fr-intro { color: #556572; font-size: .92rem; margin: 0 0 10px; }
.rbfund-fr-fields { display: flex; flex-direction: column; gap: 8px; margin-bottom: 10px; }
.rbfund-fr-fields input {
	padding: 10px 12px;
	border: 1px solid #d5dde4;
	border-radius: 8px;
	font-size: .95rem;
}
.rbfund-fr-submit {
	background: var(--rbfund-primary, #16a34a);
	color: #fff; border: none;
	border-radius: 8px;
	padding: 10px 18px;
	font-weight: 600; cursor: pointer;
}
.rbfund-fr-msg { margin-top: 8px; font-size: .88rem; }

/* Dashboard fundraiser */
.rbfund-fr-panel {
	background: #f6faf7;
	border: 1px solid #d8ebde;
	border-radius: 12px;
	padding: 16px;
}
.rbfund-fr-hello { margin: 0 0 10px; }
.rbfund-fr-linkrow { display: flex; gap: 8px; margin-bottom: 12px; }
.rbfund-fr-link {
	flex: 1; min-width: 0;
	padding: 9px 11px;
	border: 1px solid #cdd7de;
	border-radius: 8px;
	background: #fff;
	font-size: .85rem;
}
.rbfund-fr-copy {
	background: var(--rbfund-primary, #16a34a);
	color: #fff; border: none;
	border-radius: 8px; padding: 0 16px;
	font-weight: 600; cursor: pointer; flex: none;
}
.rbfund-fr-stats { display: flex; gap: 10px; margin-bottom: 12px; }
.rbfund-fr-stat {
	flex: 1; background: #fff;
	border: 1px solid #e4ece7;
	border-radius: 10px;
	padding: 10px; text-align: center;
}
.rbfund-fr-num { display: block; font-weight: 700; color: var(--rbfund-primary, #16a34a); }
.rbfund-fr-lbl { font-size: .74rem; color: #7a8893; }
.rbfund-fr-sharelabel { margin: 0 0 6px; font-size: .82rem; color: #566; }
.rbfund-fr-share { display: flex; flex-wrap: wrap; gap: 8px; }
.rbfund-share {
	color: #fff; text-decoration: none;
	padding: 8px 14px; border-radius: 8px;
	font-size: .85rem; font-weight: 600;
}
.rbfund-share.wa { background: #25d366; }
.rbfund-share.fb { background: #1877f2; }
.rbfund-share.tw { background: #0f1419; }
.rbfund-share.tg { background: #229ed9; }
.rbfund-share:hover { opacity: .9; }

@media (max-width: 600px) {
	.rbfund-fr-list { grid-template-columns: 1fr; }
}

/* ============ Form style variants & lokasi ============ */
.rbfund-presets--list { display: flex; flex-direction: column; gap: 8px; }
.rbfund-presets--list .rbfund-preset { width: 100%; text-align: left; }

.rbfund-campaign-loc {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 10px;
	font-size: .9rem;
	color: #5c6b76;
}
.rbfund-loc-map {
	color: var(--rbfund-primary, #16a34a);
	text-decoration: none;
	font-weight: 600;
}
.rbfund-loc-map:hover { text-decoration: underline; }

/* ==================================================================
   HALAMAN CAMPAIGN (single template)
   ================================================================== */
.rbfund-campaign-page {
	max-width: 1140px;
	margin: 24px auto;
	padding: 0 16px;
	color: #26333d;
}
.rbfund-cp-grid {
	display: grid;
	grid-template-columns: 1fr 380px;
	gap: 28px;
	align-items: start;
}

/* Cover */
.rbfund-cp-cover { position: relative; border-radius: 14px; overflow: hidden; }
.rbfund-cp-cover img { width: 100%; display: block; }
.rbfund-cp-cover-ph {
	background: linear-gradient(135deg, #1f2b6b, #16a34a);
	aspect-ratio: 65 / 35;
	display: flex; align-items: center; justify-content: center;
}
.rbfund-cp-cover-ph .dashicons { color: rgba(255,255,255,.6); font-size: 60px; width: 60px; height: 60px; }
.rbfund-cp-cover-actions {
	position: absolute;
	right: 14px; bottom: 14px;
	display: flex; gap: 10px;
}
.rbfund-cp-btn {
	display: inline-flex; align-items: center; gap: 6px;
	background: #fff; color: var(--rbfund-primary, #b91c1c);
	border: 1px solid rgba(0,0,0,.06);
	border-radius: 999px;
	padding: 8px 16px;
	font-weight: 600; font-size: .85rem;
	text-decoration: none; cursor: pointer;
	box-shadow: 0 2px 8px rgba(0,0,0,.15);
}
.rbfund-cp-btn .dashicons { font-size: 16px; width: 16px; height: 16px; }

.rbfund-cp-title { font-size: 1.6rem; font-weight: 800; margin: 18px 0 8px; line-height: 1.25; }
.rbfund-cp-loc { display: flex; align-items: center; gap: 5px; color: #8a97a3; font-size: .92rem; margin-bottom: 18px; }
.rbfund-cp-loc .dashicons { font-size: 17px; width: 17px; height: 17px; }
.rbfund-cp-loc a { color: var(--rbfund-primary, #16a34a); text-decoration: none; }

/* Tabs */
.rbfund-tabs {
	display: flex;
	gap: 0;
	border-bottom: 2px solid #eef2f5;
	margin-bottom: 20px;
	overflow-x: auto;
}
.rbfund-tab {
	background: transparent;
	border: none;
	padding: 14px 22px;
	font-size: .98rem;
	font-weight: 600;
	color: #7a8893;
	cursor: pointer;
	white-space: nowrap;
	border-bottom: 3px solid transparent;
	margin-bottom: -2px;
}
.rbfund-tab.active {
	color: #fff;
	background: var(--rbfund-primary, #b91c1c);
	border-radius: 10px 10px 0 0;
}
.rbfund-tabpane { display: none; }
.rbfund-tabpane.active { display: block; }

/* Konten + read more */
.rbfund-content-collapse { position: relative; max-height: 340px; overflow: hidden; transition: max-height .3s ease; }
.rbfund-content-collapse.expanded { max-height: none; }
.rbfund-content-inner img { max-width: 100%; height: auto; border-radius: 10px; }
.rbfund-content-fade {
	position: absolute; left: 0; right: 0; bottom: 0; height: 90px;
	background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
	pointer-events: none;
}
.rbfund-content-collapse.expanded .rbfund-content-fade { display: none; }
.rbfund-readmore {
	display: block;
	margin: 14px auto 0;
	background: #fff;
	border: 1px solid var(--rbfund-primary, #b91c1c);
	color: var(--rbfund-primary, #b91c1c);
	border-radius: 999px;
	padding: 9px 26px;
	font-weight: 600;
	cursor: pointer;
}

.rbfund-empty { color: #8a97a3; font-style: italic; padding: 12px 0; }

/* Donatur rows */
.rbfund-donor-rows { display: flex; flex-direction: column; }
.rbfund-donor-row { display: flex; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid #f0f3f5; }
.rbfund-donor-ava {
	width: 40px; height: 40px; border-radius: 50%; flex: none;
	background: var(--rbfund-primary, #16a34a); color: #fff;
	display: flex; align-items: center; justify-content: center; font-weight: 700;
}
.rbfund-donor-meta { flex: 1; min-width: 0; }
.rbfund-donor-meta strong { display: block; }
.rbfund-donor-meta span { font-size: .8rem; color: #8a97a3; }
.rbfund-donor-amt { font-weight: 700; color: var(--rbfund-primary, #16a34a); }

/* ============ Sidebar ============ */
.rbfund-cp-card {
	background: #fff;
	border: 1px solid #edf1f4;
	border-radius: 14px;
	padding: 20px;
	margin-bottom: 18px;
	box-shadow: 0 2px 12px rgba(20,40,60,.04);
}
.rbfund-cp-card-title { margin: 0 0 14px; font-size: 1.1rem; font-weight: 700; }

/* Donate card */
.rbfund-cp-donatecard {
	background: #fff;
	border: 1px solid #edf1f4;
	border-radius: 14px;
	padding: 22px;
	margin-bottom: 18px;
	box-shadow: 0 2px 12px rgba(20,40,60,.04);
}
.rbfund-cp-donatecard--mobile { display: none; }
.rbfund-dc-amounts { margin-bottom: 12px; }
.rbfund-dc-raised { display: block; font-size: 1.5rem; font-weight: 800; color: #1f2b33; }
.rbfund-dc-target { font-size: .85rem; color: #8a97a3; }
.rbfund-dc-bar { height: 8px; background: #eef2f5; border-radius: 999px; overflow: hidden; margin-bottom: 12px; }
.rbfund-dc-bar span { display: block; height: 100%; background: var(--rbfund-primary, #b91c1c); border-radius: 999px; }
.rbfund-dc-meta { display: flex; justify-content: space-between; font-size: .88rem; color: #59666f; margin-bottom: 16px; }
.rbfund-dc-btn {
	width: 100%;
	background: var(--rbfund-primary, #b91c1c);
	color: #fff; border: none;
	border-radius: 10px;
	padding: 14px;
	font-size: 1rem;
	font-weight: 700;
	cursor: pointer;
}
.rbfund-dc-btn:hover { filter: brightness(.95); }

/* Organizer */
.rbfund-org { display: flex; align-items: center; gap: 12px; }
.rbfund-org-logo {
	width: 48px; height: 48px; border-radius: 12px; flex: none;
	background: #1f2b6b; color: #fff;
	display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 1.2rem;
}
.rbfund-org-info strong { display: block; color: #1d4ed8; }
.rbfund-org-badge { font-size: .78rem; color: #16a34a; display: inline-flex; align-items: center; gap: 3px; }
.rbfund-org-badge .dashicons { font-size: 14px; width: 14px; height: 14px; }

/* Sidebar doa */
.rbfund-sidedoa {
	border: 1px solid #eef2f5;
	border-radius: 12px;
	padding: 14px;
	margin-bottom: 12px;
}
.rbfund-hidden-extra { display: none; }
.rbfund-sidedoa-list.expanded .rbfund-hidden-extra { display: block; }
.rbfund-sidedoa-head { display: flex; justify-content: space-between; gap: 6px; margin-bottom: 6px; }
.rbfund-sidedoa-name { font-weight: 700; }
.rbfund-sidedoa-time { font-size: .76rem; color: #9aa5b1; white-space: nowrap; }
.rbfund-sidedoa-msg { margin: 0 0 10px; color: #47555f; font-size: .92rem; line-height: 1.5; }

.rbfund-loadmore {
	display: block; margin: 4px auto 0;
	background: #fff; border: 1px solid #d7dee4;
	border-radius: 999px; padding: 8px 22px;
	color: #59666f; cursor: pointer; font-weight: 600;
}

/* Sidebar fundraiser */
.rbfund-sidefr {
	border: 1px solid #eef2f5;
	border-radius: 12px;
	padding: 12px 14px;
	margin-bottom: 10px;
}
.rbfund-sidefr-name { display: block; color: var(--rbfund-primary, #b91c1c); }
.rbfund-sidefr-sub { display: block; font-size: .84rem; color: #59666f; margin: 2px 0 4px; }
.rbfund-sidefr-amt { font-weight: 700; }
.rbfund-frcta { text-align: center; margin-top: 14px; padding-top: 14px; border-top: 1px solid #f0f3f5; }
.rbfund-frcta-text { font-size: .88rem; color: #59666f; margin: 0 0 12px; }
.rbfund-frcta-btn {
	width: 100%;
	background: var(--rbfund-primary, #b91c1c);
	color: #fff; border: none; border-radius: 10px;
	padding: 12px; font-weight: 700; cursor: pointer;
	display: inline-flex; align-items: center; justify-content: center; gap: 6px;
}

/* Modal */
.rbfund-modal { position: fixed; inset: 0; z-index: 99999; display: none; }
.rbfund-modal.open { display: block; }
.rbfund-modal-overlay { position: absolute; inset: 0; background: rgba(15,23,32,.55); }
.rbfund-modal-box {
	position: relative;
	max-width: 460px;
	margin: 5vh auto;
	background: #fff;
	border-radius: 16px;
	padding: 26px;
	max-height: 90vh;
	overflow-y: auto;
	box-shadow: 0 20px 60px rgba(0,0,0,.3);
}
.rbfund-modal-x {
	position: absolute; right: 16px; top: 12px;
	background: none; border: none; font-size: 26px; line-height: 1;
	color: #9aa5b1; cursor: pointer;
}
.rbfund-modal-title { margin: 0 0 16px; font-size: 1.25rem; }

/* Responsive */
@media (max-width: 900px) {
	.rbfund-cp-grid { grid-template-columns: 1fr; }
	.rbfund-cp-donatecard--desktop { display: none; }
	.rbfund-cp-donatecard--mobile { display: block; }
	.rbfund-cp-side .rbfund-cp-card { }
}

/* ============ Shortcode varian ============ */
.rbfund-info-box { border: 1px solid #edf1f4; border-radius: 12px; padding: 16px; }
.rbfund-info-title { margin: 0 0 4px; font-size: 1.05rem; }
.rbfund-info-loc { color: #8a97a3; font-size: .85rem; margin-bottom: 10px; }
.rbfund-info-stats { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 10px; font-size: .9rem; color: #566; }
.rbfund-info-stats strong { color: var(--rbfund-primary, #16a34a); }
.rbfund-sc-raised, .rbfund-sc-count { font-weight: 700; color: var(--rbfund-primary, #16a34a); }

.rbfund-listcard {
	display: flex; gap: 14px; align-items: center;
	text-decoration: none; color: inherit;
	border: 1px solid #edf1f4; border-radius: 12px; padding: 12px;
	max-width: 520px;
}
.rbfund-listcard-thumb {
	width: 90px; height: 64px; flex: none; border-radius: 8px;
	background-size: cover; background-position: center; background-color: #eef1f6;
}
.rbfund-listcard-body { flex: 1; min-width: 0; }
.rbfund-listcard-body strong { display: block; margin-bottom: 6px; }
.rbfund-listcard-meta { font-size: .85rem; color: #8a97a3; }
.rbfund-form-compact .rbfund-field { margin-bottom: 8px; }

/* ============ Tombol WhatsApp mengambang ============ */
.rbfund-wa-float {
	position: fixed; right: 18px; bottom: 18px; z-index: 9999;
	display: flex; align-items: center; gap: 10px;
	text-decoration: none;
}
.rbfund-wa-bubble {
	background: #fff; color: #222; padding: 8px 12px; border-radius: 10px;
	box-shadow: 0 6px 20px rgba(0,0,0,.15); font-size: .85rem; max-width: 190px;
}
.rbfund-wa-ic {
	width: 56px; height: 56px; border-radius: 50%;
	background: #25d366; color: #fff; font-size: 30px;
	display: flex; align-items: center; justify-content: center;
	box-shadow: 0 6px 20px rgba(37,211,102,.5); flex: none;
}
@media (max-width: 600px) { .rbfund-wa-bubble { display: none; } }

.rbfund-fr-desc { color: var(--rbfund-muted); font-size: .9rem; margin: 0 0 12px; }
