/* بوابة الدفع: التنسيق المشترك لكل صفحات ولي الأمر
   ألوان المدرسة من --pgw-primary / --pgw-secondary (تُعرَّف فى _Layout من قاعدة البيانات) */
/* ألوان دلالية ثابتة + لون المدرسة من --pgw-primary / --pgw-secondary */
:root {
    --pgw-fee: #64748b;    /* رمادي أزرق */
    --pgw-disc: #10b981;   /* أخضر زمردي */
    --pgw-paid: #0ea5e9;   /* أزرق سماوي */
    --pgw-tint: color-mix(in srgb, var(--pgw-primary) 8%, #fff);
}

/* ===== عام (نُقل من _Layout.cshtml): الخط، الرأس، الزر الأساسي، هوية المطوّر ===== */
body { font-family: "Segoe UI", Tahoma, Arial, sans-serif; background: #f5f7f8; }
.pgw-header { background: var(--pgw-primary); color: #fff; }
.pgw-header img { max-height: 48px; }
/* زر الموقع: كل الحالات من لون المدرسة عبر متغيرات Bootstrap 5.3 */
.btn-pgw {
    --pgw-primary-dark: color-mix(in srgb, var(--pgw-primary) 80%, #000);
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--pgw-primary);
    --bs-btn-border-color: var(--pgw-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--pgw-primary-dark);
    --bs-btn-hover-border-color: var(--pgw-primary-dark);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--pgw-primary-dark);
    --bs-btn-active-border-color: var(--pgw-primary-dark);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--pgw-primary);
    --bs-btn-disabled-border-color: var(--pgw-primary);
    --bs-btn-disabled-opacity: .5;
}
.btn-pgw:focus-visible { box-shadow: 0 0 0 .25rem color-mix(in srgb, var(--pgw-primary) 35%, transparent); }
.pgw-accent { color: var(--pgw-secondary); }
.pgw-vendor { color: #64748b; }
.pgw-vendor strong { color: var(--pgw-primary); }
.pgw-vendor a { color: var(--pgw-primary); font-weight: 600; text-decoration: none; }
.pgw-vendor a:hover { text-decoration: underline; }

.pgw-amount { color: var(--pgw-primary); }

/* رأس الصفحة */
.pgw-hero {
    background: linear-gradient(120deg,
        color-mix(in srgb, var(--pgw-primary) 14%, #fff),
        color-mix(in srgb, var(--pgw-secondary) 16%, #fff));
}
.pgw-chip { background: rgba(255,255,255,.75); border-radius: .9rem; padding: .45rem .9rem; backdrop-filter: blur(4px); }

/* الأبناء */
.pgw-accordion { --bs-accordion-border-color: transparent; --bs-accordion-border-radius: 1rem; --bs-accordion-inner-border-radius: 1rem; }
.pgw-accordion .accordion-item { border-radius: 1rem !important; margin-bottom: .75rem; overflow: hidden; box-shadow: 0 .125rem .5rem rgba(15,23,42,.06); }
.pgw-accordion .accordion-button:not(.collapsed) { background: var(--pgw-tint); color: inherit; box-shadow: none; }
.pgw-accordion .accordion-button:focus { box-shadow: none; }
.pgw-avatar {
    width: 2rem; height: 2rem; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center;
    color: #fff; font-weight: 700; font-size: .95rem;
    background: linear-gradient(135deg, var(--pgw-primary), color-mix(in srgb, var(--pgw-primary) 55%, var(--pgw-secondary)));
}
.pgw-pill { background: color-mix(in srgb, var(--pgw-primary) 12%, #fff); color: color-mix(in srgb, var(--pgw-primary) 85%, #000); font-weight: 600; }

/* بطاقة البند */
.pgw-item { background: #fff; border: 1px solid #e9edf1; border-inline-start: 4px solid #e9edf1; transition: all .2s ease; }
.pgw-item:hover { box-shadow: 0 .25rem .75rem rgba(15,23,42,.07); }
.pgw-item-on { border-color: color-mix(in srgb, var(--pgw-primary) 35%, #fff); border-inline-start-color: var(--pgw-primary); background: color-mix(in srgb, var(--pgw-primary) 3%, #fff); }

/* الأرقام */
.pgw-stat { --c: var(--pgw-fee); background: color-mix(in srgb, var(--c) 9%, #fff); border-radius: .8rem; padding: .55rem .35rem; }
.pgw-stat-label { font-size: .78rem; color: color-mix(in srgb, var(--c) 75%, #fff); }
.pgw-stat-value { font-weight: 700; color: color-mix(in srgb, var(--c) 80%, #000); }
.pgw-stat-disc { --c: var(--pgw-disc); }
.pgw-stat-paid { --c: var(--pgw-paid); }
.pgw-stat-due  { --c: var(--pgw-primary); background: color-mix(in srgb, var(--pgw-primary) 13%, #fff); }

/* حقل المبلغ */
.pgw-amt-group .form-control:focus { border-color: var(--pgw-primary); box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--pgw-primary) 18%, transparent); }
.pgw-amt-group .form-control:disabled { background: #f6f8f9; }
.pgw-amt-group .input-group-text { background: #f6f8f9; }
.pgw-amt-group .form-control { font-weight: 600; }

/* زر "كامل المتبقي": خلفية ملونة خفيفة + حد واضح = يبدو زرًا */
.pgw-btn-soft {
    --bs-btn-color: color-mix(in srgb, var(--pgw-primary) 85%, #000);
    --bs-btn-bg: color-mix(in srgb, var(--pgw-primary) 10%, #fff);
    --bs-btn-border-color: color-mix(in srgb, var(--pgw-primary) 30%, #fff);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--pgw-primary);
    --bs-btn-hover-border-color: var(--pgw-primary);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--pgw-primary);
    --bs-btn-active-border-color: var(--pgw-primary);
    font-weight: 600; white-space: nowrap; display: inline-flex; align-items: center; justify-content: center; gap: .35rem;
}

/* زر السلة: ممتلئ بلون المدرسة، ويتحول لأحمر هادئ بعد الإضافة (إزالة) */
.pgw-btn-cart {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--pgw-primary);
    --bs-btn-border-color: var(--pgw-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: color-mix(in srgb, var(--pgw-primary) 80%, #000);
    --bs-btn-hover-border-color: color-mix(in srgb, var(--pgw-primary) 80%, #000);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: color-mix(in srgb, var(--pgw-primary) 80%, #000);
    --bs-btn-active-border-color: color-mix(in srgb, var(--pgw-primary) 80%, #000);
    font-weight: 600; white-space: nowrap; display: inline-flex; align-items: center; justify-content: center; gap: .4rem;
    box-shadow: 0 .2rem .5rem color-mix(in srgb, var(--pgw-primary) 25%, transparent);
}
.pgw-btn-cart.is-in {
    --bs-btn-color: #b42318; --bs-btn-bg: #fef3f2; --bs-btn-border-color: #fecdca;
    --bs-btn-hover-color: #fff; --bs-btn-hover-bg: #d92d20; --bs-btn-hover-border-color: #d92d20;
    --bs-btn-active-color: #fff; --bs-btn-active-bg: #b42318; --bs-btn-active-border-color: #b42318;
    box-shadow: none;
}
.pgw-btn-cart.is-in .pgw-ico-add { display: none; }
.pgw-incart { background: color-mix(in srgb, var(--pgw-primary) 14%, #fff); color: color-mix(in srgb, var(--pgw-primary) 85%, #000); }
#cartList .pgw-remove { border: 0; background: none; color: #98a2b3; padding: 0 .25rem; line-height: 1; font-size: 1.1rem; }
#cartList .pgw-remove:hover { color: #d92d20; }

/* الأقساط */
.pgw-inst { --bs-table-bg: transparent; }
.pgw-inst thead th { background: var(--pgw-tint); color: #334155; font-weight: 600; border-bottom: 0; }
.pgw-inst td { border-color: #eef1f4; }

/* السلة والمراجعة */
.pgw-cart-head { color: #fff; background: linear-gradient(120deg, var(--pgw-primary), color-mix(in srgb, var(--pgw-primary) 60%, var(--pgw-secondary))); }
.pgw-total { background: var(--pgw-tint); }
#cartList li { padding-inline-start: .9rem; position: relative; }
#cartList li::before { content: ""; position: absolute; inset-inline-start: 0; top: .5rem; width: .4rem; height: .4rem; border-radius: 50%; background: var(--pgw-secondary); }
.pgw-review { border-top: 4px solid var(--pgw-primary) !important; }
@media (min-width: 992px) { .pgw-cart { position: sticky; top: 1rem; } }

/* ===== الداشبورد ===== */
.pgw-cat { border-radius: 1rem !important; border-top: 4px solid var(--pgw-primary) !important; transition: transform .15s ease, box-shadow .15s ease; }
.pgw-cat:not(.pgw-cat-off):hover { transform: translateY(-2px); box-shadow: 0 .5rem 1.25rem rgba(15,23,42,.08) !important; }
.pgw-cat-off { border-top-color: #d0d5dd !important; background: #fafbfb; }
.pgw-cat-icon {
    width: 2.5rem; height: 2.5rem; border-radius: .8rem; display: inline-flex; align-items: center; justify-content: center;
    background: color-mix(in srgb, var(--pgw-primary) 12%, #fff); color: var(--pgw-primary);
}
.pgw-cat-off .pgw-cat-icon { background: #f2f4f7; color: #98a2b3; }

/* ===== الديون القديمة ===== */
.pgw-year { background: color-mix(in srgb, var(--pgw-secondary) 22%, #fff); color: color-mix(in srgb, var(--pgw-secondary) 45%, #000); font-weight: 600; }

/* ===== مراجعة السداد: تمييز سطور كل ابن ===== */
.pgw-review-table { --bs-table-bg: transparent; }
.pgw-review-table tbody + tbody { border-top: 2px solid color-mix(in srgb, var(--pgw-primary) 25%, #fff); }
.pgw-review-table .pgw-grp-a { background: color-mix(in srgb, var(--pgw-primary) 6%, #fff); }
.pgw-review-table .pgw-grp-b { background: color-mix(in srgb, var(--pgw-secondary) 10%, #fff); }
.pgw-review-table .pgw-grp-name { vertical-align: middle; white-space: nowrap; border-inline-end: 1px solid rgba(15,23,42,.06); }
.pgw-review-table .pgw-grp-sub td { border-top: 1px dashed rgba(15,23,42,.15); }
.pgw-review-total td { background: var(--pgw-tint); border-top: 2px solid var(--pgw-primary); font-size: 1.05rem; }
.pgw-avatar-sm { width: 1.6rem; height: 1.6rem; font-size: .8rem; margin-inline-end: .35rem; }

/* ===== نتيجة الدفع والإيصال ===== */
.pgw-result { --c: var(--pgw-primary); background: color-mix(in srgb, var(--c) 10%, #fff); border: 1px solid color-mix(in srgb, var(--c) 25%, #fff); }
.pgw-result-ok      { --c: #12b76a; }
.pgw-result-warn    { --c: #f79009; }
.pgw-result-fail    { --c: #f04438; }
.pgw-result-neutral { --c: #667085; }
.pgw-result-icon {
    width: 3.5rem; height: 3.5rem; border-radius: 50%; margin: 0 auto; display: flex; align-items: center; justify-content: center;
    font-size: 1.6rem; font-weight: 700; color: #fff; background: var(--c);
    box-shadow: 0 .4rem 1rem color-mix(in srgb, var(--c) 35%, transparent);
}
@media print {
    header, footer, .d-print-none, .pgw-result { display: none !important; }
    body { background: #fff !important; }
    .pgw-receipt { box-shadow: none !important; border: 1px solid #ddd !important; }
}

/* ===== إعادة التسجيل ===== */
.pgw-tabs .nav-link { border-radius: 999px; color: #475569; font-weight: 600; }
.pgw-tabs .nav-link.active { background: var(--pgw-primary); color: #fff; }
.pgw-lock { background: #fffaeb; border: 1px solid #fedf89; color: #93370d; }
.pgw-reg-item { background: #fafbfc; border: 1px solid #eef1f4; }
.pgw-reg-item:has(.pgw-amt.is-invalid) { border-color: #fda29b; background: #fffbfa; }
[data-reg-student].pgw-item-on .pgw-reg-item { border-color: color-mix(in srgb, var(--pgw-primary) 30%, #fff); background: color-mix(in srgb, var(--pgw-primary) 4%, #fff); }


/* ===== لوحة التحكم ===== */
.pgw-admin { background: #f2f4f6; }
.pgw-admin-main { min-width: 0; }

/* القائمة الجانبية: على الشاشة الكبيرة عمود ثابت، وعلى الجوال Offcanvas */
@media (min-width: 992px) {
    .pgw-side { width: 230px; flex-shrink: 0; position: sticky; top: 1rem; }
}
.pgw-side .nav-link {
    color: #344054; border-radius: .6rem; padding: .55rem .85rem; font-weight: 500;
    border-inline-start: 3px solid transparent;
}
.pgw-side .nav-link:hover { background: var(--pgw-tint); }
.pgw-side .nav-link.active {
    background: color-mix(in srgb, var(--pgw-primary) 12%, #fff);
    color: color-mix(in srgb, var(--pgw-primary) 85%, #000);
    border-inline-start-color: var(--pgw-primary); font-weight: 600;
}
.pgw-side .nav-link.disabled { color: #98a2b3; }
.pgw-soon { font-size: .7rem; background: #eaecf0; color: #667085; border-radius: 999px; padding: .1rem .5rem; }

/* صفحات الدخول وتعيين كلمة المرور */
.pgw-auth { max-width: 860px; }
.pgw-auth-narrow { max-width: 460px; }
.pgw-auth-brand {
    color: #fff;
    background: linear-gradient(160deg, var(--pgw-primary), color-mix(in srgb, var(--pgw-primary) 65%, #000));
}
.pgw-auth-mark {
    width: 3rem; height: 3rem; border-radius: .9rem; display: inline-grid; place-items: center;
    background: rgba(255,255,255,.15);
}
.pgw-captcha-input { max-width: 140px; }
.pgw-code-input { letter-spacing: .35em; font-weight: 600; font-size: 1.15rem; }

/* الرئيسية */
.pgw-site-row + .pgw-site-row { border-top: 1px solid #eef1f4; margin-top: 1rem; padding-top: 1rem; }

/* سجل الدفع */
.pgw-sum { background: #fff; border: 1px solid #e4e7ec; border-radius: 999px; padding: .3rem .85rem; color: #475467; }
.pgw-log thead th { background: var(--pgw-tint); color: #344054; font-weight: 600; font-size: .85rem; border-bottom: 0; white-space: nowrap; }
.pgw-log td { border-color: #eef1f4; }
.pgw-log tr.pgw-log-review > td { background: #fff8f6; }
.pgw-log tr.pgw-log-review > td:first-child { box-shadow: inset -3px 0 0 #f04438; }

/* تفاصيل العملية */
.pgw-dl dt { font-weight: 500; color: #667085; }
.pgw-dl dd { margin-bottom: .6rem; }
.pgw-steps li { position: relative; padding-inline-start: 1.6rem; padding-bottom: 1rem; }
.pgw-steps li:last-child { padding-bottom: 0; }
.pgw-steps li::before {
    content: ""; position: absolute; inset-inline-start: 0; top: .3rem;
    width: .8rem; height: .8rem; border-radius: 50%; border: 2px solid #d0d5dd; background: #fff;
}
.pgw-steps li:not(:last-child)::after {
    content: ""; position: absolute; inset-inline-start: calc(.4rem - 1px); top: 1.2rem; bottom: .1rem;
    width: 2px; background: #eaecf0;
}
.pgw-steps li.is-done::before { background: var(--pgw-primary); border-color: var(--pgw-primary); }
.pgw-steps li.is-failed::before { background: #f04438; border-color: #f04438; }
.pgw-note { background: #f8fafc; border-radius: .5rem; padding: .4rem .6rem; white-space: pre-line; }
.pgw-resolve { border-top: 4px solid #f79009 !important; }

/* الرئيسية: التنبيهات */
.pgw-alert-tile {
    --c: #12b76a;
    display: flex; align-items: center; gap: 1rem; height: 100%;
    padding: 1rem 1.15rem; border-radius: 1rem; text-decoration: none; color: #344054;
    background: #fff; border: 1px solid #eaecf0; border-inline-start: 4px solid var(--c);
}
.pgw-alert-tile:hover { box-shadow: 0 .25rem .75rem rgba(15,23,42,.07); color: #101828; }
.pgw-alert-tile .small { color: #667085; }
.pgw-alert-num {
    min-width: 2.75rem; height: 2.75rem; border-radius: .8rem; display: grid; place-items: center;
    font-size: 1.35rem; font-weight: 700;
    color: color-mix(in srgb, var(--c) 80%, #000); background: color-mix(in srgb, var(--c) 12%, #fff);
}
.pgw-alert-tile.is-danger  { --c: #f04438; background: #fffbfa; }
.pgw-alert-tile.is-warn    { --c: #f79009; background: #fffcf5; }
.pgw-alert-tile.is-neutral { --c: #98a2b3; }
.pgw-alert-tile.is-calm    { --c: #12b76a; }

/* الرئيسية: التحصيل */
.pgw-big { font-size: clamp(1.6rem, 3.2vw, 2.25rem); font-weight: 700; line-height: 1.2; }
.pgw-split { height: .6rem; border-radius: 999px; overflow: hidden; display: flex; background: var(--pgw-secondary); }
.pgw-split-web { width: var(--w); background: var(--pgw-primary); }
.pgw-dot { display: inline-block; width: .6rem; height: .6rem; border-radius: 50%; margin-inline-end: .35rem; vertical-align: middle; }
.pgw-dot-web { background: var(--pgw-primary); }
.pgw-dot-app { background: var(--pgw-secondary); }
.pgw-bar { height: .5rem; border-radius: 999px; background: #eef1f4; overflow: hidden; }
.pgw-bar > span { display: block; height: 100%; width: var(--w); background: var(--pgw-primary); border-radius: 999px; }

/* ===== مربعات الاختيار: إطار غامق واضح فى كل الشاشات (قرار 2026-10-13) ===== */
.form-check:not(.form-switch) { padding-inline-start: 1.9em; }
.form-check:not(.form-switch) > .form-check-input[type="checkbox"] {
    width: 1.3em; height: 1.3em; margin-inline-start: -1.9em; margin-top: .1em;
    border: 2px solid #344054; cursor: pointer;
}
.form-check:not(.form-switch) > .form-check-input[type="checkbox"]:checked {
    background-color: var(--pgw-primary); border-color: var(--pgw-primary);
}
.form-check:not(.form-switch) > .form-check-input[type="checkbox"]:focus-visible {
    border-color: var(--pgw-primary);
    box-shadow: 0 0 0 .25rem color-mix(in srgb, var(--pgw-primary) 30%, transparent);
}
.form-check-label { cursor: pointer; }

/* ===== إعدادات الفرع ===== */
.pgw-set-summary {
    --c: #12b76a;
    padding: 1rem 1.15rem; border-radius: 1rem; background: color-mix(in srgb, var(--c) 8%, #fff);
    border: 1px solid color-mix(in srgb, var(--c) 30%, #fff); border-inline-start: 4px solid var(--c);
}
.pgw-set-summary.is-warn   { --c: #f79009; }
.pgw-set-summary.is-danger { --c: #f04438; }
.pgw-set-summary.is-calm   { --c: #12b76a; }
.pgw-set-row { padding: .9rem 0; }
.pgw-set-row + .pgw-set-row { border-top: 1px solid #eef1f4; }
.pgw-set-msg { background: #fff8f6; border: 1px solid #fee4e2; border-radius: .75rem; padding: .75rem; }

/* المفاتيح (Switch): نفس قاعدة الوضوح - إطار غامق */
.pgw-switch.form-switch { padding-inline-start: 0; }
.pgw-switch .form-check-input[role="switch"] {
    width: 2.75em; height: 1.45em; border: 2px solid #344054; cursor: pointer; flex-shrink: 0;
}
.pgw-switch.form-switch:not(.d-flex) { padding-inline-start: 3.4em; }
.pgw-switch.form-switch:not(.d-flex) .form-check-input { margin-inline-start: -3.4em; }
.pgw-switch .form-check-input[role="switch"]:checked { background-color: #12b76a; border-color: #12b76a; }
.pgw-switch .form-check-input[role="switch"]:focus-visible { box-shadow: 0 0 0 .25rem rgba(18,183,106,.25); }
.pgw-switch-state { font-weight: 600; color: #067647; min-width: 3.2em; text-align: end; }
.pgw-switch-state.is-off { color: #b42318; }

.pgw-radio-card {
    display: flex; gap: .75rem; align-items: flex-start; cursor: pointer;
    padding: .65rem .8rem; border: 1px solid #e4e7ec; border-radius: .75rem; background: #fff;
}
.pgw-radio-card .form-check-input { margin: .2rem 0 0; flex-shrink: 0; border: 2px solid #344054; }
.pgw-radio-card:has(input:checked) { border-color: var(--pgw-primary); background: var(--pgw-tint); }
.pgw-radio-card .form-check-input:checked { background-color: var(--pgw-primary); border-color: var(--pgw-primary); }
.pgw-date-input { max-width: 200px; }

.pgw-savebar {
    position: sticky; bottom: 0; z-index: 10; margin-top: 1rem;
    display: flex; justify-content: flex-end; align-items: center; gap: 1rem;
    padding: .85rem 1rem; background: rgba(255,255,255,.95); backdrop-filter: blur(4px);
    border: 1px solid #eaecf0; border-radius: 1rem; box-shadow: 0 -.25rem 1rem rgba(15,23,42,.06);
}

/* ===== البنود أونلاين ===== */
.pgw-item-search { max-width: 260px; }
.pgw-items-switch { width: 5.5rem; }
.pgw-items tr.pgw-items-stopped > td { background: #fafbfc; }
.pgw-tag { font-size: .75rem; padding: .15rem .55rem; border-radius: 999px; background: #f2f4f7; color: #475467; white-space: nowrap; cursor: help; }

/* هوية الموقع: إطار معاينة بحجم ثابت مهما كان مقاس الصورة */
.pgw-media-row {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}

    .pgw-media-row > .flex-grow-1 {
        min-width: 0;
    }

.pgw-media-thumb {
    flex: 0 0 120px;
    width: 120px;
    height: 96px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px dashed var(--bs-border-color);
    border-radius: .75rem;
    background: #fff;
}

    .pgw-media-thumb.pgw-media-hero {
        flex-basis: 180px;
        width: 180px;
    }

    .pgw-media-thumb img {
        max-width: 100%;
        max-height: 100%;
        object-fit: contain;
    }

@media (max-width: 575.98px) {
    .pgw-media-row {
        flex-direction: column;
    }
}

@media (min-width: 992px) { .pgw-preview-wrap { position: sticky; top: 1rem; } }
.pgw-preview { border: 1px solid #eaecf0; background: #f5f7f8; }
.pgw-preview-header { background: var(--pgw-primary); color: #fff; padding: .6rem 1rem; display: flex; align-items: center; gap: .6rem; }
.pgw-preview-header img { max-height: 32px; max-width: 120px; object-fit: contain; }
.pgw-preview-hero { position: relative; height: 150px; }
.pgw-preview-hero img { width: 100%; height: 100%; object-fit: cover; }
.pgw-preview-hero-text {
    height: 100%; padding: 1.25rem; color: #fff; display: flex; flex-direction: column; justify-content: center;
    background: linear-gradient(135deg, var(--pgw-primary), #123);
}
.pgw-preview-accent { color: var(--pgw-secondary); font-weight: 700; }

/* ===== المستخدمون ===== */
.pgw-user-edit > td { background: var(--pgw-tint); padding: 1rem 1.25rem; }
.pgw-code-card {
    padding: 1.25rem; border-radius: 1rem; color: #0b4a6f;
    background: #f0f9ff; border: 1px solid #b9e6fe; border-inline-start: 4px solid #0ba5ec;
}
.pgw-code-digits {
    font-size: clamp(2rem, 6vw, 2.75rem); font-weight: 700; letter-spacing: .3em;
    font-variant-numeric: tabular-nums; margin: .75rem 0; color: #0c111d; user-select: all;
}

.pgw-user-sites { border-top: 1px solid color-mix(in srgb, var(--pgw-primary) 15%, #fff); padding-top: 1rem; }

/* ===== ولي الأمر: أضف الكل ===== */
.pgw-addall { background: #fff; border: 1px solid #e4e7ec; border-radius: 1rem; padding: .6rem .75rem; }
.pgw-addall [data-add-all] { display: inline-flex; align-items: center; gap: .4rem; }
.pgw-addall [data-add-all].is-in { background: #fef3f2; color: #b42318; border-color: #fecdca; }

/* ===== ولي الأمر: العرض المبسط / التفصيلي ===== */
#pgw-form.pgw-simple .pgw-detail { display: none !important; }
#pgw-form:not(.pgw-simple) .pgw-simple-only { display: none !important; }
.pgw-detail-btn { display: inline-flex; align-items: center; gap: .4rem; }
.pgw-detail-btn[aria-pressed="true"] { background: #f2f4f7; }
/* اللوحة: إعداد فرعي تحت مفتاح */
.pgw-set-sub { border-inline-start: 3px solid #eaecf0; padding-inline-start: .9rem; }

/* ===== ولي الأمر: اسم البند بخلفية بلون المدرسة (2026-10-14) ===== */
.pgw-item-name {
    display: inline-block; font-weight: 700; line-height: 1.4;
    padding: .3rem .8rem; border-radius: .6rem;
    color: color-mix(in srgb, var(--pgw-primary) 85%, #000);
    background: color-mix(in srgb, var(--pgw-primary) 14%, #fff);
    border-inline-start: 3px solid var(--pgw-primary);
}

/* ===== قوالب الرسائل ===== */
.min-w-0 { min-width: 0; }
.pgw-tpl-row { display: flex; gap: 1rem; align-items: center; padding: .85rem 0; border-top: 1px solid #eef1f4; }
.pgw-tpl-snippet { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pgw-tpl-body { font-size: .95rem; line-height: 1.7; }
.pgw-vars { background: var(--pgw-tint); border-radius: .75rem; padding: .75rem; }
/* معاينة بشكل فقاعة واتساب */
.pgw-wa-bubble {
    background: #dcf8c6; color: #111b21; border-radius: .9rem; border-start-end-radius: .2rem;
    padding: .9rem 1rem; white-space: pre-wrap; word-break: break-word; line-height: 1.7; font-size: .95rem;
    box-shadow: 0 1px 1px rgba(0,0,0,.08); min-height: 6rem;
}
.pgw-wa-img { display: block; width: 100%; max-height: 260px; object-fit: cover; border-radius: .6rem; margin-bottom: .6rem; }

/* ===== الحملات ===== */
.pgw-col-check { width: 2.5rem; }
.pgw-cand-wrap { max-height: 32rem; overflow-y: auto; }
.pgw-cand-wrap thead th { position: sticky; top: 0; background: #fff; z-index: 1; }
.pgw-msg-text { white-space: pre-wrap; word-break: break-word; font-size: .9rem; line-height: 1.7; background: #f8f9fa; border-radius: .6rem; padding: .75rem; margin: .5rem 0 0; }
.pgw-st-0 { background: #f1f3f5; color: #495057; }
.pgw-st-1 { background: #e7f1ff; color: #0b4a8b; }
.pgw-st-2 { background: #d1f2e0; color: #0f5132; }
.pgw-st-3 { background: #fff3cd; color: #664d03; }
.pgw-progress { height: .5rem; }
.pgw-search { max-width: 18rem; }
.pgw-media-logo { max-height: 64px; width: auto; }
.pgw-info-btn { border: 0; background: none; padding: 0 .25rem; color: var(--pgw-primary); vertical-align: middle; cursor: help; line-height: 1; }
.pgw-info-btn:focus-visible { outline: 2px solid var(--pgw-primary); border-radius: 50%; }

/* مربعات الاختيار: حد داكن وسميك فى كل الشاشات (قاعدة ثابتة)
   تشمل كل مربع اختيار أينما وُضع (داخل جدول أو نموذج أو بلا غلاف)، وتستثني المفاتيح (switch) */
input[type="checkbox"].form-check-input:not([role="switch"]) {
    width: 1.25em;
    height: 1.25em;
    border: 2px solid #1f2937;
    cursor: pointer;
}

    input[type="checkbox"].form-check-input:not([role="switch"]):checked {
        background-color: var(--pgw-primary);
        border-color: var(--pgw-primary);
    }

    input[type="checkbox"].form-check-input:not([role="switch"]):focus {
        border-color: var(--pgw-primary);
        box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--pgw-primary) 25%, transparent);
    }
/* ===== الحملات: صفوف لا يُرسل لها (أضِفه فى آخر wwwroot/css/pgw.css) ===== */
.pgw-log tr.pgw-cand-blocked > td {
    background: #fdecec;
}

.pgw-log tr.pgw-cand-blocked:hover > td {
    background: #fbe1e1;
}

.pgw-cand-reason {
    color: #b42318;
    font-weight: 600;
}

/* ===== لوحة السداد (2026-10-27): الأرقام هادئة، والحقل أوضح عنصر فى البند =====
   - الأرقام سطر واحد رمادي، والمتبقي فقط بلون المدرسة
   - الحقل والزر «تعبئة كامل المتبقي» داخل لوحة بلون المدرسة الخفيف، وحد الحقل 2px بلون المدرسة
   - زر السلة بلون أخضر ثابت فى كل المدارس (معنى واحد: «أضف»)، وبعد الإضافة يبقى الأحمر الهادئ للإزالة */
:root { --pgw-cart: #0f7a55; --pgw-cart-hover: #0b5e41; }

.pgw-stats-line { display: flex; flex-wrap: wrap; align-items: center; gap: .2rem .5rem; font-size: .85rem; color: #5b6472; }
.pgw-stats-line b { font-weight: 600; color: #2b313b; }
.pgw-stats-line .pgw-sep { color: #c3c9d0; }
.pgw-stats-due b { font-weight: 700; color: color-mix(in srgb, var(--pgw-primary) 85%, #000); }

.pgw-pay, .pgw-reg-item {
    background: color-mix(in srgb, var(--pgw-primary) 6%, #fff);
    border: 1px solid color-mix(in srgb, var(--pgw-primary) 30%, #fff);
    border-radius: .8rem;
}
.pgw-pay { padding: .8rem .9rem; }
.pgw-pay-label { display: flex; align-items: center; gap: .35rem; font-weight: 600; font-size: .9rem; margin-bottom: .5rem;
                 color: color-mix(in srgb, var(--pgw-primary) 80%, #000); }
.pgw-pay-row { display: flex; flex-wrap: wrap; gap: .5rem; align-items: flex-start; }
.pgw-pay-field { flex: 1 1 15rem; min-width: 0; }
.pgw-pay-btns { flex: 1 1 auto; display: flex; gap: .5rem; }
.pgw-pay-btns .btn { flex: 1 1 0; white-space: nowrap; padding-inline: 1rem; }
@media (max-width: 575.98px) {
    .pgw-pay-btns { flex-basis: 100%; min-width: 0; }
    .pgw-pay-btns .btn { min-width: 0; white-space: normal; padding-inline: .5rem; font-size: .95rem; }
}
.pgw-pay-hint { font-size: .8rem; margin-top: .45rem; color: color-mix(in srgb, var(--pgw-primary) 70%, #000); }

.pgw-amt-group .form-control { border: 2px solid var(--pgw-primary); background: #fff; font-size: 1.25rem; font-weight: 700; min-height: 3rem; }
.pgw-amt-group .input-group-text { border: 2px solid var(--pgw-primary); border-inline-start-width: 0; background: #fff; font-weight: 600;
                                   color: color-mix(in srgb, var(--pgw-primary) 80%, #000); }
.pgw-amt-group .form-control.is-invalid { border-color: #d92d20; }
.pgw-amt-group:has(.is-invalid) .input-group-text { border-color: #d92d20; }

.pgw-btn-fill {
    --bs-btn-color: color-mix(in srgb, var(--pgw-primary) 85%, #000);
    --bs-btn-bg: #fff;
    --bs-btn-border-color: var(--pgw-primary);
    --bs-btn-hover-color: #fff; --bs-btn-hover-bg: var(--pgw-primary); --bs-btn-hover-border-color: var(--pgw-primary);
    --bs-btn-active-color: #fff; --bs-btn-active-bg: color-mix(in srgb, var(--pgw-primary) 80%, #000); --bs-btn-active-border-color: var(--pgw-primary);
    border-width: 1.5px; font-weight: 600; min-height: 3rem;
    display: inline-flex; align-items: center; justify-content: center; gap: .4rem; line-height: 1.2;
}
.pgw-pay .pgw-btn-cart { min-height: 3rem; font-weight: 600; display: inline-flex; align-items: center; justify-content: center; gap: .4rem; line-height: 1.2; }
.pgw-btn-cart:not(.is-in) {
    --bs-btn-color: #fff; --bs-btn-bg: var(--pgw-cart); --bs-btn-border-color: var(--pgw-cart);
    --bs-btn-hover-color: #fff; --bs-btn-hover-bg: var(--pgw-cart-hover); --bs-btn-hover-border-color: var(--pgw-cart-hover);
    --bs-btn-active-color: #fff; --bs-btn-active-bg: var(--pgw-cart-hover); --bs-btn-active-border-color: var(--pgw-cart-hover);
}
