/********************************************************
 * 0. PAGE-SPECIFIC HEADER HIDE (UPDATE PAGE ID)
 *******************************************************/

/* Hide Astra header ONLY on this page (change 123 to real ID) */
body.page-id-123 .site-header,
body.page-id-123 .main-header-bar,
body.page-id-123 .ast-primary-header-bar,
body.page-id-123 .ast-above-header-bar,
body.page-id-123 .ast-below-header-bar,
body.page-id-123 .ast-mobile-header,
body.page-id-123.ast-desktop .main-header-bar,
body.page-id-123.ast-header-break-point .main-header-bar {
  display: none !important;
  visibility: hidden !important;
}

/* Remove any top spacing for that page */
body.page-id-123 .site,
body.page-id-123 .site-content,
body.page-id-123 #primary,
body.page-id-123 #content,
body.page-id-123 .content-area,
body.page-id-123 .ast-container {
  margin-top: 0 !important;
  padding-top: 0 !important;
}


/********************************************************
 * 1. GLOBAL PALETTE + TYPOGRAPHY SSOT
 *******************************************************/

:root {
  /* Site-wide dark theme (CMB) */
  --bg: #0a1020;          /* main background */
  --bg-2: #0f1730;
  --bg-3: #131c3c;

  --ink-1: #f8fbff;       /* primary text */
  --ink-2: #e6f2ff;       /* secondary text */
  --ink-strong: #ffffff;
  --ink-muted: #c9d6ff;

  --line: #33427a;        /* borders/separators */
  --accent: #44e1ff;      /* brand accent */

  /* Scotty Flip Premium v1.1 tokens */
  --sf-bg: #0a1020;
  --sf-panel: #0d1530;
  --sf-card: #141d3a;
  --sf-ink-0: #ffffff;
  --sf-ink-1: #f8fbff;
  --sf-ink-2: #e6f2ff;
  --sf-muted-strong: #d7e2ff;
  --sf-line: #33427a;
  --sf-accent: #44e1ff;
  --sf-accent-ink: #001925;

  /* Enhanced copy for intro/FAQ blocks */
  --sf-header: #e0e6ff;
  --sf-body: #bfc8e0;
}

/* Global body defaults */
html,
body {
  background: var(--bg) !important;
  color: var(--ink-1);
  margin: 0 !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Strong default readability */
body,
p,
li,
span,
a,
h1,
h2,
h3,
h4,
h5,
h6,
label {
  color: var(--ink-1);
  text-shadow: 0 0 0.01px rgba(0, 0, 0, 0.01);
}

/* Links/buttons pop on dark */
a {
  color: var(--accent);
}
a:hover,
a:focus {
  text-decoration: underline;
}

.button,
.elementor-button,
button {
  color: var(--bg);
  background: var(--accent);
  border: 1px solid var(--accent);
  font-weight: 700;
}
.button.is-ghost,
.elementor-button--ghost {
  background: transparent;
  color: var(--accent);
  border: 1px solid var(--accent);
}

/* Utility block */
.hc-block {
  background: var(--bg-2);
  color: var(--ink-1);
  border: 1px solid var(--line);
  border-radius: 12px;
}

/* Headings stronger by default */
h1,
h2,
h3 {
  font-weight: 800;
  letter-spacing: 0.2px;
}


/********************************************************
 * 2. ASTRA HAIRLINE / CANVAS FIX + FOOTER HANDLING
 *******************************************************/

/* Remove top gaps and show dark canvas through Astra wrappers */
.site,
.site-content,
#primary,
#content,
.content-area,
.ast-container,
.ast-separate-container,
.ast-separate-container .site-content,
.ast-separate-container .site-content > .ast-container,
.ast-plain-container,
.ast-plain-container .site-content {
  background: transparent !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Headers: remove borders/shadows that create white lines */
.site-header,
.main-header-bar,
.ast-primary-header-bar {
  border: 0 !important;
  box-shadow: none !important;
}
.site-header::before,
.site-header::after,
.main-header-bar::before,
.main-header-bar::after {
  content: none !important;
}

/* First Elementor section: no forced top spacing */
.elementor-section:first-of-type,
.elementor-top-section:first-of-type {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Logged-in admin bar seam */
#wpadminbar {
  background: var(--bg) !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Hide Astra footer globally (per your note) */
.site-footer,
.footer-adv,
.ast-footer-bar,
.ast-small-footer,
.ast-builder-grid-row-container.ast-footer-row {
  display: none !important;
  visibility: hidden !important;
}

/* Collapse extra bottom spacing */
.site,
.site-content,
#primary,
#content,
.content-area,
.ast-container {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
html,
body {
  margin-bottom: 0 !important;
}


/********************************************************
 * 3. SCOTTY FLIP PREMIUM v1.1 (FOR #sf-*-v11 WIDGETS)
 *******************************************************/

/* Apply tokens to every Premium v1.1 widget (IDs like #sf-*-v11) */
[id^="sf-"][id$="-v11"] {
  --bg: var(--sf-bg);
  --panel: var(--sf-panel);
  --card: var(--sf-card);
  --ink: var(--sf-ink-1);
  --muted: var(--sf-muted-strong);
  --line: var(--sf-line);
  --accent: var(--sf-accent);
  --accent-ink: var(--sf-accent-ink);
  color: var(--sf-ink-1) !important;
}

/* Headings */
[id^="sf-"][id$="-v11"] h1,
[id^="sf-"][id$="-v11"] h2,
[id^="sf-"][id$="-v11"] h3 {
  color: #9df2ff !important;
  font-weight: 900 !important;
  text-shadow: 0 0 14px rgba(68, 225, 255, 0.45);
}

/* Labels / small text */
[id^="sf-"][id$="-v11"] label,
[id^="sf-"][id$="-v11"] .small,
[id^="sf-"][id$="-v11"] .minor,
[id^="sf-"][id$="-v11"] .pill {
  color: var(--sf-ink-2) !important;
  opacity: 1 !important;
}

/* Paragraphs */
[id^="sf-"][id$="-v11"] p {
  color: var(--sf-ink-1) !important;
}

/* Inputs */
[id^="sf-"][id$="-v11"] input,
[id^="sf-"][id$="-v11"] select {
  color: var(--sf-ink-1) !important;
  border-color: var(--sf-line) !important;
}
[id^="sf-"][id$="-v11"] input::placeholder {
  color: #cfe4ff !important;
  opacity: 1 !important;
}

/* Cards & summary blocks */
[id^="sf-"][id$="-v11"] .card,
[id^="sf-"][id$="-v11"] .summary {
  border-color: var(--sf-line) !important;
}

/* Homepage directory block */
#sf-home-grid {
  background: var(--sf-bg);
  color: var(--sf-ink-1);
}
#sf-home-grid h1 {
  color: #9df2ff !important;
  text-shadow: 0 0 14px rgba(68, 225, 255, 0.45);
  font-weight: 900;
}
#sf-home-grid p.lead {
  color: var(--sf-ink-2) !important;
}
#sf-home-grid .card {
  background: var(--sf-card);
  border: 1px solid var(--sf-line);
}
#sf-home-grid .card h3 {
  color: var(--sf-ink-1);
  font-weight: 800;
}
#sf-home-grid .card p {
  color: var(--sf-ink-2) !important;
}
#sf-home-grid .card .pill {
  color: var(--sf-ink-2) !important;
  border-color: var(--sf-line);
  background: #0f2144;
}


/********************************************************
 * 4. ENHANCED INTRO / FAQ (ENH-* SECTIONS)
 *******************************************************/

#enh-intro h1,
#enh-learn h2,
#enh-faq h2 {
  color: var(--sf-header);
  font-weight: 700;
}

#enh-intro p,
#enh-learn p,
#enh-faq p,
#enh-legal p {
  color: var(--sf-body);
}

details > summary {
  color: var(--sf-header);
}

details[open] > summary {
  color: var(--sf-accent);
}


/********************************************************
 * 5. CHIPS + ODDS UI (GLOBAL UTILITIES)
 *******************************************************/

.chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 4px;
}

.chip {
  background: #1b2550;
  border: 1px solid #26325d;
  border-radius: 999px;
  padding: 6px 10px;
  font-size: 12px;
  cursor: pointer;
}

.chip.sign {
  font-weight: 800;
  min-width: 38px;
  text-align: center;
}

/* Odds UI with +/- selector */
.cmb-odds-ui {
  display: flex;
  align-items: center;
  gap: 8px;
  max-width: 340px;
}

.cmb-odds-ui .cmb-sign {
  appearance: none;
  -webkit-appearance: none;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  padding: 10px 12px;
  background: #fff;
  min-width: 60px;
  line-height: 1;
  font-size: 16px; /* prevents iOS zoom */
}

.cmb-odds-ui input {
  flex: 1;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  padding: 10px 12px;
  background: #fff;
  font-size: 16px; /* prevents iOS zoom */
}


/********************************************************
 * 6. CMB v1.4 WRAPPER (CALCULATOR / TENNIS PAGES)
 *******************************************************/

/* Main card wrapper */
.cmb-v14 {
  max-width: 920px;
  margin: 3rem auto 4.5rem;
  padding: 2.4rem 1.9rem 3.4rem;
  background: radial-gradient(circle at top left,
              rgba(60, 90, 200, 0.45),
              rgba(5, 10, 35, 0.98));
  border-radius: 18px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.cmb-v14-content {
  color: #f8fbff;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
}

/* Page header */
.cmb-page-header {
  margin-bottom: 2.4rem;
  padding-bottom: 1.4rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.09);
}

.cmb-page-header .cmb-eyebrow {
  font-size: 0.78rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  margin: 0 0 0.5rem;
  color: rgba(190, 205, 255, 0.95);
}

.cmb-page-header h1 {
  font-size: 2.1rem;
  line-height: 1.2;
  margin: 0 0 0.75rem;
  color: #ffffff;
  font-weight: 700;
}

.cmb-page-header .cmb-intro {
  font-size: 1rem;
  max-width: 46rem;
  opacity: 0.92;
}

/* Sections */
.cmb-page-main .cmb-section {
  margin-bottom: 3.1rem;
}

.cmb-page-main .cmb-section h2 {
  font-size: 1.35rem;
  margin-top: 0;
  margin-bottom: 0.9rem;
  color: #ffffff;
  font-weight: 650;
}

.cmb-page-main h3 {
  color: #ffffff;
  font-weight: 600;
}

/* Alt panel */
.cmb-page-main .cmb-section-alt {
  background: rgba(10, 15, 40, 0.55);
  border-radius: 12px;
  padding: 1.75rem 1.5rem;
}

/* Lists */
.cmb-page-main ol,
.cmb-page-main ul {
  padding-left: 1.35rem;
}

.cmb-page-main li {
  margin-bottom: 0.35rem;
  font-size: 0.98rem;
  color: rgba(240, 244, 255, 0.92);
}

/* Grid & cards */
.cmb-grid {
  display: grid;
  gap: 1.5rem;
}

.cmb-grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cmb-card {
  background: rgba(8, 15, 55, 0.92);
  border-radius: 14px;
  padding: 1.35rem 1.3rem;
  border: 1px solid rgba(255, 255, 255, 0.09);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.6);
}

.cmb-card h3 {
  margin-top: 0;
  margin-bottom: 0.45rem;
  font-size: 1rem;
}

/* FAQ block */
.cmb-faq-section {
  margin-top: 1.5rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.cmb-faq-item + .cmb-faq-item {
  margin-top: 1.25rem;
}

.cmb-faq-item h3 {
  font-size: 1rem;
  margin-bottom: 0.35rem;
}

/* Calculator slot */
.cmb-calculator-slot {
  margin: 1.5rem 0 0.85rem;
  padding: 1.7rem 1.4rem;
  border-radius: 14px;
  border: 1px dashed rgba(173, 205, 255, 0.5);
  background: rgba(6, 14, 50, 0.9);
}

/* Responsive tweaks */
@media (max-width: 768px) {
  .cmb-v14 {
    max-width: 100%;
    margin: 2.4rem auto 3.4rem;
    padding: 2.1rem 1.2rem 2.8rem;
  }

  .cmb-page-header h1 {
    font-size: 1.65rem;
  }

  .cmb-grid-2 {
    grid-template-columns: 1fr;
  }
}
/* Hide the theme's page title on any page using the CMB v14 wrapper */
body:has(.cmb-v14) .entry-title {
  display: none !important;
}
/* CMB ARTICLE SKIN V1 – DO NOT CHANGE
   Canonical skin for all CMB content pages (guides, how-tos, FAQs, long tails)
*/

.cmb-v14.cmb-skin-cmb-article {
  background: transparent;
}

.cmb-skin-cmb-article__inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 32px 20px 40px;
}

.cmb-skin-cmb-article__card {
  background: #04224b; /* same top blue, no fade */
  border-radius: 18px;
  padding: 32px 24px 40px;
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.55);
}

/* Headings */
.cmb-skin-cmb-article h1,
.cmb-skin-cmb-article h2,
.cmb-skin-cmb-article h3 {
  color: #f9fbff;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.cmb-skin-cmb-article h1 {
  font-size: 1.9rem;
  margin-bottom: 0.75rem;
}

.cmb-skin-cmb-article h2 {
  font-size: 1.35rem;
  margin-top: 2.2rem;
  margin-bottom: 0.6rem;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  padding-bottom: 0.35rem;
}

.cmb-skin-cmb-article h3 {
  font-size: 1.08rem;
  margin-top: 1.4rem;
  margin-bottom: 0.4rem;
}

/* Body text */
.cmb-skin-cmb-article p,
.cmb-skin-cmb-article li {
  color: #dde7ff;
  line-height: 1.65;
}

/* Links */
.cmb-skin-cmb-article a {
  color: #7fd1ff;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.cmb-skin-cmb-article a:hover {
  color: #b0e4ff;
}

/* Eyebrow + lede */
.cmb-article__eyebrow {
  text-transform: uppercase;
  font-size: 0.8rem;
  letter-spacing: 0.12em;
  color: #8aa4ff;
  margin-bottom: 0.4rem;
}

.cmb-article__lede {
  font-size: 0.98rem;
  margin-bottom: 0.75rem;
}

/* CTA row */
.cmb-article__cta-row {
  margin-top: 1.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

/* Buttons */
.cmb-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.55rem 1.1rem;
  border-radius: 999px;
  font-size: 0.9rem;
  font-weight: 600;
  border: 1px solid transparent;
  cursor: pointer;
  text-decoration: none;
}

.cmb-btn-primary {
  background: #3b82f6;
  border-color: #60a5fa;
  color: #f9fbff;
}

.cmb-btn-primary:hover {
  background: #2563eb;
}

.cmb-btn-ghost {
  background: transparent;
  border-color: rgba(148, 163, 184, 0.8);
  color: #e5edff;
}

.cmb-btn-ghost:hover {
  background: rgba(15, 23, 42, 0.6);
}

/* Tool pills */
.cmb-tool-strip {
  margin-top: 1.25rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.cmb-tool-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.35rem 0.9rem;
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 600;
  border: 1px solid rgba(148, 163, 184, 0.85);
  color: #dbe7ff;
  background: rgba(15, 23, 42, 0.7);
  text-decoration: none;
}

.cmb-tool-pill:hover {
  background: rgba(37, 99, 235, 0.9);
  border-color: #60a5fa;
  color: #f9fbff;
}

/* “Next steps” section divider */
.cmb-section--next-steps {
  margin-top: 2.5rem;
  border-top: 1px dashed rgba(148, 163, 184, 0.4);
  padding-top: 1.6rem;
}

/* Mobile tweaks */
@media (max-width: 640px) {
  .cmb-skin-cmb-article__card {
    padding: 24px 18px 28px;
    border-radius: 14px;
  }

  .cmb-article__cta-row {
    flex-direction: column;
    align-items: stretch;
  }
}
/* CMB ARTICLE SKIN V1 – DO NOT CHANGE
   Canonical skin for all CMB content pages (guides, how-tos, FAQs, long tails)
*/

.cmb-v14.cmb-skin-cmb-article {
  background: transparent;
}

.cmb-skin-cmb-article__inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 32px 20px 40px;
}

.cmb-skin-cmb-article__card {
  background: #04224b; /* same top blue, no fade */
  border-radius: 18px;
  padding: 32px 24px 40px;
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.55);
}

/* Headings */
.cmb-skin-cmb-article h1,
.cmb-skin-cmb-article h2,
.cmb-skin-cmb-article h3 {
  color: #f9fbff;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.cmb-skin-cmb-article h1 {
  font-size: 1.9rem;
  margin-bottom: 0.75rem;
}

.cmb-skin-cmb-article h2 {
  font-size: 1.35rem;
  margin-top: 2.2rem;
  margin-bottom: 0.6rem;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  padding-bottom: 0.35rem;
}

.cmb-skin-cmb-article h3 {
  font-size: 1.08rem;
  margin-top: 1.4rem;
  margin-bottom: 0.4rem;
}

/* Body text */
.cmb-skin-cmb-article p,
.cmb-skin-cmb-article li {
  color: #dde7ff;
  line-height: 1.65;
}

/* Links */
.cmb-skin-cmb-article a {
  color: #7fd1ff;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.cmb-skin-cmb-article a:hover {
  color: #b0e4ff;
}

/* Eyebrow + lede */
.cmb-article__eyebrow {
  text-transform: uppercase;
  font-size: 0.8rem;
  letter-spacing: 0.12em;
  color: #8aa4ff;
  margin-bottom: 0.4rem;
}

.cmb-article__lede {
  font-size: 0.98rem;
  margin-bottom: 0.75rem;
}

/* CTA row */
.cmb-article__cta-row {
  margin-top: 1.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

/* Buttons */
.cmb-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.55rem 1.1rem;
  border-radius: 999px;
  font-size: 0.9rem;
  font-weight: 600;
  border: 1px solid transparent;
  cursor: pointer;
  text-decoration: none;
}

.cmb-btn-primary {
  background: #3b82f6;
  border-color: #60a5fa;
  color: #f9fbff;
}

.cmb-btn-primary:hover {
  background: #2563eb;
}

.cmb-btn-ghost {
  background: transparent;
  border-color: rgba(148, 163, 184, 0.8);
  color: #e5edff;
}

.cmb-btn-ghost:hover {
  background: rgba(15, 23, 42, 0.6);
}

/* Tool pills */
.cmb-tool-strip {
  margin-top: 1.25rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.cmb-tool-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.35rem 0.9rem;
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 600;
  border: 1px solid rgba(148, 163, 184, 0.85);
  color: #dbe7ff;
  background: rgba(15, 23, 42, 0.7);
  text-decoration: none;
}

.cmb-tool-pill:hover {
  background: rgba(37, 99, 235, 0.9);
  border-color: #60a5fa;
  color: #f9fbff;
}

/* “Next steps” section divider */
.cmb-section--next-steps {
  margin-top: 2.5rem;
  border-top: 1px dashed rgba(148, 163, 184, 0.4);
  padding-top: 1.6rem;
}

/* Mobile tweaks */
@media (max-width: 640px) {
  .cmb-skin-cmb-article__card {
    padding: 24px 18px 28px;
    border-radius: 14px;
  }

  .cmb-article__cta-row {
    flex-direction: column;
    align-items: stretch;
  }
}
/* ================================
   CMB GLOBAL V14 PAGE SKIN
   - Bright headings + text
   - Hide duplicate page title
   - Applies to any page that uses .cmb-v14 wrapper
   ================================ */

/* 1) Bright headings inside our wrapper */
.page .entry-content .cmb-v14 h1,
.page .entry-content .cmb-v14 h2,
.page .entry-content .cmb-v14 h3,
.page .entry-content .cmb-v14 h4 {
  color: #f9fbff !important;  /* bright white/blue */
  font-weight: 700;
}

/* 2) Brighten body text inside our wrapper */
.page .entry-content .cmb-v14 p,
.page .entry-content .cmb-v14 li {
  color: #ecf2ff !important;
  line-height: 1.6;
}

/* 3) Optional: breadcrumb / small labels in a softer blue */
.page .entry-content .cmb-v14 .cmb-kicker,
.page .entry-content .cmb-v14 small {
  color: #c7d6ff !important;
}

/* 4) Kill the stray page title that bleeds above the content */
.page .entry-title {
  display: none;
}
/* ================================
   CMB GLOBAL V14 PAGE SKIN
   - Bright headings + text
   - Hide duplicate page title
   - Applies to any page that uses .cmb-v14 wrapper
   ================================ */

/* 1) Bright headings inside our wrapper */
.page .entry-content .cmb-v14 h1,
.page .entry-content .cmb-v14 h2,
.page .entry-content .cmb-v14 h3,
.page .entry-content .cmb-v14 h4 {
  color: #f9fbff !important;  /* bright white/blue */
  font-weight: 700;
}

/* 2) Brighten body text inside our wrapper */
.page .entry-content .cmb-v14 p,
.page .entry-content .cmb-v14 li {
  color: #ecf2ff !important;
  line-height: 1.6;
}

/* 3) Optional: breadcrumb / small labels in a softer blue */
.page .entry-content .cmb-v14 .cmb-kicker,
.page .entry-content .cmb-v14 small {
  color: #c7d6ff !important;
}

/* 4) Kill the stray page title that bleeds above the content */
.page .entry-title {
  display: none;
}
/* CMB v14 – Slimmer article container */
.cmb-v14-article-page {
  max-width: 860px;      /* pull the content in a bit */
  margin: 2.5rem auto;   /* center it with top/bottom breathing room */
}

/* Slightly tighter padding inside the blue box */
.cmb-v14-article-page .cmb-v14-article-inner {
  padding-left: 1.75rem;
  padding-right: 1.75rem;
}

/* Make sure it still looks good on small screens */
@media (max-width: 900px) {
  .cmb-v14-article-page {
    max-width: 95vw;
    margin: 1.5rem auto;
  }
}
/* CMB v14 – global slim content box */
.cmb-v14,
.cmb-v14-article-page,
.cmb-v14-content,
.cmb-v14-content-inner {
  box-sizing: border-box;
}

/* main article box width */
.cmb-v14-content,
.cmb-v14-content-inner,
.cmb-v14-article-page {
  max-width: 860px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* keep decent padding inside */
.cmb-v14-content-inner,
.cmb-v14-article-inner {
  padding-left: 1.75rem !important;
  padding-right: 1.75rem !important;
}

/* mobile: let it breathe edge-to-edge a bit more */
@media (max-width: 900px) {
  .cmb-v14-content,
  .cmb-v14-content-inner,
  .cmb-v14-article-page {
    max-width: 95vw !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
.cmb-v14 a,
.cmb-v14 a:visited {
  color: #3aa7ff;  /* bright blue */
}

.cmb-v14 a:hover {
  color: #78c4ff;
}
/* --- Fix the white code boxes site-wide --- */
.cmb-v14 pre,
.cmb-v14 pre code,
.entry-content pre,
.entry-content code {
  background: #020617 !important;      /* dark navy */
  color: #e5e7eb !important;           /* light text */
  border-radius: 10px !important;
  border: 1px solid #1e293b !important;
  padding: 12px 16px !important;
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace !important;
  white-space: pre-wrap !important;
}

/* --- Pill buttons (those gradient blobs) --- */
/* Most themes use wp-block-button__link for those */
.cmb-v14 .wp-block-button__link,
.entry-content .wp-block-button__link {
  background: #22c55e !important;      /* solid green – change if you want */
  color: #020617 !important;           /* dark text */
  border-radius: 999px !important;     /* full pill */
  padding: 10px 20px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

/* Optional: make calculator links stand out even if they’re plain links */
.cmb-v14 a[href*="ev-calculator"],
.cmb-v14 a[href*="hold-overround"],
.cmb-v14 a[href*="kelly-stake-sizer"],
.cmb-v14 a[href*="parlay-ev-clv"] {
  color: #38bdf8 !important;           /* bright blue links */
  text-decoration: underline !important;
  font-weight: 600;
}
/* Force cmb-v14 wrapper background to be top->bottom, independent of theme */
.cmb-v14{
  background: linear-gradient(180deg, rgba(10,18,34,0.92), rgba(6,10,18,0.92));
}
/* CMB wrapper: create a slightly lighter panel than the site background */
.cmb-v14{
  background: rgba(20, 36, 64, 0.92);  /* lighter blue panel */
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 18px;
}

/* Optional: add subtle separation shadow */
.cmb-v14{
  box-shadow: 0 10px 30px rgba(0,0,0,0.35);
}
/* CMB wrapper should control the layout, not Astra containers */
.page .site-content .ast-container,
.single .site-content .ast-container{
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Ensure wrapper has breathing room even if theme padding is zero */
.cmb-v14{
  padding-left: 16px;
  padding-right: 16px;
}
/* =========================================================
   CMB v14 — BRIGHT OCEAN BORDER POP (NO LINK CHANGES)
   Paste at the BOTTOM of Additional CSS.
   ========================================================= */

/* Do NOT set link colors here. Leave your baby-blue links as-is. */

.cmb-v14 .cmb-card,
.cmb-v14 .cmb-callout,
.cmb-v14 .cmb-embed,
.cmb-v14 blockquote{
  /* brighter border that pops */
  border: 1px solid rgba(68,225,255,0.78) !important;

  /* “border glue” glow (subtle but visible) */
  box-shadow:
    0 0 0 1px rgba(68,225,255,0.22),
    0 0 18px rgba(68,225,255,0.18),
    0 10px 28px rgba(0,0,0,0.30) !important;

  /* optional: slightly lighter card surface so it’s not navy-on-navy */
  background: rgba(55,120,230,0.16) !important;
}

/* optional: slightly stronger pop on hover (safe) */
.cmb-v14 .cmb-card:hover,
.cmb-v14 .cmb-callout:hover,
.cmb-v14 .cmb-embed:hover{
  border-color: rgba(68,225,255,0.78) !important;
  box-shadow:
    0 0 0 1px rgba(68,225,255,0.28),
    0 0 22px rgba(68,225,255,0.24),
    0 12px 30px rgba(0,0,0,0.34) !important;
}
/* CMB v14 — tiny border glow (no link changes) */
.cmb-v14 .cmb-card,
.cmb-v14 .cmb-callout,
.cmb-v14 .cmb-embed,
.cmb-v14 blockquote{
  border: 1px solid rgba(68,225,255,0.90) !important;
  box-shadow:
    0 0 0 1px rgba(68,225,255,0.12),
    0 0 6px rgba(68,225,255,0.10) !important; /* tiny glow */
}
/* CMB: readable formula blocks (fix stacked/overlap) */
.cmb-v14 .cmb-pre{
  margin: 10px 0 14px !important;
  padding: 12px 14px !important;
  border-radius: 12px !important;
  overflow-x: auto !important;
  white-space: pre-wrap !important;
  word-break: break-word !important;
  line-height: 1.45 !important;
}
.cmb-v14 .cmb-pre code{
  display: block !important;
  font-size: 14.5px !important;
  line-height: 1.45 !important;
}
