/* =====================================================================
   hasobN.css — شكل الصفحات الجديدة (MasterN) فوق AdminLTE 3.2 RTL
   - نفس فكرة لوحة تحكم المنصة التعليمية: خلفية فاتحة، كروت بيضا بزوايا ناعمة،
     قايمة جانبية بيضا بأيقونات، أزرار وشارات ناعمة.
   - الترتيب في الماستر: adminlte.rtl.min.css ← fontawesome ← Cairo ← الملف ده (يجب ان يبقى آخر واحد).
   - الألوان كلها من المتغيرات تحت. لتغيير اللون الأساسي غيّر --c-primary بس.
   - القيم أرقام RGB علشان الشفافية: rgb(var(--c-primary) / .1)
   ===================================================================== */

:root {
    --c-page: 244 246 250;
    --c-surface: 255 255 255;
    --c-surface-2: 241 245 249;
    --c-line: 226 232 240;
    --c-fg: 30 41 59;
    --c-muted: 100 116 139;
    --c-primary: 37 99 235;
    --c-on-primary: 255 255 255;
    --c-success: 22 163 74;
    --c-warning: 217 119 6;
    --c-danger: 220 38 38;
    --c-info: 8 145 178;
    --c-moe: 20 37 74;          /* كحلي وزارة التربية #14254A: هيدر الصفحات العامة بس */

    --radius: .6rem;
    --radius-sm: .4rem;
    --shadow: 0 1px 2px rgb(15 23 42 / .05), 0 1px 3px rgb(15 23 42 / .07);
    --shadow-lg: 0 10px 25px -5px rgb(15 23 42 / .08), 0 4px 10px -4px rgb(15 23 42 / .05);
    --sidebar-w: 260px;
    --font: 'Cairo', 'Segoe UI', Tahoma, sans-serif;
}

/* ===================== الأساس ===================== */
html, body { direction: rtl; }
body, .tooltip, .popover, .dropdown-menu, .btn, .form-control, .custom-select, select, input, textarea, button {
    font-family: var(--font) !important;
}
body { background-color: rgb(var(--c-page)); color: rgb(var(--c-fg)); font-size: .875rem; text-align: right; }
.wrapper, .content-wrapper { background-color: rgb(var(--c-page)) !important; color: rgb(var(--c-fg)); }
h1, h2, h3, h4, h5, h6 { color: rgb(var(--c-fg)); font-weight: 700; }
a { color: rgb(var(--c-primary)); }
a:hover { color: rgb(var(--c-primary)); filter: brightness(.85); }
::selection { background: rgb(var(--c-primary) / .18); }
hr { border-color: rgb(var(--c-line)); }

/* scrollbar رفيع وفاتح */
* { scrollbar-width: thin; scrollbar-color: rgb(var(--c-line)) transparent; }
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-thumb { background: rgb(var(--c-line)); border-radius: 8px; }
::-webkit-scrollbar-thumb:hover { background: rgb(var(--c-muted) / .5); }
::-webkit-scrollbar-track { background: transparent; }

/* ===================== الهيدر ===================== */
.main-header.navbar {
    background-color: rgb(var(--c-surface) / .92) !important;
    backdrop-filter: saturate(180%) blur(8px);
    border-bottom: 1px solid rgb(var(--c-line)) !important;
    min-height: 3.25rem; padding: .25rem .75rem;
}
.main-header .navbar-nav { align-items: center; }
.main-header .nav-link { color: rgb(var(--c-muted)) !important; height: auto; }
.main-header .nav-link:hover { color: rgb(var(--c-primary)) !important; }
.hs-toggle {
    width: 2.25rem; height: 2.25rem; border-radius: 999px; display: inline-flex !important;
    align-items: center; justify-content: center; padding: 0 !important; font-size: 1.05rem;
}
.hs-toggle:hover { background-color: rgb(var(--c-surface-2)); }
.hs-crumb { display: flex; align-items: center; gap: .5rem; margin-right: .5rem; font-size: .9rem; color: rgb(var(--c-muted)); }
.hs-crumb b { color: rgb(var(--c-fg)); font-weight: 700; }
.hs-crumb i { font-size: .65rem; opacity: .6; }

/* المستخدم في الهيدر */
.user-chip { display: flex; align-items: center; gap: .75rem; padding: .25rem .5rem; border-radius: 999px; color: rgb(var(--c-fg)) !important; cursor: pointer; }
.user-chip:hover { background-color: rgb(var(--c-surface-2)); text-decoration: none; filter: none; }
.user-chip .user-name { font-size: .85rem; font-weight: 700; line-height: 1.2; margin: 0; color: rgb(var(--c-fg)); }
.user-chip .user-role { font-size: .72rem; color: rgb(var(--c-muted)); margin: 0; line-height: 1.2; }
.avatar-initial {
    width: 2.1rem; height: 2.1rem; border-radius: 999px; flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    background-color: rgb(var(--c-primary) / .1); color: rgb(var(--c-primary)); font-weight: 700;
}
.main-header .dropdown-menu { min-width: 14rem; padding: .5rem; border-radius: var(--radius-sm); box-shadow: var(--shadow-lg); border: 1px solid rgb(var(--c-line)); }
.main-header .dropdown-item { border-radius: .45rem; padding: .5rem .75rem; font-size: .9rem; }
.main-header .dropdown-item i { width: 1.25rem; color: rgb(var(--c-muted)); margin-left: .35rem; }
.main-header .dropdown-item.text-danger i { color: inherit; }

/* ===================== القائمة الجانبية ===================== */
.main-sidebar {
    background-color: rgb(var(--c-surface)) !important;
    border-left: 1px solid rgb(var(--c-line));
    box-shadow: none !important;
}
.main-sidebar .brand-link {
    display: flex !important; align-items: center; gap: .65rem;
    height: 3.25rem; padding: .35rem .85rem !important;
    border-bottom: 1px solid rgb(var(--c-line)) !important;
    color: rgb(var(--c-fg)) !important; white-space: nowrap; overflow: hidden;
}
.main-sidebar .brand-link:hover { filter: none; }
.brand-logo {
    width: 2.3rem; height: 2.3rem; flex-shrink: 0; border-radius: .5rem; overflow: hidden;
    background: #fff; border: 1px solid rgb(var(--c-line)); display: flex; align-items: center; justify-content: center;
}
.brand-logo img { width: 115%; height: auto; }
.brand-text { display: flex; flex-direction: column; line-height: 1.25; }
.brand-text b { font-size: .95rem; font-weight: 700; }
.brand-text small { font-size: .7rem; color: rgb(var(--c-muted)); }

.main-sidebar .sidebar { padding: .35rem .5rem 1rem; }
.nav-sidebar .nav-header {
    color: rgb(var(--c-muted)) !important; font-size: .7rem !important; font-weight: 700;
    padding: .6rem .6rem .25rem !important; background: transparent !important;
}
.nav-sidebar .nav-item { margin-bottom: .05rem; }
.nav-sidebar .nav-link {
    color: rgb(var(--c-fg) / .8) !important; background: transparent !important;
    border-radius: var(--radius-sm) !important; padding: .4rem .6rem !important;
    font-weight: 600; font-size: .86rem; box-shadow: none !important;
    display: flex !important; align-items: center; gap: .65rem; width: 100% !important;
    transition: background-color .15s, color .15s;
}
.nav-sidebar .nav-link p { margin: 0; flex: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: flex !important; align-items: center; }
.nav-sidebar .nav-link .nav-icon {
    width: 1.4rem !important; margin: 0 !important; font-size: .9rem !important;
    text-align: center; color: rgb(var(--c-muted)) !important; flex-shrink: 0;
}
.nav-sidebar .nav-link:hover { background-color: rgb(var(--c-surface-2)) !important; color: rgb(var(--c-primary)) !important; }
.nav-sidebar .nav-link:hover .nav-icon { color: rgb(var(--c-primary)) !important; }
.nav-sidebar > .nav-item > .nav-link.active {
    background-color: rgb(var(--c-primary)) !important; color: rgb(var(--c-on-primary)) !important;
    box-shadow: 0 4px 12px -2px rgb(var(--c-primary) / .35) !important;
}
.nav-sidebar > .nav-item > .nav-link.active .nav-icon { color: rgb(var(--c-on-primary)) !important; }
.nav-sidebar > .nav-item.menu-open > .nav-link:not(.active) { background-color: rgb(var(--c-primary) / .08) !important; color: rgb(var(--c-primary)) !important; }
.nav-sidebar > .nav-item.menu-open > .nav-link:not(.active) .nav-icon { color: rgb(var(--c-primary)) !important; }

/* السهم: على الشمال، بيلف لتحت لما المجموعة تتفتح */
.nav-sidebar .nav-link .hs-arrow { margin-right: auto; font-size: .7rem; opacity: .6; transition: transform .2s; }
.nav-sidebar .menu-open > .nav-link .hs-arrow { transform: rotate(-90deg); }
.nav-sidebar .nav-link > .right, .nav-sidebar .nav-link > p > .right { display: none; }

/* العناصر الفرعية: خط رأسي خفيف ونقطة */
.nav-sidebar .nav-treeview {
    margin: .1rem 1.2rem .25rem 0 !important; padding: 0 .4rem 0 0 !important;
    border-right: 2px solid rgb(var(--c-line));
}
.nav-sidebar .nav-treeview .nav-link { padding: .3rem .55rem !important; font-size: .82rem; font-weight: 600; color: rgb(var(--c-muted)) !important; }
.nav-sidebar .nav-treeview .nav-link::before {
    content: ""; width: .4rem; height: .4rem; border-radius: 999px; flex-shrink: 0;
    background: rgb(var(--c-line)); transition: background-color .15s;
}
.nav-sidebar .nav-treeview .nav-link:hover::before { background: rgb(var(--c-primary) / .6); }
.nav-sidebar .nav-treeview .nav-link.active { color: rgb(var(--c-primary)) !important; background-color: rgb(var(--c-primary) / .08) !important; font-weight: 700; }
.nav-sidebar .nav-treeview .nav-link.active::before { background: rgb(var(--c-primary)); }

/* القائمة المصغّرة (sidebar-collapse على الكمبيوتر): أيقونات بس */
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .brand-text,
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .nav-link p,
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .nav-header { display: none !important; }
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .nav-link { justify-content: center; }

/* ===================== المحتوى ===================== */
.content-wrapper > .content { padding: 0 1rem 1rem; }
@media (max-width: 575.98px) { .content-wrapper > .content { padding: 0 .75rem 1rem; } }

/* عنوان الصفحة: أيقونة + عنوان + وصف + أزرار */
.page-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem; padding: .85rem 0 .75rem; }
.page-head-title { display: flex; align-items: center; gap: .65rem; }
.page-head h1 { font-size: 1.2rem; font-weight: 700; margin: 0; }
.page-head p { margin: .1rem 0 0; font-size: .8rem; color: rgb(var(--c-muted)); }
.page-head-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.icon-tile {
    width: 2.25rem; height: 2.25rem; border-radius: .5rem; flex-shrink: 0;
    display: flex; align-items: center; justify-content: center; font-size: .95rem;
    background-color: rgb(var(--c-primary) / .1); color: rgb(var(--c-primary));
}
.icon-tile.tile-success { background-color: rgb(var(--c-success) / .12); color: rgb(var(--c-success)); }
.icon-tile.tile-warning { background-color: rgb(var(--c-warning) / .14); color: rgb(var(--c-warning)); }
.icon-tile.tile-danger  { background-color: rgb(var(--c-danger) / .1);  color: rgb(var(--c-danger)); }
.icon-tile.tile-info    { background-color: rgb(var(--c-info) / .12);   color: rgb(var(--c-info)); }

/* ===================== الكروت ===================== */
.card {
    background-color: rgb(var(--c-surface)); color: rgb(var(--c-fg));
    border: 1px solid rgb(var(--c-line)); border-radius: var(--radius);
    box-shadow: var(--shadow); margin-bottom: 1rem;
}
.card-header {
    background-color: transparent; border-bottom: 1px solid rgb(var(--c-line));
    border-radius: var(--radius) var(--radius) 0 0 !important; padding: .6rem 1rem;
    display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem;
}
.card-header::after { display: none; }
.card-title { font-size: .95rem; font-weight: 700; margin: 0; float: none !important; }
.card-title i { color: rgb(var(--c-primary)); margin-left: .4rem; }
.card-tools { display: flex; gap: .4rem; margin: 0 !important; float: none !important; }
.card-body { padding: .85rem 1rem; }
.card-footer { background-color: rgb(var(--c-surface-2) / .5); border-top: 1px solid rgb(var(--c-line)); border-radius: 0 0 var(--radius) var(--radius) !important; }

/* كارت رقم سريع */
.stat-tile {
    display: flex; align-items: center; gap: .9rem; height: 100%;
    padding: 1rem 1.1rem; border-radius: var(--radius); border: 1px solid rgb(var(--c-line));
    background-color: rgb(var(--c-surface)); box-shadow: var(--shadow); color: rgb(var(--c-fg)) !important;
    transition: border-color .2s, transform .2s, box-shadow .2s;
}
a.stat-tile:hover { border-color: rgb(var(--c-primary) / .45); text-decoration: none; transform: translateY(-2px); box-shadow: var(--shadow-lg); filter: none; }
.stat-value { font-size: 1.55rem; font-weight: 700; line-height: 1.1; }
.stat-label { font-size: .82rem; color: rgb(var(--c-muted)); font-weight: 600; }
.stat-trend { font-size: .72rem; font-weight: 700; margin-top: .15rem; }

/* ===================== الجداول ===================== */
.table { color: rgb(var(--c-fg)); margin-bottom: 0; }
.table th, .table td { border-color: rgb(var(--c-line)) !important; vertical-align: middle; padding: .45rem .7rem; }
.table thead th {
    background-color: rgb(var(--c-surface-2)) !important; color: rgb(var(--c-muted)) !important;
    font-size: .78rem; font-weight: 700; border-bottom: 1px solid rgb(var(--c-line)) !important;
    border-top: 0 !important; white-space: nowrap; padding-top: .55rem !important; padding-bottom: .55rem !important;
    position: sticky; top: 0; z-index: 1;
}
.table tbody tr:nth-of-type(even) { background-color: rgb(var(--c-surface-2) / .45); }
.table-hover tbody tr:hover { background-color: rgb(var(--c-primary) / .07) !important; color: rgb(var(--c-fg)); }
.table-striped tbody tr:nth-of-type(odd) { background-color: rgb(var(--c-surface-2) / .4); }
.card > .table-responsive:last-child .table, .card-body.p-0 .table { border-radius: 0 0 var(--radius) var(--radius); }
.cell-title { display: flex; align-items: center; gap: .7rem; }
.cell-title small { display: block; color: rgb(var(--c-muted)); font-size: .75rem; }

.table-footer {
    display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; justify-content: space-between;
    padding: .5rem 1rem; border-top: 1px solid rgb(var(--c-line)); font-size: .8rem; color: rgb(var(--c-muted));
}

/* ===================== الفورمات ===================== */
label:not(.custom-control-label):not(.custom-file-label) { color: rgb(var(--c-fg)); font-weight: 600; font-size: .85rem; margin-bottom: .35rem; }
.form-control, .custom-select, select:not([multiple]) {
    background-color: rgb(var(--c-surface)); color: rgb(var(--c-fg));
    border: 1px solid rgb(var(--c-line)); border-radius: var(--radius-sm) !important;
    height: calc(2.1rem + 2px); font-size: .86rem; box-shadow: none; padding-top: .25rem; padding-bottom: .25rem;
}
textarea.form-control { height: auto; }
.form-control:focus, .custom-select:focus, select:focus {
    border-color: rgb(var(--c-primary)); box-shadow: 0 0 0 3px rgb(var(--c-primary) / .15); outline: 0;
}
.form-control::placeholder { color: rgb(var(--c-muted)); opacity: 1; }
/* حقل التاريخ (hs-date + data-display من hasobN.js): نص كروم بلغة المتصفح (مقلوب في العربي) بيتخفي، ويظهر التاريخ بشكل الموقع حتى الـ focus */
input[type="date"].hs-date { position: relative; }
input[type="date"].hs-date:not(:focus)::-webkit-datetime-edit { color: transparent; }
input[type="date"].hs-date:not(:focus)::before { content: attr(data-display); position: absolute; top: 50%; inset-inline-start: .75rem; transform: translateY(-50%); direction: ltr; unicode-bidi: isolate; pointer-events: none; color: inherit; font-variant-numeric: tabular-nums; }
.form-control:disabled, .form-control[readonly] { background-color: rgb(var(--c-surface-2)); }
.input-group-text { background-color: rgb(var(--c-surface-2)); border-color: rgb(var(--c-line)); color: rgb(var(--c-muted)); }


/* ===================== الأزرار ===================== */
.btn { border-radius: var(--radius-sm); font-weight: 600; font-size: .84rem; padding: .35rem .85rem; transition: background-color .15s, filter .15s, color .15s, box-shadow .15s; }
.btn i { margin-left: .35rem; }
.btn-icon i, .btn.btn-icon i { margin: 0; }
.btn:focus, .btn.focus { box-shadow: 0 0 0 3px rgb(var(--c-primary) / .2) !important; }
.btn-sm { padding: .22rem .6rem; font-size: .78rem; }
.btn-xs { padding: .1rem .5rem; font-size: .75rem; line-height: 1.5; }
.btn-primary { background-color: rgb(var(--c-primary)); border-color: rgb(var(--c-primary)); color: rgb(var(--c-on-primary)); }
.btn-success { background-color: rgb(var(--c-success)); border-color: rgb(var(--c-success)); }
.btn-danger  { background-color: rgb(var(--c-danger));  border-color: rgb(var(--c-danger)); }
.btn-warning { background-color: rgb(var(--c-warning)); border-color: rgb(var(--c-warning)); color: #fff; }
.btn-primary:hover, .btn-success:hover, .btn-danger:hover, .btn-warning:hover,
.btn-primary:not(:disabled):not(.disabled):active { filter: brightness(.92); background-color: rgb(var(--c-primary)); border-color: rgb(var(--c-primary)); }
.btn-success:hover { background-color: rgb(var(--c-success)); border-color: rgb(var(--c-success)); }
.btn-danger:hover  { background-color: rgb(var(--c-danger));  border-color: rgb(var(--c-danger)); }
.btn-warning:hover { background-color: rgb(var(--c-warning)); border-color: rgb(var(--c-warning)); color: #fff; }
.btn-default, .btn-light, .btn-secondary { background-color: rgb(var(--c-surface)); border: 1px solid rgb(var(--c-line)); color: rgb(var(--c-fg)); }
.btn-default:hover, .btn-light:hover, .btn-secondary:hover { background-color: rgb(var(--c-surface-2)); color: rgb(var(--c-fg)); border-color: rgb(var(--c-line)); }
.btn-outline-primary { color: rgb(var(--c-primary)); border-color: rgb(var(--c-primary) / .5); }
.btn-outline-primary:hover { background-color: rgb(var(--c-primary)); border-color: rgb(var(--c-primary)); color: rgb(var(--c-on-primary)); }
/* أزرار ناعمة: لون خفيف + نص ملوّن (للإجراءات جوه الجداول) */
.btn-soft-primary { background-color: rgb(var(--c-primary) / .1); color: rgb(var(--c-primary)); border-color: transparent; }
.btn-soft-success { background-color: rgb(var(--c-success) / .12); color: rgb(var(--c-success)); border-color: transparent; }
.btn-soft-danger  { background-color: rgb(var(--c-danger) / .1);  color: rgb(var(--c-danger));  border-color: transparent; }
.btn-soft-muted   { background-color: rgb(var(--c-surface-2));     color: rgb(var(--c-muted));   border-color: transparent; }
.btn-soft-primary:hover { background-color: rgb(var(--c-primary)); color: rgb(var(--c-on-primary)); }
.btn-soft-success:hover { background-color: rgb(var(--c-success)); color: #fff; }
.btn-soft-danger:hover  { background-color: rgb(var(--c-danger));  color: #fff; }
.btn-soft-muted:hover   { background-color: rgb(var(--c-line));    color: rgb(var(--c-fg)); }
.btn-icon { width: 1.75rem; height: 1.75rem; padding: 0 !important; display: inline-flex !important; align-items: center; justify-content: center; }
.actions { display: inline-flex; gap: .35rem; align-items: center; }

/* ===================== الشارات ===================== */
.badge { font-weight: 700; padding: .4em .8em; border-radius: 999px; font-size: .72rem; }
.badge-primary, .badge-info { background-color: rgb(var(--c-primary) / .12); color: rgb(var(--c-primary)); }
.badge-success { background-color: rgb(var(--c-success) / .12); color: rgb(var(--c-success)); }
.badge-warning { background-color: rgb(var(--c-warning) / .14); color: rgb(var(--c-warning)); }
.badge-danger  { background-color: rgb(var(--c-danger) / .1);   color: rgb(var(--c-danger)); }
.badge-secondary, .badge-light { background-color: rgb(var(--c-surface-2)); color: rgb(var(--c-muted)); }
.badge-dot::before { content: ""; display: inline-block; width: .45em; height: .45em; border-radius: 999px; background: currentColor; margin-left: .4em; vertical-align: middle; }

/* ===================== التنبيهات ===================== */
.alert { border-radius: var(--radius); border: 1px solid; font-weight: 600; display: flex; align-items: center; gap: .6rem; }
.alert-success { background-color: rgb(var(--c-success) / .08); border-color: rgb(var(--c-success) / .25); color: rgb(var(--c-success)); }
.alert-danger  { background-color: rgb(var(--c-danger) / .08);  border-color: rgb(var(--c-danger) / .25);  color: rgb(var(--c-danger)); }
.alert-warning { background-color: rgb(var(--c-warning) / .08); border-color: rgb(var(--c-warning) / .25); color: rgb(var(--c-warning)); }
.alert-info, .alert-primary { background-color: rgb(var(--c-primary) / .07); border-color: rgb(var(--c-primary) / .22); color: rgb(var(--c-primary)); }

/* ===================== الترقيم ===================== */
.pagination { gap: .25rem; margin: 0; }
.page-link { border: 1px solid rgb(var(--c-line)) !important; color: rgb(var(--c-fg)); border-radius: .4rem !important; min-width: 1.85rem; text-align: center; font-weight: 600; padding: .2rem .5rem; }
.page-link:hover { background-color: rgb(var(--c-surface-2)); color: rgb(var(--c-primary)); }
.page-item.active .page-link { background-color: rgb(var(--c-primary)); border-color: rgb(var(--c-primary)) !important; color: rgb(var(--c-on-primary)); }

/* ===================== مكوّنات تانية ===================== */
.modal-content { border: 1px solid rgb(var(--c-line)); border-radius: var(--radius); box-shadow: var(--shadow-lg); }
.modal-header, .modal-footer { border-color: rgb(var(--c-line)); }
.modal-header .close { margin: -1rem auto -1rem -1rem; }
.progress { background-color: rgb(var(--c-surface-2)); border-radius: 999px; height: .45rem; }
.progress-bar { background-color: rgb(var(--c-primary)); border-radius: 999px; }
.empty-state { text-align: center; padding: 3rem 1rem; color: rgb(var(--c-muted)); }
.empty-state i { font-size: 2rem; display: block; margin-bottom: .75rem; opacity: .5; }
.text-muted { color: rgb(var(--c-muted)) !important; }

/* ===================== الفوتر ===================== */
.main-footer {
    background-color: transparent !important; border-top: 1px solid rgb(var(--c-line)) !important;
    color: rgb(var(--c-muted)) !important; font-size: .8rem; padding: .9rem 1.25rem;
    display: flex; flex-wrap: wrap; justify-content: space-between; gap: .5rem;
}

/* ===================== الطباعة ===================== */
@media print {
    .main-sidebar, .main-header, .main-footer, .page-head-actions, .no-print { display: none !important; }
    .content-wrapper { margin: 0 !important; }
    .card { box-shadow: none; }
}

/* ===================== الموبايل ===================== */
@media (max-width: 575.98px) {
    .page-head { padding: 1rem 0 .9rem; }
    .page-head h1 { font-size: 1.2rem; }
    .stat-tile { flex-direction: column; align-items: flex-start; gap: .6rem; padding: .9rem; }
    .stat-tile .icon-tile { width: 2.4rem; height: 2.4rem; font-size: 1rem; }
    .card-header, .card-body { padding: .9rem 1rem; }
}
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .nav-treeview,
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .hs-arrow { display: none !important; }
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .brand-link { justify-content: center; padding: .5rem !important; }

/* =====================================================================
   النمط الغامق: <html data-theme="dark"> (الماستر بيحطه من Cookie اسمه theme، والزرار في الهيدر بيبدّل)
   كل الألوان فوق جاية من المتغيرات، فهنا بنغيّر المتغيرات بس + الحاجات اللي Bootstrap لونها ثابت.
   ===================================================================== */
html[data-theme="dark"] {
    --c-page: 11 17 30;
    --c-surface: 19 27 43;
    --c-surface-2: 30 41 59;
    --c-line: 45 58 79;
    --c-fg: 226 232 240;
    --c-muted: 148 163 184;
    --c-primary: 96 140 250;
    --c-on-primary: 255 255 255;
    --c-success: 52 211 153;
    --c-warning: 251 191 36;
    --c-danger: 248 113 113;
    --c-info: 56 189 248;
    --c-moe: 17 30 60;
    --shadow: 0 1px 2px rgb(0 0 0 / .35);
    --shadow-lg: 0 12px 28px -6px rgb(0 0 0 / .55);
    color-scheme: dark;
}
html[data-theme="dark"] .custom-select,
html[data-theme="dark"] select.form-control {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%2394a3b8' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e");
}
html[data-theme="dark"] .brand-logo { border-color: transparent; }
html[data-theme="dark"] .btn-warning { color: rgb(30 41 59); }

/* ألوان Bootstrap الثابتة ← المتغيرات (بتشتغل في النمطين) */
.dropdown-menu { background-color: rgb(var(--c-surface)); border-color: rgb(var(--c-line)); color: rgb(var(--c-fg)); }
.dropdown-item { color: rgb(var(--c-fg)); }
.dropdown-item:hover, .dropdown-item:focus { background-color: rgb(var(--c-surface-2)); color: rgb(var(--c-fg)); }
.dropdown-divider { border-top-color: rgb(var(--c-line)); }
.modal-content { background-color: rgb(var(--c-surface)); color: rgb(var(--c-fg)); }
.close { color: rgb(var(--c-fg)); text-shadow: none; }
.close:hover { color: rgb(var(--c-fg)); }
.page-link, .page-item.disabled .page-link { background-color: rgb(var(--c-surface)); }
.page-item.disabled .page-link { color: rgb(var(--c-muted)); opacity: .55; }
select option { background-color: rgb(var(--c-surface)); color: rgb(var(--c-fg)); }
.text-dark { color: rgb(var(--c-fg)) !important; }
.bg-white { background-color: rgb(var(--c-surface)) !important; }
.bg-light { background-color: rgb(var(--c-surface-2)) !important; }
.border, .border-top, .border-bottom { border-color: rgb(var(--c-line)) !important; }
.custom-control-label::before { background-color: rgb(var(--c-surface)); border-color: rgb(var(--c-line)); }
.custom-control-input:checked ~ .custom-control-label::before { background-color: rgb(var(--c-primary)); border-color: rgb(var(--c-primary)); }
.custom-switch .custom-control-input:checked ~ .custom-control-label::after { background-color: #fff; }

/*زر  تبديل النمط */
.theme-toggle .fa-sun { display: none; }
html[data-theme="dark"] .theme-toggle .fa-sun { display: inline-block; }
html[data-theme="dark"] .theme-toggle .fa-moon { display: none; }
body.hs-theme-anim, body.hs-theme-anim * { transition: background-color .25s, border-color .25s, color .25s !important; }

/* ===================== الجدول (hs.Grid في hasobN.js) ===================== */
.hs-grid-tools { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.hs-search { position: relative; }
.hs-search i { position: absolute; top: 50%; transform: translateY(-50%); right: .75rem; color: rgb(var(--c-muted)); font-size: .8rem; pointer-events: none; }
.hs-search .form-control { padding-right: 2.1rem; width: 15rem; max-width: 100%; height: 2.25rem; }
.table th.sortable { cursor: pointer; user-select: none; }
.table th.sortable:hover { color: rgb(var(--c-fg)) !important; }
.table th .sort-ico { margin-right: .3rem; font-size: .65rem; opacity: .35; }
.table th.sorted .sort-ico { opacity: 1; color: rgb(var(--c-primary)); }
.table td.num, .table th.num { font-variant-numeric: tabular-nums; }
.table td .sub { display: block; font-size: .75rem; color: rgb(var(--c-muted)); font-weight: 400; }
.table tr.row-off td { opacity: .6; }
.hs-loading { padding: 3rem 1rem; text-align: center; color: rgb(var(--c-muted)); }
.hs-loading i { font-size: 1.4rem; display: block; margin-bottom: .5rem; color: rgb(var(--c-primary)); }
.hs-skel { height: .8rem; border-radius: 999px; background: linear-gradient(90deg, rgb(var(--c-surface-2)), rgb(var(--c-line)), rgb(var(--c-surface-2))); background-size: 200% 100%; animation: hsSkel 1.2s infinite linear; }
@keyframes hsSkel { from { background-position: 200% 0; } to { background-position: -200% 0; } }
@media (prefers-reduced-motion: reduce) { .hs-skel { animation: none; } a.stat-tile:hover { transform: none; } }
.phone-link { direction: ltr; unicode-bidi: embed; color: rgb(var(--c-fg)); font-variant-numeric: tabular-nums; }

/* ===================== فورم التعديل (Modal) ===================== */
.modal-header { padding: 1rem 1.25rem; align-items: center; }
.modal-title { font-weight: 700; font-size: 1.05rem; display: flex; align-items: center; gap: .6rem; }
.modal-body { padding: 1.25rem; }
.modal-footer { padding: .85rem 1.25rem; gap: .5rem; justify-content: flex-start; }
.modal-footer > * { margin: 0; }
.form-section { font-size: .78rem; font-weight: 700; color: rgb(var(--c-muted)); margin: .25rem 0 .75rem; display: flex; align-items: center; gap: .5rem; }
.form-section::after { content: ""; flex: 1; height: 1px; background: rgb(var(--c-line)); }
.form-group { margin-bottom: 1rem; }
.form-control[readonly], .custom-select:disabled, .form-control:disabled { background-color: rgb(var(--c-surface-2)); color: rgb(var(--c-muted)); }
.lock-ico { font-size: .65rem; color: rgb(var(--c-muted)); margin-right: .3rem; }

/* ===================== التنبيهات العايمة (hs.toast) ===================== */
.hs-toasts { position: fixed; bottom: 1.25rem; left: 1.25rem; z-index: 2000; display: flex; flex-direction: column; gap: .5rem; max-width: calc(100vw - 2.5rem); }
.hs-toast {
    display: flex; align-items: center; gap: .6rem; padding: .75rem 1rem; border-radius: var(--radius-sm);
    background: rgb(var(--c-surface)); color: rgb(var(--c-fg)); border: 1px solid rgb(var(--c-line));
    box-shadow: var(--shadow-lg); font-weight: 600; font-size: .88rem; animation: hsIn .2s ease-out;
}
.hs-toast.ok i { color: rgb(var(--c-success)); }
.hs-toast.err i { color: rgb(var(--c-danger)); }
@keyframes hsIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

/* أداة الفلاتر ucddListN جوه كارت البحث */
.hs-filters .ucddlistn { display: flex; flex-wrap: wrap; gap: .75rem 1rem; align-items: flex-end; }
.hs-filters .ucddlistn > div[class*="col-"] { flex: 1 1 11rem; max-width: 100%; padding: 0; float: none; }
.hs-filters .ucddlistn > div[style*="clear"] { display: none; }
.hs-filters .ucddlistn select { width: 100%; }
.hs-filter-bar { display: flex; flex-wrap: wrap; gap: .75rem 1rem; align-items: flex-end; }
.hs-filter-bar > .hs-filters { flex: 1 1 32rem; min-width: 0; }
.hs-filter-bar > .hs-filter-btn { flex: 0 0 auto; }
@media (max-width: 575.98px) { .hs-filter-bar > .hs-filter-btn, .hs-filter-bar > .hs-filter-btn .btn { width: 100%; } }

/* select عادي (زي قوايم ucddListN): نفس سهم custom-select في النمطين */
select.form-control {
    -webkit-appearance: none; -moz-appearance: none; appearance: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%2364748b' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e");
    background-repeat: no-repeat; background-position: left .75rem center; background-size: 8px 10px; padding-left: 2rem;
}
.main-sidebar .brand-link { background-color: transparent !important; }
.actions { flex-wrap: nowrap; white-space: nowrap; }
.table-responsive > .table td { white-space: nowrap; }
.btn-group { flex-wrap: wrap; }
.btn-group .btn { white-space: nowrap; }
@media (max-width: 575.98px) { .hs-search, .hs-search .form-control { width: 100%; } .card-header > .hs-grid-tools:last-child { width: 100%; } }

/* ===================== جريد بتعديل مباشر + مجموعات (planSupervisorN، 2026-10-05) ===================== */
/* أداة الموجهين ucddListSN جوه كارت الفلاتر (مكتوبة بـ container/row بتوع Bootstrap 3) */
.hs-filters .container, .hs-filters .container > .row { max-width: none; padding: 0; margin: 0; }
.hs-filters .ucddlistsn { display: flex; flex-wrap: wrap; gap: .75rem 1rem; align-items: flex-end; width: 100%; }
.hs-filters .ucddlistsn > div[class*="col-"] { flex: 1 1 11rem; max-width: 100%; padding: 0; float: none; }
.hs-filters .ucddlistsn > div[class*="col-"]:not(:has(select)) { display: none; }
.hs-filters .ucddlistsn select { width: 100%; }
.hs-filter-bar > .hs-filters.hs-filters-sm { flex: 2 1 22rem; }
.hs-filter-bar > .hs-filter-item { flex: 1 1 11rem; min-width: 0; }
.hs-filter-bar > .hs-filter-check { flex: 0 0 auto; padding-bottom: .45rem; }
.hs-filter-bar > .hs-filter-btn { display: flex; flex-wrap: wrap; gap: .4rem; }
/* hs-filter-bar-split: الأداة في سطر لوحدها، وتحتها سطر الأوامر (الأسبوع + عرض ...). hs-push-end بيودّي العنصر لآخر السطر */
.hs-filter-bar-split > .hs-filters { flex: 1 1 100%; }
.hs-filter-bar-split > .hs-filters:not(:has(select)) { display: none; }
.hs-filter-bar-split > .hs-filter-week { flex: 0 1 14rem; }
.hs-filter-bar > .hs-push-end { margin-inline-start: auto; }
/*زر  + صغير جنب نص في خانة الجدول (مثلاً: إضافة معلم جنب اسم المدرسة) */
.hs-quick-add { margin-inline-start: .5rem; vertical-align: middle; }
/* الجدول الفرعي (معلمو الزيارة): الخانات من فوق */
.hs-detail-table td { vertical-align: top; }

/* صف عنوان المجموعة (hs.Grid groups) */
.table tr.grid-group td { background-color: rgb(var(--c-primary) / .07) !important; color: rgb(var(--c-fg)); font-weight: 700; font-size: .8rem; padding-top: .35rem; padding-bottom: .35rem; }
.table tr.grid-group.lvl-1 td { padding-right: 1.6rem; background-color: rgb(var(--c-primary) / .04) !important; }
.table tr.grid-group.lvl-2 td { padding-right: 2.6rem; background-color: rgb(var(--c-surface-2) / .7) !important; }

/* خانات التعديل جوه الجدول (بديل Batch Edit) */
.cell-stack { display: flex; flex-direction: column; gap: .25rem; }
.cell-edit.form-control, .cell-edit.custom-select { height: 1.9rem; padding-top: .15rem; padding-bottom: .15rem; font-size: .8rem; min-width: 9.5rem; }
textarea.cell-edit.form-control { height: auto; min-height: 1.9rem; min-width: 13rem; resize: vertical; white-space: pre-wrap; }
.cell-edit.is-dirty { border-color: rgb(var(--c-warning)) !important; background-color: rgb(var(--c-warning) / .08); }
.cell-alt { border-style: dashed !important; }
/* الخانة المقفولة (اطلاع): نفس إطار ومقاس خانة التعديل، بخلفية هادية */
.cell-text { display: block; font-size: .8rem; line-height: 1.35; min-height: 1.9rem; min-width: 9.5rem; max-width: 16rem; padding: .25rem .6rem;
    border: 1px solid rgb(var(--c-line)); border-radius: var(--radius-sm); background-color: rgb(var(--c-surface-2) / .6); color: rgb(var(--c-fg));
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
button.cell-pick { display: block; width: 100%; max-width: 16rem; text-align: right; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; color: rgb(var(--c-fg)); }
.cell-edit.custom-select.cell-slot { min-width: 3.4rem; max-width: 5.5rem; padding-inline-start: .3rem; padding-inline-end: 1.15rem; background-position: left .3rem center; text-align: center; }
/* أعمدة خانات الحصص: padding أقل علشان 7 أعمدة تدخل في الشاشة */
.table-responsive > .table td.col-slot, .table-responsive > .table th.col-slot { padding-inline: .3rem; }
button.cell-pick:focus { border-color: rgb(var(--c-primary)); outline: 0; }
.cell-note-text { white-space: pre-wrap; min-width: 13rem; }
.cell-text.cell-alt { border-style: dashed; color: rgb(var(--c-warning)); }
.table td.col-day { font-weight: 600; }
.hs-dirty-count { min-width: 1.4rem; }

/* سطر أزرار التقارير: عنوان صغير + مجموعة أزرار */
.hs-rpt-row { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .75rem; padding: .35rem 0; }
.hs-rpt-row + .hs-rpt-row { border-top: 1px solid rgb(var(--c-line)); }
.hs-rpt-label { min-width: 9.5rem; font-size: .8rem; font-weight: 700; color: rgb(var(--c-muted)); }

/* ===================== الموقع الجديد (Hasob.Web) ===================== */
/* صفحة الدخول وصفحات من غير قايمة (_AuthLayout) */
.hs-auth { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 2rem 1rem; background-color: rgb(var(--c-page)); }
.hs-auth::before {
    content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none;
    background: radial-gradient(40rem 22rem at 85% -10%, rgb(var(--c-primary) / .12), transparent 70%),
                radial-gradient(30rem 18rem at 0% 110%, rgb(var(--c-info) / .10), transparent 70%);
}
.hs-auth-box { width: 100%; max-width: 24rem; }
.hs-auth-brand { display: flex; flex-direction: column; align-items: center; text-align: center; gap: .35rem; margin-bottom: 1.25rem; }
.hs-auth-brand .brand-logo { width: 4rem; height: 4rem; border-radius: .9rem; box-shadow: var(--shadow); margin-bottom: .35rem; }
.hs-auth-brand b { font-size: 1.1rem; font-weight: 700; color: rgb(var(--c-fg)); }
.hs-auth-brand small { font-size: .8rem; color: rgb(var(--c-muted)); }
.hs-auth .card { margin-bottom: 0; box-shadow: var(--shadow-lg); }
.hs-auth .card-body { padding: 1.75rem 1.5rem; }
.hs-auth .empty-state { padding: 2rem 1rem; }
.hs-auth-title { font-size: 1.1rem; font-weight: 700; margin-bottom: 1.1rem; }
.hs-auth .alert { font-size: .85rem; padding: .6rem .8rem; }
.hs-auth .btn-block { padding-top: .55rem; padding-bottom: .55rem; font-weight: 700; }
.hs-auth-foot { text-align: center; margin: 1.25rem 0 0; font-size: .75rem; color: rgb(var(--c-muted)); }
.hs-auth-theme {
    position: fixed; top: 1rem; left: 1rem; width: 2.4rem; height: 2.4rem; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    background-color: rgb(var(--c-surface)); border: 1px solid rgb(var(--c-line)); color: rgb(var(--c-muted)) !important; box-shadow: var(--shadow);
}
.hs-auth-theme:hover { color: rgb(var(--c-primary)) !important; text-decoration: none; }

/* خانة فيها أيقونة على اليمين */
.hs-input-icon { position: relative; }
.hs-input-icon > i { position: absolute; right: .8rem; top: 50%; transform: translateY(-50%); color: rgb(var(--c-muted)); font-size: .85rem; pointer-events: none; }
.hs-input-icon > .form-control { padding-right: 2.3rem; }

/* القائمة: صفحة لسه متنقلتش (بتظهر على الجهاز بس) */
.nav-sidebar .nav-link.hs-pending { opacity: .5; cursor: default; }
.nav-sidebar .nav-link.hs-pending:hover { background: transparent; }
.hs-soon { display: inline-block; font-size: .65rem; font-weight: 600; padding: 0 .4rem; margin-right: .25rem; border-radius: 999px; background-color: rgb(var(--c-muted) / .15); color: rgb(var(--c-muted)); vertical-align: middle; }

/* كروت روابط في الرئيسية */
.hs-link-tile .stat-label { color: rgb(var(--c-fg)); font-size: .9rem; }

/* ===================== زيارات المدارس/المعلمين (visitSchoolN / visitSchoolDetailsN / TeacherVisitsN، 2026-10-05) ===================== */
/* صف بيتفتح تحت الصف (بديل DetailRow في ASPxGridView) */
.btn-expand i { transition: transform .15s; }
.btn-expand.is-open i { transform: rotate(-90deg); }
.table td.col-expand { width: 2.5rem; padding-left: 0; }
.table tr.grid-detail > td { background-color: rgb(var(--c-surface-2) / .6) !important; padding: .5rem 1rem .75rem 2.5rem; }
.hs-detail { border: 1px solid rgb(var(--c-line)); border-radius: var(--radius-sm); background-color: rgb(var(--c-surface)); overflow-x: auto; }
.hs-detail-head { display: flex; align-items: center; justify-content: space-between; gap: .5rem; padding: .4rem .7rem; border-bottom: 1px solid rgb(var(--c-line)); }
.hs-detail-title { font-size: .8rem; font-weight: 700; color: rgb(var(--c-muted)); }
.hs-detail-title i { margin-left: .35rem; color: rgb(var(--c-primary)); }
.hs-detail .hs-loading, .hs-detail .empty-state { padding: 1rem; }
.hs-detail-table { margin: 0; }
.table td.col-act, .table th.col-act { width: 1%; white-space: nowrap; }

/* أعمدة صغيرة في الجداول اللي بتتعدل */
.table td.col-no, .table th.col-no { width: 2.5rem; text-align: center; font-weight: 700; color: rgb(var(--c-muted)); }
.table td.col-check, .table th.col-check { width: 7rem; white-space: nowrap; }
.table td.col-pick, .table th.col-pick { width: 14rem; }
.table td.col-eval, .table th.col-eval { width: 1%; }
.table td.col-note, .table th.col-note { width: 22%; min-width: 12rem; }
.table td .cell-edit { width: 100%; }
/* خانة رقم صغيرة في الجدول (عدد/سنوات/نصاب) - visit_exploratoryDetailsN */
.cell-edit.cell-num.form-control { min-width: 5.5rem; max-width: 8rem; }
/* خانة رقم (hs-num بدل type=number): dir=ltr للأرقام، والمحاذاة يمين زي باقي الخانات في الصفحة العربي */
input.hs-num { text-align: right; }

/* الملاحظات تحت صف المعلم بعرض الجدول (بديل PreviewRow) */
.table tr.hs-preview > td { border-top: 0 !important; padding-top: 0; }
.table tr.hs-preview textarea { font-size: .8rem; }

/* أزرار حفظ تحت الفورم */
.hs-form-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; }

/* اختيار من مجموعة (radio بشكل أزرار): .hs-seg > label.hs-seg-opt.lvl-N > input + span */
.hs-seg { display: inline-flex; flex-wrap: wrap; gap: .3rem; }
.hs-seg-opt { position: relative; margin: 0; cursor: pointer; }
.hs-seg-opt input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.hs-seg-opt span { display: inline-block; padding: .3rem .8rem; border: 1px solid rgb(var(--c-line)); border-radius: var(--radius-sm); font-size: .8rem; font-weight: 600; color: rgb(var(--c-muted)); background-color: rgb(var(--c-surface)); white-space: nowrap; transition: background-color .12s, color .12s, border-color .12s; }
.hs-seg-opt:hover span { border-color: rgb(var(--c-muted) / .6); color: rgb(var(--c-fg)); }
.hs-seg-opt input:focus-visible + span { outline: 2px solid rgb(var(--c-primary) / .5); outline-offset: 1px; }
.hs-seg-opt input:checked + span { background-color: rgb(var(--c-primary)); border-color: rgb(var(--c-primary)); color: rgb(var(--c-on-primary)); }
.hs-seg-opt.lvl-1 input:checked + span { background-color: rgb(var(--c-success)); border-color: rgb(var(--c-success)); }
.hs-seg-opt.lvl-2 input:checked + span { background-color: rgb(var(--c-primary)); border-color: rgb(var(--c-primary)); }
.hs-seg-opt.lvl-3 input:checked + span { background-color: rgb(var(--c-warning)); border-color: rgb(var(--c-warning)); }
.hs-seg-opt.lvl-4 input:checked + span { background-color: rgb(var(--c-danger)); border-color: rgb(var(--c-danger)); }
.hs-seg-sm { flex-wrap: nowrap; }
.hs-seg-sm .hs-seg-opt span { padding: .15rem .55rem; font-size: .75rem; }

/* ملخص المؤشرات (عدد كل مستوى + شريط) */
.hs-level-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr)); gap: .75rem 1.25rem; }
.hs-level-stat-head { display: flex; justify-content: space-between; font-size: .8rem; margin-bottom: .3rem; color: rgb(var(--c-muted)); }
.hs-level-stat-head b { color: rgb(var(--c-fg)); font-variant-numeric: tabular-nums; }
.hs-level-stat.lvl-1 .progress-bar { background-color: rgb(var(--c-success)); }
.hs-level-stat.lvl-2 .progress-bar { background-color: rgb(var(--c-primary)); }
.hs-level-stat.lvl-3 .progress-bar { background-color: rgb(var(--c-warning)); }
.hs-level-stat.lvl-4 .progress-bar { background-color: rgb(var(--c-danger)); }

/* بيانات ثابتة (عرض بس) */
.hs-info-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr)); gap: .5rem 1rem; padding: .75rem; margin-bottom: 1rem; border-radius: var(--radius-sm); background-color: rgb(var(--c-surface-2)); }
.hs-info span { display: block; font-size: .72rem; color: rgb(var(--c-muted)); }
.hs-info b { font-size: .85rem; }

/* عنوان فرعي جوه كارت (المحاور) */
.hs-subsection { padding: .45rem 1rem; font-size: .82rem; font-weight: 700; background-color: rgb(var(--c-primary) / .06); border-top: 1px solid rgb(var(--c-line)); border-bottom: 1px solid rgb(var(--c-line)); }
.hs-subsection:first-child { border-top: 0; }
.hs-eval-table { margin: 0; }
/* جداول التقييم: كلها بعرض الشاشة وبنفس الأعمدة؛ عمود البند بياخد الباقي وخطه أصغر ويلتف، والملاحظة في صف تحته */
.table.hs-eval-table { width: 100%; min-width: 44rem; }
/* البند بياخد كل المساحة الباقية، والتقييم على قد أزراره */
.table.hs-eval-table .col-item { width: 100%; font-size: .8rem; line-height: 1.5; white-space: normal; word-break: break-word; vertical-align: middle; }
.table.hs-eval-table td.col-eval, .table.hs-eval-table th.col-eval { width: 1%; white-space: nowrap; }
.table.hs-eval-table td.col-note-btn, .table.hs-eval-table th.col-note-btn { width: 2.75rem; text-align: center; vertical-align: middle; }
.table.hs-eval-table [data-act="note"].active { color: rgb(var(--c-primary)); }

/* مجموعة checkboxes في سطر */
.hs-check-group { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; padding: .5rem .75rem; border: 1px solid rgb(var(--c-line)); border-radius: var(--radius-sm); }

/* ===================== سجل الأخطاء (ErrorLogN، v=8) ===================== */
.hs-err-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr)); gap: .75rem; margin-bottom: 1rem; }
.hs-err-stats .stat-tile { padding: .6rem .8rem; gap: .7rem; }
.hs-err-stats .icon-tile { width: 2.2rem; height: 2.2rem; font-size: .95rem; }
.hs-err-stats .stat-value { font-size: 1.25rem; }
.hs-err-stats .stat-tile > div { min-width: 0; }
.hs-err-stats .stat-label { white-space: normal; line-height: 1.4; overflow-wrap: anywhere; }
.table td.col-date { white-space: nowrap; width: 6.5rem; }
.hs-err-page { direction: ltr; unicode-bidi: plaintext; text-align: right; word-break: break-all; font-size: .8rem; }
.hs-err-msg-clip { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; unicode-bidi: plaintext; font-size: .8rem; max-width: 34rem; word-break: break-word; }
.hs-err-msg { margin: 0; padding: .6rem .75rem; max-height: 22rem; overflow: auto; white-space: pre-wrap; word-break: break-word; unicode-bidi: plaintext; text-align: start; font-family: Consolas, "Courier New", monospace; font-size: .78rem; line-height: 1.55; }
.hs-offscreen { position: fixed; top: -1000px; right: -1000px; opacity: 0; }

/* ===================== جدولي: جدول حصص المعلم الأسبوعي (/Pteacher/mySchedule) ===================== */
.hs-tt { margin: 0; text-align: center; table-layout: fixed; min-width: 46rem; }
.hs-tt th, .hs-tt td { vertical-align: middle; padding: .8rem .5rem; border-color: rgb(var(--c-line)); }
.hs-tt thead th { background-color: rgb(var(--c-surface-2)); color: rgb(var(--c-muted)); font-weight: 700; white-space: nowrap; }
.hs-tt .hs-tt-day { width: 8rem; background-color: rgb(var(--c-surface-2)); color: rgb(var(--c-fg)); font-weight: 700; }
.hs-tt-class { background-color: rgb(var(--c-primary) / .08); color: rgb(var(--c-fg)); font-weight: 600; }
.hs-tt-task { background-color: rgb(var(--c-warning) / .12); color: rgb(var(--c-fg)); font-weight: 600; }
.hs-tt-empty { color: rgb(var(--c-muted) / .6); }
.hs-tt tr.hs-tt-today > th, .hs-tt tr.hs-tt-today > td { border-top: 2px solid rgb(var(--c-primary)); border-bottom: 2px solid rgb(var(--c-primary)); }
.hs-tt tr.hs-tt-today > th.hs-tt-day { background-color: rgb(var(--c-primary)); color: rgb(var(--c-on-primary)); }
.hs-tt tr.hs-tt-today > th.hs-tt-day .badge { background-color: rgb(var(--c-on-primary)); color: rgb(var(--c-primary)); }
.hs-tt tr.hs-tt-today > td.hs-tt-class { background-color: rgb(var(--c-primary) / .22); }
.hs-tt tr.hs-tt-today > td.hs-tt-task { background-color: rgb(var(--c-warning) / .25); }
.hs-tt tr.hs-tt-today > td.hs-tt-empty { background-color: rgb(var(--c-primary) / .05); }

/* جدول بعرض الشاشة: سطر صغير تحت قيمة الخانة (المدرسة تحت المعلم، النوع تحت الصف، التاريخ تحت الحالة)، والخانة بتلف لو ضاقت */
.cell-sub { display: block; margin-top: .15rem; font-size: .75rem; font-weight: 400; color: rgb(var(--c-muted)); }
.table-responsive > .table td.col-wrap { white-space: normal; min-width: 9rem; }
.table-responsive > .table td.col-mail { white-space: normal; word-break: break-all; min-width: 7rem; max-width: 14rem; }
.table-responsive > .table th.col-mail, .table-responsive > .table th.col-wrap { white-space: normal; }

/* ===================== الصفحات العامة (من غير دخول): الرئيسية ومكتبة الطالب والمعلم (_PublicLayout، 2026-10-08) ===================== */
.hs-pub { min-height: 100vh; display: flex; flex-direction: column; background-color: rgb(var(--c-page)); }
.hs-pub-wrap { width: 100%; max-width: 68rem; margin: 0 auto; padding: 0 1rem; }
.hs-pub-skip { position: absolute; right: 1rem; top: -3rem; z-index: 10; padding: .4rem .8rem; border-radius: var(--radius-sm); background-color: rgb(var(--c-surface)); color: rgb(var(--c-fg)); box-shadow: var(--shadow-lg); }
.hs-pub-skip:focus { top: .5rem; }
.hs-pub a:focus-visible, .hs-pub .btn:focus-visible, .hs-pub select:focus-visible { outline: 2px solid rgb(var(--c-primary)); outline-offset: 2px; box-shadow: none; }
.hs-pub-head a:focus-visible { outline-color: #fff; }

/* الهيدر: الشريط الكحلي هو العنصر القوي الوحيد في الصفحة */
.hs-pub-head { background-color: rgb(var(--c-moe)); color: #fff; }
.hs-pub-head-in { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-top: .9rem; padding-bottom: .9rem; }
.hs-pub-brand { display: flex; align-items: center; gap: .8rem; min-width: 0; color: #fff !important; }
.hs-pub-brand:hover { text-decoration: none; filter: none; }
.hs-pub-logo { width: 3.25rem; height: 3.25rem; flex-shrink: 0; border-radius: .7rem; background-color: #fff; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.hs-pub-logo img { width: 100%; height: 100%; object-fit: contain; }
.hs-pub-brand-text { display: flex; flex-direction: column; line-height: 1.35; min-width: 0; }
.hs-pub-brand-text small { font-size: .75rem; color: rgb(255 255 255 / .75); }
.hs-pub-brand-text b { font-size: 1.05rem; font-weight: 700; }
.hs-pub-head-actions { display: flex; align-items: center; gap: .5rem; flex-shrink: 0; }
.hs-pub-icon-btn { width: 2.4rem; height: 2.4rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #fff !important; border: 1px solid rgb(255 255 255 / .3); }
.hs-pub-icon-btn:hover { background-color: rgb(255 255 255 / .12); filter: none; }
.hs-pub-login { background-color: #fff; color: rgb(var(--c-moe)) !important; font-weight: 700; border-radius: var(--radius-sm); padding: .4rem .9rem; white-space: nowrap; }
.hs-pub-login i { margin-left: .4rem; }
.hs-pub-login:hover { background-color: rgb(255 255 255 / .88); }
html[data-theme="dark"] .hs-pub-login { background-color: rgb(var(--c-surface)); color: rgb(var(--c-fg)) !important; border: 1px solid rgb(255 255 255 / .25); }

.hs-pub-main { flex: 1; padding: 1.5rem 0 2rem; }
/* محتوى في نص الشاشة أفقي وعمودي (عن الموقع): ارتفاع الشاشة ناقص الهيدر والفوتر تقريبًا */
.hs-pub-center { display: flex; align-items: center; justify-content: center; min-height: calc(100vh - 12rem); text-align: center; }
.hs-pub-intro { margin-bottom: 1.25rem; }
.hs-pub-intro h1 { font-size: 1.35rem; margin: 0 0 .3rem; }
.hs-pub-intro p { margin: 0; color: rgb(var(--c-muted)); font-size: .9rem; }
.hs-pub-empty { color: rgb(var(--c-muted)); margin: 0; padding: 1rem; }

/* الرئيسية: كارتين المكتبات */
.hs-pub-libs { display: grid; grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr)); gap: 1rem; }
.hs-pub-lib { background-color: rgb(var(--c-surface)); border: 1px solid rgb(var(--c-line)); border-radius: var(--radius); box-shadow: var(--shadow); overflow: hidden; }
.hs-pub-lib-head { display: flex; align-items: center; gap: .9rem; padding: 1.1rem 1.1rem 1rem; color: rgb(var(--c-fg)) !important; border-bottom: 1px solid rgb(var(--c-line)); border-top: 4px solid rgb(var(--c-moe)); }
html[data-theme="dark"] .hs-pub-lib-head { border-top-color: rgb(var(--c-primary)); }
.hs-pub-lib-head:hover { text-decoration: none; filter: none; background-color: rgb(var(--c-surface-2) / .6); }
.hs-pub-lib-icon { width: 3rem; height: 3rem; flex-shrink: 0; border-radius: .6rem; display: flex; align-items: center; justify-content: center; font-size: 1.3rem; background-color: rgb(var(--c-primary) / .1); color: rgb(var(--c-primary)); }
.hs-pub-lib-title { display: flex; flex-direction: column; flex: 1; min-width: 0; }
.hs-pub-lib-title b { font-size: 1.15rem; }
.hs-pub-lib-title small { color: rgb(var(--c-muted)); font-size: .8rem; }
.hs-pub-lib-go { color: rgb(var(--c-muted)); }
.hs-pub-cats { list-style: none; margin: 0; padding: .4rem 0; }
.hs-pub-cats a { display: flex; align-items: center; justify-content: space-between; gap: .5rem; padding: .6rem 1.1rem; color: rgb(var(--c-fg)) !important; font-weight: 600; }
.hs-pub-cats a:hover { background-color: rgb(var(--c-primary) / .06); color: rgb(var(--c-primary)) !important; text-decoration: none; filter: none; }
.hs-pub-count { display: inline-block; min-width: 1.6rem; padding: 0 .45rem; border-radius: 999px; text-align: center; font-size: .72rem; font-weight: 700; background-color: rgb(var(--c-surface-2)); color: rgb(var(--c-muted)); }

/* صفحة المكتبة */
.hs-pub-crumb { display: flex; align-items: center; gap: .45rem; font-size: .8rem; color: rgb(var(--c-muted)); margin-bottom: .6rem; }
.hs-pub-crumb i { font-size: .6rem; }
.hs-pub-page-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem; margin-bottom: 1rem; }
.hs-pub-page-head h1 { font-size: 1.3rem; margin: 0; display: flex; align-items: center; gap: .55rem; }
.hs-pub-page-head h1 i { color: rgb(var(--c-primary)); }
.hs-pub-switch, .hs-pub-stages { display: inline-flex; flex-wrap: wrap; border: 1px solid rgb(var(--c-line)); border-radius: var(--radius-sm); overflow: hidden; background-color: rgb(var(--c-surface)); }
.hs-pub-switch a, .hs-pub-stages a { padding: .35rem .8rem; font-size: .8rem; font-weight: 600; color: rgb(var(--c-muted)) !important; }
.hs-pub-switch a + a, .hs-pub-stages a + a { border-right: 1px solid rgb(var(--c-line)); }
.hs-pub-switch a:hover, .hs-pub-stages a:hover { color: rgb(var(--c-primary)) !important; text-decoration: none; filter: none; }
.hs-pub-switch a.is-active, .hs-pub-stages a.is-active { background-color: rgb(var(--c-primary)); color: rgb(var(--c-on-primary)) !important; }
.hs-pub-tabs { display: flex; flex-wrap: wrap; gap: .4rem; margin-bottom: .75rem; }
.hs-pub-tabs a { display: inline-flex; align-items: center; gap: .4rem; padding: .4rem .85rem; border-radius: 999px; border: 1px solid rgb(var(--c-line)); background-color: rgb(var(--c-surface)); color: rgb(var(--c-fg)) !important; font-weight: 600; font-size: .85rem; }
.hs-pub-tabs a:hover { border-color: rgb(var(--c-primary) / .5); text-decoration: none; filter: none; }
.hs-pub-tabs a.is-active { border-color: rgb(var(--c-primary)); background-color: rgb(var(--c-primary) / .1); color: rgb(var(--c-primary)) !important; }
.hs-pub-filters { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin: 0; }
.hs-pub-grade { width: auto; min-width: 9rem; }
.hs-pub-card .card-title i { margin-left: .4rem; }
.hs-pub-table td, .hs-pub-table th { white-space: nowrap; }
.hs-pub-table td.hs-pub-title { white-space: normal; font-weight: 600; min-width: 10rem; }
.hs-pub-table .col-dl { width: 1%; }
.hs-pub-dl { display: inline-flex; align-items: center; gap: .35rem; font-weight: 600; background-color: rgb(var(--c-primary) / .1); color: rgb(var(--c-primary)) !important; border: 0; }
.hs-pub-dl:hover { background-color: rgb(var(--c-primary) / .18); }
.hs-pub-dl.is-alt { background-color: rgb(var(--c-surface-2)); color: rgb(var(--c-fg)) !important; }
.hs-pub-dl.is-alt:hover { background-color: rgb(var(--c-line)); }

/* الفوتر */
.hs-pub-foot { border-top: 1px solid rgb(var(--c-line)); background-color: rgb(var(--c-surface)); font-size: .8rem; color: rgb(var(--c-muted)); }
.hs-pub-foot-in { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .6rem 1.25rem; padding-top: 1rem; padding-bottom: 1rem; }
.hs-pub-contact { display: flex; flex-wrap: wrap; gap: .4rem 1rem; }
.hs-pub-contact a { display: inline-flex; align-items: center; gap: .35rem; color: rgb(var(--c-muted)) !important; }
.hs-pub-contact a:hover { color: rgb(var(--c-primary)) !important; }
.hs-pub-contact span { unicode-bidi: plaintext; }

/* الموبايل: الهيدر أصغر، والجدول كروت (كل صف كارت والعنوان فوق) */
@media (max-width: 575.98px) {
    .hs-pub-logo { width: 2.6rem; height: 2.6rem; }
    .hs-pub-brand-text small { font-size: .68rem; }
    .hs-pub-brand-text b { font-size: .9rem; }
    .hs-pub-login { padding: .35rem .6rem; font-size: .8rem; }
    .hs-pub-head-in { gap: .5rem; }
    .hs-pub-main { padding-top: 1rem; }
    .hs-pub-libs { grid-template-columns: 1fr; }
    .hs-pub-table thead { display: none; }
    .hs-pub-table, .hs-pub-table tbody, .hs-pub-table tr, .hs-pub-table td { display: block; width: 100%; }
    .hs-pub-table tr { padding: .6rem .9rem; border-top: 1px solid rgb(var(--c-line)); }
    .hs-pub-table td { border: 0 !important; padding: .15rem 0; white-space: normal; }
    .hs-pub-table td[data-label] { display: flex; justify-content: space-between; align-items: center; gap: .75rem; }
    .hs-pub-table td[data-label]::before { content: attr(data-label); color: rgb(var(--c-muted)); font-size: .78rem; }
    .hs-pub-table .col-dl { width: 100%; }
}
@media (max-width: 380px) {
    .hs-pub-brand-text small { display: none; }
    .hs-pub-login i { display: none; }
}
@media (prefers-reduced-motion: reduce) { .hs-pub * { transition: none !important; } }

/* إدارة المكتبة (/Pgeneralsupervisor/libraryItems) */
.hs-lib-src { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; }
.hs-lib-src .form-control { flex: 1; min-width: 12rem; }
.hs-lib-cur { font-size: .78rem; color: rgb(var(--c-muted)); margin-top: .25rem; word-break: break-all; unicode-bidi: plaintext; }
.hs-lib-file { direction: ltr; unicode-bidi: plaintext; text-align: right; font-size: .78rem; max-width: 16rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: inline-block; vertical-align: middle; }

/* تقرير زيارات الموجه (/Psupervisor/visitNT/supervisorReport) */
.hs-period-hint { font-size: .8rem; color: rgb(var(--c-muted)); margin-top: .6rem; }
.hs-period-hint b { color: rgb(var(--c-fg)); }
.hs-chip-list { display: flex; flex-wrap: wrap; gap: .4rem; }
.hs-chip-list .btn.is-active { border-color: rgb(var(--c-primary)); color: rgb(var(--c-primary)); font-weight: 700; }
.hs-note-area { min-height: 7rem; resize: vertical; }
.hs-note-area[readonly] { background-color: rgb(var(--c-surface)); }   /* الاطلاع: نفس شكل الكتابة */
/* الجزء الخامس في تقرير زيارات الموجه: 3 بنود × (التوجيه العام / المنطقة) */
.hs-grid5 { display: grid; grid-template-columns: 7rem 1fr 1fr; gap: .5rem .75rem; align-items: stretch; }
.hs-grid5-head { padding: .3rem .75rem; border-radius: var(--radius-sm); background-color: rgb(var(--c-primary)); color: rgb(var(--c-on-primary)); font-size: .82rem; font-weight: 700; text-align: center; }
.hs-grid5-label { display: flex; align-items: center; padding: 0 .75rem; border-radius: var(--radius-sm); background-color: rgb(var(--c-primary) / .08); color: rgb(var(--c-primary)); font-size: .85rem; font-weight: 700; }
.hs-grid5 .hs-note-area { min-height: 5.5rem; }
@media (max-width: 767.98px) { .hs-grid5 { grid-template-columns: 1fr; } .hs-grid5 > div:first-child { display: none; } .hs-grid5-head { display: none; } }

/* محرر أوامر SQL (/sql/runsql2) */
.hs-sql-unlock { max-width: 28rem; }
.hs-sql-editor { direction: ltr; text-align: left; font-family: Consolas, "Courier New", monospace; font-size: .95rem; font-weight: 600; line-height: 1.5; min-height: 18rem; resize: vertical; white-space: pre; tab-size: 4; }
.hs-sql-bar { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-top: .75rem; }
.hs-sql-meta { font-size: .8rem; color: rgb(var(--c-muted)); margin: .25rem 0 .35rem; }
.hs-sql-set { max-height: 28rem; overflow: auto; border: 1px solid rgb(var(--c-line)); border-radius: var(--radius-sm); margin-bottom: .75rem; }
.hs-sql-table { direction: ltr; text-align: left; margin: 0; font-family: Consolas, "Courier New", monospace; font-size: .8rem; }
.hs-sql-table th { position: sticky; top: 0; background-color: rgb(var(--c-surface-2)); white-space: nowrap; }
.hs-sql-table td { white-space: pre; max-width: 30rem; overflow: hidden; text-overflow: ellipsis; }
.hs-sql-table .hs-sql-no { color: rgb(var(--c-muted)); text-align: right; width: 1%; }
.hs-sql-null { color: rgb(var(--c-muted)); font-style: italic; }
.hs-sql-msg, .hs-sql-err, .hs-sql-log { direction: ltr; text-align: left; white-space: pre-wrap; word-break: break-word; font-family: Consolas, "Courier New", monospace; font-size: .8rem; }
.hs-sql-msg { margin: 0 0 .35rem; color: rgb(var(--c-fg)); }
.hs-sql-err { margin: .35rem 0 0; }
.hs-sql-log { margin: 0; max-height: 14rem; overflow: auto; }

/* الإشعارات (2026-10-09): الجرس في الهيدر + /notify/myNotify + /Psupervisor/notify/notifySend */
.hs-bell > .nav-link { position: relative; }
.hs-bell-count { position: absolute; top: .1rem; left: .1rem; min-width: 1.1rem; height: 1.1rem; padding: 0 .25rem; border-radius: 999px; background-color: rgb(var(--c-danger)); color: rgb(var(--c-on-primary)); font-size: .65rem; font-weight: 700; line-height: 1.1rem; text-align: center; }
.main-header .hs-bell-menu { min-width: 20rem; max-width: 92vw; }
.hs-bell-head { font-size: .8rem; font-weight: 700; color: rgb(var(--c-muted)); padding: .25rem .5rem .4rem; }
.hs-bell-empty { font-size: .8rem; color: rgb(var(--c-muted)); padding: .5rem; }
.hs-bell-item { display: flex; flex-direction: column; gap: .1rem; white-space: normal; border-radius: var(--radius-sm); }
.hs-bell-item.is-unread { background-color: rgb(var(--c-primary) / .07); }
.hs-bell-item.is-unread .hs-bell-title { font-weight: 700; }
.hs-bell-title { font-size: .85rem; color: rgb(var(--c-fg)); overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.hs-bell-meta { font-size: .7rem; color: rgb(var(--c-muted)); }
.hs-bell-all { font-size: .8rem; text-align: center; }
.hs-notify-row { display: flex; align-items: center; flex-wrap: wrap; gap: .6rem; margin-bottom: .75rem; }
.hs-notify-label { font-size: .85rem; font-weight: 700; min-width: 5.5rem; }
.hs-notify-send { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: .5rem; }
.hs-notify-preview { font-size: .85rem; font-weight: 600; color: rgb(var(--c-primary)); margin-left: auto; }
.hs-notify-clip { max-width: 40rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hs-notify-item { cursor: pointer; }
.hs-notify-item.is-unread .hs-notify-title { font-weight: 700; }
.hs-notify-dot { display: inline-block; width: .55rem; height: .55rem; border-radius: 50%; background-color: rgb(var(--c-primary)); }
.hs-notify-meta { font-size: .8rem; color: rgb(var(--c-muted)); margin-bottom: .75rem; }
.hs-notify-body { white-space: pre-wrap; word-break: break-word; line-height: 1.8; }

/* ===================== مفكرة الموجه (Pages/Shared/_Notepad.cshtml) ===================== */
.hs-notepad-fab { position: fixed; bottom: 1.5rem; inset-inline-end: 1rem; z-index: 1040; width: 2.75rem; height: 2.75rem; border: 0; border-radius: 50%;
    background-color: rgb(var(--c-warning)); color: rgb(var(--c-on-primary)); box-shadow: var(--shadow-lg); cursor: pointer; }
.hs-notepad-fab:hover, .hs-notepad-fab:focus { filter: brightness(.95); }
.hs-notepad { position: fixed; bottom: 5.5rem; inset-inline-end: 1rem; z-index: 1040; width: min(26rem, calc(100vw - 2rem)); max-height: calc(100vh - 8rem);
    display: flex; flex-direction: column; background-color: rgb(var(--c-surface)); color: rgb(var(--c-fg));
    border: 1px solid rgb(var(--c-line)); border-radius: var(--radius); box-shadow: var(--shadow-lg); }
.hs-notepad[hidden] { display: none; }
.hs-notepad-head { display: flex; align-items: center; justify-content: space-between; padding: .6rem .8rem; border-bottom: 1px solid rgb(var(--c-line)); }
.hs-notepad-title { font-weight: 700; }
.hs-notepad-title i { margin-inline-end: .4rem; color: rgb(var(--c-warning)); }
.hs-notepad-hint { padding: .5rem .8rem; font-size: .8rem; color: rgb(var(--c-muted)); background-color: rgb(var(--c-surface-2)); }
.hs-notepad-list { overflow-y: auto; padding: .4rem .8rem; min-height: 5rem; }
.hs-notepad-item { display: flex; align-items: flex-start; justify-content: space-between; gap: .5rem; padding: .4rem 0; border-bottom: 1px solid rgb(var(--c-line)); }
.hs-notepad-item:last-child { border-bottom: 0; }
.hs-notepad-item .custom-control-label { white-space: pre-wrap; word-break: break-word; line-height: 1.7; }
.hs-notepad-add { display: flex; flex-wrap: wrap; gap: .4rem; padding: .6rem .8rem; border-top: 1px solid rgb(var(--c-line)); }
.hs-notepad-add .form-control { flex: 1 1 100%; }
.hs-notepad-foot { display: flex; align-items: center; justify-content: space-between; padding: .6rem .8rem; border-top: 1px solid rgb(var(--c-line)); }
@media print { .hs-notepad-fab, .hs-notepad { display: none !important; } }

/* نافذة أخطاء البيانات بعد الدخول (#hsErrPopup، 2026-10-13) */
.hs-errpop-lead { margin-bottom: .75rem; }
.hs-errpop-head { font-weight: 700; font-size: .9rem; margin: .75rem 0 .35rem; color: rgb(var(--c-muted)); }
.hs-errpop-list { list-style: none; margin: 0; padding: 0; border: 1px solid rgb(var(--c-line)); border-radius: var(--radius); }
.hs-errpop-list li { display: flex; justify-content: space-between; gap: .75rem; padding: .45rem .75rem; }
.hs-errpop-list li + li { border-top: 1px solid rgb(var(--c-line)); }
.hs-errpop-list b { color: rgb(var(--c-danger)); white-space: nowrap; }
.hs-errpop-more { font-size: .85rem; color: rgb(var(--c-muted)); margin-top: .35rem; }
.hs-errpop-total { margin-top: .9rem; }
