/* ═══════════════════════════════════════════════════
   ADICIS™ Lab — Utilities
   Acessibilidade · Movimento Reduzido · Print · Focus
   ═══════════════════════════════════════════════════ */

/* ── Movimento Reduzido (CRÍTICO) ── */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration:        0.01ms !important;
    animation-iteration-count: 1      !important;
    transition-duration:       0.01ms !important;
    scroll-behavior:           auto   !important;
  }
  #bg-canvas, #loading-canvas { display: none !important; }
  body { background: #020B1F !important; }
  .loading-screen { transition: none !important; }
}

/* ── Foco Visível ── */
:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
  border-radius: 4px;
}
button:focus-visible, [role="button"]:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 2px;
}
:focus:not(:focus-visible) { outline: none; }

/* ── Skip Link ── */
.skip-link {
  position: absolute; top: -100%; left: 20px;
  padding: 12px 24px; background: var(--gold); color: #020B1F;
  font-weight: 700; font-size: 0.95em; font-family: 'Inter', system-ui, sans-serif;
  border-radius: 0 0 10px 10px; z-index: 99999;
  transition: top 0.2s ease; text-decoration: none;
}
.skip-link:focus { top: 0; }

/* ── Impressão ── */
@media print {
  .loading-screen, #bg-canvas, .header, .scroll-hint, .overlay,
  .btn-lang, .btn-novidades, [id$="Fullscreen"], [id$="CloseBtn"],
  #adicisModalOverlay, .breadcrumb { display: none !important; }
  body { background: white !important; color: #111 !important; font-size: 12pt; }
  .hero-section { margin: 0; padding: 20px; animation: none; }
  .hero-section h1 { color: #111 !important; -webkit-text-fill-color: #111 !important; background: none !important; }
  .hexagon-grid, .main-container { display: none !important; }
}

/* ── Indicador de Tradução ── */
#adicis-translating {
  position: fixed; bottom: 24px; right: 24px;
  padding: 10px 20px; background: rgba(79,195,247,0.12);
  border: 1px solid rgba(79,195,247,0.5); border-radius: 20px;
  color: #4FC3F7; font-size: 0.85em; font-family: 'Inter', system-ui, sans-serif;
  z-index: 99999; backdrop-filter: blur(10px);
  display: flex; align-items: center; gap: 8px;
  animation: fadeInUp 0.3s ease;
}

/* ── AMO Inline Icon Blocks ────────────────────────────────── */
.inline-icon-block {
    font-size: 1.8em;
    margin-bottom: 10px;
    color: currentColor;
    font-weight: 300;
    letter-spacing: -0.02em;
}

.inline-svg-icon {
    width: 1em;
    height: 1em;
    vertical-align: middle;
    display: inline-block;
}

.tl-svg-icon {
    width: 1.6em;
    height: 1.6em;
    display: block;
    margin: 0 auto;
}

.novidades-btn-icon {
    width: 0.8em;
    height: 0.8em;
    vertical-align: middle;
    display: inline-block;
}

.notice-marker {
    display: inline-block;
    margin-right: 0.3em;
    color: #FFD95A;
    font-size: 0.95em;
}
