/* Wspolne style stron dokumentowych (polityka prywatnosci, regulamin).
   Osobny arkusz, bo dokumentow jest kilka w dwoch jezykach - kopiowanie
   tych regul do kazdego pliku gwarantowaloby ich rozjazd. */
  :root {
    --tlo: #F6F7F5; --ciemny: #0A2430; --tekst: #0A2430;
    --przygaszony: #43606E; --slaby: #5A7684; --akcent: #C46A18;
    --linia: rgba(90,118,132,0.28);
  }
  * { box-sizing: border-box; }
  body {
    margin: 0; background: var(--tlo); color: var(--tekst);
    font-family: 'Source Sans 3', system-ui, sans-serif;
    font-size: 17px; line-height: 1.65; -webkit-font-smoothing: antialiased;
  }
  a { color: var(--akcent); text-decoration: none; }
  a:hover { text-decoration: underline; }
  :focus-visible { outline: 2px solid var(--akcent); outline-offset: 3px; }

  header {
    background: var(--ciemny); color: var(--tlo);
    padding: 0 24px; position: sticky; top: 0; z-index: 10;
  }
  .pasek {
    max-width: 820px; margin: 0 auto; height: 68px;
    display: flex; align-items: center; gap: 24px;
  }
  .marka {
    font-family: Archivo, sans-serif; font-weight: 600; font-size: 21px;
    letter-spacing: -0.02em; color: var(--tlo);
  }
  .jezyk {
    margin-left: auto; display: inline-flex; align-items: center;
    border: 1px solid rgba(246,247,245,0.3); border-radius: 2px; overflow: hidden;
    font-family: 'JetBrains Mono', monospace; font-size: 12px; letter-spacing: 0.08em;
  }
  .jezyk a, .jezyk span { padding: 6px 11px; display: block; }
  .jezyk .teraz { background: var(--akcent); color: var(--tlo); }
  .jezyk a { color: rgba(246,247,245,0.72); }
  .jezyk a:hover { color: var(--tlo); text-decoration: none; }

  main { max-width: 820px; margin: 0 auto; padding: 64px 24px 96px; }

  h1 {
    font-family: Archivo, sans-serif; font-weight: 600;
    font-size: clamp(32px, 5vw, 46px); line-height: 1.08;
    letter-spacing: -0.025em; margin: 0 0 14px;
  }
  .meta {
    font-family: 'JetBrains Mono', monospace; font-size: 12px;
    letter-spacing: 0.1em; text-transform: uppercase; color: var(--slaby);
    margin: 0 0 12px;
  }
  .wstep { font-size: 19px; color: var(--przygaszony); margin: 0 0 8px; }

  h2 {
    font-family: Archivo, sans-serif; font-weight: 600; font-size: 23px;
    letter-spacing: -0.015em; margin: 52px 0 14px; padding-top: 22px;
    border-top: 1px solid var(--linia);
  }
  h3 {
    font-family: Archivo, sans-serif; font-weight: 600; font-size: 17px;
    margin: 26px 0 8px;
  }
  p { margin: 0 0 14px; }
  ul { margin: 0 0 14px; padding-left: 22px; }
  li { margin-bottom: 6px; }

  table {
    width: 100%; border-collapse: collapse; margin: 0 0 18px;
    font-size: 15.5px;
  }
  th, td {
    text-align: left; vertical-align: top;
    padding: 11px 14px 11px 0; border-bottom: 1px solid var(--linia);
  }
  th {
    font-family: 'JetBrains Mono', monospace; font-weight: 400;
    font-size: 11px; letter-spacing: 0.09em; text-transform: uppercase;
    color: var(--slaby); border-bottom-color: var(--tekst);
  }
  td:last-child, th:last-child { padding-right: 0; }
  .przewijane { overflow-x: auto; }

  .dane {
    font-family: 'JetBrains Mono', monospace; font-size: 14px; line-height: 1.85;
    background: #ECEEEA; border-left: 3px solid var(--akcent);
    padding: 20px 22px; margin: 0 0 18px;
  }
  .wyrozniony {
    background: #ECEEEA; border-left: 3px solid var(--akcent);
    padding: 18px 22px; margin: 0 0 18px;
  }
  .wyrozniony p:last-child { margin-bottom: 0; }

  footer {
    border-top: 1px solid var(--linia); margin-top: 64px; padding-top: 26px;
    font-size: 14.5px; color: var(--slaby);
    display: flex; gap: 18px; flex-wrap: wrap;
  }

  @media (max-width: 620px) {
    body { font-size: 16px; }
    main { padding: 44px 20px 72px; }
    h2 { margin-top: 40px; }
    table { font-size: 14.5px; }
  }
  @media print {
    header { position: static; }
    .jezyk { display: none; }
    body { background: #fff; font-size: 11pt; }
  }
