/* Base only: homepage cards never leak into application panels. */
* { box-sizing: border-box; }
html { min-height: 100%; scroll-padding-top: 96px; }
body {
  margin: 0; min-width: 0; color: var(--text); background: var(--bg);
  font: 16px/1.55 ui-sans-serif, system-ui, -apple-system, "Segoe UI", "Noto Sans KR", Arial, sans-serif;
}
button, input, select, textarea { font: inherit; }
a { color: inherit; }
:focus-visible { outline: 3px solid var(--ds-focus); outline-offset: 3px; }
.ds-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.ds-skip { position: fixed; z-index: 2000; top: 8px; left: 8px; padding: 10px 16px; border-radius: 8px; background: var(--panel); transform: translateY(-160%); }
.ds-skip:focus { transform: none; }
@media (prefers-reduced-motion: reduce) {
  .ds-header *, .ds-home * { scroll-behavior: auto; transition: none; }
}
