@import url("cover.css");
/* Czytnik Wydawni: zmienne motywu przychodzą z <style> w <head> (themeCSS). */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg,#f7f3ea);color:var(--fg,#1b1a17);font-family:var(--font-body,Georgia,serif);font-size:calc(1.0625rem * var(--scale,1) * var(--user-scale,1));line-height:1.65;-webkit-font-smoothing:antialiased}
body.dark{--bg:#0e0f12;--paper:#15171c;--fg:#e9e7e1;--muted:#9a9890;--rule:#2a2d35}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--font-heading);font-weight:var(--hw,700);text-transform:var(--ht,none);line-height:1.1;margin:0;letter-spacing:-.01em}
.kicker{font-family:var(--font-ui);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.kicker--big{font-size:.85rem;margin:0 0 .75rem}
.muted{color:var(--muted)}
.lead{font-size:1.25em;line-height:1.45;color:var(--muted);font-style:italic}
.btn{display:inline-block;font-family:var(--font-ui);font-weight:600;font-size:.95rem;background:var(--accent);color:#fff;text-decoration:none;padding:.8em 1.4em;border-radius:var(--radius);border:2px solid var(--accent);transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px -10px var(--accent)}
.btn--ghost{background:transparent;color:var(--accent)}
.empty{color:var(--muted);text-align:center;padding:4rem 1rem}
.hp{position:absolute;left:-9999px}
.preview-bar{position:sticky;top:0;z-index:50;background:#f59e0b;color:#111;font:600 .85rem var(--font-ui);padding:.5rem 1rem;text-align:center}
.preview-bar a{color:#111}

/* Masthead */
.mast{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--rule)}
.is-preview .mast{top:2.1rem}
.mast__in{max-width:1200px;margin:0 auto;padding:.7rem 1.25rem;display:flex;align-items:center;gap:1rem}
.mast__brand{text-decoration:none;display:flex;align-items:center}
.mast__name{font-family:var(--font-heading);font-weight:var(--hw);font-size:1.35rem;text-transform:var(--ht);letter-spacing:-.02em}
.mast__logo{height:32px;width:auto}
.mast__issue,.mast__tagline{font-family:var(--font-ui);font-size:.8rem;color:var(--muted);text-decoration:none;padding-left:1rem;border-left:1px solid var(--rule);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mast__tools{margin-left:auto;display:flex;gap:.25rem}
.tool{background:none;border:0;color:var(--fg);width:38px;height:38px;border-radius:50%;display:grid;place-items:center;cursor:pointer;opacity:.75}
.tool:hover{background:var(--rule);opacity:1}
.progress{height:2px;background:transparent}
.progress span{display:block;height:100%;width:0;background:var(--accent);transition:width .1s linear}

/* Kiosk */
.page-kiosk{font-family:Inter,system-ui,sans-serif;--bg:#111214;--fg:#f2f2f0;--muted:#9a9a9a;--rule:#2a2b2f;--accent:#e8552b;background:var(--bg)}
.kiosk{max-width:1200px;margin:0 auto;padding:4rem 1.5rem}
.kiosk__head h1{font-size:3rem;letter-spacing:-.04em;font-family:'Georgia',serif;font-style:italic;font-weight:400}
.kiosk__head p{color:var(--muted);margin:.25rem 0 3rem}
.kiosk__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:2.5rem 2rem}
.kiosk__mag{text-decoration:none;display:flex;flex-direction:column;gap:.35rem;--paper:#1c1d21;--hw:700;--font-heading:Georgia,serif;--font-ui:Inter,system-ui,sans-serif}
.kiosk__mag .cover{margin-bottom:.75rem;transition:transform .25s}
.kiosk__mag:hover .cover{transform:translateY(-6px) rotate(-1deg)}
.kiosk__mag>strong{font-size:1.15rem}.kiosk__mag>span,.kiosk__mag>small{color:var(--muted)}
.kiosk__foot{margin-top:5rem;color:var(--muted);font-size:.85rem}.kiosk__foot a{color:var(--muted)}
.errpage{min-height:80vh;display:grid;place-content:center;text-align:center;font-family:system-ui}
.errpage h1{font-size:6rem;opacity:.2}

/* Strona magazynu */
.maghome,.issue{max-width:1200px;margin:0 auto;padding:2rem 1.25rem 4rem}
.hero-issue{display:grid;grid-template-columns:minmax(260px,420px) 1fr;gap:3rem;align-items:center;padding:2rem 0 3rem}
.hero-issue__cover{display:block;max-width:420px}
.hero-issue__txt h1{font-size:clamp(2.2rem,5vw,4rem);margin:.5rem 0 1rem}
.hero-issue__txt .btn{margin:1rem 0 2rem}
.hero-issue__toc{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}
.hero-issue__toc li{border-bottom:1px solid var(--rule)}
.hero-issue__toc a{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;text-decoration:none;font-family:var(--font-ui);font-size:.95rem}
.hero-issue__toc a:hover span{text-decoration:underline}
.hero-issue__toc small{color:var(--muted);white-space:nowrap}
.about{max-width:720px;font-size:1.15rem;line-height:1.6;color:var(--muted);padding:1rem 0 2rem}
.archive h2{font-size:1.4rem;margin:2rem 0 1.25rem;padding-top:2rem;border-top:1px solid var(--rule)}
.archive__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.5rem}
.issue-card{text-decoration:none;display:block}
.issue-card .cover{transition:transform .25s}
.issue-card:hover .cover{transform:translateY(-4px)}
.issue-card__t{display:flex;flex-direction:column;margin-top:.6rem;font-family:var(--font-ui);font-size:.85rem}
.issue-card__t span{color:var(--accent);font-weight:600;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.issue-card__t small{color:var(--muted)}

/* Strona numeru */
.issue__top{display:grid;grid-template-columns:minmax(240px,380px) 1fr;gap:3rem;align-items:start;padding:1rem 0 3rem}
.issue__intro h1{font-size:clamp(2rem,4.5vw,3.5rem);margin:.5rem 0 1rem}
.editorial{font-size:1.1rem;color:var(--fg);max-width:60ch}
.editorial p:first-child::first-letter{font-family:var(--font-heading);font-size:3.2em;float:left;line-height:.8;padding:.1em .1em 0 0;color:var(--accent)}
.issue__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.issue__featured{margin-bottom:2rem}
.toc__h{font-size:1.5rem;padding:1.5rem 0 1rem;border-top:2px solid var(--fg);margin-bottom:.5rem}
.toc__section{margin-bottom:2rem}
.toc__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}
.art-card{text-decoration:none;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);overflow:hidden;transition:transform .2s,box-shadow .2s}
.art-card:hover{transform:translateY(-3px);box-shadow:0 20px 40px -24px rgba(0,0,0,.35)}
.art-card__img{aspect-ratio:16/9;overflow:hidden}.art-card__img img{width:100%;height:100%;object-fit:cover}
.art-card__body{padding:1.1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.5rem}
.art-card h3{font-size:1.35rem;text-wrap:balance}
.art-card p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.byline{font-family:var(--font-ui);font-size:.8rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin-top:auto}
.art-card--big{flex-direction:row;min-height:320px}
.art-card--big .art-card__img{flex:1 1 55%;aspect-ratio:auto}
.art-card--big .art-card__body{flex:1 1 45%;padding:2rem;justify-content:center}
.art-card--big h3{font-size:clamp(1.6rem,3vw,2.4rem)}
.issue-nav{display:flex;justify-content:space-between;gap:1rem;font-family:var(--font-ui);font-size:.9rem;padding:2rem 0;border-top:1px solid var(--rule);margin-top:2rem}
.issue-nav a{color:var(--muted);text-decoration:none}.issue-nav a:hover{color:var(--accent)}

/* Artykuł */
.article{padding-bottom:3rem}
.article__head{max-width:1200px;margin:0 auto;padding:2rem 1.25rem 1rem}
.article__head-in{max-width:760px;margin:0 auto;text-align:center}
.article__head-in h1{font-size:clamp(2rem,5vw,3.6rem);margin:.6rem 0 1rem;text-wrap:balance}
.article__hero{margin:0 auto 2rem;max-width:1100px}
.article__hero img{width:100%;max-height:70vh;object-fit:cover;border-radius:var(--radius)}
.article__hero figcaption,.fig figcaption,.embed figcaption{font-family:var(--font-ui);font-size:.8rem;color:var(--muted);margin-top:.5rem;text-align:left}
.byline--big{justify-content:center;font-size:.85rem;margin:1.25rem 0 0}
.byline__author{color:var(--fg);font-weight:600}
.byline__pos{opacity:.6}
.prose{max-width:700px;margin:1.5rem auto 0;padding:0 1.25rem;font-size:1.05em}
.prose>p{margin:0 0 1.35em}
.prose h2,.prose h3,.prose h4{margin:2em 0 .6em}
.prose h2{font-size:1.75em}.prose h3{font-size:1.35em}.prose h4{font-size:1.1em}
.prose a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}
.prose mark{background:color-mix(in srgb,var(--accent) 22%,transparent);color:inherit;padding:0 .15em}
.prose code{font-family:ui-monospace,Menlo,monospace;font-size:.9em;background:color-mix(in srgb,var(--fg) 7%,transparent);padding:.15em .4em;border-radius:4px}
.has-dropcap>p:first-of-type::first-letter{font-family:var(--font-heading);font-weight:var(--hw);font-size:4em;float:left;line-height:.78;padding:.12em .08em 0 0;color:var(--accent)}
.prose .lst{padding-left:1.4em;margin:0 0 1.35em}.prose .lst li{margin:.35em 0}
.lst--checklist{list-style:none;padding-left:0}.chk{display:inline-block;width:1em;height:1em;border:2px solid var(--accent);border-radius:3px;vertical-align:-.15em;margin-right:.5em}.chk--on{background:var(--accent)}
.q{margin:2.2em 0;padding:0 0 0 1.5em;border-left:4px solid var(--accent);font-size:1.25em;line-height:1.4;font-style:italic;font-family:var(--font-heading);font-weight:400;text-transform:none}
.q p{margin:0}.q cite{display:block;font-family:var(--font-ui);font-style:normal;font-size:.7em;color:var(--muted);margin-top:.6em;letter-spacing:.05em;text-transform:uppercase}
.q--center{text-align:center;border:0;padding:0;font-size:1.5em}
.fig{margin:2em 0}.fig img{width:100%;border-radius:var(--radius)}
.fig--border img{border:1px solid var(--rule)}
.fig--bg{background:var(--paper);padding:1.5rem;border-radius:var(--radius)}.fig--bg img{max-width:70%;margin:0 auto}
.fig--stretch{width:min(1100px,100vw - 2.5rem);margin-left:50%;transform:translateX(-50%)}
.delim{text-align:center;letter-spacing:1em;color:var(--accent);margin:2.5em 0;font-size:1.3em}
.embed{margin:2em 0}.embed__frame{position:relative;aspect-ratio:16/9;background:#000;border-radius:var(--radius);overflow:hidden}.embed__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.tbl{overflow-x:auto;margin:2em 0;font-family:var(--font-ui);font-size:.9em}.tbl table{border-collapse:collapse;width:100%}.tbl th,.tbl td{text-align:left;padding:.6em .8em;border-bottom:1px solid var(--rule)}.tbl th{font-weight:600;background:color-mix(in srgb,var(--fg) 5%,transparent)}
.article__foot{max-width:760px;margin:3rem auto 0;padding:0 1.25rem}
.share{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;font-family:var(--font-ui);font-size:.85rem;color:var(--muted);padding:1.25rem 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.share a,.share button{font:inherit;color:var(--fg);background:var(--paper);border:1px solid var(--rule);padding:.4em .9em;border-radius:99px;text-decoration:none;cursor:pointer}
.share a:hover,.share button:hover{border-color:var(--accent);color:var(--accent)}
.pager{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:2rem 0}
.pager__a{text-decoration:none;display:flex;flex-direction:column;gap:.25rem;padding:1.25rem;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);transition:border-color .2s}
.pager__a:hover{border-color:var(--accent)}
.pager__a small{font-family:var(--font-ui);color:var(--accent);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}
.pager__a strong{font-family:var(--font-heading);font-size:1.15rem;font-weight:var(--hw);text-transform:none;line-height:1.2}
.pager__a--next{text-align:right;align-items:flex-end}

/* Spis w szufladzie */
.toc-drawer{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.4);backdrop-filter:blur(3px)}
.toc-drawer__in{position:absolute;top:0;right:0;bottom:0;width:min(420px,92vw);background:var(--paper);color:var(--fg);overflow:auto;padding:1.25rem 1.5rem 2rem;box-shadow:-20px 0 60px rgba(0,0,0,.3);animation:slide .25s ease-out;font-family:var(--font-ui)}
@keyframes slide{from{transform:translateX(30px);opacity:0}to{transform:none;opacity:1}}
.toc-drawer header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;font-size:.9rem}
.toc-drawer header button{font-size:1.6rem;line-height:1;background:none;border:0;color:inherit;cursor:pointer}
.toc-drawer ol{list-style:none;padding:0;margin:0}
.toc-drawer li a{display:flex;gap:.9rem;padding:.75rem 0;border-top:1px solid var(--rule);text-decoration:none;align-items:flex-start}
.toc-drawer li .n{font-family:var(--font-heading);font-size:1.3rem;color:var(--muted);min-width:1.4em}
.toc-drawer li strong{display:block;font-weight:600;font-size:.95rem;line-height:1.3}.toc-drawer li small{color:var(--muted)}
.toc-drawer .is-current a{color:var(--accent)}
.toc-drawer__all{display:block;margin-top:1.5rem;font-size:.9rem}

/* Newsletter */
.subscribe{max-width:760px;margin:3rem auto 0;padding:2rem 1.5rem;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);text-align:center;font-family:var(--font-ui)}
.subscribe h3{font-size:1.4rem;margin-bottom:.4rem}.subscribe p{margin:0 0 1rem;color:var(--muted);font-size:.95rem}
.subscribe__form{display:flex;gap:.5rem;max-width:440px;margin:0 auto}
.subscribe__form input[type=email]{flex:1;font:inherit;padding:.75em 1em;border:1px solid var(--rule);border-radius:var(--radius);background:var(--bg);color:var(--fg)}
.subscribe__form button{font:600 .95rem var(--font-ui);background:var(--accent);color:#fff;border:0;padding:.75em 1.2em;border-radius:var(--radius);cursor:pointer}
.subscribe__ok{color:var(--accent);font-weight:600}

/* Stopka */
.foot{border-top:1px solid var(--rule);margin-top:4rem;font-family:var(--font-ui);font-size:.85rem;color:var(--muted)}
.foot__in{max-width:1200px;margin:0 auto;padding:2rem 1.25rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;align-items:center}
.foot__links{display:flex;gap:1rem}.foot__links a{color:inherit}
.foot__by a{color:inherit}

/* Druk */
.print{max-width:800px;margin:0 auto;padding:1rem 1.25rem}
.print__toolbar{position:sticky;top:0;background:var(--accent);color:#fff;font-family:var(--font-ui);font-size:.85rem;padding:.6rem 1rem;display:flex;gap:1rem;align-items:center;border-radius:var(--radius);margin-bottom:2rem}
.print__toolbar button{font:600 .85rem var(--font-ui);background:#fff;color:var(--accent);border:0;padding:.45em 1em;border-radius:4px;cursor:pointer;margin-left:auto}
.print__toolbar a{color:#fff}
.print__cover{max-width:480px;margin:0 auto 3rem}
.print__toc{padding:2rem 0;border-bottom:1px solid var(--rule)}
.print__toc h1{font-size:1.2rem;color:var(--muted)}.print__toc h2{font-size:2.4rem;margin:.3rem 0 1rem}.print__toc h3{font-size:1rem;margin:2rem 0 .5rem;text-transform:uppercase;letter-spacing:.1em}
.print__toc ol{padding-left:1.4em}.print__toc li{margin:.4em 0}.print__toc a{text-decoration:none}
.print__article{padding:3rem 0;border-bottom:1px solid var(--rule)}
.print__article h1{font-size:2.4rem;margin:.4rem 0 .8rem}
.print__article .prose{padding:0;max-width:none}
.print__end{text-align:center;padding:3rem 0;color:var(--muted);font-family:var(--font-ui)}
@media print{
  @page{margin:18mm 16mm}
  body{background:#fff;color:#000;font-size:11pt}
  .print__toolbar,.mast,.foot,.subscribe{display:none!important}
  .print__cover{page-break-after:always;max-width:none}
  .cover{box-shadow:none;aspect-ratio:auto;height:240mm;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .cv{box-shadow:none;border-radius:0;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .print__toc{page-break-after:always;border:0}
  .print__article{page-break-before:always;border:0}
  .print__article .prose{column-count:2;column-gap:8mm}
  .fig,.embed,.q,.tbl{break-inside:avoid}
  .embed{display:none}
  a{text-decoration:none;color:inherit}
  .fig--stretch{width:100%;margin-left:0;transform:none}
}

@media (max-width:820px){
  .hero-issue,.issue__top{grid-template-columns:1fr;gap:1.5rem}
  .hero-issue__cover,.issue__cover{max-width:300px;margin:0 auto}
  .art-card--big{flex-direction:column}
  .subscribe__form{flex-direction:column}
  .mast__issue{display:none}
  .pager{grid-template-columns:1fr}
  .pager__a--next{text-align:left;align-items:flex-start}
  .fig--stretch{width:100%;margin-left:0;transform:none}
  .print__article .prose{column-count:1}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
