/* =====================================================================
   Al Hadi — PROFESSIONAL DESIGN LAYER (staff dashboards: SDMS, EIS, Admin, EduInventory)
   Neutral, theme-friendly refinements (they work in light and dark mode and keep each dashboard's own colours).
   ===================================================================== */
:root { --d-r: 18px; --d-line: rgba(30, 40, 70, .09); --d-shadow: 0 12px 30px -18px rgba(20, 30, 60, .34); --d-ease: cubic-bezier(.2, .8, .3, 1); }
html { -webkit-tap-highlight-color: transparent; scroll-behavior: smooth; }
:focus-visible { outline: 3px solid rgba(201, 152, 42, .6); outline-offset: 2px; }

/* ---------- cards ---------- */
.sdms-panel, .ei-card-panel, .ev-card-panel, .settings-card, .dash-card, .fin-card, .stat-card, .sdms-stat, .ei-stat, .ev-stat, .pending-item, .quick-action-btn {
  border-radius: var(--d-r); border: 1px solid var(--d-line); box-shadow: var(--d-shadow); transition: transform .3s var(--d-ease), box-shadow .3s var(--d-ease);
}
.sdms-stat:hover, .ei-stat:hover, .ev-stat:hover, .stat-card:hover, .quick-action-btn:hover, .pending-item:hover { transform: translateY(-3px); box-shadow: 0 18px 36px -18px rgba(20, 30, 60, .45); }

/* ---------- tables: calm, readable, scannable ---------- */
.sdms-table, .ei-table, .ev-table, .ev-items-table { border-collapse: separate; border-spacing: 0; font-variant-numeric: tabular-nums; }
.sdms-table thead th, .ei-table thead th, .ev-table thead th, .ev-items-table thead th { font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; background: rgba(120, 130, 160, .08); position: sticky; top: 0; z-index: 1; }
.sdms-table td, .ei-table td, .ev-table td, .ev-items-table td { border-bottom: 1px solid var(--d-line); transition: background .15s; }
.sdms-table tbody tr:hover td, .ei-table tbody tr:hover td, .ev-table tbody tr:hover td, .ev-items-table tbody tr:hover td { background: rgba(120, 130, 160, .07); }
.sdms-table-scroll, .ei-table-scroll, .ev-table-scroll, .ev-items-scroll { border-radius: 14px; }

/* ---------- buttons ---------- */
.sdms-btn, .ei-btn, .ev-btn, .abtn, .sdms-mini, .ev-additem-btn { border-radius: 12px; font-weight: 700; letter-spacing: .01em; transition: transform .2s var(--d-ease), box-shadow .2s var(--d-ease), filter .2s, background .2s; }
.sdms-btn:not(.ghost):hover, .ei-btn:not(.ghost):hover, .ev-btn:not(.ghost):hover, .abtn:not(.ghost):hover { transform: translateY(-2px); box-shadow: 0 14px 24px -14px rgba(20, 30, 60, .6); filter: brightness(1.05); }
.sdms-btn:active, .ei-btn:active, .ev-btn:active, .abtn:active { transform: translateY(0) scale(.99); }
.sdms-btn.ghost:hover, .ei-btn.ghost:hover, .ev-btn.ghost:hover, .abtn.ghost:hover { transform: translateY(-1px); }

/* ---------- inputs ---------- */
.sd-field input, .sd-field select, .sd-field textarea, .ei-field input, .ei-field select, .ei-field textarea, .ev-field input, .ev-field select, .ev-field textarea, .form-group input, .form-group select, .form-group textarea, .sdms-search, .ei-search, .ev-search {
  border-radius: 12px; transition: border-color .2s, box-shadow .2s, background .2s;
}
.sd-field input:focus, .sd-field select:focus, .sd-field textarea:focus, .ei-field input:focus, .ei-field select:focus, .ei-field textarea:focus, .ev-field input:focus, .ev-field select:focus, .ev-field textarea:focus, .form-group input:focus, .form-group select:focus, .form-group textarea:focus {
  border-color: #c9982a !important; box-shadow: 0 0 0 4px rgba(201, 152, 42, .2) !important; outline: none;
}

/* ---------- side navigation ---------- */
.sd-nav-item, .ei-nav-item, .adm-nav-item, .ev-nav-item { border-radius: 12px; transition: background .2s, color .2s, transform .2s var(--d-ease), padding .2s; }
.sd-nav-item:hover, .ei-nav-item:hover, .adm-nav-item:hover, .ev-nav-item:hover { transform: translateX(3px); }
.sd-nav-label, .ei-nav-label, .sidebar-section-label, .ev-nav-label { letter-spacing: .14em; }

/* ---------- dialogs ---------- */
.sdms-edit-overlay, .ei-edit-overlay, .ev-edit-overlay { -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }
.sdms-edit-card, .ei-edit-card, .ev-edit-card { border-radius: 22px; box-shadow: 0 30px 70px -24px rgba(10, 15, 40, .6); }

/* ---------- page titles ---------- */
.sd-head h2, .ei-head h2, .ev-head h2, .ap-head h2 { letter-spacing: -.01em; }

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .sdms-stat, .ei-stat, .ev-stat, .stat-card, .quick-action-btn, .pending-item, .sd-nav-item, .ei-nav-item, .adm-nav-item, .ev-nav-item { transition: none; } .sd-nav-item:hover, .ei-nav-item:hover, .adm-nav-item:hover, .ev-nav-item:hover { transform: none; } }
