/* ── RTL Localization Adjustments (Persian) ────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@300;400;500;700;850&display=swap');

:root {
    --mt-font-sans: 'Vazirmatn', system-ui, -apple-system, sans-serif;
    --mt-font-display: 'Vazirmatn', system-ui, -apple-system, sans-serif;
}

body {
    text-align: right;
    direction: rtl;
}

/* Navbar adjustments */
.mt-dropdown-menu {
    right: auto;
    left: 0;
}

.mt-nav-dropdown-menu {
    left: auto;
    right: 0;
    text-align: right;
}

.mt-brand-dot {
    margin-left: 0;
    margin-right: 4px;
}

.rtl-flip {
    transform: scaleX(-1);
    display: inline-block;
}

/* Grid & Card margins/paddings overrides if any */
.mt-card-glow {
    right: auto;
    left: -50px;
}

/* RTL Dashboard Overrides */
.db-step-line-active {
    right: 5%;
    left: auto;
}

.db-alert-neutral,
.db-alert-info,
.db-alert-danger,
.db-alert-warning,
.db-alert-success {
    border-left: 1px solid var(--mt-border) !important;
    border-right: 3px solid #71717a !important;
}

.db-info-box {
    border-left: 1px solid var(--mt-border) !important;
    border-right: 3px solid #71717a !important;
}

.db-credentials-box {
    border-left: 1px solid var(--mt-border) !important;
    border-right: 3px solid #52525b !important;
}

.mt-user-dropdown-menu {
    right: auto;
    left: 0;
    text-align: right;
}

/* 3D Visual Mockup RTL Overrides */
.visual-mockup {
    transform: rotateY(9deg) rotateX(6deg) translateZ(0);
    animation: float3dRtl 8s ease-in-out infinite;
}

.product-grid.inverse .visual-mockup {
    transform: rotateY(-9deg) rotateX(6deg) translateZ(0);
    animation: float3dRtlInverse 8s ease-in-out infinite;
}

.visual-3d-orbit-top-right {
    right: auto;
    left: -14px;
}

.visual-3d-orbit-bottom-left {
    left: auto;
    right: -14px;
}

/* RTL Blog & Article Adjustments */
.mt-post-excerpt {
    border-left: none !important;
    border-right: 4px solid var(--mt-primary) !important;
    border-radius: 8px 0 0 8px !important;
}

.mt-spotlight-tag {
    left: auto !important;
    right: 1rem !important;
}

.mt-card-badge {
    right: auto !important;
    left: 0.85rem !important;
}

.mt-toc-item,
.mt-toc-subitem {
    margin: 0 !important;
    padding: 0 !important;
}

/* ── RTL Icon Spacing Rules (Fixed & Specific) ── */

/* Icons preceding Persian text (in headings, cards, badges, buttons, paragraphs) */
[dir="rtl"] h1 i,
[dir="rtl"] h2 i,
[dir="rtl"] h3 i,
[dir="rtl"] h4 i,
[dir="rtl"] h5 i,
[dir="rtl"] h6 i,
[dir="rtl"] .glass-card h1 i,
[dir="rtl"] .glass-card h2 i,
[dir="rtl"] .glass-card h3 i,
[dir="rtl"] .glass-card h4 i,
[dir="rtl"] .glass-card h5 i,
[dir="rtl"] .glass-card h6 i,
[dir="rtl"] i.ms-1,
[dir="rtl"] i.ms-2,
[dir="rtl"] i.ms-3,
[dir="rtl"] i.me-1,
[dir="rtl"] i.me-2,
[dir="rtl"] i.me-3 {
    margin-left: 0.65rem !important;
    margin-right: 0 !important;
    display: inline-block !important;
    vertical-align: middle !important;
}

/* Badges with leading icons */
[dir="rtl"] .badge > i,
[dir="rtl"] .mt-cat-badge > i,
[dir="rtl"] .mt-reading-badge > i {
    margin-left: 0.45rem !important;
    margin-right: 0 !important;
}

/* Buttons and links with leading icons */
[dir="rtl"] .btn:not(.mt-icon-btn):not(.mt-share-btn):not(.back-to-top-btn) > i:first-child,
[dir="rtl"] .mt-back-link > i:first-child {
    margin-left: 0.55rem !important;
    margin-right: 0 !important;
}

/* Trailing arrow icons (following text in buttons or card links) */
[dir="rtl"] .btn:not(.mt-icon-btn):not(.mt-share-btn):not(.back-to-top-btn) > i.fa-arrow-left,
[dir="rtl"] .btn:not(.mt-icon-btn):not(.mt-share-btn):not(.back-to-top-btn) > i.fa-arrow-right,
[dir="rtl"] .mt-card-link > i,
[dir="rtl"] a > i.fa-arrow-left:last-child,
[dir="rtl"] a > i.fa-arrow-right:last-child {
    margin-right: 0.55rem !important;
    margin-left: 0 !important;
}

/* Breadcrumbs in RTL */
[dir="rtl"] .breadcrumb-item {
    white-space: normal;
    overflow: visible;
}
[dir="rtl"] .breadcrumb-item + .breadcrumb-item::before {
    float: right !important;
    padding-right: 0 !important;
    padding-left: var(--bs-breadcrumb-item-padding-x, 0.5rem) !important;
}
[dir="rtl"] .breadcrumb-item i {
    margin-left: 0.45rem !important;
    margin-right: 0 !important;
}

/* Trailing navigation chevrons in list cards */
[dir="rtl"] .d-flex > i.fa-chevron-left:last-child,
[dir="rtl"] .d-flex > i.fa-chevron-right:last-child {
    margin-right: 0.55rem !important;
    margin-left: 0 !important;
}

/* Flex gap overrides in RTL */
[dir="rtl"] .gap-1 { gap: 0.5rem !important; }
[dir="rtl"] .gap-2 { gap: 0.75rem !important; }
[dir="rtl"] .gap-3 { gap: 1.25rem !important; }

/* General non-icon margin utilities in RTL (only apply to elements that are NOT <i>) */
[dir="rtl"] :not(i).me-1 { margin-right: 0 !important; margin-left: 0.45rem !important; }
[dir="rtl"] :not(i).me-2 { margin-right: 0 !important; margin-left: 0.7rem !important; }
[dir="rtl"] :not(i).me-3 { margin-right: 0 !important; margin-left: 1.1rem !important; }
[dir="rtl"] :not(i).ms-1 { margin-left: 0 !important; margin-right: 0.45rem !important; }
[dir="rtl"] :not(i).ms-2 { margin-left: 0 !important; margin-right: 0.7rem !important; }
[dir="rtl"] :not(i).ms-3 { margin-left: 0 !important; margin-right: 1.1rem !important; }

/* RTL Icon Flip & Orientation */
.rtl-flip,
[dir="rtl"] .rtl-flip {
    transform: scaleX(-1) !important;
    display: inline-block !important;
}

/* RTL Persian Blog Typography & Card Tweaks */
[dir="rtl"] .mt-blog-title {
    font-size: clamp(1.4rem, 2.5vw, 1.95rem) !important;
    line-height: 1.4 !important;
}

[dir="rtl"] .mt-blog-subtitle {
    font-size: 0.88rem !important;
    line-height: 1.7 !important;
}

[dir="rtl"] .mt-post-title {
    font-size: clamp(1.25rem, 2vw, 1.65rem) !important;
    line-height: 1.45 !important;
}

[dir="rtl"] .mt-post-body {
    font-size: 0.88rem !important;
    line-height: 1.9 !important;
}

[dir="rtl"] .mt-post-body p {
    font-size: 0.88rem !important;
    line-height: 1.9 !important;
    margin-bottom: 1.1rem !important;
}

[dir="rtl"] .mt-post-body h2 {
    font-size: 1.2rem !important;
    line-height: 1.4 !important;
}

[dir="rtl"] .mt-post-body h3 {
    font-size: 1.05rem !important;
    line-height: 1.4 !important;
}

[dir="rtl"] .mt-post-excerpt {
    font-size: 0.88rem !important;
    line-height: 1.8 !important;
    font-style: normal !important;
}

[dir="rtl"] .mt-card-title {
    font-size: 0.95rem !important;
    line-height: 1.5 !important;
}

[dir="rtl"] .mt-card-desc {
    font-size: 0.8rem !important;
    line-height: 1.65 !important;
}

[dir="rtl"] .mt-spotlight-title {
    font-size: clamp(1.15rem, 1.8vw, 1.45rem) !important;
    line-height: 1.45 !important;
}

[dir="rtl"] .mt-spotlight-desc {
    font-size: 0.84rem !important;
    line-height: 1.7 !important;
}

[dir="rtl"] .mt-reading-badge i,
[dir="rtl"] .mt-meta-date i,
[dir="rtl"] .mt-post-meta i {
    margin-right: 0 !important;
    margin-left: 0.35rem !important;
}




/* ── Icon-Only Buttons Centering & Zero Shift Guarantee ── */
.mt-icon-btn,
.mt-share-btn,
.back-to-top-btn,
.mt-theme-toggle,
.mt-user-dropdown-toggle,
.btn-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    cursor: pointer !important;
    transform: none !important;
}

.mt-icon-btn i,
.mt-share-btn i,
.back-to-top-btn i,
.mt-theme-toggle i,
.mt-user-dropdown-toggle i,
.btn-icon i,
[dir="rtl"] .mt-icon-btn i,
[dir="rtl"] .mt-share-btn i,
[dir="rtl"] .back-to-top-btn i,
[dir="rtl"] .mt-theme-toggle i,
[dir="rtl"] .mt-user-dropdown-toggle i,
[dir="rtl"] .btn-icon i {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    vertical-align: middle !important;
    transform: none !important;
}

/* ── RTL Breadcrumb Divider & Item Alignment Fix ───────────────────────── */
[dir="rtl"] .breadcrumb-item + .breadcrumb-item,
body[dir="rtl"] .breadcrumb-item + .breadcrumb-item,
.rtl .breadcrumb-item + .breadcrumb-item {
    padding-right: var(--bs-breadcrumb-item-padding-x, 0.5rem) !important;
    padding-left: 0 !important;
}

[dir="rtl"] .breadcrumb-item + .breadcrumb-item::before,
body[dir="rtl"] .breadcrumb-item + .breadcrumb-item::before,
.rtl .breadcrumb-item + .breadcrumb-item::before {
    float: right !important;
    padding-right: 0 !important;
    padding-left: var(--bs-breadcrumb-item-padding-x, 0.5rem) !important;
}
