/*
 * Ducky — brand theme polish. Color tokens live in theme.json.
 * Use var(--ducky-*) only here.
 */

.ducky-card,
.admin-widget,
.card {
  box-shadow: var(--ducky-shadow-sm);
}

button,
.ducky-btn,
.btn,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="file"],
select,
textarea {
  border-radius: var(--ducky-radius-md);
}

.admin-nav-link {
  border-radius: var(--ducky-radius-md);
}

.input-group input:focus,
.input-group textarea:focus {
  box-shadow: var(--ducky-shadow-focus);
}

.alert,
.ducky-flash {
  border-radius: var(--ducky-radius-sm);
}

.site-header-inner {
  max-width: var(--ducky-layout-contentMax);
}

.site-footer-copy {
  font-family: var(--ducky-font-body);
}

/* Auth pages — card, copy, and footer nav (shared with install patterns) */
.auth-card {
  width: 100%;
  max-width: var(--ducky-layout-authMax);
  background: var(--ducky-color-cardBg);
  border-radius: var(--ducky-radius-lg);
  box-shadow: var(--ducky-shadow-lg);
  padding: calc(var(--ducky-space-lg) * 1.5) var(--ducky-space-lg);
}

.auth-card h1 {
  font-size: 1.75rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  margin-bottom: var(--ducky-space-sm);
}

.auth-card .header-desc {
  color: var(--ducky-color-textMuted);
  font-size: 0.9375rem;
  margin-bottom: calc(var(--ducky-space-lg) * 1.25);
}

.auth-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: var(--ducky-space-sm) var(--ducky-space-lg);
  margin-top: calc(var(--ducky-space-lg) * 1.25);
  padding-top: var(--ducky-space-lg);
  border-top: 1px solid var(--ducky-color-border);
}

.auth-link {
  font-family: var(--ducky-font-heading);
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--ducky-color-secondary);
  text-decoration: none;
  transition: color var(--ducky-transition-fast);
}

.auth-link:hover {
  color: var(--ducky-color-primary);
  text-decoration: underline;
}
