/* =====================================================================
   HELIX — saidi põhi (teemast sõltumatu)
   NB! Seda faili EI pumbata build-css.py-ga: kõik reeglid on :where()
   sees (kaal 0), et Elementor, WooCommerce ja Helixi moodulid saaksid
   neid alati üle kirjutada. Muuda otse siin.
   ===================================================================== */

:where(html) { -webkit-text-size-adjust: 100%; }

:where(body) {
	margin: 0;
	background: var( --helix-page, #FAF7F2 );
	color: var( --helix-ink, #1C1C1C );
	font-family: var( --helix-font, system-ui, sans-serif );
	font-size: 16px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

:where(h1, h2, h3, h4, h5, h6) {
	margin: 0 0 .5em;
	color: var( --helix-ink, #1C1C1C );
	font-family: var( --helix-font-head, var( --helix-font, system-ui, sans-serif ) );
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: -.015em;
}

:where(h1) { font-size: clamp( 30px, 3.4vw, 48px ); }
:where(h2) { font-size: clamp( 24px, 2.4vw, 34px ); }
:where(h3) { font-size: 20px; }

:where(p) { margin: 0 0 1em; }

:where(a) { color: var( --helix-plum, #764452 ); text-decoration-thickness: 1px; text-underline-offset: 3px; }
:where(a:hover) { color: var( --helix-plum-dark, #5E3541 ); }

:where(img) { max-width: 100%; height: auto; }

:where(input, select, textarea, button) { font: inherit; }

:where(input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="search"], input[type="number"], input[type="url"], select, textarea) {
	min-height: 48px;
	padding: 10px 14px;
	border: 1px solid #E6DFD4;
	border-radius: 12px;
	background: #fff;
	color: inherit;
	box-sizing: border-box;
}

:where(textarea) { min-height: 110px; }

:where(input:focus, select:focus, textarea:focus) {
	border-color: var( --helix-plum, #764452 );
	outline: 0;
	box-shadow: 0 0 0 3px color-mix( in srgb, var( --helix-plum, #764452 ) 14%, transparent );
}

/* WooCommerce'i nupud lehtedel, mida me eraldi ei kujunda (konto, tänuleht ...) */
:where(.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit, .wp-element-button, .woocommerce-button) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 22px;
	border: 0;
	border-radius: 999px;
	background: var( --helix-plum, #764452 );
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
	transition: background-color .2s;
}

:where(.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover, .wp-element-button:hover) {
	background: var( --helix-plum-dark, #5E3541 );
	color: #fff;
}

:where(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
	margin: 0 0 20px;
	padding: 14px 18px;
	border: 0;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 8px 24px rgba( 40, 28, 22, .06 );
	list-style: none;
}

:where(.woocommerce-error) { color: #B42318; }

:where(table.shop_table) { width: 100%; border-collapse: collapse; background: #fff; border-radius: 16px; overflow: hidden; }
:where(table.shop_table th, table.shop_table td) { padding: 12px 14px; border-bottom: 1px solid #ECE5DA; text-align: left; }

/* Hello: tavalised (mitte-Elementori) lehed mõnusa laiusega */
:where(.site-main) { padding-block: clamp( 24px, 4vw, 56px ); }
:where(body:not(.elementor-page) .site-main) { max-width: 1240px; margin-inline: auto; padding-inline: clamp( 16px, 3vw, 32px ); }

/* Ligipääsetavus: nähtav fookus */
:where(:focus-visible) { outline: 2px solid var( --helix-plum, #764452 ); outline-offset: 2px; }
