/* ==========================================================================
   ZanYar — Global Theme Polish
   Loaded AFTER bootstrap + app css. Refines the existing Minible template
   across every page (cards, buttons, tables, forms, sidebar, topbar…).
   Works in both light & dark modes and in RTL. Non-destructive: only visual.
   ========================================================================== */

:root {
    /* ── ZanYar fixed brand palette ───────────────────────────────
       #1E1E1C dark · #F8F8F6 off-white · #FAB937 gold (accent) · #D9D9D9 gray */
    --zp-primary: #FAB937;              /* accent — gold */
    --zp-primary-rgb: 250, 185, 55;
    --zp-primary-strong: #DCA330;       /* darker gold (gradients / hover) */
    --zp-primary-soft: rgba(250, 185, 55, .14);
    --zp-on-primary: #1E1E1C;           /* readable text ON a gold surface */

    --zp-dark: #1E1E1C;
    --zp-light: #F8F8F6;
    --zp-gray: #D9D9D9;

    /* Align Bootstrap's own primary so badges / text-primary / checkboxes /
       switches / links / spinners follow the gold accent too (whole system). */
    --bs-primary: #FAB937;
    --bs-primary-rgb: 250, 185, 55;
    --bs-link-color: #DCA330;
    --bs-link-color-rgb: 220, 163, 48;
    --bs-link-hover-color: #C6902A;

    --zp-radius-sm: 8px;
    --zp-radius: 12px;
    --zp-radius-lg: 16px;
    --zp-transition: .18s ease;
}

/* Per-theme surface + shadow tokens ------------------------------------- */
[data-bs-theme="light"],
:root:not([data-bs-theme="dark"]) {
    --zp-shadow: 0 2px 12px rgba(18, 38, 63, .06), 0 1px 2px rgba(18, 38, 63, .04);
    --zp-shadow-hover: 0 8px 24px rgba(18, 38, 63, .10);
    --zp-border: #D9D9D9;                 /* palette gray */
    --zp-hover-bg: rgba(30, 30, 28, .035);
    --zp-scroll: rgba(30, 30, 28, .20);
    --bs-body-bg: #F8F8F6;                /* palette off-white page canvas */
}

[data-bs-theme="dark"] {
    --zp-shadow: 0 2px 14px rgba(0, 0, 0, .28), 0 1px 2px rgba(0, 0, 0, .22);
    --zp-shadow-hover: 0 10px 28px rgba(0, 0, 0, .40);
    --zp-border: rgba(255, 255, 255, .09);
    --zp-hover-bg: rgba(255, 255, 255, .04);
    --zp-scroll: rgba(255, 255, 255, .16);
    --bs-body-bg: #1E1E1C;                /* palette dark page canvas */
}

/* Global smoothing ------------------------------------------------------- */
* {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    letter-spacing: .1px;
}

/* Cards ------------------------------------------------------------------ */
.card {
    border: 1px solid var(--zp-border);
    border-radius: var(--zp-radius) !important;
    box-shadow: var(--zp-shadow);
    transition: box-shadow var(--zp-transition), transform var(--zp-transition);
}

.card:hover {
    box-shadow: var(--zp-shadow-hover);
}

.card .card-header {
    background-color: transparent;
    border-bottom: 1px solid var(--zp-border);
    padding-top: 1rem;
    padding-bottom: 1rem;
    font-weight: 600;
}

.card .card-title {
    font-weight: 600;
    letter-spacing: .2px;
}

/* Buttons ---------------------------------------------------------------- */
.btn {
    border-radius: var(--zp-radius-sm);
    font-weight: 500;
    padding: .5rem 1.05rem;
    transition: transform var(--zp-transition), box-shadow var(--zp-transition), background-color var(--zp-transition), border-color var(--zp-transition);
}

.btn:hover {
    transform: translateY(-1px);
}

.btn:active {
    transform: translateY(0);
}

.btn-sm {
    border-radius: var(--zp-radius-sm);
    padding: .3rem .7rem;
}

.btn-primary {
    /* gold accent needs DARK text for readable contrast */
    --bs-btn-color: var(--zp-on-primary);
    --bs-btn-hover-color: var(--zp-on-primary);
    --bs-btn-active-color: var(--zp-on-primary);
    --bs-btn-disabled-color: var(--zp-on-primary);
    color: var(--zp-on-primary);
    background: linear-gradient(135deg, var(--zp-primary), var(--zp-primary-strong));
    border-color: var(--zp-primary-strong);
    box-shadow: 0 4px 12px rgba(var(--zp-primary-rgb), .28);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.btn-primary:disabled,
.btn-check:checked + .btn-primary,
.show > .btn-primary.dropdown-toggle {
    color: var(--zp-on-primary);
    background: linear-gradient(135deg, var(--zp-primary-strong), var(--zp-primary-strong));
    border-color: var(--zp-primary-strong);
    box-shadow: 0 6px 18px rgba(var(--zp-primary-rgb), .38);
}

.btn-rounded,
.rounded-pill.btn {
    border-radius: 50rem;
}

/* Focus ring ------------------------------------------------------------- */
.btn:focus-visible,
.form-control:focus,
.form-select:focus,
.form-check-input:focus {
    box-shadow: 0 0 0 .18rem rgba(var(--zp-primary-rgb), .25) !important;
    border-color: rgba(var(--zp-primary-rgb), .5) !important;
}

/* Forms ------------------------------------------------------------------ */
.form-control,
.form-select {
    border-radius: var(--zp-radius-sm);
    transition: border-color var(--zp-transition), box-shadow var(--zp-transition);
}

.form-label {
    font-weight: 500;
    margin-bottom: .4rem;
}

.input-group > .form-control,
.input-group > .form-select {
    border-radius: var(--zp-radius-sm);
}

/* Tables ----------------------------------------------------------------- */
.table {
    --bs-table-hover-bg: var(--zp-hover-bg);
}

.table > thead th {
    text-transform: uppercase;
    font-size: .74rem;
    letter-spacing: .5px;
    font-weight: 600;
    border-bottom-width: 1px;
    padding-top: .85rem;
    padding-bottom: .85rem;
}

.table > tbody > tr {
    transition: background-color var(--zp-transition);
}

.table > :not(caption) > * > * {
    padding-top: .7rem;
    padding-bottom: .7rem;
}

.table-responsive {
    border-radius: var(--zp-radius);
}

/* Report / list tables inside a card:
   sticky header (stays under the topbar), zebra striping, row hover.
   Uses theme-native card bg so it adapts to light & dark. */
.card .table-responsive {
    max-height: calc(100vh - 250px);
    border-radius: var(--zp-radius);
}

.card .table > thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background-color: var(--bs-card-bg, var(--bs-body-bg, #fff));
    box-shadow: inset 0 -1px 0 var(--zp-border);
}

.card .table > tbody > tr {
    transition: background-color var(--zp-transition);
}

.card .table > tbody > tr:nth-of-type(odd) > * {
    background-color: color-mix(in srgb, var(--zp-hover-bg) 60%, transparent);
}

.card .table > tbody > tr:hover > * {
    background-color: var(--zp-hover-bg);
}

/* Badges ----------------------------------------------------------------- */
.badge {
    border-radius: 50rem;
    font-weight: 600;
    padding: .35em .7em;
    letter-spacing: .2px;
}

/* Dropdowns, modals, popovers ------------------------------------------- */
.dropdown-menu {
    border: 1px solid var(--zp-border);
    border-radius: var(--zp-radius);
    box-shadow: var(--zp-shadow-hover);
    padding: .35rem;
}

.dropdown-item {
    border-radius: var(--zp-radius-sm);
    padding: .5rem .75rem;
}

.modal-content {
    border: 1px solid var(--zp-border);
    border-radius: var(--zp-radius-lg);
    box-shadow: var(--zp-shadow-hover);
    overflow: hidden;
}

.modal-header,
.modal-footer {
    border-color: var(--zp-border);
}

/* Pagination ------------------------------------------------------------- */
.pagination {
    gap: .25rem;
}

.page-link {
    border-radius: var(--zp-radius-sm) !important;
    border: 1px solid var(--zp-border);
    transition: background-color var(--zp-transition), color var(--zp-transition);
}

.page-item.active .page-link {
    color: var(--zp-on-primary);
    background: linear-gradient(135deg, var(--zp-primary), var(--zp-primary-strong));
    border-color: var(--zp-primary-strong);
}

/* Alerts ----------------------------------------------------------------- */
.alert {
    border-radius: var(--zp-radius);
    border: 1px solid var(--zp-border);
}

/* Topbar ----------------------------------------------------------------- */
#page-topbar {
    box-shadow: 0 1px 0 var(--zp-border), 0 2px 10px rgba(0, 0, 0, .04);
    backdrop-filter: saturate(180%) blur(6px);
}

.header-item {
    transition: background-color var(--zp-transition);
}

/* ==========================================================================
   Sidebar (vertical menu)
   ========================================================================== */
#sidebar-menu ul li a {
    border-radius: var(--zp-radius-sm);
    margin: 2px 10px;
    padding: .62rem .9rem;
    transition: background-color var(--zp-transition), color var(--zp-transition), box-shadow var(--zp-transition);
}

#sidebar-menu ul li a i {
    transition: color var(--zp-transition), transform var(--zp-transition);
}

#sidebar-menu ul li a:hover {
    background-color: var(--zp-hover-bg);
}

#sidebar-menu ul li a:hover i {
    transform: translateY(-1px);
}

/* Active item — soft pill with accent bar */
#sidebar-menu ul li a.active,
#sidebar-menu ul li.mm-active > a {
    background-color: var(--zp-primary-soft);
    color: var(--zp-primary) !important;
    font-weight: 600;
    box-shadow: inset 3px 0 0 0 var(--zp-primary);
}

html[dir="rtl"] #sidebar-menu ul li a.active,
html[dir="rtl"] #sidebar-menu ul li.mm-active > a {
    box-shadow: inset -3px 0 0 0 var(--zp-primary);
}

#sidebar-menu ul li a.active i,
#sidebar-menu ul li.mm-active > a i {
    color: var(--zp-primary) !important;
}

/* On a LIGHT sidebar the gold active-label is low-contrast → make the selected
   item's TEXT dark (icon + gold accent bar stay gold). Dark sidebar keeps gold. */
body[data-sidebar="light"] #sidebar-menu ul li a.active,
body[data-sidebar="light"] #sidebar-menu ul li.mm-active > a,
[data-bs-theme="light"] #sidebar-menu ul li a.active,
[data-bs-theme="light"] #sidebar-menu ul li.mm-active > a {
    color: #1E1E1C !important;
}

#sidebar-menu .menu-title {
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: .68rem;
    font-weight: 700;
    opacity: .55;
    padding: 1rem 1.5rem .4rem;
}

/* Page title box --------------------------------------------------------- */
.page-title-box {
    padding: 1rem 0 1.2rem;
}

.page-title-box h4,
.page-title-box .page-title {
    font-weight: 600;
    letter-spacing: .2px;
}

/* ==========================================================================
   Custom scrollbars
   ========================================================================== */
* {
    scrollbar-width: thin;
    scrollbar-color: var(--zp-scroll) transparent;
}

::-webkit-scrollbar {
    width: 9px;
    height: 9px;
}

::-webkit-scrollbar-track {
    background: transparent;
}

::-webkit-scrollbar-thumb {
    background-color: var(--zp-scroll);
    border-radius: 50rem;
    border: 2px solid transparent;
    background-clip: content-box;
}

::-webkit-scrollbar-thumb:hover {
    background-color: rgba(var(--zp-primary-rgb), .55);
    background-clip: content-box;
}

/* Nav pills / tabs ------------------------------------------------------- */
.nav-pills .nav-link.active {
    color: var(--zp-on-primary);
    background: linear-gradient(135deg, var(--zp-primary), var(--zp-primary-strong));
}

.nav-tabs .nav-link {
    border-radius: var(--zp-radius-sm) var(--zp-radius-sm) 0 0;
}

/* Progress bars ---------------------------------------------------------- */
.progress {
    border-radius: 50rem;
    height: .6rem;
}

.progress-bar {
    color: var(--zp-on-primary);
    background: linear-gradient(135deg, var(--zp-primary), var(--zp-primary-strong));
}

/* Any SOLID gold Bootstrap surface gets dark, readable text ------------- */
.bg-primary,
.badge.bg-primary,
.text-bg-primary,
.btn-primary.dropdown-toggle,
.list-group-item.active {
    color: var(--zp-on-primary) !important;
}

.list-group-item.active {
    background-color: var(--zp-primary);
    border-color: var(--zp-primary-strong);
}

/* Soft avatar / icon tiles get a bit rounder ---------------------------- */
.avatar-title {
    border-radius: var(--zp-radius);
}

/* Brand color switcher swatches ----------------------------------------- */
.zp-swatch {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, .65);
    box-shadow: 0 1px 4px rgba(0, 0, 0, .25);
    cursor: pointer;
    padding: 0;
    transition: transform var(--zp-transition), box-shadow var(--zp-transition);
}

.zp-swatch:hover {
    transform: scale(1.18);
    box-shadow: 0 3px 8px rgba(0, 0, 0, .35);
}

/* ==========================================================================
   Login / Auth page
   ========================================================================== */
.auth-full-page-content {
    position: relative;
}

.auth-content .welcome,
.auth-content h5 {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: .2px;
}

.auth-logo .logo-txt {
    font-size: 1.35rem;
    font-weight: 700;
    vertical-align: middle;
    margin-inline-start: .4rem;
}

.auth-page .form-control {
    padding: .7rem .9rem;
    border-radius: var(--zp-radius);
}

.auth-page .btn-primary {
    padding: .7rem;
    font-size: 1rem;
    border-radius: var(--zp-radius);
}

/* Language flags */
.auth-page .flag-pic {
    border-radius: 4px;
    transition: transform var(--zp-transition), box-shadow var(--zp-transition);
    box-shadow: 0 1px 4px rgba(0, 0, 0, .15);
}

.auth-page .flag-pic:hover {
    transform: translateY(-2px) scale(1.08);
    box-shadow: 0 4px 10px rgba(0, 0, 0, .25);
}

/* Captcha container */
.auth-page dnt-captcha {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    flex-wrap: wrap;
    justify-content: center;
}

.auth-page dnt-captcha img {
    border-radius: var(--zp-radius-sm);
    box-shadow: 0 2px 8px rgba(0, 0, 0, .12);
}

/* Right-side brand panel — rich gradient + soft glows instead of flat color */
.auth-bg {
    position: relative;
    overflow: hidden;
}

.auth-bg .bg-overlay.bg-primary {
    background: linear-gradient(135deg, #FAB937 0%, #FAB937 45%, #FAB937 100%) !important;
    opacity: 1;
}

.auth-bg .bg-overlay.bg-primary::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 20% 25%, rgba(255, 255, 255, .18), transparent 40%),
        radial-gradient(circle at 80% 80%, rgba(255, 255, 255, .12), transparent 45%);
    pointer-events: none;
}

/* Floating bubbles — smoother, glassier */
.auth-bg .bg-bubbles li {
    background: rgba(255, 255, 255, .10);
    border-radius: 30%;
    backdrop-filter: blur(1px);
}

/* ───────────────────────────────────────────────────────────────
   Select2 — فونتِ سایت
   select2.min.css روی .select2-container مقدارِ `font-family: sans-serif`
   می‌گذارد و Vazirmatn را دور می‌زند (به‌ویژه در placeholder دیده می‌شود).
   چون select2.min.css در بعضی ویوها بعد از این فایل لود می‌شود،
   inherit با !important گذاشته شده تا مستقل از ترتیبِ لود کار کند.
   .select2-dropdown به <body> چسبانده می‌شود، پس inherit همان فونتِ سایت را می‌گیرد.
   ─────────────────────────────────────────────────────────────── */
.select2-container,
.select2-container .select2-selection,
.select2-container .select2-selection__rendered,
.select2-container .select2-selection__placeholder,
.select2-container .select2-selection__choice,
.select2-container .select2-search__field,
.select2-dropdown,
.select2-results,
.select2-results__option {
    font-family: inherit !important;
}

/* ───────────────────────────────────────────────────────────────
   دۆخی «تەنها بینین» — لە حالتِ «هەموو لقەکان»
   کلاسِ zp-readonly را _Layout روی <body> می‌گذارد، ولی فقط در ۱۰ بخشِ
   سند (کڕین/فرۆشتن/گەڕانەوە/گواستنەوە/بەفیڕۆچوو/کاشێر/پسوولە/خەرجی).
   بقیهٔ صفحات (کاڵا، مشتری، لق، بەکارهێنەر …) دست‌نخورده‌اند.

   ⚠ این فقط ظاهر است. گاردِ واقعی ReadOnlyForAllBranchFilter در سرور است،
     پس حتی اگر کسی CSS را دور بزند، POST رد می‌شود.
   ─────────────────────────────────────────────────────────────── */

/*  ۱) دکمهٔ ثبتِ هر فرمِ POST  */
body.zp-readonly form[method="post"] [type="submit"] { display: none !important; }

/*  ۲) هر بازکنندهٔ مودال.
       بررسی شد: در این ۱۷ ویو هیچ مودالِ فقط‌خواندنی وجود ندارد — همه ویرایشگرند
       (مشتری، ئارز، داشکاندن، ڕێژە، نرخی دۆلار، کۆگا، جۆری پارەدان،
        پارەدانی ڕاستەوخۆ، ژمارەی پسوولە، دۆخی پسوولە، وەرگرتنی پسوولە …)  */
body.zp-readonly [data-bs-toggle="modal"] { display: none !important; }

/*  ۳) مدادهای ویرایشِ فیلدهای فاکتور  */
body.zp-readonly .inv-edit { display: none !important; }

/*  ۴) ردیفِ ورودیِ اکسل‌مانند و ستونِ کردار در جدولِ آیتم‌ها  */
body.zp-readonly tr.xl-entry-row,
body.zp-readonly .xl-actions2 { display: none !important; }

/*  ۵) کاشێر — سبد کاملاً با AJAX کار می‌کند، نه فرم  */
body.zp-readonly .pos-prod-card { pointer-events: none; opacity: .55; }
body.zp-readonly .qty-ctrl,
body.zp-readonly .act-pencil,
body.zp-readonly .act-trash,
body.zp-readonly .btn-disc-apply,
body.zp-readonly #txtBarCode,
body.zp-readonly #txtBarCode2 { display: none !important; }


/* ───────────────────────────────────────────────────────────────
   شاردنەوەی دوگمە بەپێی دەسەڵاتی کردار (فازی ٥)
   _Layout کلاسەکان دادەنێت: zp-no-add / zp-no-edit / zp-no-print / zp-no-delete
   تەنها کاتێک کە کلیدی session بۆ ئەو کردارە صریحاً منع‌شدەیە.

   ⚠ تەنها ڕووکەشە. کۆنترۆڵی سەرەکی OperationAccessFilter ـە لە سێرڤەر،
     بۆیە ئەگەر یەکێک CSS تێبپەڕێنێت، POST/چاپ لە سێرڤەر ڕەت دەکرێتەوە.
   ───────────────────────────────────────────────────────────────── */

/*  هوکەکان لە مارک‌آپی ڕاستەقینەی ویوەکانەوە وەرگیراون (بە grep پشتڕاست کرایەوە):
      شاردنی مۆداڵ:  data-bs-target ناوی add/edit/delete ی تێدایە (.modal-add-* / .bs-add-* …)
      کلاسی ڕاستەقینە: .xl-entry-row .inv-edit .act-pencil .act-trash .qty-ctrl .pos-prod-card
      چاپ: دوگمەی .fa-print ی تێدایە → بە :has() گرووپەکەی دەشارینەوە             */

/*  زیادکردن  */
body.zp-no-add tr.xl-entry-row,
body.zp-no-add .xl-actions2,
body.zp-no-add #txtBarCode,
body.zp-no-add #txtBarCode2,
body.zp-no-add [data-bs-target*="add" i] { display: none !important; }
body.zp-no-add .pos-prod-card { pointer-events: none; opacity: .55; }

/*  ویرایش  */
body.zp-no-edit .act-pencil,
body.zp-no-edit .inv-edit,
body.zp-no-edit .qty-ctrl,
body.zp-no-edit .btn-disc-apply,
body.zp-no-edit [data-bs-target*="edit" i] { display: none !important; }

/*  حذف  */
body.zp-no-delete .act-trash,
body.zp-no-delete [data-bs-target*="delete" i] { display: none !important; }

/*  چاپ — دوگمەی چاپ ناوەندی fa-print ـە؛ گرووپ یان دوگمەکەی خۆی دەشارینەوە.
    :has() لە هەموو وێبگەڕە نوێیەکاندا پشتگیری دەکرێت.                          */
body.zp-no-print .btn-group:has(.fa-print),
body.zp-no-print .btn:has(> .fa-print),
body.zp-no-print a:has(> .fa-print) { display: none !important; }


/* ───────────────────────────────────────────────────────────────
   تابلۆی دەستڕاگەیشتنی یەکگرتوو (فۆرمی بەکارهێنەر — فازی ٧)
   یەک تابلۆ لەبری کۆمبۆ + ماتریسی جیا.
   ─────────────────────────────────────────────────────────────── */
.zp-acc-toolbar {
    display: flex; align-items: center; justify-content: space-between;
    gap: 10px; margin-bottom: 8px;
}
.zp-acc-search { position: relative; flex: 1 1 auto; max-width: 320px; }
.zp-acc-search i {
    position: absolute; top: 50%; inset-inline-start: 12px; transform: translateY(-50%);
    color: var(--zp-muted, #9aa4b2); font-size: 13px; pointer-events: none;
}
.zp-acc-search input { padding-inline-start: 34px; height: 38px; border-radius: 8px; }
.zp-acc-count { font-size: 12px; color: var(--zp-muted, #9aa4b2); white-space: nowrap; }

.zp-acc-wrap {
    max-height: 340px; overflow: auto;
    border: 1px solid var(--zp-border, #e6e9ef); border-radius: 10px;
}
.zp-acc-table { margin: 0; font-size: 13px; }
.zp-acc-table thead th {
    position: sticky; top: 0; z-index: 2;
    background: var(--zp-head-bg, #f5f7fb);
    border-bottom: 1px solid var(--zp-border, #e6e9ef);
    text-align: center; vertical-align: middle; font-weight: 600;
    padding: 8px 6px; white-space: nowrap;
}
.zp-acc-table thead th span { display: block; font-size: 12px; }
.zp-acc-table thead .zp-acc-all { margin-top: 4px; cursor: pointer; }
.zp-acc-table th.zp-acc-name, .zp-acc-table td.zp-acc-name {
    text-align: start; width: auto; min-width: 160px; font-weight: 500;
}
.zp-acc-table th.zp-acc-op, .zp-acc-table td.zp-acc-op {
    width: 74px; text-align: center; vertical-align: middle;
}
.zp-acc-viewcol { background: var(--zp-view-bg, #eef4ff); }
.zp-acc-table td.zp-acc-op:first-of-type + td { }

.zp-acc-group td {
    background: var(--zp-group-bg, #eef1f8);
    font-weight: 700; font-size: 12px; color: var(--zp-group-fg, #43506b);
    padding: 8px 14px; text-align: start;
    border-bottom: 1px solid var(--zp-border, #e6e9ef);
    /*  دەمێنێتەوە کاتی سکڕۆڵ، دەچەسپێت لەژێر thead (بەرزی thead ≈ 50px؛
        پاشکۆی 8px بۆ سەلامەتی لە هەڵکشانی گونجاو).  */
    position: sticky; top: 50px; z-index: 1;
}
.zp-acc-row td { padding: 6px; border-top: 1px solid var(--zp-border, #eef1f5); }
.zp-acc-row:hover td { background: var(--zp-row-hover, #f7f9fc); }
.zp-acc-row input[type=checkbox] { width: 17px; height: 17px; cursor: pointer; }
.zp-acc-row input[type=checkbox]:disabled { opacity: .35; cursor: not-allowed; }
.zp-acc-na { color: var(--zp-muted, #c2c8d2); }
.zp-acc-view { accent-color: #3b7ddd; }

.zp-acc-empty { padding: 24px; text-align: center; color: var(--zp-muted, #9aa4b2); font-size: 13px; }

/*  «هەموو لقەکان» → تەنها ستوونی بینین، کردارەکان دەشاردرێنەوە  */
.zp-acc-table.zp-acc-viewonly th.zp-acc-op:not(.zp-acc-viewcol),
.zp-acc-table.zp-acc-viewonly td.zp-acc-op:not(.zp-acc-viewcol) { display: none; }

/*  دۆخی تاریک  */
@media (prefers-color-scheme: dark) {
    .zp-acc-wrap { border-color: #2b303b; }
    .zp-acc-table thead th { background: #232733; border-bottom-color: #2b303b; }
    .zp-acc-group td { background: #262b38; color: #aeb7c8; }
    .zp-acc-viewcol { background: #1f2a3d; }
    .zp-acc-row td { border-top-color: #262a34; }
    .zp-acc-row:hover td { background: #21262f; }
}
:root[data-theme="dark"] .zp-acc-wrap { border-color: #2b303b; }
:root[data-theme="dark"] .zp-acc-table thead th { background: #232733; border-bottom-color: #2b303b; }
:root[data-theme="dark"] .zp-acc-group td { background: #262b38; color: #aeb7c8; }
:root[data-theme="dark"] .zp-acc-viewcol { background: #1f2a3d; }
:root[data-theme="dark"] .zp-acc-row td { border-top-color: #262a34; }
:root[data-theme="dark"] .zp-acc-row:hover td { background: #21262f; }


/* ───────────────────────────────────────────────────────────────
   بلاکِ داشبورد + یادداشتِ مدیرِ کل (فۆرمی بەکارهێنەر — فازی ٧)
   ─────────────────────────────────────────────────────────────── */
.zp-acc-fullnote {
    display: flex; align-items: center; gap: 10px;
    padding: 14px 16px; border-radius: 10px;
    background: var(--zp-fullnote-bg, #eef6ff);
    border: 1px solid var(--zp-fullnote-bd, #cfe4ff);
    color: var(--zp-fullnote-fg, #2c5aa0); font-size: 13px; font-weight: 500;
}
.zp-acc-fullnote i { font-size: 16px; }

.zp-acc-dash {
    border: 1px solid var(--zp-border, #e6e9ef); border-radius: 10px;
    padding: 10px 12px; margin-bottom: 12px;
    background: var(--zp-dash-bg, #f9fbff);
}
.zp-acc-dash-title {
    font-size: 12px; font-weight: 700; color: var(--zp-group-fg, #43506b);
    margin-bottom: 8px; display: flex; align-items: center; gap: 6px;
}
.zp-acc-dash-title i { color: var(--zp-primary, #FAB937); }
.zp-acc-dash-items { display: flex; flex-wrap: wrap; gap: 8px; }
.zp-acc-dash-item {
    display: inline-flex; align-items: center; gap: 7px;
    padding: 7px 12px; border-radius: 8px; cursor: pointer; margin: 0;
    border: 1px solid var(--zp-border, #e2e6ee);
    background: var(--zp-card-bg, #fff); font-size: 13px; user-select: none;
    transition: border-color var(--zp-transition, .18s), background var(--zp-transition, .18s);
}
.zp-acc-dash-item:hover { border-color: var(--zp-primary, #FAB937); }
.zp-acc-dash-item input { width: 16px; height: 16px; cursor: pointer; margin: 0; }
.zp-acc-dash-item:has(input:checked) {
    border-color: var(--zp-primary, #FAB937);
    background: var(--zp-primary-soft, rgba(250, 185, 55,.10));
}

@media (prefers-color-scheme: dark) {
    .zp-acc-fullnote { background: #17263c; border-color: #244567; color: #9cc4f2; }
    .zp-acc-dash { background: #1e222c; border-color: #2b303b; }
    .zp-acc-dash-item { background: #232733; border-color: #2b303b; }
}
:root[data-theme="dark"] .zp-acc-fullnote { background: #17263c; border-color: #244567; color: #9cc4f2; }
:root[data-theme="dark"] .zp-acc-dash { background: #1e222c; border-color: #2b303b; }
:root[data-theme="dark"] .zp-acc-dash-item { background: #232733; border-color: #2b303b; }


/*  آیکونِ ردیفِ ویجتِ داشبورد در جدولِ مدیرِ کل  */
.zp-acc-dashicon { color: var(--zp-primary, #FAB937); font-size: 12px; margin-inline-end: 4px; }
.zp-acc-dashrow td.zp-acc-name { font-weight: 500; }


/* ==========================================================================
   Gold-accent contrast safety net
   The base template shipped WHITE text on the (purple→now gold) accent
   background. Gold is light, so those spots need DARK text to stay readable.
   ========================================================================== */

/*  آواتار پیش‌فرض (بدونِ کلاسِ رنگِ دیگر) — پس‌زمینهٔ طلایی + متنِ تیره  */
.avatar-title:not([class*="bg-"]) {
    color: var(--zp-on-primary) !important;
}

/*  سوییچ‌ها: وقتی روشن‌اند، متنِ روی طلایی تیره باشد  */
input[switch]:checked + label:before {
    color: var(--zp-on-primary) !important;
}

/*  دیتاپیکر / ویزارد / تایم‌لاین / چت — حالتِ انتخاب/فعال روی طلایی  */
.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected:hover,
.twitter-bs-wizard .twitter-bs-wizard-nav .nav-item .nav-link.done .step-icon,
.twitter-bs-wizard .twitter-bs-wizard-nav .nav-item .nav-link.active .step-icon,
.chat-conversation .conversation-list .ctext-wrap .ctext-wrap-content,
.timeline .timeline-year p {
    color: var(--zp-on-primary) !important;
}
