.auth-shell {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 40px;
  background: #f4f3f2;
}

.auth-brand {
  position: fixed;
  top: 30px;
  left: 34px;
  display: flex;
  align-items: center;
  gap: 12px;
}

.auth-brand img {
  width: 74px;
  height: 56px;
  padding: 4px;
  border-radius: 5px;
  background: #fff;
  object-fit: contain;
}

.auth-brand strong,
.auth-brand span,
.user-menu strong,
.user-menu span,
.audit-item strong,
.audit-item small {
  display: block;
}

.auth-brand strong { font-size: 17px; }
.auth-brand span { margin-top: 4px; color: #888; font-size: 12px; }

.auth-panel {
  width: min(420px, 100%);
  padding: 36px;
  border: 1px solid var(--line);
  border-top: 3px solid var(--red);
  border-radius: 7px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(31, 31, 31, .08);
}

.auth-panel h1 { margin: 9px 0 7px; font-size: 25px; }
.auth-panel > p { margin: 0 0 24px; color: #777; font-size: 13px; line-height: 1.6; }
.auth-panel form { display: grid; gap: 15px; }
.auth-panel label { display: grid; gap: 7px; font-size: 13px; font-weight: 600; }
.auth-panel input { height: 43px; padding: 0 12px; }
.auth-panel small { display: block; margin-top: 14px; color: #999; line-height: 1.5; }
.auth-submit { width: 100%; height: 44px; margin-top: 4px; }

.user-menu {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-left: 12px;
  border-left: 1px solid var(--line);
}

.user-menu > div { text-align: right; }
.user-menu strong { font-size: 13px; }
.user-menu span { margin-top: 3px; color: #888; font-size: 11px; }

.admin-layout {
  display: grid;
  grid-template-columns: 320px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.admin-create { position: sticky; top: 18px; }
.full-btn { width: 100%; margin-top: 18px; }
.admin-main { display: grid; gap: 16px; }
.admin-table { margin-top: 0; }
.self-label { color: #999; font-size: 12px; }
.audit-list { display: grid; }

.audit-item {
  display: flex;
  gap: 12px;
  padding: 13px 0;
  border-bottom: 1px solid #eee;
}

.audit-item:last-child { border: 0; }
.audit-dot { width: 8px; height: 8px; margin-top: 5px; border-radius: 50%; background: var(--red); flex-shrink: 0; }
.audit-item strong { font-size: 13px; font-weight: 600; }
.audit-item small { margin-top: 5px; color: #999; }
.empty-inline { padding: 20px; color: #999; text-align: center; }

@media (max-width: 720px) {
  .top-actions { flex-wrap: wrap; }
  .admin-layout { grid-template-columns: 1fr; }
  .auth-shell { display: block; padding: 22px; }
  .auth-brand { position: static; margin-bottom: 18px; }
  .auth-panel { padding: 26px 22px; }
  .user-menu > div { display: none; }
}
