body.auth-checking {
  overflow: hidden;
  background: #080807;
}

body.auth-checking > * { visibility: hidden; }

body.auth-checking::before {
  content: "Memeriksa sesi admin";
  position: fixed;
  z-index: 10000;
  inset: 50% auto auto 50%;
  visibility: visible;
  transform: translate(-50%, 18px);
  color: #d9b659;
  font: 700 11px/1.2 system-ui, sans-serif;
  letter-spacing: .18em;
  text-transform: uppercase;
}

body.auth-checking::after {
  content: "";
  position: fixed;
  z-index: 10001;
  left: calc(50% - 13px);
  top: calc(50% - 24px);
  width: 24px;
  height: 24px;
  visibility: visible;
  border: 2px solid rgba(218, 180, 77, .18);
  border-top-color: #e8bc4f;
  border-radius: 50%;
  animation: auth-session-spin .75s linear infinite;
}

@keyframes auth-session-spin { to { transform: rotate(360deg); } }

.dashboard-refresh {
  min-height: 40px;
  padding: 0 15px;
  border: 1px solid rgba(208, 166, 62, .3);
  border-radius: 10px;
  background: rgba(27, 23, 13, .82);
  color: #f0dfae;
  font-weight: 700;
  cursor: pointer;
  transition: border-color .2s ease, background .2s ease, transform .2s ease;
}

.dashboard-refresh:hover:not(:disabled) {
  border-color: rgba(236, 191, 75, .75);
  background: rgba(223, 175, 54, .1);
  transform: translateY(-1px);
}

.dashboard-refresh:disabled { cursor: wait; opacity: .65; }

.frequent-chat-card { margin-top: 18px; overflow: hidden; }
.frequent-chat-card > header { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:20px 22px; border-bottom:1px solid rgba(207,165,61,.17); }
.frequent-chat-card header small { display:block; margin-bottom:5px; color:#d4a93f; font-size:10px; font-weight:800; letter-spacing:.16em; }
.frequent-chat-card header h2 { margin:0; }
.frequent-chat-card header p { margin:7px 0 0; color:var(--muted,#9a9487); font-size:12px; }
.frequent-chat-live { display:inline-flex; align-items:center; gap:7px; flex:0 0 auto; padding:7px 10px; border:1px solid rgba(65,215,143,.3); border-radius:999px; color:#69e9a6; background:rgba(34,151,95,.1); font-size:9px; letter-spacing:.1em; }
.frequent-chat-live i,.frequent-chat-status i { width:6px; height:6px; border-radius:50%; background:currentColor; box-shadow:0 0 9px currentColor; }
.frequent-chat-table td { vertical-align:middle; }
.frequent-chat-rank { display:inline-grid; width:30px; height:30px; place-items:center; border:1px solid rgba(224,179,66,.3); border-radius:9px; color:#e9bd53; background:rgba(224,179,66,.07); font:800 12px/1 system-ui,sans-serif; }
.frequent-chat-member { display:flex; flex-direction:column; gap:3px; }
.frequent-chat-member b { color:#f1ead8; }
.frequent-chat-member small,.frequent-chat-last { color:var(--muted,#9a9487); }
.frequent-chat-count { color:#e9bd53; font-size:15px; }
.frequent-chat-status { display:inline-flex; align-items:center; gap:6px; color:#69e9a6; font-size:10px; font-weight:800; }
.frequent-chat-status.banned { color:#ff7d7d; }
.frequent-chat-status.unknown { color:#d8a95a; }

@media (max-width:760px) {
  .dashboard-refresh span { display:none; }
  .dashboard-refresh { padding:0 13px; }
  .frequent-chat-card > header { padding:17px; }
}

.dashboard-emblem::before {
  content:"";
  position:absolute;
  width:190px;
  height:190px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(222,177,66,.15),rgba(222,177,66,.035) 48%,transparent 70%);
  filter:blur(5px);
  animation:dashboard-emblem-aura 7s ease-in-out infinite;
}

.dashboard-emblem img {
  animation:dashboard-crest-float 6s ease-in-out infinite;
  will-change:transform,filter;
}

.dashboard-emblem .ring-one { animation:dashboard-ring-breathe 6s ease-in-out infinite; }
.dashboard-emblem .ring-two { animation-duration:24s; }
.dashboard-metrics .dashboard-metric { animation:dashboard-card-enter .46s ease-out both; }
.dashboard-metrics .dashboard-metric:nth-child(2) { animation-delay:.04s; }
.dashboard-metrics .dashboard-metric:nth-child(3) { animation-delay:.08s; }
.dashboard-metrics .dashboard-metric:nth-child(4) { animation-delay:.12s; }
.dashboard-metrics .dashboard-metric:nth-child(5) { animation-delay:.16s; }
.bar-chart .chart-day > i { transform-origin:bottom; animation:dashboard-bar-enter .55s ease-out both; }

@keyframes dashboard-emblem-aura {
  0%,100% { opacity:.48; transform:scale(.94); }
  50% { opacity:.78; transform:scale(1.035); }
}

@keyframes dashboard-ring-breathe {
  0%,100% { opacity:.42; transform:scale(.98); }
  50% { opacity:.67; transform:scale(1.015); }
}

@keyframes dashboard-crest-float {
  0%,100% { transform:translateY(1px) scale(.995); filter:drop-shadow(0 16px 20px rgba(0,0,0,.45)) drop-shadow(0 0 10px rgba(222,177,66,.12)); }
  50% { transform:translateY(-6px) scale(1.015); filter:drop-shadow(0 20px 25px rgba(0,0,0,.5)) drop-shadow(0 0 17px rgba(222,177,66,.2)); }
}

@keyframes dashboard-card-enter {
  from { opacity:0; transform:translateY(7px); }
  to { opacity:1; transform:translateY(0); }
}

@keyframes dashboard-bar-enter {
  from { transform:scaleY(.08); opacity:.35; }
  to { transform:scaleY(1); opacity:1; }
}

@media (prefers-reduced-motion:reduce) {
  .dashboard-emblem::before,.dashboard-emblem img,.dashboard-emblem .ring-one,.dashboard-metrics .dashboard-metric,.bar-chart .chart-day > i { animation:none !important; }
}
