/* Reading is a document, with the same paper and ink as the selected Sylva theme. */
.modal.codex-reading-modal{width:min(960px,calc(100vw - 40px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 40px);padding:0;overflow:auto;overscroll-behavior:contain;background:var(--surface-strong);color:var(--text)}
.codex-reading{font-family:var(--theme-ui,Inter,system-ui,sans-serif);font-size:15px;line-height:1.65;overflow-wrap:anywhere}
.codex-read-top{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 28px;border-bottom:1px solid var(--line);background:var(--surface-strong)}
.codex-read-top>span{color:var(--muted);font-size:10px;letter-spacing:.16em}
.codex-read-top>div{display:flex;gap:8px;flex-shrink:0}
.codex-reading button{font-family:inherit;cursor:pointer;touch-action:manipulation}
.codex-read-top button,.codex-read-section>.soft-btn{font-size:13px;min-height:42px;padding:9px 16px}
.codex-read-body{max-width:820px;margin:auto;padding:40px 38px 50px}
.codex-read-heading{display:flex;align-items:flex-start;gap:20px;margin-bottom:26px}
.codex-read-heading>div:last-child{min-width:0;flex:1}
.codex-read-symbol{width:56px;height:64px;display:grid;place-items:center;flex:none;color:var(--entry-color);border:1px solid var(--line);border-radius:12px;background:var(--accent-soft)}
.codex-read-symbol svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.codex-reading .codex-read-kind{margin:0 0 7px;font-size:11px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}
.codex-reading h2{margin:0;font:500 clamp(28px,3.5vw,42px)/1.15 var(--theme-heading,Georgia,serif);color:var(--text);text-wrap:balance}
.codex-read-categories{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:14px;color:var(--muted);font-size:12px}
.codex-read-categories>span{display:inline-flex;align-items:center;gap:5px}
.codex-read-categories svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6}
.codex-read-aliases{margin:0 0 30px;padding-left:20px;border-left:2px solid var(--line)}
.codex-read-aliases dt,.codex-read-field dt{font-size:12px;font-weight:600;color:var(--muted);margin-bottom:7px}
.codex-read-aliases dd{margin:0;font-size:14px;white-space:pre-wrap}
.codex-read-section{margin-top:32px;padding-top:28px;border-top:1px solid var(--line)}
.codex-reading h3{font:600 17px/1.4 var(--theme-ui,Inter,system-ui,sans-serif);margin:0 0 20px;color:var(--text)}
.codex-read-description{border:0;padding:0}
.codex-reading .codex-read-prose{font-size:16px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text)}
.codex-read-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px;margin:0}
.codex-read-field{min-width:0}
.codex-read-field.wide{grid-column:1/-1}
.codex-read-field dd{margin:0;white-space:pre-wrap;font-size:16px;line-height:1.75}
.codex-reading .codex-read-link{display:inline;background:none;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:2px 0;color:var(--accent);font:inherit;text-align:left;white-space:normal;overflow-wrap:anywhere}
.codex-read-link:hover{border-bottom-color:var(--accent)}
.codex-reading button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.codex-read-count{font-size:12px;font-weight:400;color:var(--muted);margin-left:5px}
.codex-read-relations{display:grid;gap:20px;margin-bottom:22px}
.codex-read-relations article{border-left:2px solid var(--line);padding-left:20px}
.codex-read-relations h4{font-size:17px;margin:0 0 4px}
.codex-read-relations p{margin:7px 0 0}
.codex-reading .codex-read-muted{font-size:13px;line-height:1.65;color:var(--muted)}
.codex-read-context{margin-top:38px}
.codex-reading .codex-appearances,.codex-reading .codex-context{margin-top:28px;padding-top:28px}
.codex-reading :is(.codex-appearance-head,.codex-context-title) small{font-size:10px}
.codex-reading :is(.codex-appearance-head>span,.codex-appearance-empty){font-size:12px;line-height:1.6}
.codex-reading :is(.codex-appearance-range b,.codex-appearance-jump b,.codex-context-links b,.codex-timeline-links b,.codex-context-title b){font-size:13px;white-space:normal}
.codex-reading :is(.codex-appearance-range small,.codex-appearance-jump small,.codex-context-links small,.codex-timeline-links small){font-size:11px;white-space:normal}
.codex-reading .codex-appearance-jump em{font-size:12px;white-space:normal;line-height:1.65}
.codex-reading .codex-appearance-list{max-height:420px}
.codex-reading .codex-co-list button{font-size:13px;min-height:40px}
.codex-reading :is(.codex-context-links,.codex-timeline-links) button{white-space:normal;min-height:48px}
@media(max-width:900px){.modal.codex-reading-modal{width:calc(100vw - 28px);max-height:calc(100dvh - 28px)}.codex-read-body{padding:28px 26px 38px}.codex-read-top{padding:12px 24px}}
@media(max-width:650px){.codex-read-fields{grid-template-columns:minmax(0,1fr)}.codex-read-body{padding:26px 22px}.codex-read-top{padding:12px 18px;gap:8px}.codex-read-heading{gap:14px}.codex-read-symbol{width:44px;height:52px}.codex-reading .codex-context-grid{grid-template-columns:minmax(0,1fr)}}
@media(pointer:coarse){.codex-read-top button,.codex-read-section>.soft-btn{min-height:44px}.codex-reading .codex-read-link{padding-block:6px}.codex-reading .codex-appearance-jump{min-height:52px}}
