/* Skynet Regional Pricing — front end */

.skrp-zip { margin: 0 0 1.5rem; max-width: 26rem; }

.skrp-zip__label {
	display: block;
	margin-bottom: .4rem;
	font-size: .85rem;
	font-weight: 600;
	letter-spacing: .02em;
}

.skrp-zip__row { display: flex; gap: .5rem; }

.skrp-zip__input {
	flex: 1 1 auto;
	min-width: 0;
	padding: .7em .9em;
	border: 1px solid #c9d1da;
	border-radius: 2px;
	font-size: 1rem;
	line-height: 1.3;
}

.skrp-zip__input:focus-visible { outline: 3px solid var(--skrp-accent, #FD7F22); outline-offset: 1px; }

.skrp-zip__button {
	flex: none;
	padding: .7em 1.2em;
	border: 1px solid var(--skrp-ink, #0B1B2B);
	border-radius: 2px;
	background: var(--skrp-ink, #0B1B2B);
	color: #fff;
	font-size: .95rem;
	font-weight: 600;
	cursor: pointer;
}

.skrp-zip__button:hover:not(:disabled) { background: var(--skrp-accent, #FD7F22); border-color: var(--skrp-accent, #FD7F22); color: var(--skrp-ink, #0B1B2B); }
.skrp-zip__button:disabled { opacity: .6; cursor: default; }

.skrp-zip__msg { margin: .5rem 0 0; font-size: .85rem; min-height: 1.2em; }
.skrp-zip__ok { color: #1a7f4b; }
.skrp-zip__err { color: #b32d2e; }

.skrp-price { font-variant-numeric: tabular-nums; }
.skrp-price__suffix { opacity: .7; font-size: .8em; margin-left: .15em; }

.skrp-buy {
	display: inline-block;
	padding: .9em 1.6em;
	background: var(--skrp-ink, #0B1B2B);
	color: #fff;
	border-radius: 2px;
	font-weight: 600;
	text-decoration: none;
}

.skrp-buy:hover { background: var(--skrp-accent, #FD7F22); color: var(--skrp-ink, #0B1B2B); text-decoration: none; }

/* Add-on prompt — radio group */

.skrp-addons {
	margin: 2rem 0;
	padding: 1.5rem;
	background: #f6f8fa;
	border: 1px solid #dde3e9;
	border-radius: 3px;
}

.skrp-addons__heading { margin: 0 0 .3rem; font-size: 1.2rem; line-height: 1.25; }
.skrp-addons__intro { margin: 0 0 1.1rem; font-size: .92rem; opacity: .75; }

.skrp-addons__options { margin: 0 0 1.1rem; padding: 0; border: 0; }

.skrp-option {
	display: flex;
	align-items: flex-start;
	gap: .85rem;
	padding: .95rem 1.1rem;
	background: #fff;
	border: 1px solid #dde3e9;
	border-radius: 3px;
	margin-bottom: .55rem;
	cursor: pointer;
	transition: border-color .15s ease, box-shadow .15s ease;
}

.skrp-option:hover { border-color: #b9c4d0; }

.skrp-option:has(.skrp-option__radio:checked) {
	border-color: var(--skrp-accent, #FD7F22);
	box-shadow: inset 0 0 0 1px var(--skrp-accent, #FD7F22);
}

.skrp-option__radio {
	flex: none;
	width: 1.15em;
	height: 1.15em;
	margin: .15em 0 0;
	accent-color: var(--skrp-ink, #0B1B2B);
}

.skrp-option__body { flex: 1 1 auto; min-width: 0; }

.skrp-option__name { display: block; font-weight: 600; line-height: 1.35; }
.skrp-option__blurb { display: block; margin-top: .2rem; font-size: .85rem; opacity: .7; }

.skrp-option__price {
	flex: none;
	text-align: right;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
	line-height: 1.3;
}

.skrp-option__suffix { display: block; font-size: .75rem; font-weight: 400; opacity: .65; }

.skrp-option--none .skrp-option__name { font-weight: 500; opacity: .8; }

.skrp-addons__submit {
	padding: .85em 1.6em;
	background: var(--skrp-ink, #0B1B2B);
	color: #fff;
	border: 0;
	border-radius: 3px;
	font-size: .95rem;
	font-weight: 600;
	cursor: pointer;
}

.skrp-addons__submit:hover { background: var(--skrp-accent, #FD7F22); color: var(--skrp-ink, #0B1B2B); }

@media (max-width: 480px) {
	.skrp-option { flex-wrap: wrap; }
	.skrp-option__price { width: 100%; text-align: left; padding-left: 2rem; }
}
