/*
Theme Name: Hello Elementor LBS
Theme URI: https://wayacross.pt
Description: Thin Leiria Business School child theme for Hello Elementor. Homes the LBS design tokens, Barlow webfont, and site-wide component CSS (.course-card, .exec-card, .lbs-* and .lbs-fx-* effect classes) so page content stays Elementor-native. Built by WayAcross.
Author: WayAcross
Author URI: https://wayacross.pt
Template: hello-elementor
Version: 0.1.3
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: hello-elementor-lbs
*/

/* ------------------------------------------------------------------
   This file is intentionally thin. The real site-wide rules (design
   tokens + component classes) live in assets/css/lbs-components.css,
   enqueued from functions.php. Keep heavy styling there or in
   Elementor; use this file only for small global base rules that must
   apply outside Elementor (e.g. the HFE header/footer, wp widgets).
   ------------------------------------------------------------------ */

/* Plain `body` (specificity 0,0,1), not :where(body) (0,0,0) — Hello Elementor's
   reset.css sets `body{font-family:-apple-system,…}` at 0,0,1, so a zero-specificity
   rule never wins. This child style.css loads after reset.css, so the tie goes to us
   and the whole site inherits Barlow (matches the design's `body{font-family:var(--font-sans)}`). */
body {
  font-family: var(--font-sans, 'Barlow', 'Helvetica Neue', Arial, sans-serif);
}

::selection {
  background: var(--lbs-navy, #1E2F60);
  color: var(--lbs-paper, #fff);
}

/* Base link + button colors. Hello Elementor's reset.css defaults links and
   buttons to #CC3366 (magenta); the LBS design (colors_and_type.css) wants cyan
   links. We port only these base element defaults here (not headings/body, which
   stay Elementor-driven). Loads after reset.css, so same-specificity rules win.
   CSS LOAD ORDER (course-detail page):
     plugin CSS → reset.css → lbs-components.css → THIS FILE (last = wins) */
a {
  color: var(--color-link, #0084A0);
}
a:hover {
  color: var(--color-link-hover, #1E2F60);
}

/* Neutralize reset.css #CC3366 color on generic (non-LBS) buttons.
   Excludes .lbs-btn elements — those are handled by explicit rules below
   so reset.css #c36 (which loads after plugin CSS) never wins. */
button:not([class*="lbs-btn"]),
[type="button"]:not([class*="lbs-btn"]),
[type="submit"]:not([class*="lbs-btn"]) {
  color: inherit;
  border-radius: 0; /* design uses sharp corners site-wide; kills reset.css 3px radius */
}
/* .lbs-btn on <button>/<input> — lbs-components.css already re-asserts these
   after reset.css, but style.css loads last and is the definitive safety net. */
button.lbs-btn--primary,     [type="button"].lbs-btn--primary  { color: #fff; }
button.lbs-btn--accent,      [type="button"].lbs-btn--accent   { color: #fff; }
button.lbs-btn--ghost-light, [type="button"].lbs-btn--ghost-light { color: #fff; }
button.lbs-btn--outline,     [type="button"].lbs-btn--outline  { color: var(--lbs-navy, #1E2F60); }

/* M7 — Calendar interactive buttons: kill reset.css border + border-radius.
   reset.css loads AFTER lbs-course-detail.css (plugin), so its
   `[type=button]{border:1px solid #c36;border-radius:3px}` overrides the
   plugin's `border:none`. style.css loads last and wins definitively. */
button.cal-timeline__pin,
button.cal-row__pick {
  border: none;
  border-radius: 0;
}
button.cal-row__ics {
  border: none;
  border-left: 1px solid var(--color-border, #E4E9F2);
  border-radius: 0;
  color: var(--lbs-navy, #1E2F60);
}
