/*
Theme Name: Virtual+
Theme URI: https://virtualplus.eu/
Author: Harmar d.o.o.
Author URI: https://virtualplus.eu/
Description: Premium WordPress block (Full Site Editing) tema za Virtual+ – virtualne pisarne v Ljubljani. Antracit + zlata, Manrope/Inter, glassmorphism, hitra in SEO prijazna. Pripravljeno za vecjezicnost in RTL.
Requires at least: 6.5
Tested up to: 7.0
Requires PHP: 7.4
Version: 2.4.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: virtualplus
Tags: full-site-editing, block-patterns, rtl-language-support, business, translation-ready, custom-colors, sticky-post
*/

/* ============================================================
   OSNOVE
   ============================================================ */
:root {
	--vp-shadow-sm: 0 2px 8px rgba(20, 24, 40, 0.06);
	--vp-shadow: 0 12px 34px rgba(20, 24, 40, 0.10);
	--vp-shadow-lg: 0 28px 60px rgba(20, 24, 40, 0.16);
	--vp-radius: 18px;
}
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
.alignfull { border-radius: 0; }

.vp-eyebrow {
	display: inline-block; font-family: Manrope, sans-serif; font-weight: 700;
	letter-spacing: 0.14em; text-transform: uppercase; font-size: 0.8rem;
	color: var(--wp--preset--color--gold-2);
}
/* 2.1.1: sredinsko poravnan eyebrow — inline-block ignorira auto margine,
   zato se je ob nativni polni širini prilepil na levi rob zaslona. */
p.vp-eyebrow.has-text-align-center { display: block; width: fit-content; margin-left: auto; margin-right: auto; }

/* ============================================================
   GUMBI
   ============================================================ */
.wp-block-button__link { transition: transform .16s ease, box-shadow .16s ease, background .2s ease, color .2s ease; }
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
	background: linear-gradient(120deg, #fac816 0%, #f5861f 100%) !important;
	color: #333 !important; transform: translateY(-2px); box-shadow: 0 10px 24px rgba(245, 134, 31, 0.32);
}
.wp-block-button.is-style-outline .wp-block-button__link {
	border: 2px solid currentColor; background: transparent; color: var(--wp--preset--color--ink);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: var(--wp--preset--color--ink); color: #fff; border-color: var(--wp--preset--color--ink); transform: translateY(-2px);
}

/* ============================================================
   GLAVA (transparentna -> glass ob scrollu)
   ============================================================ */
.vp-header {
	position: sticky; top: 0; z-index: 999; color: #fff;
	background: transparent; transition: background .25s ease, box-shadow .25s ease, color .25s ease;
}
.vp-header.is-scrolled {
	background: rgba(255, 255, 255, 0.82);
	-webkit-backdrop-filter: saturate(180%) blur(14px); backdrop-filter: saturate(180%) blur(14px);
	color: var(--wp--preset--color--ink); box-shadow: 0 1px 0 rgba(20, 24, 40, 0.06), var(--vp-shadow-sm);
}
.vp-logo { display: inline-flex; align-items: center; }
.vp-logo svg { height: 26px; width: auto; color: currentColor; display: block; }
.vp-header .wp-block-navigation { color: currentColor; }
.vp-header .wp-block-navigation a { color: currentColor; font-family: Manrope, sans-serif; font-weight: 600; }
.vp-header .wp-block-navigation a:hover,
.vp-header .wp-block-navigation .current-menu-item > a { color: var(--wp--preset--color--orange, #f5861f); }
.vp-header .wp-block-navigation__responsive-container.is-menu-open {
	background: #fff; color: var(--wp--preset--color--ink);
}
.vp-header .wp-block-navigation__responsive-container.is-menu-open a { color: var(--wp--preset--color--ink); }
.vp-header:has(.wp-block-navigation__responsive-container.is-menu-open) { background: #fff; color: var(--wp--preset--color--ink); }
/* CTA gumb v glavi vedno zlat */
.vp-header .wp-block-button__link { color: #333; }

/* ============================================================
   HERO
   ============================================================ */
.vp-hero {
	position: relative; color: #fff;
	background: #1c1c1c url(assets/hero-bg.svg) center / cover no-repeat;
}
.vp-hero :is(h1, h2, h3, p) { color: #fff; }
.vp-hero .vp-eyebrow { color: var(--wp--preset--color--gold); }
/* ker je glava lepljiva in prosojna, hero potisnemo pod njo z negativnim odmikom */
.vp-hero.vp-hero--overlap { margin-top: -130px; padding-top: 190px !important; }

/* CTA pas (temni z zlatim sijem) */
.vp-cta { position: relative; color: #fff; background: #1c1c1c url(assets/cta-bg.svg) center / cover no-repeat; }
.vp-cta :is(h1, h2, h3, p, strong) { color: #fff; }

/* ============================================================
   KARTICE
   ============================================================ */
.vp-card {
	background: #fff; border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--vp-radius); box-shadow: var(--vp-shadow-sm);
	height: 100%; position: relative; overflow: hidden;
	transition: transform .18s ease, box-shadow .18s ease;
}
.vp-card::before {
	content: ""; position: absolute; inset: 0 0 auto 0; height: 4px;
	background: linear-gradient(120deg, #fac816, #f5861f); transform: scaleX(0); transform-origin: left; transition: transform .22s ease;
}
.vp-card:hover { transform: translateY(-6px); box-shadow: var(--vp-shadow); }
.vp-card:hover::before { transform: scaleX(1); }
.vp-card.is-featured { border-color: var(--wp--preset--color--gold); box-shadow: var(--vp-shadow); }
.vp-card.is-featured::before { transform: scaleX(1); }

.vp-badge {
	display: block; width: fit-content; margin: 0 auto 12px;
	background: linear-gradient(120deg, #fac816, #f4b400); color: #333;
	font-family: Manrope, sans-serif; font-weight: 800; font-size: 0.78rem;
	letter-spacing: 0.04em; text-transform: uppercase; padding: 5px 14px; border-radius: 999px;
}

/* Ikone – v zaobljenem kvadratu */
.vp-icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 60px; height: 60px; border-radius: 16px; margin-bottom: 6px;
	background: var(--wp--preset--color--surface); border: 1px solid var(--wp--preset--color--line);
	font-size: 1.7rem; line-height: 1; transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.vp-card:hover .vp-icon { border-color: var(--wp--preset--color--gold); }

/* ============================================================
   STATISTIKE
   ============================================================ */
.vp-stat-num {
	font-family: Manrope, sans-serif; font-weight: 800; line-height: 1;
	font-size: clamp(2.2rem, 5vw, 3.2rem); color: var(--wp--preset--color--gold-2);
}

/* Glassmorphism (na temnih sekcijah) */
.vp-glass {
	background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: var(--vp-radius); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18);
}
.vp-glass :is(h1, h2, h3, p, strong) { color: #fff; }

/* ============================================================
   CASOVNICA (kako poteka najem)
   ============================================================ */
.vp-timeline { counter-reset: vp-step; }
.vp-timeline .vp-card { padding: 26px; }
.vp-step-num {
	display: inline-flex; align-items: center; justify-content: center;
	width: 44px; height: 44px; border-radius: 50%; margin-bottom: 10px;
	background: linear-gradient(120deg, #fac816, #f4b400); color: #333;
	font-family: Manrope, sans-serif; font-weight: 800; font-size: 1.15rem;
}

/* ============================================================
   PRIMERJALNA TABELA
   ============================================================ */
.vp-compare table { border-collapse: separate; border-spacing: 0; width: 100%; border-radius: var(--vp-radius); overflow: hidden; box-shadow: var(--vp-shadow-sm); }
.vp-compare :is(th, td) { padding: 15px 18px; text-align: left; border-bottom: 1px solid var(--wp--preset--color--line); background: #fff; }
.vp-compare thead th { background: var(--wp--preset--color--ink); color: #fff; font-family: Manrope, sans-serif; }
.vp-compare thead th:last-child { background: linear-gradient(120deg, #fac816, #f4b400); color: #333; }
.vp-compare td:last-child { font-weight: 600; background: #fffdf3; }
.vp-compare tbody tr:last-child :is(td, th) { border-bottom: 0; }

/* ============================================================
   FAQ (native <details>)
   ============================================================ */
.wp-block-details {
	border: 1px solid var(--wp--preset--color--line); border-radius: 14px;
	padding: 4px 20px; margin-bottom: 12px; background: #fff; box-shadow: var(--vp-shadow-sm);
}
.wp-block-details summary {
	font-family: Manrope, sans-serif; font-weight: 700; cursor: pointer;
	padding: 16px 0; list-style: none; position: relative; padding-right: 32px;
}
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::after {
	content: "+"; position: absolute; right: 4px; top: 50%; transform: translateY(-50%);
	font-size: 1.5rem; color: var(--wp--preset--color--gold-2); font-weight: 700;
}
.wp-block-details[open] summary::after { content: "–"; }

/* ============================================================
   KALKULATOR PRIHRANKA
   ============================================================ */
.vp-calc {
	background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: var(--vp-radius);
	box-shadow: var(--vp-shadow); padding: clamp(20px, 4vw, 36px);
}
.vp-calc-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.vp-calc-field { display: flex; flex-direction: column; gap: 6px; font-weight: 600; font-size: 0.95rem; }
.vp-calc-field input {
	font: inherit; padding: 12px 14px; border: 1px solid var(--wp--preset--color--line);
	border-radius: 10px; background: var(--wp--preset--color--surface); color: var(--wp--preset--color--ink);
}
.vp-calc-field input:focus { outline: 2px solid var(--wp--preset--color--gold); border-color: transparent; }
.vp-calc-results { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin: 24px 0; }
.vp-calc-result {
	background: var(--wp--preset--color--surface); border: 1px solid var(--wp--preset--color--line);
	border-radius: 14px; padding: 16px; text-align: center;
}
.vp-calc-result-label { display: block; font-size: 0.82rem; color: var(--wp--preset--color--muted); margin-bottom: 6px; }
.vp-calc-result strong { font-family: Manrope, sans-serif; font-size: 1.4rem; color: var(--wp--preset--color--ink); }
.vp-calc-result.is-total { background: linear-gradient(120deg, #fac816, #f4b400); border-color: transparent; }
.vp-calc-result.is-total strong { color: #333; }
.vp-calc-cta { text-align: center; }

/* ============================================================
   KONTAKTNI OBRAZEC
   ============================================================ */
.vp-form { display: grid; gap: 14px; }
.vp-form label { display: flex; flex-direction: column; gap: 6px; font-weight: 600; font-size: 0.95rem; }
.vp-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.vp-form input, .vp-form select, .vp-form textarea {
	font: inherit; width: 100%; padding: 12px 14px; border: 1px solid var(--wp--preset--color--line);
	border-radius: 10px; background: #fff; color: var(--wp--preset--color--ink);
}
.vp-form input:focus, .vp-form select:focus, .vp-form textarea:focus { outline: 2px solid var(--wp--preset--color--gold); border-color: transparent; }
.vp-form button { border: 0; cursor: pointer; width: fit-content; margin-top: 4px; }
@media (max-width: 600px) { .vp-form-row { grid-template-columns: 1fr; } }

/* ============================================================
   LEPLJIVI CTA (mobilni)
   ============================================================ */
.vp-sticky-cta {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 1000; display: flex; gap: 10px;
	padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
	background: rgba(34, 34, 34, 0.96); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
}
.vp-sticky-cta a { flex: 1; text-align: center; padding: 13px 10px; border-radius: 10px; font-family: Manrope, sans-serif; font-weight: 700; text-decoration: none; }
.vp-sticky-call { background: transparent; color: #fff; border: 1.5px solid rgba(255, 255, 255, 0.4); }
.vp-sticky-quote { background: linear-gradient(120deg, #fac816, #f4b400); color: #333; }

/* ============================================================
   NOGA
   ============================================================ */
.vp-footer :is(h1, h2, h3, h4) { color: var(--wp--preset--color--gold); font-family: Manrope, sans-serif; }
.vp-footer, .vp-footer p, .vp-footer li, .vp-footer a { color: #cfd3da; }
.vp-footer a:hover { color: var(--wp--preset--color--gold); }

/* ============================================================
   REVEAL (nezne animacije)
   ============================================================ */
.vp-reveal { opacity: 0; transform: translateY(18px); transition: opacity .6s ease, transform .6s ease; }
.vp-reveal.is-visible { opacity: 1; transform: none; }

/* ============================================================
   ODZIVNOST
   ============================================================ */
@media (max-width: 781px) {
	.vp-calc-grid { grid-template-columns: 1fr; }
	.vp-calc-results { grid-template-columns: repeat(2, 1fr); }
	.vp-hero.vp-hero--overlap { margin-top: -110px; padding-top: 160px !important; }
	body { padding-bottom: 64px; }
}

@media (prefers-reduced-motion: reduce) {
	.vp-reveal { opacity: 1; transform: none; transition: none; }
	.wp-block-button__link:hover { transform: none; }
	.vp-card:hover { transform: none; }
}

/* ============================================================
   2.1.0 — POLNA ŠIRINA (nativno; nadomešča Customizer »Dodatni CSS«)
   Neposredni alignfull otroci post-content se raztegnejo nativno
   (main in post-content sta v predlogah zdaj alignfull + constrained).
   ============================================================ */
html, body { overflow-x: clip; }
/* Varovalka: alignfull, ugnezden globlje v constrained skupini znotraj vsebine */
.wp-block-post-content .wp-block-group.is-layout-constrained:not(.alignfull) > .alignfull {
	width: 100vw; max-width: 100vw;
	margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw);
}

/* Glava nad temnim herojem (preneseno iz Customizerja v temo) */
header.wp-block-template-part { color: #fff; }
header.wp-block-template-part .wp-block-navigation a { color: currentColor; }
.vp-logo { color: #fff; }
.vp-header.is-scrolled,
.vp-header.is-scrolled .wp-block-navigation a,
.vp-header.is-scrolled .vp-logo { color: var(--wp--preset--color--ink); }

/* Naslovi-linki v karticah (preneseno iz Customizerja v temo) */
.vp-card h3 a { color: var(--wp--preset--color--ink); text-decoration: none; transition: color .2s ease; }
.vp-card:hover h3 a,
.vp-card h3 a:hover { color: var(--wp--preset--color--gold-2); }

/* ============================================================
   2.1.0 — DOSTOPNOST: viden fokus
   ============================================================ */
:where(a, button, input, select, textarea, summary):focus-visible {
	outline: 2px solid var(--wp--preset--color--orange, #f5861f);
	outline-offset: 3px;
}

/* ============================================================
   2.2.0 — GRAFIČNI ELEMENTI (mnenja-trak, graf, koraki, kalkulator)
   ============================================================ */
/* Mnenja strank: neskončni drseči trak (main.js zgradi iz obstoječih kartic) */
.vp-testi{overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.vp-testi-track{display:flex;width:max-content;animation:vpTesti 38s linear infinite}
.vp-testi:hover .vp-testi-track{animation-play-state:paused}
.vp-testi-card{width:min(400px,82vw);flex:none;margin-right:24px;background:#fff;border:1px solid var(--wp--preset--color--line);border-radius:var(--vp-radius);padding:28px;box-shadow:var(--vp-shadow-sm);display:flex;flex-direction:column;gap:12px;position:relative}
.vp-testi-card::before{content:"\201C";position:absolute;top:8px;right:24px;font-family:Manrope,sans-serif;font-weight:800;font-size:72px;line-height:1;color:var(--wp--preset--color--gold);opacity:.35}
.vp-testi-stars{color:var(--wp--preset--color--gold-2);letter-spacing:2px;font-size:15px}
.vp-testi-text{margin:0;color:var(--wp--preset--color--ink);line-height:1.65}
.vp-testi-author{display:flex;align-items:center;gap:12px;margin-top:auto}
.vp-testi-ava{width:42px;height:42px;flex:none;border-radius:50%;background:linear-gradient(120deg,#fac816,#f5861f);color:#222;font-family:Manrope,sans-serif;font-weight:800;font-size:17px;display:flex;align-items:center;justify-content:center}
.vp-testi-name{font-family:Manrope,sans-serif;font-weight:700;line-height:1.3}
.vp-testi-role{display:block;color:var(--wp--preset--color--muted);font-size:.85rem;font-weight:400}
@keyframes vpTesti{to{transform:translateX(-50%)}}

/* Graf primerjave stroškov (main.js ga vstavi pred .vp-compare) */
.vp-bars{max-width:820px;margin:0 auto 34px;background:#fff;border:1px solid var(--wp--preset--color--line);border-radius:var(--vp-radius);padding:28px 32px;box-shadow:var(--vp-shadow-sm);display:grid;gap:20px}
.vp-bar-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-family:Manrope,sans-serif;margin-bottom:8px}
.vp-bar-label{font-weight:700}
.vp-bar-val{font-weight:800;font-size:1.15rem}
.vp-bar{height:14px;border-radius:999px;background:#f1f2f6;overflow:hidden}
.vp-bar > span{display:block;height:100%;border-radius:999px;transform-origin:left;transform:scaleX(0)}
.vp-bars.is-visible .vp-bar > span{animation:vpBarGrow 1.2s cubic-bezier(.2,.7,.2,1) both}
.vp-bars.is-visible .vp-bar-row + .vp-bar-row .vp-bar > span{animation-delay:.25s}
.vp-bar-note{margin:2px 0 0;color:var(--wp--preset--color--muted);font-size:.9rem;text-align:center}
.vp-bar-note strong{color:var(--wp--preset--color--orange, #f5861f)}
@keyframes vpBarGrow{to{transform:scaleX(1)}}

/* Koraki najema: številke v gradientnih krogih na vrhu kartic */
.vp-timeline .vp-card{overflow:visible;text-align:center;padding-top:40px}
.vp-timeline .vp-card::before{display:none}
.vp-timeline .vp-step-num{position:absolute;top:-22px;left:50%;transform:translateX(-50%);margin:0;background:linear-gradient(120deg,#fac816,#f5861f);box-shadow:0 0 0 6px var(--wp--preset--color--surface),0 10px 22px rgba(245,134,31,.35)}

/* Ikone kartic: hover animacija */
.vp-icon{transition:transform .25s ease,background .25s ease,border-color .25s ease}
.vp-card:hover .vp-icon{transform:translateY(-4px) scale(1.1);background:#fffdf3;border-color:var(--wp--preset--color--gold)}

/* Kalkulator: drsniki + berljiv gumb */
.vp-calc-field-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.vp-calc-field-head label{flex:1}
.vp-calc-field-head input{width:104px;text-align:right}
.vp-calc-field input[type="range"]{-webkit-appearance:auto;appearance:auto;width:100%;height:22px;padding:0;border:0;background:transparent;accent-color:#f4b400;cursor:pointer}
.vp-calc-cta .wp-block-button__link{color:#333}

@media (prefers-reduced-motion: reduce) {
	.vp-testi{-webkit-mask-image:none;mask-image:none}
	.vp-testi-track{animation:none;width:auto;flex-wrap:wrap;gap:24px;justify-content:center}
	.vp-testi-card{margin-right:0}
	.vp-testi-track > .vp-testi-card:nth-child(n+4){display:none}
	.vp-bar > span{transform:none}
	.vp-bars.is-visible .vp-bar > span{animation:none}
	.vp-card:hover .vp-icon{transform:none}
}

/* ============================================================
   2.3.0 — GLAVA: ikoni računa in košarice + gumba
   ============================================================ */
.vp-header-right { row-gap: 6px; }
.vp-header-icons { color: currentColor; }
.vp-header .wp-block-woocommerce-customer-account a,
.vp-header .wc-block-mini-cart__button { color: currentColor; padding: 6px 7px; border-radius: 10px; transition: color .2s ease, background .2s ease; }
.vp-header .wp-block-woocommerce-customer-account a:hover,
.vp-header .wc-block-mini-cart__button:hover { color: var(--wp--preset--color--orange); background: rgba(245, 134, 31, 0.08); opacity: 1; }
.vp-header .wp-block-woocommerce-customer-account svg,
.vp-header .wc-block-mini-cart__icon { fill: currentColor; color: currentColor; width: 22px; height: 22px; }
.vp-header .wc-block-mini-cart__badge,
.vp-header .wc-block-mini-cart__amount { background: var(--wp--preset--color--gold); color: #333; font-weight: 700; }
/* sekundarni obrobljen gumb sledi barvi glave (bel na temnem heroju, temen po scrollu) */
.vp-header .vp-btn-ghost .wp-block-button__link { color: currentColor; border-color: currentColor; background: transparent; }
/* primarni gumb Naroči pisarno je vedno oranžen z belim besedilom */
.vp-header .wp-block-button__link.has-orange-background-color { color: #fff; }
.vp-header .wp-block-button__link.has-orange-background-color:hover { background: var(--wp--preset--color--gold-2); color: #333; }
.vp-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-button__link.has-orange-background-color { color: #fff; }

/* ============================================================
   2.3.0 — WOOCOMMERCE: gumbi, obvestila, obrazci
   ============================================================ */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce a.added_to_cart,
.wc-block-components-button:not(.is-link) {
	background: var(--wp--preset--color--gold); color: #333; border: 0; border-radius: 999px;
	font-family: Manrope, sans-serif; font-weight: 700; padding: 12px 24px; line-height: 1.3;
	transition: background .25s ease, transform .25s ease, box-shadow .25s ease;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.wc-block-components-button:not(.is-link):hover {
	background: var(--wp--preset--color--gold-2); color: #333;
	transform: translateY(-2px); box-shadow: 0 10px 22px rgba(244, 180, 0, 0.28);
}
/* primarna dejanja (v košarico, na blagajno, plačilo) — oranžna */
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,
.woocommerce button.single_add_to_cart_button,
.woocommerce .wc-proceed-to-checkout a.checkout-button,
.woocommerce #payment #place_order,
.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button {
	background: var(--wp--preset--color--orange); color: #fff;
}
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover,
.woocommerce button.single_add_to_cart_button:hover,
.woocommerce .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce #payment #place_order:hover,
.wc-block-cart__submit-button:hover, .wc-block-components-checkout-place-order-button:hover {
	background: #e0740f; color: #fff; box-shadow: 0 12px 26px rgba(245, 134, 31, 0.35);
}
.woocommerce a.button.disabled, .woocommerce button.button.disabled, .woocommerce button.button:disabled { opacity: .55; }

.woocommerce-message, .woocommerce-info, .woocommerce-error {
	border: 1px solid var(--wp--preset--color--line); border-top: 3px solid var(--wp--preset--color--gold);
	background: #fff; border-radius: 14px; box-shadow: var(--vp-shadow-sm); color: var(--wp--preset--color--ink);
}
.woocommerce-message::before { color: var(--wp--preset--color--gold-2); }
.woocommerce-info { border-top-color: var(--wp--preset--color--blue); }
.woocommerce-info::before { color: var(--wp--preset--color--blue); }
.woocommerce-error { border-top-color: #d63638; }
.woocommerce-error::before { color: #d63638; }

.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea,
.woocommerce form .form-row select, .woocommerce .input-text,
.woocommerce form .form-row .select2-selection {
	font: inherit; padding: 12px 14px; border: 1px solid var(--wp--preset--color--line);
	border-radius: 10px; background: #fff; color: var(--wp--preset--color--ink); height: auto;
}
.woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus { outline: 2px solid var(--wp--preset--color--gold); border-color: transparent; }
.woocommerce form .form-row label { font-weight: 600; font-size: .92rem; }
.woocommerce form .form-row .required { color: var(--wp--preset--color--orange); text-decoration: none; }

/* ============================================================
   2.3.0 — WOOCOMMERCE: trgovina (seznam izdelkov)
   ============================================================ */
.woocommerce .woocommerce-breadcrumb { font-size: .85rem; color: var(--wp--preset--color--muted); margin-bottom: 18px; }
.woocommerce .woocommerce-breadcrumb a { color: var(--wp--preset--color--muted); }
.woocommerce .woocommerce-breadcrumb a:hover { color: var(--wp--preset--color--orange); }
.woocommerce .woocommerce-result-count { color: var(--wp--preset--color--muted); font-size: .9rem; }
.woocommerce .woocommerce-ordering select { padding: 10px 14px; border: 1px solid var(--wp--preset--color--line); border-radius: 999px; background: #fff; font: inherit; font-size: .9rem; }

.woocommerce ul.products { display: grid; grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); gap: 1.3rem; margin: 0 0 2rem; padding: 0; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product {
	float: none; width: auto !important; margin: 0 !important; padding: 24px; text-align: left;
	background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: var(--vp-radius);
	box-shadow: var(--vp-shadow-sm); display: flex; flex-direction: column; gap: 10px;
	transition: transform .3s cubic-bezier(.2, .7, .2, 1), box-shadow .3s ease;
}
.woocommerce ul.products li.product:hover { transform: translateY(-6px); box-shadow: 0 22px 48px rgba(20, 24, 40, 0.12); }
.woocommerce ul.products li.product a img { border-radius: 12px; margin: 0 0 6px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: Manrope, sans-serif; font-weight: 700; font-size: 1.15rem !important;
	padding: 0 !important; color: var(--wp--preset--color--ink); line-height: 1.35;
}
.woocommerce ul.products li.product .woocommerce-loop-product__link:hover .woocommerce-loop-product__title { color: var(--wp--preset--color--orange); }
.woocommerce ul.products li.product .price {
	color: var(--wp--preset--color--orange) !important; font-family: Manrope, sans-serif;
	font-weight: 800; font-size: 1.3rem !important; margin: 0;
}
.woocommerce ul.products li.product .price del { color: var(--wp--preset--color--muted); opacity: .6; font-weight: 600; }
.woocommerce ul.products li.product .price .from { color: var(--wp--preset--color--muted); font-weight: 600; font-size: .85rem; }
.woocommerce ul.products li.product .button { margin-top: auto; align-self: flex-start; }
.woocommerce span.onsale {
	position: absolute; top: 14px; right: 14px; left: auto; margin: 0; min-height: 0; min-width: 0;
	background: linear-gradient(120deg, #fac816, #f5861f); color: #222; border-radius: 999px;
	padding: 6px 14px; font-family: Manrope, sans-serif; font-weight: 700; font-size: .78rem; line-height: 1.4;
}
.woocommerce ul.products li.product { position: relative; }

/* ============================================================
   2.3.0 — WOOCOMMERCE: stran izdelka
   ============================================================ */
.woocommerce div.product { color: var(--wp--preset--color--ink); }
.woocommerce div.product .product_title { font-family: Manrope, sans-serif; font-weight: 800; letter-spacing: -0.02em; font-size: clamp(1.7rem, 3vw, 2.4rem); }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--wp--preset--color--orange); font-family: Manrope, sans-serif; font-weight: 800; font-size: 1.6rem; }
.woocommerce div.product .woocommerce-product-details__short-description { color: var(--wp--preset--color--muted); font-size: 1.02rem; line-height: 1.7; }
.woocommerce div.product div.images img { border-radius: var(--vp-radius); }
.woocommerce div.product form.cart { margin: 22px 0; display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.woocommerce div.product form.cart div.quantity { margin: 0; }
.woocommerce .quantity .qty {
	font: inherit; width: 74px; padding: 12px 8px; text-align: center;
	border: 1px solid var(--wp--preset--color--line); border-radius: 10px; background: var(--wp--preset--color--surface);
}
.woocommerce div.product form.cart .variations { margin-bottom: 4px; }
.woocommerce div.product form.cart .variations td, .woocommerce div.product form.cart .variations th { padding: 6px 10px 6px 0; border: 0; }
.woocommerce div.product form.cart .variations label { font-weight: 700; font-family: Manrope, sans-serif; }
.woocommerce div.product form.cart .variations select { font: inherit; padding: 11px 14px; border: 1px solid var(--wp--preset--color--line); border-radius: 10px; background: #fff; min-width: 200px; }
.woocommerce div.product .woocommerce-variation-price { margin-bottom: 10px; }
.woocommerce div.product .woocommerce-tabs { margin-top: 34px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; margin: 0 0 20px; display: flex; gap: 6px; border-bottom: 1px solid var(--wp--preset--color--line); overflow: visible; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before, .woocommerce div.product .woocommerce-tabs ul.tabs::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: none; border: 0; border-radius: 0; margin: 0; padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: 12px 18px; font-family: Manrope, sans-serif; font-weight: 700; color: var(--wp--preset--color--muted); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--wp--preset--color--ink); box-shadow: inset 0 -3px 0 var(--wp--preset--color--orange); }
.woocommerce div.product .woocommerce-tabs .panel { padding: 4px 0 0; }
.woocommerce .related.products > h2, .woocommerce .upsells.products > h2 { font-family: Manrope, sans-serif; font-weight: 800; letter-spacing: -0.02em; margin-bottom: 22px; }

/* ============================================================
   2.3.0 — WOOCOMMERCE: košarica in blagajna
   ============================================================ */
.woocommerce table.shop_table {
	border: 1px solid var(--wp--preset--color--line); border-radius: var(--vp-radius);
	border-collapse: separate; border-spacing: 0; overflow: hidden; background: #fff; box-shadow: var(--vp-shadow-sm);
}
.woocommerce table.shop_table th { background: var(--wp--preset--color--surface); font-family: Manrope, sans-serif; font-weight: 700; padding: 14px 16px; }
.woocommerce table.shop_table td { border-top: 1px solid var(--wp--preset--color--line); padding: 14px 16px; }
.woocommerce table.shop_table td.product-name a { color: var(--wp--preset--color--ink); font-weight: 600; }
.woocommerce table.shop_table td.product-name a:hover { color: var(--wp--preset--color--orange); }
.woocommerce a.remove { color: var(--wp--preset--color--muted) !important; }
.woocommerce a.remove:hover { background: #d63638; color: #fff !important; }
.woocommerce td.actions .coupon .input-text { width: 170px; margin-right: 8px; }
.woocommerce .cart_totals h2, .woocommerce #order_review_heading, .woocommerce-billing-fields > h3, .woocommerce-additional-fields > h3 {
	font-family: Manrope, sans-serif; font-weight: 800; letter-spacing: -0.01em;
}
.woocommerce .wc-proceed-to-checkout a.checkout-button { display: block; text-align: center; font-size: 1.05rem; padding: 16px 24px; }

.woocommerce-checkout #payment { background: var(--wp--preset--color--surface); border: 1px solid var(--wp--preset--color--line); border-radius: var(--vp-radius); }
.woocommerce-checkout #payment ul.payment_methods { border-bottom: 1px solid var(--wp--preset--color--line); padding: 20px; }
.woocommerce-checkout #payment ul.payment_methods li { list-style: none; }
.woocommerce-checkout #payment ul.payment_methods label { font-weight: 700; font-family: Manrope, sans-serif; }
.woocommerce-checkout #payment div.payment_box { background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: 12px; color: var(--wp--preset--color--muted); }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #fff; }
.woocommerce-checkout #payment div.form-row.place-order { padding: 20px; }
.woocommerce #payment #place_order { width: 100%; font-size: 1.05rem; padding: 17px 24px; }
#add_payment_method #payment ul.payment_methods li input[type="radio"], .woocommerce-checkout #payment ul.payment_methods li input[type="radio"] { accent-color: var(--wp--preset--color--orange); }

/* Pogodba (Order Contracts / Korkmaz) na blagajni, zahvalni strani in v naročilu */
.woocommerce [id*="contract"], .woocommerce [class*="korkmaz"], .woocommerce .wckc-contract {
	background: #fffdf3; border: 1px solid var(--wp--preset--color--gold); border-radius: 14px;
	padding: 18px 20px; margin: 16px 0; font-size: .93rem; line-height: 1.65; max-height: 340px; overflow: auto;
}
.woocommerce [id*="contract"] :is(h1, h2, h3, h4) { font-size: 1.02rem; font-family: Manrope, sans-serif; margin: 12px 0 6px; }

/* Zahvalna stran */
.woocommerce-order .woocommerce-thankyou-order-received {
	font-family: Manrope, sans-serif; font-weight: 800; font-size: 1.5rem; color: var(--wp--preset--color--ink);
	background: linear-gradient(120deg, rgba(250, 200, 22, .16), rgba(245, 134, 31, .12));
	border: 1px solid var(--wp--preset--color--gold); border-radius: 14px; padding: 20px 24px;
}
.woocommerce-order ul.woocommerce-thankyou-order-details { margin: 22px 0 !important; padding: 0; display: flex; flex-wrap: wrap; gap: 12px; }
.woocommerce-order ul.woocommerce-thankyou-order-details li { border: 1px solid var(--wp--preset--color--line) !important; border-radius: 12px; padding: 12px 16px !important; margin: 0 !important; background: #fff; float: none !important; }

/* Moj račun */
.woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.woocommerce-MyAccount-navigation li a { display: block; padding: 11px 16px; border-radius: 10px; font-weight: 600; color: var(--wp--preset--color--ink); }
.woocommerce-MyAccount-navigation li a:hover { background: var(--wp--preset--color--surface); color: var(--wp--preset--color--orange); }
.woocommerce-MyAccount-navigation li.is-active a { background: #fffdf3; box-shadow: inset 0 0 0 1px var(--wp--preset--color--gold); }

/* ============================================================
   2.3.0 — BLOG: kartice objav
   ============================================================ */
.vp-post-grid { gap: 1.3rem; }
.vp-post-card { padding: 0; overflow: hidden; display: flex; flex-direction: column; height: 100%; }
.vp-post-card .wp-block-post-featured-image { margin: 0; }
.vp-post-card .wp-block-post-featured-image img { display: block; width: 100%; border-radius: 0; }
.vp-post-card-body { padding: 22px 24px 24px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.vp-post-cat, .vp-post-cat a { font-family: Manrope, sans-serif; font-size: .76rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--orange); text-decoration: none; }
.vp-post-title { font-size: 1.22rem; line-height: 1.32; letter-spacing: -0.01em; margin: 0; }
.vp-post-title a { color: var(--wp--preset--color--ink); text-decoration: none; transition: color .2s ease; }
.vp-post-title a:hover { color: var(--wp--preset--color--orange); }
.vp-post-excerpt { color: var(--wp--preset--color--muted); font-size: .95rem; line-height: 1.65; }
.vp-post-excerpt p { margin: 0 0 6px; }
.vp-post-excerpt .wp-block-post-excerpt__more-link { color: var(--wp--preset--color--orange); font-weight: 600; text-decoration: none; }
.vp-post-excerpt .wp-block-post-excerpt__more-link:hover { text-decoration: underline; }
.vp-post-date { margin-top: auto; font-size: .84rem; color: var(--wp--preset--color--muted); }
.vp-pagination a, .vp-pagination .page-numbers {
	font-family: Manrope, sans-serif; font-weight: 700; color: var(--wp--preset--color--ink);
	padding: 8px 14px; border-radius: 999px; text-decoration: none;
}
.vp-pagination a:hover { background: var(--wp--preset--color--surface); color: var(--wp--preset--color--orange); }
.vp-pagination .page-numbers.current { background: var(--wp--preset--color--gold); color: #333; }

/* ============================================================
   2.3.0 — MOBILNI POPRAVKI
   ============================================================ */
.vp-stat-num { overflow-wrap: anywhere; text-wrap: balance; }
@media (max-width: 920px) {
	.wp-block-columns:has(.vp-stat-num) { flex-wrap: wrap !important; row-gap: 22px; }
	.wp-block-columns:has(.vp-stat-num) > .wp-block-column { flex-basis: calc(50% - 12px) !important; flex-grow: 1; }
	.vp-stat-num { font-size: clamp(1.7rem, 6.5vw, 2.4rem); }
}
@media (max-width: 782px) {
	.vp-post-grid { grid-template-columns: 1fr !important; }
	.woocommerce div.product form.cart { align-items: stretch; }
	.woocommerce div.product form.cart .button { width: 100%; }
	.woocommerce table.shop_table td.actions .coupon { display: flex; gap: 8px; }
	.woocommerce td.actions .coupon .input-text { flex: 1; width: auto; }
}
@media (max-width: 600px) {
	.vp-header-icons { gap: 0; }
	.woocommerce ul.products { grid-template-columns: 1fr; }
	.woocommerce-order ul.woocommerce-thankyou-order-details { flex-direction: column; }
}

/* ============================================================
   2.3.1 — GLAVA: vidnost gumbov, spustni meniji, mobilni meni
   ============================================================ */
/* Obrobljeni gumb Povpraševanje sledi barvi glave (bel na temnem heroju,
   antracit na beli glavi) — preglasi tudi morebitne preset barvne razrede. */
.vp-header .vp-btn-ghost .wp-block-button__link {
	color: currentColor !important; border: 1.6px solid currentColor !important; background: transparent !important;
}
/* Glava v eni vrstici na namizju (prepreči prelom, ki je logo potisnil na bel pas) */
@media (min-width: 1201px) { .vp-header .wp-block-group.alignwide { flex-wrap: nowrap; } }
.vp-header .wp-block-navigation a { font-size: .95rem; }
/* Spustni meniji: vedno bel panel — berljivo na temni in beli glavi */
.vp-header .wp-block-navigation__submenu-container {
	background: #fff !important; color: var(--wp--preset--color--ink) !important;
	border: 1px solid var(--wp--preset--color--line) !important; border-radius: 12px; padding: 6px !important;
	box-shadow: 0 18px 40px rgba(20, 24, 40, 0.14); min-width: 230px;
}
.vp-header .wp-block-navigation__submenu-container a { color: var(--wp--preset--color--ink) !important; padding: 9px 14px !important; border-radius: 8px; font-size: .92rem; }
.vp-header .wp-block-navigation__submenu-container a:hover { background: var(--wp--preset--color--surface); color: var(--wp--preset--color--orange) !important; }
/* Meni ima veliko elementov -> hamburger že pod 1200 px (ne šele pod 600 px) */
@media (max-width: 1200px) {
	.vp-header .wp-block-navigation__responsive-container:not(.is-menu-open):not(.hidden-by-default) { display: none !important; }
	.vp-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex !important; }
}
.vp-header .wp-block-navigation__responsive-container-open,
.vp-header .wp-block-navigation__responsive-container-close { color: currentColor; }
.vp-header .wp-block-navigation__responsive-container-open svg,
.vp-header .wp-block-navigation__responsive-container-close svg { fill: currentColor; width: 26px; height: 26px; }
/* Odprt mobilni meni: bel, povezave večje, gumba čez celo širino */
.vp-header .wp-block-navigation__responsive-container.is-menu-open { padding: 24px; overflow-y: auto; }
.vp-header .wp-block-navigation__responsive-container.is-menu-open a { font-size: 1.05rem; padding: 7px 0; }
.vp-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-buttons {
	flex-direction: column; align-items: stretch; width: 100%; margin: 16px 0 0 !important; gap: 10px;
}
.vp-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-button__link { display: block; text-align: center; padding: 13px 18px; }
.vp-header .wp-block-navigation__responsive-container.is-menu-open .vp-btn-ghost .wp-block-button__link { color: var(--wp--preset--color--ink) !important; }

/* ============================================================
   2.3.1 — NASLOVNI PAS PODSTRANI (temno ozadje kot na prvi strani)
   Uporabljajo: page.html, home.html, archive.html, archive-product.html, single.html
   ============================================================ */
.vp-page-hero {
	background: #1c1c1c url(assets/hero-bg.svg) center / cover no-repeat; color: #fff;
	margin-top: -130px; padding-top: 176px !important;
}
.vp-page-hero :is(h1, h2, .wp-block-post-title) { color: #fff; }
.vp-page-hero .wp-block-post-title a { color: #fff; text-decoration: none; }
.vp-page-hero .vp-eyebrow { color: var(--wp--preset--color--gold); }
.vp-page-hero p, .vp-page-hero .has-muted-color { color: rgba(255, 255, 255, 0.72) !important; }
.vp-page-hero .wp-block-post-date, .vp-page-hero .wp-block-post-date * { color: rgba(255, 255, 255, 0.6) !important; }
.vp-page-hero .wp-block-post-terms, .vp-page-hero .wp-block-post-terms a { color: var(--wp--preset--color--gold) !important; }
/* Kjer ima vsebina svoj temni hero (Domov, O nas ...), se pas samodejno skrije */
main:has(.vp-hero) .vp-page-hero { display: none; }
@media (max-width: 781px) {
	.vp-page-hero { margin-top: -110px; padding-top: 150px !important; }
	.vp-logo svg { height: 23px; }
}

/* ============================================================
   2.3.2 — HOTFIX: naslovni pas podstrani zanesljivo sega do vrha.
   WP jedrna layout pravila (.wp-container > * { margin-block-start:0 })
   so preglasila negativni odmik pasu -> bel pas nad njim in neviden meni.
   ============================================================ */
main .vp-page-hero,
.wp-site-blocks .vp-page-hero {
	margin-top: -130px !important;
	margin-block-start: -130px !important;
}
/* enako varovalo za hero v vsebini strani (Domov, O nas, storitve ...) */
.vp-hero.vp-hero--overlap {
	margin-top: -130px !important;
	margin-block-start: -130px !important;
}
@media (max-width: 781px) {
	main .vp-page-hero,
	.wp-site-blocks .vp-page-hero,
	.vp-hero.vp-hero--overlap {
		margin-top: -110px !important;
		margin-block-start: -110px !important;
	}
	.vp-hero.vp-hero--overlap { padding-top: 160px !important; }
	.vp-page-hero { padding-top: 150px !important; }
}

/* ============================================================
   2.4.0 — MARKETING: trak prednosti, cenovni hook
   ============================================================ */
/* Neskončni trak prednosti (uporaba: .vp-ticker > .vp-ticker-track > <span>i, vsebina podvojena) */
.vp-card, .vp-card * { box-sizing: border-box; }

.vp-ticker { background: var(--wp--preset--color--dark); color: #fff; overflow: hidden; padding: 15px 0;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
.vp-ticker-track { display: flex; width: max-content; animation: vpTicker 32s linear infinite; }
.vp-ticker:hover .vp-ticker-track { animation-play-state: paused; }
.vp-ticker span { display: inline-flex; align-items: center; white-space: nowrap; font-family: Manrope, sans-serif; font-weight: 700; font-size: .96rem; letter-spacing: .02em; }
.vp-ticker span::after { content: "+"; color: var(--wp--preset--color--gold); font-weight: 800; font-size: 1.15rem; margin: 0 24px; }
@keyframes vpTicker { to { transform: translateX(-50%); } }

/* Cenovni hook: velika cena + opomba na dan */
.vp-price-hook .vp-price { font-family: Manrope, sans-serif; font-weight: 800; font-size: clamp(2.6rem, 5vw, 3.8rem); line-height: 1.05; color: var(--wp--preset--color--orange); }
.vp-price-hook .vp-price small { font-size: .38em; font-weight: 700; color: var(--wp--preset--color--muted); }
.vp-day-note { display: inline-flex; align-items: center; gap: 8px; background: #fffdf3; border: 1px solid var(--wp--preset--color--gold); border-radius: 999px; padding: 7px 16px; font-family: Manrope, sans-serif; font-weight: 700; font-size: .88rem; color: var(--wp--preset--color--ink); }

@media (prefers-reduced-motion: reduce) {
	.vp-ticker { mask-image: none; -webkit-mask-image: none; }
	.vp-ticker-track { animation: none; flex-wrap: wrap; width: auto; justify-content: center; row-gap: 6px; }
	.vp-ticker-track span[aria-hidden="true"], .vp-ticker .vp-ticker-dup { display: none; }
}

/* ============================================================
   2.4.1 — HERO OZADJE kot pred nadgradnjo: temna podlaga z zlato-
   oranžnim sijem, vgrajeno v CSS (deluje tudi, če hero-bg.svg ne naloži)
   ============================================================ */
.vp-hero,
.vp-page-hero {
	background-color: #1d1d1d !important;
	background-image:
		url(assets/hero-bg.svg),
		radial-gradient(1100px 780px at 88% 34%, rgba(245, 134, 31, 0.55), rgba(245, 134, 31, 0.20) 45%, rgba(245, 134, 31, 0) 72%),
		radial-gradient(760px 640px at 66% 92%, rgba(250, 200, 22, 0.30), rgba(250, 200, 22, 0) 65%),
		radial-gradient(620px 520px at 8% -12%, rgba(250, 200, 22, 0.16), rgba(250, 200, 22, 0) 60%) !important;
	background-repeat: no-repeat !important;
	background-size: cover, auto, auto, auto !important;
	background-position: center, center, center, center !important;
}

/* ============================================================
   2.4.2 — BLOK BLAGAJNA & KOŠARICA (wc-block komponente)
   ============================================================ */
.vp-woo-block .wc-block-components-form .wc-block-components-text-input input,
.vp-woo-block .wc-block-components-text-input input,
.vp-woo-block .wc-block-components-combobox .wc-block-components-combobox-control input,
.vp-woo-block .wc-block-components-select .components-custom-select-control__button,
.vp-woo-block .wc-block-components-textarea {
	border: 1px solid var(--wp--preset--color--line); border-radius: 10px; background: #fff;
	color: var(--wp--preset--color--ink); font: inherit;
}
.vp-woo-block .wc-block-components-text-input input:focus,
.vp-woo-block .wc-block-components-combobox input:focus,
.vp-woo-block .wc-block-components-textarea:focus {
	border-color: transparent; outline: 2px solid var(--wp--preset--color--gold); box-shadow: none;
}
.vp-woo-block .wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"],
.vp-woo-block .wc-block-components-radio-control__input { accent-color: var(--wp--preset--color--orange); }
.vp-woo-block .wc-block-components-checkbox .wc-block-components-checkbox__input:checked { background: var(--wp--preset--color--orange); border-color: var(--wp--preset--color--orange); }

/* Naslovi korakov */
.vp-woo-block .wc-block-components-checkout-step__heading .wc-block-components-title,
.vp-woo-block .wc-block-components-title { font-family: Manrope, sans-serif; font-weight: 800; letter-spacing: -0.01em; }

/* Plačilne možnosti kot kartice */
.vp-woo-block .wc-block-components-radio-control-accordion-option,
.vp-woo-block .wc-block-components-radio-control__option {
	border: 1px solid var(--wp--preset--color--line); border-radius: 12px; background: #fff;
	margin-bottom: 10px; padding: 14px 16px 14px 44px; transition: border-color .2s ease, background .2s ease;
}
.vp-woo-block .wc-block-components-radio-control-accordion-option:hover { border-color: var(--wp--preset--color--gold); }
.vp-woo-block .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.vp-woo-block .wc-block-components-radio-control__option-checked {
	background: #fffdf3; border-color: var(--wp--preset--color--gold); box-shadow: 0 0 0 1px var(--wp--preset--color--gold);
	font-weight: 700;
}
.vp-woo-block .wc-block-components-radio-control-accordion-content { color: var(--wp--preset--color--muted); font-size: .93rem; }

/* Povzetek naročila kot kartica teme + lepljiv */
.vp-woo-block .wc-block-components-sidebar .wp-block-woocommerce-checkout-order-summary-block,
.vp-woo-block .wc-block-components-sidebar .wc-block-components-totals-wrapper:first-child,
.vp-woo-block .wp-block-woocommerce-cart-order-summary-block {
	background: #fff;
}
.vp-woo-block .wc-block-components-sidebar > div,
.vp-woo-block .wp-block-woocommerce-checkout-order-summary-block,
.vp-woo-block .wp-block-woocommerce-cart-order-summary-block {
	border: 1px solid var(--wp--preset--color--line); border-radius: var(--vp-radius);
	box-shadow: var(--vp-shadow-sm); overflow: hidden;
}
@media (min-width: 782px) {
	.vp-woo-block .wc-block-components-sidebar { position: sticky; top: 96px; align-self: flex-start; }
}
.vp-woo-block .wc-block-components-order-summary-item__image,
.vp-woo-block .wc-block-cart-item__image { display: none; }  /* sivi placeholderji brez slik */
.vp-woo-block .wc-block-components-order-summary-item__description p { color: var(--wp--preset--color--muted); font-size: .88rem; }
.vp-woo-block .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.vp-woo-block .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	font-family: Manrope, sans-serif; font-weight: 800; font-size: 1.25rem;
}
.vp-woo-block .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { color: var(--wp--preset--color--orange); }

/* Gumbi: Kupite sedaj / Na blagajno */
.vp-woo-block .wc-block-components-checkout-place-order-button,
.vp-woo-block .wc-block-cart__submit-button {
	background: var(--wp--preset--color--orange) !important; color: #fff !important;
	border-radius: 999px; font-family: Manrope, sans-serif; font-weight: 800; font-size: 1.05rem;
	padding: 17px 24px; width: 100%; border: 0; box-shadow: 0 10px 26px rgba(245, 134, 31, 0.30);
	transition: background .25s ease, transform .25s ease, box-shadow .25s ease;
}
.vp-woo-block .wc-block-components-checkout-place-order-button:hover,
.vp-woo-block .wc-block-cart__submit-button:hover { background: #e0740f !important; transform: translateY(-2px); box-shadow: 0 16px 34px rgba(245, 134, 31, 0.38); }

/* Zaupanje pod gumbom za oddajo */
.vp-woo-block .wc-block-checkout__actions_row::after,
.vp-woo-block .wc-block-cart__submit-container::after {
	content: "🔒 Varno plačilo · Račun in pogodba takoj na e-pošto · Brez vezave";
	display: block; text-align: center; margin-top: 12px;
	font-size: .85rem; color: var(--wp--preset--color--muted);
}

/* Pogodba / pravna potrditev */
.vp-woo-block .wc-block-components-checkout-step--with-step-number .wc-block-components-checkout-step__container { border: 0; }
.vp-woo-block .wc-block-checkout__terms { background: #fffdf3; border: 1px solid var(--wp--preset--color--gold); border-radius: 12px; padding: 14px 16px; }
.vp-woo-block .wc-block-checkout__terms a { color: var(--wp--preset--color--orange); font-weight: 600; }

/* Kuponi, povezave */
.vp-woo-block .wc-block-components-totals-coupon-link,
.vp-woo-block .wc-block-components-panel__button { color: var(--wp--preset--color--orange); font-weight: 600; }

/* Mobilno */
@media (max-width: 781px) {
	.vp-woo-block .wc-block-components-sidebar-layout { flex-direction: column; }
	.vp-woo-block .wc-block-components-checkout-place-order-button { font-size: 1rem; }
}
