:root { color-scheme: light; font: 16px/1.5 system-ui, sans-serif; --ink:#172033; --muted:#667085; --line:#d0d5dd; --paper:#fff; --side:#f6f7f9; --accent:#335cff; --jurjevi-reader-font-size:1rem; }
html[data-reader-font-level="0"] { --jurjevi-reader-font-size:1rem; }
html[data-reader-font-level="1"] { --jurjevi-reader-font-size:1.125rem; }
html[data-reader-font-level="2"] { --jurjevi-reader-font-size:1.25rem; }
html[data-reader-font-level="3"] { --jurjevi-reader-font-size:1.375rem; }
html[data-reader-font-level="4"] { --jurjevi-reader-font-size:1.5rem; }
html[data-reader-font-level="5"] { --jurjevi-reader-font-size:1.75rem; }
* { box-sizing: border-box; }
html,body { width:100%; max-width:100%; }
body { margin:0; min-width:0; color:var(--ink); background:var(--paper); }
header { height:60px; max-width:100%; display:flex; align-items:center; justify-content:space-between; padding:0 20px; border-bottom:1px solid var(--line); }
header > * { min-width:0; }
header span { color:var(--muted); margin-left:12px; font-size:.85rem; }
button { border:1px solid var(--line); background:white; border-radius:6px; padding:7px 11px; cursor:pointer; }
button:disabled { opacity:.45; cursor:not-allowed; }
.actions,.editor-actions { min-width:0; display:flex; gap:8px; }
.reader-font-control { min-width:0; display:flex; align-items:center; gap:6px; }
.reader-font-control label { color:var(--muted); font-size:.78rem; white-space:nowrap; }
.reader-font-control select { width:8.75rem; max-width:100%; min-height:34px; border:1px solid var(--line); border-radius:6px; background:var(--paper); color:var(--ink); font:inherit; padding:5px 7px; }
button:focus-visible,.reader-font-control select:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
main { display:grid; grid-template-columns:310px minmax(0,1fr); min-height:calc(100vh - 60px); }
nav { min-width:0; max-width:100%; height:calc(100vh - 60px); position:sticky; top:0; align-self:start; background:var(--side); border-right:1px solid var(--line); padding:18px; overflow:auto; }
nav h2 { font-size:.8rem; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); margin:18px 0 8px; }
nav .toc-link { color:var(--ink); display:block; width:100%; max-width:100%; padding:4px 6px 4px 9px; border-left:3px solid transparent; border-radius:0 5px 5px 0; text-decoration:none; overflow-wrap:anywhere; }
nav .toc-link:hover { color:var(--accent); background:#eef2ff; }
nav .toc-link:focus-visible { outline:2px solid var(--accent); outline-offset:1px; }
nav .toc-link[aria-current="page"],nav .toc-link[aria-current="page"]:visited { color:var(--ink); background:#e7ecff; border-left-color:var(--accent); font-weight:700; }
nav .toc-link[aria-current="page"]:hover { background:#dce4ff; }
.toc-lock { font-weight:400; }
main > section { min-width:0; padding:28px clamp(20px,5vw,70px); max-width:1100px; width:100%; }
.document-pagination { max-width:78ch; display:flex; align-items:center; justify-content:flex-end; gap:10px; margin:0 0 18px; }
#document-position { min-width:4.5rem; margin:0; color:var(--muted); font-size:.85rem; text-align:center; }
#meta { border-bottom:1px solid var(--line); padding-bottom:14px; margin-bottom:22px; font-size:var(--jurjevi-reader-font-size); line-height:1.5; }
#meta h1 { margin:0 0 8px; }
#meta,#meta span { min-width:0; max-width:100%; overflow-wrap:anywhere; word-break:normal; }
.badge { display:inline-block; border:1px solid var(--line); border-radius:999px; padding:2px 8px; margin-right:6px; font-size:.78rem; }
.private_draft { background:#fff1f3; border-color:#fda4af; }
.unindexed { color:#b54708; }
article { width:100%; min-width:0; max-width:78ch; font-size:var(--jurjevi-reader-font-size); line-height:1.5; overflow-wrap:anywhere; word-break:normal; }
article a,article code { overflow-wrap:anywhere; word-break:normal; }
article pre,#diff { max-width:100%; overflow-x:auto; white-space:pre-wrap; overflow-wrap:anywhere; word-break:normal; padding:14px; background:#101828; color:#f2f4f7; border-radius:7px; }
article table { display:block; width:100%; max-width:100%; overflow-x:auto; border-collapse:collapse; }
article th,article td { border:1px solid var(--line); padding:6px 8px; text-align:left; overflow-wrap:anywhere; word-break:normal; }
article img,article svg,article video,article canvas { max-width:100%; height:auto; }
article iframe,article embed,article object { width:100%; max-width:100%; }
textarea { width:100%; max-width:100%; min-height:58vh; font:14px/1.45 ui-monospace,monospace; padding:14px; border:1px solid var(--line); border-radius:7px; }
.editor-actions { margin:12px 0; }
#aux { min-width:0; max-width:100%; white-space:pre-wrap; overflow-wrap:anywhere; word-break:normal; background:var(--side); padding:14px; border:1px solid var(--line); border-radius:7px; }
@media (max-width:760px) {
  header { height:auto; min-height:60px; flex-wrap:wrap; gap:8px; padding:10px 12px; }
  header strong,header span { overflow-wrap:anywhere; word-break:normal; }
  header span { margin-left:8px; }
  .actions { flex-wrap:wrap; justify-content:flex-end; }
  main { width:100%; max-width:100%; grid-template-columns:minmax(0,1fr); }
  nav { width:100%; height:auto; position:static; border-right:0; border-bottom:1px solid var(--line); max-height:35vh; }
}
