/* Neutral, stylish, theme-friendly */

/* Hide archive titles from most themes */
.post-type-archive-sha_member .page-title,
.post-type-archive-sha_member h1.entry-title { display:none !important; }

.sha-form label { display:block; margin-bottom:12px; }
.sha-form input[type="text"],
.sha-form input[type="email"],
.sha-form input[type="date"],
.sha-form textarea { width:100%; padding:10px; border:1px solid #ddd; border-radius:10px; }
.sha-form .sha-row { display:flex; gap:16px; flex-wrap:wrap; }
.sha-form .sha-row > label { flex:1 1 300px; }
.sha-btn { padding:12px 18px; border:1px solid #ddd; background:#fff; border-radius:12px; cursor:pointer; }
.sha-success { background:#f6ffed; border:1px solid #b7eb8f; padding:12px; border-radius:10px; margin:12px 0; }
.sha-error { background:#fff1f0; border:1px solid #ffa39e; padding:12px; border-radius:10px; margin:12px 0; }

/* Members grid */
.sha-members-wrap { max-width:1200px; margin:0 auto; padding:6px; }
.sha-search { display:flex; align-items:center; gap:12px; margin:12px 0 20px; }
#sha-search { flex:1; padding:12px; border:1px solid #e5e7eb; border-radius:12px; }
.sha-spinner { width:22px; height:22px; border:3px solid #ddd; border-top:3px solid #999; border-radius:50%; animation: shaSpin 0.8s linear infinite; }
@keyframes shaSpin { to { transform: rotate(360deg); } }

.sha-grid { display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap:20px; align-items:stretch; }
@media(max-width:1200px){ .sha-grid { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media(max-width:860px){ .sha-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media(max-width:540px){ .sha-grid { grid-template-columns: 1fr; } }

.sha-card { background:#fff; border:1px solid #e5e7eb; border-radius:18px; overflow:hidden; height:100%; box-shadow: 0 6px 18px rgba(0,0,0,.04); transition: transform .18s ease, box-shadow .18s ease; }
.sha-card:hover { transform: translateY(-3px); box-shadow: 0 12px 28px rgba(0,0,0,.08); }
.sha-card a { text-decoration:none; color:inherit; display:flex; flex-direction:column; height:100%; }

.sha-thumb { aspect-ratio: 1 / 1; background:#f3f4f6; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.sha-thumb img { width:100%; height:100%; object-fit:cover; }
.sha-noimg { width:100%; height:100%; background:#e5e7eb; }

.sha-card-body { padding:14px; display:flex; flex-direction:column; gap:6px; }
.sha-name { margin:0; font-size:1.06rem; font-weight:600; text-align:center; }
.sha-addr { color:#555; font-size:.92rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; text-align:center; }
.sha-dob { color:#666; font-size:.9rem; text-align:center; }
.sha-view { align-self:center; margin-top:8px; font-size:.85rem; border:1px solid #e5e7eb; border-radius:999px; padding:6px 12px; }

.sha-pager { display:flex; gap:8px; justify-content:center; margin:18px 0; flex-wrap:wrap; }
.sha-page { border:1px solid #ddd; background:#fff; padding:8px 12px; border-radius:999px; cursor:pointer; }
.sha-page.active { background:#f3f4f6; }

/* Single profile */
.sha-single { max-width:800px; margin:24px auto; padding:6px; }
.sha-back { display:inline-block; margin-bottom:12px; text-decoration:none; border:1px solid #e5e7eb; padding:6px 10px; border-radius:999px; }
.sha-single-card { background:#fff; border:1px solid #e5e7eb; border-radius:18px; padding:18px; text-align:center; box-shadow: 0 6px 18px rgba(0,0,0,.04); }
.sha-single-photo { width:260px; max-width:70%; margin:10px auto 16px; border-radius:18px; overflow:hidden; box-shadow: 0 8px 24px rgba(0,0,0,.06); }
.sha-single-photo img { width:100%; height:auto; display:block; object-fit:cover; }
.sha-title { margin:6px 0 10px; }
.sha-row { margin:6px 0; }
