/*
 * Shipping Terms dialog (R26, L20261015-1525). shadcn Dialog + Tabs values from
 * Lovable ShippingTermsDialog.tsx, in px (the theme root is 10px).
 */
html.sb-ship-terms-open { overflow: hidden; }

.sb-ship-terms[hidden] { display: none !important; }

.sb-ship-terms {
	position: fixed;
	inset: 0;
	z-index: 100050;
	font-family: 'Inter', system-ui, sans-serif;
}

/* fixed inset-0 bg-black/80 */
.sb-ship-terms__overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, .8);
}

/* DialogContent: max-w-[560px] max-h-[90vh] overflow-y-auto gap-4 border p-6 shadow-lg sm:rounded-lg */
.sb-ship-terms__dialog {
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	box-sizing: border-box;
	display: grid;
	gap: 16px;
	width: 100%;
	max-width: 560px;
	max-height: 90vh;
	overflow-y: auto;
	padding: 24px;
	background: #fff;
	border: 1px solid #dde1e7;
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);
	color: #131c2e;
	text-align: left;
}
.sb-ship-terms__dialog:focus { outline: none; }
@media (min-width: 640px) {
	.sb-ship-terms__dialog { border-radius: 8px; }
}

/* absolute right-4 top-4 rounded-sm opacity-70 */
.sb-ship-terms .sb-ship-terms__close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: auto;
	height: auto;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 2px;
	background: transparent;
	color: #131c2e;
	opacity: .7;
	cursor: pointer;
	line-height: 0;
	box-shadow: none;
}
.sb-ship-terms .sb-ship-terms__close:hover { opacity: 1; background: transparent; }
.sb-ship-terms .sb-ship-terms__close:focus-visible { opacity: 1; outline: 2px solid #06038d; outline-offset: 2px; }

/* DialogHeader: flex-col space-y-1.5 text-left */
.sb-ship-terms__header { display: flex; flex-direction: column; gap: 6px; }

/* font-heading text-xl font-semibold leading-none tracking-tight text-primary */
.sb-ship-terms .sb-ship-terms__title {
	margin: 0;
	padding: 0;
	font-family: 'Inter', system-ui, sans-serif;
	font-size: 20px;
	line-height: 20px;
	font-weight: 600;
	letter-spacing: -.025em;
	color: #06038d;
	text-transform: none;
}

/* text-sm text-muted-foreground */
.sb-ship-terms .sb-ship-terms__desc {
	margin: 0;
	font-size: 14px;
	line-height: 20px;
	color: #58677e;
}

/* TabsList grid w-full grid-cols-2 h-10 rounded-md bg-muted p-1 */
.sb-ship-terms__tabs {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: center;
	height: 40px;
	padding: 4px;
	box-sizing: border-box;
	border-radius: 6px;
	background: #edf0f3;
	color: #58677e;
}

/* TabsTrigger rounded-sm px-3 py-1.5 text-sm font-medium; active bg-background text-foreground shadow-sm */
.sb-ship-terms .sb-ship-terms__tab {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: auto;
	margin: 0;
	padding: 6px 12px;
	border: 0;
	border-radius: 2px;
	background: transparent;
	color: #58677e;
	font-family: 'Inter', system-ui, sans-serif;
	font-size: 14px;
	line-height: 20px;
	font-weight: 500;
	text-transform: none;
	letter-spacing: 0;
	cursor: pointer;
	box-shadow: none;
	white-space: nowrap;
}
.sb-ship-terms .sb-ship-terms__tab[aria-selected="true"] {
	background: #f6f7f9;
	color: #131c2e;
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .05);
}
.sb-ship-terms .sb-ship-terms__tab:focus-visible { outline: 2px solid #06038d; outline-offset: 2px; }
@media (forced-colors: active) {
	.sb-ship-terms .sb-ship-terms__tab[aria-selected="true"] { outline: 2px solid Highlight; }
}

/* TabsContent mt-4 (the grid gap supplies 16px) */
.sb-ship-terms__panel:focus-visible { outline: 2px solid #06038d; outline-offset: 2px; }

/* dl space-y-3 text-sm; dt font-semibold; dd mt-0.5 leading-relaxed muted */
.sb-ship-terms .sb-ship-terms__list { margin: 0; padding: 0; display: grid; gap: 12px; font-size: 14px; }
.sb-ship-terms .sb-ship-terms__item dt {
	margin: 0;
	font-size: 14px;
	line-height: 20px;
	font-weight: 600;
	color: #131c2e;
}
.sb-ship-terms .sb-ship-terms__item dd {
	margin: 2px 0 0;
	font-size: 14px;
	line-height: 22.75px;
	color: #58677e;
}

/* text-xs muted; link font-semibold text-primary underline */
.sb-ship-terms .sb-ship-terms__more { margin: 0; font-size: 12px; line-height: 16px; color: #58677e; }
.sb-ship-terms .sb-ship-terms__more a { font-weight: 600; color: #06038d; text-decoration: underline; }
