/* Cornerstone Connect — theme-agnostic fallback styles.
   A Cornerstone theme can restyle everything via these same class names. */

.cstone-form{max-width:560px}
.cstone-field{margin:0 0 1rem}
.cstone-field label{display:block;font-weight:600;margin-bottom:.3rem}
.cstone-field input[type=text],
.cstone-field input[type=email],
.cstone-field input[type=tel],
.cstone-field input[type=number],
.cstone-field select,
.cstone-field textarea{width:100%;padding:.55rem .7rem;border:1px solid rgba(0,0,0,.2);border-radius:8px;font:inherit}
.cstone-field-checkbox label{display:flex;align-items:flex-start;gap:.5rem;font-weight:400}
.cstone-field-help{display:block;font-size:.8rem;opacity:.65;margin-top:.25rem}
.cstone-form-intro{margin:0 0 1.25rem;opacity:.8}
.cstone-form-notice{padding:.85rem 1rem;border-radius:8px;margin-bottom:1.25rem}
.cstone-form-success{background:#e6f4ea;color:#1e4620}
.cstone-form-error{background:#fdecea;color:#611a15}
.cstone-btn{display:inline-block;padding:.6rem 1.1rem;border-radius:999px;background:#1a1d21;color:#fff;text-decoration:none;font-weight:600;border:0;cursor:pointer;font-size:1rem}
.cstone-btn-small{padding:.4rem .8rem;font-size:.85rem}

/* Honeypot: visually hidden, but present for bots to fill in. */
.cstone-hp-wrap{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden}

/* CSS-only tab toggle (Testimony / Prayer Request) — radio inputs hidden,
   labels act as tab buttons, sibling selectors show the matching panel.
   No JS. First radio (Testimony) is marked checked in the HTML, so it's
   the default tab on page load. */
.cstone-tabs-radio{position:absolute;opacity:0;pointer-events:none}
.cstone-tabs-nav{display:flex;gap:.75rem;margin-bottom:1.75rem;flex-wrap:wrap}
.cstone-tabs-nav label{cursor:pointer;padding:.6rem 1.2rem;border-radius:999px;border:1px solid rgba(0,0,0,.15);font-weight:600}
.cstone-tabs-panel{display:none}
#cstone-tab-testimony:checked ~ .cstone-tabs-nav label[for="cstone-tab-testimony"],
#cstone-tab-prayer:checked ~ .cstone-tabs-nav label[for="cstone-tab-prayer"]{background:#1a1d21;color:#fff;border-color:#1a1d21}
#cstone-tab-testimony:checked ~ .cstone-tabs-panel-testimony,
#cstone-tab-prayer:checked ~ .cstone-tabs-panel-prayer{display:block}

.cstone-groups-filters{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}
.cstone-groups-filters select{padding:.5rem .7rem;border-radius:8px;border:1px solid rgba(0,0,0,.2)}
.cstone-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}
.cstone-card{border:1px solid rgba(0,0,0,.1);border-radius:12px;background:#fff;padding:1rem}
.cstone-card h2{font-size:1.1rem;margin:0 0 .35rem}
.cstone-group-meta{font-size:.85rem;opacity:.7;margin:0 0 .5rem}
.cstone-group-leader{font-size:.85rem;opacity:.7;margin:.5rem 0 0}
.excerpt{font-size:.9rem;opacity:.75;margin:0 0 .75rem}
.cstone-empty{border:1px dashed rgba(0,0,0,.2);border-radius:12px;padding:2.5rem 1.5rem;text-align:center;background:#fafafa}
