/*
 * A2TDEV Public Action Language — Upgrade 100
 *
 * The homepage remains the visual reference. This layer gives equivalent
 * public-facing actions the same geometry, hierarchy, hover/focus treatment,
 * and directional-arrow motion without flattening genuinely different roles
 * such as icon controls, admin actions, pagination, or compact reader links.
 */

body.a2t-production-shell .a2t-site-action {
  display: inline-flex !important;
  min-height: 48px !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 28px !important;
  padding: 0 18px !important;
  border: 1px solid transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font: 500 10px/1 var(--a2t-mono) !important;
  letter-spacing: .09em !important;
  text-align: center;
  text-decoration: none !important;
  text-transform: uppercase !important;
  white-space: nowrap;
  transform: none !important;
  transition:
    color var(--a2t-transition),
    background var(--a2t-transition),
    border-color var(--a2t-transition),
    box-shadow var(--a2t-transition) !important;
}

body.a2t-production-shell .a2t-site-action:hover,
body.a2t-production-shell .a2t-site-action:focus-visible,
body.a2t-production-shell .a2t-site-action:active {
  transform: none !important;
}

body.a2t-production-shell .a2t-site-action:focus-visible {
  outline: none !important;
  box-shadow:
    0 0 0 2px rgba(200, 243, 79, .18),
    0 0 0 1px rgba(200, 243, 79, .62) !important;
}

/* Primary conversion action on dark surfaces: the homepage lime control. */
body.a2t-production-shell .a2t-site-action.is-primary {
  border-color: var(--a2t-accent) !important;
  background: var(--a2t-accent) !important;
  color: var(--a2t-ink) !important;
}

body.a2t-production-shell .a2t-site-action.is-primary:hover,
body.a2t-production-shell .a2t-site-action.is-primary:focus-visible {
  border-color: var(--a2t-accent-hover) !important;
  background: var(--a2t-accent-hover) !important;
  color: var(--a2t-ink) !important;
}

/* Secondary peer action on dark surfaces: quiet, but still a real button. */
body.a2t-production-shell .a2t-site-action.is-secondary {
  border-color: rgba(255, 255, 255, .24) !important;
  background: rgba(255, 255, 255, .025) !important;
  color: #e4e9e6 !important;
}

body.a2t-production-shell .a2t-site-action.is-secondary:hover,
body.a2t-production-shell .a2t-site-action.is-secondary:focus-visible {
  border-color: rgba(200, 243, 79, .70) !important;
  background: rgba(200, 243, 79, .055) !important;
  color: var(--a2t-white) !important;
}

/* Primary action on light/accent surfaces: homepage black control. */
body.a2t-production-shell .a2t-site-action.is-dark-primary {
  border-color: var(--a2t-ink) !important;
  background: var(--a2t-ink) !important;
  color: var(--a2t-white) !important;
}

body.a2t-production-shell .a2t-site-action.is-dark-primary:hover,
body.a2t-production-shell .a2t-site-action.is-dark-primary:focus-visible {
  border-color: var(--a2t-accent) !important;
  background: var(--a2t-accent) !important;
  color: var(--a2t-ink) !important;
}

/* Secondary action on light/accent surfaces remains intentionally text-led. */
body.a2t-production-shell .a2t-site-action-link {
  display: inline-flex !important;
  min-height: 40px;
  align-items: center;
  gap: 14px;
  padding: 8px 0;
  color: #173c30 !important;
  font: 500 9px/1.3 var(--a2t-mono) !important;
  letter-spacing: .10em !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  transform: none !important;
}

body.a2t-production-shell .a2t-site-action-link:hover,
body.a2t-production-shell .a2t-site-action-link:focus-visible {
  color: var(--a2t-ink) !important;
  outline: none;
  text-decoration: underline !important;
  text-underline-offset: 5px;
}

body.a2t-production-shell .a2t-site-action .a2t-motion-arrow,
body.a2t-production-shell .a2t-site-action-link .a2t-motion-arrow {
  display: inline-block;
  flex: 0 0 auto;
  color: currentColor;
  transition: transform .2s ease;
}

body.a2t-production-shell .a2t-site-action.is-secondary .a2t-motion-arrow {
  color: var(--a2t-accent);
}

body.a2t-production-shell .a2t-site-action:hover .a2t-motion-arrow.is-ne,
body.a2t-production-shell .a2t-site-action-link:hover .a2t-motion-arrow.is-ne {
  transform: translate(2px, -2px);
}

body.a2t-production-shell .a2t-site-action:hover .a2t-motion-arrow.is-east,
body.a2t-production-shell .a2t-site-action-link:hover .a2t-motion-arrow.is-east {
  transform: translateX(3px);
}

body.a2t-production-shell .a2t-site-action:hover .a2t-motion-arrow.is-south,
body.a2t-production-shell .a2t-site-action-link:hover .a2t-motion-arrow.is-south {
  transform: translateY(3px);
}

/* Keep the persistent header CTA in the same interaction family while its
   compact navigation geometry remains intentionally distinct. */
body.a2t-production-shell .a2t-nav-cta {
  border-color: rgba(255, 255, 255, .28) !important;
  background: transparent !important;
  color: var(--a2t-white) !important;
}

body.a2t-production-shell .a2t-nav-cta:hover,
body.a2t-production-shell .a2t-nav-cta:focus-visible {
  border-color: var(--a2t-accent) !important;
  background: var(--a2t-accent) !important;
  color: var(--a2t-ink) !important;
}

/* Phone actions share the same hierarchy and become comfortably tappable.
   CTA groups already stack on the marketing pages; full width prevents the
   secondary action from looking like unrelated loose text. */
@media (max-width: 760px) {
  body.a2t-production-shell .a2t-site-action {
    width: 100% !important;
    min-height: 50px !important;
    padding-inline: 18px !important;
  }

  body.a2t-production-shell .a2t-site-action-link {
    min-height: 44px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.a2t-production-shell .a2t-site-action .a2t-motion-arrow,
  body.a2t-production-shell .a2t-site-action-link .a2t-motion-arrow {
    transition: none !important;
  }

  body.a2t-production-shell .a2t-site-action:hover .a2t-motion-arrow,
  body.a2t-production-shell .a2t-site-action-link:hover .a2t-motion-arrow {
    transform: none !important;
  }
}
