body{font-family:Helvetica,Arial,sans-serif;color:#333;background-color:#f7f7f7;margin:0;padding:0;}.img100,.img80,.img60,.img40,.img12,.img8{height:auto;margin:20px auto;display:block;}.img100{width:100%;}.img80{width:80%;}.img60{width:60%;}.img40{width:40%;}.img12{width:12%;}.img8{width:8%;}blockquote{font-style:italic;}code{background-color:#f7f7f7;color:#000;}.gora{background-color:#fff;color:#1e73be;padding:5px 20px;font-size:1.75em;font-weight:bold;}header{background-color:#1e73be;color:#fff;max-width:1100px;display:flex;justify-content:space-between;margin:0 auto;padding:5px 20px;}.prawo{margin:auto 0;}.lewo{margin:auto 0 auto auto;}.lewo2{margin:auto auto auto 0;}header nav a{color:#fff;text-decoration:none;display:inline-block;padding:10px 20px;}header nav a:hover{background-color:#52555b;}main{max-width:1100px;background-color:#fff;margin:0 auto;padding:20px;}footer{background-color:#1e73be;color:#fff;text-align:center;max-width:1100px;margin:0 auto;padding:5px 20px;}footer a{color:#fff;text-decoration:none;margin:0 20px;padding:20px;display:inline-block;}
h1 { font-size: 1.4em; margin-block: 0.6em; }
h2 { font-size: 1.25em; margin-block: 0.5em; }
h3 { font-size: 1em;   margin-block: 0.4em; }
table{margin:20px auto;border-collapse:collapse;width:80%;}table th,table td{border:1px solid #444;padding:10px;text-align:center;font-weight:bold;color:#222;background-color:#fff;}table thead th{background-color:#1e73be;color:#fff;}table tbody tr:nth-child(even){background-color:#e6e6e6;}table tbody tr:hover{background-color:#ccc;}tr[style*="color:red;"] td{color:#b30000;}.toc a{display:block;font-size:1.2em;margin:10px 0;padding:10px 15px;color:#1e73be;text-decoration:none;background-color:#f7f7f7;border:1px solid #ccc;border-radius:5px;}.toc a:hover{background-color:#e6e6e6;color:#000;}
/* ——— MOBILE HAMBURGER ——— */
/* Pasek – stała wysokość, przycisk w prawym górnym rogu */
.site-header{
  display:none;
  background:#fff; color:#1e73be;
  max-width:1100px; margin:0 auto;
  padding:12px 56px 8px 16px;   /* miejsce na ikonę po prawej */
  position:relative; min-height:48px;
}
.site-header .menu>summary{
  list-style:none; cursor:pointer;
  display:inline-flex; align-items:center;
  padding:6px 8px; border-radius:8px;
  position:absolute; right:16px; top:12px;  /* NIE 50% */
  transform:none; z-index:3;
}
.site-header .menu>summary::-webkit-details-marker{display:none}

/* Ikona hamburgera */
.hamburger{width:26px;height:2px;background:#1e73be;position:relative;display:inline-block}
.hamburger::before,.hamburger::after{content:"";position:absolute;left:0;width:26px;height:2px;background:#1e73be}
.hamburger::before{top:-7px}.hamburger::after{top:7px}

/* Kolumna linków – IDEALNIE na środku ekranu, spycha treść w dół */
.site-header .nav{
  display:none;                 /* ukryte gdy zamknięte */
  margin-top:10px;
  width:clamp(200px,70vw,260px);/* stała, wąska kolumna */
  text-align:center;
  position:relative; left:50%; transform:translateX(-50%); /* betonowe centrowanie */
  box-sizing:border-box;
}
.site-header .menu[open] .nav{display:block}

.site-header .nav a{
  color:#1e73be; text-decoration:none;
  display:block; padding:12px 0;
}
.site-header .nav a:hover{background:rgba(30,115,190,.1)}


/* ——— PRZEŁĄCZNIK WIDOCZNOŚCI NAGŁÓWKÓW ——— */
@media screen and (max-width:800px){
  /* ukryj desktopowe menu (to <header> bez .gora i bez .site-header) */
  header:not(.gora):not(.site-header){display:none}
  /* pokaż mobilne */
  .site-header{display:block}
}


/* ——— ACCESSIBILITY IMPROVEMENTS ——— */
.skip-link {
  position: absolute;
  left: 10px;
  top: -60px;
  background: #000;
  color: #fff;
  padding: 10px 15px;
  z-index: 9999;
  text-decoration: none;
  border-radius: 4px;
}

.skip-link:focus,
.skip-link:focus-visible {
  top: 10px;
  outline: 3px solid #ffcc00;
  outline-offset: 3px;
}

a:focus-visible,
button:focus-visible,
summary:focus-visible {
  outline: 3px solid #ffcc00;
  outline-offset: 3px;
  border-radius: 4px;
}

main a {
  text-decoration: underline;
}

header a,
footer a,
.skip-link {
  text-decoration: none;
}

h1 { font-size: 1.8em; }
h2 { font-size: 1.45em; }
h3 { font-size: 1.2em; }

.site-header .menu > summary {
  min-width: 44px;
  min-height: 44px;
}

.site-header .nav a,
header nav a,
footer a {
  min-height: 44px;
  box-sizing: border-box;
}
