/*
 Theme Name:   Akademia Brokera
 Theme URI:    https://elementor.com/hello-theme/
 Description:  ProjectAB hello elementor theme.
 Author:       saintDEV
 Author URI:   https://akademiabrokera.pl
 Template:     hello-elementor
 Version:      1.1.0
 Text Domain:  hello-elementor-child
*/


/* ============================================================
   AB TOKENS — globalne zmienne CSS
   ============================================================
   Używane wszędzie w landing.css i można ich też używać
   w Elementor Site Settings Custom CSS.
*/
:root {
  /* Brand */
  --ab-blue: #1351d8;
  --ab-blue-dark: #0f42b5;
  --ab-blue-hover: #164ae0;
  --ab-blue-10: rgba(19, 81, 216, 0.1);
  --ab-blue-08: rgba(19, 81, 216, 0.08);
  --ab-blue-06: rgba(19, 81, 216, 0.06);
  --ab-blue-04: rgba(19, 81, 216, 0.04);
  --ab-blue-03: rgba(19, 81, 216, 0.03);
  --ab-blue-30: rgba(19, 81, 216, 0.3);

  /* Neutrals */
  --ab-ink: #0c1222;
  --ab-ink-soft: #1a1f2e;
  --ab-fog: #f8f9fb;
  --ab-line: #e5e7eb;
  --ab-gray: #6b7280;
  --ab-gray-2: #9ca3af;
  --ab-gray-3: #b0b5be;
  --ab-white: #ffffff;

  /* Typography — Archia z Elementor Custom Fonts, Fira Sans z Google Fonts */
  --ab-font-display: 'Archia', 'Fira Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --ab-font-body: 'Fira Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  /* Motion */
  --ab-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ab-ease-out-soft: cubic-bezier(0.22, 1, 0.36, 1);
  --ab-ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --ab-dur-fast: 180ms;
  --ab-dur-base: 280ms;
  --ab-dur-slow: 420ms;

  /* Shadows */
  --ab-shadow-sm: 0 2px 8px rgba(12, 18, 34, 0.06);
  --ab-shadow-md: 0 8px 24px rgba(12, 18, 34, 0.08);
  --ab-shadow-lg: 0 20px 48px rgba(12, 18, 34, 0.12);
  --ab-shadow-blue: 0 8px 24px rgba(19, 81, 216, 0.18);

  /* Radii */
  --ab-radius-sm: 6px;
  --ab-radius-md: 10px;
  --ab-radius-lg: 16px;
  --ab-radius-pill: 999px;

  /* Z-index */
  --ab-z-header: 99999;
  --ab-z-modal-shade: 100000;
  --ab-z-modal: 100001;
  --ab-z-toast: 100100;
}


/* ============================================================
   GLOBALNE — scoped do elementów AB (nie dotyka WooCommerce)
   ============================================================ */

/* Focus-visible outline dla naszych elementów */
[class*="ab-"] a:focus-visible,
[class*="ab-"] button:focus-visible,
[class*="ab-"] [role="button"]:focus-visible,
[class*="ab-"] [tabindex]:focus-visible {
  outline: 2px solid var(--ab-blue);
  outline-offset: 3px;
  border-radius: var(--ab-radius-sm);
}

[class*="ab-"] a:focus:not(:focus-visible),
[class*="ab-"] button:focus:not(:focus-visible) {
  outline: none;
}

/* Screen-reader only helper */
.ab-sr-only {
  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;
}

/* Tabular numerals dla liczników */
.ab-numbers-val,
.ab-stat-number,
.ab-cta-stat-val,
.ab-feat-num,
.ab-mp-num,
.ab-path-num,
.ab-tcard-num {
  font-variant-numeric: tabular-nums;
  font-feature-settings: 'tnum' 1;
}


/* ============================================================
   REDUCED MOTION — globalny fallback
   ============================================================ */
@media (prefers-reduced-motion: reduce) {
  [class*="ab-"] *,
  [class*="ab-"] *::before,
  [class*="ab-"] *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }

  [class*="ab-"] .ab-step-card,
  #ab-cta, #ab-tr,
  .ab-steps-cta, .ab-steps-trust,
  .ab-numbers-cell, .ab-stat-card, .ab-stat-card-wide,
  .ab-guest-card, .ab-mc, .ab-path-card,
  #ab-price-1, #ab-price-2 {
    opacity: 1 !important;
    transform: none !important;
  }
}


/* ============================================================
   HELLO ELEMENTOR — neutralizacja paddingów header/footer
   ============================================================ */
.elementor-location-header,
.elementor-location-footer {
  padding: 0 !important;
  min-height: 0 !important;
}
