/* ==========================================================================
   MaxyHome UX — dizajn tokens (Faza 1)
   Ena akcijska barva (zelena) za vsa nakupna dejanja, oranžna ostane samo
   za značke popustov. Izklop: deaktiviraj vtičnik "MaxyHome UX".
   ========================================================================== */

:root {
	--mx-green: #2E7D32;        /* akcijska CTA */
	--mx-green-dark: #256428;
	--mx-green-light: #E8F5E9;
	--mx-ink: #1A1A1A;
	--mx-gray: #6B7280;
	--mx-line: #E5E7EB;
	--mx-sale: #D9480F;         /* SAMO znacke popustov */
	--mx-radius: 12px;
}

/* --------------------------------------------------------------------------
   1. Poenoteni CTA gumbi (nakupna dejanja -> zelena)
   -------------------------------------------------------------------------- */
body .button.alt,
body button.button.alt,
body .single_add_to_cart_button,
body .add_to_cart_button,
body .product-card .button,
body ul.products li.product .button,
body .checkout-button,
body .wc-block-components-button:not(.is-link),
body .wp-block-button__link,
body .commercekit-sticky-add-to-cart .button,
body .cart .button[name="update_cart"] + .checkout-button,
body form.cart .button {
	background-color: var(--mx-green) !important;
	border-color: var(--mx-green) !important;
	color: #fff !important;
}

body .button.alt:hover,
body .single_add_to_cart_button:hover,
body .add_to_cart_button:hover,
body ul.products li.product .button:hover,
body .checkout-button:hover,
body .wc-block-components-button:not(.is-link):hover,
body .wp-block-button__link:hover,
body form.cart .button:hover {
	background-color: var(--mx-green-dark) !important;
	border-color: var(--mx-green-dark) !important;
}

/* Kartice izdelkov: child tema vsiljuje oranzno (var(--pc-accent)
   !important z visoko specificnostjo) -> se mocnejsi selektor */
body.woocommerce ul.products li.product .button,
body.woocommerce-page ul.products li.product .button,
body ul.products li.product .button.add_to_cart_button,
body ul.products li.product a.button.product_type_variable,
body ul.products li.product a.button.add_to_cart_button,
body ul.products li.product a.button.product_type_simple,
body ul.products li.product a.button.ajax_add_to_cart,
body.woocommerce ul.products li.product a.button,
body.woocommerce-page ul.products li.product a.button {
	background: var(--mx-green) !important;
	background-color: var(--mx-green) !important;
	border-color: var(--mx-green) !important;
	color: #fff !important;
}
body.woocommerce ul.products li.product .button:hover,
body.woocommerce-page ul.products li.product .button:hover,
body ul.products li.product .button.add_to_cart_button:hover,
body ul.products li.product a.button.ajax_add_to_cart:hover,
body.woocommerce ul.products li.product a.button:hover,
body.woocommerce-page ul.products li.product a.button:hover {
	background: var(--mx-green-dark) !important;
	background-color: var(--mx-green-dark) !important;
	border-color: var(--mx-green-dark) !important;
}

/* Modri gumbi obrazcev (WPForms) -> sistemska zelena */
body .wpforms-submit,
body button[type="submit"].wpforms-submit {
	background-color: var(--mx-green) !important;
	border-color: var(--mx-green) !important;
	color: #fff !important;
}

/* --------------------------------------------------------------------------
   2. Znacke popustov: enotne, ne prekrivajo naslova
   -------------------------------------------------------------------------- */
body span.onsale {
	background: var(--mx-sale) !important;
	color: #fff !important;
	border-radius: 8px;
	font-weight: 700;
	z-index: 2;
}

/* "Akcija!" znacka na produktni strani prekriva H1 -> pripni na galerijo */
body.single-product .summary > .onsale,
body.single-product .product > span.onsale {
	top: 10px !important;
	left: 10px !important;
	right: auto !important;
	transform: none !important;
}

/* --------------------------------------------------------------------------
   3. Promo pas: rumeno/oker -> temna nevtralna z boljsim kontrastom
   -------------------------------------------------------------------------- */
body .header-1-widget,
body .below-header,
body .header-widget-region {
	background: var(--mx-ink) !important;
	color: #fff !important;
}
body .header-1-widget a,
body .below-header a { color: #9CE37D !important; }

/* --------------------------------------------------------------------------
   4. Promo blok na produktih (.mx-promo iz opisov)
   -------------------------------------------------------------------------- */
.mx-promo {
	border: 1.5px solid var(--mx-green) !important;
	background: var(--mx-green-light) !important;
	border-radius: var(--mx-radius) !important;
}
.mx-promo .mx-promo-title strong { color: var(--mx-green) !important; }

/* --------------------------------------------------------------------------
   5. Dostopnost: vidno focus stanje
   -------------------------------------------------------------------------- */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible {
	outline: 2px solid var(--mx-green) !important;
	outline-offset: 2px;
}


/* --------------------------------------------------------------------------
   6. Kosarica v glavi: kosara z zeleno znacko (mockup)
   -------------------------------------------------------------------------- */
.site-header-cart .cart-contents { position: relative; }
.site-header-cart .cart-contents::before {
	content: "\1F9FA";
	font-size: 24px;
	line-height: 1;
	margin-left: 6px;
	vertical-align: middle;
}
.site-header-cart,
.shoptimizer-cart { overflow: visible !important; }
.site-header-cart .cart-contents .count {
	position: absolute !important;
	top: 2px !important;
	left: 6px !important;
	right: auto !important;
	background: var(--mx-green) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 99px !important;
	min-width: 16px !important;
	width: auto !important;
	height: 16px !important;
	line-height: 16px !important;
	font-size: 10px !important;
	font-weight: 700 !important;
	text-align: center;
	padding: 0 4px !important;
	box-shadow: none !important;
}


/* --------------------------------------------------------------------------
   7. Faza 2 — kategorije in navigacija
   -------------------------------------------------------------------------- */

/* sidebar v trgovini: samo kategorije + filtri (odvecni widgeti stran) */
.woocommerce .widget-area .widget_top_rated_products,
.woocommerce #secondary .widget_top_rated_products,
.widget-area .widget_recent_entries,
.widget-area .widget_recent_comments,
.woocommerce .widget-area .widget_block:has(.wp-block-latest-posts),
.woocommerce .widget-area .widget_block:has(.wp-block-latest-comments),
.woocommerce .widget-area .widget_block:has(.wp-block-search) {
	display: none !important;
}

/* mobilno: iskalnik vedno viden v glavi — glavi rezerviramo dodatnih
   58px visine in iskalnik postavimo v ta prostor. Promo pasica pride
   NEDOTAKNJENA takoj pod glavo. */
@media (max-width: 992px) {
	.site-header {
		position: relative;
		padding-bottom: 58px !important;
		background: #fff !important;
	}
	.site-header .site-search {
		display: block !important;
		position: absolute !important;
		left: 0 !important;
		right: 0 !important;
		top: 100% !important;
		bottom: auto !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		background: #fff !important;
		padding: 2px 16px 12px !important;
		visibility: visible !important;
		opacity: 1 !important;
		border: none !important;
		box-shadow: none !important;
		box-sizing: border-box !important;
		z-index: 5;
	}
	.site-header .site-search form,
	.site-header .site-search .search-field {
		width: 100% !important;
	}
	.site-header .site-search .search-field {
		border-radius: 99px !important;
		border: 1px solid var(--mx-line) !important;
		background: #F7F7F5 !important;
		padding: 10px 16px !important;
		font-size: 14px !important;
	}
}

/* SEO tekst kategorije: zlozen accordion na dnu */
.mxc-seo {
	background: #fff;
	border: 1px solid var(--mx-line);
	border-radius: 12px;
	margin: 18px 0;
	padding: 0 16px;
}
.mxc-seo summary {
	font-size: 14.5px;
	font-weight: 700;
	padding: 14px 0;
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	color: var(--mx-ink);
}
.mxc-seo summary::-webkit-details-marker { display: none; }
.mxc-seo summary::after { content: "+"; color: var(--mx-green); font-size: 20px; font-weight: 700; }
.mxc-seo[open] summary::after { content: "\2013"; }
.mxc-seo .below-woocommerce-category { padding-bottom: 14px; }


/* --------------------------------------------------------------------------
   8. Mega meni za Rastlinjake (samo namizje)
   -------------------------------------------------------------------------- */
.mxm-panel { display: none; }
@media (min-width: 993px) {
	.mxm-host { position: static !important; }
	.mxm-host > .sub-menu,
	.mxm-host > .sub-menu-wrapper,
	.mxm-host .sub-menu-wrapper { display: none !important; }
	.mxm-panel {
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		z-index: 999;
		background: #fff;
		border: 1px solid var(--mx-line);
		border-top: none;
		border-radius: 0 0 14px 14px;
		box-shadow: 0 18px 40px rgba(0, 0, 0, .12);
		padding: 18px 18px 0;
	}
	.mxm-host:hover .mxm-panel,
	.mxm-host:focus-within .mxm-panel { display: block; }
	.mxm-grid {
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
		gap: 10px;
	}
	.mxm-card {
		display: flex;
		flex-direction: column;
		align-items: center;
		text-align: center;
		gap: 6px;
		padding: 14px 10px 12px;
		border: 1px solid var(--mx-line);
		border-radius: 12px;
		background: #fff;
		text-decoration: none !important;
		transition: border-color .15s, background .15s;
	}
	.mxm-card:hover { border-color: var(--mx-green); background: var(--mx-green-light); }
	.mxm-card img {
		width: 64px;
		height: 64px;
		object-fit: contain;
		border-radius: 10px;
	}
	.mxm-noimg { font-size: 34px; line-height: 64px; }
	.mxm-card b { font-size: 13.5px; color: var(--mx-ink); line-height: 1.25; }
	.mxm-card small { font-size: 11.5px; color: var(--mx-gray); }
	.mxm-foot {
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: 12px;
		padding: 12px 2px;
		margin-top: 14px;
		border-top: 1px solid var(--mx-line);
	}
	.mxm-guide { font-size: 13.5px; font-weight: 600; color: var(--mx-ink) !important; }
	.mxm-all { font-size: 13.5px; font-weight: 700; color: var(--mx-green) !important; margin-left: auto; }

	/* "Pomoč kupcem": kartice z ikonami namesto slik */
	.mxm-help .mxm-grid { grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); }
	.mxm-card-ico {
		flex-direction: row;
		align-items: center;
		text-align: left;
		gap: 12px;
		padding: 13px 14px;
	}
	.mxm-card-ico .mxm-ic {
		width: 34px;
		height: 34px;
		flex: 0 0 34px;
		padding: 7px;
		border-radius: 9px;
		background: var(--mx-green-light);
		object-fit: contain;
	}
	.mxm-card-ico b { font-size: 13.5px; }
}

/* --------------------------------------------------------------------------
   9. AJAX filtri + mobilni "Filtri" drawer
   -------------------------------------------------------------------------- */
ul.products.mxf-loading { opacity: .4; pointer-events: none; transition: opacity .15s; }

.mxd-btn { display: none; }
@media (max-width: 992px) {
	.mxd-btn {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		margin: 0 0 12px;
		padding: 10px 18px;
		min-height: 44px;
		border: 1.5px solid var(--mx-green);
		border-radius: 99px;
		background: #fff !important;
		color: var(--mx-green) !important;
		font-size: 14px;
		font-weight: 700;
		cursor: pointer;
	}
	/* sidebar zivi v drawerju */
	.mxd-overlay {
		position: fixed;
		inset: 0;
		z-index: 100000;
		background: rgba(0, 0, 0, .45);
		opacity: 0;
		pointer-events: none;
		transition: opacity .2s;
	}
	.mxd-overlay.open { opacity: 1; pointer-events: auto; }
	.mxd-sheet {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		max-height: 82vh;
		background: #fff;
		border-radius: 16px 16px 0 0;
		display: flex;
		flex-direction: column;
		transform: translateY(100%);
		transition: transform .25s ease;
	}
	.mxd-overlay.open .mxd-sheet { transform: translateY(0); }
	.mxd-head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 14px 16px;
		border-bottom: 1px solid var(--mx-line);
	}
	.mxd-head b { font-size: 16px; color: var(--mx-ink); }
	.mxd-close {
		width: 36px;
		height: 36px;
		border: none;
		background: #F3F4F2 !important;
		color: var(--mx-ink) !important;
		border-radius: 99px;
		font-size: 15px;
		cursor: pointer;
	}
	.mxd-body { padding: 12px 16px 24px; overflow-y: auto; }
	.mxd-sheet { min-height: 42vh; }
	.mxd-body .widget { margin-bottom: 20px; display: block !important; }
	.mxd-body .widget-area {
		display: block !important;
		position: static !important;
		left: auto !important;
		right: auto !important;
		top: auto !important;
		bottom: auto !important;
		transform: none !important;
		width: 100% !important;
		height: auto !important;
		max-height: none !important;
		min-height: 0 !important;
		visibility: visible !important;
		opacity: 1 !important;
		background: transparent !important;
		box-shadow: none !important;
		padding: 0 !important;
		margin: 0 !important;
		z-index: auto !important;
		overflow: visible !important;
	}
	.mxd-body .widget-title,
	.mxd-body .widget h2,
	.mxd-body .widget h3 {
		display: block !important;
		font-size: 14px !important;
		font-weight: 700 !important;
		color: var(--mx-ink) !important;
		margin: 0 0 8px !important;
		padding: 0 !important;
	}
	.mxd-body .widget ul { display: block !important; margin: 0; }
	.mxd-body .widget ul li { padding: 6px 0; font-size: 14px; }
	/* select2 v drawerju odpove -> pokazemo navadne native selecte */
	.mxd-body .select2,
	.mxd-body .select2-container { display: none !important; }
	.mxd-body select {
		display: block !important;
		width: 100% !important;
		min-height: 44px;
		border: 1.5px solid var(--mx-line) !important;
		border-radius: 11px !important;
		padding: 8px 12px !important;
		background: #fff !important;
		font-size: 14px !important;
		color: var(--mx-ink) !important;
		opacity: 1 !important;
		position: static !important;
		visibility: visible !important;
	}
}


/* temin lasten "PRIKAZI FILTRI" gumb se umakne nasemu drawerju */
@media (max-width: 992px) {
	button.mobile-filter.shoptimizer-mobile-toggle,
	.shoptimizer-mobile-toggle.mobile-filter { display: none !important; }
}

/* =====================================================
   Faza 4: blog arhiv kot kartice s slicicami
   ===================================================== */
body.mxb .site-main.grid article[class*="type-post"] {
	border: 1px solid var(--mx-line);
	border-radius: 14px;
	overflow: hidden;
	background: #fff;
	margin-bottom: 28px;
	display: flex;
	flex-direction: column;
	transition: box-shadow .15s ease, transform .15s ease;
}
body.mxb .site-main.grid article[class*="type-post"]:hover {
	box-shadow: 0 8px 24px rgba(0,0,0,.08);
	transform: translateY(-2px);
}
body.mxb .mxb-thumb { display: block; aspect-ratio: 16/9; overflow: hidden; background: var(--mx-green-light); }
body.mxb .mxb-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
body.mxb .site-main.grid article[class*="type-post"] .blog-loop-content-wrapper { padding: 18px 20px 20px; }
body.mxb .site-main.grid article[class*="type-post"] .entry-title {
	font-size: 1.15rem;
	line-height: 1.35;
	margin: 0 0 6px;
}
body.mxb .site-main.grid article[class*="type-post"] .entry-title a { color: var(--mx-ink); }
body.mxb .site-main.grid article[class*="type-post"] .entry-title a:hover { color: var(--mx-green); }
body.mxb .site-main.grid article[class*="type-post"] .posted-on {
	font-size: .8rem;
	color: #6b7280;
	text-transform: none;
	letter-spacing: 0;
}
body.mxb .site-main.grid article[class*="type-post"] .entry-content,
body.mxb .site-main.grid article[class*="type-post"] .entry-summary {
	font-size: .92rem;
	color: #4b5563;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin-bottom: 8px;
}
body.mxb .site-main.grid article[class*="type-post"] .entry-content p { margin-bottom: 0; }
body.mxb .site-main.grid article[class*="type-post"] a.mxb-more,
body.mxb .site-main.grid article[class*="type-post"] .more-link {
	color: var(--mx-green);
	font-weight: 600;
	font-size: .92rem;
	text-decoration: none;
}
/* arhiv sidebar: skrij gole "Arhivi" na blogu */
body.mxb.blog .widget_archive .widget-title,
body.mxb.blog .widget_archive { display: none !important; }
