/**
 * Marketing a11y + mobile UX overrides (WCAG AA contrast, touch targets, min font).
 * Loaded after output.css / main.css.
 */

:root {
  --color-text200: #474749; /* ~9:1 on white */
  --color-text300: #5c5c5c; /* ~7:1 on white — was #9e9e9e (~2.8:1) */
}

/* Contrast: muted body/meta text */
.text-text200,
.text-text200\!,
p {
  color: var(--color-text200) !important;
}

.text-text300,
.text-text300\! {
  color: var(--color-text300) !important;
}

/* Muted labels in theme CSS (#6c6c73 / #9e9e9e) */
.mynavbar .nav-links a,
.footer .links a,
.footer .copyright p,
.modal .modal-title .lucide,
.input-group label,
.select-group label,
.textarea-group label {
  color: #474749;
}

/* White text on dark/green: avoid translucent white */
.text-white\/80\!,
.text-white\/80 {
  color: #ffffff !important;
  opacity: 0.95;
}

/* Min readable font on small screens (was text-[11px] / text-xs ~10–12px) */
@media (max-width: 768px) {
  .text-xs,
  .text-\[11px\],
  .md\:text-xs {
    font-size: 0.75rem !important; /* 12px */
    line-height: 1.45 !important;
  }

  html {
    -webkit-text-size-adjust: 100%;
  }
}

/* Touch targets ≥ 44×44px */
.mynavbar .nav-links a,
.mynavbar .nav-actions .btn,
.mynavbar .btn-show-mobile-menu,
.mynavbar .btn-icon,
.footer .links a,
.footer .social-icons a,
.footer .certificate a,
.navbar-bottom .item a,
.sidebar-body a,
.btn-close,
.btn-close-menu,
.modal .btn {
  min-height: 44px;
  min-width: 44px;
  display: inline-flex;
  align-items: center;
  box-sizing: border-box;
}

.footer .social-icons a,
.footer .certificate a {
  justify-content: center;
  padding: 8px;
}

.navbar-bottom .item a {
  flex-direction: column;
  justify-content: center;
  width: 100%;
  padding: 6px 4px;
}

.mynavbar .nav-links a {
  padding-block: 10px;
  padding-inline: 12px;
}
