/* Оформление страниц сайта (экзамен, грамматика, слова). Страницы собирает seo/build.mjs, цвета — как в приложении. */
:root{
  --bg:#EEF2EC; --surface:#FFFFFF; --sunk:#E4EAE2; --ink:#18231D; --muted:#5A675F; --line:#D3DBD0;
  --pine:#2C5A46; --pine-soft:#DCE8E0; --amber:#AD620C; --amber-soft:#F5E3C8;
  --ok:#2C7A47; --bad:#B03A28;
  --f-display:"Unbounded","Manrope",system-ui,sans-serif;
  --f-body:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-lt:"Alegreya",Georgia,"Times New Roman",serif;
  --r:14px; --shadow:0 1px 2px rgba(24,35,29,.06),0 4px 14px rgba(24,35,29,.06);
  color-scheme:light dark;
}
@media (prefers-color-scheme:dark){:root{
  --bg:#0F1512; --surface:#172019; --sunk:#1D2820; --ink:#E5ECE6; --muted:#9BA9A0; --line:#2A362F;
  --pine:#86C0A2; --pine-soft:#1E3128; --amber:#E79B45; --amber-soft:#3A2913; --ok:#72C891; --bad:#EE8370; --shadow:0 1px 2px rgba(0,0,0,.3);
}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
.in{max-width:760px;margin:0 auto;padding-inline:16px}
a{color:var(--pine);font-weight:600}
h1{font-family:var(--f-display);font-weight:700;font-size:1.6rem;line-height:1.2;margin:8px 0 12px}
h2{font-family:var(--f-display);font-weight:500;font-size:1.12rem;line-height:1.3;margin:28px 0 12px}
.card h2{margin-top:0}
h3{font-size:1rem;margin:18px 0 6px}
p{margin:0 0 12px}
.lead{font-size:1.05rem;color:var(--muted)}
.muted{color:var(--muted);font-weight:400}
.lt{font-family:var(--f-lt);font-weight:500;font-size:1.06em}
.g,.gi{color:var(--muted);font-size:.9em}
.top{position:sticky;top:0;z-index:5;background:var(--bg);border-bottom:1px solid var(--line)}
.top .in{display:flex;align-items:center;gap:16px;min-height:60px;flex-wrap:wrap;padding-block:8px}
.logo{font-family:var(--f-display);font-weight:700;font-size:1.15rem;color:var(--pine);text-decoration:none;white-space:nowrap}
.logo i{font-style:normal;color:var(--amber)}
.menu{display:flex;gap:14px;flex:1;flex-wrap:wrap}
.menu a{font-size:.92rem;text-decoration:none;color:var(--ink);font-weight:600}
.menu a:hover{color:var(--pine)}
@media (max-width:560px){.menu{order:3;flex-basis:100%;gap:16px}.top .btn{margin-left:auto}}
main{padding-block:16px 40px}
.crumbs{font-size:.85rem;color:var(--muted);margin-top:8px}
.crumbs a{font-weight:500;color:var(--muted)}
.card{background:var(--surface);border-radius:var(--r);padding:18px;box-shadow:var(--shadow);margin:16px 0;overflow-wrap:break-word}
.card.flat{box-shadow:none;border:1px solid var(--line);background:transparent}
.card.tip{background:var(--amber-soft)}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:12px;padding:11px 18px;font-weight:700;background:var(--pine);color:var(--surface);text-decoration:none;min-height:44px}
.btn.amber{background:var(--amber);color:#fff}
.btn.sm{min-height:36px;padding:7px 12px;font-size:.88rem;border-radius:10px}
.cta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0}
.cta .muted{font-size:.9rem}
.links-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.links-list a{display:block;background:var(--surface);border-radius:var(--r);padding:14px 16px;box-shadow:var(--shadow);text-decoration:none;color:var(--ink)}
.links-list a:hover{outline:1.5px solid var(--pine)}
.links-list b{display:block;color:var(--pine)}
.links-list span{display:block;font-weight:400;color:var(--muted);font-size:.92rem}
.text{font-family:var(--f-lt);font-size:1.12rem;line-height:1.55;white-space:pre-line;background:var(--sunk);border-radius:12px;padding:14px;margin:12px 0}
.dlg p{font-family:var(--f-lt);font-size:1.08rem;margin:4px 0}
details{margin:12px 0}
summary{cursor:pointer;font-weight:700;color:var(--pine)}
details[open] summary{margin-bottom:8px}
ol,ul{padding-left:22px;margin:0 0 12px}
li{margin:4px 0}
.qa li{margin-bottom:12px}.qa p{margin:0}
.model{color:var(--muted)}
.ex li{margin-bottom:10px}
.errs{list-style:none;padding:0}.errs li{padding-bottom:10px;border-bottom:1px solid var(--line)}
.wrong{color:var(--bad);text-decoration:line-through}.right{color:var(--ok)}
.tbl-wrap{overflow-x:auto}
table{border-collapse:collapse;width:100%;font-size:.94rem}
table.tb td,table.tb th{border:1px solid var(--line);padding:6px 8px;text-align:left;vertical-align:top}
.tb .g{display:block;font-size:.78rem;line-height:1.25;margin-top:1px}
table.exam th,table.exam td,table.words th,table.words td{padding:8px 6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
table.exam th,table.words th{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.small{font-size:.9rem}
footer{border-top:1px solid var(--line);padding-block:24px 40px;font-size:.92rem}
footer .links{display:flex;flex-wrap:wrap;gap:8px 16px}
