/**
 * OddsEkspert Design Tokens
 *
 * Brand colors and shared CSS custom properties.
 * Always loaded on all frontend pages via AssetLoader.
 */

:root {
    /* Brand Primary (dark green) */
    --oe-color-primary:          #036133;
    --oe-color-primary-dark:     #024a26;
    --oe-color-primary-light:    #047857;
    --oe-color-primary-lighter:  #059669;
    --oe-color-primary-tint:     #f0f7f3;

    /* Brand Secondary (lime) */
    --oe-color-secondary:        #D6DF21;
    --oe-color-secondary-dark:   #bcc41d;

    /* Text */
    --oe-color-text:             #555B57;
    --oe-color-text-dark:        #1f2937;
    --oe-color-text-light:       #6b7280;
    --oe-color-text-muted:       #9ca3af;

    /* Backgrounds */
    --oe-color-bg:               #F9FAF7;
    --oe-color-bg-alt:           #f3f4f6;
    --oe-color-white:            #FFFFFF;
    --oe-color-black:            #000000;

    /* Functional (not brand - kept independent) */
    --oe-color-success:          #28a745;
    --oe-color-success-light:    #d4edda;
    --oe-color-error:            #dc2626;
    --oe-color-error-light:      #f8d7da;
    --oe-color-warning:          #f59e0b;

    /* Borders */
    --oe-color-border:           #e5e7eb;
    --oe-color-border-light:     #f3f4f6;

    /* Third-party brand */
    --oe-color-telegram:         #0088cc;

    /* Focus */
    --oe-color-focus:            #036133;
    --oe-color-focus-ring:       rgba(3, 97, 51, 0.2);

    /* Primary alpha variants */
    --oe-color-primary-a5:       rgba(3, 97, 51, 0.05);
    --oe-color-primary-a8:       rgba(3, 97, 51, 0.08);
    --oe-color-primary-a10:      rgba(3, 97, 51, 0.1);
    --oe-color-primary-a15:      rgba(3, 97, 51, 0.15);
    --oe-color-primary-a30:      rgba(3, 97, 51, 0.3);
    --oe-color-primary-a40:      rgba(3, 97, 51, 0.4);

    /* Shadows */
    --oe-shadow-sm:              0 2px 4px rgba(0, 0, 0, 0.1);
    --oe-shadow-md:              0 2px 8px rgba(0, 0, 0, 0.08);
    --oe-shadow-lg:              0 4px 16px rgba(0, 0, 0, 0.1);

    /* Border radius */
    --oe-radius-sm:              4px;
    --oe-radius-md:              8px;
    --oe-radius-lg:              12px;
    --oe-radius-xl:              35px;
    --oe-radius-full:            50%;

    /* Casino/purple brand */
    --oe-color-casino:           #7c3aed;
    --oe-color-casino-dark:      #6d28d9;
    --oe-color-casino-darker:    #5b21b6;
    --oe-color-casino-tint:      #f5f3ff;

    /* Tip creator blue UI */
    --oe-color-tip-bg:           #eff6ff;
    --oe-color-tip-border:       #bfdbfe;
    --oe-color-tip-border-hover: #93c5fd;
    --oe-color-tip-bg-hover:     #dbeafe;
    --oe-color-tip-text:         #1d4ed8;

    /* Extended functional colors */
    --oe-color-success-tint:     #f0fdf4;
    --oe-color-success-border:   #a7f3d0;
}

/*
 * Prevent horizontal scroll on mobile.
 * 'clip' on html avoids creating a scroll container (preserves position: sticky).
 * 'hidden' on body is the fallback for browsers that don't support 'clip'.
 */
html {
    overflow-x: clip;
}

body {
    overflow-x: hidden;
}

/* Match Count shortcode */
.oe-match-count {
    text-align: center;
    padding: 0.75em 0;
}

.oe-match-count__text {
    font-size: 1.0625rem;
    color: var(--oe-color-text-light);
}

.oe-match-count__number {
    font-weight: 700;
    color: var(--oe-color-primary);
    font-variant-numeric: tabular-nums;
}

/* Elementor theme overrides are in elementor-override.css (loaded conditionally) */

/* ============================================
   Global terms & conditions styling
   (betingelser_og_vilkaar ACF field)
   Always italic, links always brand green,
   overrides inline <span style="color:...">
   ============================================ */

.oe-promotion__terms,
.oe-provider__terms,
.oe-tip-detail__offer-terms,
.oe-top-bookmakers__terms,
.oe-promo-card__terms,
.oe-promo-panel__terms,
.oe-kampagne-page__terms-content,
.oe-profile__bm-card-terms {
    font-style: italic !important;
}

.oe-promotion__terms a,
.oe-provider__terms a,
.oe-tip-detail__offer-terms a,
.oe-top-bookmakers__terms a,
.oe-promo-card__terms a,
.oe-promo-panel__terms a,
.oe-kampagne-page__terms-content a,
.oe-profile__bm-card-terms a {
    color: var(--oe-color-primary) !important;
}

/* Override inline color on any descendant inside links (e.g. <a><span style="color:...">) */
.oe-promotion__terms a *,
.oe-provider__terms a *,
.oe-tip-detail__offer-terms a *,
.oe-top-bookmakers__terms a *,
.oe-promo-card__terms a *,
.oe-promo-panel__terms a *,
.oe-kampagne-page__terms-content a *,
.oe-profile__bm-card-terms a * {
    color: var(--oe-color-primary) !important;
}

/* Visually hidden but accessible to screen readers and search engines */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
