* {
  box-sizing: border-box;
}

:root {
  font-family: Arial, Helvetica, sans-serif;
  color-scheme: dark;
}

body {
  margin: 0;
  min-height: 100vh;
  background: #101114;
  color: #f5f5f5;
}

.container {
  width: min(720px, calc(100% - 32px));
  margin: 0 auto;
  padding: 60px 0;
}

header {
  text-align: center;
  margin-bottom: 28px;
}

h1 {
  margin: 0 0 8px;
  font-size: clamp(32px, 7vw, 52px);
}

.subtitle {
  margin: 0;
  color: #9ca3af;
}

.account {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  margin-bottom: 18px;
  border: 1px solid #2c2f36;
  border-radius: 14px;
  background: #181a1f;
}

.account img {
  width: 42px;
  height: 42px;
  border-radius: 50%;
}

.account strong {
  display: block;
}

.account span {
  color: #9ca3af;
  font-size: 13px;
}

.people {
  display: grid;
  gap: 10px;
}

.person {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px;
  border: 1px solid #2c2f36;
  border-radius: 14px;
  background: #181a1f;
}

.avatar {
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  border-radius: 50%;
  object-fit: cover;
  background: #2a2d33;
}

.person-name {
  font-size: 17px;
  font-weight: 700;
}

.empty,
.loading {
  padding: 30px;
  text-align: center;
  color: #8f96a3;
  border: 1px dashed #333740;
  border-radius: 14px;
}

.actions {
  display: grid;
  gap: 10px;
  margin-top: 20px;
}

button {
  width: 100%;
  border: 0;
  border-radius: 12px;
  padding: 14px 18px;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
}

button:disabled {
  opacity: .55;
  cursor: not-allowed;
}

.primary {
  background: #4285f4;
  color: white;
}

.primary:hover:not(:disabled) {
  background: #357ae8;
}

.danger {
  background: #b4232d;
  color: white;
}

.secondary {
  background: #2a2d33;
  color: white;
}

.message {
  min-height: 22px;
  text-align: center;
  color: #9ca3af;
}

.hidden {
  display: none !important;
}

.audio-note {
  margin: 10px 0 0;
  color: #6f7682;
  font-size: 13px;
}

.person {
  transition: transform .16s ease, border-color .16s ease, background .16s ease;
}

.person:hover {
  transform: translateY(-2px);
  border-color: #4285f4;
  background: #1b1e24;
}

.person-info {
  min-width: 0;
}

.person-hint {
  margin-top: 4px;
  color: #707784;
  font-size: 12px;
}

.back { color:#9ca3af; text-decoration:none; display:inline-block; margin-bottom:18px; }
.back:hover { color:#fff; }
.editor-card,.profile-card { border:1px solid #2c2f36; border-radius:18px; background:#181a1f; padding:24px; }
.profile-form { display:grid; gap:18px; }
.profile-form label { display:grid; gap:8px; font-weight:700; }
.profile-form input[type="text"],.profile-form input[type="file"],.profile-form input:not([type]) { width:100%; padding:12px; border:1px solid #363a43; border-radius:10px; background:#101114; color:#fff; }
.profile-form small { color:#777f8c; font-weight:400; }
.upload-preview img { width:100px; height:100px; border-radius:50%; object-fit:cover; background:#2a2d33; }
.file-status { color:#9ca3af; font-size:13px; }
.public-profile { max-width:620px; }
.profile-card { text-align:center; min-height:300px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; }
.profile-avatar { width:150px; height:150px; object-fit:cover; border-radius:50%; background:#2a2d33; border:4px solid #2c2f36; }
.profile-card h1 { margin:8px 0 0; }
.profile-label { color:#6f7682; font-size:12px; letter-spacing:2px; margin:0 0 12px; }
.profile-links a { color:#9ca3af; text-decoration:none; }
.person { text-decoration:none; color:inherit; }

.admin-search,.profile-form textarea{width:100%;padding:12px;border:1px solid #363a43;border-radius:10px;background:#101114;color:#fff;box-sizing:border-box;font:inherit}.profile-form textarea{min-height:140px;resize:vertical}.admin-users{display:grid;gap:14px;margin-top:18px}.admin-user{border:1px solid #2c2f36;border-radius:14px;background:#101114;padding:16px}.admin-user-top{display:flex;align-items:center;gap:12px}.admin-user-top .avatar{width:48px;height:48px}.admin-sub{font-size:11px;color:#6f7682;margin-top:3px;word-break:break-all}.badge-options{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.badge-check{border:1px solid #363a43;border-radius:999px;padding:7px 10px;color:#c8ccd3;font-size:12px}.profile-badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:10px 0 18px}.profile-badge{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.08em;background:rgba(255,255,255,.06)}.profile-bio{margin:16px auto;max-width:680px;font-size:18px;font-weight:700;text-align:center}.profile-description{margin:22px auto;max-width:680px;text-align:left}.profile-description h2{font-size:12px;letter-spacing:.12em;margin-bottom:8px}.profile-description p{white-space:pre-wrap;line-height:1.6;opacity:.85}


.person-name{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.list-badges{display:inline-flex;gap:4px;flex-wrap:wrap}.list-badge{font-size:9px;font-weight:800;letter-spacing:.06em;border:1px solid #4a4f5a;border-radius:999px;padding:3px 6px;background:#252830;color:#dfe3ea}.profile-background-default{background:#101114}.profile-background-midnight{background:radial-gradient(circle at 50% 0,#242b48,#090b12 65%);}.profile-background-ocean{background:linear-gradient(135deg,#071d2a,#0b4960 55%,#06131b);}.profile-background-purple{background:linear-gradient(135deg,#1a0b2e,#4c1d95 55%,#10051c);}.profile-background-forest{background:linear-gradient(135deg,#081b12,#14532d 55%,#06110b);}.profile-background-sunset{background:linear-gradient(135deg,#32120b,#9a3412 50%,#3b0764);}.profile-background-grid{background-color:#101114;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:24px 24px}.profile-background-midnight .profile-card,.profile-background-ocean .profile-card,.profile-background-purple .profile-card,.profile-background-forest .profile-card,.profile-background-sunset .profile-card,.profile-background-grid .profile-card{background:#101218cc;backdrop-filter:blur(8px)}.admin-field{display:grid;gap:7px;margin:10px 0;color:#9ca3af;font-size:13px}.admin-field select{width:100%;padding:10px;border:1px solid #363a43;border-radius:10px;background:#181a1f;color:#fff}.admin-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.admin-actions button{font-size:12px;padding:10px}.admin-banned{color:#ff6873;font-size:11px;font-weight:800;margin-top:4px}.admin-user{overflow:hidden}@media(max-width:520px){.admin-actions{grid-template-columns:1fr}}
