/* Friendly error pages: the authenticated-but-not-admin 403 (forbidden.html)
 * and the generic status page (error.html). Token-driven (see tokens.css). */

.kw-forbidden {
  max-width: 480px;
  margin: 4rem auto;
  text-align: center;
  padding: 2.5rem 2rem;
  background: var(--kw-surface);
  border: 1px solid var(--kw-border-color);
  border-radius: var(--kw-radius-xl);
  box-shadow: var(--kw-shadow-card);
}
html.dark .kw-forbidden { -webkit-backdrop-filter: blur(34px); backdrop-filter: blur(34px); }
.kw-forbidden__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 72px;
  border-radius: var(--kw-radius-pill);
  background: rgba(245, 158, 11, 0.12);
  color: #b45309;
  margin-bottom: 1rem;
}
.kw-forbidden__title {
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--kw-fg);
  margin: 0 0 0.5rem;
}
.kw-forbidden__lede {
  color: var(--kw-fg-muted);
  font-size: 0.9375rem;
  line-height: 1.5;
  margin: 0 0 1.25rem;
}
.kw-forbidden__who {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  justify-content: center;
  padding: 0.75rem 1rem;
  background: var(--kw-bg-subtle);
  border: 1px solid var(--kw-border-color);
  border-radius: var(--kw-radius-md);
  margin: 0 0 1.25rem;
  text-align: start;
}
.kw-forbidden__avatar {
  width: 36px; height: 36px;
  flex-shrink: 0;
  border-radius: 50%;
  background: linear-gradient(135deg, #4A56AF, #8352E8);
  color: var(--kw-white);
  display: flex; align-items: center; justify-content: center;
  font-weight: 700;
}
.kw-forbidden__who-name { font-weight: 600; color: var(--kw-fg); font-size: 0.875rem; }
.kw-forbidden__who-meta { font-size: 0.75rem; color: var(--kw-fg-muted); font-family: var(--kw-font-mono); }
.kw-forbidden__hint { font-size: 0.8125rem; color: var(--kw-fg-muted); margin: 0 0 1.5rem; }
.kw-forbidden__actions {
  display: flex; align-items: center; justify-content: center;
  gap: 1rem; flex-wrap: wrap;
}
