/* RTL Support for Hebrew and Arabic */

[dir="rtl"] {
    text-align: right !important;
    direction: rtl !important;
}

[dir="rtl"] * {
    text-align: right !important;
    direction: rtl !important;
}

[dir="rtl"] body,
[dir="rtl"] html {
    direction: rtl !important;
    text-align: right !important;
}

html[dir="rtl"] body,
html[dir="rtl"] {
    direction: rtl !important;
    text-align: right !important;
}

html[dir="rtl"] * {
    direction: rtl !important;
    text-align: right !important;
}

[dir="rtl"] .app-container,
[dir="rtl"] .admin-container,
[dir="rtl"] .main-content {
    direction: rtl !important;
    text-align: right !important;
}

[dir="rtl"] input,
[dir="rtl"] textarea,
[dir="rtl"] select {
    text-align: right !important;
    direction: rtl !important;
}

[dir="rtl"] h1,
[dir="rtl"] h2,
[dir="rtl"] h3,
[dir="rtl"] h4,
[dir="rtl"] h5,
[dir="rtl"] h6,
[dir="rtl"] p,
[dir="rtl"] span,
[dir="rtl"] div,
[dir="rtl"] li,
[dir="rtl"] td,
[dir="rtl"] th {
    text-align: right !important;
    direction: rtl !important;
}

[dir="rtl"] .btn {
    text-align: center;
}

[dir="rtl"] .nav-item {
    text-align: right !important;
    direction: rtl !important;
    width: 100% !important;
}

[dir="rtl"] .nav-item a {
    text-align: right !important;
    direction: rtl !important;
    justify-content: flex-end !important;
    display: flex !important;
    align-items: center !important;
    flex-direction: row-reverse !important;
    width: 100% !important;
    padding-right: 20px !important;
    padding-left: 20px !important;
}

[dir="rtl"] .nav-item i {
    margin-left: 8px !important;
    margin-right: 0 !important;
    order: 2 !important;
}

[dir="rtl"] .nav-item span {
    order: 1 !important;
    text-align: right !important;
    direction: rtl !important;
}

[dir="rtl"] .sidebar-nav {
    text-align: right !important;
    direction: rtl !important;
    width: 100% !important;
}

[dir="rtl"] .sidebar-nav .nav-item {
    text-align: right !important;
    direction: rtl !important;
    width: 100% !important;
}

[dir="rtl"] .sidebar-nav .nav-item a {
    text-align: right !important;
    direction: rtl !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-direction: row-reverse !important;
    width: 100% !important;
    padding-right: 20px !important;
    padding-left: 20px !important;
}

[dir="rtl"] .card-title,
[dir="rtl"] .content-title,
[dir="rtl"] .admin-title {
    text-align: right;
}

[dir="rtl"] .stat-label,
[dir="rtl"] .form-label {
    text-align: right;
}

[dir="rtl"] .activity-message,
[dir="rtl"] .activity-time {
    text-align: right;
}

[dir="rtl"] .status-service,
[dir="rtl"] .status-state {
    text-align: right;
}

[dir="rtl"] .header-content {
    flex-direction: row-reverse;
}

[dir="rtl"] .header-actions {
    flex-direction: row-reverse;
}

[dir="rtl"] .logo {
    flex-direction: row-reverse;
}

[dir="rtl"] .screen-header {
    flex-direction: row-reverse;
}

[dir="rtl"] .action-buttons {
    flex-direction: row-reverse;
}

[dir="rtl"] .map-controls {
    left: var(--spacing-md);
    right: auto;
}

[dir="rtl"] .service-header {
    flex-direction: row-reverse;
}

[dir="rtl"] .service-actions {
    flex-direction: row-reverse;
}

[dir="rtl"] .location-search {
    flex-direction: row-reverse;
}

[dir="rtl"] .modal-header {
    flex-direction: row-reverse;
}

[dir="rtl"] .user-dropdown {
    right: auto;
    left: 0;
}

/* RTL Admin Panel Styles */
[dir="rtl"] .admin-container {
    flex-direction: row-reverse;
}

[dir="rtl"] .admin-sidebar {
    left: auto;
    right: 0;
    border-left: none;
    border-right: 1px solid var(--border-color);
}

[dir="rtl"] .admin-main {
    margin-left: 0;
    margin-right: 280px;
}

[dir="rtl"] .admin-sidebar-overlay {
    left: auto;
    right: 0;
}

[dir="rtl"] .admin-sidebar.open {
    left: auto;
    right: 0;
}

[dir="rtl"] .admin-sidebar .nav-item {
    text-align: right !important;
    direction: rtl !important;
    width: 100% !important;
}

[dir="rtl"] .admin-sidebar .nav-item a {
    text-align: right !important;
    direction: rtl !important;
    padding: 12px 20px 12px 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-direction: row-reverse !important;
    width: 100% !important;
}

[dir="rtl"] .admin-sidebar .nav-item i {
    margin-left: 8px !important;
    margin-right: 0 !important;
    order: 2 !important;
}

[dir="rtl"] .admin-sidebar .nav-item span {
    text-align: right !important;
    direction: rtl !important;
    order: 1 !important;
}

[dir="rtl"] .admin-sidebar .sidebar-header {
    text-align: right !important;
    direction: rtl !important;
    padding: 20px !important;
}

[dir="rtl"] .admin-sidebar .sidebar-header .logo {
    text-align: right !important;
    direction: rtl !important;
    justify-content: flex-end !important;
}

[dir="rtl"] .admin-sidebar .sidebar-header .logo span {
    text-align: right !important;
    direction: rtl !important;
}

[dir="rtl"] .admin-sidebar .sidebar-nav {
    text-align: right !important;
    direction: rtl !important;
    width: 100% !important;
}

[dir="rtl"] .admin-sidebar .sidebar-nav ul {
    text-align: right !important;
    direction: rtl !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

[dir="rtl"] .admin-sidebar .sidebar-nav li {
    text-align: right !important;
    direction: rtl !important;
    width: 100% !important;
    list-style: none !important;
}

/* Force RTL alignment for all navigation elements */
html[dir="rtl"] .nav-item,
html[dir="rtl"] .nav-item a,
html[dir="rtl"] .nav-item span,
html[dir="rtl"] .sidebar-nav,
html[dir="rtl"] .sidebar-nav .nav-item,
html[dir="rtl"] .sidebar-nav .nav-item a,
html[dir="rtl"] .sidebar-nav .nav-item span {
    text-align: right !important;
    direction: rtl !important;
}

/* Force entire sidebar navigation to be right-aligned */
[dir="rtl"] .admin-sidebar,
[dir="rtl"] .admin-sidebar *,
[dir="rtl"] .sidebar-nav,
[dir="rtl"] .sidebar-nav *,
[dir="rtl"] .nav-item,
[dir="rtl"] .nav-item * {
    text-align: right !important;
    direction: rtl !important;
}

/* Force navigation container alignment */
[dir="rtl"] .admin-sidebar .sidebar-nav ul {
    text-align: right !important;
    direction: rtl !important;
    align-items: flex-end !important;
    justify-content: flex-end !important;
}

[dir="rtl"] .admin-sidebar .sidebar-nav li {
    text-align: right !important;
    direction: rtl !important;
    align-self: flex-end !important;
    width: 100% !important;
}

/* Force navigation links to be right-aligned */
[dir="rtl"] .admin-sidebar .sidebar-nav .nav-item a {
    text-align: right !important;
    direction: rtl !important;
    align-self: flex-end !important;
    justify-self: flex-end !important;
    margin-left: auto !important;
    margin-right: 0 !important;
}

/* Additional RTL navigation positioning */
[dir="rtl"] .admin-sidebar .sidebar-nav {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
}

[dir="rtl"] .admin-sidebar .sidebar-nav ul {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
    width: 100% !important;
}

[dir="rtl"] .admin-sidebar .sidebar-nav li {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    width: 100% !important;
}

/* Force text alignment for all text elements in navigation */
[dir="rtl"] .admin-sidebar .sidebar-nav .nav-item span,
[dir="rtl"] .admin-sidebar .sidebar-nav .nav-item a span {
    text-align: right !important;
    direction: rtl !important;
    margin-right: 8px !important;
    margin-left: 0 !important;
}

[dir="rtl"] .mobile-menu-btn {
    margin-left: 0;
    margin-right: var(--spacing-sm);
}

[dir="rtl"] .admin-header-content {
    flex-direction: row-reverse;
}

[dir="rtl"] .admin-actions {
    flex-direction: row-reverse;
}

[dir="rtl"] .sidebar-header .logo {
    flex-direction: row-reverse;
}

[dir="rtl"] .nav-item {
    flex-direction: row-reverse;
}

[dir="rtl"] .nav-item.active::before {
    left: auto;
    right: 0;
    border-radius: var(--radius-sm) 0 0 var(--radius-sm);
}

[dir="rtl"] .content-header {
    flex-direction: row-reverse;
}

[dir="rtl"] .content-actions {
    flex-direction: row-reverse;
}

[dir="rtl"] .modal-footer {
    flex-direction: row-reverse;
}

[dir="rtl"] .form-row {
    direction: rtl;
}

[dir="rtl"] .data-table th,
[dir="rtl"] .data-table td {
    text-align: right;
}

[dir="rtl"] .modal-title,
[dir="rtl"] .modal-body,
[dir="rtl"] .modal-body p {
    text-align: right;
}

[dir="rtl"] .message {
    text-align: right;
}

[dir="rtl"] .error-container h1,
[dir="rtl"] .error-container p {
    text-align: center;
}

[dir="rtl"] .loading-screen p {
    text-align: center;
}

[dir="rtl"] .sidebar-header .logo span {
    text-align: right;
}

[dir="rtl"] .user-menu span {
    text-align: right;
}

[dir="rtl"] .language-selector select {
    text-align: right;
    direction: rtl;
}

[dir="rtl"] .language-selector option {
    text-align: right;
    direction: rtl;
}

[dir="rtl"] .status-item {
    flex-direction: row-reverse;
}

[dir="rtl"] .activity-item {
    flex-direction: row-reverse;
}

/* RTL Mobile Styles */
@media (max-width: 768px) {
    [dir="rtl"] .admin-sidebar {
        left: auto;
        right: -280px;
    }
    
    [dir="rtl"] .admin-sidebar.open {
        left: auto;
        right: 0;
    }
    
    [dir="rtl"] .admin-main {
        margin-right: 0;
    }
}

[dir="rtl"] .message-container {
    right: auto;
    left: var(--spacing-lg);
}

/* RTL Font Families */
[lang="he"] {
    font-family: var(--font-family-hebrew);
}

[lang="ar"] {
    font-family: var(--font-family-arabic);
}

[lang="ru"] {
    font-family: var(--font-family-cyrillic);
}
