/* plugin.css — strony produktów /plugins/<slug> (+ edytor admina). Paleta = reszta serwisu. */
:root{--bg:#15120f;--panel:#211c18;--panel2:#262019;--line:#3a3026;--line2:#2c241d;
  --rust:#d4541e;--rust2:#f06f2e;--ember:#e8a23d;--text:#e9e2d8;--text2:#a99e8e;--text3:#766b5c;--green:#7cb342;--code:#1a1613}
*{box-sizing:border-box;margin:0;padding:0}
body{color:var(--text);font-family:'JetBrains Mono',ui-monospace,monospace;min-height:100vh}
a{color:inherit}
.wrap{max-width:1100px;margin:0 auto;padding:0 4px 10px}

/* ── Hero ── */
.mjp-hero{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;border:1px solid var(--line2);border-radius:14px;padding:24px;
  background:radial-gradient(700px 300px at 85% -30%,rgba(212,84,30,.16),transparent 60%),linear-gradient(180deg,#211c18,#1b1713)}
.mjp-crumbs{font-size:11px;color:var(--text3);letter-spacing:.4px;margin-bottom:12px}
.mjp-crumbs a{text-decoration:none;color:var(--text2)} .mjp-crumbs a:hover{color:var(--rust2)}
.mjp-crumbs span{margin:0 6px;color:var(--line)}
.mjp-kicker{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px}
.mjp-kicker span{font-size:10.5px;letter-spacing:.8px;text-transform:uppercase;color:var(--ember);border:1px solid #5a3a26;border-radius:6px;padding:3px 8px}
.mjp-hero h1{font-family:'Oswald',sans-serif;font-size:36px;letter-spacing:1px;text-transform:uppercase;line-height:1.1;word-break:break-word}
.mjp-hero h1 b{color:var(--rust2)}
.mjp-hero p.lead{color:var(--text2);font-size:13.5px;line-height:1.8;margin-top:12px;max-width:760px}
.mjp-ctas{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.mjp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--rust);color:#fff;border:1px solid var(--rust);
  font-family:'Oswald',sans-serif;font-weight:600;letter-spacing:1.1px;text-transform:uppercase;font-size:13px;
  padding:11px 18px;border-radius:9px;text-decoration:none;cursor:pointer;line-height:1.2}
.mjp-btn:hover{background:var(--rust2);border-color:var(--rust2)}
.mjp-btn svg{width:16px;height:16px}
.mjp-btn.ghost{background:transparent;border-color:var(--line);color:var(--text2)}
.mjp-btn.ghost:hover{border-color:var(--ember);color:var(--text)}
.mjp-btn.sm{font-size:11.5px;padding:7px 12px;letter-spacing:.8px}
.mjp-btn[aria-disabled="true"]{opacity:.45;pointer-events:none}

.mjp-rel{border:1px solid var(--line);border-radius:12px;padding:16px 16px 14px;background:rgba(21,18,15,.55);align-self:start}
.mjp-rel .k{font-size:10.5px;letter-spacing:.7px;text-transform:uppercase;color:var(--text3)}
.mjp-rel .v{font-family:'Oswald',sans-serif;font-size:32px;color:var(--ember);line-height:1.15;margin:2px 0 4px;word-break:break-all}
.mjp-rel .v small{font-size:12px;color:var(--text3);font-family:'JetBrains Mono',monospace;margin-left:6px;letter-spacing:.3px}
.mjp-rel dl{display:grid;grid-template-columns:auto 1fr;gap:5px 12px;font-size:11.5px;margin:10px 0 12px}
.mjp-rel dt{color:var(--text3)} .mjp-rel dd{color:var(--text);text-align:right;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mjp-rel .mjp-btn{width:100%}
.mjp-rel .alt{display:block;text-align:center;font-size:11px;color:var(--text3);margin-top:9px;text-decoration:none}
.mjp-rel .alt:hover{color:var(--rust2)}
.mjp-badge{display:inline-block;font-size:9.5px;letter-spacing:.7px;text-transform:uppercase;border-radius:5px;padding:2px 6px;vertical-align:2px;
  border:1px solid #3d5a2a;color:#9fd07a;background:rgba(124,179,66,.08)}
.mjp-badge.pre{border-color:#5a3a26;color:var(--ember);background:rgba(232,162,61,.07)}
.mjp-badge.arch{border-color:var(--line);color:var(--text3);background:transparent}
.mjp-badge.hid{border-color:#5a2626;color:#e07a6a;background:rgba(224,122,106,.07)}

/* ── Zakładki podstron ── */
.mjp-tabs{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin:16px 0 22px;font-size:13px}
.mjp-tabs a{text-decoration:none;color:#a99e8e;padding:6px 12px;border:1px solid #3a3026;border-radius:8px;letter-spacing:.4px;transition:.15s;white-space:nowrap}
.mjp-tabs a:hover{border-color:#e8a23d;color:#e9e2d8}
.mjp-tabs a.on{border-color:#e8a23d;color:#e9e2d8;font-weight:600;background:rgba(232,162,61,.06)}
.mjp-tabs .sp{flex:1 1 auto}
.mjp-tabs a.adm{border-style:dashed;border-color:#5a3a26;color:var(--ember)}
.mjp-tabs a.adm:hover{border-color:var(--rust);color:#fff;background:rgba(212,84,30,.12)}

/* ── Układ z spisem treści ── */
.mjp-doc{display:grid;grid-template-columns:250px minmax(0,1fr);gap:26px;align-items:start}
.mjp-toc{position:sticky;top:14px;max-height:calc(100vh - 28px);overflow:auto;scrollbar-width:thin;scrollbar-color:#3a3026 transparent;border:1px solid var(--line2);border-radius:12px;background:var(--panel);padding:14px 12px;font-size:12px}
.mjp-toc::-webkit-scrollbar{width:8px}
.mjp-toc::-webkit-scrollbar-thumb{background:#3a3026;border-radius:4px}
.mjp-toc summary{list-style:none;cursor:pointer;font-family:'Oswald',sans-serif;letter-spacing:1px;text-transform:uppercase;font-size:13px;color:var(--ember);margin-bottom:8px}
.mjp-toc summary::-webkit-details-marker{display:none}
.mjp-toc ol{list-style:none}
.mjp-toc li a{display:block;text-decoration:none;color:var(--text2);padding:4px 8px;border-radius:6px;line-height:1.45;border-left:2px solid transparent}
.mjp-toc li a:hover{color:var(--text);background:rgba(255,255,255,.03)}
.mjp-toc li a.on{color:var(--text);border-left-color:var(--rust);background:rgba(212,84,30,.07)}
.mjp-toc li.l3 a{padding-left:20px;font-size:11.5px;color:var(--text3)}
.mjp-toc li.l3 a.on,.mjp-toc li.l3 a:hover{color:var(--text2)}

/* ── Treść Markdown ── */
.mjp-md{font-size:13px;line-height:1.85;color:var(--text2);min-width:0}
.mjp-md > *:first-child{margin-top:0}
.mjp-md h2{font-family:'Oswald',sans-serif;font-size:21px;letter-spacing:1px;text-transform:uppercase;color:var(--text);margin:34px 0 14px;line-height:1.25;scroll-margin-top:14px}
.mjp-md h2::before{content:"";display:inline-block;width:16px;height:2px;background:var(--rust);vertical-align:6px;margin-right:10px}
.mjp-md h3{font-family:'Oswald',sans-serif;font-size:15.5px;letter-spacing:.8px;color:var(--ember);margin:26px 0 10px;line-height:1.35;scroll-margin-top:14px}
.mjp-md h4{font-size:13.5px;color:var(--text);margin:20px 0 8px;scroll-margin-top:14px}
.mjp-md a.mjp-h{opacity:0;margin-left:8px;color:var(--text3);text-decoration:none;font-size:.8em;transition:.15s}
.mjp-md h2:hover a.mjp-h,.mjp-md h3:hover a.mjp-h,.mjp-md h4:hover a.mjp-h{opacity:1}
.mjp-md p{margin:0 0 12px;max-width:920px}
.mjp-md strong{color:var(--text);font-weight:600}
.mjp-md em{color:var(--text)}
.mjp-md a{color:var(--ember);text-decoration:underline;text-decoration-color:rgba(232,162,61,.35);text-underline-offset:3px}
.mjp-md a:hover{color:var(--rust2);text-decoration-color:var(--rust2)}
.mjp-md .mjp-deadlink{color:var(--text)}
.mjp-md ul,.mjp-md ol{margin:0 0 14px 0;padding-left:22px;max-width:920px}
.mjp-md ul{list-style:none;padding-left:19px}
.mjp-md ul > li{position:relative}
.mjp-md ul > li::before{content:"▸";position:absolute;left:-17px;color:var(--rust2)}
.mjp-md li{margin:4px 0}
.mjp-md li > ul,.mjp-md li > ol{margin:4px 0 4px}
.mjp-md code{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.92em;background:var(--code);border:1px solid var(--line2);color:#e9cfa6;border-radius:5px;padding:1px 5px;word-break:break-word}
.mjp-md pre{background:var(--code);border:1px solid var(--line2);border-radius:10px;padding:14px 16px;overflow:auto;margin:0 0 16px;line-height:1.55;max-height:640px}
.mjp-md pre code{background:none;border:0;padding:0;color:#d9d0c3;font-size:12px;word-break:normal;white-space:pre}
.mjp-md blockquote{border:1px solid var(--line2);border-left:3px solid var(--rust);background:rgba(212,84,30,.05);border-radius:0 10px 10px 0;padding:12px 16px;margin:0 0 16px;max-width:980px}
.mjp-md blockquote p:last-child{margin-bottom:0}
.mjp-md hr{border:0;border-top:1px solid var(--line2);margin:26px 0}
.mjp-tbl{overflow-x:auto;margin:0 0 18px;border:1px solid var(--line2);border-radius:10px}
.mjp-md table{border-collapse:collapse;width:100%;font-size:12px;line-height:1.6}
.mjp-md th{text-align:left;font-weight:600;color:var(--text);background:var(--panel2);padding:8px 11px;border-bottom:1px solid var(--line);white-space:nowrap}
.mjp-md td{padding:7px 11px;border-top:1px solid var(--line2);vertical-align:top}
.mjp-md tbody tr:hover td{background:rgba(255,255,255,.015)}
/* kod w tabelach: nigdy nie łamiemy w środku słowa (np. MajestatProgres|s) */
.mjp-md td code{white-space:nowrap;word-break:normal;overflow-wrap:normal}
/* 1. kolumna (klucz / plik / komenda): łamanie tylko na spacjach, min. szerokość */
.mjp-md td:first-child{min-width:200px}
.mjp-md td:first-child code{white-space:normal;display:inline-block;max-width:100%}
.mjp-md td:first-child:only-child{min-width:0}
/* tabele z 3+ kolumnami nie zgniatają opisu — na wąskim ekranie przewijają się w poziomie */
.mjp-md table:has(th:nth-child(3)){min-width:760px}
.mjp-md img{max-width:100%;height:auto;border-radius:10px;border:1px solid var(--line2);display:block;margin:6px 0}
.mjp-md a.mjp-zoom{display:inline-block;text-decoration:none;cursor:zoom-in}

.mjp-note{border:1px dashed #5a3a26;color:var(--ember);background:rgba(232,162,61,.05);border-radius:10px;padding:10px 14px;font-size:12px;margin:0 0 18px}
.mjp-updated{margin-top:26px;padding-top:14px;border-top:1px solid var(--line2);font-size:11px;color:var(--text3)}

/* ── Galeria ── */
.mjp-gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin:0 0 26px}
.mjp-gal a{display:block;position:relative;border:1px solid var(--line2);border-radius:11px;overflow:hidden;background:var(--panel);text-decoration:none;cursor:zoom-in}
.mjp-gal img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;transition:transform .25s}
.mjp-gal a:hover img{transform:scale(1.03)}
.mjp-gal span{display:block;font-size:11px;color:var(--text2);padding:7px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mjp-lb{position:fixed;inset:0;z-index:100;background:rgba(10,8,6,.92);display:none;align-items:center;justify-content:center;flex-direction:column;padding:24px}
.mjp-lb.on{display:flex}
.mjp-lb img{max-width:min(1400px,100%);max-height:calc(100vh - 110px);border-radius:10px;border:1px solid var(--line)}
.mjp-lb p{color:var(--text2);font-size:12px;margin-top:12px;text-align:center;max-width:900px}
.mjp-lb button{position:absolute;background:rgba(33,28,24,.9);border:1px solid var(--line);color:var(--text);border-radius:9px;width:42px;height:42px;font-size:22px;cursor:pointer}
.mjp-lb button:hover{border-color:var(--ember)}
.mjp-lb .x{top:16px;right:16px}.mjp-lb .pv{left:16px;top:50%}.mjp-lb .nx{right:16px;top:50%}

/* ── Karty podstron ── */
h2.mjp-sec{font-family:'Oswald',sans-serif;font-size:20px;letter-spacing:1px;text-transform:uppercase;margin:30px 0 14px}
h2.mjp-sec::before{content:"";display:inline-block;width:16px;height:2px;background:var(--rust);vertical-align:5px;margin-right:10px}
.mjp-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.mjp-card{display:block;border:1px solid var(--line2);border-radius:12px;background:var(--panel);padding:17px 18px;text-decoration:none;transition:.15s}
.mjp-card:hover{border-color:var(--ember);transform:translateY(-1px)}
.mjp-card h3{font-family:'Oswald',sans-serif;font-size:14px;letter-spacing:1px;text-transform:uppercase;color:var(--ember);margin-bottom:7px}
.mjp-card p{font-size:12px;color:var(--text2);line-height:1.7}

/* ── Pobieranie ── */
.mjp-latest{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:20px;margin-bottom:24px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center}
.mjp-latest h2{font-family:'Oswald',sans-serif;font-size:24px;letter-spacing:1px;color:var(--text)}
.mjp-latest h2 b{color:var(--ember)}
.mjp-latest .meta{display:flex;gap:16px;flex-wrap:wrap;font-size:11.5px;color:var(--text3);margin-top:6px}
.mjp-latest .meta b{color:var(--text2);font-weight:500}
.mjp-sha{display:flex;gap:8px;align-items:center;margin-top:12px;font-size:11px;color:var(--text3);min-width:0}
.mjp-sha code{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:var(--code);border:1px solid var(--line2);border-radius:6px;padding:4px 8px;color:#d9d0c3}
.mjp-sha button,.mjp-copy{background:none;border:1px solid var(--line);color:var(--text2);border-radius:6px;padding:4px 9px;font-family:inherit;font-size:11px;cursor:pointer;white-space:nowrap}
.mjp-sha button:hover,.mjp-copy:hover{border-color:var(--ember);color:var(--text)}
.mjp-latest .notes{margin-top:12px;font-size:12.5px}
.mjp-dlside{display:flex;flex-direction:column;gap:8px;align-items:stretch;min-width:230px}
.mjp-dlside small{font-size:10.5px;color:var(--text3);text-align:center}
.mjp-arch{width:100%;border-collapse:collapse;font-size:12px}
.mjp-arch th{text-align:left;color:var(--text3);font-weight:500;font-size:10.5px;letter-spacing:.6px;text-transform:uppercase;padding:8px 11px;border-bottom:1px solid var(--line)}
.mjp-arch td{padding:9px 11px;border-top:1px solid var(--line2);color:var(--text2);vertical-align:top}
.mjp-arch td.ver{font-family:'Oswald',sans-serif;font-size:15px;color:var(--text);white-space:nowrap}
.mjp-arch td.sha code{font-size:10.5px;color:var(--text3)}
.mjp-arch td.act{text-align:right;white-space:nowrap}
.mjp-arch details summary{cursor:pointer;color:var(--ember);font-size:11px;list-style:none}
.mjp-arch details summary::-webkit-details-marker{display:none}
.mjp-arch details .mjp-md{margin-top:8px;font-size:12px}
.mjp-feed{border:1px solid var(--line2);border-radius:12px;padding:14px 16px;font-size:12px;color:var(--text2);margin-top:22px;line-height:1.8}
.mjp-feed code{background:var(--code);border:1px solid var(--line2);border-radius:5px;padding:1px 6px;color:#e9cfa6;word-break:break-all}
.mjp-empty{border:1px dashed var(--line);border-radius:12px;padding:22px;text-align:center;color:var(--text3);font-size:12.5px;margin-bottom:22px}

/* ── Wydania na stronie zmian ── */
.mjp-rels{display:grid;gap:10px;margin-bottom:26px}
.mjp-rels article{border:1px solid var(--line2);border-radius:11px;background:var(--panel);padding:13px 16px}
.mjp-rels header{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.mjp-rels header b{font-family:'Oswald',sans-serif;font-size:17px;color:var(--text);letter-spacing:.5px}
.mjp-rels header time,.mjp-rels header span.s{font-size:11px;color:var(--text3)}
.mjp-rels header a{margin-left:auto;font-size:11px;color:var(--ember);text-decoration:none}
.mjp-rels .mjp-md{margin-top:8px;font-size:12.5px}

@media(max-width:900px){
  .mjp-hero{grid-template-columns:1fr;padding:20px}
  .mjp-doc{grid-template-columns:1fr}
  .mjp-toc{position:static;max-height:none}
  .mjp-toc:not([open]){padding-bottom:6px}
  .mjp-latest{grid-template-columns:1fr}
  .mjp-arch .hide-m{display:none}
}
@media(max-width:560px){
  .mjp-hero h1{font-size:28px}
  .mjp-md td:first-child{min-width:150px}
  .mjp-tabs a{padding:6px 9px;font-size:12px}
  .mjp-dlside{min-width:0}
}
