/* Small additions only. Anything expressible in theme.json belongs there. */

:root { scroll-behavior: smooth; }

/* Visible focus for keyboard users (WCAG 2.1 AA). */
:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--wp--preset--color--accent);
  outline-offset: 2px;
}

/* Skip link */
.skip-link:focus {
  position: fixed; top: 1rem; left: 1rem; z-index: 999;
  background: var(--wp--preset--color--base); padding: .75rem 1rem; border-radius: 6px;
}

/* Ad slots — reserve space to avoid layout shift, never collapse to zero. */
.sit-ad { display: block; margin: var(--wp--preset--spacing--50) auto; text-align: center; min-height: 90px; }
.sit-ad__label {
  display: block; font-size: .75rem; letter-spacing: .08em; text-transform: uppercase;
  color: var(--wp--preset--color--muted); margin-bottom: .35rem;
}

/* Forms rendered by sit-iot-core */
.sit-form { display: grid; gap: var(--wp--preset--spacing--30); max-width: 40rem; }
.sit-form label { font-weight: 600; display: block; margin-bottom: .3rem; }
.sit-form input, .sit-form select, .sit-form textarea {
  width: 100%; padding: .7rem .8rem; border: 1px solid var(--wp--preset--color--border);
  border-radius: 6px; font: inherit; background: var(--wp--preset--color--base);
}
.sit-form .sit-form__consent { display: flex; gap: .6rem; align-items: flex-start; font-weight: 400; }
.sit-form .sit-form__consent input { width: auto; margin-top: .25rem; }
.sit-form__hp { position: absolute; left: -9999px; }
.sit-form__notice { padding: .9rem 1rem; border-radius: 6px; border: 1px solid var(--wp--preset--color--border); }
.sit-form__notice--ok { border-color: var(--wp--preset--color--accent); }
.sit-form__notice--error { border-color: #c0392b; }

/* Language switcher */
.sit-langs { display: inline-flex; gap: .5rem; align-items: center; font-size: .9rem; }
.sit-langs__current { font-weight: 700; }
