/* VKR typography v0.8.1 — Helvetica Neue inspired, using local system fonts only. */
:root {
  --vkr-font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-family: var(--vkr-font-family) !important;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

html,
body,
button,
input,
select,
textarea,
table {
  font-family: var(--vkr-font-family) !important;
}

body {
  font-weight: 400;
}

h1, h2, h3, h4, h5, h6,
.page-heading h1,
.login-card h1,
.activity-head h2,
.entry-card h2,
.section-heading h2,
.image-card-copy h3,
.manufacturer-card h3,
.technology-card h3,
.activity-manufacturer-card h3,
.technology-product-copy h3,
.management-title-row h1,
.policy-card h2,
.form-section h2 {
  font-weight: 500 !important;
  letter-spacing: -0.018em;
}

strong,
b {
  font-weight: 600;
}

.button,
.entry-button,
.back-button,
.management-tabs a,
.table-actions a {
  font-weight: 500 !important;
}

.brand,
.eyebrow,
.entry-kicker,
.form-stack label,
.form-field > label,
.checkbox-label,
.management-table th {
  font-weight: 600 !important;
}

.quick-access-copy strong {
  font-weight: 600 !important;
}

/* Keep small labels readable without the extra-heavy appearance. */
.state-tag,
.mini-tag,
.role-chip,
.status-active,
.status-inactive,
.use-payment-check,
.user-label {
  font-weight: 400;
}

/* Use a consistent, slightly lighter control style throughout the custom app. */
input,
select,
textarea,
button {
  font-weight: 400;
}

.button,
.entry-button,
.back-button {
  font-weight: 500 !important;
}

/* Preserve clear hierarchy while keeping the VKR orange accents unchanged. */
.back-button {
  letter-spacing: 0.035em;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
  }
}
