/* Self-hosted Vazirmatn — used by both website and PDF */
@font-face {
    font-family: "Vazirmatn";
    src: url("../fonts/Vazirmatn-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Vazirmatn";
    src: url("../fonts/Vazirmatn-Medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Vazirmatn";
    src: url("../fonts/Vazirmatn-SemiBold.ttf") format("truetype");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Vazirmatn";
    src: url("../fonts/Vazirmatn-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Vazirmatn";
    src: url("../fonts/Vazirmatn-ExtraBold.ttf") format("truetype");
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Vazirmatn";
    src: url("../fonts/Vazirmatn-Black.ttf") format("truetype");
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

html {
    scroll-behavior: smooth;
    font-family: "Vazirmatn", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Tahoma, Arial, sans-serif;
    font-feature-settings: "ss01";
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

body {
    font-family: "Vazirmatn", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Tahoma, Arial, sans-serif;
    font-feature-settings: "ss01";
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

button,
input,
textarea,
select {
    font: inherit;
    font-feature-settings: "ss01";
}

textarea {
    resize: vertical;
}

.ltr-input {
    direction: ltr;
    unicode-bidi: plaintext;
    font-feature-settings: "ss01";
}

::selection {
    background: rgba(35, 178, 109, .22);
}

::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

::-webkit-scrollbar-thumb {
    background: rgba(17, 19, 21, .18);
    border-radius: 999px;
}

::-webkit-scrollbar-track {
    background: transparent;
}

/* Safety fallback for custom Tailwind tokens */
.bg-ink {
    background-color: #0b0b0c !important;
}

.text-ink {
    color: #0b0b0c !important;
}

.text-muted {
    color: #7a746d !important;
}

.text-fitness-orange {
    color: #f97316 !important;
}

.shadow-glass {
    box-shadow: 0 28px 90px rgba(15, 23, 42, 0.10) !important;
}

.shadow-soft {
    box-shadow: 0 18px 50px rgba(15, 23, 42, 0.06) !important;
}

.shadow-hard {
    box-shadow: 0 22px 55px rgba(0, 0, 0, 0.22) !important;
}

.hover\:bg-ink:hover {
    background-color: #0b0b0c !important;
}

.hover\:text-white:hover {
    color: #ffffff !important;
}

.hover\:bg-red-500:hover {
    background-color: #ef4444 !important;
}

.hover\:text-white:hover svg,
.hover\:bg-ink:hover svg,
.hover\:bg-red-500:hover svg {
    color: #ffffff !important;
    stroke: currentColor !important;
}

/* Custom size fallbacks */
.min-h-13 {
    min-height: 3.25rem !important;
}

.h-13 {
    height: 3.25rem !important;
}

.w-13 {
    width: 3.25rem !important;
}

.size-13 {
    width: 3.25rem !important;
    height: 3.25rem !important;
}

:root {
    color-scheme: light;
}

::-webkit-scrollbar {
    width: 9px;
    height: 9px;
}

::-webkit-scrollbar-track {
    background: transparent;
}

::-webkit-scrollbar-thumb {
    border: 2px solid transparent;
    border-radius: 999px;
    background: rgba(71, 85, 105, 0.28);
    background-clip: padding-box;
}

::-webkit-scrollbar-thumb:hover {
    background: rgba(71, 85, 105, 0.45);
    background-clip: padding-box;
}

/* BWF_REPORT_MOBILE_GUARD_START */

.report-mobile-guard {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: hidden;
}

.report-mobile-guard > *,
.report-mobile-guard section,
.report-mobile-guard article,
.report-mobile-guard aside {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.report-mobile-guard .grid,
.report-mobile-guard .flex {
    min-width: 0;
    max-width: 100%;
}

.report-mobile-guard .grid > *,
.report-mobile-guard .flex > * {
    min-width: 0;
}

.report-mobile-guard .overflow-x-auto,
.report-mobile-guard .overflow-auto {
    width: 100%;
    max-width: 100%;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

/*
?????????? ????? ????? ?? ?????? ???????
???? ? ?????????? ????? ??? ???????.
*/
.report-mobile-guard .overflow-y-auto {
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

.report-mobile-guard img,
.report-mobile-guard svg,
.report-mobile-guard canvas {
    max-width: 100%;
}

.report-mobile-guard h1,
.report-mobile-guard h2,
.report-mobile-guard h3,
.report-mobile-guard h4,
.report-mobile-guard p,
.report-mobile-guard span,
.report-mobile-guard strong,
.report-mobile-guard b {
    overflow-wrap: anywhere;
}

@media (max-width: 639px) {
    .report-mobile-guard {
        width: 100%;
        max-width: 100vw;
        overflow-x: hidden;
    }

    /*
    ???? ???? ?????? ?? ?????? ???????? ???????
    ???? ????? ???? ??????.
    */
    .report-mobile-guard
    [class*="grid-cols-[84px_minmax(0,1fr)_42px]"] {
        grid-template-columns:
            62px
            minmax(0, 1fr)
            36px !important;

        gap: 0.5rem !important;
    }

    /*
    ?????? ????? ? ???? ???? ???? ????
    ?????? ???? ????? ?????? ?? ??? ????????.
    */
    .report-mobile-guard .overflow-x-auto,
    .report-mobile-guard .overflow-auto {
        display: block;
        overflow-x: auto !important;
    }

    .report-mobile-guard table {
        max-width: none;
    }
}

/* BWF_REPORT_MOBILE_GUARD_END */
