
:root{--bg:#faf7f1;--panel:#fffdf8;--ink:#23201b;--muted:#6d675c;--navy:#1c2f52;
--navy2:#2a4066;--line:#e4ddd0;--link:#24467e;--link2:#5a7ab0;--mark:#f3ead6;
--note-bg:#f4efe4;--greek-size:1.18em}
[data-theme="dark"]{--bg:#17191e;--panel:#1f2229;--ink:#e9e4da;--muted:#a7a194;
--navy:#101a2e;--navy2:#1b2a49;--line:#333845;--link:#9db8dd;--link2:#7d9cc6;
--mark:#2c2a22;--note-bg:#242730}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);
font-family:Georgia,"Times New Roman",serif;line-height:1.55}
a{color:var(--link)}a:hover{color:var(--link2)}
.greek{font-family:"Gentium Plus","Noto Serif",Georgia,serif;font-size:var(--greek-size);line-height:1.7}
header.nav{background:var(--navy);color:#fff;position:sticky;top:0;z-index:50}
.nav-in{max-width:1080px;margin:0 auto;padding:0 16px;display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;padding:12px 8px 12px 0;margin-right:10px}
.brand b{font-size:1.05em;letter-spacing:.01em}.brand small{display:block;font-size:.72em;opacity:.75;font-weight:normal}
.brand-logo{height:72px;width:auto;background:#000;border:1px solid #c8a95e;border-radius:4px;vertical-align:middle}
[id]{scroll-margin-top:7.2rem}
.nav-item{position:relative}
.nav-item>a,.nav-item>span{display:block;color:#e8ecf4;text-decoration:none;padding:14px 12px;font-size:.95em}
.nav-item>a:hover,.nav-item:hover>span{background:var(--navy2);color:#fff}
.nav-item>a.active{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px;color:#fff}
.drop{display:none;position:absolute;left:0;top:100%;background:var(--navy2);min-width:230px;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.nav-item:hover .drop,.nav-item:focus-within .drop{display:block}
.drop a{display:block;color:#e8ecf4;text-decoration:none;padding:9px 14px;font-size:.92em}
.drop a:hover{background:#33486e;color:#fff}
.nav-search{margin-left:auto;display:flex;gap:6px;padding:8px 0}
.nav-search input{padding:7px 10px;border:1px solid #5a6c92;border-radius:3px;background:#fff;color:#222;min-width:180px}
.nav-search button{padding:7px 12px;border:0;border-radius:3px;background:#c8a95e;color:#1c2f52;cursor:pointer;font-weight:bold}
.theme-btn{margin-left:8px;background:none;border:1px solid #5a6c92;color:#e8ecf4;border-radius:3px;padding:6px 10px;cursor:pointer}
main{max-width:1080px;margin:0 auto;padding:24px 16px 64px}
h1{font-size:1.9em;line-height:1.25;margin:.2em 0 .4em}h2{font-size:1.35em;margin:1.4em 0 .4em}
h3{font-size:1.1em;margin:1.2em 0 .3em}
.hero{display:grid;grid-template-columns:1.5fr 1fr;gap:24px;background:var(--panel);border:1px solid var(--line);padding:28px;margin-bottom:24px}
.hero .sub{font-size:1.25em;color:var(--muted)}
.btn{display:inline-block;background:var(--navy);color:#fff!important;text-decoration:none;padding:10px 18px;border-radius:3px;margin-top:14px}
.hero-verse{border-left:3px solid #c8a95e;padding-left:16px}
.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}
.quick a{display:block;background:var(--panel);border:1px solid var(--line);padding:16px;text-decoration:none;color:var(--ink)}
.quick a:hover{border-color:var(--link2)}.quick b{display:block;margin-bottom:4px}.quick span{color:var(--muted);font-size:.9em}
.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.col{background:var(--panel);border:1px solid var(--line);padding:18px}
.col h2{margin-top:0}.col ul{padding-left:18px}.col li{margin-bottom:8px}
.counts{display:flex;flex-wrap:wrap;gap:10px 26px;background:var(--panel);border:1px solid var(--line);padding:14px 18px;margin-bottom:24px}
.counts div{font-size:.95em}.counts b{font-size:1.15em}
table.verses{width:100%;border-collapse:collapse;margin:14px 0}
table.verses td{vertical-align:top;padding:7px 10px;border-bottom:1px solid var(--line)}
td.num{width:52px;color:var(--muted);white-space:nowrap}
td.num a{color:var(--muted);text-decoration:none}td.num a:hover{color:var(--link)}
td.grk{width:50%}td.eng{width:50%}
.w{cursor:pointer;border-bottom:1px dotted transparent}.w:hover{border-bottom-color:var(--link2)}
.w.hit{border-bottom:1px dotted var(--link2)}
span.punct{color:var(--ink)}
tr.gap td, tr.seam td{background:var(--note-bg);color:var(--muted);font-size:.92em;text-align:center}
tr.title-row td{font-weight:bold;padding-top:14px}
.acro{font-size:.8em;color:var(--muted);margin-right:6px;letter-spacing:.02em}
.fillmark{font-size:.72em;color:var(--muted);vertical-align:super;cursor:help;border-bottom:1px dotted var(--muted)}
.note-cell{background:var(--note-bg);color:var(--muted);font-size:.95em;text-align:center}
.book-head{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:baseline}
.chap-nav{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:14px 0}
.chap-nav a,.chap-nav select{padding:6px 10px;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:3px;text-decoration:none}
.popup{position:fixed;z-index:100;max-width:340px;background:var(--panel);border:1px solid var(--line);box-shadow:0 8px 24px rgba(0,0,0,.25);padding:14px 16px}
.popup .lemma{font-size:1.2em}.popup .parse{color:var(--muted);font-size:.9em}
.popup .close{float:right;cursor:pointer;color:var(--muted);border:0;background:none;font-size:1.1em}
details.notes{margin-top:22px}details.notes summary{cursor:pointer;font-weight:bold}
.lemma-head{border-bottom:2px solid var(--navy);padding-bottom:10px}
.lemma-layout{display:grid;grid-template-columns:1fr 220px;gap:24px}
.side{border-left:1px solid var(--line);padding-left:16px;font-size:.92em}
.side a{display:block;margin:6px 0;text-decoration:none}
.search-box{width:100%;padding:10px 12px;font-size:1.05em;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:3px}
.result{border-bottom:1px solid var(--line);padding:12px 0}
.result .meta{color:var(--muted);font-size:.9em}
mark{background:var(--mark);color:inherit}
.book-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.book-grid a{display:block;background:var(--panel);border:1px solid var(--line);padding:12px 14px;text-decoration:none;color:var(--ink)}
.book-grid a:hover{border-color:var(--link2)}.book-grid small{color:var(--muted)}
.para{margin-bottom:22px}.para h3{margin-bottom:6px}.para h3 a{color:var(--muted);text-decoration:none}
.para-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.jump{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:14px 0}
.jump input{width:90px;padding:7px 10px;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:3px}
.jump button,.jump a{padding:7px 12px;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:3px;text-decoration:none;cursor:pointer}
footer{border-top:1px solid var(--line);padding:18px 16px;color:var(--muted);font-size:.9em;text-align:center}
@media(max-width:820px){.hero,.cols,.quick,.book-grid,.para-grid,.lemma-layout{grid-template-columns:1fr}
table.verses td.grk,table.verses td.eng{width:auto}.nav-search{margin-left:0}.drop{position:static}.brand-logo{height:56px}}
