/**
 * WCPC Core — shared design tokens (--wcpc-*).
 *
 * One bridge from the Elementor V4 kit variables (--color-*, --radius-*,
 * --space-*, --text-*, --tint-*, declared at :root by each site's kit) to a
 * stable, plugin-facing vocabulary. Every value carries the design's hex as a
 * fallback, so a plugin styled against --wcpc-* renders correctly even on a
 * site whose kit has not defined the variable (or has been reset).
 *
 * Rules:
 *   - Plugins (Sermon Manager, Planning Center Connection, Rental Manager,
 *     serve finder, search results) consume --wcpc-* and never a literal hex.
 *   - Retheming happens in the kit: change --color-primary there and every
 *     plugin card follows. Never edit the fallbacks to restyle a site.
 *   - Cards: tile radius --wcpc-radius-lg (16), row --wcpc-radius-md (10),
 *     thumb/chip --wcpc-radius-sm (6), pill --wcpc-radius-full.
 *
 * Loaded on every front-end page and in the Elementor editor/preview via the
 * 'wcpc-tokens' style handle (declare it as a dependency to guarantee order).
 */

:root {
	/* ---- brand ---------------------------------------------------------- */
	--wcpc-color-primary:            var(--color-primary, #34657F);
	--wcpc-color-primary-dark:       var(--color-primary-dark, #003B5C);
	--wcpc-color-primary-light:      var(--color-primary-light, #A4C8E1);

	/* ---- surfaces & lines ---------------------------------------------- */
	--wcpc-color-bg:                 var(--color-bg, #FFFFFF);
	--wcpc-color-surface:            var(--color-surface, #F4F7FA);
	--wcpc-color-surface-alt:        var(--color-surface-alt, #E8EEF3);
	--wcpc-color-surface-glass:      var(--color-surface-glass, rgba(255, 255, 255, 0.94));
	--wcpc-color-border:             var(--color-border, #D5DEE5);
	--wcpc-color-border-strong:      var(--color-border-strong, #B8C5CF);

	/* ---- text ----------------------------------------------------------- */
	--wcpc-color-text:               var(--color-text, #1F2933);
	--wcpc-color-text-muted:         var(--color-text-muted, #5B6B78);
	--wcpc-color-text-on-dark:       var(--color-text-on-dark, #FFFFFF);
	--wcpc-color-text-on-dark-muted: var(--color-text-on-dark-muted, #E4EEF5);
	--wcpc-color-text-placeholder:   var(--color-text-placeholder, #9AA8B2);

	/* ---- accents (ministry colours) ------------------------------------- */
	--wcpc-color-green:              var(--color-green, #4B9560);
	--wcpc-color-green-dark:         var(--color-green-dark, #3C7A4E);
	--wcpc-color-amber:              var(--color-amber, #FFB549);
	--wcpc-color-plum:               var(--color-plum, #66435A);
	--wcpc-color-rose:               var(--color-rose, #EF6079);
	--wcpc-color-rose-dark:          var(--color-rose-dark, #C13E54);

	/* ---- semantic ------------------------------------------------------- */
	--wcpc-color-success:            var(--color-success, #3C7A4E);
	--wcpc-color-warning:            var(--color-warning, #FFB549);
	--wcpc-color-error:              var(--color-error, #C13E54);
	--wcpc-color-info:               var(--color-info, #34657F);

	/* ---- tints + the text that sits on them (badges, chips, eyebrows) --- */
	--wcpc-tint-blue:                var(--tint-blue, #EDF4FA);
	--wcpc-tint-green:               var(--tint-green, #E3F0E7);
	--wcpc-tint-amber:               var(--tint-amber, #FFF1DC);
	--wcpc-tint-rose:                var(--tint-rose, #FBE7EA);
	--wcpc-tint-plum:                var(--tint-plum, #EFE9ED);
	--wcpc-text-on-blue:             var(--text-on-blue, #003B5C);
	--wcpc-text-on-green:            var(--text-on-green, #356E45);
	--wcpc-text-on-amber:            var(--text-on-amber, #8A5A12);
	--wcpc-text-on-rose:             var(--text-on-rose, #B23149);
	--wcpc-text-on-plum:             var(--text-on-plum, #66435A);

	/* ---- overlays ------------------------------------------------------- */
	--wcpc-overlay-photo:            var(--overlay-photo, rgba(0, 59, 92, 0.55));
	--wcpc-overlay-modal:            var(--overlay-modal, rgba(0, 59, 92, 0.5));
	--wcpc-badge-fill:               var(--badge-fill, rgba(0, 59, 92, 0.78));

	/* ---- shape ---------------------------------------------------------- */
	--wcpc-radius-sm:                var(--radius-sm, 6px);
	--wcpc-radius-md:                var(--radius-md, 10px);
	--wcpc-radius-lg:                var(--radius-lg, 16px);
	--wcpc-radius-full:              var(--radius-full, 9999px);

	/* ---- elevation & focus (navy-tinted, never black) ------------------- */
	--wcpc-shadow-1:                 0 1px 2px rgba(0, 59, 92, 0.06), 0 1px 3px rgba(0, 59, 92, 0.08);
	--wcpc-shadow-2:                 0 4px 12px rgba(0, 59, 92, 0.10);
	--wcpc-shadow-3:                 0 12px 32px rgba(0, 59, 92, 0.16);
	--wcpc-focus-ring:               0 0 0 3px rgba(52, 101, 127, 0.35);

	/* ---- spacing -------------------------------------------------------- */
	--wcpc-space-xs:                 var(--space-xs, 4px);
	--wcpc-space-sm:                 var(--space-sm, 8px);
	--wcpc-space-md:                 var(--space-md, 16px);
	--wcpc-space-lg:                 var(--space-lg, 24px);
	--wcpc-space-xl:                 var(--space-xl, 32px);
	--wcpc-space-2xl:                var(--space-2xl, 48px);
	--wcpc-space-3xl:                var(--space-3xl, 64px);

	/* ---- type ----------------------------------------------------------- */
	--wcpc-font-sans:                var(--font-sans, "Open Sans"), "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	--wcpc-text-h1:                  var(--text-h1, 40px);
	--wcpc-text-h2:                  var(--text-h2, 32px);
	--wcpc-text-h3:                  var(--text-h3, 24px);
	--wcpc-text-h4:                  var(--text-h4, 20px);
	--wcpc-text-h5:                  var(--text-h5, 18px);
	--wcpc-text-body-lg:             var(--text-body-lg, 18px);
	--wcpc-text-body:                var(--text-body, 16px);
	--wcpc-text-body-sm:             var(--text-body-sm, 14px);
	--wcpc-text-eyebrow:             var(--text-eyebrow, 13px);
	--wcpc-text-micro:               12px;
	--wcpc-eyebrow-tracking:         0.08em;

	/* ---- card contract (see the card spec) ------------------------------ */
	--wcpc-card-radius:              var(--wcpc-radius-lg);
	--wcpc-card-row-radius:          var(--wcpc-radius-md);
	--wcpc-card-padding:             var(--wcpc-space-lg);
	--wcpc-card-row-padding:         12px 16px;
	--wcpc-card-gap:                 var(--wcpc-space-sm);
	--wcpc-card-title-size:          var(--wcpc-text-h4);
	--wcpc-card-title-weight:        600;
	--wcpc-card-title-color:         var(--wcpc-color-primary-dark);
	--wcpc-card-meta-size:           var(--wcpc-text-body-sm);
	--wcpc-card-meta-color:          var(--wcpc-color-text-muted);
	--wcpc-card-lift:                -2px;

	/* ---- motion --------------------------------------------------------- */
	--wcpc-transition-fast:          120ms ease-out;
	--wcpc-transition-base:          150ms ease-out;
	--wcpc-transition-slow:          300ms ease-out;

	/* ---- layout --------------------------------------------------------- */
	--wcpc-content-max:              var(--content-max, 1200px);
	--wcpc-header-h:                 var(--header-h, 74px);

	/* ---- short aliases (Rental Manager + jump-nav vocabulary, 2.1.0) ----
	   Those plugins were written against a compact --wcpc-* set. Mapping the
	   short names here lets their existing stylesheets read the kit without
	   a rewrite; new code should use the long names above. */
	--wcpc-accent:                   var(--wcpc-color-primary);
	--wcpc-accent-dark:              var(--wcpc-color-primary-dark);
	--wcpc-on-accent:                var(--wcpc-color-text-on-dark);
	--wcpc-ink:                      var(--wcpc-color-text);
	--wcpc-muted:                    var(--wcpc-color-text-muted);
	--wcpc-card:                     var(--wcpc-color-bg);
	--wcpc-line:                     var(--wcpc-color-border);
	--wcpc-surface:                  var(--wcpc-color-surface);
	--wcpc-radius:                   var(--wcpc-radius-sm);
	--wcpc-ok:                       var(--wcpc-color-green-dark);
	--wcpc-warn:                     var(--wcpc-color-amber);
	--wcpc-disabled:                 var(--wcpc-color-border-strong);
}

@media (prefers-reduced-motion: reduce) {
	:root {
		--wcpc-transition-fast: 0ms;
		--wcpc-transition-base: 0ms;
		--wcpc-transition-slow: 0ms;
	}
}
