:root {
    color-scheme: dark;
    --page-background: #030a10;
    --text: #dcecf4;
    --muted: #6d8795;
    --cyan: #56bbe5;
    --warning: #dfa155;
    --critical: #db646b;
    font-family: "Segoe UI Variable", "Segoe UI", system-ui, -apple-system, sans-serif;
    font-synthesis: none;
    background: var(--page-background);
}

* {
    box-sizing: border-box;
}

html {
    min-width: 320px;
    min-height: 100%;
    background: var(--page-background);
}

body {
    min-height: 100vh;
    margin: 0;
    overflow-x: hidden;
    color: var(--text);
    background:
        radial-gradient(circle at 52% 18%, rgba(19, 73, 101, 0.17), transparent 42rem),
        linear-gradient(155deg, #050e16 0%, #030a10 48%, #02070c 100%);
}

body::before {
    position: fixed;
    inset: 0;
    z-index: -1;
    content: "";
    pointer-events: none;
    background:
        linear-gradient(rgba(89, 149, 177, 0.018) 1px, transparent 1px),
        linear-gradient(90deg, rgba(89, 149, 177, 0.018) 1px, transparent 1px);
    background-size: 44px 44px;
    mask-image: linear-gradient(to bottom, #000 0%, transparent 88%);
}

button,
input {
    font: inherit;
}

button {
    color: inherit;
}

h1,
h2,
h3,
p {
    margin-top: 0;
}

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