/* ═══ ONYX Univers — WooCommerce native templates, dark skin.
   Checkout/cart stay CLEAN and fast: no animation here. ═══ */

.woo-wrap { --woo-border: #222; }

.woocommerce-breadcrumb { font-size: .75rem; letter-spacing: .1em; color: var(--grey) !important; }
.woocommerce-breadcrumb a { color: var(--gold); }

/* result count / ordering */
.woocommerce-result-count { color: var(--grey); }
.woocommerce-ordering select {
	background: #111; color: var(--white); border: 1px solid var(--woo-border);
	padding: .5em .8em; border-radius: 4px;
}

/* product loop — animated display cards (ring sweep + tilt via cards.js) */
.woocommerce ul.products { perspective: 1000px; }
.woocommerce ul.products li.product {
	position: relative;
	background: linear-gradient(170deg, #121212, #0a0a0a);
	border: 1px solid #1e1e1e; border-radius: 8px;
	padding: 1rem !important;
	transition: border-color .25s, box-shadow .25s, transform .25s;
	transform-style: preserve-3d; will-change: transform;
}
.woocommerce ul.products li.product:hover {
	border-color: rgba(212,175,55,.55);
	box-shadow: 0 26px 52px rgba(0,0,0,.6), 0 0 26px rgba(212,175,55,.14);
	transform: translateY(-4px);
}
.woocommerce ul.products li.product img {
	filter: drop-shadow(0 10px 18px rgba(0,0,0,.5));
	transition: transform .45s cubic-bezier(.22,1,.36,1), filter .45s;
}
.woocommerce ul.products li.product:hover .loop-frame img {
	transform: scale(1.06) translateY(-6px);
	filter: drop-shadow(0 22px 30px rgba(0,0,0,.7));
}
/* ADD / VIEW slides up (JS-gated: no-JS keeps buttons visible) */
html.onyx-cards .woocommerce ul.products li.product .button {
	opacity: 0; transform: translateY(12px); pointer-events: none;
	transition: opacity .3s, transform .3s, background .2s, color .2s;
}
html.onyx-cards .woocommerce ul.products li.product:hover .button,
html.onyx-cards .woocommerce ul.products li.product.is-open .button,
html.onyx-cards .woocommerce ul.products li.product .button:focus-visible {
	opacity: 1; transform: none; pointer-events: auto;
}
@media (prefers-reduced-motion: reduce) {
	.woocommerce ul.products li.product, .woocommerce ul.products li.product img { transition: none; }
	.woocommerce ul.products li.product:hover { transform: none; }
	.woocommerce ul.products li.product:hover .loop-frame img { transform: none; }
	html.onyx-cards .woocommerce ul.products li.product .button { opacity: 1; transform: none; pointer-events: auto; }
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--font-body); font-size: .9rem; font-weight: 600; color: var(--white);
}
.woocommerce ul.products li.product .price { color: var(--gold) !important; }
.woocommerce ul.products li.product .price del { color: var(--grey) !important; }

/* buttons */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce button.button.alt,
.wc-block-components-button {
	background: transparent !important; color: var(--gold) !important;
	border: 1px solid rgba(212,175,55,.6) !important; border-radius: 2px !important;
	font-weight: 700 !important; letter-spacing: .14em; text-transform: uppercase; font-size: .74rem !important;
	transition: background .2s, color .2s;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce button.button.alt:hover, .wc-block-components-button:hover {
	background: var(--gold) !important; color: #000 !important;
}

/* single product */
.woocommerce div.product .product_title { font-family: var(--font-display); font-size: clamp(2rem, 4vw, 3.2rem); letter-spacing: .03em; color: var(--white); }
.woocommerce div.product p.price { color: var(--gold); font-size: 1.4rem; }
.woocommerce div.product .woocommerce-tabs ul.tabs li {
	background: #111; border-color: var(--woo-border);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: var(--grey); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: #181818; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--gold); }
.woocommerce div.product .woocommerce-tabs .panel { background: transparent; color: var(--white); }
.woocommerce div.product form.cart .quantity .qty {
	background: #111; color: var(--white); border: 1px solid var(--woo-border); height: 2.8em;
}
.woocommerce div.product div.images img { border-radius: 8px; }

/* notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error {
	background: #121212; color: var(--white); border-top-color: var(--gold);
}
.woocommerce-message::before, .woocommerce-info::before { color: var(--gold); }

/* cart + checkout: clean, readable, fast */
.woocommerce table.shop_table { border: 1px solid var(--woo-border); background: #0d0d0d; color: var(--white); }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { border-color: var(--woo-border) !important; }
.woocommerce-cart table.cart td.actions .coupon .input-text,
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	background: #111; color: var(--white); border: 1px solid var(--woo-border);
	padding: .7em .9em; border-radius: 4px;
}
.woocommerce form .form-row label { color: var(--grey); font-size: .8rem; letter-spacing: .06em; }
.woocommerce .cart-collaterals .cart_totals h2, .woocommerce #order_review_heading,
.woocommerce-checkout h3 { font-family: var(--font-display); letter-spacing: .05em; color: var(--white); }
#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment {
	background: #101010; border: 1px solid var(--woo-border); border-radius: 6px;
}
.woocommerce-checkout #payment div.payment_box { background: #181818; color: var(--white); }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #181818; }

/* WC blocks (cart/checkout blocks) dark pass */
.wc-block-components-form .wc-block-components-text-input input,
.wc-block-components-quantity-selector {
	background: #111 !important; color: var(--white) !important; border-color: var(--woo-border) !important;
}
.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout { color: var(--white); }

@media (max-width: 560px) {
	.woocommerce ul.products[class*="columns-"] li.product { width: 48%; margin-right: 4%; }
	.woocommerce ul.products[class*="columns-"] li.product:nth-child(2n) { margin-right: 0; }
}

/* ---- Digitalt Produktpas (single product, hooked prio 35) ---- */
.dpp-pass { margin: 18px 0 6px; }
.dpp-pass__btn {
	display: flex; align-items: center; gap: 14px;
	padding: 13px 18px; border: 1px solid rgba(201, 162, 75, 0.45);
	border-radius: 10px; background: linear-gradient(135deg, rgba(201,162,75,0.10), rgba(201,162,75,0.03));
	color: #e8e2d2; text-decoration: none;
	transition: border-color .25s ease, background .25s ease, transform .25s ease;
}
.dpp-pass__btn:hover {
	border-color: #c9a24b;
	background: linear-gradient(135deg, rgba(201,162,75,0.18), rgba(201,162,75,0.06));
	transform: translateY(-1px);
	color: #fff;
}
.dpp-pass__icon { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 8px; background: rgba(201,162,75,0.16); color: #c9a24b; flex: 0 0 auto; }
.dpp-pass__text { display: flex; flex-direction: column; line-height: 1.25; }
.dpp-pass__text strong { font-size: 14px; letter-spacing: .04em; }
.dpp-pass__text small { font-size: 11.5px; opacity: .65; letter-spacing: .03em; }
.dpp-pass__arrow { margin-left: auto; color: #c9a24b; font-size: 18px; transition: transform .25s ease; }
.dpp-pass__btn:hover .dpp-pass__arrow { transform: translateX(4px); }
@media (prefers-reduced-motion: reduce) {
	.dpp-pass__btn, .dpp-pass__arrow { transition: none; }
}
