/* ============ КОНТЕНТ: сторінки, статті, списки записів, пошук, 404 ============ */

/* Текстова колонка: читабельна ширина замість повних 1200px */
.container--narrow{max-width:760px}

/* ---- Стаття / сторінка ---- */
.entry__head{margin-bottom:var(--sp-5)}
.entry__title{margin:.2em 0 var(--sp-3)}
.entry__cover{margin:0 0 var(--sp-6);border-radius:var(--r-md);overflow:hidden}
.entry__cover img{display:block;width:100%}
.entry__cover figcaption{font-size:.82rem;color:var(--muted);padding:var(--sp-2) var(--sp-1) 0}

/* ---- Мета під заголовком ---- */
.postmeta{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;font-size:.85rem;color:var(--muted)}
.postmeta__date{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.78rem}

/* ---- Проза: те, що редактор наливає через the_content() ---- */
.prose{font-size:1.05rem}
.prose > *:first-child{margin-top:0}
.prose h2{margin:1.6em 0 .5em;font-size:clamp(1.35rem,1.1rem+1vw,1.8rem)}
.prose h3{margin:1.4em 0 .4em;font-size:1.15rem}
.prose ul,.prose ol{margin:0 0 1rem;padding-left:1.4em}
.prose li{margin-bottom:.35em}
.prose img{border-radius:var(--r-md)}
.prose figure{margin:var(--sp-5) 0}
.prose figcaption{font-size:.82rem;color:var(--muted);padding-top:var(--sp-2)}
.prose blockquote{margin:var(--sp-5) 0;padding:var(--sp-3) var(--sp-5);border-left:3px solid var(--accent);
                  background:var(--surface);border-radius:0 var(--r-sm) var(--r-sm) 0;color:var(--muted)}
.prose blockquote p:last-child{margin-bottom:0}
.prose hr{border:0;border-top:1.5px solid var(--line);margin:var(--sp-6) 0}
.prose code{font-family:var(--font-mono);font-size:.86em;background:var(--surface-2);
            padding:var(--sp-05) var(--sp-15);border-radius:6px}
.prose pre{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);
           padding:var(--sp-4);overflow-x:auto}
.prose pre code{background:none;padding:0}
/* Таблиця не має розпирати сторінку — скролиться всередині себе */
.prose table{width:100%;border-collapse:collapse;margin:0 0 1rem}
.prose th,.prose td{border:1px solid var(--line);padding:var(--sp-2) var(--sp-3);text-align:left}
.prose th{background:var(--surface-2)}
.prose .wp-block-table,.prose .wp-block-embed{overflow-x:auto}

/* ---- Під статтею: місця поруч і сусідні матеріали ---- */
.entry__related{margin-top:var(--sp-8)}
.entry__related h2{margin-bottom:var(--sp-4)}
.entry__nav{display:flex;gap:var(--sp-4);justify-content:space-between;flex-wrap:wrap;
            margin-top:var(--sp-7);padding-top:var(--sp-5);border-top:1.5px solid var(--line);font-size:.92rem}
.entry__nav-next{margin-left:auto;text-align:right}

/* ---- Список записів (блог, архіви, пошук) ----
   Вужче за контейнер: рядок тексту на всі 1200px не читається. */
.postlist{display:grid;gap:var(--sp-4);max-width:860px}
.postcard{display:grid;grid-template-columns:200px 1fr;gap:var(--sp-4);
          background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);
          overflow:hidden;transition:.15s}
.postcard:hover{box-shadow:var(--shadow-1);border-color:var(--brand)}
.postcard__media{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--surface-2)}
.postcard__media img{width:100%;height:100%;object-fit:cover;display:block}
.postcard__media--empty{display:grid;place-items:center;background:var(--brand-soft)}
.postcard__media--empty .pin{opacity:.35}
.postcard__body{padding:var(--sp-4) var(--sp-4) var(--sp-4) 0;display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}
.postcard__title{margin:0;font-size:1.1rem}
.postcard__title a{color:var(--text)}
.postcard__title a:hover{color:var(--link);text-decoration:none}
.postcard__excerpt{margin:0;font-size:.92rem}

/* ---- Пошук окремим рядком (пошук по сайту, 404) ----
   Самодостатній: home.css на цих сторінках не підключається. */
.searchbar--inline{display:flex;gap:var(--sp-2);flex-wrap:wrap;align-items:center;
                   max-width:520px;margin-top:var(--sp-4);background:var(--surface);
                   padding:var(--sp-2);border-radius:var(--r-md);box-shadow:var(--shadow-1)}
.searchbar--inline .field{flex:1 1 200px;border:0;min-width:0}

/* ---- 404 ---- */
.notfound{text-align:center;padding:var(--sp-8) var(--sp-4);max-width:560px;margin-inline:auto}
.notfound .pin{opacity:.4}
.notfound__code{font-size:.9rem;letter-spacing:.3em;color:var(--muted);margin:var(--sp-3) 0 0}
.notfound .searchbar--inline{margin-inline:auto}

/* ---- Опис під заголовком архіву ---- */
.catalog__intro{max-width:70ch;margin-top:var(--sp-3)}
.catalog__intro p:last-child{margin-bottom:0}

/* ---- Адаптив ---- */
@media(max-width:640px){
  .postcard{grid-template-columns:1fr}
  .postcard__media{aspect-ratio:16/9}
  .postcard__body{padding:0 var(--sp-4) var(--sp-4)}
  .entry__nav-next{margin-left:0;text-align:left}
}

/* ---- Вхід · Реєстрація · Пароль (FR-601) ---- */
.auth{max-width:26rem;margin-inline:auto}
.auth__head{text-align:center;margin-bottom:var(--sp-5)}
.auth__head h1{font-size:clamp(1.6rem,1.2rem+1.6vw,2.1rem);margin:.2em 0 var(--sp-2)}
.auth__head .eyebrow{justify-content:center}
.auth__form{display:block}
.auth__form .field-row{margin-bottom:var(--sp-4)}
.auth__form .switchrow{margin-bottom:var(--sp-4)}

.auth__msg{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-sm);font-size:.92rem;margin-bottom:var(--sp-4)}
.auth__msg--error{background:rgba(178,58,58,.1);border:1px solid var(--danger);color:var(--text)}
.auth__msg--ok{background:rgba(46,125,91,.1);border:1px solid var(--success);color:var(--text)}

/* Переходи між формами — рівнозначні, тому в рядок, а не «головна + дрібні» */
.auth__links{display:flex;gap:var(--sp-4);flex-wrap:wrap;justify-content:center;
             margin-top:var(--sp-5);font-size:.9rem}
