:root {
    color-scheme: light;
    --background: #f5f5f8;
    --surface: #ffffff;
    --text: #211a2d;
    --muted: #6f657c;
    --primary: #6938c8;
    --primary-dark: #5426a8;
    --border: #ded9e6;
    --success: #087443;
    --danger: #b42318;
    --shadow: 0 8px 24px rgba(33, 26, 45, 0.07);
}

* {
    box-sizing: border-box;
}

html {
    min-height: 100%;
    background: var(--background);
}

body {
    min-height: 100vh;
    margin: 0;
    color: var(--text);
    background: var(--background);
    font-family: var(--r2-font-body, Tahoma, Arial, sans-serif);
    line-height: 1.75;
}

h1,
h2,
h3,
h4,
h5,
h6,
.brand {
    font-family: var(--r2-font-display, Tahoma, Arial, sans-serif);
    font-weight: 700;
}

h1,
.brand {
    font-weight: 950;
}

code,
pre,
kbd,
samp,
[dir="ltr"] {
    font-family: var(--r2-font-technical, monospace);
}

a {
    color: var(--primary-dark);
}

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

.container {
    width: min(1120px, calc(100% - 2rem));
    margin-inline: auto;
}

.skip-link {
    position: fixed;
    inset-block-start: -5rem;
    inset-inline-start: 1rem;
    z-index: 10;
    padding: 0.5rem 1rem;
    background: var(--surface);
}

.skip-link:focus {
    inset-block-start: 1rem;
}
