:root{--ui:'Manrope',system-ui,-apple-system,sans-serif;--serif:'Newsreader',Georgia,'Times New Roman',serif;--heb:'Frank Ruhl Libre','SBL Hebrew','Ezra SIL','Times New Roman',serif;--grc:'Gentium Plus','SBL Greek','Times New Roman',serif;--top:64px}
.theme-light{--bg:#F5F7FC;--paper:#fff;--ink:#14161F;--mute:#5A5F72;--line:#E6E9F2;--accent:#4C7DFF;--accent-ink:#2653D6;--accent2:#FFB020;--chip:#EDEFF6;--shadow:0 12px 36px rgba(20,22,31,.08);--t1:#EEF3FF;--t1i:#2653D6;--t2:#FFF6E3;--t2i:#9A6200;--hl1:#FFE680;--hl2:#BFE9D0;--hl3:#BFD3FF;--hl4:#FFC7BF;--wd:#14161F;color-scheme:light}
.theme-dark{--bg:#10131C;--paper:#161A26;--ink:#E8EBF5;--mute:#8A92AC;--line:#252B3D;--accent:#6C97FF;--accent-ink:#9DB8FF;--accent2:#FFC24D;--chip:#1E2333;--shadow:0 12px 36px rgba(0,0,0,.45);--t1:#171E36;--t1i:#9DB8FF;--t2:#2A2314;--t2i:#FFC24D;--hl1:#6B5A14;--hl2:#2F5A44;--hl3:#2A4A8F;--hl4:#7A3A33;--wd:#E8EBF5;color-scheme:dark}
.g-law{--gc:#FF6B57}.g-hist{--gc:#FFB020}.g-poe{--gc:#2BB673}.g-pro{--gc:#7C5CFF}.g-gos{--gc:#4C7DFF}.g-epi{--gc:#12B5C4}.g-rev{--gc:#E056A0}
[class*="g-"]{--gt:color-mix(in srgb,var(--gc) 16%,var(--paper));--gi:color-mix(in srgb,var(--gc) 78%,var(--ink))}
*{box-sizing:border-box}html{height:100%}body{min-height:100%;margin:0;background:var(--bg);color:var(--ink);font-family:var(--ui);font-size:15px;-webkit-font-smoothing:antialiased}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}
.only-m{display:none!important}
/* ===== layout: rail + top + panel ===== */
:root{--rail:76px;--top:60px;--bar:64px}
body{padding-left:var(--rail)}
svg.i,#rail svg,#tabbar svg,#top svg,.sinp svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
#rail{position:fixed;left:0;top:0;bottom:0;width:var(--rail);z-index:45;background:var(--paper);border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 0 14px}
#rail .logo{height:44px;display:flex;align-items:center;margin-bottom:8px}
#rail button{width:60px;min-height:54px;border-radius:14px;color:var(--mute);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:10.5px;font-weight:700}
#rail button:hover{background:var(--chip);color:var(--ink)}
#rail .grow{flex:1}
.sec-read #rail [data-sec="read"],.sec-lib #rail [data-sec="lib"],.sec-search #rail [data-sec="search"],.sec-notes #rail [data-sec="notes"],.sec-hist #rail [data-sec="hist"]{background:var(--t1);color:var(--accent-ink)}
.sec-read #tabbar [data-sec="read"],.sec-lib #tabbar [data-sec="lib"],.sec-search #tabbar [data-sec="search"],.sec-notes #tabbar [data-sec="notes"]{color:var(--accent-ink)}
#accBtn.on{color:#2BB673}
#tabbar{display:none}
#top{position:sticky;top:0;z-index:40;height:var(--top);display:flex;align-items:center;gap:12px;padding:0 18px;background:color-mix(in srgb,var(--bg) 82%,var(--paper));border-bottom:1px solid var(--line)}
#tabs{display:flex;gap:4px;align-items:center;min-width:0;overflow-x:auto;scrollbar-width:none}
.tab{display:flex;align-items:center;gap:8px;height:38px;padding:0 10px 0 12px;border-radius:10px;color:var(--mute);font-weight:700;font-size:14px;white-space:nowrap}
.tab:hover{background:var(--chip);color:var(--ink)}.tab.on{background:var(--paper);color:var(--ink);box-shadow:0 1px 3px rgba(20,22,31,.1)}
.tab .x{font-size:10px;padding:3px 5px;border-radius:6px;opacity:0;color:var(--mute)}.tab:hover .x,.tab.on .x{opacity:1}.tab .x:hover{background:var(--chip);color:var(--ink)}
.tab.add{width:38px;padding:0;justify-content:center;font-size:20px;font-weight:600}
.gdot{width:9px;height:9px;border-radius:3px;background:var(--gc,var(--accent));flex:none;display:inline-block}
.spacer{flex:1}
.icon{width:40px;height:40px;border-radius:12px;background:var(--chip);font-size:18px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.icon:hover{background:color-mix(in srgb,var(--accent) 16%,var(--chip))}
.pill{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:12px;background:var(--chip);font-weight:700}.pill i{font-style:normal;color:var(--mute);font-size:11px}.pill:hover{background:color-mix(in srgb,var(--accent) 16%,var(--chip))}
.seg{display:flex;background:var(--chip);border-radius:12px;padding:3px;gap:2px}.seg button{padding:7px 13px;border-radius:9px;font-weight:700;font-size:13px;color:var(--mute)}.seg button.on{background:var(--paper);color:var(--ink);box-shadow:0 1px 3px rgba(20,22,31,.14)}
#omni{position:relative;width:min(460px,38vw);flex:none;display:flex;align-items:center;gap:10px;height:42px;padding:0 12px;border-radius:12px;background:var(--paper);border:1px solid var(--line);color:var(--mute)}
#omni svg{width:18px;height:18px}
#omni:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}
#omni input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:14px;color:var(--ink)}#omni input::placeholder{color:var(--mute)}
kbd{font-family:var(--ui);font-size:11.5px;font-weight:700;padding:3px 7px;border-radius:7px;background:var(--chip);color:var(--mute)}
#sugg{position:absolute;top:48px;left:-1px;right:-1px;background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:6px;z-index:80}
#sugg[hidden]{display:none}
#sugg button{display:flex;gap:10px;align-items:center;width:100%;text-align:left;padding:10px 12px;border-radius:10px;color:var(--ink);font-size:14px}
#sugg button.on,#sugg button:hover{background:var(--t1)}#sugg i{font-style:normal;color:var(--mute);width:16px;text-align:center}#sugg small{color:var(--mute);margin-left:auto;font-size:12px}
#body{display:grid;grid-template-columns:292px minmax(0,1fr);min-height:calc(100vh - var(--top))}
body.side-off #body,body:not(.sec-read) #body{grid-template-columns:minmax(0,1fr)}
body.side-off #side,body:not(.sec-read) #side{display:none}
#stage{min-width:0}#reader{padding:22px 36px 120px;min-width:0}
#side{position:sticky;top:var(--top);align-self:start;height:calc(100vh - var(--top));overflow:auto;background:var(--paper);border-right:1px solid var(--line);padding:16px 14px 40px}
.tst{display:flex;gap:6px;margin-bottom:14px}.tst button{flex:1;padding:8px 0;border-radius:10px;background:var(--chip);color:var(--mute);font-weight:700}.tst button.on{background:var(--ink);color:var(--bg)}
.recent{display:flex;gap:6px;flex-wrap:wrap;margin:0 2px 14px}.recent button{padding:4px 10px;border-radius:999px;background:var(--chip);font-weight:600;font-size:13px}.recent button:hover{background:color-mix(in srgb,var(--accent) 20%,var(--chip))}
.gh{display:flex;align-items:center;gap:8px;margin:16px 6px 6px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--gi)}.gh:before{content:'';width:8px;height:8px;border-radius:3px;background:var(--gc)}
.bk{display:flex;justify-content:space-between;text-align:left;padding:7px 10px;margin-left:4px;width:calc(100% - 4px);border-left:3px solid var(--gt);color:var(--ink)}.bk:hover{background:var(--gt)}
.bk.on{border-left-color:var(--gc);background:var(--gt);color:var(--gi);font-weight:800;border-radius:0 10px 10px 0}.bk small{color:var(--mute);font-weight:600}
.chs{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;padding:8px 4px 8px 12px}.chs button{padding:6px 0;border-radius:8px;background:var(--chip);text-align:center;font-weight:600;font-size:13px}.chs button:hover{background:var(--gt)}.chs button.on{background:var(--gc);color:#fff;font-weight:800}
/* chapter head */
.crumbs{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:13px;font-weight:700;color:var(--mute);margin-bottom:6px}.crumbs i{font-style:normal;opacity:.6}.crumbs button{color:var(--accent-ink);padding:2px 0}.crumbs button:hover{text-decoration:underline}
.hrow{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}
.chnav{display:flex;justify-content:space-between;gap:10px;width:min(1000px,100%);margin:22px auto 0}.chnav button{padding:11px 16px;border-radius:12px;background:var(--paper);border:1px solid var(--line);font-weight:700}.chnav button:hover{border-color:var(--accent)}
/* words */
.w{cursor:pointer;border-radius:4px;padding:0 1px;transition:background .12s}.w:hover,.w.pin{background:color-mix(in srgb,var(--accent2) 40%,transparent)}
.orig.heb{font-family:var(--heb);direction:rtl;text-align:right;font-size:1.35em;line-height:2}.orig.grc{font-family:var(--grc);font-size:1.2em;line-height:1.9}
.orig .w{margin:0 .12em}
.vn{font-family:var(--ui);font-size:.68em;font-weight:800;color:var(--accent);cursor:pointer;user-select:none;vertical-align:super;margin-right:.35em}
.vn:hover{text-decoration:underline}.vn .note-dot{color:var(--accent2);margin-left:2px}
.flash{animation:flash 1.6s}@keyframes flash{0%,60%{outline:3px solid var(--accent);outline-offset:3px}100%{outline-color:transparent}}
.tag{font-family:var(--ui);font-size:.66em;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin-right:6px}
.miss{color:var(--mute);font-style:italic;font-size:.9em}
.tw{cursor:help;border-radius:4px}.tw:hover,.tw.hi,.w.hi{background:color-mix(in srgb,var(--accent) 32%,transparent)}.tw.hi,.w.hi{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 55%,transparent)}
/* chapter head + chips */
.ch-head{margin:0 0 16px}.ch-head small{display:block;font-size:12.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--gi)}
.ch-head h1{margin:0;font-family:var(--serif);font-size:40px;letter-spacing:-.01em;font-weight:500}.ch-head h1 em{font-style:normal;color:var(--gc)}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.chip{padding:7px 14px;border-radius:999px;background:var(--paper);border:1px solid var(--line);font-weight:700;color:var(--mute)}
.chip.pri{background:var(--accent);border-color:var(--accent);color:#fff}.chip.org.on{background:var(--accent2);border-color:var(--accent2);color:#3B2600}.chip.add{border-style:dashed}
.chip:hover{border-color:var(--accent)}
/* layout A: verse cards */
.pageA{width:min(1000px,100%);margin:0 auto}
.vcards{display:grid;gap:10px}
.vrow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-radius:18px;overflow:hidden;background:var(--paper);box-shadow:0 2px 10px rgba(20,22,31,.04)}
.vrow.no-o{grid-template-columns:1fr}
.vt{background:var(--t1);padding:14px 20px;font-family:var(--serif);font-size:19.5px;line-height:1.7}
.vo{background:var(--t2);padding:14px 20px}.vo .orig{margin:0}.vo .orig.heb{font-size:1.4em}.vo .orig.grc{font-size:1.22em}
.vt .alts{margin:.5em 0 0;padding-top:.5em;border-top:1px dashed color-mix(in srgb,var(--accent) 35%,transparent);font-size:16px;color:var(--mute);line-height:1.6}.vt .alts div{margin:.2em 0}
.vrow.hl1 .vt,.vrow.hl1 .vo{background:var(--hl1)}.vrow.hl2 .vt,.vrow.hl2 .vo{background:var(--hl2)}.vrow.hl3 .vt,.vrow.hl3 .vo{background:var(--hl3)}.vrow.hl4 .vt,.vrow.hl4 .vo{background:var(--hl4)}
.vrow.hl1,.vrow.hl2,.vrow.hl3,.vrow.hl4{background:transparent}
/* layout B: desk */
.desk{display:grid;align-items:stretch;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
.desk .colhead{position:sticky;top:var(--top);z-index:5;background:var(--chip);padding:10px 14px;font-weight:800;font-size:13px;border-bottom:1px solid var(--line);border-left:1px solid var(--line);display:flex;justify-content:space-between;gap:6px}
.desk .colhead:first-child{border-left:0;border-radius:18px 0 0 0}.desk .colhead:last-of-type{border-radius:0 18px 0 0}.desk .colhead button{color:var(--mute)}
.desk .cell{padding:10px 14px;border-left:1px solid var(--line);border-bottom:1px solid color-mix(in srgb,var(--line) 55%,transparent);font-family:var(--serif);line-height:1.65;font-size:17px}
.desk .cell.n{border-left:0;text-align:center;padding:12px 4px;font-family:var(--ui)}.desk .cell.n .vn{vertical-align:baseline;font-size:12px;margin:0}
.hl1.cell,.hl1.mid{background:var(--hl1)}.hl2.cell,.hl2.mid{background:var(--hl2)}.hl3.cell,.hl3.mid{background:var(--hl3)}.hl4.cell,.hl4.mid{background:var(--hl4)}
/* layout D: manuscript */
.ms{width:min(1180px,100%);margin:0 auto;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);padding:34px 28px 50px;border-radius:20px}
.ms .ch-head{text-align:center}
.ms .row{display:grid;grid-template-columns:minmax(0,26%) minmax(0,1fr) minmax(0,30%);gap:0 34px;padding:10px 0;border-top:1px solid color-mix(in srgb,var(--line) 60%,transparent)}
.ms .mid{font-family:var(--serif);font-size:19.5px;line-height:1.75;border-radius:8px;padding:0 6px}
.ms .lm{font-size:15px;color:var(--mute)}.ms .lm.heb{text-align:right}
.ms .rm{font-family:var(--serif);font-size:14.5px;line-height:1.55;color:var(--mute)}.ms .rm div{margin:0 0 .5em}.ms .rm b{font-family:var(--ui);font-size:10.5px;letter-spacing:.08em;color:var(--accent-ink)}
.ms .rm .note{color:var(--ink);font-style:italic;border-left:3px solid var(--accent2);padding-left:8px}
.ms .lm.orig.heb{font-size:1.15em;line-height:1.9}.ms .lm.orig.grc{font-size:1.05em;line-height:1.8}
/* split (mobile compare) */
.split{display:grid;gap:8px;height:calc(100dvh - var(--top) - 84px);padding:0}
.pane{position:relative;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;min-height:0;background:var(--chip)}
.pane.p0{background:var(--t1)}.pane.po{background:var(--t2)}
.pane header{padding:8px 14px 2px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--t1i)}.pane.po header{color:var(--t2i)}
.pbody{position:relative;overflow:auto;flex:1;padding:4px 14px 14px;font-family:var(--serif);font-size:18px;line-height:1.65;-webkit-overflow-scrolling:touch}
.pbody p{margin:0 0 .5em;border-radius:8px;padding:0 4px}.pbody .orig.grc{font-size:1.15em}.pbody .orig.heb{font-size:1.3em}.pbody p.orig-p{margin-bottom:.5em}
.pbody p.hl1{background:var(--hl1)}.pbody p.hl2{background:var(--hl2)}.pbody p.hl3{background:var(--hl3)}.pbody p.hl4{background:var(--hl4)}
/* inspector */
#inspector{position:fixed;z-index:60;right:0;top:var(--top);bottom:0;width:380px;max-width:100vw;background:var(--paper);border-left:1px solid var(--line);overflow:auto;box-shadow:var(--shadow);transform:translateX(105%);transition:transform .22s}
#inspector.open{transform:none}
#inspClose{position:absolute;top:12px;right:12px;width:32px;height:32px;font-size:13px;z-index:3;background:rgba(255,255,255,.35);color:#fff}
.insp-empty{padding:40px 28px;color:var(--mute);line-height:1.6}.insp-empty b{display:block;font-size:19px;color:var(--ink);margin-bottom:6px}
.ihero{padding:22px 22px 20px;color:#3B1A00;background:linear-gradient(135deg,#FFB020,#FF6B57)}.ihero.he{color:#fff;background:linear-gradient(135deg,#4C7DFF,#7C5CFF)}
.ihero .k{font-size:12px;font-weight:800;letter-spacing:.12em;opacity:.85}.ihero .lm{font-size:48px;line-height:1.15;margin:6px 0 2px;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.15)}.ihero .lm.he{font-family:var(--heb);direction:rtl;text-align:right}.ihero .lm.gr{font-family:var(--grc)}
.ihero .sub{font-weight:700}
.itabs{display:flex;gap:4px;padding:14px 12px 6px;overflow:auto}.itabs button{padding:7px 11px;border-radius:999px;background:var(--chip);color:var(--mute);font-weight:700;font-size:13px;white-space:nowrap}.itabs button.on{background:var(--ink);color:var(--bg)}
.ipane{padding:8px 18px 70px}
.ih{margin:18px 0 8px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.ibox{padding:13px 15px;border-radius:14px;background:var(--t1);line-height:1.5}.ibox b{color:var(--t1i)}
.ibox .f{font-size:22px}.ibox .f.he{font-family:var(--heb)}.ibox .f.gr{font-family:var(--grc)}
.ibox.warm{background:var(--t2)}.ibox.warm b{color:var(--t2i)}
.def{font-family:var(--serif);font-size:16px;line-height:1.6;white-space:pre-line}.def.clamp{max-height:190px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 70%,transparent);mask-image:linear-gradient(#000 70%,transparent)}
.badge{display:inline-block;padding:2px 9px;border-radius:999px;background:var(--chip);font-size:12.5px;margin:0 4px 4px 0}
.bars{display:grid;gap:6px}.bar{display:grid;grid-template-columns:86px 1fr 34px;align-items:center;gap:8px;font-size:13.5px;font-weight:700}.bar i{display:block;height:13px;border-radius:7px;background:var(--gc,var(--accent));min-width:4px}.bar b{text-align:right;font-size:12px;color:var(--mute)}
.card{padding:12px 14px;border-radius:14px;background:var(--t1);margin-bottom:10px}.card.o{background:var(--t2)}.card h5{margin:0 0 8px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--t1i)}.card.o h5{color:var(--t2i)}
.occ{display:block;width:100%;text-align:left;padding:10px 12px;border-radius:12px;border:1px solid var(--line);margin-bottom:8px}.occ:hover{border-color:var(--accent)}
.occ b{font-size:13px;color:var(--accent-ink)}.occ span{display:block;font-family:var(--serif);font-size:15px;color:var(--mute);line-height:1.45;margin-top:2px}
.more{margin:6px 0;padding:10px 14px;border-radius:12px;background:var(--chip);font-weight:700}
.wnote{width:100%;min-height:74px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--ink);font:inherit;resize:vertical}
.hint{color:var(--mute);font-size:13px;margin-top:10px;line-height:1.5}
.cmp{display:block;width:100%;margin-top:14px;padding:13px;border-radius:14px;background:var(--ink);color:var(--bg);font-weight:800;text-align:center}
/* overlays */
#pop{position:fixed;z-index:90;width:290px;padding:12px 14px;background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);pointer-events:none}
#pop .lm{font-size:26px;line-height:1.2;margin-bottom:2px}#pop .lm.he{font-family:var(--heb);direction:rtl;text-align:right}#pop .lm.gr{font-family:var(--grc)}
#pop .meta{color:var(--mute);font-size:13px}#pop .gl{margin-top:6px;font-weight:600}#pop .cnt{margin-top:6px;font-size:12px;color:var(--accent-ink);font-weight:700}#pop .auto{margin-top:6px;font-size:11.5px;color:var(--mute);font-style:italic}
#menu{position:fixed;z-index:95;width:290px;background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:14px}
#menu .ref{font-weight:800;margin-bottom:8px}#menu .cols{display:flex;gap:8px;margin-bottom:10px}#menu .cols button{width:30px;height:30px;border-radius:50%;border:2px solid transparent}#menu .cols button:hover{border-color:var(--ink)}
#menu textarea{width:100%;min-height:90px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);font:inherit;resize:vertical}
#menu .acts{display:flex;gap:6px;margin-top:8px}#menu .acts button{padding:7px 12px;border-radius:10px;background:var(--chip);font-size:13px;font-weight:700}
#scrim{position:fixed;inset:0;z-index:55;background:rgba(10,14,28,.4);display:none}
body.insp-open #scrim,body.drawer #scrim{display:block}
#modal{position:fixed;inset:0;z-index:100;background:rgba(10,14,28,.45);display:flex;align-items:flex-start;justify-content:center;padding:70px 16px;overflow:auto}
#modal[hidden],#pop[hidden],#menu[hidden]{display:none}
.sheet{width:min(860px,100%);background:var(--paper);border-radius:22px;box-shadow:var(--shadow);padding:26px 28px 30px}
.sheet h3{margin:0 0 14px;font-weight:800;font-size:22px}.sheet h5{margin:18px 0 8px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.pk .gh{margin:14px 2px 8px}.pk .row{display:flex;flex-wrap:wrap;gap:6px}
.pk .row button{padding:9px 13px;border-radius:12px;background:var(--gt);color:var(--gi);font-weight:800}.pk .row button.on{background:var(--gc);color:#fff;box-shadow:0 6px 14px color-mix(in srgb,var(--gc) 40%,transparent)}
.nums{display:grid;grid-template-columns:repeat(auto-fill,minmax(46px,1fr));gap:6px}.nums button{padding:9px 0;border-radius:10px;background:var(--chip);text-align:center;font-weight:700}.nums button:hover{background:var(--gt,var(--chip))}.nums button.on{background:var(--gc,var(--accent));color:#fff}
.tlist label{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:14px;cursor:pointer}.tlist label:hover{background:var(--chip)}.tlist small{color:var(--mute);display:block}
.tlist input{width:20px;height:20px;accent-color:var(--accent)}
.mlist{display:grid;gap:8px}.mlist button,.mlist .btn{padding:14px;border-radius:14px;background:var(--chip);text-align:left;font-weight:700}.mlist .on{background:var(--accent);color:#fff}
.hl-note{font-size:13px;color:var(--mute)}
/* ===== wide: inspector column while reading ===== */
@media(max-width:1099px){#reader{padding:20px 22px 110px}}
@media(min-width:1100px){
  body.sec-read #body{grid-template-columns:292px minmax(0,1fr) 372px}
  body.sec-read.side-off #body{grid-template-columns:minmax(0,1fr) 372px}
  body.sec-read #inspector{position:sticky;top:var(--top);z-index:5;height:calc(100vh - var(--top));width:auto;max-width:none;transform:none;box-shadow:none;align-self:start}
  body.sec-read #inspClose{display:none}
}
/* ===== phone ===== */
@media(max-width:820px){
  :root{--top:62px}
  .only-d{display:none!important}.only-m{display:inline-flex!important}
  body{padding-left:0}
  #rail{display:none}
  #top{padding:0 10px;gap:8px;background:var(--paper)}
  #top .icon{width:44px;height:44px;flex:none}
  #aaBtn{font-family:var(--serif);font-weight:600;font-size:18px}
  #bookBtn{flex:1;min-width:0;height:44px;justify-content:center;background:var(--gt);color:var(--gi);font-size:16px;font-weight:800;border-radius:12px}#bookBtn i{color:var(--gi)}
  #bookBtn #bookLabel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  #tabbar{display:flex;position:fixed;z-index:50;left:0;right:0;bottom:0;padding:2px 4px env(safe-area-inset-bottom);background:var(--paper);border-top:1px solid var(--line)}
  #tabbar button{flex:1;height:var(--bar);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:11px;font-weight:700;color:var(--mute)}
  #body{display:block}
  #side{display:none!important}
  #reader{padding:10px 14px calc(var(--bar) + 40px)}
  .ch-head{margin-bottom:10px}.ch-head h1{font-size:28px}.crumbs{display:none}
  .chips{flex-wrap:nowrap;overflow-x:auto;margin:0 -14px 12px;padding:2px 14px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:none;padding:8px 14px}
  .vrow{grid-template-columns:1fr;border-radius:18px;box-shadow:0 4px 14px rgba(20,22,31,.05)}
  .vt{font-size:18.5px;padding:13px 16px}.vo{padding:10px 16px}
  .desk{display:none}
  .split{height:calc(100dvh - var(--top) - var(--bar) - 72px - env(safe-area-inset-bottom))}
  .ms .row{grid-template-columns:1fr;gap:6px}.ms{padding:22px 16px 40px}
  .chnav button{flex:1;padding:13px}
  #inspector{position:fixed;left:0;right:0;top:auto;bottom:0;width:auto;max-height:76vh;border-left:0;border-radius:28px 28px 0 0;transform:translateY(105%);z-index:60}
  #inspector.open{transform:none}
  .ihero{border-radius:28px 28px 0 0;padding-top:30px}.ihero .lm{font-size:42px}
  #menu{left:0!important;right:0;top:auto!important;bottom:0;width:auto;border-radius:24px 24px 0 0;padding:18px 18px 28px}
  #menu .cols button{width:40px;height:40px}
  #modal{padding:0;align-items:flex-end}
  .sheet{width:100%;border-radius:28px 28px 0 0;max-height:92vh;overflow:auto;padding:22px 18px 30px}
  .pk .row button{min-width:52px;min-height:44px}.nums button{min-height:44px}
}
/* ===== section pages ===== */
#page[hidden],#reader[hidden]{display:none}
.pg{width:min(1240px,100%);margin:0 auto;padding:26px 36px 80px;display:flex;flex-direction:column;gap:26px}
.pghead{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.pghead h1{margin:0;font-family:var(--serif);font-weight:500;font-size:40px}
.cap{font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:var(--mute);font-weight:800;margin:0 0 8px}.cap.mt{margin-top:18px}
.shelf{display:flex;align-items:baseline;gap:10px;margin:0 0 12px}.shelf h2{margin:0;font-size:18px;font-weight:800}.shelf span{color:var(--mute);font-size:13px}
.lrow{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.lcard{padding:0;display:flex;flex-direction:column;border-radius:16px;border:1px solid var(--line);background:var(--paper);overflow:hidden;text-align:left}
.lcard:not(:disabled):hover{border-color:var(--accent);box-shadow:var(--shadow)}.lcard:disabled{cursor:default}
.lcard .cv{height:84px;padding:14px 16px;display:flex;align-items:flex-end;background:var(--chip)}.lcard .cv b{font-family:var(--serif);font-size:24px;font-weight:500;color:#fff}
.lcard.plan .cv b{color:var(--mute)}
.lcard .bd{padding:12px 16px 14px;display:flex;flex-direction:column;gap:6px}.lcard .t{font-weight:800}.lcard .s{font-size:13px;color:var(--mute);line-height:1.4}
.st{align-self:flex-start;font-size:11px;font-weight:800;padding:3px 8px;border-radius:7px;background:var(--chip);color:var(--mute)}.st.ok{background:color-mix(in srgb,#2BB673 20%,var(--paper));color:color-mix(in srgb,#2BB673 60%,var(--ink))}
.cont{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.go{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:14px;border:1px solid var(--line);background:var(--paper);text-align:left}.go:hover{border-color:var(--gc)}
.go .ab,.gotoref .ab{min-width:42px;height:42px;padding:0 6px;border-radius:11px;background:var(--gc);color:#fff;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
.go small{display:block;color:var(--mute);font-size:12.5px}
.saved,.qh{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.qh button,.sv button{padding:8px 13px;border-radius:999px;background:var(--paper);border:1px solid var(--line);font-weight:700;font-size:13.5px}.qh button:hover,.sv button:hover{border-color:var(--accent)}
.sv{display:inline-flex;gap:2px}.sv .x{padding:8px 10px;color:var(--mute)}
.mini{padding:7px 12px;border-radius:10px;background:var(--t1);color:var(--accent-ink);font-weight:700;font-size:13px}
.more.wide{display:block;width:100%;text-align:center}
/* search */
.search{gap:18px}
.sbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;min-width:0}.sbar>*,.sgrid,.sres,.pg>*{min-width:0}.sbar .seg{max-width:100%;overflow-x:auto;scrollbar-width:none}
.sinp{flex:1;min-width:260px;display:flex;align-items:center;gap:12px;height:54px;padding:0 16px;border-radius:16px;border:2px solid var(--accent);background:var(--paper);color:var(--accent-ink);margin:0}
.sinp input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:19px;font-weight:600;color:var(--ink)}
.sinp button{width:34px;height:34px;border-radius:10px;background:var(--chip);color:var(--mute)}
.sgrid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:28px;align-items:start}
.sfilt{position:sticky;top:calc(var(--top) + 16px);background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:14px 16px}
.sfilt summary{font-weight:800;cursor:pointer;list-style:none}.sfilt summary::-webkit-details-marker{display:none}.sfilt[open] summary{margin-bottom:6px}
.fg{margin-top:14px}.ck{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:14px;cursor:pointer}.ck input{width:18px;height:18px;margin:0;accent-color:var(--accent)}
.ck.dim{color:var(--mute);cursor:default}.soon{margin-left:auto;font-size:10.5px;font-weight:800;color:var(--mute);background:var(--chip);padding:2px 7px;border-radius:6px;white-space:nowrap}
.tips{font-size:13px;line-height:1.75;color:var(--ink)}
.sres{min-width:0;display:flex;flex-direction:column;gap:12px}
.understood{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px}.understood>b{color:var(--mute);margin-right:2px}
.tg{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:9px;background:var(--chip);font-weight:700}.tg.b{background:var(--t1);color:var(--accent-ink)}.tg.w{background:var(--t2);color:var(--t2i)}
.pg .he{font-family:var(--heb);font-size:1.12em}.pg .gr{font-family:var(--grc);font-size:1.05em}
.forms{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:10px 14px}.forms summary{font-size:13px;font-weight:700;color:var(--mute);cursor:pointer}
.forms div{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.forms button{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:9px;border:1px solid var(--line);color:var(--mute);font-weight:700;font-size:13.5px;text-decoration:line-through}
.forms button.on{background:var(--t1);border-color:transparent;color:var(--accent-ink);text-decoration:none}.forms small{font-size:11px;opacity:.75}
.words{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.wcard{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 14px;align-items:center;padding:12px 14px;border-radius:14px;background:var(--paper);border:1px solid var(--line)}
.wl{font-size:24px;line-height:1.2;color:var(--ink);grid-row:span 2}.wm b{display:block}.wm small{color:var(--mute);font-size:12.5px;line-height:1.4;display:block}
.wb{grid-column:2;display:flex;gap:6px}.wb button{padding:5px 10px;border-radius:8px;background:var(--chip);font-size:12.5px;font-weight:700}.wb button:hover{background:var(--t1);color:var(--accent-ink)}
.rhead{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:8px}.rhead h2{margin:0;font-size:22px;font-weight:800}
.hist{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:14px 16px}
.bars2{display:flex;align-items:flex-end;gap:8px;overflow-x:auto}.bars2>*{flex:1;min-width:34px;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;color:var(--mute)}
.bars2 span{width:100%;border-radius:6px 6px 3px 3px}.bars2 b{font-size:11px}.bars2 i{font-style:normal;font-weight:800}.bars2 button.on i{color:var(--ink)}.bars2 button.on span{outline:2px solid var(--ink);outline-offset:2px}.restb span{background:var(--line)}
.rlist{background:var(--paper);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.res{display:grid;grid-template-columns:100px minmax(0,1fr);gap:14px;width:100%;text-align:left;padding:13px 18px;border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.res:last-child{border-bottom:0}.res:hover{background:var(--t1)}
.res .ref{display:flex;align-items:center;gap:7px;font-weight:800;color:var(--accent-ink);font-size:14px}.res .txt{font-family:var(--serif);font-size:17px;line-height:1.55}
.res .note{display:block;font-family:var(--ui);font-size:14px;color:var(--ink);border-left:3px solid var(--accent2);padding-left:8px;margin-top:4px}.res .vtx{color:var(--ink)}.wlem{display:block}
.swd{width:12px;height:12px;border-radius:4px;display:inline-block}
mark{background:var(--hl1);color:inherit;border-radius:4px;padding:0 2px}
.gotoref{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:14px;background:var(--paper);border:1px solid var(--line);text-align:left;font-size:15px}.gotoref:hover{border-color:var(--accent)}
.sempty{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:18px 20px}.sempty p{margin:0 0 6px}
.can{margin:0;padding-left:18px;line-height:1.9;font-size:14.5px}
.nfilt{display:flex;gap:6px;flex-wrap:wrap}.nfilt button{padding:7px 13px;border-radius:999px;background:var(--paper);border:1px solid var(--line);font-weight:700;font-size:13.5px}.nfilt button.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.nfilt .sw{width:34px;height:34px;padding:0;background:var(--sw)}.nfilt .sw.on{outline:2px solid var(--ink);outline-offset:2px;background:var(--sw)}
@media(max-width:820px){
  .pg{padding:16px 14px calc(var(--bar) + 40px);gap:20px}.pghead h1{font-size:32px}
  .lrow{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:150px;overflow-x:auto;margin:0 -14px;padding:0 14px 4px;scrollbar-width:none}
  .lcard .cv{height:70px}.lcard .cv b{font-size:20px}.lcard .s{display:none}
  .sbar{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.sinp{height:50px;min-width:0}.sbar .seg{overflow-x:auto}.sbar .seg button{flex:1;white-space:nowrap}
  .sgrid{grid-template-columns:1fr;gap:12px}.sfilt{position:static}
  .res{grid-template-columns:1fr;gap:2px;padding:12px 14px}.res .txt{font-size:16.5px}
  .words{grid-template-columns:1fr}
}
.pbody .orig{display:inline}.pbody .orig.heb{display:block}
.tw0{cursor:help;border-radius:4px}.tw0:hover{background:color-mix(in srgb,var(--mute) 22%,transparent)}
.say{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.say button{padding:8px 13px;border-radius:12px;background:rgba(255,255,255,.88);color:#14161F;font-weight:800;font-size:13px}.say button:hover{background:#fff}
.trl{margin-top:8px;font-size:13.5px;opacity:.95}.ihero .trl{color:inherit}.saynote{margin-top:6px;font-size:12.5px;font-weight:700}
.say1{padding:2px 8px;border-radius:8px;background:var(--chip);font-size:13px;vertical-align:middle}.say1:hover{background:color-mix(in srgb,var(--accent) 25%,var(--chip))}
#accBtn.on{background:#2BB673;color:#fff}.accf{display:grid;gap:8px;margin-top:8px}.accf input{height:44px;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit}.accf input:focus{outline:2px solid var(--accent)}
