/* =========================================
   משווים וטסים — Premium Sky Theme
   v7.0 — Cinematic Edition
   ========================================= */

@font-face {
    font-family: 'Assistant';
    src: url('Assistant-VariableFont_wght.ttf') format('truetype');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

@import url('https://fonts.googleapis.com/css2?family=Heebo:wght@300;400;500;600;700;800;900&display=swap');

/* =========================================
   משתני עיצוב - שמיים, זהב עמוק וקונטרסט מקצועי
   ========================================= */
:root {
    /* רקעים — מעלה לסקייליין */
    --bg-body:   #EEF5FB;  /* תכלת רך, אווירי */
    --bg-soft:   #F8FBFD;  /* כמעט לבן, גוון תכלת חם */
    --bg-card:   #FFFFFF;  /* לבן נקי לכרטיסים וטפסים */
    --bg-header: rgba(255,255,255,0.85);
    --bg-input:  #FFFFFF;

    /* זהב — בסיס הקסם */
    --gold:        #B48629;
    --gold-light:  #D4A847;
    --gold-deep:   #8A631B;
    --gold-hover:  #8A631B;
    --gold-glow:   rgba(180, 134, 41, 0.35);

    /* טקסט — קונטרסט גבוה */
    --text-main:   #0F172A;  /* כחול פחם עמוק */
    --text-soft:   #334155;
    --text-muted:  #64748B;
    --text-light:  #94A3B8;

    /* מסגרות */
    --border-color:  #DCE7F2;
    --border-soft:   #EEF2F7;

    /* צללים — אלגנטיים בשכבות */
    --shadow-xs:  0 2px 6px rgba(15,23,42,0.04);
    --shadow-sm:  0 4px 12px rgba(15,23,42,0.06);
    --shadow-md:  0 10px 30px rgba(15,23,42,0.08);
    --shadow-lg:  0 20px 50px rgba(15,23,42,0.10);
    --shadow-xl:  0 30px 80px rgba(15,23,42,0.12);
    --shadow-gold: 0 12px 35px rgba(180,134,41,0.25);
    --shadow-gold-lg: 0 20px 50px rgba(180,134,41,0.35);

    /* רדיוסים */
    --r-sm: 10px;
    --r-md: 14px;
    --r-lg: 20px;
    --r-xl: 28px;
    --r-full: 999px;

    /* אנימציות */
    --anim-fast: 0.2s;
    --anim-med:  0.4s;
    --anim-slow: 0.7s;
    --ease-out:  cubic-bezier(0.16, 1, 0.3, 1);
    --ease-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);
}

* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Assistant', 'Heebo', sans-serif; }
html, body { max-width: 100%; overflow-x: hidden; scroll-behavior: smooth; }

body {
    background-color: var(--bg-body);
    color: var(--text-main);
    direction: rtl;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    padding-top: 90px;
    line-height: 1.6;
}

a { text-decoration: none; color: inherit; transition: color var(--anim-fast) ease; }
.container { max-width: 1250px; margin: 0 auto; padding: 0 20px; width: 100%; }

/* כותרות פרימיום */
h1, h2, h3, h4 { font-family: 'Heebo', 'Assistant', sans-serif; letter-spacing: -0.5px; line-height: 1.2; }

/* =========================================
   הדר עם blur ושקיפות חכמה
   ========================================= */
.main-header {
    background: var(--bg-header);
    backdrop-filter: saturate(180%) blur(20px);
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    border-bottom: 1px solid rgba(220,231,242,0.6);
    padding: 14px 0;
    position: fixed;
    top: 0; left: 0; right: 0;
    z-index: 1005;
    transition: all var(--anim-med) ease;
}
.main-header.scrolled {
    background: rgba(255,255,255,0.98);
    box-shadow: var(--shadow-sm);
    padding: 10px 0;
}
.main-header .container { display: flex; justify-content: space-between; align-items: center; }

/* פס התקדמות גלילה עם מטוס */
#scrollProgressContainer {
    position: fixed; top: 88px; left: 0; right: 0;
    width: 100%; height: 3px;
    background: rgba(180,134,41,0.05);
    z-index: 1004; pointer-events: none;
}
#scrollProgressBar {
    height: 100%;
    background: linear-gradient(90deg, var(--gold-light), var(--gold), var(--gold-deep));
    width: 0%; float: right;
    box-shadow: 0 0 12px var(--gold-glow);
    position: relative;
    transition: width 0.1s linear;
}
#scrollPlaneWrapper {
    position: absolute; left: -8px; top: -10px;
    font-size: 18px; color: var(--gold);
    transform: scaleX(-1) rotate(-15deg);
    filter: drop-shadow(0 4px 8px var(--gold-glow));
    animation: planeBounce 2s ease-in-out infinite;
}
@keyframes planeBounce {
    0%, 100% { transform: scaleX(-1) rotate(-15deg) translateY(0); }
    50%      { transform: scaleX(-1) rotate(-12deg) translateY(-3px); }
}

/* ניווט */
.main-nav ul { display: flex; gap: 30px; list-style: none; }
.main-nav a {
    font-size: 15px; font-weight: 700;
    transition: var(--anim-fast);
    display: flex; align-items: center; gap: 8px;
    color: var(--text-soft);
    padding: 8px 4px;
    position: relative;
}
.main-nav a::after {
    content: ''; position: absolute;
    bottom: 0; right: 0; left: 0;
    height: 2px;
    background: var(--gold);
    transform: scaleX(0);
    transition: transform var(--anim-med) var(--ease-out);
}
.main-nav a:hover { color: var(--gold); }
.main-nav a:hover::after { transform: scaleX(1); }
.main-nav a i { color: var(--gold); }

/* כפתורי הדר */
.header-auth-area { display: flex; gap: 10px; align-items: center; }
.btn-outline {
    background: transparent;
    border: 2px solid var(--gold);
    color: var(--gold);
    padding: 9px 20px;
    border-radius: var(--r-sm);
    font-weight: 800; font-size: 14px;
    transition: all var(--anim-med) var(--ease-out);
    display: inline-flex; align-items: center; gap: 6px;
    cursor: pointer;
}
.btn-outline:hover {
    background: var(--gold);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: var(--shadow-gold);
}

.btn-filled {
    background: linear-gradient(135deg, var(--gold-light), var(--gold), var(--gold-deep));
    color: #fff !important;
    padding: 9px 20px;
    border-radius: var(--r-sm);
    font-weight: 800; font-size: 14px;
    border: none;
    box-shadow: var(--shadow-gold);
    transition: all var(--anim-med) var(--ease-out);
    display: inline-flex; align-items: center; gap: 6px;
    cursor: pointer;
}
.btn-filled:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-gold-lg);
}

.user-greeting {
    font-size: 14px; color: var(--text-muted);
    display: flex; align-items: center; gap: 6px;
    padding-left: 16px;
    border-left: 1px solid var(--border-color);
    font-weight: 600;
}
.user-greeting span { color: var(--text-main); font-weight: 800; }

.logo img { transition: transform var(--anim-med) ease; }
.logo:hover img { transform: scale(1.04); }

.mobile-menu-btn { display: none; font-size: 24px; color: var(--text-main); cursor: pointer; }
.close-mobile-menu { display: none; font-size: 30px; cursor: pointer; position: absolute; top: 20px; right: 20px; z-index: 1015; }
.menu-overlay { display: none; position: fixed; inset: 0; background: rgba(15,23,42,0.5); backdrop-filter: blur(8px); z-index: 1000; }

/* =========================================
   Footer
   ========================================= */
.main-footer {
    text-align: center;
    padding: 50px 20px;
    background: var(--bg-card);
    border-top: 1px solid var(--border-color);
    color: var(--text-muted);
    font-size: 15px;
    width: 100%;
    margin-top: auto;
    font-weight: 600;
}
.main-footer a { color: var(--text-soft); transition: color var(--anim-fast); }
.main-footer a:hover { color: var(--gold); }

.floating-beta-circle {
    display: inline-block;
    background: rgba(180,134,41,0.1);
    color: var(--gold);
    padding: 4px 12px;
    border-radius: var(--r-full);
    font-size: 12px;
    font-weight: 800;
    border: 1px solid rgba(180,134,41,0.25);
}

/* =========================================
   Inputs — אזורי טפסים בלבד (לא דשבורד)
   ========================================= */
.input-group {
    margin-bottom: 0;
    width: 100%;
    text-align: right;
    position: relative;
}
.input-group label {
    font-weight: 800; font-size: 13px;
    margin-bottom: 8px;
    display: flex; align-items: center; gap: 7px;
    color: var(--text-main);
}
.input-group label i {
    color: var(--gold);
    font-size: 14px;
}

/* רק אזורי חיפוש וטפסים מיוחדים יקבלו את הגודל הגדול */
.search-form-wrapper input,
.search-form-wrapper select,
.search-form-wrapper .pax-btn,
.auth-container input,
.contact-container input,
.contact-container textarea {
    background-color: var(--bg-input);
    border: 1.5px solid var(--border-color);
    color: var(--text-main);
    border-radius: var(--r-md);
    padding: 0 18px;
    font-size: 15px;
    font-weight: 700;
    height: 54px;
    width: 100%;
    transition: all var(--anim-med) var(--ease-out);
    outline: none;
    font-family: inherit;
    box-sizing: border-box;
}

.contact-container textarea { height: auto; min-height: 140px; padding: 15px 18px; resize: vertical; }

.search-form-wrapper input:focus,
.search-form-wrapper select:focus,
.search-form-wrapper .pax-btn:focus,
.search-form-wrapper input:hover,
.search-form-wrapper select:hover,
.search-form-wrapper .pax-btn:hover,
.auth-container input:focus,
.contact-container input:focus,
.contact-container textarea:focus {
    border-color: var(--gold);
    box-shadow: 0 0 0 4px rgba(180,134,41,0.12);
}

/* כפתור חיפוש ראשי - "וואו" */
.btn-search, .btn-search-main {
    background: linear-gradient(135deg, var(--gold-light), var(--gold), var(--gold-deep));
    background-size: 200% 100%;
    color: #fff !important;
    padding: 0 32px;
    border-radius: var(--r-md);
    font-size: 17px;
    font-weight: 900;
    height: 54px;
    transition: all var(--anim-med) var(--ease-out);
    box-shadow: var(--shadow-gold);
    border: none; cursor: pointer;
    display: inline-flex;
    align-items: center; gap: 10px;
    justify-content: center;
    position: relative;
    overflow: hidden;
    letter-spacing: 0.3px;
}
.btn-search::before, .btn-search-main::before {
    content: '';
    position: absolute; top: 0; right: -100%;
    width: 100%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
    transition: right 0.6s var(--ease-out);
}
.btn-search:hover, .btn-search-main:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-gold-lg);
    background-position: 100% 0;
}
.btn-search:hover::before, .btn-search-main:hover::before { right: 100%; }
.btn-search i, .btn-search-main i { transition: transform var(--anim-med) ease; }
.btn-search:hover i, .btn-search-main:hover i { transform: translateX(-5px); }

/* =========================================
   שורת חיפוש עליונה (דף תוצאות)
   ========================================= */
.top-search-bar { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: var(--r-lg); padding: 16px 20px; margin: 40px auto 20px; box-shadow: var(--shadow-md); max-width: 1200px; }
.top-search-form { display: flex; gap: 10px; align-items: center; flex-wrap: nowrap; width: 100%; }
.top-input-group { display: flex; align-items: center; background: var(--bg-soft); border: 1px solid var(--border-color); border-radius: var(--r-sm); padding: 0 14px; height: 48px; flex: 1 1 0; min-width: 0; transition: var(--anim-fast); box-sizing: border-box; }
.top-input-group i { color: var(--gold); margin-left: 8px; font-size: 15px; }
.top-input-group select, .top-input-group input {
    background: transparent !important;
    border: none !important;
    color: var(--text-main) !important;
    outline: none !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    width: 100% !important; height: 100% !important;
    padding: 0 !important; box-shadow: none !important;
    border-radius: 0 !important;
    transform: none !important;
}
.top-input-group:focus-within { border-color: var(--gold); background: #fff; box-shadow: 0 0 0 3px rgba(180,134,41,0.1); }
.top-search-form .btn-search { height: 48px; border-radius: var(--r-sm); font-size: 15px; padding: 0 20px; flex: 0 0 auto; }

/* =========================================
   Multi-Leg
   ========================================= */
.multi-leg { display: flex; align-items: center; gap: 8px; background: var(--bg-soft); border: 1px solid var(--border-color); border-radius: var(--r-md); padding: 12px 15px; }
.multi-leg .multi-leg-from, .multi-leg .multi-leg-to { flex: 1; min-width: 0; }
.multi-leg .multi-leg-date { flex: 0 0 140px; min-width: 0; }
.multi-leg select, .multi-leg input {
    width: 100% !important; height: 46px !important;
    background: #fff !important;
    border: 1px solid var(--border-color) !important;
    border-radius: var(--r-sm) !important;
    padding: 0 15px !important;
    font-size: 14px !important; font-weight: 700 !important;
    box-shadow: none !important; transform: none !important;
}
.multi-leg select:focus, .multi-leg input:focus { border-color: var(--gold) !important; }

/* =========================================
   סינון (Sidebar / sort)
   ========================================= */
.sort-bar { background: var(--bg-card); border: 1px solid var(--border-color); color: var(--text-main); border-radius: var(--r-md); padding: 12px 20px; display: flex; justify-content: space-between; align-items: center; font-size: 15px; font-weight: 800; margin-bottom: 15px; box-shadow: var(--shadow-xs); }
.sort-bar select { background: var(--bg-soft); border: 1px solid var(--border-color); color: var(--text-main); border-radius: var(--r-sm); padding: 8px 12px; outline: none; font-weight: 700; cursor: pointer; font-family: inherit;}
.filters-sidebar { width: 320px; background: var(--bg-card); border: 1px solid var(--border-color); padding: 24px; border-radius: var(--r-lg); box-shadow: var(--shadow-sm); }
.filter-section { border-bottom: 1px solid var(--border-color); padding-bottom: 15px; margin-bottom: 15px; }
.filter-title { color: var(--text-main); font-weight: 900; font-size: 16px; margin-bottom: 15px; display: flex; align-items: center; gap: 8px; }
.filter-title i { color: var(--gold); }
.filter-item { color: var(--text-main); font-size: 15px; margin-bottom: 10px; display: flex; align-items: center; gap: 8px; cursor: pointer; font-weight: 600;}
.filter-item input[type="checkbox"] { width: 16px; height: 16px; accent-color: var(--gold); cursor: pointer; }
.filter-item:hover { color: var(--gold); }
.filter-item input { accent-color: var(--gold); }

/* סליידרים — track בהיר, thumb עם זהב */
.dual-slider-wrapper { direction: ltr; margin-top: 10px; width: 100%; }
.dual-slider-container { position: relative; width: 100%; height: 30px; }
.slider-track {
    position: absolute; height: 6px; border-radius: 3px;
    background: var(--border-color);
    width: 100%; top: 50%;
    transform: translateY(-50%); z-index: 1;
}
.slider-fill {
    position: absolute; height: 6px; border-radius: 3px;
    background: linear-gradient(90deg, var(--gold-light), var(--gold));
    top: 50%; transform: translateY(-50%);
    z-index: 2; pointer-events: none;
}
.dual-slider-input {
    position: absolute; width: 100%; top: 50%;
    transform: translateY(-50%);
    -webkit-appearance: none; background: transparent;
    pointer-events: none; z-index: 3; margin: 0; outline: none;
}
.dual-slider-input::-webkit-slider-thumb {
    pointer-events: auto;
    -webkit-appearance: none;
    width: 20px; height: 20px;
    border-radius: 50%;
    background: #fff;
    border: 3px solid var(--gold);
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(180,134,41,0.3);
    transition: transform 0.2s ease;
}
.dual-slider-input::-webkit-slider-thumb:hover { transform: scale(1.15); }
.dual-slider-input::-moz-range-thumb {
    pointer-events: auto;
    width: 20px; height: 20px;
    border-radius: 50%;
    background: #fff;
    border: 3px solid var(--gold);
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(180,134,41,0.3);
}
.slider-values {
    display: flex; justify-content: space-between;
    font-size: 13px; color: var(--text-main); font-weight: 800;
    margin-top: 8px;
}

#priceFilter {
    -webkit-appearance: none;
    width: 100%; height: 6px;
    background: var(--border-color);
    border-radius: 3px;
    outline: none;
    margin-top: 10px;
}
#priceFilter::-webkit-slider-thumb {
    -webkit-appearance: none; appearance: none;
    width: 20px; height: 20px;
    border-radius: 50%;
    background: #fff;
    border: 3px solid var(--gold);
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(180,134,41,0.3);
}
#priceFilter::-moz-range-thumb {
    width: 20px; height: 20px;
    border-radius: 50%;
    background: #fff;
    border: 3px solid var(--gold);
    cursor: pointer;
}

.mobile-filter-btn { display: none !important; }
.close-filter-btn { display: none; }

/* =========================================
   טבלאות דשבורד (admin/agent)
   ========================================= */
.dashboard-table { width: 100%; border-collapse: collapse; min-width: 800px; }
.dashboard-table th { background: #F1F5F9; color: var(--text-main); border-bottom: 2px solid var(--gold); padding: 14px; font-weight: 900; font-size: 14px; text-align: right;}
.dashboard-table td { padding: 14px; text-align: right; border-bottom: 1px solid var(--border-color); color: var(--text-main); font-size: 14px; font-weight: 600; vertical-align: middle;}
.dashboard-table input, .dashboard-table select { padding: 6px 10px; border: 1px solid var(--border-color); border-radius: 6px; font-size: 14px; background: #fff; width: auto; }
.sidebar a.active { background: rgba(180,134,41,0.1) !important; color: var(--gold) !important; font-weight: 900 !important; border-right: 4px solid var(--gold); }

/* =========================================
   Modal — נקי מודרני
   ========================================= */
.modal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(15,23,42,0.7);
    backdrop-filter: blur(8px);
    z-index: 9999;
    padding-top: 30px;
    overflow: auto;
}
.modal.show { display: flex !important; align-items: flex-start; justify-content: center; }

.modal-content {
    background: var(--bg-card);
    margin: auto;
    padding: 32px;
    border: 1px solid var(--border-color);
    width: 90%;
    max-width: 650px;
    border-radius: var(--r-xl);
    color: var(--text-main);
    position: relative;
    box-shadow: var(--shadow-xl);
}
.modal-content h2, .modal-content h3 { color: var(--text-main); }
.modal-content label { color: var(--text-main); font-weight: 700; }
.modal-content input, .modal-content select, .modal-content textarea {
    background: var(--bg-input) !important;
    border: 1px solid var(--border-color) !important;
    color: var(--text-main) !important;
}
.modal-content input:focus, .modal-content select:focus, .modal-content textarea:focus {
    border-color: var(--gold) !important;
    box-shadow: 0 0 0 3px rgba(180,134,41,0.1) !important;
}
.close-modal {
    color: var(--text-muted);
    position: absolute;
    top: 18px; left: 22px;
    font-size: 30px;
    font-weight: bold;
    cursor: pointer;
    transition: var(--anim-fast);
    line-height: 1;
}
.close-modal:hover { color: #DC2626; transform: scale(1.1); }

/* =========================================
   Status select — מודרני
   ========================================= */
.status-select {
    background: var(--bg-input);
    color: var(--text-main);
    border: 1px solid var(--border-color);
    padding: 8px 12px;
    border-radius: 8px;
    outline: none;
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: var(--anim-fast);
}
.status-select:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(180,134,41,0.1); }

/* =========================================
   Defensive overrides - תיקוני קונסיסטנטיות
   לכל מקום שלא הספקתי לתקן ידנית
   ========================================= */
/* כל th שמכיל בעיית רקע שקוף ישן */
.dashboard-table th { background: #F1F5F9 !important; color: var(--text-main) !important; font-weight: 900 !important; }

/* select ברירת מחדל */
select { color: var(--text-main); }

/* keyframes for fadeIn used across pages */
@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

/* =========================================
   Hotel/Trip Cards (dashboard "מרכיבים" pattern)
   ========================================= */
.hm-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: var(--r-md); padding: 18px; transition: var(--anim-med); }
.hm-card:hover { border-color: var(--gold); box-shadow: var(--shadow-md); }
.hm-btn-success { background: rgba(22,163,74,0.15); color: #16A34A; border: 1px solid rgba(22,163,74,0.4); padding: 7px 14px; border-radius: 8px; font-weight: 700; cursor: pointer; font-family: inherit; transition: var(--anim-fast); }
.hm-btn-success:hover { background: #16A34A; color: #fff; }
.hm-btn-gray { background: var(--bg-soft); color: var(--text-main); border: 1px solid var(--border-color); padding: 7px 14px; border-radius: 8px; cursor: pointer; font-family: inherit; transition: var(--anim-fast); }
.hm-btn-gray:hover { background: var(--gold); color: #fff; border-color: var(--gold); }

/* ═══════════════════════════════════════════════════════════
   GLOBAL ENFORCEMENT — אכיפת אחידות עיצוב על כל האתר
   הכללים האלה רצים אחרי כל סטיילינג ספציפי של עמוד.
   ═══════════════════════════════════════════════════════════ */

/* טבלאות — תמיד עם מסגרת ברורה */
table.dashboard-table,
.dashboard-table {
    background: var(--bg-card);
    border-radius: var(--r-md);
    overflow: hidden;
    border: 1px solid var(--border-color);
    box-shadow: var(--shadow-xs);
}
.dashboard-table tbody tr { transition: background var(--anim-fast) ease; }
.dashboard-table tbody tr:nth-child(even) { background: rgba(238,245,251,0.4); }
.dashboard-table tbody tr:hover { background: rgba(180,134,41,0.06); }
.dashboard-table td, .dashboard-table th { border-left: 1px solid var(--border-soft); }
.dashboard-table td:last-child, .dashboard-table th:last-child { border-left: none; }
.dashboard-table tr:last-child td { border-bottom: none; }

/* כותרת טבלה אחידה */
.dashboard-table th {
    background: linear-gradient(180deg, #F8FBFD, #F1F5F9) !important;
    color: var(--text-main) !important;
    font-weight: 900 !important;
    border-bottom: 2px solid var(--gold) !important;
    text-align: right !important;
    padding: 16px 15px !important;
    font-size: 13px !important;
    letter-spacing: 0.3px;
    text-transform: uppercase;
}
.dashboard-table th[onclick] { cursor: pointer; }
.dashboard-table th[onclick]:hover { background: rgba(180,134,41,0.1) !important; color: var(--gold-deep) !important; }

/* תוכן תאים — קריאות מובטחת */
.dashboard-table td {
    color: var(--text-main) !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    padding: 14px 15px !important;
    vertical-align: middle !important;
}

/* status badges — אחיד */
.status-badge {
    padding: 5px 12px;
    border-radius: var(--r-full);
    font-weight: 800;
    font-size: 12px;
    display: inline-block;
    letter-spacing: 0.3px;
}

/* קלטים — אכיפה גלובלית: רקע לבן, טקסט כהה, גבול עדין */
input[type="text"]:not([style*="background"]),
input[type="email"]:not([style*="background"]),
input[type="tel"]:not([style*="background"]),
input[type="password"]:not([style*="background"]),
input[type="number"]:not([style*="background"]),
input[type="date"]:not([style*="background"]),
input[type="search"]:not([style*="background"]),
textarea:not([style*="background"]),
select:not([style*="background"]) {
    background-color: var(--bg-input);
    color: var(--text-main);
}

/* כפתורים גנריים */
button:not([style*="background"]):not(.btn-search):not(.btn-search-main):not(.btn-outline):not(.btn-filled):not(.cta-btn-primary):not(.cta-btn-outline):not(.btn-admin):not(.search-tab):not(.pax-btn):not(.feature-card):not(.acc-fab):not(.acc-menu-btn) {
    font-family: inherit;
}

/* אחידות modals — כל מודל מקבל אותו טיפול */
.modal-content {
    background: var(--bg-card) !important;
    color: var(--text-main) !important;
    border: 1px solid var(--border-color) !important;
    box-shadow: var(--shadow-xl) !important;
}
.modal-content h2, .modal-content h3, .modal-content h4 { color: var(--text-main); }
.modal-content p, .modal-content span, .modal-content div, .modal-content li, .modal-content label { color: var(--text-main); }
.modal-content small, .modal-content .text-muted { color: var(--text-muted); }

/* pax popup קונסיסטנטי בכל מקום */
.pax-popup,
#dynPaxPopup,
#dynPaxPopupF,
#pkgPaxPopup,
#flightPaxPopup,
#hotelPaxPopup {
    background: var(--bg-card) !important;
    border: 1.5px solid var(--border-color) !important;
    border-radius: var(--r-md) !important;
    box-shadow: var(--shadow-xl) !important;
    color: var(--text-main) !important;
}
.pax-popup .pax-title,
#dynPaxPopup .pax-title,
#dynPaxPopupF .pax-title { color: var(--text-main) !important; font-weight: 800 !important; }
.pax-popup .pax-sub,
#dynPaxPopup .pax-sub,
#dynPaxPopupF .pax-sub { color: var(--text-muted) !important; }
.pax-popup .pax-controls span,
#dynPaxPopup .pax-controls span,
#dynPaxPopupF .pax-controls span { color: var(--text-main) !important; }

/* תיקון defensive נוסף - לא להתאיים מטקסט לבן על רקע לבן */
.search-form-wrapper { color: var(--text-main); }
.search-form-wrapper input,
.search-form-wrapper select,
.search-form-wrapper option {
    color: var(--text-main) !important;
}

/* תיקון defensive: stat-number אם נשאר color:#fff על רקע bright */
.stats-strip .stat-number,
.stat-number { color: var(--gold); }

/* אחידות צללים */
.profile-card,
.search-box,
.terms-content,
.acc-content,
.about-container,
.contact-container {
    box-shadow: var(--shadow-lg);
}

/* קונסיסטנטיות של chips/badges קטנים */
.tag {
    border-radius: var(--r-sm) !important;
    font-weight: 700 !important;
    padding: 5px 12px !important;
    font-size: 12px !important;
    display: inline-flex !important;
    align-items: center;
    gap: 5px;
    line-height: 1;
    height: auto !important;
}

/* loader/spinner גלובלי */
.loading-state, .loader-circle {
    color: var(--gold);
}

/* כל ה-h1, h2, h3 בלי inline style → אחיד */
h1:not([style*="color"]),
h2:not([style*="color"]),
h3:not([style*="color"]) {
    color: var(--text-main);
}

/* ─── מובייל: טבלאות גלילה אופקית ─── */
@media (max-width: 768px) {
    .dashboard-table { font-size: 13px; }
    .dashboard-table th, .dashboard-table td { padding: 10px 8px !important; }
}

/* ═══════════════════════════════════════════════════════════
   FINAL ENFORCEMENT — אחידות מוחלטת לכל השדות
   ═══════════════════════════════════════════════════════════ */

/* כל input/select/textarea באתר → רקע לבן, טקסט כהה, גבול עדין */
input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="range"]):not([type="color"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),
select,
textarea {
    background-color: var(--bg-input);
    color: var(--text-main);
    border: 1.5px solid var(--border-color);
    border-radius: var(--r-md);
    padding: 10px 14px;
    font-family: inherit;
    font-size: 14px;
    font-weight: 600;
    outline: none;
    box-sizing: border-box;
    transition: all 0.2s ease;
}

/* פוקוס אחיד */
input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="range"]):not([type="color"]):not([type="hidden"]):focus,
select:focus,
textarea:focus {
    border-color: var(--gold);
    box-shadow: 0 0 0 4px rgba(180,134,41,0.12);
}

/* Hover (only when not focused) */
input:not(:focus):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="range"]):not([type="color"]):not([type="hidden"]):hover,
select:not(:focus):hover,
textarea:not(:focus):hover {
    border-color: rgba(180,134,41,0.45);
}

/* checkboxes/radio */
input[type="checkbox"], input[type="radio"] {
    accent-color: var(--gold);
    cursor: pointer;
}

/* select chevron מותאם */
select {
    background-image: linear-gradient(45deg, transparent 50%, var(--gold) 50%), linear-gradient(135deg, var(--gold) 50%, transparent 50%);
    background-position: calc(0% + 16px) calc(50% - 2px), calc(0% + 20px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
    padding-left: 35px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer;
}
select::-ms-expand { display: none; }
[dir="rtl"] select {
    background-position: calc(0% + 16px) calc(50% - 2px), calc(0% + 20px) calc(50% - 2px);
    padding-left: 35px;
    padding-right: 14px;
}

/* placeholder עדין */
input::placeholder, textarea::placeholder {
    color: var(--text-muted);
    font-weight: 500;
    opacity: 0.7;
}

/* ═══════════════════════════════════════════════════════════
   MOBILE OPTIMIZATIONS — יישור, גופנים, יותר טוב למסך קטן
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
    /* hero — מרכוז וגדלים */
    .hero-content { text-align: center; padding: 0 16px; }
    .hero-title { font-size: clamp(28px, 7vw, 40px) !important; line-height: 1.1 !important; }
    .hero-subtitle { font-size: 15px !important; padding: 0 10px; }
    .hero-eyebrow { font-size: 11px !important; letter-spacing: 3px !important; gap: 10px !important; }
    .hero-eyebrow::before, .hero-eyebrow::after { width: 28px !important; }

    .hero-trust-badges {
        flex-direction: column;
        gap: 12px;
        align-items: center;
        margin-bottom: 35px;
    }
    .trust-badge { font-size: 13px; }

    /* search tabs — flat ולא חתוכים */
    .search-tabs { gap: 4px; padding: 0 4px; }
    .search-tab { font-size: 13px !important; padding: 12px 16px !important; }
    .search-tab i { font-size: 13px; }

    .search-form-wrapper {
        padding: 24px 18px !important;
        border-radius: var(--r-lg) !important;
        gap: 16px !important;
    }

    /* כותרות סקציות */
    .section-title { font-size: clamp(24px, 5vw, 32px) !important; line-height: 1.15; }
    .section-subtitle { font-size: 15px; padding: 0 14px; }
    .section-header { margin-bottom: 40px; }

    /* feature cards */
    .feature-card { padding: 30px 22px; }
    .feature-title { font-size: 19px; }
    .feature-text { font-size: 15px; }
    .feature-icon-wrap { width: 72px; height: 72px; font-size: 28px; }

    /* stats */
    .stats-strip { padding: 40px 0; }
    .stats-grid { gap: 14px; }
    .stat-number { font-size: 32px !important; }
    .stat-label { font-size: 12px; letter-spacing: 0.5px; }
    .stat-icon { width: 50px; height: 50px; font-size: 22px; }

    /* how it works */
    .step-number { width: 90px; height: 90px; }
    .step-number i { font-size: 36px; }
    .step-title { font-size: 19px; }
    .step-text { font-size: 14px; }

    /* CTA */
    .cta-title { font-size: clamp(24px, 5vw, 36px) !important; }
    .cta-subtitle { font-size: 15px; padding: 0 14px; }

    /* pax popup במובייל — לא לחתוך */
    .pax-popup,
    #dynPaxPopup,
    #dynPaxPopupF,
    #pkgPaxPopup,
    #flightPaxPopup,
    #hotelPaxPopup {
        position: fixed !important;
        left: 50% !important;
        right: auto !important;
        top: 50% !important;
        transform: translate(-50%, -50%) !important;
        width: 90vw !important;
        max-width: 360px !important;
        z-index: 100000 !important;
    }
    /* כשpopup מובייל פתוח — overlay חצי שקוף ברקע */
    .pax-popup.active::before,
    #dynPaxPopup[style*="display: block"]::before,
    #dynPaxPopupF[style*="display: block"]::before {
        content: '';
        position: fixed;
        inset: 0;
        background: rgba(15,23,42,0.5);
        z-index: -1;
    }
}

@media (max-width: 480px) {
    .hero-section { padding-top: 120px !important; padding-bottom: 50px !important; }
    .hero-title { font-size: 26px !important; }
    .hero-subtitle { font-size: 14px !important; }
    .container { padding: 0 14px; }
    .feature-grid { gap: 18px; }
    .stats-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
    .search-form-wrapper { padding: 20px 14px !important; gap: 14px !important; }
    .input-group label { font-size: 13px; }
}

/* ═══════════════════════════════════════════════════════════
   POPUP/POSITIONING - z-index high enough to avoid clipping
   ═══════════════════════════════════════════════════════════ */
.passengers-dropdown {
    position: relative;
    z-index: 1000;
}
.pax-popup,
#dynPaxPopup,
#dynPaxPopupF {
    z-index: 99999 !important;
}

/* ═══════════════════════════════════════════════════════════
   LUXURY COLLAPSIBLE SECTIONS — סקציות מתקפלות יוקרתיות
   ═══════════════════════════════════════════════════════════ */
.account-mgmt-wrap {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.lux-section {
    background: var(--bg-card);
    border: 1px solid var(--border-color);
    border-radius: var(--r-lg);
    overflow: hidden;
    transition: all 0.25s ease;
    box-shadow: var(--shadow-xs);
}
.lux-section:hover {
    border-color: rgba(180,134,41,0.4);
    box-shadow: var(--shadow-md);
}
.lux-section[open] {
    border-color: var(--gold);
    box-shadow: var(--shadow-md);
}

.lux-section summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 22px;
    cursor: pointer;
    user-select: none;
    list-style: none;
    transition: background 0.2s ease;
}
.lux-section summary::-webkit-details-marker { display: none; }
.lux-section summary::marker { display: none; }
.lux-section summary:hover { background: rgba(180,134,41,0.04); }

.lux-summary-left {
    display: flex;
    align-items: center;
    gap: 16px;
    flex: 1;
}

.lux-icon-circle {
    width: 48px; height: 48px;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
    transition: all 0.25s ease;
}
.lux-section[open] .lux-icon-circle {
    transform: scale(1.05);
}

.lux-title {
    font-size: 16px;
    font-weight: 900;
    color: var(--text-main);
    margin-bottom: 2px;
}
.lux-sub {
    font-size: 13px;
    color: var(--text-muted);
    font-weight: 600;
}

.lux-chevron {
    color: var(--text-muted);
    font-size: 14px;
    transition: transform 0.3s ease;
}
.lux-section[open] .lux-chevron {
    transform: rotate(180deg);
    color: var(--gold);
}

.lux-body {
    padding: 6px 22px 24px;
    border-top: 1px solid var(--border-soft);
    animation: luxBodyOpen 0.3s ease;
}
@keyframes luxBodyOpen {
    from { opacity: 0; transform: translateY(-8px); }
    to   { opacity: 1; transform: translateY(0); }
}

.lux-toggle-row {
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
    padding: 14px 18px;
    background: var(--bg-soft);
    border: 1px solid var(--border-color);
    border-radius: var(--r-md);
    margin-top: 10px;
    transition: all 0.2s ease;
}
.lux-toggle-row:hover {
    background: rgba(180,134,41,0.05);
    border-color: rgba(180,134,41,0.3);
}
.lux-toggle-row input[type="checkbox"] {
    width: 20px;
    height: 20px;
    accent-color: var(--gold);
    cursor: pointer;
    flex-shrink: 0;
}
.lux-toggle-text {
    color: var(--text-main);
    font-weight: 700;
    font-size: 14px;
}

/* ═══════════════════════════════════════════════════════════
   ROW ACTION BUTTONS — כפתורי פעולה בטבלאות
   ═══════════════════════════════════════════════════════════ */
.row-action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    padding: 0;
    border-radius: 8px;
    border: 1px solid transparent;
    cursor: pointer;
    font-size: 13px;
    transition: all 0.2s ease;
    margin: 0 2px;
    font-family: inherit;
    flex-shrink: 0;
    line-height: 1;
}
.row-action-btn i { font-size: 13px; line-height: 1; }
.row-action-edit {
    background: rgba(14,165,233,0.1);
    color: #0EA5E9;
    border-color: rgba(14,165,233,0.3);
}
.row-action-edit:hover {
    background: #0EA5E9;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(14,165,233,0.3);
}
.row-action-delete {
    background: rgba(220,38,38,0.1);
    color: #DC2626;
    border-color: rgba(220,38,38,0.3);
}
.row-action-delete:hover {
    background: #DC2626;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(220,38,38,0.3);
}
.row-action-view {
    background: rgba(180,134,41,0.1);
    color: var(--gold);
    border-color: rgba(180,134,41,0.3);
}
.row-action-view:hover {
    background: var(--gold);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(180,134,41,0.3);
}

/* =========================================
   כרטיסי תוצאות טיסות (results.php)
   ========================================= */
.results-page { min-height: 75vh; padding-bottom: 50px; display: flex; gap: 30px; align-items: flex-start; margin-top: 20px; width: 100%; }
.results-list { flex: 1; min-width: 0; }
#resultsContent { display: flex; flex-direction: column; gap: 20px !important; width: 100%; }

.trip-card {
    background: var(--bg-card);
    border: 1px solid var(--border-color);
    border-radius: var(--r-lg);
    padding: 28px;
    display: grid;
    grid-template-columns: 1fr 240px;
    gap: 28px;
    position: relative;
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    transition: all var(--anim-med) var(--ease-out);
}
.trip-card:hover { border-color: var(--gold); box-shadow: var(--shadow-lg); transform: translateY(-4px); }
.trip-card::before {
    content: ''; position: absolute;
    top: 0; right: 0; width: 4px; height: 100%;
    background: linear-gradient(180deg, var(--gold-light), var(--gold));
    opacity: 0; transition: opacity var(--anim-med);
}
.trip-card:hover::before { opacity: 1; }

.agent-header { display: flex; justify-content: space-between; align-items: center; padding-bottom: 14px; border-bottom: 1px dashed var(--border-color); }
.agent-logo-container { width: 36px; height: 36px; background: #fff; border-radius: 50%; display: flex; justify-content: center; align-items: center; overflow: hidden; flex-shrink: 0; border: 1px solid var(--border-color); }
.agent-logo-container img { width: 100%; height: 100%; object-fit: contain; }
.agent-name-text { font-size: 14px; font-weight: 900; }
.trip-title { font-size: 22px; font-weight: 900; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }

.flight-row { display: flex; align-items: center; justify-content: space-between; gap: 20px; background: var(--bg-soft); padding: 16px 22px; border-radius: var(--r-md); border: 1px solid var(--border-color); margin-bottom: 12px; transition: var(--anim-med); }
.flight-row:hover { border-color: var(--gold); }
.flight-direction { font-weight: 900; width: 45px; font-size: 13px; color: var(--gold); display: flex; flex-direction: column; align-items: flex-start; gap: 2px; }
.time-box { text-align: center; min-width: 60px; display: flex; flex-direction: column; align-items: center; }
.time-box .time { font-size: 24px; font-weight: 900; letter-spacing: -0.5px; }
.time-box .date { font-size: 13px; color: var(--text-muted); font-weight: 700; margin-top: 2px; }
.time-box .airport { font-size: 15px; font-weight: 800; color: var(--text-muted); margin-top: 2px; }

.route-line { flex: 1; height: 2px; position: relative; display: flex; justify-content: center; align-items: center; min-width: 50px; background: var(--border-color); }
.route-line-icon { font-size: 18px; background: var(--bg-card); padding: 0 10px; z-index: 2; transform: scaleX(-1); color: var(--gold); }

.trip-price-section { border-right: 1px solid var(--border-color); padding-right: 28px; display: flex; flex-direction: column; justify-content: center; text-align: center; position: relative; z-index: 5; }
.price { font-size: 42px; font-weight: 900; color: var(--gold) !important; margin-bottom: 4px; letter-spacing: -1.5px; }

.amenities-tags { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
.tag { background: var(--bg-soft) !important; border: 1px solid var(--border-color) !important; font-weight: 800 !important; border-radius: 8px !important; padding: 6px 12px !important; font-size: 13px !important; display: inline-flex !important; align-items: center; height: 30px; }
.tag-primary { background: var(--gold) !important; color: #fff !important; border: none !important; box-shadow: 0 4px 12px var(--gold-glow) !important; }

/* שמירת צבעי תגיות מקוריים */
.trip-card span[style*="color:#2ecc71"], .trip-card span[style*="color: #2ecc71"], .trip-card div[style*="color:#2ecc71"], .trip-card span[style*="color:#27ae60"], .trip-card div[style*="color:#27ae60"] { color: #16A34A !important; font-weight: 900 !important; }
.trip-card span[style*="color:#cbd5e1"], .trip-card span[style*="color: #cbd5e1"], .trip-card div[style*="color:#cbd5e1"], .trip-card span[style*="color:#94a3b8"], .trip-card div[style*="color:#94a3b8"] { color: var(--text-muted) !important; font-weight: 700 !important; }

/* =========================================
   Toast notifications (משופר)
   ========================================= */
#custom-toast-container { position: fixed; top: 110px; left: 50%; transform: translateX(-50%); z-index: 999999; display: flex; flex-direction: column; gap: 10px; align-items: center; pointer-events: none; }
.custom-toast {
    background: var(--bg-card);
    color: var(--text-main);
    padding: 14px 24px;
    border-radius: var(--r-md);
    font-size: 15px; font-weight: 800;
    box-shadow: var(--shadow-xl);
    border: 1px solid var(--border-color);
    border-right: 4px solid var(--gold);
    display: flex; align-items: center; gap: 10px;
    opacity: 0; transform: translateY(-20px);
    transition: all var(--anim-med) var(--ease-bounce);
    pointer-events: auto;
    min-width: 280px; max-width: 480px;
}
.custom-toast.show { opacity: 1; transform: translateY(0); }
.custom-toast.success { border-right-color: #16A34A; }
.custom-toast.success i { color: #16A34A; }
.custom-toast.error { border-right-color: #DC2626; }
.custom-toast.error i { color: #DC2626; }
.custom-toast.warning { border-right-color: #F59E0B; }
.custom-toast.warning i { color: #F59E0B; }
.custom-toast i { font-size: 20px; flex-shrink: 0; }

/* =========================================
   רספונסיביות
   ========================================= */
@media (max-width: 1000px) {
    .btn-search-main { height: 50px; font-size: 16px; }
    .mobile-filter-btn { display: flex !important; justify-content: center; align-items: center; gap: 8px; position: fixed; bottom: 20px; left: 50%; transform: translateX(-50%); width: 80%; max-width: 300px; padding: 14px 20px; background: var(--gold); color: #fff; font-weight: 900; font-size: 16px; border-radius: 50px; z-index: 9999; box-shadow: var(--shadow-gold-lg); border: none; cursor: pointer; }
    .top-search-bar { margin: 15px auto !important; padding: 15px !important; }
    .top-search-form { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 8px !important; }
    .top-input-group { width: 100% !important; padding: 0 10px !important; height: 46px !important; }
    .top-search-form .btn-search { grid-column: 1 / -1 !important; height: 48px !important; }
    .results-page { flex-direction: column; padding-bottom: 120px !important; margin-top: 15px; }
    .filters-sidebar { width: 100%; display: none; position: fixed; top: 0; right: 0; height: 100%; z-index: 10000 !important; background: var(--bg-card); padding: 60px 20px 20px; border-radius: 0; overflow-y: auto; }
    .filters-sidebar.open { display: block; }
    .close-filter-btn { display: block; position: absolute; top: 15px; left: 15px; font-size: 35px; background: none; border: none; cursor: pointer; }
}

@media (max-width: 950px) {
    .mobile-menu-btn { display: block; }
    .hide-mobile { display: none !important; }
    .main-header { overflow: hidden; }
    .header-auth-area { gap: 6px !important; }
    .header-auth-area .btn-outline, .header-auth-area .btn-filled { padding: 7px 12px !important; font-size: 13px !important; border-radius: 8px; }
    .user-greeting { font-size: 13px !important; padding-left: 10px !important; max-width: 110px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .logo img { height: 50px !important; }
    .main-nav { position: fixed; top: 0; right: -320px; width: 300px; height: 100vh; background: var(--bg-card) !important; box-shadow: -10px 0 40px rgba(0,0,0,0.1) !important; z-index: 1010 !important; transition: right var(--anim-med) ease; padding-top: 80px; display: flex; flex-direction: column; border-left: 1px solid var(--border-color); }
    .main-nav.open { right: 0; }
    .menu-overlay.open { display: block; z-index: 1000 !important; }
    .close-mobile-menu { display: block; z-index: 1015 !important; }
    .main-nav ul { flex-direction: column; gap: 0; }
    .main-nav ul li a { border-bottom: 1px solid var(--border-color); padding: 16px 22px; font-size: 17px !important; font-weight: 800 !important; }
}

@media (max-width: 850px) {
    .trip-card { grid-template-columns: 1fr; gap: 20px; padding: 24px; }
    .flight-row { display: grid; grid-template-columns: 1fr 40px 1fr; gap: 5px; position: relative; padding: 15px 0; background: transparent; border: none; border-bottom: 1px solid var(--border-color); border-radius: 0; margin-bottom: 0; }
    .flight-row:hover { background: transparent; box-shadow: none; }
    .flight-direction { grid-column: 1 / -1; flex-direction: row; padding-bottom: 6px; margin-bottom: 6px; width: 100%; justify-content: flex-start; gap: 6px; border-left: none; }
    .time-box:nth-child(2) { text-align: right; align-items: flex-start; }
    .time-box:nth-child(4) { text-align: left; align-items: flex-end; }
    .route-line { width: 100%; height: 2px; min-width: unset; }
    .route-line-icon { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) scaleX(-1); background: var(--bg-card); }
    .flight-amenities { grid-column: 1 / -1; flex-direction: row; flex-wrap: wrap; gap: 8px 15px; padding-top: 8px; }
    .trip-price-section { border-right: none; border-top: 1px solid var(--border-color); padding-top: 18px; padding-right: 0; width: 100%; align-items: center; }
    .trip-price-section .btn-search { width: 100%; margin-top: 10px; }
}

@media (max-width: 768px) {
    body { padding-top: 75px; }
    #scrollProgressContainer { top: 73px; }
    .search-tabs { overflow-x: auto; -webkit-overflow-scrolling: touch; flex-wrap: nowrap !important; }
    .search-tab { white-space: nowrap; flex-shrink: 0; font-size: 14px !important; padding: 13px 18px !important; }
    .search-form-wrapper { padding: 25px 20px !important; border-radius: var(--r-lg) !important; }
    .pax-popup { width: 95vw !important; right: 2.5vw !important; left: auto !important; max-width: none !important; }
}

@media (max-width: 480px) {
    body { padding-top: 70px; }
    #scrollProgressContainer { top: 68px; }
    .site-main-logo { height: 45px !important; }
    .btn-search, .btn-search-main { font-size: 15px !important; padding: 0 18px !important; }
}

@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

/* ═══════════════════════════════════════════════════════════════════
   FLATPICKR CALENDAR — Light Sky Theme אחיד למערכת
   (מובנה ב-style.css כדי לעקוף בעיות cache או קבצים חסרים)
   ═══════════════════════════════════════════════════════════════════ */
.flatpickr-calendar {
    background: #FFFFFF !important;
    border: 1px solid #DCE7F2 !important;
    border-radius: 14px !important;
    box-shadow: 0 20px 50px rgba(15,23,42,0.15) !important;
    direction: rtl !important;
    font-family: 'Assistant', sans-serif !important;
    width: auto !important;
    padding: 10px !important;
    color: #0F172A !important;
}
.flatpickr-calendar.arrowTop:before,
.flatpickr-calendar.arrowTop:after { border-bottom-color: #DCE7F2 !important; }
.flatpickr-calendar.arrowBottom:before,
.flatpickr-calendar.arrowBottom:after { border-top-color: #DCE7F2 !important; }

.flatpickr-months {
    background: transparent !important;
    color: #0F172A !important;
    padding: 8px 4px !important;
}
.flatpickr-months .flatpickr-month {
    color: #0F172A !important;
    background: transparent !important;
    height: 42px !important;
    border-radius: 8px !important;
}
.flatpickr-current-month {
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #0F172A !important;
    padding: 6px 0 !important;
}
.flatpickr-current-month .flatpickr-monthDropdown-months,
.flatpickr-current-month input.cur-year {
    color: #0F172A !important;
    background: transparent !important;
    font-weight: 800 !important;
}

.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
    fill: #B48629 !important;
    color: #B48629 !important;
    padding: 8px !important;
    transition: all 0.2s ease !important;
}
.flatpickr-months .flatpickr-prev-month:hover,
.flatpickr-months .flatpickr-next-month:hover {
    background: rgba(180,134,41,0.1) !important;
    border-radius: 8px !important;
}
.flatpickr-months .flatpickr-prev-month svg,
.flatpickr-months .flatpickr-next-month svg { fill: #B48629 !important; }

.flatpickr-weekdays {
    background: transparent !important;
    border-bottom: 1px solid #DCE7F2 !important;
    padding-bottom: 6px !important;
}
.flatpickr-weekday {
    background: transparent !important;
    color: #B48629 !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.flatpickr-day {
    color: #0F172A !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    transition: all 0.15s ease !important;
    border: none !important;
    margin: 1px !important;
    line-height: 38px !important;
    max-width: 40px !important;
    height: 38px !important;
    background: transparent !important;
}
.flatpickr-day:hover {
    background: rgba(180,134,41,0.12) !important;
    color: #B48629 !important;
}
.flatpickr-day.today {
    border: 2px solid #B48629 !important;
    color: #B48629 !important;
    font-weight: 900 !important;
    background: rgba(180,134,41,0.05) !important;
}
.flatpickr-day.today:hover {
    background: rgba(180,134,41,0.15) !important;
    color: #B48629 !important;
}

/* יום נבחר / טווח */
.flatpickr-day.selected,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange,
.flatpickr-day.endRange:hover {
    background: linear-gradient(135deg, #D4A847, #B48629, #8A631B) !important;
    color: #FFFFFF !important;
    box-shadow: 0 4px 12px rgba(180,134,41,0.35) !important;
    font-weight: 900 !important;
}
.flatpickr-day.inRange {
    background: rgba(180,134,41,0.12) !important;
    color: #B48629 !important;
    border-radius: 4px !important;
}
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay {
    color: #94A3B8 !important;
    opacity: 0.5 !important;
}
.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover {
    color: #CBD5E1 !important;
    background: transparent !important;
    cursor: not-allowed !important;
}

/* תאריך עברי בכל יום */
.flatpickr-day .heb-date {
    display: block;
    font-size: 9px !important;
    color: var(--text-muted) !important;
    line-height: 1 !important;
    margin-top: -2px !important;
    font-weight: 600 !important;
}
.flatpickr-day.selected .heb-date,
.flatpickr-day.startRange .heb-date,
.flatpickr-day.endRange .heb-date { color: rgba(255,255,255,0.85) !important; }
.flatpickr-day.inRange .heb-date { color: #B48629 !important; }

/* כפתורי "היום" וכו' */
.flatpickr-calendar .dp-today-btn,
.flatpickr-calendar button[data-action] {
    background: var(--gold) !important;
    color: #fff !important;
    border: none !important;
    padding: 8px 16px !important;
    border-radius: 8px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
}

/* multi-month */
.flatpickr-calendar.multiMonth .flatpickr-months { flex-direction: row-reverse !important; }
.flatpickr-calendar.multiMonth .flatpickr-innerContainer {
    direction: rtl !important;
    gap: 28px !important;
    position: relative !important;
}
.flatpickr-calendar.multiMonth .flatpickr-innerContainer::before {
    content: '';
    position: absolute;
    top: 10px; bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    width: 1px;
    background: #DCE7F2;
    pointer-events: none;
    z-index: 1;
}

/* ═══════════════════════════════════════════════════════════════════
   SMART DROPDOWN — רשימה נפתחת אחידה עם חיפוש
   ═══════════════════════════════════════════════════════════════════ */
.sd-wrap {
    position: relative;
    width: 100%;
}

.sd-btn {
    width: 100%;
    height: 44px;
    padding: 0 14px;
    border-radius: var(--r-md);
    border: 1.5px solid var(--border-color);
    background: var(--bg-input);
    color: var(--text-main);
    font-size: 14px;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: right;
    transition: all 0.2s ease;
    outline: none;
}
.sd-btn:hover {
    border-color: rgba(180,134,41,0.45);
}
.sd-wrap.open .sd-btn {
    border-color: var(--gold);
    box-shadow: 0 0 0 4px rgba(180,134,41,0.12);
}

.sd-btn-label {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: right;
}
.sd-btn-label.sd-placeholder {
    color: var(--text-muted);
    font-weight: 500;
}

.sd-btn-chevron {
    color: var(--gold);
    font-size: 12px;
    margin-right: 8px;
    transition: transform 0.25s ease;
}
.sd-wrap.open .sd-btn-chevron {
    transform: rotate(180deg);
}

/* ─── Dropdown ─── */
.sd-dropdown {
    display: none;
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    left: 0;
    background: var(--bg-card);
    border: 1.5px solid var(--gold);
    border-radius: var(--r-md);
    box-shadow: 0 20px 50px rgba(15,23,42,0.18);
    z-index: 9999;
    overflow: hidden;
    max-height: 360px;
    display: none;
    flex-direction: column;
    animation: sdOpen 0.18s ease;
}
.sd-wrap.open .sd-dropdown { display: flex; }

@keyframes sdOpen {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ─── Search ─── */
.sd-search-wrap {
    position: relative;
    padding: 10px 12px;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-soft);
}
.sd-search-icon {
    position: absolute;
    right: 22px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted);
    font-size: 13px;
    pointer-events: none;
}
.sd-search {
    width: 100%;
    height: 38px;
    padding: 0 32px 0 12px;
    border: 1.5px solid var(--border-color);
    border-radius: var(--r-sm);
    background: var(--bg-input);
    color: var(--text-main);
    font-size: 14px;
    font-weight: 600;
    font-family: inherit;
    outline: none;
    transition: all 0.2s ease;
}
.sd-search:focus {
    border-color: var(--gold);
    box-shadow: 0 0 0 3px rgba(180,134,41,0.1);
}

/* ─── List ─── */
.sd-list {
    overflow-y: auto;
    flex: 1;
    padding: 6px;
    max-height: 300px;
}
.sd-list::-webkit-scrollbar { width: 8px; }
.sd-list::-webkit-scrollbar-track { background: transparent; }
.sd-list::-webkit-scrollbar-thumb { background: var(--border-color); border-radius: 4px; }
.sd-list::-webkit-scrollbar-thumb:hover { background: var(--text-muted); }

.sd-group {
    padding: 8px 12px 4px;
    color: var(--gold);
    font-weight: 800;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.sd-item {
    padding: 10px 14px;
    border-radius: var(--r-sm);
    color: var(--text-main);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s ease;
    user-select: none;
}
.sd-item:hover {
    background: rgba(180,134,41,0.1);
    color: var(--gold-deep);
    padding-right: 18px;
}
.sd-item.sd-selected {
    background: linear-gradient(135deg, var(--gold-light), var(--gold));
    color: #fff;
    font-weight: 800;
}
.sd-item.sd-selected:hover {
    background: linear-gradient(135deg, var(--gold), var(--gold-deep));
    color: #fff;
}
.sd-item.sd-disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

.sd-empty {
    padding: 20px;
    text-align: center;
    color: var(--text-muted);
    font-size: 14px;
    font-weight: 600;
}

/* mobile */
@media (max-width: 768px) {
    .sd-dropdown { max-height: 70vh; }
    .sd-list { max-height: calc(70vh - 60px); }
}
