/* ═══════════════════════════════════════════════════════════════════════════
   reminder-net.com  ·  Design system  ·  site.css
   Companion to Bootstrap 5.3.3 + Bootstrap Icons 1.11.3
   Fonts: Poppins (headings) + Inter (body) via Google Fonts
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Validation ──────────────────────────────────────────────────────────── */
/* Hide the validation-summary box when there are no errors, so the empty
   alert div rendered by asp-validation-summary doesn't show on page load. */
.validation-summary-valid { display: none; }

/* ── Custom properties ───────────────────────────────────────────────────── */
:root {
  --rn-navy:        #1d3557;
  --rn-navy-soft:   #457b9d;
  --rn-coral:       #e76f51;
  --rn-coral-hover: #d35d3e;
  --rn-cream:       #f1faee;
  --rn-mint:        #a8dadc;
  --rn-ink:         #1d1d1f;
  --rn-muted:       #6b7280;
  --rn-line:        #e6e8eb;
  --rn-radius:      14px;
}

/* ── Base typography ─────────────────────────────────────────────────────── */
html {
  scroll-behavior: smooth;
  font-size: 16px;
}

html, body {
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, sans-serif;
  color: var(--rn-ink);
  background: #fff;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5 {
  font-family: 'Poppins', system-ui, sans-serif;
  color: var(--rn-navy);
  letter-spacing: -0.01em;
}
h1 { font-weight: 800; }
h2 { font-weight: 700; }
h3, h4 { font-weight: 700; }

/* Coral italic emphasis */
.accent {
  color: var(--rn-coral);
  font-style: italic;
  font-weight: 700;
}

/* Focus ring — keep accessible but branded */
.btn:focus,
.btn:active:focus,
.form-control:focus,
.form-check-input:focus {
  box-shadow: 0 0 0 0.1rem #fff, 0 0 0 0.25rem rgba(231, 111, 81, 0.45);
}

/* ── Top nav ─────────────────────────────────────────────────────────────── */
.rn-nav {
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: saturate(160%) blur(8px);
  -webkit-backdrop-filter: saturate(160%) blur(8px);
  border-bottom: 1px solid var(--rn-line);
  position: sticky;
  top: 0;
  z-index: 1030;
}
.rn-nav .navbar-brand {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  color: var(--rn-navy);
  font-size: 1.2rem;
  text-decoration: none;
}
.rn-nav .navbar-brand:hover { color: var(--rn-navy); }
.rn-nav .nav-link {
  color: var(--rn-navy-soft);
  font-weight: 500;
  padding: 0.5rem 1rem;
  transition: color .15s ease;
}
.rn-nav .nav-link:hover,
.rn-nav .nav-link.active { color: var(--rn-navy); }

/* Separators between nav links — desktop only, before the CTA button */
@media (min-width: 992px) {
  .rn-nav .navbar-nav .nav-item:not(.ms-lg-2):not(:nth-last-child(2)) .nav-link {
    position: relative;
  }
  .rn-nav .navbar-nav .nav-item:not(.ms-lg-2):not(:nth-last-child(2)) .nav-link::after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 14px;
    background: rgba(69, 123, 157, 0.3);
    border-radius: 1px;
    transition: background .15s ease;
  }
}

/* Brand icon badge */
.rn-brand-icon {
  display: inline-flex;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: var(--rn-navy);
  color: #fff;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 0.9rem;
}

/* Admin link — subtle, unobtrusive */
.rn-nav .nav-link-admin {
  color: var(--rn-muted);
  font-size: 0.85rem;
}
.rn-nav .nav-link-admin:hover { color: var(--rn-navy); }

/* ── Quick-add reminders — category tabs (Option 10) ─────────────────────── */
/* Tinted panel that visually frames the one-click shortcuts as their own block */
.rn-quick-box {
  background: #f4f7fa;
  border: 1px solid #dce3ea;
  border-radius: var(--rn-radius);
  padding: 1.1rem 1.25rem 0.9rem;
  margin-bottom: 1.25rem;
}
.rn-quick-title { margin-bottom: 0.85rem; }

/* "or pick an event type" divider between the two panels */
.rn-or-divider {
  display: flex;
  align-items: center;
  text-align: center;
  color: #9aa3ad;
  font-size: 0.8rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin: 0 0 1.25rem;
}
.rn-or-divider::before,
.rn-or-divider::after {
  content: "";
  flex: 1;
  border-top: 1px solid #e6e8eb;
}
.rn-or-divider span { padding: 0 0.85rem; }

.rn-quick-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  border-bottom: 1px solid #e6e8eb;
  margin-bottom: 1rem;
}
.rn-quick-tab {
  position: relative;
  background: none;
  border: none;
  padding: 0 0 0.6rem;
  font-size: 0.9rem;
  font-weight: 500;
  color: #9aa3ad;
  cursor: pointer;
  white-space: nowrap;
  transition: color 0.15s;
}
.rn-quick-tab:hover { color: var(--rn-navy-soft); }
.rn-quick-tab.active { color: var(--rn-navy); font-weight: 600; }
.rn-quick-tab.active::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: -1px;
  height: 2.5px;
  background: var(--rn-coral);
  border-radius: 2px;
}

.rn-quick-panel { display: none; flex-wrap: wrap; gap: 0.5rem; }
.rn-quick-panel.show { display: flex; }

/* Quick-add buttons — outline navy, fill on hover/active */
.rn-quick-btn {
  border: 1.5px solid #d4d8dd;
  background: #fff;
  color: var(--rn-navy);
  border-radius: 8px;
  padding: 0.42rem 1rem;
  font-size: 0.88rem;
  font-weight: 500;
}
.rn-quick-btn:hover,
.rn-quick-btn.active {
  border-color: var(--rn-navy);
  background: var(--rn-navy);
  color: #fff;
}
.rn-quick-btn i { opacity: 0.85; }

/* ── Buttons ─────────────────────────────────────────────────────────────── */
.btn-coral {
  background: var(--rn-coral);
  border: none;
  color: #fff;
  font-weight: 600;
  padding: 0.75rem 1.5rem;
  border-radius: var(--rn-radius);
  box-shadow: 0 4px 14px rgba(231, 111, 81, 0.25);
  transition: all .15s ease;
  text-decoration: none;
  display: inline-block;
}
.btn-coral:hover,
.btn-coral:focus {
  background: var(--rn-coral-hover);
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(231, 111, 81, 0.35);
}
.btn-coral:active { transform: none; }

.btn-outline-navy {
  background: transparent;
  border: 2px solid var(--rn-navy);
  color: var(--rn-navy);
  font-weight: 600;
  padding: 0.625rem 1.25rem;
  border-radius: var(--rn-radius);
  transition: all .15s ease;
  text-decoration: none;
  display: inline-block;
}
.btn-outline-navy:hover,
.btn-outline-navy:focus {
  background: var(--rn-navy);
  color: #fff;
}

/* Pill modifier — apply on top of any button class */
.btn-pill { border-radius: 100px !important; }

/* ── Section chrome helpers ──────────────────────────────────────────────── */
section.block { padding: 5rem 0; }

.eyebrow {
  display: inline-block;
  color: var(--rn-coral);
  font-weight: 700;
  font-size: 0.85rem;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 0.75rem;
}
.section-title {
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  margin-bottom: 0.75rem;
}
.section-lead {
  color: var(--rn-muted);
  max-width: 38rem;
  margin: 0 auto;
  line-height: 1.65;
}

/* ── Hero ────────────────────────────────────────────────────────────────── */
.hero {
  background:
    radial-gradient(circle at 90% 10%, rgba(168, 218, 220, 0.35) 0%, transparent 45%),
    radial-gradient(circle at 5%  95%, rgba(231, 111, 81, 0.10)  0%, transparent 40%),
    #fff;
  padding: 5rem 0 6rem;
}
.hero h1 {
  font-size: clamp(2.25rem, 4.5vw, 3.5rem);
  line-height: 1.1;
}
.hero p.lead {
  font-size: 1.15rem;
  color: var(--rn-muted);
  max-width: 32rem;
  line-height: 1.6;
}

/* Pill badge (free · no account) */
.pill-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  background: var(--rn-cream);
  color: var(--rn-navy);
  padding: 0.4rem 0.85rem;
  border-radius: 100px;
  font-size: 0.85rem;
  font-weight: 500;
  border: 1px solid #d4ebd1;
}

/* SVG illustration container */
.hero-illustration {
  position: relative;
  max-width: 480px;
  margin: 0 auto;
}

/* ── Trust bar ───────────────────────────────────────────────────────────── */
.trust-bar {
  background: var(--rn-cream);
  padding: 1.5rem 0;
  border-top: 1px solid #e6f1e3;
  border-bottom: 1px solid #e6f1e3;
}
.trust-bar .label {
  color: var(--rn-navy-soft);
  font-size: 0.85rem;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  font-weight: 600;
}

/* ── Category cards ──────────────────────────────────────────────────────── */
.cat-card {
  border: 1px solid var(--rn-line);
  border-radius: var(--rn-radius);
  padding: 1.75rem;
  height: 100%;
  transition: all .2s ease;
  background: #fff;
}
.cat-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(29, 53, 87, 0.08);
  border-color: transparent;
}
.cat-icon {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.75rem;
  margin-bottom: 1rem;
}
.cat-icon.pink   { background: #fde2e4; color: #d6336c; }
.cat-icon.blue   { background: #d6ecfb; color: #1971c2; }
.cat-icon.green  { background: #d3f1d7; color: #2f9e44; }
.cat-icon.yellow { background: #fef3c7; color: #d97706; }
.cat-card h3 { font-size: 1.15rem; margin-bottom: 0.4rem; font-weight: 700; }
.cat-card p  { color: var(--rn-muted); font-size: 0.92rem; margin: 0; }

/* ── Popular reminders strip ─────────────────────────────────────────────── */
.featured-strip {
  background: #fff;
  border-radius: var(--rn-radius);
  padding: 1rem 1.25rem;
  border: 1px solid var(--rn-line);
  display: flex;
  align-items: center;
  gap: 0.75rem;
  transition: all .2s ease;
}
.featured-strip:hover {
  transform: translateY(-2px);
  border-color: var(--rn-mint);
}
.featured-strip .ico {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  flex-shrink: 0;
}
.featured-strip .ico.a { background: #fde2e4; color: #d6336c; }
.featured-strip .ico.b { background: #d3f1d7; color: #2f9e44; }
.featured-strip .ico.c { background: #d6ecfb; color: #1971c2; }
.featured-strip .name  { font-weight: 600; font-size: 0.92rem; color: var(--rn-ink); }
.featured-strip .meta  { font-size: 0.8rem; color: var(--rn-muted); }

/* ── How-it-works steps ──────────────────────────────────────────────────── */
.step { text-align: center; padding: 1.5rem; }
.step-num {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--rn-navy);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  margin-bottom: 1rem;
}
.step h4 { font-size: 1.15rem; margin-bottom: 0.5rem; }
.step p   { color: var(--rn-muted); font-size: 0.95rem; }

/* ── Sponsor / "How we keep it free" section ─────────────────────────────── */
.sponsor-section { background: #fafbfc; }

/* ── Testimonial ─────────────────────────────────────────────────────────── */
.testimonial-section { background: var(--rn-cream); }
.testimonial-card {
  max-width: 720px;
  margin: 0 auto;
  background: #fff;
  border-radius: var(--rn-radius);
  padding: 2.5rem;
  box-shadow: 0 10px 30px rgba(29, 53, 87, 0.06);
  text-align: center;
}
.stars {
  color: #f6b73c;
  font-size: 1.15rem;
  letter-spacing: 2px;
  margin-bottom: 1rem;
}
.testimonial-quote {
  font-family: 'Poppins', sans-serif;
  font-weight: 500;
  font-size: 1.2rem;
  color: var(--rn-navy);
  line-height: 1.5;
  margin-bottom: 1.5rem;
  font-style: italic;
}
.author-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
}
.author-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--rn-mint);
  color: var(--rn-navy);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-family: 'Poppins', sans-serif;
}
.author-name { font-weight: 600; color: var(--rn-navy); }
.author-meta { font-size: 0.85rem; color: var(--rn-muted); }

/* ── CTA strip ───────────────────────────────────────────────────────────── */
.cta-strip {
  background: var(--rn-navy);
  color: #fff;
  border-radius: 24px;
  padding: 3.5rem;
  margin: 0 auto;
  max-width: 1080px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.cta-strip::before,
.cta-strip::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  background: var(--rn-coral);
  opacity: 0.18;
}
.cta-strip::before { width: 200px; height: 200px; top: -80px; right: -60px; }
.cta-strip::after  { width: 160px; height: 160px; bottom: -60px; left: -40px; background: var(--rn-mint); opacity: 0.22; }
.cta-strip h2 { color: #fff; font-size: clamp(1.75rem, 3vw, 2.5rem); margin-bottom: 0.5rem; }
.cta-strip h2 .accent { color: #ffcab5; }
.cta-strip p  { color: rgba(255, 255, 255, 0.8); margin-bottom: 1.75rem; }

/* ── Footer ──────────────────────────────────────────────────────────────── */
footer.rn-footer {
  background: #0f1d33;
  color: rgba(255, 255, 255, 0.7);
  padding: 4rem 0 2rem;
}
footer.rn-footer h5 {
  color: #fff;
  font-size: 0.95rem;
  margin-bottom: 1rem;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
}
footer.rn-footer a {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  display: block;
  padding: 0.25rem 0;
  transition: color .15s ease;
}
footer.rn-footer a:hover { color: var(--rn-coral); }
footer.rn-footer .brand {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: 1.2rem;
  margin-bottom: 0.75rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
footer.rn-footer hr {
  border-color: rgba(255, 255, 255, 0.08);
  margin: 2rem 0 1.5rem;
}
.footer-bottom {
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.5);
}
.footer-bottom a {
  display: inline !important;
  padding: 0 !important;
  color: rgba(255, 255, 255, 0.5) !important;
}
.footer-bottom a:hover { color: var(--rn-coral) !important; }
.footer-bottom .heart { color: var(--rn-coral); }

/* Footer newsletter input */
.footer-newsletter-input {
  border-radius: var(--rn-radius);
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.15);
  color: #fff;
}
.footer-newsletter-input::placeholder { color: rgba(255, 255, 255, 0.45); }
.footer-newsletter-input:focus {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.35);
  color: #fff;
  box-shadow: none;
}

/* ── Form cards (create reminder, manage) ────────────────────────────────── */
.rn-card {
  border: 1px solid var(--rn-line);
  border-radius: var(--rn-radius);
  background: #fff;
  padding: 2rem;
}
.rn-card-header {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  color: var(--rn-navy);
  font-size: 1.25rem;
  margin-bottom: 1.25rem;
}

/* ── Utility — navy text ─────────────────────────────────────────────────── */
.text-navy      { color: var(--rn-navy) !important; }
.text-navy-soft { color: var(--rn-navy-soft) !important; }
.text-coral     { color: var(--rn-coral) !important; }
.bg-cream       { background-color: var(--rn-cream) !important; }
.bg-navy        { background-color: var(--rn-navy) !important; }

/* ── Event-type tile selector (create form) ──────────────────────────────── */
.ev-cat-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .75rem;
}
@media (max-width: 575.98px) {
  /* On phones, 5 across is too tight — fall back to a 2-column grid */
  .ev-cat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.ev-cat-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 1.15rem .9rem 1rem;
  border: 2px solid var(--rn-line);
  border-radius: var(--rn-radius);
  cursor: pointer;
  transition: all .18s ease;
  background: #fff;
  user-select: none;
}
.ev-cat-tile:hover {
  border-color: var(--rn-navy-soft);
  background: var(--rn-cream);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(29,53,87,.1);
}
.ev-cat-tile.active {
  border-color: var(--rn-coral);
  background: #fff5f2;
  box-shadow: 0 0 0 3px rgba(231,111,81,.15);
  transform: translateY(-1px);
}
.ev-tile-icon {
  width: 50px; height: 50px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.4rem;
  margin-bottom: .6rem;
  flex-shrink: 0;
}
.ev-tile-icon.personal   { background: #fce4ec; color: #c2185b; }
.ev-tile-icon.health     { background: #e8f5e9; color: #388e3c; }
.ev-tile-icon.docs       { background: #e3f2fd; color: #1565c0; }
.ev-tile-icon.financial  { background: #fff8e1; color: #f57f17; }
.ev-tile-icon.work       { background: #ede7f6; color: #512da8; }
.ev-tile-icon.pets       { background: #fce4ec; color: #e91e63; }
.ev-tile-icon.education  { background: #e8eaf6; color: #283593; }
.ev-tile-icon.travel     { background: #e1f5fe; color: #01579b; }
.ev-tile-icon.home       { background: #fff3e0; color: #bf360c; }
.ev-tile-icon.social     { background: #e0f2f1; color: #00695c; }
.ev-tile-icon.religious  { background: #fff8e1; color: #e65100; }
.ev-tile-icon.other      { background: #f3e5f5; color: #7b1fa2; }
/* Fallback for any new category added via Admin UI that isn't in the map above */
.ev-tile-icon.default    { background: #e9ecef; color: #495057; }
.ev-tile-label {
  font-family: 'Poppins', sans-serif;
  font-size: .78rem;
  font-weight: 600;
  line-height: 1.25;
  color: var(--rn-navy);
}
.ev-tile-count {
  font-size: .67rem;
  color: var(--rn-muted);
  font-weight: 500;
  margin-top: .2rem;
}

/* "More categories" expand button */
.ev-more-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  width: 100%;
  margin-top: .6rem;
  padding: .52rem 1rem;
  background: none;
  border: 1.5px dashed var(--rn-line);
  border-radius: var(--rn-radius);
  cursor: pointer;
  font-size: .8rem;
  font-weight: 600;
  color: var(--rn-muted);
  transition: all .15s;
}
.ev-more-btn:hover {
  border-color: var(--rn-navy-soft);
  color: var(--rn-navy-soft);
  background: var(--rn-cream);
}

/* chip burst panel */
.ev-chip-area {
  display: none;
  flex-wrap: wrap;
  align-content: flex-start;
  gap: .45rem;
  padding: .85rem;
  background: var(--rn-cream);
  border: 1.5px solid #d4e8db;
  border-radius: 10px;
  margin-top: .65rem;
  animation: evFadeIn .18s ease;
}
.ev-chip-area.visible { display: flex; }

/* header row inside chip area: category name + back link */
.ev-chip-header {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: .3rem;
}
.ev-chip-cat-name {
  font-family: 'Poppins', sans-serif;
  font-size: .78rem;
  font-weight: 700;
  color: var(--rn-navy);
  display: flex;
  align-items: center;
  gap: .35rem;
}

/* individual category chip group — flex so chips wrap */
.ev-chip-group {
  flex-wrap: wrap;
  gap: .45rem;
  width: 100%;
}

.ev-back-btn {
  background: none;
  border: none;
  font-size: .75rem;
  color: var(--rn-muted);
  cursor: pointer;
  padding: 0;
  display: flex;
  align-items: center;
  gap: .25rem;
}
.ev-back-btn:hover { color: var(--rn-coral); }

.ev-event-chip {
  padding: .4rem .9rem;
  border: 1.5px solid var(--rn-line);
  border-radius: 100px;
  background: #fff;
  font-size: .82rem;
  font-weight: 500;
  color: var(--rn-ink);
  cursor: pointer;
  transition: all .15s;
}
.ev-event-chip:hover {
  border-color: var(--rn-coral);
  color: var(--rn-coral);
  background: #fff5f2;
}
.ev-event-chip.selected {
  background: var(--rn-coral);
  border-color: var(--rn-coral);
  color: #fff;
  font-weight: 600;
}

@keyframes evFadeIn {
  from { opacity: 0; transform: translateY(-4px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ── Reminder-created activation modal ──────────────────────────────────── */
.rc-icon-circle {
  width: 64px; height: 64px;
  border-radius: 50%;
  background: var(--rn-coral);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.75rem;
  color: #fff;
  box-shadow: 0 4px 16px rgba(231,111,81,.4);
}

.rc-steps {
  list-style: none;
  padding: 0; margin: 0 0 1rem;
  display: flex; flex-direction: column; gap: .85rem;
}
.rc-steps li {
  display: flex; align-items: flex-start; gap: .85rem;
}
.rc-step-num {
  flex-shrink: 0;
  width: 26px; height: 26px;
  border-radius: 50%;
  background: var(--rn-coral);
  color: #fff;
  font-family: 'Poppins', sans-serif;
  font-size: .78rem; font-weight: 700;
  display: flex; align-items: center; justify-content: center;
  margin-top: .1rem;
}

.rc-tip {
  background: var(--rn-cream);
  border-radius: 10px;
  padding: .65rem .9rem;
  font-size: .82rem;
  color: var(--rn-ink);
  margin-bottom: .5rem;
}

.rc-got-it-btn {
  background: var(--rn-coral);
  color: #fff;
  border: none;
  border-radius: var(--rn-radius);
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: .95rem;
  padding: .7rem 2rem;
  transition: background .15s, transform .1s;
  width: 100%;
}
.rc-got-it-btn:hover  { background: var(--rn-coral-hover); color: #fff; transform: translateY(-1px); }
.rc-got-it-btn:active { transform: translateY(0); }

/* ── Admin: collapsible group cards ─────────────────────────────────────── */
.rn-collapse-chevron {
  transition: transform .2s ease;
}
[data-bs-toggle="collapse"][aria-expanded="false"] .rn-collapse-chevron {
  transform: rotate(-90deg);
}

