:root {
  color-scheme: light;
  --color-bg: #fafafa;
  --color-header: #fbfbfb;
  --color-card: #f6f6f6;
  --color-card-strong: #eeeeee;
  --color-input-bg: #ffffff;
  --color-text: #323232;
  --color-text-secondary: #5f636d;
  --color-muted: #70757f;
  --color-muted-2: #8b8f98;
  --color-accent: #0099cc;
  --color-accent-hover: #007fa8;
  --color-border: #e2e2e2;
  --color-focus: rgba(47, 125, 246, .2);
  --font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

@media (prefers-color-scheme: dark) {
  :root {
    color-scheme: dark;
    --color-bg: #111821;
    --color-header: #131c27;
    --color-card: #182331;
    --color-card-strong: #223142;
    --color-input-bg: #151f2b;
    --color-text: #f1f4f8;
    --color-text-secondary: #d7dde5;
    --color-muted: #a5afbc;
    --color-muted-2: #7f8a98;
    --color-accent: #6ecff6;
    --color-accent-hover: #8adfff;
    --color-border: #33404d;
    --color-focus: rgba(110, 207, 246, .28);
  }
}

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

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

body {
  min-height: 100vh;
  margin: 0;
  background: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-family);
  font-size: 14px;
  line-height: 1.45;
}

a {
  color: inherit;
}

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

button {
  color: inherit;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}

[hidden] {
  display: none !important;
}

.sr-only,
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
