:root {
    --ap-ink: #171719;
    --ap-paper: #ffffff;
    --ap-magenta: #ed1d8f;
    --ap-gold: #ffe713;
    --ap-mint: #3fe3cf;
    --ap-blue: #4263ff;
    --ap-muted: #9d9da4;
    --ap-line: rgba(255, 255, 255, 0.16);
    /* YUMA is an Alphantom title with its own action colour, sampled from the
       canonical game mark. Corporate accents keep their original roles; this
       red is reserved for player action, danger and hunt-state focus. */
    --yuma-action: #cc3636;
    --yuma-action-deep: #8f2328;
    --yuma-info: var(--ap-mint);
    --yuma-warning: var(--ap-gold);
    /* Keep the default instrument size; reserve space when text is enlarged. */
    --app-head: max(56px, calc(2.25rem + 20px));
    --app-nav: max(72px, calc(1.25rem + 40px));
    --touch: 44px;
    --space-1: 8px;
    --space-2: 16px;
    --space-3: 24px;
    --space-4: 32px;
}

html,
body {
    width: 100%;
    height: 100%;
    height: 100dvh;
    overflow: hidden;
    background: var(--ap-ink);
    color: var(--ap-paper);
    font-family: "Readex Pro", system-ui, sans-serif;
}

html[dir="rtl"] h1,
html[dir="rtl"] h2,
html[dir="rtl"] h3,
html[dir="rtl"] .display-type {
    font-family: "Lalezar", "Readex Pro", sans-serif;
    font-weight: 400;
}

*,
*::before,
*::after { box-sizing: border-box; }

button,
input,
select,
textarea { font: inherit; }

button { touch-action: manipulation; }

.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}
