/* OWL-IT — base reset + design tokens (per-site copy, not shared) */

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

:root {
  /* colors */
  --color-bg: #F5F7F9;
  --color-surface: #FFFFFF;
  --color-ink: #1F2329;
  --color-ink-soft: #3d454e;
  --color-body: #5A6673;
  --color-body-muted: #8996a3;
  --color-accent: #35526E;
  --color-accent-hover: #2b4258;
  --color-gold: #B08D2E;
  --color-border: #E1E6EB;
  --color-border-input: #d3dae0;
  --color-dark: #1F2329;
  --color-dark-2: #161A1F;
  --color-on-dark: #E7ECF1;
  --color-on-dark-muted: #AEB8C2;
  --color-on-dark-faint: #6a7580;

  /* type */
  --font-sans: 'IBM Plex Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: 'IBM Plex Mono', ui-monospace, monospace;

  /* radius */
  --radius-control: 4px;
  --radius-card: 5px;
  --radius-card-lg: 6px;

  /* spacing */
  --space-1: 0.4rem;
  --space-2: 0.8rem;
  --space-3: 1.2rem;
  --space-4: 1.6rem;
  --space-5: 2.4rem;
}

html {
  scroll-behavior: smooth;
}

html,
body {
  margin: 0;
  padding: 0;
}

body {
  background: var(--color-bg);
  color: var(--color-ink);
  font-family: var(--font-sans);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, p, ul, ol {
  margin: 0;
}

ul, ol {
  padding: 0;
  list-style: none;
}

img {
  max-width: 100%;
  display: block;
}

a {
  color: var(--color-accent);
  text-decoration: none;
}

a:hover {
  color: var(--color-gold);
}

button {
  font: inherit;
  cursor: pointer;
  border: none;
  background: none;
  color: inherit;
}

input,
textarea {
  font: inherit;
}

.mono {
  font-family: var(--font-mono);
}

.wrap {
  max-width: 68rem;
  margin: 0 auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

@media (min-width: 48rem) {
  .wrap {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

/* Bilingual toggle: PL shown by default (works with JS disabled);
   adding .lang-en to <html> (via js/main.js) reveals EN and hides PL. */
[data-lang="en"] {
  display: none !important;
}

html.lang-en [data-lang="pl"] {
  display: none !important;
}

html.lang-en [data-lang="en"] {
  display: inline !important;
}
