/* Aqua Host WHMCS Bridge - default component styles.
   Uses the active theme's --color-* custom properties when present
   (see the Aqua Host theme's main.css), with sane fallbacks otherwise. */

.pricing-grid {
	display: grid;
	grid-template-columns: repeat(var(--pricing-columns, 4), 1fr);
	gap: 1.25rem;
}

@media (max-width: 960px) {
	.pricing-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 620px) {
	.pricing-grid { grid-template-columns: 1fr; }
}

.pricing-card {
	position: relative;
	background: var(--color-white, #fff);
	border: 1px solid var(--color-grey-border, #e1e5ea);
	border-radius: var(--radius-lg, 16px);
	padding: 1.75rem 1.5rem;
	transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.pricing-card:hover {
	transform: translateY(-4px);
	border-color: var(--color-ocean, #0c447c);
	box-shadow: 0 12px 28px rgba(4, 44, 83, 0.1);
}

.pricing-card--featured {
	background: var(--color-ocean-light, #e6f1fb);
	border: 2px solid var(--color-ocean, #0c447c);
}

.pricing-card--featured:hover { transform: translateY(-4px); box-shadow: 0 12px 28px rgba(4, 44, 83, 0.14); }

.pricing-card__badge {
	display: inline-block;
	background: var(--color-ocean, #0c447c);
	color: #fff;
	font-size: 0.75rem;
	font-weight: 700;
	padding: 0.3em 0.8em;
	border-radius: 999px;
	margin-bottom: 0.75rem;
}

.pricing-card__name {
	margin: 0 0 0.25rem;
	color: var(--color-navy, #042c53);
}

.pricing-card__price { margin: 0; line-height: 1; }
.pricing-card__amount { font-size: 2rem; font-weight: 700; color: var(--color-ocean, #0c447c); }
.pricing-card__period { color: var(--color-text-secondary, #55606b); font-size: 0.9rem; }
.pricing-card__setup { font-size: 0.8rem; color: var(--color-text-muted, #88929c); margin: 0.35rem 0 1rem; }

.pricing-card__specs {
	background: var(--color-grey-bg, #f4f6f8);
	border-radius: var(--radius, 10px);
	padding: 0.9rem 1rem;
	margin: 0 0 1.25rem;
}
.pricing-card--featured .pricing-card__specs { background: #fff; }

.pricing-card__specs li {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.9rem;
	color: var(--color-text-secondary, #55606b);
	padding: 0.25rem 0;
}
.pricing-card__specs li svg { flex-shrink: 0; color: var(--color-success, #1d9e75); }

.aquahost-pricing-unavailable {
	text-align: center;
	color: var(--color-text-secondary, #55606b);
	padding: 2rem;
}

/* -- Domain search --------------------------------------------------------- */

.domain-search {
	display: flex;
	gap: 0.5rem;
	max-width: 480px;
	margin: 0 auto;
	background: #fff;
	padding: 0.35rem;
	border-radius: var(--radius, 10px);
}

.domain-search input[type="text"] {
	flex: 1;
	min-width: 0;
	border: none;
	padding: 0.75em 1em;
	font-size: 1rem;
	border-radius: var(--radius-sm, 6px);
}
.domain-search input[type="text"]:focus { outline: none; }

.domain-search__result {
	max-width: 480px;
	margin: 0.75rem auto 0;
	text-align: left;
}

.domain-search__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	background: #fff;
	border-radius: var(--radius, 10px);
	padding: 0.85rem 1.1rem;
	margin-bottom: 0.5rem;
	color: var(--color-text, #16212b);
}

.domain-search__row--unavailable { opacity: 0.7; }
.domain-search__status--available { color: var(--color-success, #1d9e75); font-weight: 700; }
.domain-search__status--unavailable { color: var(--color-text-muted, #88929c); font-weight: 700; }
.domain-search__error { color: #ffe1d6; text-align: center; margin-top: 0.75rem; }
