/* Small additions on top of the design system. Tokens stay in tokens.css. */

.login-wrap {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: var(--space-6);
  background: var(--color-bg);
}

.login-card {
  width: min(26rem, 100%);
  background: var(--color-bg-raised);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  padding: var(--space-8) var(--space-6);
}

.login-card__brand {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-6);
  color: var(--color-burgundy-800);
  text-decoration: none;
}

.login-card__brand strong { display: block; font-size: var(--font-size-h4); }
.login-card h1 { margin-bottom: var(--space-2); }

.admin-sidebar__foot .btn {
  margin-top: var(--space-3);
  color: var(--color-cream-100);
  background: transparent;
  border-color: transparent;
  padding-inline: 0;
}

.admin-sidebar__foot .btn:hover { color: var(--color-gold-400); }

.unavailable {
  background: var(--color-cream-300);
  color: var(--color-text-secondary);
  border-radius: var(--radius-md);
  padding: var(--space-4);
  margin: var(--space-3) 0;
}

tr.is-risk td:first-child { box-shadow: inset -3px 0 0 var(--color-coral-500); }

.table tbody tr[data-href] { cursor: pointer; }
.table tbody tr[aria-selected="true"] { background: var(--color-burgundy-50, var(--color-cream-300)); }

.admin-nav a[hidden],
.admin-nav-mobile a[hidden],
[hidden] { display: none !important; }

.dropzone input[type="file"] {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.dropzone { position: relative; }

.pager-status { margin-top: var(--space-3); }

#perm-gate { margin-bottom: var(--space-6); }

@media (max-width: 767px) {
  .admin-pagehead.cluster-between,
  .cluster-between { align-items: stretch; }
  .admin-topbar__meta .btn { min-height: 2.75rem; }
}
