/* Manu — acessibilidade e ecrãs táteis, partilhado pelas 7 páginas do módulo
   (dashboard, tarefas, estatisticas, equipamentos, definicoes,
   manu-mapa-diario, tarefa-detalhe). Carregado DEPOIS do CSS de cada página.
   Fica só aqui, e não em components.css/base.css, para não mudar os outros
   módulos (Beach, Kitchen, People…) que partilham essas folhas. */

/* Texto mais pequeno do módulo: 12px em vez de 11px. */
:root {
  --fs-xs: 0.75rem;
  /* --grey-500 dava 4,3 a 4,4:1 sobre o vidro claro; este cinzento dá 5:1. */
  --text-muted: #5d687a;
}

/* Rótulos de campo em maiúsculas com 30+ caracteres lêem-se mal: passam a
   frase normal (o peso e a cor mantêm a hierarquia). */
.field__label {
  text-transform: none;
  letter-spacing: 0;
}

/* ---------- foco visível ----------
   Vários componentes tiram o contorno no :focus; sem isto quem navega por
   teclado não vê onde está. O contorno azul cumpre 3:1 sobre vidro claro. */
:is(a, button, [role="button"], summary, [tabindex]:not([tabindex="-1"])):focus-visible {
  outline: 2px solid #0a84ff;
  outline-offset: 2px;
}

.pill-select__control:focus-visible {
  outline: 2px solid #0a84ff;
  outline-offset: 2px;
}

/* ---------- ecrãs táteis: alvos de pelo menos 44px ---------- */
@media (pointer: coarse) {
  .btn,
  .btn-icon,
  .input,
  .select,
  .date-field__trigger,
  .pill-select__control,
  .topbar__toggle,
  .modal__close,
  .nav-item {
    min-height: 44px;
  }

  .btn-icon,
  .topbar__toggle,
  .modal__close {
    min-width: 44px;
  }
}

/* ---------- movimento reduzido ----------
   O bloco global de base.css põe tudo a 0,01ms, o que também apaga o
   feedback útil (hover, foco, mudança de estado). Aqui mantêm-se as
   transições curtas de cor/opacidade/contorno e retira-se só o movimento
   (transform, largura, posição). */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    transition-property: color, background-color, border-color, opacity, box-shadow, outline-color !important;
    transition-duration: 0.12s !important;
    scroll-behavior: auto !important;
  }
}
