/* ============================================================
   KARHULAN KANAT — KAUPPA / TUOTEARKISTO (shop.css)  [v3]
   v2 + pakotetaan napit AINA näkyviin (Kadencen hover-piilotus ohitettu),
   myös mobiilissa. Suositus silti: sammuta Kadencen
   "Reveal Add to Cart on Hover" -asetus.
   ============================================================ */

/* ── SIVUN TAUSTA: vaalea ── */
body.post-type-archive-product,
body.tax-product_cat,
body.woocommerce-shop { background:var(--kk-tausta,#faf8f4) !important; }

body.post-type-archive-product .site-content,
body.post-type-archive-product #primary,
body.post-type-archive-product .content-container,
body.post-type-archive-product .entry-content-wrap,
body.post-type-archive-product .content-bg,
body.tax-product_cat .site-content,
body.tax-product_cat #primary,
body.tax-product_cat .content-container,
body.tax-product_cat .content-bg { background:transparent !important; }

.woocommerce.archive .site-main,
.woocommerce-page.archive .site-main { padding-top:8px; }

/* ── SIVUN OTSIKKO / INTRO ── */
.woocommerce-products-header { text-align:center; max-width:640px; margin:8px auto 28px; }
.woocommerce-products-header__title,
.woocommerce-products-header .page-title {
	font-family:'Lora',Georgia,serif !important; font-weight:600 !important;
	font-size:clamp(1.8rem,3.5vw,2.4rem) !important; color:var(--kk-vihrea,#2C3E2D) !important; margin:0 0 8px !important;
}
.woocommerce-products-header .term-description { font-size:15px; color:var(--kk-teksti-muted,#5a6e5b); }

/* ── TYÖKALURIVI ── */
.woocommerce .woocommerce-result-count { font-size:13px; color:var(--kk-teksti-muted,#5a6e5b); margin:0; float:none; display:inline-block; }
.woocommerce .woocommerce-ordering { float:none; margin:0; }
.woocommerce .woocommerce-ordering select,
.woocommerce select.orderby {
	height:44px; border:1px solid #d0ccc4; border-radius:9px; padding:0 36px 0 14px; font-size:14px;
	font-family:'DM Sans','Inter',Arial,sans-serif; color:var(--kk-vihrea,#2C3E2D); background:#fff;
	-webkit-appearance:none; appearance:none; cursor:pointer;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%235a6e5b' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
	background-repeat:no-repeat; background-position:right 14px center;
}
.woocommerce .woocommerce-ordering select:focus { outline:none; border-color:var(--kk-vihrea,#2C3E2D); box-shadow:0 0 0 3px rgba(var(--kk-vihrea-rgb,44,62,45),.08); }
.woocommerce .before-shop-loop { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:24px; flex-wrap:wrap; }

/* ── TUOTERUUDUKKO ── */
.woocommerce ul.products,
.woocommerce-page ul.products {
	display:grid !important; grid-template-columns:repeat(4,1fr) !important; gap:22px !important;
	margin:0 !important; padding:0 !important; list-style:none !important;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after { content:none !important; display:none !important; }

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	width:auto !important; margin:0 !important; padding:0 !important; float:none !important;
	background:#fff; border:1px solid #e6e0d5; border-radius:14px; overflow:hidden;
	display:flex; flex-direction:column;
	transition:box-shadow .2s, transform .2s, border-color .2s;
}
.woocommerce ul.products li.product:hover {
	box-shadow:0 14px 40px rgba(var(--kk-vihrea-rgb,44,62,45),.12); transform:translateY(-4px); border-color:#d8d0c2;
}

.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
.woocommerce ul.products li.product > a:first-of-type { display:block; text-decoration:none; }

/* Kuva */
.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product img {
	margin:0 !important; border-radius:0 !important; width:100% !important; aspect-ratio:1/1;
	object-fit:cover; background:#f3f1ec; display:block;
}

/* Otsikko */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3 {
	font-family:'DM Sans','Inter',Arial,sans-serif !important;
	font-size:15.5px !important; font-weight:600 !important; line-height:1.3 !important;
	color:var(--kk-vihrea,#2C3E2D) !important; padding:16px 18px 0 !important; margin:0 !important;
}
.woocommerce ul.products li.product .woocommerce-product-details__short-description { font-size:12.5px; color:#7a8274; padding:6px 18px 0; margin:0; }
.woocommerce ul.products li.product .woocommerce-product-details__short-description p { margin:0; }

/* Hinta */
.woocommerce ul.products li.product .price {
	color:var(--kk-oranssi,#C4622D) !important; font-weight:600 !important; font-size:16px !important;
	padding:8px 18px 14px !important; margin:0 !important; display:block;
}
.woocommerce ul.products li.product .price del { color:#b3ac9f !important; font-weight:400; margin-right:6px; opacity:1; }
.woocommerce ul.products li.product .price ins { text-decoration:none; }
.woocommerce ul.products li.product .price small { display:block; font-size:11px; color:#9aa093; font-weight:400; margin-top:2px; }

/* ════════════════════════════════════════════════════════
   PAKOTA NAPIT AINA NÄKYVIIN (ohittaa Kadencen hover-piilotuksen)
   Kohdistuu sekä omaan kääreeseen että Kadencen mahdolliseen
   .product-action-wrap / .loop-add-to-cart -kääreeseen.
   ════════════════════════════════════════════════════════ */
.woocommerce ul.products li.product .kk-card-actions,
.woocommerce ul.products li.product .product-action-wrap,
.woocommerce ul.products li.product .loop-add-to-cart,
.woocommerce ul.products li.product .kadence-woocommerce-loop-add-to-cart {
	position:static !important; opacity:1 !important; visibility:visible !important;
	transform:none !important; max-height:none !important; height:auto !important;
	overflow:visible !important; pointer-events:auto !important; inset:auto !important;
}

/* Toiminta-alue: kaksi nappia kortin pohjassa */
.woocommerce ul.products li.product .kk-card-actions {
	margin-top:auto; padding:0 18px 18px; display:grid; grid-template-columns:1fr 1fr; gap:8px; align-items:stretch;
}

/* Napit aina näkyviin myös yksittäisinä elementteinä */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.add_to_cart_button,
.woocommerce ul.products li.product a.button.product_type_simple,
.woocommerce ul.products li.product .kk-view-btn {
	opacity:1 !important; visibility:visible !important; transform:none !important;
	position:static !important; pointer-events:auto !important;
}

/* Yhteinen nappityyli (kortin pohjan napit) */
.woocommerce ul.products li.product .kk-card-actions .kk-view-btn,
.woocommerce ul.products li.product .kk-card-actions .button,
.woocommerce ul.products li.product .kk-card-actions a.add_to_cart_button {
	display:flex !important; align-items:center; justify-content:center;
	margin:0 !important; padding:11px 12px !important; min-height:44px;
	border-radius:9px !important; font-family:'DM Sans','Inter',Arial,sans-serif !important;
	font-size:13.5px !important; font-weight:600 !important; text-align:center !important;
	text-decoration:none !important; white-space:nowrap; cursor:pointer; line-height:1.2 !important;
	transition:background .2s, border-color .2s, transform .12s !important; box-shadow:none !important;
}

/* "Katso" — outline */
.woocommerce ul.products li.product .kk-card-actions .kk-view-btn {
	background:#fff !important; color:var(--kk-vihrea,#2C3E2D) !important; border:1.5px solid #cfc8ba !important;
}
.woocommerce ul.products li.product .kk-card-actions .kk-view-btn:hover { border-color:var(--kk-vihrea,#2C3E2D) !important; background:#f6f2ea !important; }

/* "Varaa" — oranssi */
.woocommerce ul.products li.product .kk-card-actions .button,
.woocommerce ul.products li.product .kk-card-actions a.add_to_cart_button {
	background:var(--kk-oranssi,#C4622D) !important; color:var(--kk-kerma,#F5F0E8) !important; border:1.5px solid var(--kk-oranssi,#C4622D) !important;
}
.woocommerce ul.products li.product .kk-card-actions .button:hover,
.woocommerce ul.products li.product .kk-card-actions a.add_to_cart_button:hover {
	background:var(--kk-oranssi-tumma,#a8521f) !important; border-color:var(--kk-oranssi-tumma,#a8521f) !important; transform:translateY(-1px);
}
.woocommerce ul.products li.product .kk-card-actions .button.loading { color:transparent !important; }
.woocommerce ul.products li.product .kk-card-actions .button.added { background:var(--kk-vihrea,#2C3E2D) !important; border-color:var(--kk-vihrea,#2C3E2D) !important; }

/* "Näytä ostoskori" -linkki lisäyksen jälkeen */
.woocommerce ul.products li.product .kk-card-actions .added_to_cart {
	grid-column:1 / -1; display:flex !important; align-items:center; justify-content:center;
	margin:2px 0 0 !important; padding:6px !important; min-height:0 !important;
	background:transparent !important; border:none !important; color:var(--kk-vihrea,#2C3E2D) !important;
	font-size:12.5px !important; font-weight:600 !important; text-decoration:underline !important; text-underline-offset:3px;
}
.woocommerce ul.products li.product .kk-card-actions .added_to_cart:hover { color:var(--kk-oranssi,#C4622D) !important; }

/* Varmuustyyli ilman snippetiä (yksi nappi) */
.woocommerce ul.products li.product > .button,
.woocommerce ul.products li.product > a.add_to_cart_button {
	display:block !important; margin:0 18px 18px !important; padding:12px 18px !important;
	background:var(--kk-oranssi,#C4622D) !important; color:var(--kk-kerma,#F5F0E8) !important; border-radius:9px !important;
	font-weight:600 !important; text-align:center !important;
}

/* Loppuunmyyty-merkki */
.woocommerce ul.products li.product .onsale,
.woocommerce span.onsale {
	background:var(--kk-vihrea,#2C3E2D) !important; color:var(--kk-kerma,#F5F0E8) !important; border-radius:99px !important;
	min-height:auto !important; min-width:auto !important; padding:4px 11px !important;
	font-size:11px !important; font-weight:600 !important; top:12px !important; left:12px !important;
	margin:0 !important; line-height:1.4 !important;
}

/* ── SIVUTUS ── */
.woocommerce nav.woocommerce-pagination { margin-top:34px; text-align:center; }
.woocommerce nav.woocommerce-pagination ul { border:none; display:inline-flex; gap:6px; }
.woocommerce nav.woocommerce-pagination ul li { border:none; margin:0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	border:1px solid var(--kk-reuna,#ddd5c5); border-radius:8px; min-width:40px; height:40px; line-height:40px;
	padding:0 10px; color:var(--kk-vihrea,#2C3E2D); font-size:14px; background:#fff;
}
.woocommerce nav.woocommerce-pagination ul li span.current { background:var(--kk-vihrea,#2C3E2D); color:var(--kk-kerma,#F5F0E8); border-color:var(--kk-vihrea,#2C3E2D); }
.woocommerce nav.woocommerce-pagination ul li a:hover { background:var(--kk-kerma,#F5F0E8); border-color:var(--kk-oranssi,#C4622D); }

/* ── TABLETTI: 3 saraketta ── */
@media (max-width:1024px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products { grid-template-columns:repeat(3,1fr) !important; gap:18px !important; }
}

/* ── MOBIILI: 2 saraketta, napit allekkain, AINA näkyvissä ── */
@media (max-width:600px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products { grid-template-columns:repeat(2,1fr) !important; gap:12px !important; }

	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.woocommerce ul.products li.product h2,
	.woocommerce ul.products li.product h3 { font-size:13.5px !important; padding:12px 12px 0 !important; }
	.woocommerce ul.products li.product .price { font-size:14.5px !important; padding:6px 12px 12px !important; }

	.woocommerce ul.products li.product .kk-card-actions { grid-template-columns:1fr; padding:0 12px 12px; gap:7px; }
	.woocommerce ul.products li.product .kk-card-actions .kk-view-btn,
	.woocommerce ul.products li.product .kk-card-actions .button { font-size:13px !important; min-height:42px; }

	.woocommerce .before-shop-loop { gap:10px; }
	.woocommerce .woocommerce-ordering select { width:100%; }
}

/* ════════════════════════════════════════════════════════
   KORJAUS: "Varaa"-napin tekstin leikkautuminen kapeissa
   korteissa (mm. tuotesivun "Liittyvät tuotteet" -lohko).
   - Varaa-napille leveämpi sarake
   - ei isoja kirjaimia (lyhyempi teksti)
   - pienempi vaakapehmustus + napin saa kutistua
   ════════════════════════════════════════════════════════ */
.woocommerce ul.products li.product .kk-card-actions {
	grid-template-columns:0.9fr 1.1fr !important; gap:7px !important;
}
.woocommerce ul.products li.product .kk-card-actions .kk-view-btn,
.woocommerce ul.products li.product .kk-card-actions .button,
.woocommerce ul.products li.product .kk-card-actions a.add_to_cart_button {
	min-width:0 !important; padding-left:8px !important; padding-right:8px !important;
	font-size:13px !important; text-transform:none !important; letter-spacing:0 !important;
	gap:5px; overflow:hidden;
}
/* napin sisäinen nuoli-ikoni (jos teema lisää) pysyy pienenä eikä työnnä yli */
.woocommerce ul.products li.product .kk-card-actions .button svg,
.woocommerce ul.products li.product .kk-card-actions a.add_to_cart_button svg {
	flex:0 0 auto; width:14px; height:14px; margin:0;
}

/* "Liittyvät tuotteet" / "Saatat myös pitää" -otsikko brändifontilla */
.woocommerce .related.products > h2,
.woocommerce .upsells.products > h2,
.woocommerce section.related > h2,
.woocommerce section.up-sells > h2 {
	font-family:'Lora',Georgia,serif !important; font-weight:600 !important;
	font-size:clamp(1.4rem,2.6vw,1.9rem) !important; color:var(--kk-vihrea,#2C3E2D) !important; margin:0 0 22px !important;
}

/* Erittäin kapeissa korteissa (esim. 4-up liittyvät) napit allekkain */
@media (max-width:520px) {
	.woocommerce ul.products li.product .kk-card-actions { grid-template-columns:1fr !important; }
}

/* ════════════════════════════════════════════════════════
   PAREMPI NAPPIASETTELU: kaksi nappia ALLEKKAIN, täysleveinä.
   Ratkaisee leikkautumisen lopullisesti (teksti ei mahdu kahteen
   kapeaan sarakkeeseen). Korvaa aiemman vierekkäisen asettelun.
   ════════════════════════════════════════════════════════ */
.woocommerce ul.products li.product .kk-card-actions {
	display:flex !important; flex-direction:column !important; gap:8px !important;
	grid-template-columns:none !important; padding:0 18px 18px;
}
.woocommerce ul.products li.product .kk-card-actions .kk-view-btn,
.woocommerce ul.products li.product .kk-card-actions .button,
.woocommerce ul.products li.product .kk-card-actions a.add_to_cart_button {
	width:100% !important; min-width:0 !important; overflow:visible !important;
	white-space:nowrap; text-transform:none !important; letter-spacing:0 !important;
	padding:12px 16px !important; font-size:14px !important; min-height:46px;
}
/* "Näytä ostoskori" -linkki pysyy viimeisenä, koko leveydeltä */
.woocommerce ul.products li.product .kk-card-actions .added_to_cart { width:100% !important; }

@media (max-width:600px) {
	.woocommerce ul.products li.product .kk-card-actions { padding:0 12px 12px; }
}
