/**
 * CA TCPA Manager — frontend styles.
 * Body byte-ported from snippet v2.9.0 output_frontend_styles().
 * Covers: consent group/disclaimer/checkbox rows, the checkout
 * above-Place-Order block, and WP login-screen sizing.
 * 3.2.0 additions at end of file: .ca-tcpa-section (native blend),
 * .ca-tcpa-doc (managed page documents), .ca-tcpa-doc-meta (version stamp).
 */
.ca-tcpa-consent-group { display: block; margin: 12px 0 18px; clear: both; }
.ca-tcpa-consent-group .ca-tcpa-disclaimer,
.ca-tcpa-disclaimer { font-size: 12px; line-height: 1.65; color: #555; margin: 0 0 10px; padding: 12px 14px; background: rgba(0, 0, 0, 0.025); border-left: 3px solid rgba(0, 0, 0, 0.12); border-radius: 3px; box-sizing: border-box; max-width: 100%; text-align: left; }
.ca-tcpa-consent-group .ca-tcpa-disclaimer p,
.ca-tcpa-disclaimer p { display: block; margin: 0 0 12px; padding: 0; font-size: 12px; line-height: 1.65; color: inherit; text-align: left; }
.ca-tcpa-consent-group .ca-tcpa-disclaimer p:last-child,
.ca-tcpa-disclaimer p:last-child { margin-bottom: 0; }
.ca-tcpa-consent-group .ca-tcpa-disclaimer a,
.ca-tcpa-disclaimer a { color: inherit; text-decoration: underline; text-decoration-color: rgba(0, 0, 0, 0.35); }
.ca-tcpa-consent-group .ca-tcpa-disclaimer a:hover,
.ca-tcpa-disclaimer a:hover { text-decoration-color: currentColor; }
.ca-tcpa-consent-row { display: block; margin: 0 0 4px; padding: 10px 14px; background: rgba(0, 0, 0, 0.02); border-radius: 3px; box-sizing: border-box; }
.ca-tcpa-consent-row .ca-tcpa-consent-label { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; font-size: 13px; line-height: 1.5; font-weight: 400; color: #333; margin: 0; }
.ca-tcpa-consent-row .ca-tcpa-consent-checkbox { flex: 0 0 auto; width: 16px; height: 16px; margin: 2px 0 0 0; padding: 0; vertical-align: top; }
.ca-tcpa-consent-row .ca-tcpa-consent-text { flex: 1 1 auto; display: inline-block; }
.ca-tcpa-consent-row .ca-tcpa-required { color: #d63638; font-weight: 700; margin-left: 2px; }
/* Checkout: disclaimer + checkbox combined into one bordered block above Place Order. */
.ca-tcpa-place-order-consent { margin: 14px 0 16px; padding: 14px 16px; background: rgba(0, 0, 0, 0.025); border-left: 3px solid rgba(34, 113, 177, 0.4); border-radius: 4px; }
.ca-tcpa-place-order-consent .ca-tcpa-disclaimer { background: transparent; border-left: none; padding: 0; margin: 0 0 10px; }
.ca-tcpa-place-order-consent .ca-tcpa-consent-row { background: transparent; padding: 0; margin: 0; }
body.login .ca-tcpa-consent-group,
body.login .ca-tcpa-disclaimer,
body.login .ca-tcpa-consent-row { max-width: 100%; width: 100%; box-sizing: border-box; }
body.login .ca-tcpa-disclaimer { font-size: 11.5px; line-height: 1.6; }
body.login .ca-tcpa-disclaimer p { font-size: 11.5px; line-height: 1.6; margin: 0 0 10px; }
body.login .ca-tcpa-consent-row { margin-top: 6px; }

/* ---------------------------------------------------------------------
 * 3.2.0 (decision 0004) — NATIVE typography, not the gray box.
 *
 * .ca-tcpa-section: the managed compliance sections (optin evidence text,
 * privacy/terms SMS sections) now blend with surrounding page content.
 * Inherits the theme's font family/colors; provides clean spacing only.
 * ------------------------------------------------------------------ */
.ca-tcpa-section { margin: 1.25em 0; padding: 0; background: transparent; border: 0; font-size: inherit; line-height: 1.7; color: inherit; text-align: left; }
.ca-tcpa-section p { margin: 0 0 1em; font-size: inherit; line-height: inherit; color: inherit; }
.ca-tcpa-section p:last-child { margin-bottom: 0; }
.ca-tcpa-section a { color: inherit; text-decoration: underline; }

/* .ca-tcpa-doc: the full managed page documents ([ca_tcpa_privacy_page] /
 * [ca_tcpa_terms_page]) — semantic h1/h2/h3/p/ul/a, bot-parseable, readable. */
.ca-tcpa-doc { margin: 0 auto; max-width: 860px; padding: 8px 24px 28px; /* 3.2.1: side gutters so narrow viewports never run edge-to-edge */ font-size: 16px; line-height: 1.75; color: inherit; text-align: left; overflow-wrap: break-word; }
.ca-tcpa-doc h1 { font-size: 2em; line-height: 1.25; margin: 0.4em 0 0.5em; }
.ca-tcpa-doc h2 { font-size: 1.45em; line-height: 1.3; margin: 1.6em 0 0.55em; padding-bottom: 0.25em; border-bottom: 1px solid rgba(0, 0, 0, 0.08); scroll-margin-top: 110px; } /* 3.2.1: section separators */
.ca-tcpa-doc h3 { font-size: 1.12em; line-height: 1.35; margin: 1.2em 0 0.4em; scroll-margin-top: 110px; }
.ca-tcpa-doc p { margin: 0 0 1em; }
.ca-tcpa-doc ul, .ca-tcpa-doc ol { margin: 0 0 1em 1.4em; padding: 0; }
.ca-tcpa-doc li { margin: 0 0 0.5em; }
.ca-tcpa-doc a { color: inherit; text-decoration: underline; }
.ca-tcpa-doc a:hover { text-decoration-thickness: 2px; }
.ca-tcpa-doc strong { font-weight: 700; }

/* Per-document version stamp appended by the renderer. */
.ca-tcpa-doc-meta { margin: 18px auto 0; max-width: 860px; padding: 10px 24px 0; /* 3.2.1: match doc gutters */ border-top: 1px solid rgba(0, 0, 0, 0.08); font-size: 11.5px; line-height: 1.5; color: #777; text-align: left; }
