:root{--bg: #fbfaf7;--surface: #ffffff;--text: #1d1b18;--muted: #6f6a62;--line: #e4e0d8;--accent: #2f5d8c;--accent-soft: #e3ecf6;--lit: #fff0b3;--heading: #5a4632;--wj: #a12a2a;--shadow: 0 8px 30px rgba(0, 0, 0, .12);--serif: "Gentium Book Plus", "Gentium Plus", Georgia, "Times New Roman", serif;--hebrew: "Noto Serif Hebrew", "SBL Hebrew", "Ezra SIL", "Times New Roman", serif;--ui: Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--text-size: 1.15rem;--panel-width: min(440px, 38vw)}@media (prefers-color-scheme: dark){:root{--bg: #161514;--surface: #1f1e1c;--text: #e9e5dd;--muted: #9b958b;--line: #34312d;--accent: #8fb6e0;--accent-soft: #23303d;--lit: #5a4a14;--heading: #d4b896;--wj: #e38b8b;--shadow: 0 8px 30px rgba(0, 0, 0, .5)}}:root{color-scheme:light dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--ui);-webkit-text-size-adjust:100%}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;padding:0}button:disabled{opacity:.4;cursor:default}input,select{font:inherit;color:inherit}.app{height:100%;display:flex;flex-direction:column}.main{flex:1;min-height:0;display:flex;position:relative}.topbar{background:var(--surface);border-bottom:1px solid var(--line);padding:8px max(12px,env(safe-area-inset-left)) 6px;display:flex;flex-direction:column;gap:6px;padding-top:max(8px,env(safe-area-inset-top))}.topbar-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.location{font-weight:600;padding:8px 10px;border-radius:8px;background:var(--accent-soft);white-space:nowrap}.go{flex:1;min-width:180px}.go input,.search-inline input{width:100%;padding:9px 12px;border-radius:8px;border:1px solid var(--line);background:var(--bg)}.mode{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.mode button{padding:7px 12px;font-size:.9rem}.mode button.on{background:var(--accent);color:var(--surface)}.versions{gap:6px}.version-chip{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--line);border-radius:999px;padding:2px 6px 2px 10px;background:var(--bg)}.version-chip select{border:none;background:transparent;padding:4px 2px;font-size:.9rem;font-weight:500}.version-chip select option{background:var(--surface);color:var(--text)}.add-version{padding:5px 10px;border-radius:999px;border:1px dashed var(--line);font-size:.9rem;color:var(--accent)}.icon{width:32px;height:32px;border-radius:8px;color:var(--muted)}.icon:hover{background:var(--accent-soft)}.reader{flex:1;min-width:0;overflow-y:auto;overflow-anchor:none;-webkit-overflow-scrolling:touch}.reader-content{max-width:42rem;margin:0 auto;padding:8px 20px 40vh}.reader-content.is-parallel{max-width:none;padding:8px 16px 40vh}.sentinel{height:1px}.chapter{padding-bottom:2rem}.book-title{font-family:var(--serif);font-size:2rem;text-align:center;margin:2rem 0 .5rem;font-weight:400}.chapter-title{font-family:var(--ui);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:center;margin:1.5rem 0 1rem;font-weight:600}.text{font-family:var(--serif);font-size:var(--text-size);line-height:1.7}.text p{margin:0 0 .8em}.text p.q1{margin:0 0 0 1.5em;text-indent:-1em;padding-left:1em}.text p.q2{margin:0 0 0 3em;text-indent:-1em;padding-left:1em}.text p.li1{margin:0 0 .2em 1.5em}.text p.li2{margin:0 0 .2em 3em}.text p.pc{text-align:center;font-variant:small-caps;letter-spacing:.05em}.text p.d{font-style:italic;color:var(--muted)}.text p.b{height:.6em}.text p.compact{margin:0 0 .25em}.text .heading{font-family:var(--ui);color:var(--heading);margin:1.3em 0 .5em;font-size:1rem;font-weight:600}.text .heading.s2,.text .heading.sp{font-size:.92rem;font-style:italic;font-weight:500}.text .heading.ms{text-align:center;font-size:1.1rem;letter-spacing:.1em}.text .heading.mr{text-align:center;font-weight:400;color:var(--muted);margin-top:0}.text .heading.qa{font-family:var(--hebrew);font-size:1.1rem}.text .heading.compact{margin:.2em 0 .3em;font-size:.85rem}.add{font-style:italic}.nd{font-variant:small-caps}.wj{color:var(--wj)}.w{cursor:pointer;border-radius:3px;transition:background .15s}.w:hover{background:var(--accent-soft)}.w.lit{background:var(--lit)}.w.ketiv{color:var(--muted);font-size:.8em}.vn{font-family:var(--ui);font-size:.68em;font-weight:600;color:var(--accent);vertical-align:super;padding:0 3px 0 1px;line-height:1;scroll-margin-top:12px}.fn{font-family:var(--ui);font-size:.65em;color:var(--accent);vertical-align:super;padding:0 1px;font-style:italic}.original.heb{font-family:var(--hebrew);font-size:calc(var(--text-size) * 1.3);line-height:2}.original.grc{font-family:var(--serif);font-size:calc(var(--text-size) * 1.05)}.original .vn{font-size:.55em}.pgrid{display:grid;column-gap:18px;row-gap:0;align-items:start}.pgrid>*{padding:6px 0;border-top:1px solid var(--line)}.prow{vertical-align:baseline;font-size:.8rem;padding-top:10px;text-align:right}.pcell{font-size:calc(var(--text-size) * .95)}.pcell.original.heb{font-size:calc(var(--text-size) * 1.2)}.pcell .vn{display:none}.pcell.empty{color:var(--muted)}.altref{font-family:var(--ui);font-size:.65rem;color:var(--muted)}.placeholder .ph-line{height:.9em;margin:.8em 0;border-radius:4px;background:var(--line);opacity:.6}.error{color:#c0392b}.muted{color:var(--muted)}.small{font-size:.82rem}.panel{background:var(--surface);display:flex;flex-direction:column;z-index:10}.panel.side{width:var(--panel-width);min-width:320px;border-left:1px solid var(--line)}.panel.sheet{position:fixed;left:0;right:0;bottom:0;max-height:62vh;border-radius:16px 16px 0 0;box-shadow:var(--shadow);padding-bottom:env(safe-area-inset-bottom)}.panel-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:6px 10px;border-bottom:1px solid var(--line)}.panel-head>:last-child{justify-self:end}.panel-title{font-weight:600;font-size:.95rem}.panel-body{overflow-y:auto;padding:12px 16px 24px}.panel.sheet .panel-head:before{content:"";position:absolute;left:50%;top:5px;width:36px;height:4px;margin-left:-18px;border-radius:2px;background:var(--line)}.panel.sheet{--sheet: 1}.app.with-sheet .reader-content{padding-bottom:65vh}.link{color:var(--accent);text-decoration:none}.link:hover{text-decoration:underline}.phrase{font-family:var(--serif);font-size:1.15rem;margin:0 0 12px}.badge{display:inline-block;font-size:.72rem;font-weight:600;padding:2px 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent);margin:0 4px;vertical-align:middle}.badge.subtle{background:transparent;border:1px solid var(--line);color:var(--muted)}.token{margin-bottom:12px}.token-surface{font-size:1.6rem}.token-surface.heb,.heb{font-family:var(--hebrew)}.token-surface.grc,.grc{font-family:var(--serif)}.segments{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;direction:ltr}.segment{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:6px 10px;border-radius:10px;border:1px solid var(--line);text-align:left}.segment.on{border-color:var(--accent);background:var(--accent-soft)}.segment .heb{font-size:1.25rem}.seg-gloss{font-size:.85rem}.morph{font-family:ui-monospace,Consolas,monospace;font-size:.75rem;color:var(--muted)}.lemma{border-top:1px solid var(--line);padding-top:12px}.lemma-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.lemma-text{font-size:1.8rem}.translit{font-style:italic;color:var(--muted)}.lemma-meta{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin:4px 0 10px}.gloss{font-weight:600;margin-right:4px}.tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:8px}.tabs button{padding:6px 10px;font-size:.85rem;border-bottom:2px solid transparent}.tabs button.on{border-color:var(--accent);color:var(--accent);font-weight:600}.entry{font-family:var(--serif);font-size:1rem;line-height:1.6}.entry .sense{margin:.2em 0 .2em 1em}.entry .hebrew{font-family:var(--hebrew);font-size:1.1em}.entry .link,.note .link{font-family:inherit}.section{margin-top:14px}.section>summary{cursor:pointer;font-weight:600;padding:6px 0}.section h4{margin:0 0 8px;font-size:.95rem}.renderings,.occurrences,.xrefs,.hits,.credits{list-style:none;padding:0;margin:0}.credits li{padding:6px 0;border-bottom:1px solid var(--line);line-height:1.5}.renderings li{display:flex;justify-content:space-between;padding:3px 0;border-bottom:1px solid var(--line)}.occurrences{columns:2;column-gap:16px}.occurrences li{padding:2px 0;break-inside:avoid}.more{margin-top:8px;padding:6px 12px;border-radius:8px;border:1px solid var(--line)}.note{font-family:var(--serif);line-height:1.6}.xref{display:block;width:100%;text-align:left;padding:8px 0;border-bottom:1px solid var(--line)}.xref-ref{font-weight:600;margin-right:4px}.xref-text{display:block;font-family:var(--serif);color:var(--muted);font-size:.95rem;margin-top:2px}.xref:hover .xref-ref{color:var(--accent)}mark{background:var(--lit);color:inherit;border-radius:2px}.search-inline{margin-bottom:8px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:flex-start;justify-content:center;padding:6vh 12px;z-index:20}.modal{background:var(--surface);border-radius:14px;box-shadow:var(--shadow);width:min(720px,100%);max-height:88vh;overflow-y:auto;padding:8px 16px 16px}.modal-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;position:sticky;top:0;background:var(--surface);padding:6px 0}.modal-head>:last-child{justify-self:end}.modal-title{font-weight:600}.modal h4{margin:12px 0 6px;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:4px}.book-grid button,.chapter-grid button{padding:8px;border-radius:8px;text-align:left}.book-grid button:hover,.chapter-grid button:hover,.book-grid button.on{background:var(--accent-soft)}.chapter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:6px;padding-top:8px}.chapter-grid button{text-align:center;border:1px solid var(--line)}@media (max-width: 640px){:root{--text-size: 1.08rem}.reader-content{padding:4px 16px 40vh}.reader-content.is-parallel{padding:4px 10px 40vh}.pgrid{column-gap:10px}.pcell{font-size:.95rem}.go{order:3;flex-basis:100%}.occurrences{columns:1}}@media (pointer: coarse){.vn{padding:0 5px 0 2px}.mode button{padding:9px 14px}}
