/* Browser-only essentials; component appearance belongs to src/theme.ts. */
html[data-paggins] {
  --paggins-focus: #4fd1c5;
  --paggins-input-size: 16px;
  -webkit-text-size-adjust: 100%;
  color-scheme: dark;
}
html[data-paggins], html[data-paggins] body, html[data-paggins] #root {
  height: 100%;
  height: var(--paggins-viewport-height, 100dvh);
  min-height: 0;
}
html[data-paggins] body { overscroll-behavior: none; }
html[data-paggins] #root { overflow: hidden; }
html[data-paggins] input, html[data-paggins] textarea { font-size: var(--paggins-input-size); }
html[data-paggins] :is(input, textarea, button, a, [role="button"], [role="switch"]):focus-visible {
  outline: 2px solid var(--paggins-focus);
  outline-offset: 3px;
}
html[data-paggins] [dir="auto"] { overflow-wrap: anywhere; }
@media (prefers-reduced-motion: reduce) {
  html[data-paggins] *, html[data-paggins] *::before, html[data-paggins] *::after {
    scroll-behavior: auto;
  }
}
