* { box-sizing: border-box; }
html, body { width: 100%; min-height: 100%; margin: 0; }
body { background: #102836; color: var(--ink); font-family: var(--font-body); -webkit-font-smoothing: antialiased; }
button, input { font: inherit; }
button { border: 0; background: none; color: inherit; cursor: pointer; transition: transform var(--dur-fast) var(--ease-out), background-color var(--dur-fast) ease, color var(--dur-fast) ease, border-color var(--dur-fast) ease, box-shadow var(--dur-fast) ease; }
button, a { -webkit-tap-highlight-color: transparent; }
button:active, a:active { transform: scale(0.985); }
img { display: block; max-width: 100%; }
h1, h2, h3, p { margin: 0; }
h1, h2, h3, strong, b { font-family: var(--font-body); }
[hidden] { display: none !important; }
:focus-visible { outline: 3px solid rgba(65, 168, 232, 0.45); outline-offset: 2px; }
.num { font-variant-numeric: tabular-nums; }
xc-app { display: block; min-height: 100vh; }
