/* CyberRanking: rama wspólna dla wszystkich stron (kierunek 5a). Fonty, kolory, nagłówek, menu, stopka.
   Ładowana po stylach strony: selektory klasowe wygrywają ze starymi regułami header/nav/footer bez !important. */

@font-face{font-family:'Lexend';font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/lexend-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Lexend';font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/lexend-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Atkinson Hyperlegible Mono';font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/atkinson-mono-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Atkinson Hyperlegible Mono';font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/atkinson-mono-latin.woff2) format('woff2');unicode-range:U+0000-002F,U+0031-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* stare kroje z poprzednich generacji (wpisane w style stron) renderują się jako Lexend */
@font-face{font-family:'Manrope';font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/lexend-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Manrope';font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/lexend-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/lexend-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/lexend-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/lexend-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/lexend-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Space Mono';font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/lexend-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Space Mono';font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/lexend-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  --paper:#FFFFFF;--wash:#F4F7FB;--ink:#0D233F;--ink2:#4B5B71;--rule:#E1E6EE;--rule2:#B6C1D1;
  --blue:#1868B7;--blue2:#124F8C;--flag:#B8410F;--up:#15803D;--down:#B91C1C;--amber:#8F5A00;
  --sans:'Lexend',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'Atkinson Hyperlegible Mono','Lexend',ui-monospace,monospace; /* zero z Lexendu: Atkinson Mono ma tylko przekreślone */
  --w:1200px;--gut:clamp(16px,3.6vw,48px);
  --r1:4px;--r2:8px;--r3:12px;
  --ease:cubic-bezier(.16,1,.3,1);
}
html{-webkit-text-size-adjust:100%;scrollbar-color:var(--rule2) var(--paper);scroll-padding-top:16px}
body{margin:0;background:var(--paper);color:var(--ink);font:300 17px/1.6 var(--sans);caret-color:var(--blue);-webkit-font-smoothing:auto}
::selection{background:var(--blue);color:#fff}
a{color:var(--blue);text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{color:var(--blue2)}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:var(--r1)}
.ic{flex:0 0 auto;vertical-align:-2px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:var(--gut);top:-60px;z-index:50;background:var(--ink);color:#fff;padding:10px 16px;border-radius:var(--r2);font-weight:500;text-decoration:none}
.skip:focus{top:12px;color:#fff}
button,input,select,textarea{font-family:inherit}
[tabindex="-1"]:focus{outline:none}

/* nagłówek */
header.top{width:100%;align-self:stretch;flex:0 0 auto;position:relative;top:auto;left:auto;right:auto;z-index:30;display:block;height:auto;margin:0;padding:0;background:var(--paper);border:0;border-bottom:1px solid var(--rule);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.top .wrap{max-width:var(--w);margin:0 auto;padding:0 var(--gut);display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:72px;height:auto}
.top .brand{display:flex;align-items:center;gap:10px;font:700 20px/1 var(--sans);color:var(--ink);text-decoration:none;letter-spacing:-.02em}
.top .brand:hover{color:var(--ink)}
.top .brand img{width:28px;height:28px;margin:0}
.top .brand i{font-style:normal;color:var(--blue)}
.top .nav{position:static;display:flex;align-items:center;gap:26px;height:auto;margin:0;padding:0;background:none;border:0;font:400 16px/1.4 var(--sans)}
.top .nav a{display:inline-block;color:var(--ink);text-decoration:none;padding:10px 0;font:inherit;border:0;transition:color .15s}
.top .nav a:hover{color:var(--blue)}
.top .nav a[aria-current=page]{font-weight:500;color:var(--ink);box-shadow:inset 0 -2px 0 var(--blue)}
.top .nav .nav-cta{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;background:var(--blue);color:#fff;border-radius:var(--r2);font-weight:500;box-shadow:none}
.top .nav .nav-cta:hover,.top .nav .nav-cta[aria-current=page]{background:var(--blue2);color:#fff;box-shadow:none}
.top .menu{display:none;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1.5px solid var(--rule2);border-radius:var(--r2);background:#fff;color:var(--ink);font:500 16px var(--sans);cursor:pointer}
.top .menu:hover{border-color:var(--ink)}

/* stopka */
footer.foot{width:100%;align-self:stretch;flex:0 0 auto;display:block;margin:80px 0 0;border:0;border-top:2px solid var(--ink);padding:28px 0 40px;background:var(--paper);font:300 15px/1.6 var(--sans);color:var(--ink2);text-align:left}
.foot .wrap{max-width:var(--w);margin:0 auto;padding:0 var(--gut);display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:20px 48px}
.foot p{margin:0;max-width:68ch}
.foot p+p{margin-top:10px}
.foot .who{color:var(--ink);font-weight:500}
.foot ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 22px;align-content:start}
.foot li{margin:0;padding:0}
.foot li a,.foot li button{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);font:400 15px var(--sans);background:none;border:0;cursor:pointer;text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px;padding:0}
.foot li a:hover,.foot li button:hover{color:var(--blue)}
.foot .copy{grid-column:1/-1;font-size:14px}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

@media (max-width:1080px){
  .js .top .nav{display:none}
  .js .top .menu{display:inline-flex}
  .top .wrap{flex-wrap:wrap}
  .js .top .nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0;width:100%;padding:4px 0 16px;border-top:1px solid var(--rule)}
  .js .top .nav.open a{padding:12px 0;border-bottom:1px solid var(--rule);min-height:48px;display:flex;align-items:center}
  .js .top .nav.open a[aria-current=page]{box-shadow:none;font-weight:600;color:var(--blue)}
  .js .top .nav.open .nav-cta{justify-content:center;margin-top:14px;border:0;color:#fff}
  .top .nav{flex-wrap:wrap;gap:4px 18px}
}
@media (max-width:860px){
  body{font-size:16px}
  .foot .wrap{grid-template-columns:1fr}
}
@media (max-width:400px){
  .top .wrap{gap:10px}
  .top .brand{font-size:18px;gap:8px}
  .top .brand img{width:24px;height:24px}
  .top .menu{padding:0 12px}
}
/* linki w tekscie rozpoznawalne nie tylko kolorem (WCAG 1.4.1); nadpisuje stare style inline text-decoration:none */
:is(p,td,dd,blockquote,.tip-box,.term-body,.callout)>a:not([class]){text-decoration:underline!important}
main li>a:not([class]):not(nav *):not(.toc *):not(.toc-sidebar *):not(:has(b,span,em,img,div)),.affiliate-note a:not([class]){text-decoration:underline!important}
/* stare kolory z ciemnego motywu (pojedyncze strony): kontrast 4.5:1 */
.share-label{opacity:1!important;color:var(--ink2)!important}
.topic-more{color:var(--blue)!important}
.badge-necessary{color:var(--up)!important;background:var(--wash)!important}
.badge-marketing{color:var(--amber)!important;background:var(--wash)!important}
.glosspop{text-align:left}.glosspop::before{left:var(--ax,16px)!important;right:auto!important}

/* przewijana tabela (shell.js): napis nad tabela i wygaszona prawa krawedz */
.scroll-hint{font-size:14px;line-height:1.4;color:var(--ink2);margin:0 0 6px;font-weight:400}
.is-scroll:not(.at-end){-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 48px),rgba(0,0,0,.25));mask-image:linear-gradient(to right,#000 calc(100% - 48px),rgba(0,0,0,.25))}
