:root {
    color-scheme: light;

    --besanj-color-brand-logo-blue: #004aff;
    --besanj-color-brand-50: #eef3ff;
    --besanj-color-brand-100: #dce6ff;
    --besanj-color-brand-200: #b8ccff;
    --besanj-color-brand-300: #8bafff;
    --besanj-color-brand-400: #5f89ff;
    --besanj-color-brand-500: #346eff;
    --besanj-color-brand-600: #2f63e9;
    --besanj-color-brand-700: #244fbf;
    --besanj-color-brand-800: #1e429f;
    --besanj-color-brand-900: #18357f;

    --besanj-color-green-logo: #19c246;
    --besanj-color-green-50: #eaf9ef;
    --besanj-color-green-100: #cef3da;
    --besanj-color-green-500: #19c246;
    --besanj-color-green-700: #0d7d3d;
    --besanj-color-green-800: #096331;

    --besanj-color-neutral-0: #ffffff;
    --besanj-color-neutral-25: #fcfcfd;
    --besanj-color-neutral-50: #f7f8fa;
    --besanj-color-neutral-100: #f1f3f6;
    --besanj-color-neutral-200: #e3e6ec;
    --besanj-color-neutral-300: #cdd2da;
    --besanj-color-neutral-400: #98a1af;
    --besanj-color-neutral-500: #667085;
    --besanj-color-neutral-600: #515b6b;
    --besanj-color-neutral-700: #3a4351;
    --besanj-color-neutral-800: #29313d;
    --besanj-color-neutral-900: #1f2430;

    --besanj-color-warning-50: #fff7e0;
    --besanj-color-warning-200: #f5d088;
    --besanj-color-warning-700: #8a5a00;
    --besanj-color-danger-50: #fdecea;
    --besanj-color-danger-200: #f6b7b2;
    --besanj-color-danger-600: #c43228;
    --besanj-color-danger-700: #a9231b;

    --besanj-color-bg-canvas: var(--besanj-color-neutral-50);
    --besanj-color-bg-surface: var(--besanj-color-neutral-0);
    --besanj-color-bg-subtle: var(--besanj-color-neutral-100);
    --besanj-color-bg-selected: var(--besanj-color-brand-50);
    --besanj-color-border: var(--besanj-color-neutral-200);
    --besanj-color-border-strong: var(--besanj-color-neutral-300);
    --besanj-color-text: var(--besanj-color-neutral-900);
    --besanj-color-text-secondary: var(--besanj-color-neutral-600);
    --besanj-color-text-muted: var(--besanj-color-neutral-500);
    --besanj-color-text-disabled: var(--besanj-color-neutral-400);
    --besanj-color-interactive: var(--besanj-color-brand-600);
    --besanj-color-interactive-hover: var(--besanj-color-brand-700);
    --besanj-color-interactive-text: var(--besanj-color-brand-700);
    --besanj-color-focus: var(--besanj-color-brand-500);
    --besanj-color-success-bg: var(--besanj-color-green-50);
    --besanj-color-success-border: var(--besanj-color-green-100);
    --besanj-color-success-text: var(--besanj-color-green-800);
    --besanj-color-warning-bg: var(--besanj-color-warning-50);
    --besanj-color-warning-border: var(--besanj-color-warning-200);
    --besanj-color-warning-text: var(--besanj-color-warning-700);
    --besanj-color-danger-bg: var(--besanj-color-danger-50);
    --besanj-color-danger-border: var(--besanj-color-danger-200);
    --besanj-color-danger-text: var(--besanj-color-danger-700);

    --besanj-font-sans: 'YekanBakh', Tahoma, Arial, sans-serif;
    --besanj-font-fanum: 'YekanBakhFaNum', 'YekanBakh', Tahoma, Arial, sans-serif;
    --besanj-font-latin: 'Inter', 'YekanBakh', Tahoma, Arial, sans-serif;

    --besanj-font-size-100: 0.75rem;
    --besanj-font-size-200: 0.875rem;
    --besanj-font-size-300: 1rem;
    --besanj-font-size-400: 1.125rem;
    --besanj-font-size-500: 1.375rem;
    --besanj-font-size-600: 1.75rem;
    --besanj-font-size-700: 2.25rem;

    --besanj-line-height-tight: 1.35;
    --besanj-line-height-body: 1.75;
    --besanj-line-height-relaxed: 1.9;

    --besanj-font-weight-regular: 400;
    --besanj-font-weight-medium: 500;
    --besanj-font-weight-semibold: 600;
    --besanj-font-weight-bold: 700;
    --besanj-font-weight-extrabold: 800;

    --besanj-space-0: 0;
    --besanj-space-1: 0.25rem;
    --besanj-space-2: 0.5rem;
    --besanj-space-3: 0.75rem;
    --besanj-space-4: 1rem;
    --besanj-space-5: 1.25rem;
    --besanj-space-6: 1.5rem;
    --besanj-space-8: 2rem;
    --besanj-space-10: 2.5rem;
    --besanj-space-12: 3rem;
    --besanj-space-16: 4rem;

    --besanj-radius-sm: 0.375rem;
    --besanj-radius-md: 0.5rem;
    --besanj-radius-lg: 0.75rem;
    --besanj-radius-xl: 1rem;
    --besanj-radius-pill: 999px;

    --besanj-shadow-xs: 0 1px 2px rgba(31, 36, 48, 0.05);
    --besanj-shadow-sm: 0 2px 8px rgba(31, 36, 48, 0.08);
    --besanj-shadow-md: 0 8px 24px rgba(31, 36, 48, 0.12);
    --besanj-shadow-lg: 0 20px 60px rgba(31, 36, 48, 0.18);

    --besanj-control-height-compact: 2.5rem;
    --besanj-control-height-comfortable: 2.75rem;
    --besanj-control-height-large: 3rem;
    --besanj-control-padding-inline: 0.875rem;

    --besanj-container-storefront: 80rem;
    --besanj-container-form: 60rem;
    --besanj-sidebar-width: 15.5rem;
    --besanj-drawer-width: 52.5rem;

    --besanj-motion-fast: 120ms;
    --besanj-motion-normal: 180ms;
    --besanj-motion-slow: 240ms;
    --besanj-ease-standard: cubic-bezier(0.2, 0, 0, 1);

    --besanj-z-sticky: 100;
    --besanj-z-dropdown: 400;
    --besanj-z-overlay: 800;
    --besanj-z-modal: 900;
    --besanj-z-toast: 1000;
}

.webara-ltr {
    direction: ltr;
    unicode-bidi: isolate;
    display: inline-block;
    font-family: var(--besanj-font-latin);
    font-variant-numeric: tabular-nums;
}

.webara-numeric {
    font-family: var(--besanj-font-fanum);
    font-variant-numeric: tabular-nums;
}

.webara-focus-ring:focus-visible {
    outline: 2px solid var(--besanj-color-focus);
    outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}
