/* Prayer Wall ([gps_prayer_wall]) — sits on the Engage page below the crisis
   section. Colours come from the child theme's --gps-* variables, and the
   forms reuse its .gps-account-form styling, so this file only adds what's
   specific to the wall. */

/* A lifted teal panel, so the wall reads as its own section between the
   near-black crisis section above and the navy broadcasts section below. */
.gps-prayer-wall {
	background: linear-gradient(180deg, var(--gps-bg-raised) 0%, #102c29 100%);
	border-top: 1px solid var(--gps-surface-border);
	border-bottom: 1px solid var(--gps-surface-border);
	padding: 48px 20px;
}
/* Text and forms stay at a readable width; the card row (below) spans the
   full section like the other Engage lists. */
.gps-prayer-wall > :not(.gps-prayer-request-list) {
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
}
/* Matches the Elementor section headings on the same page. */
.gps-prayer-wall-title {
	text-align: center;
	color: var(--gps-accent-bright);
	font-family: 'Bebas Neue', sans-serif;
	font-size: 40px;
	font-weight: 600;
	letter-spacing: 3.1px;
	word-spacing: 7px;
	margin: 0 auto 8px;
}
.gps-prayer-wall-intro,
.gps-prayer-wall-auth-lead {
	text-align: center;
	color: var(--gps-muted);
	font-size: 17px;
}
.gps-prayer-wall-notice,
.gps-prayer-wall-success {
	background: rgba(34, 184, 163, 0.14);
	border-left: 4px solid var(--gps-accent);
	color: var(--gps-text);
	padding: 12px 16px;
	border-radius: 6px;
	font-size: 16px;
}

/* Composer */
.gps-prayer-wall .gps-account-form {
	background: var(--gps-bg);
	margin: 20px auto 32px;
	padding: 24px;
}
.gps-prayer-wall-form textarea {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid var(--gps-accent);
	border-radius: 6px;
	background: var(--gps-bg-raised-light);
	color: var(--gps-text);
	font-weight: 400;
	font-size: 17px;
	margin-top: 6px;
	resize: vertical;
}
.gps-prayer-wall-form textarea:focus {
	outline: none;
	border-color: var(--gps-accent-bright);
	box-shadow: 0 0 0 3px rgba(77, 208, 193, 0.35);
}
.gps-prayer-wall-form textarea::placeholder {
	color: var(--gps-muted);
	opacity: 1;
}
.gps-prayer-wall-counter {
	display: block;
	text-align: right;
	font-size: 13px;
	font-weight: 400;
	color: var(--gps-muted);
}
.gps-prayer-wall-anon label,
.gps-account-consent label {
	font-weight: 400;
}
.gps-prayer-wall-anon input,
.gps-account-consent input {
	margin-right: 6px;
}
.gps-account-consent a {
	color: var(--gps-accent-bright);
}

/* Log In / Create Account tabs */
.gps-prayer-wall-tabs {
	display: flex;
	justify-content: center;
	gap: 8px;
	margin-top: 16px;
}
.gps-prayer-wall-toggle-wrap {
	text-align: center;
	margin: 16px auto 0;
}
.gps-prayer-wall-toggle {
	font-family: 'Oswald', sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	font-weight: 700;
	font-size: 17px;
	background: var(--gps-accent);
	color: var(--gps-bg);
	border: none;
	border-radius: 24px;
	padding: 12px 30px;
	cursor: pointer;
}
.gps-prayer-wall-toggle:hover,
.gps-prayer-wall-toggle:focus {
	background: var(--gps-accent-bright);
	color: var(--gps-bg);
}
.gps-prayer-wall-tab,
.gps-prayer-wall-resend,
.gps-prayer-wall-more {
	font-family: 'Oswald', sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	background: var(--gps-bg-raised);
	color: var(--gps-text);
	border: 1px solid var(--gps-surface-border);
	border-radius: 24px;
	padding: 10px 24px;
	cursor: pointer;
}
.gps-prayer-wall-tab.is-active,
.gps-prayer-wall-tab:hover,
.gps-prayer-wall-resend:hover,
.gps-prayer-wall-more:hover {
	background: var(--gps-accent);
	border-color: var(--gps-accent);
	color: var(--gps-bg);
}
.gps-prayer-wall-panel h3 {
	display: none; /* the tab already says it */
}
.gps-prayer-wall-panel > div > p:first-of-type {
	text-align: center;
	color: var(--gps-muted);
}

/* Request cards — the same centred flex-wrap row and card sizing as the
   other Engage lists (.gps-crisis-alert-list etc. in the child theme). */
.gps-prayer-request-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 28px;
	margin: 24px 0 8px;
}
.gps-prayer-request-item {
	background: rgba(7, 23, 22, 0.6);
	backdrop-filter: blur(6px);
	border: 1px solid var(--gps-surface-border);
	border-top: 4px solid var(--gps-accent);
	border-radius: var(--gps-radius);
	box-shadow: var(--gps-card-shadow);
	padding: 22px 24px;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
	display: flex;
	flex-direction: column;
	flex: 1 1 260px;
	max-width: 320px;
}
.gps-prayer-request-item:hover {
	box-shadow: var(--gps-card-shadow-hover);
	transform: translateY(-3px);
}
.gps-prayer-request-meta {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px;
	margin-bottom: 8px;
}
.gps-prayer-request-name {
	color: var(--gps-accent-bright);
	font-weight: 700;
	font-size: 18px;
}
.gps-prayer-request-meta time {
	font-size: 13px;
	color: var(--gps-muted);
	text-transform: uppercase;
	letter-spacing: 0.04em;
	white-space: nowrap;
}
.gps-prayer-request-body {
	color: var(--gps-text);
	font-size: 16px;
	line-height: 1.55;
	white-space: pre-line;
	overflow-wrap: anywhere;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
	line-clamp: 5;
	overflow: hidden;
}
.gps-prayer-request-body.is-expanded {
	display: block;
	-webkit-line-clamp: unset;
	line-clamp: unset;
}
.gps-prayer-request-more {
	align-self: flex-start;
	background: none;
	border: none;
	padding: 4px 0 0;
	color: var(--gps-accent-bright);
	font-size: 14px;
	cursor: pointer;
}
.gps-prayer-request-more:hover {
	background: none;
	color: var(--gps-text);
}
.gps-prayer-request-actions {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: auto; /* pins the button row to the card bottom across a row */
	padding-top: 14px;
}
.gps-prayed-button {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: 'Oswald', sans-serif;
	font-size: 15px;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	background: transparent;
	color: var(--gps-text);
	border: 1px solid var(--gps-accent);
	border-radius: 24px;
	padding: 6px 16px;
	cursor: pointer;
	transition: background 0.15s ease, color 0.15s ease;
}
.gps-prayed-button:hover {
	background: rgba(34, 184, 163, 0.18);
	color: var(--gps-text);
}
.gps-prayed-button.is-prayed {
	background: var(--gps-accent);
	color: var(--gps-bg);
}
.gps-prayed-button:disabled {
	opacity: 0.8;
	cursor: progress;
}
.gps-prayed-count {
	font-weight: 700;
	min-width: 1ch;
}
.gps-prayer-request-delete {
	background: none;
	border: none;
	color: var(--gps-muted);
	font-size: 14px;
	text-decoration: underline;
	cursor: pointer;
	padding: 0;
}
.gps-prayer-request-delete:hover {
	color: var(--gps-danger-bright);
	background: none;
}
.gps-prayer-wall-empty {
	text-align: center;
	color: var(--gps-muted);
}
.gps-prayer-wall-more-wrap {
	text-align: center;
	margin-top: 24px;
}
