/* ধর্মীয় প্রতিষ্ঠান (2026-10-14) — cards, chips, single page */
.rk-mosque    { --rk: #0E6E4C; --rk-soft: rgba(14,110,76,.10); }
.rk-temple    { --rk: #C2410C; --rk-soft: rgba(194,65,12,.10); }
.rk-eidgah    { --rk: #0F766E; --rk-soft: rgba(15,118,110,.10); }
.rk-ashram    { --rk: #B45309; --rk-soft: rgba(180,83,9,.11); }
.rk-church    { --rk: #1D4ED8; --rk-soft: rgba(29,78,216,.10); }
.rk-pagoda    { --rk: #A16207; --rk-soft: rgba(161,98,7,.11); }
.rk-shrine    { --rk: #7C3AED; --rk-soft: rgba(124,58,237,.10); }
.rk-cemetery  { --rk: #4D6B57; --rk-soft: rgba(77,107,87,.12); }
.rk-cremation { --rk: #8B5E3C; --rk-soft: rgba(139,94,60,.12); }
.rk-other     { --rk: #475569; --rk-soft: rgba(71,85,105,.10); }

/* chips */
.rk-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 14px; }
.rk-chip {
  --rk: var(--brand-green, #0E6E4C);
  display: inline-flex; align-items: center; gap: 7px; padding: 8px 14px; border-radius: 999px;
  background: var(--surface, #fff); border: 1px solid var(--border-soft, #E3DFD3); color: var(--ink, #1f2a24);
  font-weight: 600; font-size: .92rem; text-decoration: none; transition: transform .15s, box-shadow .15s, background .15s;
  box-shadow: 0 2px 8px rgba(16,58,42,.05);
}
.rk-chip i { color: var(--rk); }
.rk-chip span { font-size: .78rem; font-weight: 700; padding: 1px 8px; border-radius: 999px; background: var(--rk-soft, rgba(14,110,76,.1)); color: var(--rk); }
.rk-chip:hover { transform: translateY(-1px); box-shadow: 0 6px 16px rgba(16,58,42,.10); color: var(--ink, #1f2a24); }
.rk-chip.on { background: var(--rk); border-color: var(--rk); color: #fff; }
.rk-chip.on i { color: #fff; }
.rk-chip.on span { background: rgba(255,255,255,.22); color: #fff; }

/* grid + card */
.rk-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }
.rk-card {
  position: relative; display: flex; align-items: center; gap: 12px; padding: 14px 14px 14px 12px; border-radius: 16px;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.78));
  border: 1px solid var(--border-soft, #E6E1D3); box-shadow: 0 4px 14px rgba(16,58,42,.06);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s;
  overflow: hidden;
}
.rk-card::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--rk); opacity: .85; }
.rk-card:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(16,58,42,.12); border-color: color-mix(in srgb, var(--rk) 35%, transparent); }
.rk-link { position: absolute; inset: 0; z-index: 1; border-radius: inherit; }
.rk-link:focus-visible { outline: 3px solid var(--rk); outline-offset: 2px; }
.rk-ic {
  flex: 0 0 48px; width: 48px; height: 48px; border-radius: 14px; display: grid; place-items: center;
  background: var(--rk-soft); color: var(--rk); font-size: 1.3rem; overflow: hidden;
}
.rk-ic img { width: 100%; height: 100%; object-fit: cover; }
.rk-body { flex: 1 1 auto; min-width: 0; }
.rk-kind { display: inline-block; font-size: .72rem; font-weight: 700; letter-spacing: .02em; color: var(--rk); margin-bottom: 2px; }
.rk-name { font-size: 1rem; line-height: 1.35; margin: 0; color: var(--ink, #1f2a24); font-weight: 700; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.rk-area { margin: 4px 0 0; font-size: .82rem; color: var(--muted, #6b6255); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rk-area i { color: var(--rk); opacity: .8; margin-right: 2px; }
.rk-call {
  position: relative; z-index: 2; flex: 0 0 38px; width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center;
  background: var(--rk); color: #fff; text-decoration: none; box-shadow: 0 4px 12px color-mix(in srgb, var(--rk) 35%, transparent);
}
.rk-call:hover { color: #fff; filter: brightness(1.08); }

.rk-foot { margin: 22px 0 0; font-size: .85rem; color: var(--muted, #6b6255); }
.rk-foot i { color: var(--brand-green, #0E6E4C); }

/* single */
.rk-hero-ic {
  width: 112px; height: 112px; flex: 0 0 112px; border-radius: 28px; display: grid; place-items: center; font-size: 3rem;
  color: #fff; background: linear-gradient(145deg, var(--rk), color-mix(in srgb, var(--rk) 70%, #000));
  box-shadow: 0 12px 26px color-mix(in srgb, var(--rk) 35%, transparent); border: 4px solid var(--surface, #fff);
}
.rk-kind-pill { background: var(--rk-soft) !important; color: var(--rk) !important; border-color: transparent !important; }
a.pb { text-decoration: none; }
.rk-contacts { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 10px; }
.rk-contact { display: flex; align-items: center; gap: 10px; padding: 12px; border-radius: 14px; border: 1px solid var(--border-soft, #E6E1D3); background: var(--surface, #fff); }
.rk-contact > div { flex: 1 1 auto; min-width: 0; }
.rk-contact small { display: block; font-size: .75rem; color: var(--muted, #6b6255); }
.rk-contact b { display: block; font-size: .95rem; color: var(--ink, #1f2a24); }
.rk-c-ic { flex: 0 0 38px; width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; background: rgba(14,110,76,.08); color: var(--brand-green, #0E6E4C); }
.rk-c-call { flex: 0 0 auto; font-size: .85rem; font-weight: 700; text-decoration: none; padding: 6px 10px; border-radius: 999px; background: rgba(14,110,76,.10); color: var(--brand-green, #0E6E4C); white-space: nowrap; }
.rk-c-call:hover { background: var(--brand-green, #0E6E4C); color: #fff; }
.rk-note { font-size: .8rem; color: var(--muted, #6b6255); margin: 6px 0 0; }

/* union / village section */
.rk-area-sec { margin: 2rem 0 2.5rem; }
.rk-area-kinds { display: flex; flex-wrap: wrap; gap: 6px; margin: -4px 0 12px; }
.rk-area-kinds .rk-chip { padding: 5px 11px; font-size: .84rem; }

html[data-bs-theme="dark"] .rk-card { background: linear-gradient(180deg, rgba(30,38,34,.92), rgba(24,30,27,.85)); border-color: rgba(255,255,255,.08); }
html[data-bs-theme="dark"] .rk-name, html[data-bs-theme="dark"] .rk-contact b { color: #EDEAE2; }
html[data-bs-theme="dark"] .rk-contact, html[data-bs-theme="dark"] .rk-chip { background: rgba(30,38,34,.9); border-color: rgba(255,255,255,.08); color: #EDEAE2; }
html[data-bs-theme="dark"] .rk-chip.on { background: var(--rk); }

@media (max-width: 575px) {
  .rk-grid { grid-template-columns: 1fr; }
  .rk-hero-ic { width: 88px; height: 88px; flex-basis: 88px; font-size: 2.3rem; border-radius: 22px; }
  .rk-chips { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
  .rk-chips::-webkit-scrollbar { display: none; }
  .rk-chip { flex: 0 0 auto; }
}
.rk-map-note { margin: -.35rem 1.75rem .9rem; font-size: .8rem; color: var(--muted, #6b6255); }
.rk-map-note i { color: #24578C; }
@media (max-width: 575px) { .rk-map-note { margin: -.25rem 1rem .8rem; } }
