/* ============================================================
   Analityk Łukasz — style strony głównej i artykułu
   Przeniesione z makiety HTML, dopasowane do WordPressa
   ============================================================ */

.al-page *,.al-page *::before,.al-page *::after{box-sizing:border-box;margin:0;padding:0}
.al-page{font-family:'Inter',system-ui,sans-serif;background:#F4F6FA;color:#1C1C2E;min-height:100vh;-webkit-font-smoothing:antialiased}
.al-page button{font-family:inherit;cursor:pointer}
html{scroll-behavior:smooth}

.al-page{
  --bg:#F4F6FA;--surface:#fff;--hero:#09142A;
  --text-1:#1C1C2E;--text-2:#5A6A7E;--text-3:#9BAAB8;
  --border:rgba(0,0,0,.07);--border-md:rgba(0,0,0,.13);
  --teal:#1D9E75;--teal-dark:#0F6E56;
  --purple:#7F77DD;--amber:#BA7517;--blue:#378ADD;--coral:#D85A30;
  --r-sm:6px;--r-md:10px;--r-lg:14px;
  --shadow-sm:0 2px 8px rgba(0,0,0,.06);--shadow-md:0 4px 20px rgba(0,0,0,.09);
  --sans:'Inter',system-ui,sans-serif;
  --serif:'Playfair Display',Georgia,serif;
  --mono:'JetBrains Mono','Courier New',monospace;
}

/* ── NAV ── */
.al-nav{position:sticky;top:0;z-index:200;background:var(--hero);border-bottom:1px solid rgba(255,255,255,.055);height:58px;padding:0 32px}
.al-nav-inner{max-width:1260px;margin:0 auto;height:100%;display:flex;align-items:center;gap:4px}
.al-logo{font-size:16px;font-weight:500;color:#fff;margin-right:auto;text-decoration:none;letter-spacing:-.015em}
.al-logo-accent{color:var(--teal)}
.al-nav-link{font-size:13px;color:rgba(255,255,255,.38);padding:5px 11px;border-radius:var(--r-sm);text-decoration:none;transition:color .15s,background .15s;white-space:nowrap}
.al-nav-link:hover{color:rgba(255,255,255,.78);background:rgba(255,255,255,.06)}
.al-nav-link.is-active{color:rgba(255,255,255,.82)}
.al-nav-icon{margin-left:10px;opacity:.3;color:#fff}
.al-nav-icon:hover{opacity:.6}
.al-nav-links{display:flex;align-items:center;gap:4px}
.al-nav-links li{display:contents}
.al-nav-links li.current-menu-item > a{color:rgba(255,255,255,.82)}
.al-nav-toggle{display:none;background:none;border:none;color:#fff;opacity:.65;padding:6px;margin-left:6px;border-radius:var(--r-sm);transition:opacity .15s,background .15s}
.al-nav-toggle:hover{opacity:1;background:rgba(255,255,255,.06)}

/* ── HERO ── */
.al-hero{background:var(--hero);padding:52px 32px 48px}
.al-hero-inner{max-width:1260px;margin:0 auto;display:grid;grid-template-columns:1fr 430px;gap:52px;align-items:center}
.al-hero-eyebrow{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.28);margin-bottom:14px}
.al-hero-title{font-size:52px;font-weight:500;line-height:1.06;font-family:var(--serif);color:#fff;margin-bottom:12px}
.al-hero-role{font-size:21px;font-weight:500;color:var(--teal);min-height:34px;display:flex;align-items:center;gap:3px;margin-bottom:20px}
#al-tw-role{font-family:var(--mono)}
.al-tw-cur{color:rgba(255,255,255,.32);animation:al-blink .8s step-end infinite}
.al-hero-bio{font-size:15px;line-height:1.72;color:rgba(255,255,255,.42);margin-bottom:24px;max-width:420px}
.al-stats-row{display:flex;align-items:center;gap:10px;font-size:13px;color:rgba(255,255,255,.28);margin-bottom:28px;flex-wrap:wrap}
.al-stat-n{color:rgba(255,255,255,.65);font-weight:500}
.al-stat-sep{opacity:.4}
.al-hero-cta{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;padding:12px 22px;border-radius:var(--r-md);background:var(--teal);color:#fff;border:none;text-decoration:none;transition:background .15s}
.al-hero-cta:hover{background:#1A9068}

/* ── TERMINAL ── */
.al-terminal-wrap{width:430px;flex-shrink:0}
.al-terminal{background:#081525;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.08);box-shadow:0 28px 56px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.04);font-family:var(--mono);font-size:13.5px}
.al-t-bar{background:rgba(255,255,255,.04);padding:13px 18px;display:flex;align-items:center;gap:8px;border-bottom:1px solid rgba(255,255,255,.05)}
.al-t-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}
.al-t-r{background:#FF5F56}.al-t-y{background:#FFBD2E}.al-t-g{background:#27C93F}
.al-t-bar-title{font-size:12px;color:rgba(255,255,255,.22);margin:0 auto;letter-spacing:.03em}
.al-t-body{padding:20px 22px;min-height:240px;line-height:1.75;transition:opacity .4s ease}
.al-t-body.al-t-fading{opacity:0}
.al-t-row{margin-bottom:1px}
.al-t-ps{color:rgba(29,158,117,.7)}
.al-t-dl{color:rgba(255,255,255,.25);margin:0 6px}
.al-t-ct{color:#E2E8F0}
.al-t-out{color:rgba(255,255,255,.45);padding-left:2px}
.al-t-grn{color:#5DCAA5;padding-left:2px}
.al-t-sp{height:10px}
@keyframes al-blink{0%,100%{opacity:1}50%{opacity:0}}
.al-t-bl{animation:al-blink 1s step-end infinite;color:rgba(29,158,117,.75)}

/* ── FILTER BAR ── */
.al-filter-bar{background:var(--surface);border-bottom:1px solid var(--border);display:flex;gap:8px;padding:13px 32px;position:sticky;top:58px;z-index:190;overflow-x:auto}
.al-pill{font-size:12px;padding:5px 15px;border-radius:999px;border:1px solid var(--border-md);color:var(--text-2);background:transparent;white-space:nowrap;transition:all .16s;text-decoration:none;display:inline-block}
.al-pill:hover{border-color:#888;color:var(--text-1)}
.al-pill.is-on{background:var(--text-1);color:#fff;border-color:transparent}

/* Lista rozwijana — zastępuje pigułki na wąskich ekranach (patrz media query niżej) */
.al-filter-select-wrap{display:none;background:var(--surface);border-bottom:1px solid var(--border);padding:13px 32px;position:sticky;top:58px;z-index:190}
.al-filter-select-shell{position:relative}
.al-filter-select{
  width:100%;appearance:none;-webkit-appearance:none;-moz-appearance:none;
  font-family:inherit;font-size:13px;color:var(--text-1);background:var(--surface);
  border:1px solid var(--border-md);border-radius:var(--r-md);
  padding:10px 38px 10px 14px;
}
.al-filter-select:focus{outline:none;border-color:#888}
.al-filter-select-icon{position:absolute;right:13px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--text-2)}

/* ── MAIN ── */
.al-main{max-width:1260px;margin:0 auto;padding:32px 32px 72px}
.al-bento-top{display:grid;grid-template-columns:1fr 300px;gap:22px;margin-bottom:22px}

/* ── FEATURED CARD ── */
.al-feat-card{background:var(--surface);border-radius:var(--r-lg);border:1px solid var(--border);padding:30px;text-decoration:none;display:block;color:inherit;transition:border-color .2s,box-shadow .2s}
.al-feat-card:hover{border-color:rgba(0,0,0,.18);box-shadow:var(--shadow-md)}
.al-card-meta-row{display:flex;align-items:center;gap:10px;margin-bottom:13px}
.al-badge{display:inline-block;font-size:11px;font-weight:500;padding:3px 10px;border-radius:999px}
.al-b-amber{background:rgba(239,159,39,.14);color:#854F0B}
.al-b-teal{background:rgba(29,158,117,.14);color:#0F6E56}
.al-b-purple{background:rgba(127,119,221,.14);color:#534AB7}
.al-b-blue{background:rgba(55,138,221,.14);color:#185FA5}
.al-b-coral{background:rgba(216,90,48,.14);color:#993C1D}
.al-read-time{font-size:12px;color:var(--text-3)}
.al-feat-title{font-size:23px;font-weight:500;line-height:1.28;font-family:var(--serif);color:var(--text-1);margin-bottom:11px}
.al-feat-exc{font-size:14px;line-height:1.68;color:var(--text-2);margin-bottom:18px}
.al-feat-thumb{background:var(--bg);border-radius:var(--r-md);margin-bottom:18px;border:1px solid var(--border);overflow:hidden}
.al-feat-thumb img{display:block;width:100%;height:auto}
.al-card-foot{font-size:12px;color:var(--text-3);display:flex;align-items:center;gap:8px}
.al-card-foot .al-cta-hint{color:var(--teal);font-weight:500;margin-left:auto}
.al-dot{opacity:.38}

/* ── RECENT SIDEBAR ── */
.al-recent-card{background:var(--surface);border-radius:var(--r-lg);border:1px solid var(--border);padding:22px}
.al-recent-head{font-size:11px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--text-2);margin-bottom:14px}
.al-recent-item{display:block;padding:11px 0;border-bottom:1px solid var(--border);text-decoration:none;color:inherit;transition:opacity .15s}
.al-recent-item:hover{opacity:.72}
.al-recent-item:last-child{border-bottom:none;padding-bottom:0}
.al-ri-title{font-size:13px;font-weight:500;line-height:1.35;color:var(--text-1);margin:5px 0 3px}
.al-ri-meta{font-size:11px;color:var(--text-3)}

/* ── TOPIC GRID ── */
.al-topic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:32px}
.al-topic-card{background:var(--surface);border-radius:var(--r-lg);border:1px solid var(--border);border-left:3px solid transparent;padding:18px 18px 18px 15px;text-decoration:none;display:block;color:inherit;transition:box-shadow .18s,transform .15s}
.al-topic-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.al-tc-purple{border-left-color:var(--purple)}
.al-tc-blue{border-left-color:var(--blue)}
.al-tc-teal{border-left-color:var(--teal)}
.al-tc-amber{border-left-color:var(--amber)}
.al-tc-cat{font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);margin-bottom:5px}
.al-tc-title{font-size:13px;font-weight:500;line-height:1.4;color:var(--text-1);margin-bottom:7px}
.al-tc-meta{font-size:11px;color:var(--text-3)}

/* ── NEWSLETTER ── */
.al-nl-strip{background:var(--hero);border-radius:var(--r-lg);padding:28px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.al-nl-title{font-size:16px;font-weight:500;color:#fff;margin-bottom:4px}
.al-nl-sub{font-size:13px;color:rgba(255,255,255,.42)}
.al-nl-form{display:flex;gap:10px}
.al-nl-input{font-size:13px;padding:9px 14px;border-radius:var(--r-md);border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#fff;width:210px;outline:none;transition:border-color .15s}
.al-nl-input::placeholder{color:rgba(255,255,255,.28)}
.al-nl-input:focus{border-color:rgba(255,255,255,.3)}
.al-nl-btn{font-size:13px;font-weight:500;padding:9px 18px;border-radius:var(--r-md);background:var(--teal);color:#fff;border:none;transition:background .15s;white-space:nowrap}
.al-nl-btn:hover{background:#1A9068}

/* ── ARTICLE VIEW ── */
.al-article-nav{background:var(--surface);border-bottom:1px solid var(--border);padding:12px 32px;display:flex;align-items:center;gap:10px}
.al-back-btn{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:500;color:var(--text-1);padding:6px 14px;border-radius:var(--r-md);border:1px solid var(--border-md);background:var(--surface);text-decoration:none;transition:background .15s}
.al-back-btn:hover{background:var(--bg)}
.al-breadcrumb{font-size:13px;color:var(--text-3);display:flex;align-items:center;gap:4px}
.al-bc-link{color:var(--text-2);text-decoration:none}
.al-bc-link:hover{color:var(--text-1)}
.al-article-wrap{max-width:1080px;margin:0 auto;padding:44px 32px 80px}
.al-article-layout{display:grid;grid-template-columns:1fr 230px;gap:60px;align-items:start}
.al-article-eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.al-article-title{font-size:38px;font-weight:500;line-height:1.12;font-family:var(--serif);color:var(--text-1);margin-bottom:18px}
.al-article-meta{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--text-2);margin-bottom:30px;padding-bottom:28px;border-bottom:1px solid var(--border);flex-wrap:wrap}
.al-author-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--blue));display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:500;color:#fff;flex-shrink:0}
.al-article-body h2{font-size:21px;font-weight:500;font-family:var(--serif);color:var(--text-1);margin:36px 0 13px}
.al-article-body h3{font-size:17px;font-weight:500;font-family:var(--serif);color:var(--text-1);margin:28px 0 10px}
.al-article-body p{font-size:15px;line-height:1.82;color:var(--text-2);margin-bottom:18px}
.al-article-body ul,.al-article-body ol{padding-left:22px;margin-bottom:18px}
.al-article-body li{font-size:15px;line-height:1.82;color:var(--text-2);margin-bottom:6px}
.al-article-body img{max-width:100%;height:auto;border-radius:var(--r-md);margin:22px 0}
.al-article-body blockquote{border-left:3px solid var(--amber);background:rgba(186,117,23,.06);border-radius:0 var(--r-md) var(--r-md) 0;padding:16px 20px;margin:22px 0}
.al-article-body blockquote p{font-size:14px;line-height:1.7;color:var(--text-1);margin:0}

/* Code blocks pulled from Gutenberg <pre><code> and dressed up by JS */
.al-code-block{background:#09142A;border-radius:var(--r-lg);padding:20px;margin:22px 0;border:1px solid rgba(255,255,255,.06);overflow-x:auto}
.al-code-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.al-code-lang{font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.28)}
.al-code-copy{font-size:11px;color:rgba(255,255,255,.28);padding:3px 10px;border-radius:var(--r-sm);border:1px solid rgba(255,255,255,.1);background:transparent;transition:all .15s}
.al-code-copy:hover{color:rgba(255,255,255,.65);border-color:rgba(255,255,255,.25)}
.al-code-block pre{font-family:var(--mono);font-size:13px;line-height:1.72;color:#CBD5E1;white-space:pre-wrap}

.al-toc{position:sticky;top:80px}
.al-toc-label{font-size:11px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--text-2);margin-bottom:12px}
.al-toc-item{display:block;font-size:13px;color:var(--text-2);padding:6px 0 6px 14px;border-left:2px solid var(--border);text-decoration:none;transition:all .15s;margin-bottom:2px}
.al-toc-item:hover{color:var(--text-1);border-left-color:#bbb}
.al-toc-item.al-toc-active{color:var(--teal-dark);border-left-color:var(--teal);font-weight:500}

.al-related{margin-top:52px;padding-top:32px;border-top:1px solid var(--border)}
.al-related-head{font-size:11px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--text-2);margin-bottom:16px}
.al-related-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.al-related-card{background:var(--bg);border-radius:var(--r-md);border:1px solid var(--border);padding:16px;text-decoration:none;color:inherit;display:block;transition:border-color .15s,box-shadow .15s}
.al-related-card:hover{border-color:rgba(0,0,0,.2);box-shadow:var(--shadow-sm)}
.al-related-title{font-size:13px;font-weight:500;line-height:1.38;color:var(--text-1);margin:6px 0 5px}
.al-related-meta{font-size:11px;color:var(--text-3)}

/* ── Animacje "przy scrollu" (IntersectionObserver, patrz theme.js) ── */
.al-reveal{
  opacity:0;
  transform:translateY(18px);
  transition:opacity .6s cubic-bezier(.2,.7,.3,1), transform .6s cubic-bezier(.2,.7,.3,1);
  transition-delay:var(--reveal-delay, 0ms);
}
.al-reveal.is-visible{opacity:1;transform:translateY(0)}

@media (prefers-reduced-motion: reduce){
  .al-reveal{opacity:1;transform:none;transition:none}
}

/* ── Paginacja (category.php, paginate_links()) ── */
.al-main .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:36px;height:36px;padding:0 10px;
  font-size:13px;color:var(--text-2);text-decoration:none;
  border:1px solid var(--border-md);border-radius:var(--r-sm);
  transition:all .15s;
}
.al-main .page-numbers:hover{border-color:#888;color:var(--text-1)}
.al-main .page-numbers.current{background:var(--text-1);color:#fff;border-color:transparent}
.al-main .page-numbers.dots{border-color:transparent}

@media(max-width:900px){
  .al-hero{padding:36px 20px 32px}
  .al-hero-inner{grid-template-columns:1fr}
  .al-terminal-wrap{display:none}
  .al-nav-toggle{display:inline-flex;align-items:center;justify-content:center}
  .al-nav-links{
    display:none;position:absolute;top:58px;left:0;right:0;
    flex-direction:column;align-items:stretch;gap:2px;
    background:var(--hero);border-bottom:1px solid rgba(255,255,255,.08);
    padding:10px 20px 16px;z-index:199;
  }
  .al-nav-links.is-open{display:flex}
  .al-nav-link{padding:11px 6px}
  .al-hero-title{font-size:38px}
  .al-bento-top{grid-template-columns:1fr}
  .al-topic-grid{grid-template-columns:repeat(2,1fr)}
  .al-article-layout{grid-template-columns:1fr}
  .al-toc{display:none}
  .al-related-grid{grid-template-columns:1fr}
  .al-nl-strip{flex-direction:column;align-items:flex-start}
  .al-main,.al-article-wrap,.al-article-nav,.al-filter-bar,.al-filter-select-wrap,.al-nav{padding-left:16px;padding-right:16px}
  .al-filter-bar{display:none}
  .al-filter-select-wrap{display:block}
}
@media(max-width:600px){
  .al-topic-grid{grid-template-columns:1fr}
  .al-hero-title{font-size:30px}
}
