/* Страницы документов: те же цвета и шрифт, что у приложения */
@font-face { font-family: 'Nunito'; font-style: normal; font-weight: 500 900; font-display: swap; src: url(../fonts/nunito-cyrillic.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Nunito'; font-style: normal; font-weight: 500 900; font-display: swap; src: url(../fonts/nunito-latin.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
:root { color-scheme: light; --ink: #14161a; --bg: #f9f6f2; --card: #ffffff; --text: #14161a; --muted: #5f5c6b; --accent-link: #b4471f; --line: #ebe4e0; --tint: #fdece3; --warn: #fff3cd; --warn-line: #e6c75a; --font: 'Nunito', ui-rounded, 'SF Pro Rounded', system-ui, sans-serif; }
* { box-sizing: border-box; }
html { background: var(--bg); }
body { margin: 0; color: var(--text); font: 500 17px/1.55 var(--font); background: var(--bg); padding: 0 max(16px, env(safe-area-inset-right)) 40px max(16px, env(safe-area-inset-left)); }
.doc { max-width: 760px; margin: 0 auto; padding-top: max(16px, env(safe-area-inset-top)); }
.back { display: inline-block; margin: 8px 0 4px; color: var(--accent-link); font-weight: 700; text-decoration: none; }
.back:hover, .back:focus { text-decoration: underline; }
h1 { font-size: 1.7rem; line-height: 1.2; margin: 12px 0 6px; text-wrap: balance; }
h2 { font-size: 1.2rem; margin: 28px 0 6px; text-wrap: balance; }
h3 { font-size: 1.02rem; margin: 18px 0 4px; }
p, li { overflow-wrap: anywhere; }
p { margin: 8px 0; }
ul, ol { padding-left: 1.3em; margin: 8px 0; }
li { margin: 3px 0; }
a { color: var(--accent-link); }
.meta { color: var(--muted); font-size: 0.92rem; margin: 0 0 12px; }
.draft { background: var(--warn); border: 2px solid var(--warn-line); border-radius: 16px; padding: 12px 14px; margin: 14px 0; font-size: 0.95rem; }
.ph { background: var(--warn); border-radius: 6px; padding: 0 4px; }
.card { background: var(--card); border: 2px solid var(--line); border-radius: 18px; padding: 4px 16px 12px; margin: 14px 0; }
.card h2:first-child, .card h3:first-child { margin-top: 12px; }
.table-wrap { overflow-x: auto; margin: 10px 0; border-radius: 14px; border: 2px solid var(--line); background: var(--card); }
table { border-collapse: collapse; width: 100%; min-width: 560px; font-size: 0.92rem; }
th, td { text-align: left; vertical-align: top; padding: 8px 10px; border-bottom: 1px solid var(--line); }
th { background: var(--tint); }
tr:last-child td { border-bottom: 0; }
.doclist { list-style: none; padding: 0; display: grid; gap: 10px; }
.doclist a { display: block; padding: 12px 16px; background: var(--card); border: 2px solid var(--line); border-radius: 16px; font-weight: 700; text-decoration: none; }
.doclist a:hover, .doclist a:focus { border-color: var(--ink); }
.doclist small { display: block; color: var(--muted); font-weight: 500; }
.kids h2 { font-size: 1.35rem; }
.kids li { font-size: 1.12rem; margin: 8px 0; }
dl.req { display: grid; grid-template-columns: max-content 1fr; gap: 4px 14px; margin: 8px 0; }
dl.req dt { color: var(--muted); }
dl.req dd { margin: 0; }
@media (max-width: 520px) { dl.req { grid-template-columns: 1fr; } dl.req dd { margin-bottom: 6px; } }
.foot { margin-top: 28px; padding-top: 12px; border-top: 1px solid var(--line); color: var(--muted); font-size: 0.9rem; }
.foot a { margin-right: 12px; white-space: nowrap; }
