/* 관리자 화면 전용 스타일.
   기본 톤(배경·카드·표·버튼)은 speed.css를 그대로 쓰고, 여기에는 관리 화면에만 있는 것만 둔다. */

.wrap-admin { max-width: 980px; }

.admin-badge {
  padding: 2px 8px;
  border-radius: 99px;
  background: #fdeceb;
  color: #b3261e;
  font-size: 0.72rem;
  font-weight: 600;
}
.account-panel { padding: 14px 20px; }
.account-since {
  flex: 1;
  font-size: 0.78rem;
  color: var(--muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.admin-summary { margin-bottom: 16px; }

/* ---- 도구 줄 ---- */
.admin-toolbar {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  flex-wrap: wrap;
}
.admin-search {
  flex: 1;
  min-width: 180px;
  height: 38px;
  padding: 0 14px;
  font: inherit;
  font-size: 0.9rem;
  color: var(--text);
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 10px;
  outline: none;
}
.admin-search:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(59, 108, 240, 0.12);
}
.admin-toolbar .btn { padding: 9px 16px; font-size: 0.88rem; }

/* ---- 결과 안내 ---- */
.admin-msg {
  margin: 0 0 14px;
  padding: 11px 14px;
  border-radius: 10px;
  font-size: 0.88rem;
  line-height: 1.55;
}
.admin-msg.ok { background: #e7f6ee; color: #1f6f4a; }
.admin-msg.err { background: #fdeceb; color: #b3261e; }

/* ---- 표 ---- */
.table-scroll { overflow-x: auto; }
.admin-table { min-width: 640px; }
.admin-table td { vertical-align: middle; }
.admin-table .col-action { text-align: right; }
.admin-table td.col-action { text-align: right; white-space: nowrap; }

.cell-user {
  display: flex;
  align-items: center;
  gap: 8px;
}
.cell-avatar {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--line-soft);
  flex-shrink: 0;
}
.cell-name { font-weight: 600; }
.cell-uid {
  display: block;
  font-size: 0.72rem;
  color: var(--muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}
.cell-sub {
  display: block;
  font-size: 0.75rem;
  color: var(--muted);
}
.rank-num {
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.rank-num.top { color: var(--accent); }

/* ---- 관리 버튼 ---- */
.danger-btn {
  padding: 7px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  color: var(--bad);
  font: inherit;
  font-size: 0.82rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s;
}
.danger-btn:hover {
  background: #fdeceb;
  border-color: #f2c3c0;
}
.danger-btn:disabled { opacity: 0.5; cursor: default; }
.danger-btn + .danger-btn { margin-left: 6px; }

.gate { text-align: center; padding: 40px 24px; }
.gate .google-btn { margin: 14px auto 0; }
.gate-msg { margin: 0; font-size: 0.98rem; }

@media (max-width: 560px) {
  .admin-toolbar { flex-direction: column; align-items: stretch; }
  .admin-search { width: 100%; }
}
