/*
Theme Name: BiAn
Description: Theme for the BiAn print-on-demand clothing shop (child of Twenty Twenty-Five). Black & white ink style.
Template: twentytwentyfive
Version: 0.3.0
Requires at least: 6.7
Text Domain: bian
*/

/* Black & white ink style: square corners, black outlines, hard offset shadows */
:root {
	--bian-ink: var(--wp--preset--color--contrast);
	--bian-line: 2px solid var(--bian-ink);
	--bian-shadow: 6px 6px 0 var(--bian-ink);
}

::selection { background: var(--bian-ink); color: var(--wp--preset--color--base); }

/* Product cards: framed image, hard shadow on hover */
.wc-block-components-product-image img,
.wp-block-woocommerce-product-image img {
	background: var(--wp--preset--color--accent-5);
	border: var(--bian-line);
	transition: transform .15s ease, box-shadow .15s ease;
}
.wc-block-product:hover .wc-block-components-product-image img,
.wc-block-product:hover .wp-block-woocommerce-product-image img {
	transform: translate(-3px, -3px);
	box-shadow: var(--bian-shadow);
}

/* Category tiles */
.bian-categories .wp-block-image img { border: var(--bian-line); transition: transform .15s ease, box-shadow .15s ease; }
.bian-categories .wp-block-image a:hover img { transform: translate(-3px, -3px); box-shadow: var(--bian-shadow); }
.bian-categories p a { text-decoration: none; text-transform: uppercase; letter-spacing: .08em; font-size: var(--wp--preset--font-size--small); }

/* Outline button variant: white with black frame, inverts on hover */
.wp-block-button.is-style-outline > .wp-block-button__link {
	background: var(--wp--preset--color--base);
	color: var(--bian-ink);
	border: var(--bian-line);
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: var(--bian-ink);
	color: var(--wp--preset--color--base);
}
.wp-element-button:hover { box-shadow: var(--bian-shadow); }

/* Form fields in the same style */
.woocommerce .variations select,
.woocommerce .quantity input.qty,
.wc-block-components-text-input input,
.wc-blocks-components-select__select {
	border: var(--bian-line) !important;
	border-radius: 0 !important;
}

.bian-usp .wp-block-column { text-align: center; }
.bian-usp svg { width: 44px; height: 44px; stroke: currentColor; fill: none; stroke-width: 1.5; }

/* Header language links */
.bian-lang { display: flex; gap: .4em; font-size: var(--wp--preset--font-size--small); margin-right: .5em; }
.bian-lang a { text-decoration: none; opacity: .45; }
.bian-lang a[aria-current] { opacity: 1; font-weight: 700; }

.wp-block-navigation a { text-decoration: none; }
.wp-block-navigation a:hover { text-decoration: underline; text-underline-offset: .3em; }

.bian-footer-legal a { text-decoration: none; }
.bian-footer-legal a:hover { text-decoration: underline; }

/* Germanized price notes in product lists (tax, shipping, delivery time) */
li.wc-block-product p.wc-gzd-additional-info-loop {
	margin: 0;
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.5;
	color: var(--wp--preset--color--accent-4);
}
li.wc-block-product p.wc-gzd-additional-info-loop.tax-info { margin-top: .25rem; }

/* Product gallery fills its column */
body.woocommerce .wp-block-woocommerce-product-image-gallery {
	max-width: none;
}
.woocommerce-product-gallery .flex-viewport { border: var(--bian-line); }
.woocommerce-product-gallery .flex-control-thumbs img { border: 1px solid var(--bian-ink); }
.woocommerce-product-gallery .flex-control-thumbs img.flex-active { border-width: 2px; }
