:root{
  --sc-primary:#0b4ea2;      /* Nyíregyházi SC kék */
  --sc-primary-dark:#083a78;
  --sc-accent:#e30613;       /* piros akcent */
  --sc-sidebar-w:250px;
  --sc-bg:#f4f6fa;
}
body{background:var(--sc-bg);font-size:.925rem;}

/* Sötét mód (Bootstrap 5.3 data-bs-theme) — egyedi elemek felülírása */
[data-bs-theme="dark"]{ --sc-bg:#16191d; }
[data-bs-theme="dark"] .sc-topbar{ background:#1f2327; border-bottom-color:#2b3036; }
[data-bs-theme="dark"] .sc-topbar .text-dark{ color:#e6e6e6 !important; }

/* Sidebar összecsukás (asztali, ikon-nézet) */
@media (min-width:992px){
  html.sc-collapsed{ --sc-sidebar-w:64px; }
  html.sc-collapsed .sc-sidebar .nav-link span,
  html.sc-collapsed .sc-sidebar .nav-section,
  html.sc-collapsed .sc-sidebar .brand-title,
  html.sc-collapsed .sc-sidebar .sidebar-footer{ display:none; }
  html.sc-collapsed .sc-sidebar .nav-link{ justify-content:center; }
  html.sc-collapsed .sc-sidebar .brand img{ max-height:32px; }
}

/* Sidebar */
.sc-sidebar{
  position:fixed;top:0;left:0;bottom:0;width:var(--sc-sidebar-w);
  background:linear-gradient(180deg,var(--sc-primary-dark),var(--sc-primary));
  color:#fff;display:flex;flex-direction:column;z-index:1040;
  transition:transform .25s ease;
}
.sc-sidebar .brand{padding:1rem 1.1rem;border-bottom:1px solid rgba(255,255,255,.12);}
.sc-sidebar .brand img{max-height:42px;background:#fff;border-radius:6px;padding:4px 8px;}
.sc-sidebar .brand-title{margin-top:.5rem;font-weight:700;letter-spacing:.04em;font-size:1.05rem;color:#fff;}

/* API status banner */
.api-status{border-radius:14px;}
.api-dot{width:10px;height:10px;border-radius:50%;display:inline-block;}
.api-dot.up{background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.25);}
.api-dot.down{background:#ef4444;box-shadow:0 0 0 4px rgba(239,68,68,.25);}
@keyframes apipulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.45);}70%{box-shadow:0 0 0 8px rgba(34,197,94,0);}100%{box-shadow:0 0 0 0 rgba(34,197,94,0);}}
.api-dot.up{animation:apipulse 2s infinite;}
.sc-sidebar .nav-link{
  color:rgba(255,255,255,.82);border-radius:8px;margin:2px 10px;padding:.55rem .8rem;
  display:flex;align-items:center;gap:.65rem;font-weight:500;
}
.sc-sidebar .nav-link i{width:20px;text-align:center;font-size:1.05rem;}
.sc-sidebar .nav-link:hover{background:rgba(255,255,255,.12);color:#fff;}
.sc-sidebar .nav-link.active{background:#fff;color:var(--sc-primary-dark);}
.sc-sidebar .nav-section{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;
  color:rgba(255,255,255,.5);padding:.9rem 1.4rem .3rem;}
.sc-sidebar .sidebar-footer{margin-top:auto;padding:.8rem 1.1rem;border-top:1px solid rgba(255,255,255,.12);font-size:.8rem;}

/* Content */
.sc-main{margin-left:var(--sc-sidebar-w);min-height:100vh;}
.sc-topbar{background:#fff;border-bottom:1px solid #e6e9f0;padding:.6rem 1.25rem;
  position:sticky;top:0;z-index:1030;display:flex;align-items:center;gap:1rem;}
.sc-content{padding:1.5rem;}

/* Cards / stat */
.card{border:0;border-radius:14px;box-shadow:0 1px 3px rgba(16,30,54,.06),0 1px 2px rgba(16,30,54,.04);}
.stat-card .stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;
  justify-content:center;font-size:1.4rem;}
.stat-card .stat-value{font-size:1.6rem;font-weight:700;line-height:1;}
.stat-card .stat-label{color:#6b7280;font-size:.8rem;}
.table thead th{font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:#6b7280;}
.btn-sc{background:var(--sc-primary);border-color:var(--sc-primary);color:#fff;}
.btn-sc:hover{background:var(--sc-primary-dark);border-color:var(--sc-primary-dark);color:#fff;}
a{color:var(--sc-primary);}

/* Mobile */
.sc-backdrop{display:none;}
@media (max-width:991.98px){
  .sc-sidebar{transform:translateX(-100%);}
  .sc-sidebar.show{transform:translateX(0);}
  .sc-main{margin-left:0;}
  .sc-backdrop.show{display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:1035;}
}

/* D11 — táblázatok kártyásítása mobilon */
@media (max-width: 576px) {
  table.eo-cards thead { display: none; }
  table.eo-cards, table.eo-cards tbody, table.eo-cards tr, table.eo-cards td { display: block; width: 100%; }
  table.eo-cards tr { border: 1px solid var(--bs-border-color); border-radius: .5rem; margin: .5rem; padding: .35rem .6rem; }
  table.eo-cards td { border: none !important; text-align: right; padding: .25rem .15rem; }
  table.eo-cards td::before { content: attr(data-label); float: left; font-weight: 600; color: var(--bs-secondary-color); margin-right: 1rem; }
  table.eo-cards td[data-label=""]::before { content: ""; }
  table.eo-cards .table-responsive { overflow: visible; }
}
