/* Aureum Commerce — compliance.css (batch 4, 12 Sep 2026)
   Gate UI for logged-out visitors, RUO footer disclaimer, one-time-purchase rules, checkout attestation.
   Sources: aureum-research-access-gate, aureum-checkout-compliance. Tokens fall back to the brand palette. */

:root {
	--au-c-ink: #1A1816;
	--au-c-ink-deep: #141210;
	--au-c-gold: #C9A227;
	--au-c-gold-bright: #E7C55B;
	--au-c-paper: #F5F3EE;
	--au-c-cream: #FBF8F2;
	--au-c-muted: #4A4540;
	--au-c-line: rgba(201, 162, 39, .35);
	--au-c-radius: 10px;
	--au-c-white: #fff;
}

/* Logged-out visitors while the hard gate is enforcing (body.au-gate-locked): the theme's raw buy buttons are dead server-side, hide them. */
body.au-gate-locked .aureum-add-to-cart,
body.au-gate-locked form.cart,
body.au-gate-locked .wlr-product-message,
body.au-gate-locked .au-pdp-sticky,
body.au-gate-locked .au-sticky,
body.au-gate-locked .aureum-sticky-atc-btn,
body.au-gate-locked .products .add_to_cart_button,
body.au-gate-locked .products .ajax_add_to_cart { display: none !important; }

/* RUO = one-time purchase only. No subscribe-and-save or recurring toggle, anywhere, for anyone. */
.aureum-sub-toggle, .aureum-sub-option, .aureum-sub-frequency-wrap, .aureum-sub-frequency-note, .aureum-sub-save-badge,
.wcsatt-options-wrapper, .wcsatt-options-prompt,
[class*="subscribe-save"], [class*="subscription-option"] { display: none !important; }

/* Sign-in prompt on product pages and loops */
.aureum-buy-gate {
	margin: 16px 0;
	padding: 16px 18px;
	border: 1px solid var(--au-c-line);
	border-radius: var(--au-c-radius);
	background: var(--au-c-cream);
}
.aureum-buy-gate p { margin: 0 0 10px; color: var(--au-c-ink); }
.aureum-buy-gate__lead { font-weight: 700; }
.aureum-buy-gate__note { font-size: 14px; color: var(--au-c-muted); }
a.aureum-login-to-buy, a.aureum-loop-signin {
	display: inline-block;
	background: var(--au-c-ink);
	color: var(--au-c-paper) !important;
	font-weight: 700;
	padding: 11px 20px;
	border-radius: 8px;
	text-decoration: none;
	font-size: 13px;
	letter-spacing: .02em;
}
a.aureum-loop-signin { margin-top: 10px; font-size: 12px; padding: 8px 14px; }
a.aureum-login-to-buy:focus-visible, a.aureum-loop-signin:focus-visible { outline: 2px solid var(--au-c-gold); outline-offset: 2px; }

/* Registration and checkout attestation blocks */
.aureum-gate-fields { margin: 18px 0; padding-top: 16px; border-top: 1px solid rgba(0, 0, 0, .08); }
.aureum-gate-fields select.input-text, .aureum-gate-fields input.input-text,
.aureum-checkout-attest select.input-text, .aureum-checkout-attest input.input-text { width: 100%; }
.aureum-gate-check { font-weight: 600; display: flex; gap: 10px; align-items: flex-start; }
.aureum-gate-check input[type="checkbox"] { margin-top: 4px; flex: 0 0 auto; }
.aureum-checkout-attest {
	margin: 12px 0 18px;
	padding: 16px 18px;
	border: 1px solid rgba(0, 0, 0, .12);
	border-radius: var(--au-c-radius);
	background: var(--au-c-white);
}

/* Billing descriptor / one-time / RUO notice on cart and checkout */
.aureum-checkout-notice {
	margin: 16px 0;
	padding: 14px 16px;
	border: 1px solid var(--au-c-line);
	border-radius: var(--au-c-radius);
	background: var(--au-c-cream);
	font-size: 13px;
	line-height: 1.6;
	color: var(--au-c-ink);
}
.aureum-checkout-notice p { margin: 0 0 8px; }
.aureum-checkout-notice p:last-child { margin-bottom: 0; }
.aureum-checkout-notice__billed { font-weight: 700; }
.aureum-checkout-notice__billed span { letter-spacing: .03em; }
.aureum-checkout-notice__sub { font-size: 13px; color: var(--au-c-muted); }

/* Checkout: the slide-in cart drawer is redundant here and its off-canvas transform causes horizontal scroll on phones.
   The select2-hidden native State select must keep the standard visually-hidden clamp (theme CSS once undid it). */
body.woocommerce-checkout .aureum-cart-drawer { display: none !important; }
body.woocommerce-checkout select.select2-hidden-accessible {
	position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important;
	margin: -1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; border: 0 !important;
}

/* Global RUO disclaimer, every page, above the footer */
.aureum-ruo-disclaimer {
	background: var(--au-c-ink-deep);
	color: var(--au-c-paper);
	font-family: 'Inter', -apple-system, sans-serif;
	font-size: 13px;
	line-height: 1.6;
	font-weight: 700;
	text-align: center;
	padding: 18px 20px;
	border-top: 2px solid var(--au-c-gold);
	letter-spacing: .01em;
}
.aureum-ruo-disclaimer strong { color: var(--au-c-gold-bright); font-weight: 800; }
@media (max-width: 600px) { .aureum-ruo-disclaimer { font-size: 12px; padding: 16px 14px; } }

.aureum-ruo-disclaimer__legal { display: block; margin-top: 8px; font-family: 'Inter Tight', 'Inter', -apple-system, sans-serif; font-size: 11px; font-weight: 400; letter-spacing: .01em; color: rgba(251, 248, 242, .55); line-height: 1.6; max-width: 980px; margin-left: auto; margin-right: auto; }
.aureum-ruo-disclaimer__legal a { color: rgba(231, 197, 91, .8); text-decoration: none; border-bottom: 1px solid rgba(231, 197, 91, .4); }
