/* Temple Pooja Booking — front-end form styles */
.tpb-form-wrap{
	--tpb-maroon: #6E1423;
	--tpb-maroon-deep: #4C0D18;
	--tpb-vermilion: #C1440E;
	--tpb-gold: #C9A227;
	--tpb-stone: #F3EAD8;
	--tpb-stone-deep: #E8DBC0;
	--tpb-charcoal: #2B211B;
	max-width: 760px;
	margin: 0 auto;
	font-family: inherit;
}
.tpb-form{
	background: var(--tpb-stone);
	border: 1px solid var(--tpb-gold);
	border-radius: 8px;
	padding: 28px;
}
.tpb-row{ display:flex; gap:20px; margin-bottom:16px; flex-wrap:wrap; }
.tpb-field{ flex: 1 1 220px; display:flex; flex-direction:column; }
.tpb-field-full{ flex-basis: 100%; }
.tpb-field-price{ flex: 0 0 160px; }
.tpb-form label{ font-weight:600; margin-bottom:6px; color: var(--tpb-maroon-deep); font-size:.92rem; }
.tpb-form .req{ color: var(--tpb-vermilion); }
.tpb-form select, .tpb-form input[type="text"], .tpb-form input[type="date"],
.tpb-form input[type="tel"], .tpb-form input[type="email"], .tpb-form textarea{
	padding: 11px 12px;
	border: 1px solid var(--tpb-stone-deep);
	border-radius: 4px;
	background: #fff;
	font-size: .95rem;
	color: var(--tpb-charcoal);
	font-family: inherit;
}
.tpb-form select:focus, .tpb-form input:focus, .tpb-form textarea:focus{
	outline: 2px solid var(--tpb-vermilion);
	outline-offset: 1px;
}
.tpb-price-display{
	background: var(--tpb-maroon-deep);
	color: #E4C766;
	font-weight:700;
	font-size:1.15rem;
	padding: 11px 14px;
	border-radius: 4px;
	text-align:center;
}
.tpb-gateways{ flex-direction:column; }
.tpb-gateway-label{ margin-bottom:8px; }
.tpb-gateway-options{ display:flex; flex-wrap:wrap; gap:14px; }
.tpb-gateway-option{
	display:flex; align-items:center; gap:8px;
	background:#fff; border:1px solid var(--tpb-stone-deep);
	padding: 10px 16px; border-radius: 4px; cursor:pointer;
	font-weight:500; font-size:.92rem; color: var(--tpb-charcoal);
}
.tpb-gateway-option:has(input:checked){ border-color: var(--tpb-vermilion); background: #FFF6EF; }
.tpb-submit-btn{
	width:100%;
	background: var(--tpb-vermilion);
	color:#fff;
	border:none;
	padding: 14px;
	font-size: 1rem;
	font-weight:700;
	border-radius: 4px;
	cursor:pointer;
	letter-spacing:.02em;
}
.tpb-submit-btn:hover{ background: var(--tpb-maroon); }
.tpb-submit-btn:disabled{ opacity:.6; cursor:not-allowed; }
.tpb-form-message{ margin-top:14px; font-size:.9rem; min-height: 1.2em; }
.tpb-form-message-error{ color:#a3251c; }
.tpb-form-message-success{ color:#2c6e2f; }
.tpb-notice{ padding:12px 16px; border-radius:4px; margin-bottom:18px; font-size:.92rem; }
.tpb-notice-success{ background:#e4f3e1; color:#2c6e2f; }
.tpb-notice-error{ background:#fde3e0; color:#a3251c; }
.tpb-paypal-button{ display:none; margin-top:16px; max-width:320px; }

@media (max-width: 600px){
	.tpb-row{ flex-direction:column; gap:14px; }
	.tpb-field-price{ flex-basis:auto; }
}
