/* Global Right-To-Left (RTL) defaults */
html, body {
    direction: rtl;           /* Sets base writing direction */
    unicode-bidi: embed;      /* Ensures proper embedding of RTL text */
}

body {
    text-align: right;        /* Default alignment for text */
    font-family: Calibri, Arial, "Helvetica Neue", Helvetica, sans-serif;
    margin: 0;
    padding: 0;
}

/* Remove aggressive blanket alignment so utilities (.text-center, .text-start, etc.) work.
   Default right alignment comes from body; use the utility classes below to override. */

/* Tables */
table { direction: rtl; }
th, td { text-align: right; }

/* Forms */
input, textarea { direction: rtl; }
input::placeholder, textarea::placeholder { direction: rtl; text-align: right; }

/* Flex helpers (if you use flexbox) */
.flex-row-reverse { flex-direction: row-reverse; }
.flex-col-reverse { flex-direction: column-reverse; }

/* If you later import a LTR framework (e.g., Bootstrap), you can override
   specific utility classes here to keep RTL consistency. */

h1 {
    font-family: Calibri, Arial, "Helvetica Neue", Helvetica, sans-serif;
    margin: 32px 0 24px;      /* Top and bottom spacing for the title */
    padding: 0;               /* Removed horizontal padding per request */
    line-height: 1.2;         /* Slightly tighter line-height for large text */
}

/* Inline search form tweaks */
.search-form {
    gap: 8px;                 /* Space between input and button */
    margin-inline-start: 16px;
}
.search-form input.form-control {
    width: 220px;             /* Reasonable width; adjust as needed */
}

/* Alignment & direction utility helpers */
.rtl-block { direction: rtl !important; text-align: right !important; }
.ltr-block { direction: ltr !important; text-align: left !important; }
.force-right { text-align: right !important; }
.force-left { text-align: left !important; }

/* Inputs often should stay RTL, but allow opting into LTR for things like emails/URLs */
input, textarea { direction: rtl; }
input.ltr-input, textarea.ltr-input { direction: ltr !important; text-align: left !important; }

/* Optional: logical spacing helper (example) */
.px-logical { padding-inline: 1rem; }
.mx-logical { margin-inline: 1rem; }

/* (Login box custom styling removed as per revert) */

/* Auth actions container */
.auth-actions a { white-space: nowrap; }
.auth-actions { margin-inline-start: 1rem; }

/* Navbar logo */
.navbar-logo {
    max-height: 24px; /* Limit logo height */
    height: auto;     /* Keep aspect ratio */
    width: auto;      /* Prevent stretching */
    display: inline-block;
    vertical-align: middle;
}

/* Map container */
.map-container {
    height: 70vh;
    min-height: 400px;
}

/* Listing cards */
.listing-card-img {
    height: 200px;
    object-fit: cover;
}

.listing-card-placeholder {
    height: 200px;
}