/* Finish (Klara 2026-10-07): luftigare kort, rytm på startsidan, gemensam
   hover och fokus, Karla i små etiketter, tydligare rea och lagerstatus.
   Laddas sist och bygger på de andra filerna — ta bort filen (och enqueue i
   functions.php) för att gå tillbaka. */

/* ---------------------------------------------------------- produktkort
   Gäller grid-korten (kategori, sök, kampanj, bästsäljare, relaterade), inte
   kampanjsektionens egna kort på startsidan. */
.wp-block-woocommerce-product-collection:not(.eb-kampanj-stor):not(.eb-kampanj-sma) .wc-block-product-template > li.wc-block-product {
	position: relative;
	padding: 0 !important;
	border: 1px solid rgba(42, 51, 39, 0.2);
	border-radius: 12px;
	background: var(--wp--preset--color--surface);
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.wp-block-woocommerce-product-collection:not(.eb-kampanj-stor):not(.eb-kampanj-sma) .wc-block-product-template > li.wc-block-product:hover,
.wp-block-woocommerce-product-collection:not(.eb-kampanj-stor):not(.eb-kampanj-sma) .wc-block-product-template > li.wc-block-product:focus-within {
	background: var(--wp--preset--color--surface);
	border-color: rgba(42, 51, 39, 0.45);
	transform: translateY(-3px);
}

.wc-block-product-template .wp-block-post-terms {
	display: block;
	margin: 0 !important;
	padding: 16px 16px 0 !important;
	font-family: Karla, sans-serif;
	font-size: 13px !important;
	line-height: 1.3;
	letter-spacing: 0.02em !important;
	text-transform: none !important;
	color: var(--wp--preset--color--secondary-dark);
}

.wc-block-product-template .wp-block-post-title {
	padding: 6px 16px 0 !important;
	font-size: 16px;
	line-height: 1.3;
}

.wc-block-product-template .wp-block-post-title a:hover {
	color: var(--wp--preset--color--accent);
}

.wc-block-product-template .wp-block-woocommerce-product-price {
	padding: 12px 16px 6px !important;
	font-size: 23px !important;
	line-height: 1.15;
	letter-spacing: 0.01em;
	color: var(--wp--preset--color--contrast);
}

.wc-block-product-template .wp-block-woocommerce-product-price ins {
	color: var(--wp--preset--color--accent);
}

.wc-block-product-template .wp-block-woocommerce-product-price del {
	margin-right: 6px;
	font-size: 14px !important;
}

/* lagerstatus: färgad prick före texten */
.wc-block-product-template .wc-block-components-product-stock-indicator {
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 0;
	padding: 0 16px 16px !important;
	font-family: Karla, sans-serif;
	font-size: 13px !important;
	font-weight: 700;
	text-align: left !important;
	color: #2f5d2b;
}

.wc-block-product-template .wc-block-components-product-stock-indicator::before {
	content: "";
	flex: none;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: #3f7d3a;
}

.wc-block-product-template .wc-block-components-product-stock-indicator--out-of-stock {
	color: #8f2d22;
}

.wc-block-product-template .wc-block-components-product-stock-indicator--out-of-stock::before {
	background: #b3382c;
}

.wc-block-product-template .wc-block-components-product-stock-indicator--available-on-backorder,
.wc-block-product-template .wc-block-components-product-stock-indicator--low-stock {
	color: #8a5a12;
}

.wc-block-product-template .wc-block-components-product-stock-indicator--available-on-backorder::before,
.wc-block-product-template .wc-block-components-product-stock-indicator--low-stock::before {
	background: #c98a1b;
}

/* rea-bricka: rostfärgad pill uppe till vänster på bilden */
.wp-block-woocommerce-product-collection:not(.eb-kampanj-stor):not(.eb-kampanj-sma) .wc-block-product > .wp-block-woocommerce-product-sale-badge {
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 3;
	margin: 0 !important;
}

.wp-block-woocommerce-product-collection:not(.eb-kampanj-stor):not(.eb-kampanj-sma) .wc-block-product .wc-block-components-product-sale-badge {
	position: static;
	display: inline-block;
	margin: 0;
	padding: 5px 11px;
	border: 0;
	border-radius: 999px;
	background: var(--wp--preset--color--accent);
	color: #fff;
	font-family: "Josefin Sans", sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.2;
	text-transform: none;
	box-shadow: 0 4px 10px -4px rgba(20, 20, 15, 0.45);
}

/* --------------------------------------------- små etiketter i Karla */
.eb-produkt-eyebrow,
.eb-filterchips a,
.eb-kampanjkort__badge {
	font-family: Karla, sans-serif;
}

/* ------------------------------------------------ rytm på startsidan */
body.home .entry-content > .alignfull:not(.eb-hero) {
	padding-top: clamp(48px, 7vw, 80px) !important;
	padding-bottom: clamp(48px, 7vw, 80px) !important;
}

/* överrubrik ("eyebrow") över sektionsrubrikerna, utan att röra sidinnehållet */
body.home .entry-content > .alignfull h2.wp-block-heading::before {
	display: block;
	margin-bottom: 20px;
	font-family: Karla, sans-serif;
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1;
	text-transform: uppercase;
	color: #4b5a3f;
}

body.home .entry-content > .alignfull.eb-kampanj h2.wp-block-heading::before {
	color: #c9d2be;
}

body.home .entry-content > .alignfull:nth-child(2) h2.wp-block-heading::before { content: "Sortiment"; }
body.home .entry-content > .alignfull.eb-kampanj h2.wp-block-heading::before { content: "Erbjudanden"; }
body.home .entry-content > #bastsaljare h2.wp-block-heading::before { content: "Populärt just nu"; }
body.home .entry-content > #butik h2.wp-block-heading::before { content: "Besök oss"; }

/* ------------------------------------------- gemensam hover och fokus */
.wp-element-button,
.wp-block-button__link,
.eb-avdelning,
.wc-block-product-template .wc-block-product,
.eb-kampanj .wc-block-product {
	transition: transform 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.wp-element-button:hover,
.wp-block-button__link:hover {
	transform: translateY(-1px);
	box-shadow: 0 8px 16px -8px rgba(20, 20, 15, 0.4);
}

.eb-avdelning:hover,
.eb-kampanj .wc-block-product:hover {
	transform: translateY(-3px);
}

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 3px solid var(--wp--preset--color--accent);
	outline-offset: 2px;
	box-shadow: 0 0 0 2px #fff;
}

@media (prefers-reduced-motion: reduce) {
	* {
		transition: none !important;
	}

	.wp-element-button:hover,
	.wp-block-button__link:hover,
	.eb-avdelning:hover,
	.wc-block-product-template .wc-block-product:hover,
	.eb-kampanj .wc-block-product:hover {
		transform: none !important;
	}
}

/* --------------------------------------- produktsidan: pris vid rea */
.eb-produkt-prisrad:has(ins) {
	align-items: center;
}

.eb-produkt-prisrad .wc-block-components-product-price ins {
	color: var(--wp--preset--color--accent);
}

.eb-produkt-prisrad .wc-block-components-product-price del {
	font-size: 18px;
	color: #6b6b5c;
}

.eb-produkt-besparing {
	display: inline-block;
	padding: 5px 12px !important;
	border-radius: 999px;
	background: rgba(156, 74, 30, 0.12);
	font-size: 14px;
	line-height: 1.2;
}

/* ------------------------------ länkar i sektionsrubrikernas högerkant */
body.home .entry-content > .alignfull .wp-block-group > p.has-mono-font-family {
	font-family: Karla, sans-serif !important;
	font-size: 15px !important;
	font-weight: 700;
	letter-spacing: 0.02em;
}

body.home .entry-content > .alignfull .wp-block-group > p.has-mono-font-family a {
	display: inline-block;
	padding-bottom: 2px;
	border-bottom: 2px solid currentColor;
	color: var(--wp--preset--color--contrast) !important;
	transition: color 0.18s ease, border-color 0.18s ease;
}

body.home .entry-content > .alignfull .wp-block-group > p.has-mono-font-family a:hover {
	color: var(--wp--preset--color--secondary-light) !important;
}

body.home .entry-content > .alignfull.eb-kampanj .wp-block-group > p.has-mono-font-family a {
	color: var(--wp--preset--color--base) !important;
}

/* ------------------------------------------ kampanjsektionen: läsbarhet
   Stora kortets rostpanel: ljus text i stället för grågrön på rost, och
   priset i vitt (rost på rost försvann). Små korten: större och mörkare text. */
.eb-kampanj-stor .eb-kampanj__kategori,
.eb-kampanj-stor .eb-kampanj__kategori a {
	font-size: 14px !important;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #fff !important;
}

.eb-kampanj-stor .eb-kampanj__pris,
.eb-kampanj-stor .eb-kampanj__pris ins {
	font-size: 30px !important;
	color: #fff !important;
}

.eb-kampanj-stor .eb-kampanj__pris del {
	font-size: 17px !important;
	color: rgba(255, 255, 255, 0.82) !important;
}

.eb-kampanj-sma .eb-kampanj__kategori,
.eb-kampanj-sma .eb-kampanj__kategori a {
	font-size: 14px !important;
	font-weight: 700;
	color: var(--wp--preset--color--primary) !important;
}

.eb-kampanj-sma .eb-kampanjkort__titel,
.eb-kampanj-sma .eb-kampanjkort__titel a {
	font-size: 17px !important;
	line-height: 1.3;
	color: var(--wp--preset--color--contrast) !important;
}

.eb-kampanj-sma .eb-kampanj__pris ins {
	font-size: 26px !important;
	color: var(--wp--preset--color--accent) !important;
}

.eb-kampanj-sma .eb-kampanj__pris del {
	font-size: 15px !important;
	color: #5c5c4e !important;
}

/* "Alla kampanjer →" som samma knapp som "Visa hela sortimentet" i bästsäljarna */
body.home .entry-content > .alignfull.eb-kampanj .wp-block-group > p.has-mono-font-family a {
	padding: 14px 24px;
	border: 0;
	border-radius: var(--wp--custom--radius--md);
	background: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--contrast) !important;
	font-family: "Josefin Sans", sans-serif !important;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1.55;
	text-transform: uppercase;
}

body.home .entry-content > .alignfull.eb-kampanj .wp-block-group > p.has-mono-font-family a:hover {
	background: var(--wp--preset--color--secondary-light);
	color: var(--wp--preset--color--contrast) !important;
	transform: translateY(-1px);
	box-shadow: 0 8px 16px -8px rgba(20, 20, 15, 0.4);
}

body.home .entry-content > .alignfull.eb-kampanj .wp-block-group > p.has-mono-font-family {
	flex: 0 0 auto;
	width: fit-content;
}

/* Samma bildzoom vid hover på alla produktkort som i kampanjsektionen */
.wc-block-product-template .wc-block-components-product-image {
	overflow: hidden;
}

.wc-block-product-template .wc-block-components-product-image img {
	transition: transform 0.35s ease;
}

.wc-block-product-template .wc-block-product:hover .wc-block-components-product-image img {
	transform: scale(1.04);
}

@media (prefers-reduced-motion: reduce) {
	.wc-block-product-template .wc-block-product:hover .wc-block-components-product-image img {
		transform: none;
	}
}

/* ------------------------------------------- WCAG 1.4.3: textkontrast
   Åtgärdat efter kontrollmätning av alla sidor på dev (2026-10-07). */

/* kategorin i kampanjkorten hade opacity 0.75, vilket drog ner kontrasten */
.eb-kampanj__kategori {
	opacity: 1;
}

/* söksidans överrubrik: ljus salvia på skogsgrön var 4,45 : 1 */
.eb-kategori-banner__eyebrow {
	color: #c9d2be;
}

/* platshållartexten i sökfältet (webbläsarens grå #757575 gav 4,2 : 1) */
::placeholder {
	color: #5c5c4e;
	opacity: 1;
}

/* ------------------------------------------- WCAG 2.1 AA: slutkollen
   Åtgärdat efter axe- och tangentbordskontrollen av dev (2026-10-29). */

/* 1.4.3: överstruket ordinariepris i produktkorten, #7a7a6a var 4,1 : 1 på
   kortens #FBF8EF (produktsidan har redan samma färg, se ovan) */
.wc-block-product-template .wp-block-woocommerce-product-price del {
	color: #6b6b5c;
}

/* 1.4.1: länkar i löptext syntes bara på färgen (1,95 : 1 mot texten), eftersom
   theme.json tar bort understrykningen globalt. Bara stycken och listor i
   sidinnehåll och produktbeskrivningar; meny, kort och knappar är oförändrade. */
.wp-block-post-content :where(p, li) a:where(:not(.wp-element-button)),
.woocommerce-Tabs-panel :where(p, li) a {
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

/* 1.4.11: WooCommerce ritar filterkryssrutorna som 10 % svart på vitt
   (1,2 : 1), ramen är genomskinlig. Blockets egen variabel ger samma ram som
   Kampanjvara-rutan i kategoriarkiv.css (Woo:s regel går före en vanlig klass). */
.eb-filterpanel {
	--wc-product-filter-checkbox-list-option-element-border: var(--wp--preset--color--contrast-2);
}
