/* Phase 2 shared controls. Additive, screen-only; ticket/print layouts are untouched. */
@media screen {
  :root { --control-height:44px; --focus-ring:#1d4ed8; --focus-ring-offset:3px; }
  :is(body.ui2026,body.admin-shell) :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible {
    outline:3px solid var(--focus-ring); outline-offset:var(--focus-ring-offset);
  }
  :is(body.ui2026,body.admin-shell) :is(button,.ui-btn,.btn,.pagination a,.pagination .current) {
    min-height:var(--control-height); max-width:100%;
  }
  :is(body.ui2026,body.admin-shell) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]):not([type=color]),select) {
    min-height:var(--control-height);
  }
  :is(body.ui2026,body.admin-shell) textarea { min-height:96px; resize:vertical; }
  :is(body.ui2026,body.admin-shell) [hidden]:not([hidden=until-found]) { display:none!important; }
  :is(body.ui2026,body.admin-shell) :is(.ui-card,.ui-panel,.card,.form-row,.ui-field,.pagination)>* { min-width:0; }
  :is(body.ui2026,body.admin-shell) :is(.pagination,.ui-tabs) { gap:8px; flex-wrap:wrap; }
  :is(body.ui2026,body.admin-shell) .pagination :is(a,span) { display:inline-flex; align-items:center; justify-content:center; min-width:44px; padding:8px 12px; }
  :is(body.ui2026,body.admin-shell) :is(.ui-empty,.empty-state) { overflow-wrap:anywhere; }
  :is(body.ui2026,body.admin-shell) :is(.ui-empty,.empty-state) p { line-height:1.6; }
  :is(body.ui2026,body.admin-shell) :is([role=alert],.flash,.alert,.error) { overflow-wrap:anywhere; }
  body.admin-shell.lv-dark { --focus-ring:#93c5fd; }
  @media (max-width:480px) {
    :is(body.ui2026,body.admin-shell) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea) { font-size:16px; }
    :is(body.ui2026,body.admin-shell) :is(.ui-btn,.btn) { white-space:normal; overflow-wrap:anywhere; }
  }
  @media (prefers-reduced-motion:reduce) {
    html:has(body.ui2026),html:has(body.admin-shell) { scroll-behavior:auto!important; }
    :is(body.ui2026,body.admin-shell) *, :is(body.ui2026,body.admin-shell) *::before, :is(body.ui2026,body.admin-shell) *::after {
      animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; scroll-behavior:auto!important;
    }
  }
}
