/**
 * Dash Gift Deals
 * Stilmall enligt designspec dgift. Färger hämtade från designleveransen.
 */

/* ---------------------------------------------------------
   01 Produktsida
   --------------------------------------------------------- */

.dgift-promo {
	display: flex;
	gap: 13px;
	align-items: flex-start;
	margin: 20px 0 16px;
	padding: 13px 14px;
	background: #ffede3;
	border: 1px solid #F6D8C4;
	border-radius: 8px;
}

.dgift-promo__media {
	flex: 0 0 62px;
}

.dgift-promo__image {
	display: block;
	width: 62px;
	height: 62px;
	object-fit: cover;
	border-radius: 6px;
}

.dgift-promo__body {
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}

.dgift-promo__eyebrow {
	margin: 0;
	font-size: 9.5px;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: #8A7A45;
}

.dgift-promo__title {
	margin: 0;
	font-size: 15.5px;
	font-weight: 600;
	line-height: 1.25;
	color: #1B1917;
}

.dgift-promo__text {
	margin: 0;
	font-size: 13px;
	line-height: 1.45;
	color: #4A463F;
}

.dgift-promo__price {
	margin: 1px 0 0;
	display: flex;
	align-items: baseline;
	gap: 8px;
}

.dgift-promo__price-regular {
	font-size: 13px;
	color: #9A9388;
}

.dgift-promo__price-regular .amount {
	color: inherit;
}

.dgift-promo__price-gift {
	font-size: 14px;
	font-weight: 600;
	color: #1B1917;
}

.dgift-promo__meta {
	margin: 1px 0 0;
	font-size: 11.5px;
	color: #6B665D;
}

.dgift-promo.is-ending-soon {
	border-left: 3px solid #F26A1B;
	padding-left: 11px;
}

.dgift-promo.is-ending-soon .dgift-promo__meta {
	color: #F26A1B;
	font-weight: 600;
}

/*
 * Kundens val, ikryssad som standard. Ingen egen ruta, blocket blir för högt
 * av att ha en inramad ruta inuti en inramad ruta.
 */
.dgift-promo__accept {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 8px 0 0;
	padding: 0;
	background: none;
	border: 0;
	cursor: pointer;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.35;
	color: #1B1917;
}

.dgift-promo__accept-input {
	flex: none;
	width: 16px;
	height: 16px;
	margin: 1px 0 0;
	accent-color: #C9A227;
	cursor: pointer;
}

.dgift-promo__accept-text {
	min-width: 0;
}

/* Villkoret hör ihop med valet, indraget så att det läser under etiketten. */
.dgift-promo__restriction {
	margin: 3px 0 0 24px;
	font-size: 11.5px;
	line-height: 1.35;
	color: #7A746A;
}

/* Utan kryssruta får villkoret stå kvar i vänsterkanten. */
.dgift-promo__accept + .dgift-promo__restriction {
	margin-left: 24px;
}

.dgift-promo__meta + .dgift-promo__restriction,
.dgift-promo__price + .dgift-promo__restriction {
	margin-left: 0;
}

/* ---------------------------------------------------------
   01b Förklaringen under rabattformuläret i kassan
   --------------------------------------------------------- */

/*
 * Visas först när kunden skickat in sin e-post och en gåva spärrar rabatten.
 * Fältet självt är aldrig låst, adressen behövs för flödet om övergiven
 * varukorg.
 */
.dgift-signup-note {
	margin: 12px auto 0;
	max-width: 640px;
	padding: 12px 14px;
	background: #FBF1D8;
	border: 1px solid #EBDCAF;
	border-left: 3px solid #C9A227;
	border-radius: 6px;
	font-size: 13.5px;
	line-height: 1.5;
	color: #3D3722;
	text-align: left;
}

.dgift-signup-note[hidden] {
	display: none;
}

/* Mobil A, bilden kvar till vänster. Standard. */
@media (max-width: 767px) {
	.dgift-promo {
		gap: 11px;
		padding: 12px;
	}
	.dgift-promo__media {
		flex: 0 0 54px;
	}
	.dgift-promo__image {
		width: 54px;
		height: 54px;
	}
	.dgift-promo__title {
		font-size: 14.5px;
	}
	.dgift-promo__text {
		font-size: 12.5px;
	}
	.dgift-promo__accept {
		font-size: 12.5px;
	}
}

/* ---------------------------------------------------------
   02 Varukorg och kassa
   --------------------------------------------------------- */

/*
 * Ta bort linjen ovanför gåvoraden så att den läser ihop med sin trigger.
 * Vi matchar raden precis före gåvan i stället för triggerraden, eftersom
 * Fancy Product Designer skjuter in en egen rad däremellan på skyltprodukterna.
 */
tr:has(+ tr.dgift-item) > td {
	border-bottom: 0;
}

/* Gåvan ska inte kunna redigeras av kunden. Extra product options sätter display med hög specificitet. */
tr.dgift-item .tm-cart-edit-options,
tr.dgift-item a.tm-cart-edit-options {
	display: none !important;
}

tr.dgift-item {
	background: #FDFAF2;
}

tr.dgift-item > td:first-child {
	box-shadow: inset 3px 0 0 #C9A227;
}

tr.dgift-item .dgift-item__thumb img {
	width: 48px;
	height: 48px;
	margin-left: 24px;
	border-radius: 6px;
	display: block;
}

.dgift-item__name {
	font-size: 14.5px;
	font-weight: 500;
}

.dgift-item__qty {
	font-size: 14px;
	color: #4A463F;
}

.dgift-item__price-regular {
	font-size: 13px;
	color: #9A9388;
	margin-right: 8px;
}

/*
 * Evit-kassan gör priscellen till flex och sätter order: 2 på del-elementet,
 * eftersom deras egen reapris-visning vill ha det överstrukna priset sist.
 * På gåvoraden ska ordinarie pris stå först och 0 kr sist.
 */
tr.dgift-item .dgift-item__price-regular {
	order: 0 !important;
}

tr.dgift-item .dgift-item__price-gift {
	order: 1 !important;
}

.dgift-item__price-regular .amount {
	color: inherit;
}

.dgift-item__price-gift {
	font-size: 14.5px;
	font-weight: 600;
	color: #1B1917;
}

/*
 * Badgen ska alltid krympa till sitt innehåll. Både Evit-kassan och Porto sätter
 * display och bredd på span-element inuti produktnamnet, vilket annars drar ut
 * pillen över hela kolumnen.
 */
.dgift-item__badge,
.dgift-order__badge {
	display: inline-block !important;
	width: auto !important;
	max-width: 100%;
	flex: none;
	vertical-align: middle;
	margin-left: 10px;
	padding: 5px 10px;
	border-radius: 999px;
	background: #2A2724;
	color: #FFFFFF;
	font-size: 10.5px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .1em;
	text-transform: uppercase;
	white-space: nowrap;
	text-decoration: none;
}

/*
 * Evit-kassan gör td.product-name till en flexbehållare och sätter
 * flex: 0 0 100% på varje span inuti. Utan detta blir badgen en egen
 * rad i full bredd i stället för en pill bredvid namnet.
 */
tr.dgift-item td.product-name {
	flex-wrap: wrap;
}

tr.dgift-item td.product-name > .dgift-item__name {
	flex: 0 1 auto !important;
}

tr.dgift-item td.product-name > .dgift-item__badge {
	flex: 0 0 auto !important;
	width: auto !important;
	align-self: center;
	/* Evit sätter color: #000 på samma element, vilket gav svart text på svart pill. */
	color: #FFFFFF !important;
}

/*
 * Kort förklaring under gåvans namn, till exempel att den inte kan kombineras
 * med rabattkod. Evit-kassan gör product-name till flex, därav flex-basis.
 */
.dgift-item__note {
	display: block !important;
	flex: 0 0 100%;
	width: 100%;
	margin: 5px 0 0;
	font-size: 12px;
	line-height: 1.4;
	color: #6B665D !important;
}

tr.dgift-item.is-just-added {
	animation: dgiftPulse 1.2s ease-out both;
}

@keyframes dgiftPulse {
	from {
		background: #FBF1D8;
	}
	to {
		background: #FDFAF2;
	}
}

tr.dgift-item.is-removed {
	opacity: .35;
	transition: opacity .2s ease;
}

tr.dgift-item.is-removed > td:first-child {
	box-shadow: none;
}

.dgift-notice--removed {
	margin: 0 0 16px;
	padding: 14px 16px;
	background: #FBF1D8;
	border: 1px solid #EBDCAF;
	border-left: 3px solid #C9A227;
	border-radius: 6px;
	font-size: 13.5px;
	line-height: 1.5;
	color: #3D3722;
}

/* Notisen ligger inuti Woos notisruta, neutralisera dess egen ram. */
.woocommerce-info:has(.dgift-notice--removed),
.woocommerce-message:has(.dgift-notice--removed) {
	background: none;
	border: 0;
	padding: 0;
}

@media (max-width: 767px) {
	tr.dgift-item .dgift-item__thumb img {
		width: 40px;
		height: 40px;
		margin-left: 16px;
	}
	.dgift-item__badge {
		margin: 6px 0 0;
	}
	tr.dgift-item .product-remove .product-subtotal.only-mobile {
		text-align: right;
	}
	tr.dgift-item .product-remove .dgift-item__price-regular {
		display: block;
		margin: 0 0 2px;
	}
}

/* ---------------------------------------------------------
   03 Minikorgen i sidhuvudet
   --------------------------------------------------------- */

.widget_shopping_cart .dgift-item__badge,
.mini-cart .dgift-item__badge,
.cart-popup .dgift-item__badge {
	margin: 4px 0 0 6px;
	font-size: 9.5px;
	padding: 4px 8px;
}

/* ---------------------------------------------------------
   04 Orderbekräftelse och admin
   --------------------------------------------------------- */

.dgift-order__badge {
	display: inline-block;
	margin-left: 10px;
	padding: 5px 10px;
	border-radius: 999px;
	background: #2A2724;
	color: #FFFFFF;
	font-size: 10.5px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.dgift-order__price {
	font-weight: 600;
	color: #1B1917;
}
