:root{--bg:#171512;--panel:#211d18;--paper:#e8dcc2;--muted:#b8aa94;--accent:#a72b2b;--line:#504235;--text:#f1e8d8}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Georgia,"Times New Roman",serif;line-height:1.6}
.wrap{width:min(1120px,92%);margin:auto}
.masthead{padding:28px 0 22px;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at top,#3b2b21,transparent 65%)}
.kicker{text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;color:#d4b98e;text-align:center}
h1{font-size:clamp(2.5rem,8vw,5.5rem);line-height:1;text-align:center;margin:.4rem 0;color:var(--paper);font-weight:normal}
.tagline{text-align:center;color:var(--muted);margin:14px 0 0}
nav{border-bottom:1px solid var(--line);background:#100f0d}
.nav-inner{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;padding:10px 0}
nav a{padding:7px 11px;text-decoration:none;color:inherit}
a:focus-visible,input:focus-visible{outline:3px solid #e2b66b;outline-offset:3px}
a:hover{color:#e5b6a2}
main{padding:30px 0 60px}
.intro{padding:24px;border:1px solid var(--line);background:linear-gradient(135deg,#29231d,#1c1915);margin-bottom:30px}
.intro h2{font-size:clamp(1.5rem,4vw,2.3rem);font-weight:normal;margin:0 0 8px;color:var(--paper)}
.intro p{margin:0;color:#d1c4b0;max-width:75ch}
.toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-bottom:8px}
.toolbar h2{font-weight:normal;margin:0;font-size:1.8rem;color:var(--paper)}
.search-label{display:block;width:min(100%,420px)}
input[type=search]{background:#211d18;color:var(--text);border:1px solid #6b5946;padding:12px 14px;font:inherit;width:100%;border-radius:2px}
.search-status{font-size:.9rem;color:var(--muted);margin:8px 0 18px}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.card{border:1px solid var(--line);background:var(--panel);display:flex;flex-direction:column;min-width:0}
.art{min-height:135px;display:grid;place-items:center;background:linear-gradient(145deg,#574331,#211b16 70%);color:#e0c99f;font-size:2.7rem;border-bottom:1px solid var(--line)}
.card-body{padding:17px;display:flex;flex-direction:column;flex:1}
.category{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#d59a80}
.card h3{font-weight:normal;font-size:1.35rem;line-height:1.2;margin:8px 0}
.meta{font-size:.82rem;color:var(--muted);margin:0 0 10px}
.card p{color:#d3c8b7}
.read{margin-top:auto;color:#f0c4ae;text-underline-offset:4px}
.note{border-left:3px solid var(--accent);padding:12px 16px;margin-top:28px;color:#d4c8b7;background:#211d18}
[hidden]{display:none!important}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
footer{border-top:1px solid var(--line);padding:24px 0 36px;color:var(--muted);font-size:.9rem}
footer p{margin:5px 0}
@media(max-width:800px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.grid{grid-template-columns:1fr}.intro{padding:18px}.toolbar{align-items:stretch}.toolbar h2{font-size:1.6rem}.art{min-height:110px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ARTICLE PAGE STYLES */

.archive-article{margin:38px 0;padding:clamp(18px,4vw,42px);border:1px solid var(--line);background:#1d1915}
.archive-article h2{font-size:clamp(2rem,5vw,3.5rem);line-height:1.1;color:var(--paper);font-weight:normal;margin:.4rem 0 1rem}
.archive-article h3{font-size:clamp(1.35rem,3vw,1.8rem);font-weight:normal;color:var(--paper);margin:2rem 0 .7rem;border-bottom:1px solid var(--line);padding-bottom:.4rem}
.article-meta{color:#d59a80;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}
.article-hero{margin:0 0 1.5rem}
.article-hero img{display:block;width:100%;max-height:650px;object-fit:cover;object-position:center 55%;border:1px solid var(--line)}
.article-hero figcaption{font-size:.85rem;color:var(--muted);margin-top:.5rem}
.archive-article p{max-width:80ch;color:#e1d6c5}
.archive-article .article-lead{font-size:1.1rem;color:var(--paper);font-weight:bold}
.archive-article blockquote{margin:1.3rem 0;padding:1rem 1.25rem;border-left:3px solid var(--accent);background:#27211b;color:#e7d9c2}
.archive-article .article-author{text-align:right;font-weight:bold;color:var(--paper)}
.article-disclaimer{font-size:.9rem;border:1px solid var(--line);padding:12px 15px;color:var(--muted)!important}


/* Принудительно растягиваем иллюстрацию на всю ширину карточки */
.reader-story .story-full .story-image {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 20px 0 !important;
  object-fit: contain !important;
  box-sizing: border-box !important;
}

/* Поиск по историям */
.story-search {
  display: flex;
  gap: 10px;
  margin: 18px 0 22px;
}

.story-search input {
  box-sizing: border-box;
  flex: 1;
  min-width: 0;
  padding: 14px 16px;
  color: inherit;
  background: #171310;
  border: 1px solid var(--line, #504235);
  font: inherit;
}

.story-search input:focus {
  outline: 2px solid #E8D2AE;
  outline-offset: 2px;
}

.story-search button {
  padding: 10px 14px;
  color: #f0d6ac;
  background: #211d18;
  border: 1px solid var(--line, #504235);
  cursor: pointer;
  font: inherit;
}

@media (max-width: 480px) {
  .story-search {
    flex-wrap: wrap;
  }

  .story-search button {
    width: 100%;
  }
}