/* Shamika Rich Hub — member app */
:root {
	--srh-brand: #7a2e5c;
	--srh-accent: #d9a441;
	--srh-bg: #faf7f5;
	--srh-surface: #ffffff;
	--srh-text: #2a2228;
	--srh-muted: #6f6570;
	--srh-line: #ece5e8;
	--srh-radius: 16px;
	--srh-nav-h: 68px;
}
@media (prefers-color-scheme: dark) {
	:root { --srh-bg: #161214; --srh-surface: #211b1f; --srh-text: #f3edf0; --srh-muted: #b4a8b0; --srh-line: #352c32; }
}

body.srh-body { margin: 0; background: var(--srh-bg); }
.srh, .srh * { box-sizing: border-box; }
.srh {
	font: 16px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
	color: var(--srh-text); background: var(--srh-bg);
	min-height: 100vh; min-height: 100dvh;
}
.srh a { color: var(--srh-brand); }
.srh h1, .srh h2, .srh h3 { font-family: Georgia, "Times New Roman", serif; font-weight: 600; margin: 0; line-height: 1.2; color: var(--srh-text); }

/* Header */
.srh-top {
	position: sticky; top: 0; z-index: 20; display: flex; align-items: center; gap: 12px;
	padding: calc(10px + env(safe-area-inset-top)) 16px 10px; background: var(--srh-surface); border-bottom: 1px solid var(--srh-line);
}
.srh-brand { display: flex; align-items: center; gap: 10px; text-decoration: none; font-family: Georgia, serif; font-size: 19px; color: var(--srh-text) !important; margin-right: auto; }
.srh-brand img { width: 32px; height: 32px; border-radius: 8px; object-fit: cover; }
.srh-avatar img { width: 36px; height: 36px; border-radius: 50%; display: block; }
.srh-install { border: 1px solid var(--srh-brand); color: var(--srh-brand); background: transparent; border-radius: 999px; padding: 6px 12px; font-size: 13px; cursor: pointer; }

.srh-main { max-width: 960px; margin: 0 auto; padding: 20px 16px calc(var(--srh-nav-h) + 32px + env(safe-area-inset-bottom)); }

/* Bottom navigation (top tabs on desktop) */
.srh-nav {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 30; display: flex; justify-content: space-around;
	background: var(--srh-surface); border-top: 1px solid var(--srh-line); padding: 6px 4px calc(6px + env(safe-area-inset-bottom));
}
.srh-nav a { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 6px 0; font-size: 11px; text-decoration: none; color: var(--srh-muted) !important; border-radius: 12px; }
.srh-nav svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linejoin: round; stroke-linecap: round; }
.srh-nav a[aria-current] { color: var(--srh-brand) !important; font-weight: 600; }
.srh-nav a[aria-current] svg { stroke-width: 2.3; }
@media (min-width: 900px) {
	.srh-nav { position: sticky; top: 57px; bottom: auto; border-top: 0; border-bottom: 1px solid var(--srh-line); justify-content: center; gap: 8px; padding: 6px; }
	.srh-nav a { flex: 0 0 auto; flex-direction: row; gap: 8px; padding: 8px 16px; font-size: 14px; }
	.srh-nav svg { width: 20px; height: 20px; }
	.srh-main { padding-bottom: 48px; }
}

/* Type + layout */
.srh-hero { padding: 8px 0 4px; }
.srh-hero h1 { font-size: 32px; }
.srh-eyebrow { margin: 0 0 4px; color: var(--srh-accent); font-weight: 600; letter-spacing: .04em; text-transform: uppercase; font-size: 12px; }
.srh-title { font-size: 28px; margin: 4px 0 12px !important; }
.srh-h { display: flex; justify-content: space-between; align-items: baseline; font-size: 20px; margin: 28px 0 12px !important; }
.srh-h a { font: 500 14px/1 -apple-system, sans-serif; text-decoration: none; }
.srh-meta { color: var(--srh-muted); font-size: 14px; margin: 4px 0; }
.srh-back { display: inline-block; margin-bottom: 8px; text-decoration: none; font-size: 14px; }
.srh-row { display: flex; gap: 10px; flex-wrap: wrap; margin: 20px 0; }
.srh-prose { margin: 16px 0; }
.srh-prose img { max-width: 100%; height: auto; border-radius: 12px; }

/* Buttons */
.srh-btn, .srh .button, .srh button.button {
	display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; padding: 10px 20px;
	background: var(--srh-brand); color: #fff !important; border: 0; border-radius: 999px; font: 600 15px/1 inherit; text-decoration: none; cursor: pointer; white-space: nowrap;
}
.srh-btn:hover { filter: brightness(1.08); }
.srh-btn:disabled { opacity: .6; cursor: default; }
.srh-btn--ghost { background: transparent; color: var(--srh-brand) !important; box-shadow: inset 0 0 0 1.5px var(--srh-brand); }
.srh-btn--live { background: #c0392b; }
.srh-btn--live::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #fff; animation: srh-pulse 1.4s infinite; }
@keyframes srh-pulse { 50% { opacity: .3; } }

/* Cards */
.srh-card { background: var(--srh-surface); border: 1px solid var(--srh-line); border-radius: var(--srh-radius); padding: 14px; text-decoration: none; color: inherit !important; display: block; }
.srh-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
.srh-tile { display: flex; flex-direction: column; gap: 8px; }
.srh-tile h3 { font-size: 18px; }
.srh-tile .srh-btn { align-self: flex-start; margin-top: auto; }
.srh-cover { aspect-ratio: 16/9; border-radius: 12px; background: center/cover no-repeat; margin: -2px -2px 4px; }
.srh-cover--blank, .srh-banner.srh-cover--blank { background: linear-gradient(135deg, var(--srh-brand), var(--srh-accent)); }
.srh-banner { aspect-ratio: 3/1; border-radius: var(--srh-radius); background: center/cover no-repeat; margin-bottom: 14px; }

.srh-class { display: flex; align-items: center; gap: 14px; margin-bottom: 10px; }
.srh-when { flex: 0 0 56px; text-align: center; border-radius: 12px; background: color-mix(in srgb, var(--srh-brand) 10%, transparent); padding: 6px 0; }
.srh-when b { display: block; font-size: 12px; text-transform: uppercase; color: var(--srh-brand); }
.srh-when span { font: 600 22px/1.1 Georgia, serif; }
.srh-class-body { flex: 1; min-width: 0; }
.srh-class-body h3 { font-size: 17px; }
@media (max-width: 520px) { .srh-class { flex-wrap: wrap; } .srh-class .srh-btn { width: 100%; } }

.srh-empty { text-align: center; padding: 40px 20px; background: var(--srh-surface); border: 1px dashed var(--srh-line); border-radius: var(--srh-radius); margin: 16px 0; }
.srh-empty h2 { margin-bottom: 8px; }
.srh-count { font: 600 26px/1.2 Georgia, serif; color: var(--srh-brand); }

.srh-progress { height: 6px; background: var(--srh-line); border-radius: 99px; overflow: hidden; }
.srh-progress span { display: block; height: 100%; background: var(--srh-accent); }

/* Community */
.srh-community-head h1 { font-size: 26px; }
.srh-tabs { display: flex; gap: 6px; margin: 14px 0; border-bottom: 1px solid var(--srh-line); }
.srh-tabs button { background: none; border: 0; padding: 10px 14px; font: 600 15px inherit; color: var(--srh-muted); border-bottom: 2.5px solid transparent; cursor: pointer; }
.srh-tabs button[aria-selected="true"] { color: var(--srh-brand); border-color: var(--srh-brand); }

.srh-chat { display: flex; flex-direction: column; background: var(--srh-surface); border: 1px solid var(--srh-line); border-radius: var(--srh-radius); height: calc(100dvh - 330px); min-height: 380px; overflow: hidden; }
.srh-pinned { padding: 10px 14px; background: color-mix(in srgb, var(--srh-accent) 15%, transparent); font-size: 14px; border-bottom: 1px solid var(--srh-line); }
.srh-feed { flex: 1; overflow-y: auto; padding: 14px; display: flex; flex-direction: column; gap: 14px; }
.srh-msg { display: flex; gap: 10px; align-items: flex-start; }
.srh-msg-av { width: 34px; height: 34px; border-radius: 50%; flex: 0 0 34px; }
.srh-msg-body { min-width: 0; flex: 1; }
.srh-msg-head { display: flex; gap: 8px; align-items: baseline; font-size: 14px; }
.srh-msg-head time { color: var(--srh-muted); font-size: 12px; }
.srh-badge { background: var(--srh-brand); color: #fff; font-size: 10px; padding: 1px 6px; border-radius: 99px; text-transform: uppercase; letter-spacing: .04em; }
.srh-msg-text { overflow-wrap: anywhere; }
.srh-quote { font-size: 13px; color: var(--srh-muted); border-left: 3px solid var(--srh-accent); padding-left: 8px; margin: 2px 0 4px; }
.srh-msg-actions { display: flex; gap: 12px; opacity: 0; transition: opacity .15s; }
.srh-msg:hover .srh-msg-actions, .srh-msg:focus-within .srh-msg-actions { opacity: 1; }
@media (hover: none) { .srh-msg-actions { opacity: .7; } }
.srh-msg-actions button { background: none; border: 0; padding: 2px 0; font-size: 12px; color: var(--srh-muted); cursor: pointer; }
.srh-compose { display: flex; flex-wrap: wrap; gap: 8px; padding: 10px; border-top: 1px solid var(--srh-line); align-items: flex-end; }
.srh-compose textarea { flex: 1; resize: none; border: 1px solid var(--srh-line); border-radius: 20px; padding: 11px 14px; font: inherit; background: var(--srh-bg); color: var(--srh-text); min-height: 44px; }
.srh-replying { flex-basis: 100%; font-size: 13px; color: var(--srh-muted); }
.srh-replying button { background: none; border: 0; color: var(--srh-brand); cursor: pointer; }

/* Classroom */
.srh-room { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; min-height: 260px; background: #1b1418; border-radius: var(--srh-radius); padding: 20px; margin: 14px 0; color: #fff; }
.srh-room .srh-meta { color: #cdbfc8; }
.srh-room.is-live { padding: 0; height: calc(100dvh - 240px); min-height: 420px; overflow: hidden; }
.srh-room.is-live iframe { border: 0; }

.srh-video { position: relative; aspect-ratio: 16/9; border-radius: var(--srh-radius); overflow: hidden; background: #000; margin: 0 0 16px; }
.srh-video iframe, .srh-video video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

.srh-lessons { list-style: none; padding: 0; margin: 16px 0; counter-reset: l; }
.srh-lessons li a { display: flex; align-items: center; gap: 12px; padding: 14px; border-bottom: 1px solid var(--srh-line); text-decoration: none; color: var(--srh-text) !important; }
.srh-check { width: 22px; height: 22px; border-radius: 50%; border: 2px solid var(--srh-line); flex: 0 0 22px; }
.srh-lessons .is-done .srh-check { background: var(--srh-accent); border-color: var(--srh-accent); box-shadow: inset 0 0 0 4px var(--srh-surface); }

/* Login / account */
.srh-login { max-width: 420px; margin: 40px auto; background: var(--srh-surface); border: 1px solid var(--srh-line); border-radius: var(--srh-radius); padding: 28px; }
.srh-login h1 { font-size: 30px; }
.srh-login input[type=text], .srh-login input[type=password] { width: 100%; padding: 12px; border: 1px solid var(--srh-line); border-radius: 10px; font: inherit; background: var(--srh-bg); color: var(--srh-text); }
.srh-login input[type=submit] { width: 100%; min-height: 46px; background: var(--srh-brand); color: #fff; border: 0; border-radius: 999px; font: 600 16px inherit; cursor: pointer; }
.srh-me { text-align: center; }
.srh-me img { border-radius: 50%; }
.srh-list { list-style: none; padding: 0; background: var(--srh-surface); border: 1px solid var(--srh-line); border-radius: var(--srh-radius); overflow: hidden; }
.srh-list a { display: block; padding: 15px 16px; border-bottom: 1px solid var(--srh-line); text-decoration: none; color: var(--srh-text) !important; }
.srh-list li:last-child a { border-bottom: 0; }

/* WooCommerce inside the app */
.srh-shop ul.products { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 14px; margin: 0; padding: 0; }
.srh-shop ul.products::before, .srh-shop ul.products::after { display: none !important; }
.srh-shop ul.products li.product { width: auto !important; margin: 0 !important; float: none !important; background: var(--srh-surface); border: 1px solid var(--srh-line); border-radius: var(--srh-radius); padding: 10px; list-style: none; }
.srh-shop ul.products li.product img { border-radius: 10px; }
.srh-shop .woocommerce-loop-product__title { font-size: 15px !important; color: var(--srh-text); }

/* Prayer Room */
.srh-prayer-card { display: flex; align-items: center; gap: 14px; margin: 14px 0; }
.srh-prayer-card > div { flex: 1; min-width: 0; }
.srh-prayer-card h3 { margin: 0 0 2px; }
.srh-prayer-dot { width: 12px; height: 12px; border-radius: 50%; background: #2ecc71; box-shadow: 0 0 0 4px rgba(46,204,113,.2); flex: none; }
.srh-gather { margin: 14px 0; display: flex; flex-direction: column; gap: 8px; }
.srh-gather h3 { margin: 0; }
.srh-gather textarea { width: 100%; border-radius: 10px; padding: 10px; font: inherit; background: transparent; color: inherit; border: 1px solid var(--srh-line); }
.srh-gather .srh-btn { align-self: flex-start; }
.srh-prayer-times { display: grid; gap: 10px; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
.srh-prayer-times .srh-card h3 { margin: 4px 0 0; }
.srh-dialin p:first-child { font-size: 1.1em; font-weight: 600; margin-top: 0; }

/* =====================================================================
 * Shamika Rich Global theme — matches shamikarich.com
 * Dark walnut + rose gold, Cinzel headings, Montserrat body.
 * ===================================================================== */
:root, :root .srh {
	--srh-bg: #1d1714;
	--srh-surface: #2a221e;
	--srh-surface-2: #33291f;
	--srh-text: #f6f1e6;
	--srh-muted: #bfaea6;
	--srh-line: rgba(217, 160, 143, .28);
	--srh-ink: #2a0d16;
	--srh-rg: linear-gradient(180deg, #f6d3c6 0%, #d9a08f 55%, #a8645e 100%);
	--srh-rg-text: linear-gradient(100deg, #9e5b55 0%, #f2c4b3 30%, #c98a7d 55%, #f6d3c6 75%, #a8645e 100%);
	--srh-rose: #e3ad9c;
	--srh-radius: 4px;
	--srh-display: "Cinzel", Georgia, serif;
	--srh-serif: "Playfair Display", Georgia, serif;
	--srh-sans: "Montserrat", -apple-system, "Segoe UI", sans-serif;
}
body.srh-body { background: var(--srh-bg); }
.srh {
	font: 15px/1.6 var(--srh-sans); color: var(--srh-text);
	background:
		radial-gradient(1200px 500px at 50% -200px, rgba(217,160,143,.10), transparent 70%),
		repeating-linear-gradient(90deg, rgba(255,255,255,.012) 0 2px, transparent 2px 7px),
		var(--srh-bg);
}
.srh a { color: var(--srh-rose); }
.srh h1, .srh h2, .srh h3 { font-family: var(--srh-display); font-weight: 600; letter-spacing: .02em; color: var(--srh-text); }
.srh h1, .srh .srh-title {
	background: var(--srh-rg-text); -webkit-background-clip: text; background-clip: text; color: transparent;
}
.srh h3 { font-family: var(--srh-serif); letter-spacing: 0; }

/* Header: dark wood bar with a rose-gold rule, like the site */
.srh-top {
	background: linear-gradient(180deg, #2b2320, #231c19); border-bottom: 1px solid rgba(217,160,143,.45);
	box-shadow: 0 6px 20px rgba(0,0,0,.35);
}
.srh-brand { font-family: var(--srh-display); color: var(--srh-text) !important; }
.srh-brand--logo img { width: auto; height: 42px; border-radius: 0; object-fit: contain; }
.srh-avatar img { box-shadow: 0 0 0 1.5px var(--srh-rose); }
.srh-install { border-color: var(--srh-rose); color: var(--srh-rose); border-radius: 3px; font-family: var(--srh-display); font-weight: 600; letter-spacing: .06em; }

/* Bottom / top navigation */
.srh-nav { background: rgba(29,23,20,.96); backdrop-filter: blur(10px); border-top: 1px solid var(--srh-line); }
.srh-nav a { font-family: var(--srh-serif); font-size: 11.5px; color: #cdbdb4 !important; }
.srh-nav a[aria-current] { color: var(--srh-rose) !important; font-weight: 600; }
@media (min-width: 900px) {
	.srh-nav { top: 63px; border-bottom: 1px solid var(--srh-line); }
	.srh-nav a { font-size: 15px; }
}

/* Home hero with photo, eyebrow, gradient headline and crown divider */
.srh-hero--photo {
	position: relative; overflow: hidden; margin: -20px -16px 8px; padding: 56px 24px 40px; text-align: left;
	background: linear-gradient(90deg, rgba(20,15,13,.92) 0%, rgba(20,15,13,.70) 55%, rgba(20,15,13,.35) 100%), var(--srh-hero, none) center/cover no-repeat, #231c19;
	border-bottom: 1px solid var(--srh-line);
}
@media (min-width: 960px) { .srh-hero--photo { margin: -20px calc(480px - 50vw) 8px; padding-left: calc(50vw - 456px); padding-right: calc(50vw - 456px); } }
.srh .srh-eyebrow { font: 500 11.5px/1.4 var(--srh-sans); letter-spacing: .32em; text-transform: uppercase; color: var(--srh-rose); margin: 0 0 12px; }
.srh-hero--photo h1 { font-size: clamp(34px, 7vw, 56px); line-height: 1.08; font-weight: 600; }
.srh-divider { display: flex; align-items: center; gap: 12px; width: 150px; margin: 18px 0 14px; color: var(--srh-rose); font-size: 14px; }
.srh-divider::before, .srh-divider::after { content: ""; flex: 1; height: 1px; background: var(--srh-rose); opacity: .7; }
.srh-hero-sub { margin: 0; color: #e9ddd5; max-width: 32em; }
.srh-hero--login { text-align: center; }
.srh-hero--login .srh-divider { margin-left: auto; margin-right: auto; }

/* Section headings */
.srh-title { font-size: clamp(26px, 5vw, 36px); margin: 10px 0 14px !important; }
.srh-h { font-family: var(--srh-display) !important; font-size: 17px; letter-spacing: .08em; text-transform: uppercase; color: var(--srh-text) !important; margin: 32px 0 14px !important; padding-bottom: 10px; border-bottom: 1px solid var(--srh-line); }
.srh-h a { font: 500 11px/1 var(--srh-sans); letter-spacing: .2em; text-transform: uppercase; color: var(--srh-rose) !important; }
.srh-meta { color: var(--srh-muted); }
.srh-back { color: var(--srh-rose) !important; font-family: var(--srh-display); letter-spacing: .06em; font-size: 13px; }

/* Buttons: rose-gold bar like "GET IN TOUCH", outline like "JOIN WOMAN IGNITED" */
.srh-btn, .srh .button, .srh button.button, .srh-login input[type=submit] {
	background: var(--srh-rg) !important; color: var(--srh-ink) !important; border: 0; border-radius: 3px;
	font: 700 13px/1 var(--srh-display) !important; letter-spacing: .14em; text-transform: uppercase;
	padding: 14px 24px; box-shadow: 0 8px 22px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.45);
}
.srh-btn:hover { filter: brightness(1.06); }
.srh-btn--ghost { background: transparent !important; color: var(--srh-text) !important; box-shadow: inset 0 0 0 1px rgba(246,241,230,.75); }
.srh-btn--ghost:hover { background: rgba(246,241,230,.06) !important; }
.srh-btn--live::before { background: var(--srh-ink); }

/* Cards: dark panels with a thin rose-gold edge */
.srh-card, .srh-empty, .srh-login, .srh-list, .srh-chat, .srh-shop ul.products li.product {
	background: linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,0)), var(--srh-surface);
	border: 1px solid var(--srh-line); border-radius: var(--srh-radius);
}
.srh-card { transition: border-color .2s, transform .2s; }
a.srh-card:hover { border-color: rgba(217,160,143,.6); transform: translateY(-2px); }
.srh-cover { border-radius: 2px; }
.srh-cover--blank, .srh-banner.srh-cover--blank { background: linear-gradient(135deg, #3a2a24, #6b4339 50%, #c98a7d); }
.srh-tile h3 { font-size: 19px; }
.srh-when { background: transparent; border: 1px solid var(--srh-line); border-radius: 2px; }
.srh-when b { color: var(--srh-rose); letter-spacing: .14em; font-family: var(--srh-sans); font-weight: 600; }
.srh-when span { font-family: var(--srh-display); color: var(--srh-text); }
.srh-count { font-family: var(--srh-display); color: var(--srh-rose); }
.srh-progress span { background: var(--srh-rg); }

/* Community + chat */
.srh-tabs { border-color: var(--srh-line); }
.srh-tabs button { font: 600 13px var(--srh-display); letter-spacing: .1em; text-transform: uppercase; color: var(--srh-muted); }
.srh-tabs button[aria-selected="true"] { color: var(--srh-rose); border-color: var(--srh-rose); }
.srh-badge { background: var(--srh-rg); color: var(--srh-ink); font-weight: 700; }
.srh-pinned { background: rgba(217,160,143,.12); }
.srh-quote { border-left-color: var(--srh-rose); }
.srh-compose textarea, .srh-gather textarea, .srh-login input[type=text], .srh-login input[type=password] {
	background: #1a1411; color: var(--srh-text); border: 1px solid var(--srh-line); border-radius: 3px;
}
.srh-compose textarea:focus, .srh-gather textarea:focus, .srh-login input:focus { outline: none; border-color: var(--srh-rose); box-shadow: 0 0 0 3px rgba(217,160,143,.18); }

/* Classroom + Prayer Room */
.srh-room { background: radial-gradient(600px 300px at 50% 0%, rgba(217,160,143,.14), transparent 70%), #161110; border: 1px solid var(--srh-line); border-radius: var(--srh-radius); }
.srh-prayer-card { border-color: rgba(217,160,143,.5); }
.srh-prayer-card h3 { font-family: var(--srh-display); }
.srh-prayer-dot { background: var(--srh-rose); box-shadow: 0 0 0 4px rgba(217,160,143,.22); animation: srh-pulse 2s infinite; }
.srh-dialin p:first-child { font-family: var(--srh-display); color: var(--srh-rose); letter-spacing: .04em; }

/* Lessons + login + account */
.srh-lessons li a { border-color: var(--srh-line); }
.srh-lessons .is-done .srh-check { background: var(--srh-rose); border-color: var(--srh-rose); }
.srh-login { margin-top: 24px; }
.srh-login h2 { font-size: 22px; margin-bottom: 4px; }
.srh-list a { border-color: var(--srh-line); }
.srh-shop .woocommerce-loop-product__title { font-family: var(--srh-serif); color: var(--srh-text) !important; }
.srh-shop .price { color: var(--srh-rose) !important; }
.srh { overflow-x: clip; }
.srh-brand--logo img { mix-blend-mode: screen; }
@media (min-width: 900px) {
	.srh { display: flex; flex-direction: column; }
	.srh-top { order: 0; } .srh-nav { order: 1; } .srh-main { order: 2; width: 100%; }
}

/* Prayer Room / Wall tabs */
.srh-pills { display: flex; gap: 8px; margin: 4px 0 6px; flex-wrap: wrap; }
.srh-pills a { padding: 9px 18px; border: 1px solid var(--srh-line); border-radius: 3px; text-decoration: none; color: var(--srh-text) !important; font: 600 12px/1 var(--srh-display); letter-spacing: .12em; text-transform: uppercase; }
.srh-pills a[aria-current] { background: var(--srh-rg); color: var(--srh-ink) !important; border-color: transparent; }

/* The Wall */
.srh-wall-icon { color: var(--srh-rose); font-size: 18px; width: 12px; text-align: center; flex: none; }
.srh-wall-compose { display: flex; flex-direction: column; gap: 10px; margin: 14px 0 18px; }
.srh-wall-compose textarea, .srh-wall-replyform textarea { width: 100%; background: #1a1411; color: var(--srh-text); border: 1px solid var(--srh-line); border-radius: 3px; padding: 12px; font: inherit; resize: vertical; }
.srh-wall-compose textarea:focus, .srh-wall-replyform textarea:focus { outline: none; border-color: var(--srh-rose); box-shadow: 0 0 0 3px rgba(217,160,143,.18); }
.srh-wall-compose .srh-btn { align-self: flex-end; }
.srh-wall-feed { display: flex; flex-direction: column; gap: 14px; }
.srh-wall-post { padding: 16px 18px; }
.srh-wall-post.is-pinned { border-left: 3px solid var(--srh-rose); }
.srh-wall-head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 14px; }
.srh-wall-head img { width: 30px; height: 30px; border-radius: 50%; box-shadow: 0 0 0 1px var(--srh-line); }
.srh-wall-head b { font-family: var(--srh-serif); font-size: 15px; }
.srh-wall-head time { margin-left: auto; color: var(--srh-muted); font-size: 12px; }
.srh-badge--pin { background: transparent !important; color: var(--srh-rose) !important; box-shadow: inset 0 0 0 1px var(--srh-rose); }
.srh-wall-text { margin: 10px 0 4px; overflow-wrap: anywhere; line-height: 1.7; }
.srh-wall-acts { display: flex; gap: 14px; margin: 4px 0; }
.srh-wall-acts button { background: none; border: 0; padding: 0; color: var(--srh-muted); font: 500 12px var(--srh-sans); letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.srh-wall-acts button:hover { color: var(--srh-rose); }
.srh-wall-replies { margin: 12px 0 0 14px; padding-left: 14px; border-left: 1px solid var(--srh-line); display: flex; flex-direction: column; gap: 12px; }
.srh-wall-reply .srh-wall-text { margin: 6px 0 2px; font-size: 14.5px; }
.srh-wall-replyform { display: flex; gap: 8px; margin-top: 12px; align-items: flex-end; }
.srh-wall-replyform textarea { min-height: 44px; resize: none; }
.srh-wall-replyform .srh-btn { padding: 12px 16px; }

/* Code sign-in */
.srh-code-form label { display: block; font: 600 12px var(--srh-display); letter-spacing: .14em; text-transform: uppercase; color: var(--srh-rose); margin: 14px 0 8px; }
.srh-code-row { display: flex; gap: 8px; }
.srh-code-row input { flex: 1; min-width: 0; background: #1a1411; color: var(--srh-text); border: 1px solid var(--srh-line); border-radius: 3px; padding: 12px; font: 600 20px/1 ui-monospace, "SF Mono", Menlo, monospace; letter-spacing: .14em; text-transform: uppercase; text-align: center; }
.srh-code-row input:focus { outline: none; border-color: var(--srh-rose); }
.srh-error { color: #f0a8a0; margin: 8px 0 0; font-size: 14px; }
.srh-or { display: flex; align-items: center; gap: 10px; color: var(--srh-muted); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; margin: 22px 0 6px; }
.srh-or::before, .srh-or::after { content: ""; flex: 1; height: 1px; background: var(--srh-line); }

/* Members screen */
.srh-flash { background: rgba(217,160,143,.14); border: 1px solid var(--srh-line); border-left: 3px solid var(--srh-rose); padding: 10px 14px; border-radius: 3px; margin: 10px 0; }
.srh-usage { margin: 16px 0; padding: 16px 18px; }
.srh-usage-top { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; flex-wrap: wrap; margin-bottom: 10px; }
.srh-usage h3 { font-family: var(--srh-display); font-size: 22px; margin: 0; }
.srh-usage .srh-eyebrow { margin-bottom: 4px; }
.srh-usage-limit { display: flex; gap: 8px; align-items: center; font-size: 13px; color: var(--srh-muted); }
.srh-usage-limit input { width: 64px; margin-left: 6px; background: #1a1411; color: var(--srh-text); border: 1px solid var(--srh-line); border-radius: 3px; padding: 6px; }
.srh-usage-limit .srh-btn { padding: 8px 12px; min-height: 0; }
.srh-usage .srh-progress { height: 8px; }
.srh-usage.is-warn .srh-progress span { background: linear-gradient(90deg, #d9a08f, #e8b04a); }
.srh-usage.is-full { border-color: #c0605a; }
.srh-usage.is-full .srh-progress span { background: #c0605a; }
.srh-add { padding: 16px 18px; margin-bottom: 16px; }
.srh-add h3 { font-family: var(--srh-display); margin: 0 0 10px; }
.srh-add-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; }
.srh-add label { display: flex; flex-direction: column; gap: 4px; font-size: 12px; color: var(--srh-muted); letter-spacing: .04em; }
.srh-add input, .srh-add select, .srh-members select { background: #1a1411; color: var(--srh-text); border: 1px solid var(--srh-line); border-radius: 3px; padding: 10px; font: inherit; }
.srh-add-comms { display: flex; flex-wrap: wrap; gap: 6px 16px; align-items: center; margin: 12px 0; }
.srh-add-comms label { flex-direction: row; align-items: center; gap: 6px; font-size: 14px; color: var(--srh-text); }
.srh-add > .srh-btn { margin-top: 4px; }
.srh-members { padding: 6px 14px; overflow-x: auto; }
.srh-members table { width: 100%; border-collapse: collapse; font-size: 14px; }
.srh-members th { text-align: left; font: 600 11px var(--srh-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--srh-muted); padding: 12px 8px; border-bottom: 1px solid var(--srh-line); }
.srh-members td { padding: 12px 8px; border-bottom: 1px solid var(--srh-line); vertical-align: middle; }
.srh-members tr:last-child td { border-bottom: 0; }
.srh-members td small { display: block; color: var(--srh-muted); font-size: 12px; }
.srh-members form { display: inline; margin: 0; }
.srh-members .is-removed td { opacity: .45; }
.srh-members .is-removed .srh-acts { opacity: 1; }
.srh-code { font: 600 14px ui-monospace, "SF Mono", Menlo, monospace; letter-spacing: .1em; color: var(--srh-text); background: none; }
.srh-invite, .srh-acts { white-space: nowrap; }
.srh-acts { text-align: right; }
.srh-mini { display: inline-block; background: transparent; color: var(--srh-text) !important; border: 1px solid var(--srh-line); border-radius: 99px; padding: 5px 12px; font: 500 12px var(--srh-sans); cursor: pointer; text-decoration: none; margin: 2px; }
.srh-mini:hover { border-color: var(--srh-rose); }
.srh-mini--solid { background: var(--srh-rg); color: var(--srh-ink) !important; border-color: transparent; font-weight: 700; }
.srh-mini--danger { color: #f0a8a0 !important; }
.srh-tag { font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--srh-rose); border: 1px solid var(--srh-line); border-radius: 99px; padding: 1px 6px; margin-left: 4px; }
@media (max-width: 760px) {
	.srh-members { padding: 0; }
	.srh-members thead { display: none; }
	.srh-members tr { display: grid; grid-template-columns: 1fr auto; gap: 6px 10px; padding: 14px; border-bottom: 1px solid var(--srh-line); }
	.srh-members td { padding: 0; border: 0; }
	.srh-members td[data-label="Code"] { text-align: right; }
	.srh-members td[data-label="Last seen"] { text-align: right; }
	.srh-members .srh-acts { grid-column: 1 / -1; text-align: left; }
}

/* Guard against theme form/table styles */
.srh .srh-members table, .srh .srh-members thead, .srh .srh-members tbody, .srh .srh-members tr, .srh .srh-members th, .srh .srh-members td { background: transparent !important; border-left: 0 !important; border-right: 0 !important; border-top: 0 !important; color: var(--srh-text); }
.srh .srh-members th, .srh .srh-members td { border-bottom: 1px solid var(--srh-line) !important; }
.srh .srh-members table { border: 0 !important; margin: 0 !important; }
.srh input:not([type=checkbox]):not([type=radio]):not([type=submit]), .srh select, .srh textarea {
	background: #1a1411 !important; color: var(--srh-text) !important; border: 1px solid var(--srh-line) !important; border-radius: 3px !important;
	padding: 10px 12px !important; font-family: var(--srh-sans) !important; font-size: 15px !important; line-height: 1.4 !important; box-shadow: none; height: auto !important; min-height: 44px;
}
.srh .srh-code-row input { font: 600 20px/1 ui-monospace, "SF Mono", Menlo, monospace !important; letter-spacing: .14em; text-align: center; }
.srh .srh-usage-limit input { width: 72px !important; min-height: 36px; padding: 6px 8px !important; }
.srh input::placeholder, .srh textarea::placeholder { color: #8f7f78 !important; opacity: 1; }
.srh input:focus, .srh select:focus, .srh textarea:focus { outline: none !important; border-color: var(--srh-rose) !important; box-shadow: 0 0 0 3px rgba(217,160,143,.18) !important; }
.srh select option { background: #1a1411; color: var(--srh-text); }
.srh b, .srh strong { color: inherit !important; } .srh .srh-members td b { color: var(--srh-text) !important; font-weight: 600; }

/* =====================================================================
 * Lighter look: ivory + blush with rose gold, chocolate only in the top bar
 * ===================================================================== */
:root, :root .srh {
	--srh-bg: #faf6f2;
	--srh-surface: #ffffff;
	--srh-text: #3b2a2a;
	--srh-muted: #8a7670;
	--srh-line: #ead9d1;
	--srh-rose: #b5786a;
	--srh-field: #fdfaf8;
}
.srh {
	background: radial-gradient(1000px 420px at 50% -160px, rgba(242,196,179,.35), transparent 70%), var(--srh-bg) !important;
	color: var(--srh-text);
}
.srh h1, .srh .srh-title { background: linear-gradient(100deg, #8a4a44 0%, #c98a7d 45%, #a8645e 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.srh h2, .srh h3, .srh-h { color: var(--srh-text) !important; }

/* Cards: white with a blush edge and soft shadow */
.srh-card, .srh-empty, .srh-login, .srh-list, .srh-chat, .srh-shop ul.products li.product {
	background: #fff !important; border: 1px solid var(--srh-line) !important; box-shadow: 0 6px 18px rgba(120, 70, 60, .06);
}
a.srh-card:hover { border-color: #d9a08f !important; }
.srh-cover--blank, .srh-banner.srh-cover--blank { background: linear-gradient(135deg, #f6d3c6, #e3ad9c 55%, #c98a7d) !important; }
.srh-when span, .srh-wall-head b, .srh-members td b { color: var(--srh-text) !important; }

/* Bottom / top nav: light */
.srh-nav { background: rgba(255,255,255,.96) !important; border-color: var(--srh-line) !important; }
.srh-nav a { color: #8a7670 !important; }
.srh-nav a[aria-current] { color: #a8645e !important; }

/* Buttons */
.srh-btn { box-shadow: 0 6px 16px rgba(168,100,94,.25), inset 0 1px 0 rgba(255,255,255,.5); }
.srh-btn--ghost { color: #8a4a44 !important; box-shadow: inset 0 0 0 1px #c98a7d !important; }
.srh-btn--ghost:hover { background: rgba(242,196,179,.18) !important; }
.srh-pills a { color: var(--srh-text) !important; background: #fff; }
.srh-mini { color: var(--srh-text) !important; background: #fff; }
.srh-mini--danger { color: #b0443c !important; }

/* Fields */
.srh input:not([type=checkbox]):not([type=radio]):not([type=submit]), .srh select, .srh textarea,
.srh-compose textarea, .srh-gather textarea, .srh-wall-compose textarea, .srh-wall-replyform textarea, .srh-code-row input, .srh-usage-limit input {
	background: var(--srh-field) !important; color: var(--srh-text) !important; border-color: var(--srh-line) !important;
}
.srh input::placeholder, .srh textarea::placeholder { color: #b3a19a !important; }
.srh select option { background: #fff; color: var(--srh-text); }

/* Rooms stay dark so video looks right, but softer */
.srh-room { background: radial-gradient(600px 300px at 50% 0%, rgba(242,196,179,.25), transparent 70%), #2b2220 !important; border-color: transparent !important; }

/* Misc */
.srh-flash, .srh-pinned { background: #fbeee8 !important; }
.srh-error { color: #b0443c; }
.srh-badge--pin { color: #a8645e !important; }
.srh-hero--photo { border-bottom: 0; }
.srh-hero--photo .srh-eyebrow { color: #f2c4b3; }
.srh-hero--photo h1 { background: linear-gradient(100deg, #9e5b55 0%, #f2c4b3 30%, #c98a7d 55%, #f6d3c6 75%, #a8645e 100%); -webkit-background-clip: text; background-clip: text; }
.srh-usage.is-warn .srh-progress span { background: linear-gradient(90deg, #e3ad9c, #d9a441); }

/* Header: menu button + get-app link */
.srh-menu-btn { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 3px; border: 1px solid rgba(217,160,143,.45); }
.srh-menu-btn svg { width: 22px; height: 22px; stroke: #f2c4b3; stroke-width: 1.8; stroke-linecap: round; fill: none; }
.srh-top .srh-install { text-decoration: none; padding: 8px 12px; font-size: 11px; }
.srh-top .srh-install[hidden] { display: none; }
@media (max-width: 420px) { .srh-top .srh-install { padding: 7px 9px; letter-spacing: .04em; } }

/* Hero calls to action (like the website) */
.srh-hero-ctas { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.srh-btn--light { color: #f6f1e6 !important; box-shadow: inset 0 0 0 1px rgba(246,241,230,.8) !important; }
.srh-btn--light:hover { background: rgba(246,241,230,.08) !important; }

/* Explore the website */
.srh-explore { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; }
.srh-explore-tile { padding: 0 !important; overflow: hidden; display: flex !important; flex-direction: column; }
.srh-explore-img { display: block; aspect-ratio: 4/3; background: center/cover no-repeat; }
.srh-explore-name { padding: 12px 12px 14px; font: 600 14px/1.3 var(--srh-display); letter-spacing: .04em; color: var(--srh-text); }
.srh-tile .srh-eyebrow { color: #a8645e; margin: 2px 0 0; letter-spacing: .2em; font-size: 10.5px; }

/* Menu screen */
.srh-menu-list a { display: flex !important; justify-content: space-between; align-items: center; font-family: var(--srh-serif); font-size: 16px; }
.srh-menu-list a span { color: #c98a7d; font-size: 22px; line-height: 1; }

/* Install page */
.srh-install-page { max-width: 560px; margin: 10px auto 0; text-align: center; }
.srh-install-icon { width: 96px; height: 96px; border-radius: 22px; box-shadow: 0 10px 28px rgba(60,30,25,.25); margin: 8px auto 18px; display: block; }
.srh-install-page .srh-title { margin-top: 2px !important; }
.srh-install-auto, .srh-install-done { margin: 22px 0; }
.srh-btn--big { font-size: 15px !important; padding: 18px 34px; }
.srh-steps { text-align: left; background: #fff; border: 1px solid var(--srh-line); border-radius: 4px; padding: 18px 20px; margin: 22px 0; box-shadow: 0 6px 18px rgba(120,70,60,.06); }
.srh-steps h3 { font-family: var(--srh-display) !important; margin: 0 0 12px; }
.srh-steps ol { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.srh-steps li { display: flex; gap: 12px; align-items: flex-start; line-height: 1.55; }
.srh-steps li > span { flex: none; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: var(--srh-rg); color: var(--srh-ink); font: 700 13px var(--srh-display); }
.srh-ico { width: 20px; height: 20px; vertical-align: -4px; color: #2f6fe0; }
.srh-qr { display: block; margin: 14px auto; border-radius: 6px; border: 1px solid var(--srh-line); background: #fff; }
.srh-install-open { margin: 18px 0 30px; font-size: 14px; }
.srh-install-done .srh-card { text-align: center; }

/* Bottom sheet offering the app on phones */
.srh-sheet { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; padding: 0 10px calc(10px + env(safe-area-inset-bottom)); animation: srh-up .35s ease-out; }
.srh-sheet-in { background: #fff; border: 1px solid var(--srh-line); border-radius: 12px; box-shadow: 0 -8px 30px rgba(60,30,25,.18); padding: 16px; display: flex; flex-direction: column; gap: 4px; color: var(--srh-text); }
.srh-sheet-in b { font: 600 17px var(--srh-display); }
.srh-sheet-in > span { color: var(--srh-muted); font-size: 14px; }
.srh-sheet-row { display: flex; gap: 10px; align-items: center; margin-top: 10px; }
.srh-sheet-x { background: none; border: 0; color: var(--srh-muted); font: 500 14px var(--srh-sans); cursor: pointer; padding: 10px; }
@keyframes srh-up { from { transform: translateY(100%); } to { transform: none; } }
.srh-brand--logo img { filter: sepia(1) saturate(2.6) hue-rotate(-38deg) brightness(.97) contrast(1.08); }

/* =====================================================================
 * "Luxury virtual resort" — glam layer
 * Ivory marble, rose-gold foil hairlines, arches, walnut + brick accents.
 * ===================================================================== */
:root, :root .srh {
	--srh-foil: linear-gradient(120deg, #b97a6c 0%, #f3cdbf 22%, #d69c8b 40%, #fbe3d8 58%, #c1867a 78%, #f1c9ba 100%);
	--srh-script: "Cormorant Garamond", Georgia, serif;
	--srh-walnut: repeating-linear-gradient(92deg, rgba(255,255,255,.035) 0 2px, transparent 2px 9px), repeating-linear-gradient(88deg, rgba(0,0,0,.08) 0 1px, transparent 1px 14px), linear-gradient(135deg, #5a3a2a 0%, #3e271c 45%, #6a4532 100%);
	--srh-brick: linear-gradient(rgba(255,255,255,.06) 2px, transparent 2px) 0 0/48px 24px, linear-gradient(90deg, rgba(255,255,255,.06) 2px, transparent 2px) 0 0/48px 24px, linear-gradient(90deg, rgba(255,255,255,.06) 2px, transparent 2px) 24px 12px/48px 24px, linear-gradient(135deg, #4a2622, #2f1a17);
}

/* Ivory marble with soft veining */
.srh {
	background:
		radial-gradient(900px 380px at 50% -140px, rgba(243,205,191,.45), transparent 70%),
		linear-gradient(115deg, transparent 0 38%, rgba(201,160,150,.10) 38.2%, transparent 38.6% 61%, rgba(201,160,150,.07) 61.3%, transparent 61.8%),
		linear-gradient(160deg, transparent 0 70%, rgba(201,160,150,.08) 70.3%, transparent 70.8%),
		radial-gradient(1200px 800px at 85% 40%, #fffaf6, transparent 70%),
		#f8f2ec !important;
}

/* Script accents */
.srh .srh-script { font: italic 600 clamp(22px, 4.5vw, 30px)/1 var(--srh-script); color: #f3cdbf; margin: 0 0 4px; letter-spacing: .01em; }

/* Foil hairline frames on cards */
.srh-card, .srh-login, .srh-steps, .srh-list {
	border: 1px solid transparent !important;
	background: linear-gradient(#fff, #fff) padding-box, var(--srh-foil) border-box !important;
	box-shadow: 0 14px 34px -18px rgba(120, 70, 60, .35) !important;
}
.srh-empty { border-style: solid !important; border-color: #ecd8cf !important; }

/* Foil buttons with a sheen on hover */
.srh-btn { position: relative; overflow: hidden; background: var(--srh-foil) !important; background-size: 160% 100% !important; transition: background-position .6s ease, transform .2s; }
.srh-btn:hover { background-position: 100% 0 !important; transform: translateY(-1px); }
.srh-btn--ghost, .srh-btn--light { background: transparent !important; }

/* Section headings: centered with ornament, like a resort brochure */
.srh-h { justify-content: center !important; text-align: center; border-bottom: 0 !important; position: relative; padding: 0 0 18px !important; gap: 0; }
.srh-h::after { content: "✦"; position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); font-size: 10px; color: #c98a7d; letter-spacing: 0; }
.srh-h::before { content: ""; position: absolute; left: 50%; bottom: 5px; width: 140px; transform: translateX(-50%); height: 1px; background: linear-gradient(90deg, transparent, #d9a08f 30%, transparent 46%, transparent 54%, #d9a08f 70%, transparent); }
.srh-h a { position: absolute; right: 0; top: 4px; }

/* Hero: lobby photo with an architectural arch outline */
.srh-hero--photo { min-height: 360px; display: flex; flex-direction: column; justify-content: center; }
.srh-hero--photo::after {
	content: ""; position: absolute; right: max(6vw, calc(50vw - 440px)); top: 34px; bottom: -2px; width: min(30vw, 300px);
	border: 1px solid rgba(243,205,191,.7); border-bottom: 0; border-radius: 999px 999px 0 0; pointer-events: none;
	box-shadow: inset 0 0 0 8px rgba(243,205,191,.06);
}
@media (max-width: 700px) { .srh-hero--photo::after { width: 46vw; right: -8vw; opacity: .55; } }
.srh-hero--photo h1 { position: relative; z-index: 1; }

/* Feature pair on Home: walnut (Prayer Room) + brick (The Wall) */
.srh-features { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; margin: 18px 0 6px; }
.srh-features .srh-prayer-card { margin: 0; min-height: 120px; padding: 22px !important; border: 1px solid transparent !important; color: #f6efe8 !important; }
.srh-features .srh-prayer-card:not(.srh-wall-card) { background: var(--srh-walnut) padding-box, var(--srh-foil) border-box !important; }
.srh-features .srh-wall-card { background: var(--srh-brick) padding-box, var(--srh-foil) border-box !important; }
.srh-features .srh-wall-card { background:
	linear-gradient(rgba(255,255,255,.07) 2px, transparent 2px) 0 0/48px 24px padding-box,
	linear-gradient(90deg, rgba(255,255,255,.07) 2px, transparent 2px) 0 0/48px 24px padding-box,
	linear-gradient(135deg, #4d2a24, #2e1a17) padding-box,
	var(--srh-foil) border-box !important; }
.srh-features h3 { font-family: var(--srh-display) !important; font-size: 21px; background: var(--srh-foil); -webkit-background-clip: text; background-clip: text; color: transparent !important; }
.srh-features .srh-meta { color: #e6d3c9 !important; }
.srh-features .srh-btn--ghost { color: #f3cdbf !important; box-shadow: inset 0 0 0 1px #e3ad9c !important; }
.srh-features .srh-wall-icon { color: #f3cdbf; }

/* Arched picture tiles (architecture) */
.srh-explore-tile { padding: 10px 10px 0 !important; }
.srh-explore-img, .srh-tile .srh-cover { border-radius: 999px 999px 3px 3px !important; aspect-ratio: 3/3.4 !important; margin: 0 !important; box-shadow: inset 0 0 0 1px rgba(255,255,255,.4); }
.srh-explore-name { text-align: center; padding: 12px 6px 14px !important; }
.srh-tile { padding: 10px !important; }
.srh-tile h3 { text-align: center; }
.srh-tile .srh-eyebrow { text-align: center; }
.srh-tile .srh-btn { align-self: center !important; }

/* Frosted-glass nav */
.srh-nav { background: rgba(255,251,248,.78) !important; backdrop-filter: blur(14px) saturate(1.2); -webkit-backdrop-filter: blur(14px) saturate(1.2); }
.srh-nav a[aria-current] { position: relative; }
.srh-nav a[aria-current]::after { content: ""; position: absolute; left: 30%; right: 30%; bottom: 2px; height: 2px; border-radius: 2px; background: var(--srh-foil); }
.srh-top { border-bottom: 0 !important; box-shadow: 0 1px 0 rgba(243,205,191,.6), 0 8px 24px rgba(40,20,15,.25); }

/* Sign-in: arrive in the lobby */
.srh-lobby { margin: -20px -16px 0; min-height: calc(100dvh - 64px); padding: 48px 16px 40px;
	background: linear-gradient(180deg, rgba(25,16,13,.55) 0%, rgba(25,16,13,.35) 40%, rgba(25,16,13,.75) 100%), var(--srh-hero, none) center/cover no-repeat, #2b2220; }
@media (min-width: 960px) { .srh-lobby { margin: -20px calc(480px - 50vw) 0; } }
.srh-lobby-in { max-width: 440px; margin: 0 auto; }
.srh-lobby-head { text-align: center; color: #fff; margin-bottom: 22px; }
.srh-lobby-head .srh-eyebrow { color: #f3cdbf; }
.srh-lobby-head h1 { font-size: clamp(38px, 9vw, 58px); line-height: 1.02; background: var(--srh-foil) !important; -webkit-background-clip: text !important; background-clip: text !important; color: transparent !important; }
.srh-lobby-head .srh-divider { margin: 16px auto 12px; }
.srh-lobby-head .srh-hero-sub { color: #f1e6df; }
.srh .srh-glass { background: linear-gradient(rgba(255,250,246,.86), rgba(255,250,246,.86)) padding-box, var(--srh-foil) border-box !important; backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border-radius: 6px; padding: 26px 24px; margin: 0 !important; }
.srh-glass h2 { font: 600 24px var(--srh-display); text-align: center; margin: 0 0 4px; }
.srh-glass > .srh-meta { text-align: center; }
.srh-glass .srh-code-form label { text-align: center; }

/* Prayer Room page: arch window around the call */
.srh-room:not(.is-live) { border-radius: 999px 999px 8px 8px !important; min-height: 320px; background: radial-gradient(500px 260px at 50% 10%, rgba(243,205,191,.35), transparent 70%), var(--srh-walnut) !important; padding-top: 70px; }
.srh-room:not(.is-live) .srh-meta { color: #ead9d0 !important; }
.srh-room:not(.is-live) { max-width: 520px; margin-left: auto !important; margin-right: auto !important; min-height: 400px; border-radius: 260px 260px 8px 8px !important; }

/* Prayer Room photo: women see themselves in the space */
.srh-features .srh-prayer-card.has-photo:not(.srh-wall-card) {
	background: linear-gradient(90deg, rgba(48,30,22,.92) 0%, rgba(48,30,22,.72) 45%, rgba(48,30,22,.15) 100%) padding-box, var(--srh-photo) 70% 30%/cover padding-box, var(--srh-foil) border-box !important;
	min-height: 150px;
}
.srh-prayer-card.has-photo .srh-prayer-dot { display: none; }
.srh-room.has-photo:not(.is-live) {
	background: linear-gradient(180deg, rgba(30,18,14,0) 35%, rgba(30,18,14,.55) 65%, rgba(30,18,14,.88) 100%), var(--srh-photo) 46% 22%/cover no-repeat !important;
	justify-content: flex-end; padding-bottom: 34px; min-height: 460px;
	box-shadow: 0 0 0 1px #e3ad9c, 0 0 0 7px rgba(243,205,191,.35), 0 24px 50px -20px rgba(60,30,20,.55);
}
@media (max-width: 560px) { .srh-room.has-photo:not(.is-live) { min-height: 420px; } }

/* ---- No arches (per Shamika) ---- */
.srh-hero--photo::after { display: none !important; }
.srh-explore-img, .srh-tile .srh-cover { border-radius: 3px !important; aspect-ratio: 4/3 !important; }
.srh-room:not(.is-live), .srh-room.has-photo:not(.is-live) { border-radius: 6px !important; max-width: none; min-height: 380px; }

/* Hero name: title line, then name, kept left of the SRG sign on the wall */
.srh-hero-name { max-width: min(560px, 52%); }
.srh-hero-name span { display: block; }
.srh-hero-name .srh-hero-title { font-size: .62em; letter-spacing: .14em; margin-bottom: .08em; }
@media (max-width: 700px) { .srh-hero-name { max-width: 100%; } }

/* The Wall photo */
.srh-features .srh-wall-card.has-photo {
	background: linear-gradient(90deg, rgba(40,24,18,.93) 0%, rgba(40,24,18,.72) 48%, rgba(40,24,18,.18) 100%) padding-box, var(--srh-photo) 75% 45%/cover padding-box, var(--srh-foil) border-box !important;
	min-height: 150px;
}
.srh-wall-banner { height: clamp(170px, 30vw, 300px); margin: 6px 0 16px; border-radius: 6px; background: linear-gradient(180deg, transparent 55%, rgba(30,18,14,.35)), var(--srh-photo) 70% 45%/cover no-repeat; box-shadow: 0 0 0 1px #e3ad9c, 0 18px 40px -20px rgba(60,30,20,.55); }
.srh-hero--photo h1.srh-hero-name { font-size: clamp(32px, 4.2vw, 46px); }
@media (max-width: 700px) { .srh-hero--photo { background-position: center, 78% center, center !important; } }

/* Request to join */
.srh-request { max-width: 640px; margin: 0 auto; }
.srh-request .srh-banner { aspect-ratio: 16/7; border-radius: 6px; margin: 0 0 18px; }
.srh-request-form .srh-request-about { display: flex; flex-direction: column; gap: 4px; margin: 12px 0; font-size: 12px; color: var(--srh-muted); }
.srh-request-form .srh-btn { margin-top: 4px; }
.srh-request-done { text-align: center; padding: 26px !important; }
.srh-request-done h3 { font-family: var(--srh-display) !important; font-size: 24px; margin: 0 0 6px; }
.srh-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.srh-request-cta { display: flex; align-items: center; gap: 10px; margin-top: 14px; padding: 14px 18px !important; text-decoration: none; color: var(--srh-text) !important; border-radius: 6px; }
.srh-request-cta .srh-script { color: #a8645e !important; font-size: 20px !important; margin: 0 !important; }
.srh-request-cta b { flex: 1; font: 600 14px var(--srh-display); letter-spacing: .06em; }
.srh-request-cta span[aria-hidden] { color: #a8645e; font-size: 20px; }

/* Requests on the Members screen */
.srh-requests { margin: 8px 0 18px; }
.srh-count-badge { display: inline-grid; place-items: center; min-width: 22px; height: 22px; padding: 0 6px; margin-left: 8px; border-radius: 99px; background: var(--srh-foil); color: var(--srh-ink); font: 700 12px var(--srh-sans); }
.srh-req { display: flex; gap: 14px; align-items: center; justify-content: space-between; flex-wrap: wrap; margin-bottom: 10px; padding: 14px 16px !important; }
.srh-req-main { display: flex; flex-direction: column; gap: 2px; min-width: 0; flex: 1; }
.srh-req-main b { font-family: var(--srh-serif); font-size: 16px; }
.srh-req-main small { color: var(--srh-muted); }
.srh-req-about { margin: 6px 0 0; font: italic 500 16px/1.4 var(--srh-script); color: var(--srh-text); }
.srh-req-acts { display: flex; gap: 8px; align-items: center; }
.srh-req-acts form { margin: 0; }
.srh-send { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 0 0 14px; padding: 12px 16px !important; }

/* Community photos */
.srh-photo-add { cursor: pointer; }
.srh-photo-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 10px; margin-top: 12px; }
.srh-photo-grid figure { position: relative; margin: 0; aspect-ratio: 1; border-radius: 4px; overflow: hidden; box-shadow: 0 0 0 1px #ead9d1; }
.srh-photo-grid img { width: 100%; height: 100%; object-fit: cover; display: block; }
.srh-photo-grid figure.is-cover { box-shadow: 0 0 0 2px #c98a7d; }
.srh-photo-grid figure.is-cover::after { content: "Cover"; position: absolute; left: 8px; top: 8px; background: var(--srh-foil); color: var(--srh-ink); font: 700 10px var(--srh-display); letter-spacing: .12em; text-transform: uppercase; padding: 4px 8px; border-radius: 2px; }
.srh-photo-acts { position: absolute; right: 6px; bottom: 6px; display: flex; gap: 6px; }
.srh-photo-acts button { width: 32px; height: 32px; border-radius: 50%; border: 0; background: rgba(255,250,246,.92); color: #8a4a44; font-size: 16px; cursor: pointer; box-shadow: 0 2px 8px rgba(0,0,0,.2); }
