/* Strefa developerów (/dev/, /dev/konto/), wygląd wzorowany na dokumentacji Claude (platform.claude.com/docs):
   jasne tło, tytuły szeryfowe, menu boczne z grupami, „Na tej stronie” po prawej, jasne bloki kodu z kolorowaniem.
   Layout: includes/layout-dev.php, renderer i JS dokumentacji: public/dev/index.php. Konto developera ma ten sam układ
   (menu boczne, okruszki, tytuł szeryfowy) i te same kolory, także w trybie ciemnym; jego klasy ui-* są w dev-konto.css. */

@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/source-serif-4-latin-ext-600-normal.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:'Source Serif 4';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/source-serif-4-latin-600-normal.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}

.dev-body{
  --dx-bg:#fcfcfb; --dx-pow:#fff; --dx-ink:#0b0b0b; --dx-txt:#3d3c39; --dx-txt2:#52514e; --dx-mut:#86847e;
  --dx-line:rgba(11,11,11,.1); --dx-line2:rgba(11,11,11,.16); --dx-soft:rgba(11,11,11,.04); --dx-hov:rgba(11,11,11,.06); --dx-akt:rgba(11,11,11,.09);
  --dx-link:#b42318; --dx-kod:#8e2626; --dx-serif:'Source Serif 4',Georgia,'Times New Roman',serif; --dx-cien:0 16px 48px rgba(11,11,11,.16),0 2px 6px rgba(11,11,11,.06);
  --sx-k:#b42318; --sx-s:#1d4f91; --sx-c:#8a877f; --sx-v:#7a3e9d; --sx-n:#a14f00; --sx-t:#1d6b4f; --sx-p:#1d4f91;
  background:var(--dx-bg);color:var(--dx-txt);min-height:100vh;display:flex;flex-direction:column;
  /* site.css daje body overflow-x:hidden, co psuje position:sticky menu bocznego; clip nie tworzy kontenera przewijania */
  overflow-x:clip;
}
.dx-main{flex:1 0 auto}

/* ── Pasek ─────────────────────────────────────────────────────────────── */
.dx-bar{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--dx-bg) 92%,transparent);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--dx-line)}
.dx-bar__in{height:56px;padding:0 20px;display:flex;align-items:center;gap:1rem}
.dx-marka{display:flex;align-items:center;gap:.6rem;text-decoration:none;flex:none}
.dx-marka img{display:block;height:23px;width:auto}
.dx-marka__tag{font-family:var(--dx-serif);font-weight:600;font-size:1.06rem;color:var(--dx-ink);letter-spacing:-.005em;padding-left:.6rem;border-left:1px solid var(--dx-line2);line-height:1.1}
.dx-nav{display:flex;align-items:center;gap:.25rem;margin-left:.75rem;margin-right:auto;min-width:0}
.dx-nav a{color:var(--dx-txt2);font-size:.875rem;font-weight:500;text-decoration:none;padding:.38rem .75rem;border-radius:999px;white-space:nowrap}
.dx-nav a:hover{color:var(--dx-ink);background:var(--dx-hov)}
.dx-nav a.on{color:var(--dx-ink);background:var(--dx-akt)}
.dx-prawa{display:flex;align-items:center;gap:.5rem;flex:none}
.dx-md{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--mono);font-size:.78rem;color:var(--dx-txt2);text-decoration:none;padding:.36rem .6rem;border-radius:8px;border:1px solid var(--dx-line)}
.dx-md span{color:var(--dx-mut)}
.dx-md:hover{color:var(--dx-ink);background:var(--dx-hov)}
.dx-zaloguj{color:var(--dx-ink);font-size:.875rem;font-weight:500;text-decoration:none;padding:.4rem .8rem;border-radius:8px;border:1px solid var(--dx-line2);white-space:nowrap;background:var(--dx-pow)}
.dx-zaloguj:hover{background:var(--dx-hov)}
.dx-cta{background:var(--dx-ink);color:var(--dx-bg);font-size:.875rem;font-weight:500;text-decoration:none;padding:.42rem .85rem;border-radius:8px;white-space:nowrap;border:1px solid var(--dx-ink)}
.dx-cta:hover{opacity:.86;color:var(--dx-bg)}
.dx-ikona{display:none;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:none;border:0;color:var(--dx-ink);cursor:pointer;flex:none}
.dx-ikona svg{width:20px;height:20px}
.dx-ikona:hover{background:var(--dx-hov)}
/* Menu konta (zalogowany developer): avatar + imię, rozwijane: kto, skróty, Wyloguj się. */
.dx-konto{position:relative}
.dx-konto__btn{list-style:none;display:flex;align-items:center;gap:.5rem;padding:.2rem .45rem .2rem .2rem;border:1px solid var(--dx-line2);border-radius:999px;color:var(--dx-ink);font-size:.86rem;font-weight:500;cursor:pointer;user-select:none;background:var(--dx-pow)}
.dx-konto__btn::-webkit-details-marker{display:none}
.dx-konto__btn:hover,.dx-konto[open] .dx-konto__btn{background:var(--dx-hov)}
.dx-konto__btn:focus-visible{outline:2px solid var(--dx-ink);outline-offset:2px}
.dx-konto__imie{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dx-konto__chev{width:14px;height:14px;color:var(--dx-mut);transition:transform .15s}
.dx-konto[open] .dx-konto__chev{transform:rotate(180deg)}
.dx-av{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#ef4444,#b91c1c);color:#fff;font-size:.8rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex:none}
.dx-av--duzy{width:36px;height:36px;font-size:.95rem}
.dx-menu{position:absolute;right:0;top:calc(100% + 8px);width:300px;background:var(--dx-pow);border:1px solid var(--dx-line);border-radius:12px;box-shadow:var(--dx-cien);padding:.4rem;z-index:60}
.dx-menu__kto{display:flex;gap:.7rem;align-items:center;padding:.6rem .6rem .75rem;margin-bottom:.3rem;border-bottom:1px solid var(--dx-line);min-width:0}
.dx-menu__kto>span:last-child{min-width:0;display:flex;flex-direction:column;line-height:1.35}
.dx-menu__kto b{font-size:.9rem;color:var(--dx-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dx-menu__kto small{font-size:.8rem;color:var(--dx-mut);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dx-menu a,.dx-menu button{display:flex;align-items:center;gap:.55rem;width:100%;padding:.5rem .6rem;border-radius:8px;font:inherit;font-size:.875rem;color:var(--dx-txt);text-decoration:none;background:none;border:0;cursor:pointer;text-align:left}
.dx-menu a:hover,.dx-menu button:hover{background:var(--dx-hov);color:var(--dx-ink)}
.dx-menu__wyloguj{margin-top:.3rem;padding-top:.3rem;border-top:1px solid var(--dx-line)}
.dx-menu__wyloguj button svg{width:16px;height:16px;color:var(--dx-mut)}
/* Stopka */
.dx-stopka{border-top:1px solid var(--dx-line);font-size:.84rem;color:var(--dx-mut)}
.dx-stopka__in{max-width:1200px;margin:0 auto;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.dx-stopka__marka{display:flex;align-items:center;gap:.7rem;color:var(--dx-mut);text-decoration:none}
.dx-stopka__marka img{height:17px;width:auto;opacity:.85}
.dx-stopka__linki{display:flex;gap:1.2rem;flex-wrap:wrap}
.dx-stopka a{color:var(--dx-txt2);text-decoration:none}
.dx-stopka a:hover{color:var(--dx-ink)}
.dev-boczne .dx-stopka__in{max-width:none;padding-left:calc(264px + 32px)}
@media (max-width:900px){.dev-boczne .dx-stopka__in{padding-left:24px}}
@media (max-width:760px){
  .dx-md,.dx-konto__imie{display:none}
}
@media (max-width:600px){
  .dx-bar__in{padding:0 10px 0 12px;height:52px;gap:.35rem}
  .dx-marka img{height:20px}
  .dx-marka__tag{font-size:.95rem;padding-left:.5rem}
  .dx-nav{display:none}
  .dx-prawa{margin-left:auto;gap:.3rem}
  .dx-zaloguj{display:none}
  .dx-cta{padding:.4rem .65rem;font-size:.82rem}
  .dx-menu{position:fixed;left:12px;right:12px;top:58px;width:auto}
  .dx-stopka__in,.dev-boczne .dx-stopka__in{padding:16px}
}
/* Na stronach dokumentacji na wąskim ekranie zostaje logo, szukajka i menu (Zaloguj się i Załóżcie konto są na dole menu bocznego). */
@media (max-width:420px){.dev-sekcja-docs .dx-cta{display:none}}

/* ── Dokumentacja: menu boczne | treść | Na tej stronie ───────────────── */
.dxd{display:grid;grid-template-columns:264px minmax(0,1fr);align-items:start}
.dxd-bok{position:sticky;top:56px;height:calc(100vh - 56px);overflow-y:auto;overscroll-behavior:contain;border-right:1px solid var(--dx-line);padding:16px 12px 40px;scrollbar-width:thin}
.dxd-szukaj{display:flex;align-items:center;gap:.5rem;width:100%;height:36px;padding:0 8px 0 10px;margin-bottom:18px;border:1px solid var(--dx-line2);border-radius:8px;background:var(--dx-pow);color:var(--dx-mut);font:inherit;font-size:.875rem;cursor:pointer;text-align:left}
.dxd-szukaj:hover{border-color:var(--dx-mut)}
.dxd-szukaj svg{width:16px;height:16px;flex:none}
.dxd-szukaj span{flex:1}
.dxd-szukaj kbd,.dxd-szukajka kbd{font:500 .72rem var(--font);color:var(--dx-mut);border:1px solid var(--dx-line2);border-radius:5px;padding:.08rem .35rem;background:var(--dx-soft)}
.dxd-grupa{margin-bottom:18px}
.dxd-grupa__t{font-size:.875rem;font-weight:600;color:var(--dx-ink);margin:0 0 4px;padding:0 8px;line-height:32px}
.dxd-nav a{display:block;min-height:32px;padding:6px 8px;border-radius:8px;font-size:.875rem;line-height:1.35;color:var(--dx-txt2);text-decoration:none}
.dxd-nav a:hover{background:var(--dx-hov);color:var(--dx-ink)}
.dxd-nav a.on{background:var(--dx-akt);color:var(--dx-ink);font-weight:500}
.dxd-nav a code{font-family:var(--mono);font-size:.82em;background:none;padding:0}
.dxd-nav a:has(.dxd-licz),.dxd-nav a.dxd-nav__mod{display:flex;align-items:center;gap:.55rem}
.dxd-licz{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--dx-hov);color:var(--dx-txt2);font-size:.72rem;font-weight:600;font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;justify-content:center}
.dxd-nav__ik{width:20px;height:20px;flex:none;display:inline-flex;align-items:center;justify-content:center;font-size:.95rem;line-height:1;color:var(--dx-mut)}
.dxd-nav__ik svg{width:14px;height:14px}
.dxd-nav__t{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dxd-tlo{display:none}
.dxd-bok__konto{display:none}
.dxd-tresc .dxd-glowa h1 code{color:inherit;background:none;border:0;padding:0}

.dxd-srodek{display:grid;grid-template-columns:minmax(0,800px) 224px;justify-content:center;gap:56px;padding:36px 40px 72px;min-width:0}
.dxd-tresc{min-width:0;font-size:.9375rem;line-height:1.7;color:var(--dx-txt)}

/* Nagłówek strony: okruszki, tytuł z przyciskiem Kopiuj stronę, lead */
.dxd-glowa{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"ok ok" "h1 kop" "lead lead" "meta meta";column-gap:1.25rem;align-items:start;margin-bottom:28px}
.dxd-okruchy{grid-area:ok;display:flex;gap:.45rem;align-items:center;font-size:.875rem;color:var(--dx-mut);margin-bottom:10px}
.dxd-tresc .dxd-okruchy a{color:var(--dx-mut);text-decoration:none}
.dxd-tresc .dxd-okruchy a:hover{color:var(--dx-ink)}
.dxd-glowa h1{grid-area:h1;font-family:var(--dx-serif);font-weight:600;font-size:clamp(1.65rem,2.6vw,2rem);line-height:1.2;letter-spacing:-.012em;color:var(--dx-ink);margin:0}
.dxd-glowa h1 code{font-family:var(--mono);font-size:.78em;font-weight:500}
.dxd-lead{grid-area:lead;font-size:1.0625rem;line-height:1.6;color:var(--dx-txt2);margin:12px 0 0!important}
.dxd-meta{grid-area:meta;font-size:.8125rem;color:var(--dx-mut);margin:10px 0 0!important}

.dxd-kopiuj{grid-area:kop;position:relative;display:flex;margin-top:4px}
.dxd-kopiuj>button{display:flex;align-items:center;gap:.4rem;height:32px;border:1px solid var(--dx-line2);background:var(--dx-pow);color:var(--dx-ink);font:500 .8125rem var(--font);cursor:pointer;white-space:nowrap}
.dxd-kopiuj>button:hover{background:var(--dx-hov)}
.dxd-kopiuj svg{width:15px;height:15px}
.dxd-kopiuj__glowny{padding:0 .55rem 0 .7rem;border-radius:8px}
.dxd-kopiuj__glowny>svg:last-child{width:13px;height:13px;color:var(--dx-mut);margin-left:.05rem;transition:transform .15s}
.dxd-kopiuj__glowny[aria-expanded=true]>svg:last-child{transform:rotate(180deg)}
.dxd-kopiuj__glowny[aria-expanded=true]{background:var(--dx-hov)}
.dxd-kopiuj__menu{position:absolute;right:0;top:calc(100% + 6px);z-index:40;width:300px;background:var(--dx-pow);border:1px solid var(--dx-line);border-radius:12px;box-shadow:var(--dx-cien);padding:6px}
.dxd-kopiuj__menu a,.dxd-kopiuj__menu button{display:flex;gap:.7rem;align-items:flex-start;width:100%;padding:.55rem .6rem;border-radius:8px;border:0;background:none;font:inherit;text-align:left;color:var(--dx-ink);text-decoration:none!important;cursor:pointer}
.dxd-kopiuj__menu a:hover,.dxd-kopiuj__menu button:hover,.dxd-kopiuj__menu button:focus-visible{background:var(--dx-hov);outline:0}
.dxd-kopiuj__menu svg{width:16px;height:16px;margin-top:2px;flex:none;color:var(--dx-mut)}
.dxd-kopiuj__menu span{display:flex;flex-direction:column;line-height:1.35}
.dxd-kopiuj__menu b{font-size:.875rem;font-weight:500}
.dxd-kopiuj__menu small{font-size:.78rem;color:var(--dx-mut)}

/* Treść */
.dxd-tresc h2,.dxd-tresc h3{font-family:var(--dx-serif);font-weight:600;color:var(--dx-ink);letter-spacing:-.006em;scroll-margin-top:76px}
.dxd-tresc h2{font-size:1.375rem;line-height:1.3;margin:2.4em 0 .6em}
.dxd-tresc h3{font-size:1.09rem;line-height:1.35;margin:2em 0 .5em}
.dxd-tresc h2 code,.dxd-tresc h3 code{font-size:.82em;font-weight:500}
.dxd-md>h2:first-child,.dxd-md>h3:first-child{margin-top:.6em}
.dxd-tresc p,.dxd-tresc ul,.dxd-tresc ol{margin:0 0 1em}
.dxd-tresc ul,.dxd-tresc ol{padding-left:1.4em}
.dxd-tresc li{margin:.35em 0;padding-left:.15em}
.dxd-tresc li::marker{color:var(--dx-mut)}
.dxd-tresc li ul{margin:.35em 0 0}
.dxd-tresc strong{color:var(--dx-ink);font-weight:600}
.dxd-tresc a{color:var(--dx-link);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--dx-link) 35%,transparent);text-underline-offset:3px;overflow-wrap:anywhere}
.dxd-tresc a:hover{text-decoration-color:var(--dx-link)}
.dev-notka{margin:0 0 1.2em;padding:.8em 1em;border:1px solid var(--dx-line);border-radius:10px;background:var(--dx-soft)}
.dev-notka p{margin:0!important}
.dev-kotwica{margin-left:.35em;color:var(--dx-mut)!important;text-decoration:none!important;font-family:var(--font);font-weight:400;font-size:.8em;opacity:0;transition:opacity .15s}
.dxd-tresc h2:hover .dev-kotwica,.dxd-tresc h3:hover .dev-kotwica,.dev-kotwica:focus{opacity:1}

.dxd-tresc :not(pre)>code{font-family:var(--mono);font-size:.84em;color:var(--dx-kod);background:var(--dx-soft);border:1px solid var(--dx-line);padding:.08em .34em;border-radius:5px;overflow-wrap:anywhere}
.dxd-tresc a code{color:inherit}
.dev-kod{position:relative;margin:0 0 1.25em;background:var(--dx-pow);border:1px solid var(--dx-line);border-radius:12px;overflow:hidden}
.dev-kod__glowa{display:flex;align-items:center;justify-content:space-between;height:38px;padding:0 6px 0 14px;border-bottom:1px solid var(--dx-line);font-size:.75rem;font-weight:500;color:var(--dx-mut);background:var(--dx-soft)}
.dev-kod pre{margin:0;padding:14px 16px;overflow-x:auto;font-family:var(--mono);font-size:.8125rem;line-height:1.65;color:var(--dx-ink);tab-size:4;background:none}
.dev-kod--bez pre{padding-right:48px}
.dev-kopiuj{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:0;background:none;color:var(--dx-mut);cursor:pointer}
.dev-kopiuj svg{width:15px;height:15px}
.dev-kopiuj:hover{background:var(--dx-hov);color:var(--dx-ink)}
.dev-kopiuj.ok{color:#15803d}
.dev-kopiuj.ok svg{display:none}
.dev-kopiuj.ok::after{content:'✓';font-size:.95rem}
.dev-kod--bez>.dev-kopiuj{position:absolute;top:7px;right:7px;opacity:.7}
.dev-kod--bez:hover>.dev-kopiuj{opacity:1}
.sx-k{color:var(--sx-k)} .sx-s{color:var(--sx-s)} .sx-c{color:var(--sx-c);font-style:italic} .sx-v{color:var(--sx-v)} .sx-n{color:var(--sx-n)} .sx-t{color:var(--sx-t)} .sx-p{color:var(--sx-p);font-weight:500}

.dev-tabela{overflow-x:auto;margin:0 0 1.3em;border:1px solid var(--dx-line);border-radius:10px;background:var(--dx-pow)}
.dev-tabela table{width:100%;border-collapse:collapse;font-size:.875rem;line-height:1.55}
.dev-tabela th,.dev-tabela td{text-align:left;vertical-align:top;padding:.6em .85em;border-bottom:1px solid var(--dx-line)}
.dev-tabela th{background:var(--dx-soft);color:var(--dx-ink);font-weight:600;white-space:nowrap}
.dev-tabela tr:last-child td{border-bottom:0}
.dev-tabela td code{white-space:nowrap}

/* Karty na stronie startowej */
.dxd-karty{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 8px}
.dxd-karta{display:flex;flex-direction:column;gap:.35rem;padding:16px 16px 18px;border:1px solid var(--dx-line);border-radius:12px;background:var(--dx-pow);text-decoration:none!important;color:var(--dx-txt2)!important;transition:border-color .15s,box-shadow .15s}
.dxd-karta:hover{border-color:var(--dx-line2);box-shadow:0 4px 16px rgba(11,11,11,.06)}
.dxd-karta svg{width:22px;height:22px;color:var(--dx-link);margin-bottom:.4rem}
.dxd-karta b{font-family:var(--dx-serif);font-size:1.02rem;font-weight:600;color:var(--dx-ink);line-height:1.3}
.dxd-karta b code{font-family:var(--mono);font-size:.8em;font-weight:500;color:var(--dx-ink)!important;background:none!important;border:0!important;padding:0!important}
.dxd-karta span{font-size:.84rem;line-height:1.5}

/* Poprzednia / następna + data zmiany */
.dxd-dalej{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:3.2em}
.dxd-dalej a{display:flex;flex-direction:column;gap:.15rem;padding:14px 16px;border:1px solid var(--dx-line);border-radius:12px;text-decoration:none!important;background:var(--dx-pow)}
.dxd-dalej a:hover{border-color:var(--dx-line2)}
.dxd-dalej small{font-size:.8rem;color:var(--dx-mut)}
.dxd-dalej b{font-size:.9375rem;font-weight:500;color:var(--dx-ink)}
.dxd-dalej b code{font-family:var(--mono);font-size:.85em}
.dxd-dalej__n{text-align:right;grid-column:2}
.dxd-dalej__p small::before{content:'← '}
.dxd-dalej__n small::after{content:' →'}
.dxd-zmiana{margin-top:1.6em!important;font-size:.8125rem;color:var(--dx-mut)}
.dxd-zmiana a{color:var(--dx-mut)!important}

/* Prawa kolumna: Na tej stronie */
.dxd-prawa{position:sticky;top:92px;max-height:calc(100vh - 120px);overflow-y:auto;font-size:.875rem;scrollbar-width:thin}
.dxd-prawa__t{font-size:.875rem;font-weight:600;color:var(--dx-ink);margin:0 0 8px}
.dxd-toc{display:flex;flex-direction:column;border-left:1px solid var(--dx-line);margin-bottom:24px}
.dxd-toc a{display:block;padding:4px 0 4px 12px;margin-left:-1px;border-left:1px solid transparent;color:var(--dx-mut);line-height:1.4;text-decoration:none}
.dxd-toc a:hover{color:var(--dx-ink)}
.dxd-toc a.on{color:var(--dx-ink);font-weight:500;border-left-color:var(--dx-ink)}
.dxd-toc__p3{padding-left:24px!important}
.dxd-ai{border-top:1px solid var(--dx-line);padding-top:16px;color:var(--dx-mut);font-size:.8125rem;line-height:1.5}
.dxd-ai p{margin:0 0 .3em}
.dxd-ai b{color:var(--dx-ink);font-weight:600}
.dxd-ai a{color:var(--dx-link);font-family:var(--mono);font-size:.95em}

/* Szukajka (Ctrl K) */
.dxd-szukajka{position:fixed;inset:0;z-index:100;background:rgba(11,11,11,.38);display:flex;justify-content:center;align-items:flex-start;padding:10vh 16px 16px}
.dxd-szukajka[hidden]{display:none}
.dxd-szukajka__okno{width:100%;max-width:640px;max-height:76vh;display:flex;flex-direction:column;background:var(--dx-pow);border:1px solid var(--dx-line);border-radius:14px;box-shadow:var(--dx-cien);overflow:hidden}
.dxd-szukajka__pole{display:flex;align-items:center;gap:.6rem;padding:0 12px 0 16px;height:54px;border-bottom:1px solid var(--dx-line);color:var(--dx-mut)}
.dxd-szukajka__pole svg{width:18px;height:18px;flex:none}
.dxd-szukajka__pole input{flex:1;min-width:0;border:0;outline:0;background:none;font:inherit;font-size:1rem;color:var(--dx-ink);padding:0}
.dxd-szukajka__pole input::-webkit-search-cancel-button{display:none}
.dxd-szukajka__x{font:500 .72rem var(--font);color:var(--dx-mut);border:1px solid var(--dx-line2);border-radius:5px;padding:.15rem .4rem;background:var(--dx-soft);cursor:pointer}
.dxd-szukajka__wyniki{overflow-y:auto;padding:6px 8px 8px;min-height:80px}
.dxd-szukajka__grupa{font-size:.75rem;font-weight:500;color:var(--dx-mut);margin:6px 8px 4px}
.dxd-szukajka__info{color:var(--dx-mut);font-size:.875rem;padding:18px 10px;margin:0}
.dxd-szukajka__info b{color:var(--dx-ink);font-weight:500}
.dxd-szukajka__wyniki a{display:flex;gap:.7rem;padding:10px;border-radius:10px;text-decoration:none;color:var(--dx-txt2)}
.dxd-szukajka__wyniki a.on{background:var(--dx-akt)}
.dxd-szukajka__wyniki a svg{width:17px;height:17px;flex:none;margin-top:2px;color:var(--dx-mut)}
.dxd-szukajka__wyniki a>span{display:flex;flex-direction:column;gap:.1rem;min-width:0}
.dxd-szukajka__wyniki b{font-size:.9rem;font-weight:500;color:var(--dx-ink)}
.dxd-szukajka__wyniki i{font-style:normal;font-size:.75rem;color:var(--dx-mut)}
.dxd-szukajka__wyniki small{font-size:.8rem;line-height:1.45;color:var(--dx-txt2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dxd-szukajka mark{background:color-mix(in srgb,#f59e0b 30%,transparent);color:inherit;border-radius:2px;padding:0 1px}
.dxd-szukajka__stopka{display:flex;gap:1.1rem;padding:9px 16px;border-top:1px solid var(--dx-line);font-size:.75rem;color:var(--dx-mut);background:var(--dx-soft)}
.dxd-szukajka__stopka kbd{margin-right:.2rem}
.dxd-bez-przewijania{overflow:hidden}

@media (max-width:1240px){
  .dxd-srodek{grid-template-columns:minmax(0,800px);gap:0}
  .dxd-prawa{display:none}
}
@media (max-width:900px){
  .dxd{grid-template-columns:minmax(0,1fr)}
  .dx-ikona{display:inline-flex}
  .dxd-bok{position:fixed;z-index:70;top:0;left:0;bottom:0;height:auto;width:min(300px,86vw);background:var(--dx-bg);border-right:1px solid var(--dx-line);transform:translateX(-102%);transition:transform .2s ease;padding-top:20px;box-shadow:none}
  .dxd-menu-otwarte .dxd-bok{transform:none;box-shadow:var(--dx-cien)}
  .dxd-tlo{display:block;position:fixed;inset:0;z-index:65;background:rgba(11,11,11,.32)}
  .dxd-tlo[hidden]{display:none}
  .dxd-menu-otwarte{overflow:hidden}
  .dxd-srodek{padding:28px 24px 56px}
  .dxd-szukaj kbd{display:none}
  .dxd-bok__konto{display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--dx-line);padding-top:14px;margin-top:4px}
  .dxd-bok__konto a{display:block;padding:7px 8px;border-radius:8px;font-size:.875rem;color:var(--dx-txt2);text-decoration:none}
  .dxd-bok__konto a:hover{background:var(--dx-hov);color:var(--dx-ink)}
  .dxd-bok__konto .dxd-bok__cta{background:var(--dx-ink);color:var(--dx-bg);text-align:center;font-weight:500;margin:4px 0}
  .dxd-bok__konto .dxd-bok__cta:hover{background:var(--dx-ink);color:var(--dx-bg);opacity:.86}
}
@media (max-width:600px){
  .dxd-srodek{padding:20px 16px 48px}
  .dxd-glowa{grid-template-columns:minmax(0,1fr);grid-template-areas:"ok" "h1" "lead" "meta" "kop"}
  .dxd-kopiuj{margin-top:16px;justify-self:start}
  .dxd-kopiuj__menu{left:0;right:auto;width:min(300px,calc(100vw - 32px))}
  .dxd-tresc{font-size:.9375rem}
  .dxd-karty{grid-template-columns:minmax(0,1fr);gap:8px}
  .dxd-karta{display:grid;grid-template-columns:22px minmax(0,1fr);column-gap:12px;row-gap:2px;padding:12px 14px}
  .dxd-karta svg{grid-row:span 2;margin:1px 0 0}
  .dxd-dalej{grid-template-columns:minmax(0,1fr)}
  .dxd-dalej__n{grid-column:1}
  .dev-kod pre{font-size:.78rem;padding:12px 14px}
  .dev-tabela table{font-size:.82rem}
  .dxd-szukajka{padding:0}
  .dxd-szukajka__okno{max-width:none;max-height:none;height:100%;border-radius:0;border:0}
  .dxd-szukajka__stopka{display:none}
}
@media (min-width:601px) and (max-width:1100px){.dxd-karty{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Tryb ciemny całej strefy: dokumentacja i konto developera wyglądają tak samo. */
@media (prefers-color-scheme:dark){
  .dev-body{
    color-scheme:dark;
    --dx-bg:#1b1b1a; --dx-pow:#222221; --dx-ink:#f2f1ee; --dx-txt:#d0cec8; --dx-txt2:#b3b1ab; --dx-mut:#8f8d87;
    --dx-line:rgba(255,255,255,.1); --dx-line2:rgba(255,255,255,.17); --dx-soft:rgba(255,255,255,.04); --dx-hov:rgba(255,255,255,.07); --dx-akt:rgba(255,255,255,.1);
    --dx-link:#f87171; --dx-kod:#fca5a5; --dx-cien:0 16px 48px rgba(0,0,0,.5),0 2px 6px rgba(0,0,0,.3);
    --sx-k:#f87171; --sx-s:#93c5fd; --sx-c:#7d7b75; --sx-v:#d8b4fe; --sx-n:#fdba74; --sx-t:#86efac; --sx-p:#93c5fd;
  }
  .dev-body .dx-marka img,.dev-body .dx-stopka__marka img{filter:brightness(1.25)}
  .dev-body .dxd-szukajka{background:rgba(0,0,0,.6)}
  .dev-body .dxd-szukajka mark{background:rgba(245,158,11,.35)}
}

/* /dev/konto/ bez logowania: logowanie, rejestracja, hasło. Ten sam język co dokumentacja: tytuł szeryfowy,
   karta formularza z cienką linią, przycisk w kolorze tekstu (jak „Załóżcie konto” w pasku). */
.dk-wrap{max-width:1080px;margin:0 auto;padding:56px 24px 80px}
.dk-msg{padding:.75em 1em;border-radius:10px;margin-bottom:1rem;font-size:.9rem;border:1px solid;line-height:1.5}
.dk-msg--success{background:color-mix(in srgb,#16a34a 9%,var(--dx-pow));border-color:color-mix(in srgb,#16a34a 30%,transparent);color:color-mix(in srgb,#16a34a 55%,var(--dx-ink))}
.dk-msg--error{background:color-mix(in srgb,#dc2626 8%,var(--dx-pow));border-color:color-mix(in srgb,#dc2626 30%,transparent);color:color-mix(in srgb,#dc2626 60%,var(--dx-ink))}
.dk-msg--info,.dk-msg--warning{background:color-mix(in srgb,#d97706 9%,var(--dx-pow));border-color:color-mix(in srgb,#d97706 30%,transparent);color:color-mix(in srgb,#d97706 55%,var(--dx-ink))}
.dk-wrap a{color:var(--dx-link);text-underline-offset:2px}
.dk-male{font-size:.875rem;color:var(--dx-mut);line-height:1.5;margin:0}
.dk-auth{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:56px;align-items:start}
.dk-wrap .kicker{font-size:.875rem;letter-spacing:0;text-transform:none;font-weight:500;color:var(--dx-mut);margin-bottom:10px}
.dk-auth h1,.dk-waski h1{font-family:var(--dx-serif);font-weight:600;font-size:clamp(1.65rem,2.6vw,2rem);line-height:1.2;letter-spacing:-.012em;color:var(--dx-ink);margin:0 0 .6em}
.dk-auth__opis p{color:var(--dx-txt);font-size:1rem;line-height:1.7}
.dk-auth__opis p b{color:var(--dx-ink);font-weight:600}
.dk-auth__form h2{font-family:var(--dx-serif);font-weight:600;font-size:1.375rem;line-height:1.3;color:var(--dx-ink);margin:0 0 1rem}
.dk-auth__form .dk-male{margin-top:.8rem}
.dk-waski{max-width:520px;margin:0 auto}
.dk-waski p{color:var(--dx-txt);line-height:1.65}
.dk-kroki{list-style:none;padding:0;margin:1.6rem 0 0;counter-reset:k;display:grid;gap:12px}
.dk-kroki li{counter-increment:k;position:relative;padding-left:2.4rem;line-height:1.6;color:var(--dx-txt);font-size:.9375rem}
.dk-kroki li b{color:var(--dx-ink);font-weight:600}
.dk-kroki li::before{content:counter(k);position:absolute;left:0;top:.05rem;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--dx-soft);border:1px solid var(--dx-line2);color:var(--dx-ink);font-weight:600;font-size:.8rem;display:flex;align-items:center;justify-content:center}
.dev-body .form-block{background:var(--dx-pow);border:1px solid var(--dx-line);border-radius:12px;box-shadow:none;padding:28px}
.dev-body .field label{color:var(--dx-ink);font-weight:500;font-size:.875rem}
.dev-body .field input{background:var(--dx-pow);color:var(--dx-ink);border:1px solid var(--dx-line2);border-radius:8px;font-size:.9375rem;padding:.6rem .8rem}
.dev-body .field input:focus{border-color:var(--dx-ink);box-shadow:0 0 0 3px var(--dx-hov)}
.dev-body .btn-primary{background:var(--dx-ink);border-color:var(--dx-ink);color:var(--dx-bg);border-radius:8px;font-weight:500;font-size:.9375rem;padding:.65rem 1rem}
.dev-body .btn-primary:hover{background:var(--dx-ink);border-color:var(--dx-ink);color:var(--dx-bg);opacity:.86;transform:none;box-shadow:none}
.dk-pulapka{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.dk-zgoda{display:flex;gap:.6rem;align-items:flex-start;font-size:.875rem;color:var(--dx-txt2);margin:.2rem 0 1rem;line-height:1.45}
.dk-zgoda input{margin-top:.2rem;flex:none;accent-color:var(--dx-ink)}
@media (max-width:900px){
  .dk-auth{grid-template-columns:minmax(0,1fr);gap:20px}
}
@media (max-width:600px){
  .dk-wrap{padding:28px 16px 56px}
  .dev-body .form-block{padding:20px}
}
