*, *::before, *::after { box-sizing: border-box; }
html { min-height: 100%; background: var(--ba-bg); -webkit-text-size-adjust: 100%; }
body { min-height: 100%; margin: 0; background: var(--ba-bg); color: var(--ba-text); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.45; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
img, svg { display: block; max-width: 100%; }
svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
h1, h2, h3, p { margin-top: 0; }
h1 { margin-bottom: 6px; font-size: clamp(1.55rem, 5vw, 2rem); line-height: 1.15; letter-spacing: -.03em; }
h2 { margin-bottom: 5px; font-size: 1.12rem; line-height: 1.25; }
h3 { margin-bottom: 5px; font-size: 1rem; }
p { margin-bottom: 0; color: var(--ba-text-soft); }
code { padding: 2px 6px; border-radius: 6px; background: #edf3fb; font-size: .9em; }
[hidden] { display: none !important; }
:focus-visible { outline: 3px solid rgb(7 95 240 / 28%); outline-offset: 2px; }
