/*
 * ArtiveLab Experience Theme — Base stylesheet.
 * Design tokens, layout helpers, header/footer base styles.
 * Component styles live in the plugin (blocks.css).
 */

/* ─── Reset ────────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }
img, video { max-width: 100%; height: auto; display: block; }

/* ─── Layout ───────────────────────────────────────────────── */
body {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	margin: 0;
}
.aleth-main { flex: 1; }

/* ─── Header ───────────────────────────────────────────────── */
.aleth-header {
	position: sticky;
	top: 0;
	z-index: 1000;
	background: var(--wp--preset--color--white);
	border-bottom: 1px solid var(--wp--preset--color--border, #e2e8f0);
	box-shadow: 0 1px 3px rgba(0,0,0,.06);
}

.aleth-header__inner {
	max-width: var(--wp--style--global--wide-size, 1280px);
	margin-inline: auto;
	padding-inline: var(--wp--preset--spacing--60, 1.5rem);
	padding-block: var(--wp--preset--spacing--40, 1rem);
	gap: var(--wp--preset--spacing--80, 2rem);
}

.aleth-header--minimal .aleth-header__inner {
	justify-content: center;
}

.aleth-header--centered {
	text-align: center;
}

.aleth-header__nav .wp-block-navigation__responsive-container-open,
.aleth-header__nav .wp-block-navigation__responsive-container-close {
	color: var(--wp--preset--color--text);
}

/* ─── Footer ───────────────────────────────────────────────── */
.aleth-footer {
	padding-block: var(--wp--preset--spacing--120, 3rem);
}

.aleth-footer__grid {
	gap: var(--wp--preset--spacing--80, 2rem);
}

.aleth-footer__divider { margin-block: var(--wp--preset--spacing--80, 2rem); }
.aleth-footer__bottom { opacity: .7; font-size: var(--wp--preset--font-size--xs); }

.aleth-footer--minimal {
	padding-block: var(--wp--preset--spacing--60, 1.5rem);
	border-top: 1px solid rgba(255,255,255,.1);
}

/* ─── Post card ────────────────────────────────────────────── */
.aleth-post-card img { border-radius: .5rem; }
.aleth-post-header { margin-bottom: var(--wp--preset--spacing--80, 2rem); }

/* ─── Per-page color scheme overrides ─────────────────────── */
/* Applied by plugin when aleb_page_style meta is set. */
[data-aleb-scheme="dark"] {
	--wp--preset--color--primary: var(--aleb-page-primary, #818cf8);
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--white);
}
[data-aleb-scheme="dark"] .aleth-header {
	background: var(--wp--preset--color--secondary);
	border-bottom-color: rgba(255,255,255,.08);
}

/* ─── Accessibility ────────────────────────────────────────── */
:focus-visible {
	outline: 2px solid var(--wp--preset--color--primary);
	outline-offset: 2px;
}
.screen-reader-text {
	clip: rect(1px,1px,1px,1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal;
}

/* ─── WooCommerce base integration ────────────────────────── */
.woocommerce-page .aleth-main,
.woocommerce .aleth-main {
	padding-block: var(--wp--preset--spacing--80, 2rem);
}

/* Form elements - used by CF7, Formidable, Gravity, etc. */
.wpcf7 input:not([type="submit"]),
.wpcf7 textarea,
.wpcf7 select,
.frm_form_fields input:not([type="submit"]),
.frm_form_fields textarea,
.frm_form_fields select,
.gform_wrapper input:not([type="submit"]),
.gform_wrapper textarea,
.gform_wrapper select {
	border: 1px solid var(--wp--preset--color--border, #e2e8f0);
	border-radius: .375rem;
	padding: .5rem .75rem;
	font-family: inherit;
	font-size: inherit;
	width: 100%;
	transition: border-color .15s;
}

.wpcf7 input:not([type="submit"]):focus,
.wpcf7 textarea:focus,
.frm_form_fields input:not([type="submit"]):focus,
.frm_form_fields textarea:focus,
.gform_wrapper input:not([type="submit"]):focus,
.gform_wrapper textarea:focus {
	outline: none;
	border-color: var(--wp--preset--color--primary, #2563eb);
	box-shadow: 0 0 0 3px rgba(37,99,235,.15);
}

.wpcf7 input[type="submit"],
.frm_button_submit,
.gform_button {
	background: var(--wp--preset--color--primary, #2563eb);
	color: #fff;
	border: none;
	border-radius: .375rem;
	padding: .625rem 1.5rem;
	font-weight: 600;
	cursor: pointer;
	transition: filter .15s;
}
.wpcf7 input[type="submit"]:hover,
.frm_button_submit:hover,
.gform_button:hover {
	filter: brightness(1.1);
}
