/* Пуарио — правовой мини-сайт. Нейтральный читаемый стиль.
   Позже перекрашивается в бренд «Тёплое стекло» (Fraunces + Mulish). */
:root {
  --bg: #f7f8f5;
  --card: #ffffff;
  --ink: #1f2a24;
  --muted: #5b6761;
  --line: #e3e7e1;
  --accent: #2f7a4f;
  --accent-ink: #1c4d31;
  --ph-bg: #fff3bf;
  --ph-ink: #6b5200;
  box-sizing: border-box;
  padding-top: env(safe-area-inset-top, 0px);
  padding-bottom: env(safe-area-inset-bottom, 0px);
}
* { box-sizing: border-box; }
html { scroll-padding-top: 1rem; -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--ink);
  font: 16px/1.65 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
.wrap { max-width: 760px; margin: 0 auto; padding: clamp(20px, 4vw, 40px); }
header.site {
  border-bottom: 1px solid var(--line);
  background: var(--card);
}
header.site .wrap { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding-top: 18px; padding-bottom: 18px; }
.brand { display: flex; align-items: center; gap: 10px; font-weight: 700; font-size: 1.15rem; color: var(--ink); text-decoration: none; }
.brand .leaf { font-size: 1.3rem; }
nav.site a { color: var(--muted); text-decoration: none; margin-left: 18px; font-size: .95rem; white-space: nowrap; }
nav.site a:hover { color: var(--accent); }
main { background: var(--card); border: 1px solid var(--line); border-radius: 14px; margin: clamp(16px,3vw,28px) auto; }
h1 { font-size: clamp(1.5rem, 3.5vw, 2rem); line-height: 1.25; margin: 0 0 .3em; }
h2 { font-size: 1.2rem; margin: 1.8em 0 .5em; color: var(--accent-ink); }
h3 { font-size: 1.02rem; margin: 1.3em 0 .4em; }
p, li { color: var(--ink); }
a { color: var(--accent); }
.lead { color: var(--muted); font-size: 1.02rem; }
.meta { color: var(--muted); font-size: .9rem; margin-top: .2em; }
ul, ol { padding-left: 1.3em; }
li { margin: .3em 0; }
hr { border: none; border-top: 1px solid var(--line); margin: 2em 0; }
code { background: #eef1ec; padding: .1em .35em; border-radius: 5px; font-size: .9em; }
.callout { border-left: 3px solid var(--accent); background: #f0f6f1; padding: 12px 16px; border-radius: 0 10px 10px 0; margin: 1.2em 0; }
.callout.warn { border-left-color: #b4791f; background: #fbf4e7; }
footer.site { color: var(--muted); font-size: .88rem; text-align: center; padding: 24px 16px 40px; }
footer.site a { color: var(--muted); }
/* Подсветка незаполненных плейсхолдеров — чтобы ни один не ушёл в прод */
.ph { background: var(--ph-bg); color: var(--ph-ink); padding: 0 .3em; border-radius: 4px; font-weight: 600; white-space: nowrap; }
.btn { display: inline-block; background: var(--accent); color: #fff; text-decoration: none; padding: 12px 20px; border-radius: 10px; font-weight: 600; margin: .4em 0; }
.btn:hover { background: var(--accent-ink); }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #11170f; --card: #18200f00; --card: #1a2217; --ink: #e8ede5; --muted: #9aa89c;
    --line: #2a352a; --accent: #6fca8f; --accent-ink: #a9e3bf; --ph-bg: #4a3d12; --ph-ink: #ffdf8a;
  }
  code { background: #243021; }
  .callout { background: #18271c; }
  .callout.warn { background: #2a2314; }
}
