/* ============================================================
   MCZ — POJEDYNCZY ARTYKUŁ  (single.css)
   Ładowany warunkowo w header.php  ·  mobile-first
   ============================================================ */

.single{position:relative;padding:7rem 0 5rem}
.single .shell{width:min(1240px,92vw)}

/* ============================================================
   HERO ARTYKUŁU
   ============================================================ */
.post-back{display:inline-flex;align-items:center;gap:.45rem;font-family:'JetBrains Mono',monospace;
  font-size:.8rem;letter-spacing:.04em;color:var(--muted);margin-bottom:1.6rem;
  transition:color .25s}
.post-back svg{width:16px;height:16px;transition:transform .3s var(--ease)}
.post-back:hover{color:var(--orange)}
.post-back:hover svg{transform:translateX(-4px)}
.post-kicker{display:block;font-family:'JetBrains Mono',monospace;font-size:.76rem;
  letter-spacing:.12em;text-transform:uppercase;color:var(--orange);margin-bottom:.9rem}
.post-kicker a{color:var(--orange)}
.post-title{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;
  letter-spacing:-.03em;font-size:clamp(2rem,7vw,3.2rem);line-height:1.1}
.post-meta{display:flex;flex-wrap:wrap;gap:.6rem 1.3rem;margin-top:1.4rem;
  padding-top:1.4rem;border-top:1px solid var(--line-soft)}
.post-meta span{display:inline-flex;align-items:center;gap:.45rem;
  font-size:.86rem;color:var(--muted)}
.post-meta svg{width:16px;height:16px;stroke:var(--orange);flex:none}

/* ============================================================
   TREŚĆ ARTYKUŁU  —  typografia
   ============================================================ */
.post-body{font-size:1.07rem;line-height:1.8;color:var(--cream)}
.post-body > *:first-child{margin-top:0}
.post-body p{margin:0 0 1.4rem}
.post-body h2,.post-body h3,.post-body h4{font-family:'Bricolage Grotesque',sans-serif;
  font-weight:700;letter-spacing:-.02em;line-height:1.25;color:#fff;
  margin:2.4rem 0 1rem;scroll-margin-top:90px}
.post-body h2{font-size:clamp(1.5rem,5vw,1.95rem);padding-top:.4rem}
.post-body h3{font-size:clamp(1.25rem,4vw,1.5rem)}
.post-body h4{font-size:1.15rem}
.post-body a{color:var(--orange);text-decoration:underline;
  text-underline-offset:3px;text-decoration-thickness:1px;transition:color .2s}
.post-body a:hover{color:var(--orange-2)}
.post-body strong,.post-body b{color:#fff;font-weight:700}
.post-body em,.post-body i{color:var(--orange-2)}

.post-body ul,.post-body ol{margin:0 0 1.4rem;padding-left:0;list-style:none}
.post-body li{position:relative;padding-left:1.7rem;margin-bottom:.6rem}
.post-body ul li::before{content:"";position:absolute;left:.1rem;top:.62rem;
  width:7px;height:7px;border-radius:2px;background:var(--grad-warm)}
.post-body ol{counter-reset:li}
.post-body ol li{counter-increment:li}
.post-body ol li::before{content:counter(li);position:absolute;left:0;top:.1rem;
  font-family:'JetBrains Mono',monospace;font-size:.78rem;font-weight:700;color:var(--orange)}
.post-body li > ul,.post-body li > ol{margin:.6rem 0 0}

.post-body blockquote{margin:1.8rem 0;padding:1.2rem 1.4rem;
  border-left:3px solid var(--orange);border-radius:0 14px 14px 0;
  background:var(--surface-2);font-size:1.1rem;line-height:1.6}
.post-body blockquote p:last-child{margin-bottom:0}
.post-body blockquote cite{display:block;margin-top:.6rem;font-size:.85rem;
  font-style:normal;color:var(--muted)}

.post-body img{border-radius:14px;height:auto}
.post-body figure{margin:1.8rem 0}
.post-body figure img{width:100%}
.post-body figcaption,.post-body .wp-caption-text{margin-top:.6rem;text-align:center;
  font-size:.84rem;color:var(--muted)}

.post-body code{font-family:'JetBrains Mono',monospace;font-size:.88em;
  background:var(--surface-2);border:1px solid var(--line-soft);
  padding:.15em .45em;border-radius:6px;color:var(--orange-2)}
.post-body pre{margin:1.8rem 0;padding:1.3rem;border-radius:14px;overflow-x:auto;
  background:var(--ink);border:1px solid var(--line-soft)}
.post-body pre code{background:none;border:none;padding:0;color:var(--cream);font-size:.9rem}

.post-body hr{margin:2.6rem 0;border:none;height:1px;background:var(--line)}

.post-body table{width:100%;border-collapse:collapse;margin:1.8rem 0;font-size:.95rem}
.post-body th,.post-body td{padding:.7rem .9rem;border:1px solid var(--line-soft);text-align:left}
.post-body th{background:var(--surface-2);font-weight:700;color:#fff}

/* wyrównania WP */
.post-body .aligncenter{display:block;margin-left:auto;margin-right:auto}
.post-body .alignright{float:right;margin:.4rem 0 1rem 1.4rem;max-width:50%}
.post-body .alignleft{float:left;margin:.4rem 1.4rem 1rem 0;max-width:50%}
.post-body .wp-caption{max-width:100%}

/* podział na strony (wp_link_pages) */
.page-links{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;
  margin-top:2.4rem;padding-top:1.6rem;border-top:1px solid var(--line-soft)}
.page-links-title{font-family:'JetBrains Mono',monospace;font-size:.8rem;
  color:var(--muted);margin-right:.4rem}
.page-links a,.page-links > span:not(.page-links-title){width:38px;height:38px;
  display:inline-flex;align-items:center;justify-content:center;border-radius:10px;
  border:1px solid var(--line-soft);font-weight:600;font-size:.9rem}
.page-links a:hover{border-color:var(--orange);color:var(--orange)}
.page-links > span:not(.page-links-title){background:var(--grad-warm);color:var(--ink);
  border-color:transparent}

/* ============================================================
   STOPKA ARTYKUŁU  —  tagi + udostępnianie
   ============================================================ */
.post-foot{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line-soft);
  display:flex;flex-direction:column;gap:1.8rem}
.post-foot__label{display:block;font-family:'JetBrains Mono',monospace;font-size:.76rem;
  letter-spacing:.1em;text-transform:uppercase;color:var(--orange);margin-bottom:.8rem}
.post-tags__list{display:flex;flex-wrap:wrap;gap:.5rem}
.post-tags__list .tag{display:inline-block;padding:.4rem .9rem;border-radius:100px;
  border:1px solid var(--line-soft);background:var(--surface);font-size:.84rem;
  color:var(--muted);transition:.25s var(--ease)}
.post-tags__list .tag:hover{border-color:var(--orange);color:var(--orange)}
.post-tags__list .tag a{color:inherit}

.post-share__list{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.share-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;
  padding:.8rem 1rem;border-radius:12px;border:1px solid var(--line-soft);
  background:var(--surface);font-weight:600;font-size:.9rem;color:var(--cream);
  transition:.25s var(--ease)}
.share-btn svg{width:18px;height:18px;fill:var(--orange-2);stroke:var(--orange-2);
  transition:.25s var(--ease)}
.share-btn--mail svg{fill:none}
.share-btn:hover{transform:translateY(-3px);border-color:var(--orange);color:#fff}
.share-btn:hover svg{fill:var(--orange);stroke:var(--orange)}
.share-btn--mail:hover svg{fill:none}

/* ============================================================
   NAWIGACJA MIĘDZY ARTYKUŁAMI
   ============================================================ */
.post-nav{margin-top:2.4rem;display:grid;grid-template-columns:1fr;gap:.8rem}
.post-nav__item{padding:1.2rem 1.3rem;border-radius:16px;border:1px solid var(--line-soft);
  background:var(--surface);transition:.3s var(--ease)}
.post-nav__item--empty{border:none;background:none;padding:0}
a.post-nav__item:hover{border-color:var(--line);transform:translateY(-3px)}
.post-nav__dir{display:flex;align-items:center;gap:.45rem;font-family:'JetBrains Mono',monospace;
  font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--orange);
  margin-bottom:.4rem}
.post-nav__dir svg{width:15px;height:15px}
.post-nav__title{font-family:'Bricolage Grotesque',sans-serif;font-weight:700;
  font-size:1rem;line-height:1.3;color:var(--cream)}
.post-nav__item--center{display:flex;align-items:center;justify-content:center;gap:.55rem;
  font-weight:600;font-size:.92rem;background:var(--surface-2);text-align:center}
.post-nav__item--center svg{width:18px;height:18px;stroke:var(--orange);flex:none}
.post-nav__item--next{text-align:right}
.post-nav__item--next .post-nav__dir{justify-content:flex-end}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (min-width:640px){
  .post-share__list{grid-template-columns:repeat(4,1fr)}
}
@media (min-width:860px){
  .post-nav{grid-template-columns:1fr auto 1fr;align-items:stretch}
}
@media (min-width:1024px){
  .single{padding:9.5rem 0 6rem}
}