/* =========================================================================
   scoreboard.css — TAB მოთამაშეთა სია
   ფერები: #FF4747 · #EAEAEA · მუქი შავი
   ========================================================================= */
#sb-root {
  --r: #ff4747; --l: #eaeaea; --d: #0b0b0d;
  position: fixed; inset: 0; z-index: 23000;
  display: flex; align-items: center; justify-content: center;
  pointer-events: none; opacity: 0; visibility: hidden;
  transition: opacity .22s ease, visibility 0s linear .22s;
  font-family: 'Noto Sans Georgian', 'Manrope', sans-serif;
}
#sb-root.on { opacity: 1; visibility: visible; transition: opacity .22s ease; }
body.cef-focused #sb-root { opacity: 0; visibility: hidden; }

.sb {
  position: relative; width: min(720px, 94vw); padding: 18px 20px 14px; border-radius: 20px; overflow: hidden;
  background: linear-gradient(145deg, rgba(14, 14, 17, .86), rgba(8, 8, 10, .86));
  border: 1px solid rgba(234, 234, 234, .10);
  box-shadow: 0 24px 70px rgba(0, 0, 0, .6), 0 0 40px rgba(255, 71, 71, .14);
  backdrop-filter: blur(10px) saturate(1.15); -webkit-backdrop-filter: blur(10px) saturate(1.15);
  color: var(--l);
  transform: translateY(14px) scale(.97); transition: transform .35s cubic-bezier(.2, 1.2, .4, 1), width .25s ease;
}
#sb-root.on .sb { transform: none; }
.sb::before {
  content: ''; position: absolute; left: 12%; right: 12%; top: 0; height: 2px;
  background: linear-gradient(90deg, transparent, var(--r), transparent); box-shadow: 0 0 16px var(--r);
}
.sb-c2 { width: min(1180px, 96vw); }
.sb-c3, .sb-c4 { width: min(1600px, 96vw); }

/* სათაური */
.sb-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.sb-title { display: flex; align-items: center; gap: 12px; }
.sb-mark {
  width: 6px; height: 34px; border-radius: 3px; background: var(--r);
  box-shadow: 0 0 14px rgba(255, 71, 71, .7);
}
.sb-h1 { font-size: 20px; font-weight: 800; letter-spacing: .02em; }
.sb-h2 { margin-top: 1px; font-size: 12px; font-weight: 600; color: rgba(234, 234, 234, .55); }
.sb-h2:empty { display: none; }
.sb-online {
  display: flex; align-items: center; gap: 8px; padding: 8px 16px; border-radius: 12px;
  background: rgba(255, 71, 71, .12); border: 1px solid rgba(255, 71, 71, .45);
  font-family: 'Rajdhani', 'Manrope', sans-serif; font-size: 20px; font-weight: 700;
}
.sb-online b { color: var(--r); text-shadow: 0 0 10px rgba(255, 71, 71, .6); }
.sb-online span { color: rgba(234, 234, 234, .6); font-size: 16px; }
.sb-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--r); box-shadow: 0 0 10px var(--r); animation: sbPulse 1.6s ease-in-out infinite; }

/* სვეტები და სტრიქონები */
.sb-cols { display: grid; grid-template-columns: repeat(var(--n, 1), 1fr); gap: 0 26px; }
.sb-row {
  display: grid; grid-template-columns: 46px 1fr 120px 54px 74px; align-items: center; gap: 6px;
  height: 34px; padding: 0 12px; border-radius: 9px; font-size: 14px; font-weight: 600;
}
.sb-c3 .sb-row, .sb-c4 .sb-row { grid-template-columns: 46px 1fr 54px 74px; }
.sb-c3 .sb-fac, .sb-c4 .sb-fac { display: none; }
.sb-row.hd {
  height: 26px; margin-bottom: 4px; font-size: 11px; font-weight: 800; letter-spacing: .08em;
  color: rgba(234, 234, 234, .42); border-bottom: 1px solid rgba(234, 234, 234, .08); border-radius: 0;
}
.sb-row:nth-child(even):not(.hd) { background: rgba(234, 234, 234, .035); }
.sb-row.me {
  background: linear-gradient(90deg, rgba(255, 71, 71, .28), rgba(255, 71, 71, .06)) !important;
  box-shadow: inset 3px 0 0 var(--r);
}
.sb-id, .sb-lvl, .sb-ping b { font-family: 'Rajdhani', 'Manrope', sans-serif; font-weight: 700; font-size: 16px; }
.sb-id { color: var(--r); }
.sb-name { display: flex; align-items: center; gap: 8px; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sb-row.me .sb-name { color: #fff; }
.sb-adm {
  flex: 0 0 auto; padding: 1px 6px; border-radius: 5px; font-size: 10px; font-weight: 800; letter-spacing: .06em;
  color: var(--d); background: var(--r);
}
.sb-fac { color: rgba(234, 234, 234, .65); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sb-lvl { color: var(--l); }

/* პინგი */
.sb-ping { display: flex; align-items: center; gap: 7px; }
.sb-bars { display: flex; align-items: flex-end; gap: 2px; height: 14px; }
.sb-bars i { width: 3px; border-radius: 1px; background: rgba(234, 234, 234, .2); }
.sb-bars i:nth-child(1) { height: 5px; } .sb-bars i:nth-child(2) { height: 8px; }
.sb-bars i:nth-child(3) { height: 11px; } .sb-bars i:nth-child(4) { height: 14px; }
.sb-bars i.f { background: var(--l); }
.sb-ping.bad .sb-bars i.f { background: var(--r); }
.sb-ping.bad b { color: var(--r); }

.sb-foot { margin-top: 10px; text-align: center; font-size: 12px; font-weight: 600; color: rgba(234, 234, 234, .5); }
.sb-foot:empty { display: none; }

@keyframes sbPulse { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }
