/* ==========================================================
   نسخه نهایی، اصلاح‌شده و تست شده برای قالب Jazzmin
   + اصلاحات کامل برای admin_panel.html و index.html
   ========================================================== */

/* ========== فونت و استایل صفحه لاگین Django Admin (Jazzmin) ========== */
@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@400;500;600;700;800&display=swap');

body.login-page,
.login-page {
    font-family: Vazirmatn, Tahoma, sans-serif !important;
    background:
        radial-gradient(ellipse at 15% 10%, #dff3ec 0, transparent 34%),
        #f3f6f5 !important;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.login-box {
    width: 100%;
    max-width: 420px;
}

.login-logo a,
.login-logo b {
    color: #163c4a !important;
    font-weight: 700 !important;
    font-family: Vazirmatn, Tahoma, sans-serif !important;
}
/* محدود کردن اندازه لوگوی صفحه لاگین Django Admin */
.login-logo {
    margin-bottom: 1.25rem !important;
    text-align: center !important;
}

/* همه تصاویر لوگو را مخفی کن */
.login-logo img {
    display: none !important;
}

/* فقط اولین تصویر را نشان بده و اندازه بده */
.login-logo img:first-of-type {
    display: inline-block !important;
    max-width: 140px !important;
    max-height: 140px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
}

/* متن تکراری کنار/زیر لوگو را مخفی کن */
.login-logo a {
    font-size: 0 !important;
    line-height: 0 !important;
    color: transparent !important;
}

.login-logo a img:first-of-type {
    font-size: initial !important;
}


.login-card-body,
.card {
    border-radius: 16px !important;
    border: 1px solid #e1e9e7 !important;
    box-shadow: 0 20px 50px rgba(22, 60, 74, 0.12) !important;
}

.login-card-body .btn-primary,
.login-page .btn-primary {
    background-color: #087f78 !important;
    border-color: #087f78 !important;
    font-family: Vazirmatn, Tahoma, sans-serif !important;
    font-weight: 600 !important;
    border-radius: 9px !important;
    min-height: 46px;
}

.login-card-body .btn-primary:hover {
    background-color: #06665f !important;
    border-color: #06665f !important;
}

.login-page input.form-control,
.login-card-body .form-control {
    border-radius: 9px !important;
    border-color: #d5dfde !important;
    font-family: Vazirmatn, Tahoma, sans-serif !important;
    min-height: 46px;
}

.login-page input.form-control:focus {
    border-color: #087f78 !important;
    box-shadow: 0 0 0 3px rgba(8, 127, 120, 0.18) !important;
}

.login-page .icheck-primary label,
.login-card-body label {
    font-family: Vazirmatn, Tahoma, sans-serif !important;
    color: #33444a !important;
}

/* ==================== 1. حذف کامل دکمه همبرگر ==================== */
.navbar-toggler,
.sidebar-toggle,
[data-widget="pushmenu"],
.navbar-nav .nav-item:first-child a[data-widget="pushmenu"],
.navbar-nav li:first-child a[data-widget="pushmenu"],
button.navbar-toggler,
button.sidebar-toggle,
a[data-widget="pushmenu"] {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* مخفی کردن هر عنصری که آیکون همبرگر دارد */
.fa-bars, .fas.fa-bars, .fa-bars:before, .fas.fa-bars:before {
    display: none !important;
}

/* ==================== 2. اصلاح نوار بالا و منوی کاربر ==================== */

/* منوی کشویی آدمک کامل دیده شود */
.main-header,
#jazzy-navbar {
    overflow: visible !important;
}

/* خود منوی بازشونده */
.navbar-nav .dropdown-menu {
    left: 0 !important;
    right: auto !important;
    min-width: 190px !important;
    z-index: 1060 !important;
    box-shadow: 0 6px 20px rgba(0,0,0,0.12) !important;
}

/* حذف کامل آیتم همبرگر از نوار بالا (نه فقط مخفی کردن آیکون) */
#jazzy-navbar > .container-fluid > .navbar-nav:first-of-type > .nav-item:first-child {
    display: none !important;
    width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* لینک‌های داشبورد / پنل اتحادیه / صفحه اصلی */
#jazzy-navbar > .container-fluid > .navbar-nav:first-of-type {
    position: relative !important;
    left: 1rem !important;
}

#jazzy-navbar > .container-fluid > .navbar-nav:first-of-type .nav-link {
    padding: 8px 10px !important;
    font-weight: 600 !important;
    color: #163c4a !important;
}

/* فقط اسکرول افقی صفحه را کنترل کن، منوها را خراب نکن */
body {
    overflow-x: hidden;
}

/* ==================== 3. فیلترها و سرچ (کادرهای زرد) ==================== */
#changelist-form #toolbar,
#changelist-search,
.changelist-form-container form > .row,
#changelist-filter form {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 12px !important;
    overflow-x: visible !important;
}

/* جستجو */
#searchbar {
    width: 260px !important;
    display: inline-block !important;
    margin: 0 !important;
}

/* فیلترهای کنار جستجو */
#changelist-filter select,
select[name*="status"],
select[name*="guild"],
select[name*="union"] {
    width: auto !important;
    min-width: 150px !important;
    display: inline-block !important;
    margin: 0 5px !important;
    padding: 6px 12px !important;
}

/* دکمه فیلتر/جستجو */
#changelist-form button,
#changelist-form input[type="submit"],
.changelist-filter-form button {
    display: inline-flex !important;
    align-items: center !important;
    padding: 6px 16px !important;
    margin: 0 !important;
}

/* ==================== 4. تنظیمات جدول جنگو ==================== */
#result_list th, #result_list td {
    padding: 12px 14px !important;
    font-size: 14px !important;
    white-space: normal !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
}

/* اسکرول افقی محدود به جدول */
#changelist .results {
    overflow-x: auto !important;
    width: 100% !important;
    display: block !important;
}

/* ==================== 5. اصلاح موقعیت سایدبار و بدنه (Jazzmin) ==================== */
.main-sidebar {
    position: fixed !important;
    right: 0 !important;
    left: auto !important;
    top: 0 !important;
    width: 260px !important;
    z-index: 1040 !important;
}

.content-wrapper {
    margin-right: 260px !important;
    margin-left: 0 !important;
    padding: 20px !important;
    width: auto !important;
    overflow-x: hidden !important;
}

.main-header {
    margin-right: 260px !important;
    margin-left: 0 !important;
    width: auto !important;
}

/* ==================== 6. متن‌های هدر مشکی و خوانا ==================== */
.navbar-nav .nav-link,
.navbar-brand,
.brand-text {
    color: #020202 !important;
    font-weight: 600 !important;
}

/* ==================== 7. رفع مشکلات ریسپانسیو ==================== */
@media (max-width: 768px) {
    #jazzy-navbar > .container-fluid > .navbar-nav:first-of-type {
        left: auto !important;
    }

    .navbar-nav.ml-auto {
        position: relative !important;
        left: auto !important;
        transform: none !important;
        justify-content: center !important;
        width: 100% !important;
    }
    
    .content-wrapper {
        margin-right: 0 !important;
        margin-left: 0 !important;
        width: 100% !important;
    }

    .main-sidebar {
        position: relative !important;
        right: auto !important;
        left: auto !important;
        top: auto !important;
        width: 100% !important;
        min-height: 0 !important;
    }

    .main-sidebar .sidebar {
        min-height: 0 !important;
    }

    .main-header {
        margin-right: 0 !important;
        margin-left: 0 !important;
        width: 100% !important;
    }
}

/* ==================== 8. حذف ریشه‌ای و کامل فوتر ==================== */
footer.main-footer,
.main-footer,
div[class*="main-footer"],
footer {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    line-height: 0 !important;
}

/* حذف فضا و حاشیه خالی پایین صفحه بعد از حذف فوتر */
.wrapper, 
body, 
.content-wrapper {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

/* ==================== 9. مهار قطعی اسکرول افقی صفحه ==================== */
#changelist-form #toolbar,
#changelist-search,
.changelist-form-container form > .row,
#changelist-filter form,
.actions {
    flex-wrap: wrap !important;
    max-width: 100% !important;
}

#changelist, .results, #result_list {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

div.actions {
    width: 100% !important;
    overflow: hidden !important;
}

/* ==================== 10. هماهنگی با تم Flask (teal / navy) ==================== */
:root {
    --mec-navy: #163c4a;
    --mec-teal: #087f78;
    --mec-mint: #dff3ec;
    --mec-orange: #eb8957;
    --mec-paper: #f5f7f5;
}

body, .wrapper, .content-wrapper {
    background-color: var(--mec-paper) !important;
    font-family: Vazirmatn, Tahoma, sans-serif !important;
}

/* برند و هدر سایدبار */
.brand-link {
    background-color: var(--mec-navy) !important;
    color: #fff !important;
    border-bottom: 1px solid #285b65 !important;
}
.brand-link .brand-text, .brand-link .brand-image {
    color: #fff !important;
    background: transparent !important;
}

/* سایدبار تیره هماهنگ با Flask */
.main-sidebar, .sidebar-dark-navy, .sidebar {
    background-color: var(--mec-navy) !important;
}
.sidebar .nav-link, .nav-sidebar .nav-item .nav-link {
    color: #b8ceca !important;
}
.sidebar .nav-link:hover,
.sidebar .nav-link.active,
.sidebar .nav-item.menu-open > .nav-link {
    background-color: #285b65 !important;
    color: #fff !important;
    border-right: 3px solid var(--mec-orange) !important;
}
.sidebar .nav-link i {
    color: #9db9b8 !important;
}
.sidebar .nav-header {
    color: #7a9a98 !important;
}

/* هدر بالای صفحه */
.main-header.navbar {
    background: #fff !important;
    border-bottom: 1px solid #e3e9e9 !important;
}
.main-header .nav-link {
    color: var(--mec-navy) !important;
}

/* دکمه‌های اصلی */
.btn-primary, .btn-info {
    background-color: var(--mec-teal) !important;
    border-color: var(--mec-teal) !important;
}
.btn-primary:hover {
    background-color: #06665f !important;
}

/* کارت‌های داشبورد */
.small-box, .info-box {
    border-radius: 12px !important;
}
.small-box.bg-info, .small-box.bg-primary {
    background-color: var(--mec-teal) !important;
}

/* تیتر صفحات */
.content-header h1, .card-title {
    color: var(--mec-navy) !important;
    font-weight: 700 !important;
}

/* جدول */
#result_list thead th {
    background: var(--mec-mint) !important;
    color: var(--mec-navy) !important;
}

/* ==========================================================
   بخش اضافه‌شده: اصلاحات مخصوص admin_panel.html
   (پنل اتحادیه - بدون Jazzmin)
   ========================================================== */

/* ==================== A. ساختار کلی پنل اتحادیه ==================== */
.admin-shell {
    display: flex !important;
    min-height: 100vh !important;
    direction: rtl !important;
}

.admin-side {
    width: 245px !important;
    background: #163c4a !important;
    color: #fff !important;
    padding: 28px 20px !important;
    display: flex !important;
    flex-direction: column !important;
    flex-shrink: 0 !important;
}

.admin-brand {
    font-size: 22px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    margin: 8px 10px 54px !important;
}

.admin-brand small {
    display: block !important;
    color: #a9c2c0 !important;
    font-size: 11px !important;
    letter-spacing: 0 !important;
    margin-top: 6px !important;
}

.admin-nav {
    display: grid !important;
    gap: 7px !important;
}

.admin-nav button {
    color: #b8ceca !important;
    background: none !important;
    border: 0 !important;
    text-align: right !important;
    padding: 12px 14px !important;
    border-radius: 9px !important;
    font: inherit !important;
    font-size: 13px !important;
    cursor: pointer !important;
    font-family: Vazirmatn, Tahoma, sans-serif !important;
}

.admin-nav button.active,
.admin-nav button:hover {
    background: #285b65 !important;
    color: #fff !important;
}

.admin-user {
    margin-top: auto !important;
    border-top: 1px solid #3c6670 !important;
    padding: 18px 10px !important;
    font-size: 12px !important;
    color: #c9dcda !important;
}

.admin-main {
    flex: 1 !important;
    padding: 34px 5% !important;
    max-width: 1500px !important;
    background: #f3f6f5 !important;
    overflow-x: hidden !important;
}

/* ==================== B. هدر پنل اتحادیه ==================== */
.admin-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: end !important;
    margin-bottom: 28px !important;
    direction: rtl !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}

.admin-header h1 {
    font-size: 28px !important;
    margin: 0 !important;
    color: #163c4a !important;
}

.admin-header .toolbar {
    display: flex !important;
    flex-direction: row !important;
    gap: 10px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
}

.admin-header .toolbar button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 100px !important;
    white-space: nowrap !important;
}

.logout,
.secondary {
    border: 1px solid #d7e2e0 !important;
    background: #fff !important;
    color: #526a70 !important;
    border-radius: 8px !important;
    padding: 9px 14px !important;
    font: inherit !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    font-family: Vazirmatn, Tahoma, sans-serif !important;
}

.logout {
    background: #fff !important;
    color: #a4412e !important;
    border: 1px solid #f0c8c0 !important;
}

.logout:hover {
    background: #fff0ed !important;
}

/* ==================== C. کارت‌های آماری پنل اتحادیه ==================== */
.stat-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 14px !important;
    margin-bottom: 20px !important;
}

.stat-card {
    background: #fff !important;
    border: 1px solid #e1e9e7 !important;
    border-radius: 13px !important;
    padding: 20px !important;
    cursor: pointer !important;
}

.stat-card:hover {
    border-color: #087f78 !important;
}

.stat-card span {
    font-size: 12px !important;
    color: #71808b !important;
}

.stat-card strong {
    display: block !important;
    font-size: 30px !important;
    margin-top: 8px !important;
    color: #163c4a !important;
}

.workshop-filters {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 16px !important;
}

.workshop-toolbar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    margin-bottom: 16px !important;
}

.workshop-toolbar .workshop-filters {
    margin: 0 !important;
}

.admin-search {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    width: min(100%, 340px) !important;
    min-height: 42px !important;
    padding: 0 12px !important;
    border: 1px solid #d7e1de !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #71808b !important;
    font-size: 20px !important;
    transition: border-color .18s ease, box-shadow .18s ease !important;
}

.admin-search:focus-within {
    border-color: #087f78 !important;
    box-shadow: 0 0 0 3px #087f781a !important;
}

.admin-search input {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 38px !important;
    padding: 6px 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: #17202a !important;
    font: 13px/1.5 Vazirmatn, Tahoma, sans-serif !important;
}

.admin-search input::placeholder {
    color: #8a999e !important;
}

.rates-list-title {
    align-items: center !important;
}

.workshop-filter {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 40px !important;
    padding: 8px 16px !important;
    border: 1px solid #d7e1de !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #52646b !important;
    font: 600 13px/1.4 Vazirmatn, Tahoma, sans-serif !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease !important;
}

.workshop-filter.active,
.workshop-filter:hover {
    border-color: #087f78 !important;
    background: #e5f4ef !important;
    color: #087f78 !important;
}

.workshop-filter:hover {
    box-shadow: 0 3px 10px #087f781a !important;
    transform: translateY(-1px) !important;
}

.workshop-filter:focus-visible {
    outline: 3px solid #087f7833 !important;
    outline-offset: 2px !important;
}

@media (max-width: 480px) {
    .workshop-toolbar {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .workshop-filters {
        gap: 6px !important;
    }

    .admin-search {
        width: 100% !important;
    }

    .workshop-filter {
        flex: 1 1 auto !important;
        padding-inline: 11px !important;
        font-size: 12px !important;
    }

    .rates-list-title {
        align-items: stretch !important;
        flex-direction: column !important;
    }
}

/* ==================== D. پنل‌ها و جداول پنل اتحادیه ==================== */
.admin-panel {
    background: #fff !important;
    border: 1px solid #e1e9e7 !important;
    border-radius: 13px !important;
    padding: 22px !important;
}

.panel-title {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 16px !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
}

.panel-title h2,
.panel-title h3 {
    font-size: 18px !important;
    margin: 0 !important;
    color: #163c4a !important;
}

.table-wrap {
    overflow: auto !important;
}

.data-table {
    width: 100% !important;
    border-collapse: collapse !important;
    font-size: 13px !important;
    min-width: 680px !important;
    direction: rtl !important;
}

.data-table th {
    text-align: right !important;
    color: #71808b !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    border-bottom: 1px solid #e3e9e9 !important;
    padding: 10px !important;
}

.data-table td {
    border-bottom: 1px solid #edf1f0 !important;
    padding: 13px 10px !important;
    vertical-align: middle !important;
}

.data-table tr:last-child td {
    border: 0 !important;
}

/* ==================== E. وضعیت‌ها و دکمه‌های عملیات ==================== */
.status {
    display: inline-block !important;
    padding: 5px 9px !important;
    border-radius: 20px !important;
    font-size: 11px !important;
}

.status.pending {
    background: #fff0e5 !important;
    color: #b96237 !important;
}

.status.approved {
    background: #dff3ec !important;
    color: #087f78 !important;
}

.status.rejected {
    background: #fff0ed !important;
    color: #a4412e !important;
}

.action {
    border: 0 !important;
    border-radius: 6px !important;
    padding: 7px 10px !important;
    font: inherit !important;
    font-size: 11px !important;
    cursor: pointer !important;
    background: #e7f1ef !important;
    color: #087f78 !important;
    font-family: Vazirmatn, Tahoma, sans-serif !important;
}

.action.reject {
    background: #fff0ed !important;
    color: #a4412e !important;
}

.empty {
    text-align: center !important;
    color: #71808b !important;
    padding: 35px !important;
}

/* ==================== F. فرم‌ها و مودال‌های پنل اتحادیه ==================== */
.form-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 13px !important;
}

.form-grid label,
.modal-card label {
    display: grid !important;
    gap: 6px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    font-family: Vazirmatn, Tahoma, sans-serif !important;
}

.form-grid input,
.form-grid select,
.modal-card input,
.modal-card select {
    border: 1px solid #d5dfde !important;
    border-radius: 8px !important;
    padding: 10px !important;
    font: inherit !important;
    background: #fff !important;
    font-family: Vazirmatn, Tahoma, sans-serif !important;
}

.modal {
    position: fixed !important;
    inset: 0 !important;
    background: #102c3344 !important;
    display: grid !important;
    place-items: center !important;
    z-index: 5 !important;
}

.modal-card {
    background: #fff !important;
    border-radius: 14px !important;
    padding: 25px !important;
    width: min(620px, 92vw) !important;
}

.modal-card h2 {
    margin-top: 0 !important;
    color: #163c4a !important;
}

.modal-card form {
    display: grid !important;
    gap: 13px !important;
}

.modal-actions {
    display: flex !important;
    gap: 8px !important;
    justify-content: flex-start !important;
}

.message {
    margin-top: 14px !important;
    padding: 10px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-family: Vazirmatn, Tahoma, sans-serif !important;
}

.message.error {
    background: #fff0ed !important;
    color: #a4412e !important;
}

.hidden {
    display: none !important;
}

/* ==================== G. ریسپانسیو پنل اتحادیه ==================== */
@media (max-width: 850px) {
    .admin-shell {
        display: block !important;
    }
    .admin-side {
        width: 100% !important;
        padding: 18px !important;
    }
    .admin-brand {
        margin: 5px 10px 20px !important;
    }
    .admin-nav {
        display: flex !important;
        overflow: auto !important;
    }
    .admin-user {
        display: none !important;
    }
    .admin-main {
        padding: 24px 16px !important;
    }
    .stat-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .form-grid {
        grid-template-columns: 1fr !important;
    }
}

/* ==================== H. اصلاحات نهایی هدر و تولبار ==================== */
.admin-header .toolbar {
    display: flex !important;
    flex-direction: row !important;
    gap: 10px !important;
    align-items: center !important;
    justify-content: flex-start !important;
}

.admin-header .toolbar button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 100px !important;
    white-space: nowrap !important;
}

/* رفع مشکل دکمه خروج */
.logout {
    background: #fff !important;
    color: #a4412e !important;
    border: 1px solid #f0c8c0 !important;
}

.logout:hover {
    background: #fff0ed !important;
}
/* ==================== اولویت مطلق برای هدر admin_panel ==================== */
.admin-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 28px !important;
    direction: rtl !important;
    flex-wrap: wrap !important;
    gap: 15px !important;
}

.admin-header > div:first-child {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
    order: 1 !important;
}

.admin-header .toolbar {
    display: flex !important;
    flex-direction: row !important;
    gap: 10px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    order: 2 !important;
    margin-right: auto !important;
}

.admin-header .toolbar button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 110px !important;
    height: 40px !important;
    white-space: nowrap !important;
    font-size: 13px !important;
    padding: 0 16px !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    font-family: Vazirmatn, Tahoma, sans-serif !important;
}

#profile-btn {
    background: #fff !important;
    color: #526a70 !important;
    border: 1px solid #d7e2e0 !important;
}

#profile-btn:hover {
    background: #f0f5f4 !important;
    border-color: #087f78 !important;
    color: #087f78 !important;
}

#logout {
    background: #fff !important;
    color: #a4412e !important;
    border: 1px solid #f0c8c0 !important;
}

#logout:hover {
    background: #fff0ed !important;
    border-color: #a4412e !important;
}
