/**
 * ==========================================================
 * GM DESIGN SYSTEM
 * File: delivery-region.css
 * Description: Shared Delivery Region Selector
 *
 * Depends:
 * tokens.css
 * spacing.css
 * typography.css
 * motion.css
 * controls.css
 *
 * Version:
 * 1.1.0
 *
 * Last Update:
 * 16.08.2026
 * ==========================================================
 */


/* ==========================================================
   DELIVERY REGION
========================================================== */

.gm-delivery-region{

	display:grid;

	grid-template-columns:
		116px
		minmax(0,1fr);

	align-items:center;

	gap:var(--gm-space-sm);

	margin-top:var(--gm-space-lg);

	padding:
		var(--gm-space-sm)
		0;

	border-top:
		1px solid var(--gm-color-border);

}


/* ==========================================================
   LABEL
========================================================== */

.gm-delivery-region label{

	color:var(--gm-color-text);

	font-family:var(--gm-font-family);

	font-size:var(--gm-font-size-xs);

	font-weight:var(--gm-font-weight-semibold);

	line-height:1.45;

}


/* ==========================================================
   CONTROL
========================================================== */

.gm-delivery-region__control{

	display:flex;

	align-items:center;

	gap:var(--gm-space-sm);

	min-width:0;

}


/* ==========================================================
   SELECT
========================================================== */

.gm-delivery-region select{

	width:150px;

	min-height:38px;

	padding:
		var(--gm-space-xs)
		34px
		var(--gm-space-xs)
		var(--gm-space-sm);

	border:
		1px solid var(--gm-color-border);

	border-radius:var(--gm-radius-sm);

	background-color:var(--gm-color-white);

	color:var(--gm-color-text);

	font-family:var(--gm-font-family);

	font-size:var(--gm-font-size-xs);

	font-weight:var(--gm-font-weight-regular);

	transition:
		border-color
			var(--gm-motion-fast)
			var(--gm-motion-smooth),
		box-shadow
			var(--gm-motion-fast)
			var(--gm-motion-smooth);

}

.gm-delivery-region select:hover{

	border-color:var(--gm-color-primary);

}

.gm-delivery-region select:focus{

	outline:none;

	border-color:var(--gm-color-primary);

}

.gm-delivery-region select:focus-visible{

	outline:var(--gm-focus-ring);

	outline-offset:var(--gm-focus-ring-offset);

	border-color:var(--gm-color-primary);

}


/* ==========================================================
   HELPER TEXT
========================================================== */

.gm-delivery-region__control span{

	color:var(--gm-color-text-light);

	font-family:var(--gm-font-family);

	font-size:11px;

	font-weight:var(--gm-font-weight-regular);

	line-height:1.45;

}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width:860px){

	.gm-delivery-region{

		grid-template-columns:1fr;

		gap:var(--gm-space-xs);

	}

	.gm-delivery-region__control{

		align-items:flex-start;

		flex-direction:column;

		gap:var(--gm-space-xs);

	}

	.gm-delivery-region select{

		width:100%;

	}

}


/* ==========================================================
   REDUCED MOTION
========================================================== */

@media (prefers-reduced-motion:reduce){

	.gm-delivery-region select{

		transition:none;

	}

}
/* Two payment offers; no third financing column. */
.gm-product-payment-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.gm-product-payment-summary [hidden], [data-gm-freight-quote][hidden] { display: none !important; }
.gm-delivery-region__control { flex-wrap: wrap; }
@media (max-width: 700px) { .gm-product-payment-summary { grid-template-columns: 1fr; } }
