
:root{--aio-focus:currentColor}

.aio-sr,.sr-only,.t-sr,[data-ai-hidden="sr"]{
  position:absolute!important;
  width:1px!important;height:1px!important;
  margin:-1px!important;padding:0!important;border:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  opacity:0!important;
  pointer-events:none!important;
  z-index:-1!important
}

:where(a,button,input,textarea,select,[tabindex]):focus-visible{
  outline:2px solid var(--aio-focus)!important;
  outline-offset:2px!important
}

#ai-footer-status,#ai-footer-voice,[data-ai-status]{
  position:absolute!important;left:-9999px!important;top:auto!important;
  width:1px!important;height:1px!important;
  overflow:hidden!important;white-space:nowrap!important;
  pointer-events:none!important
}

/* protect = only where you mark it */
[data-protect="true"]{-webkit-touch-callout:none!important}
[data-protect="true"] img{
  -webkit-user-drag:none!important;
  user-drag:none!important;
  -webkit-user-select:none!important;
  -moz-user-select:none!important;
  user-select:none!important;
  pointer-events:none!important
}
[data-protect="true"] :is(input,textarea,select,button),
[data-protect="true"] [contenteditable="true"],
[data-protect="true"] [data-allow-select="true"],
[data-protect="true"] [data-allow-copy="true"]{
  -webkit-user-select:text!important;
  -moz-user-select:text!important;
  user-select:text!important;
  pointer-events:auto!important
}

/* optional footer helper (если вставляешь aio-footer HTML блоком) */
#aio-footer{padding:18px 14px;border-top:1px solid rgba(255,255,255,.12)}
#aio-footer .aio-footer-nav{
  display:flex;flex-wrap:wrap;gap:10px 14px;
  align-items:center;justify-content:center;
  margin:0 0 14px 0
}
#aio-footer .aio-footer-nav a{text-decoration:none;border-bottom:1px solid transparent}
#aio-footer .aio-footer-nav a:hover,
#aio-footer .aio-footer-nav a:focus-visible{outline:none;border-bottom-color:currentColor}

#aio-footer .aio-footer-search{
  display:flex;gap:10px;justify-content:center;align-items:center;
  flex-wrap:wrap;margin:0
}
#aio-footer .aio-footer-search input[type="search"]{
  min-width:220px;max-width:min(520px,92vw);
  padding:10px 12px;border-radius:10px;
  border:1px solid rgba(255,255,255,.18);
  background:transparent;color:inherit
}
#aio-footer .aio-footer-search button{
  padding:10px 12px;border-radius:10px;
  border:1px solid rgba(255,255,255,.18);
  background:transparent;color:inherit;cursor:pointer
}
#aio-footer .aio-footer-search button:hover,
#aio-footer .aio-footer-search button:focus-visible{outline:none;border-color:rgba(255,255,255,.38)}

@media print{
  .aio-sr,.sr-only,.t-sr,[data-ai-hidden="sr"],#ai-footer-status,#ai-footer-voice{display:none!important}
}