:root{
  --paper:#fbfaf6;--paper-2:#f3efe7;--surface:#fffefb;--ink:#292722;--muted:#777269;
  --line:#ded8cd;--accent:#805b38;--accent-soft:#eee3d4;--green:#516d63;--red:#8c5142;
  --shadow:0 18px 55px rgba(53,44,34,.08);--reading-width:760px;--reading-size:19px;--leading:1.82;
  --ui:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --serif:Charter,"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif
}
html[data-theme="dark"]{--paper:#191918;--paper-2:#23221f;--surface:#20201e;--ink:#e9e4da;--muted:#aaa399;--line:#3b3933;--accent:#d3a373;--accent-soft:#352c23;--green:#9bb9ad;--red:#dea493;--shadow:0 18px 55px rgba(0,0,0,.25)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:var(--reading-size);line-height:var(--leading);transition:.2s background,.2s color}button,input,textarea{font:inherit}a{color:inherit}[data-lang="el"] .en,[data-lang="en"] .el{display:none!important}
.progress{position:fixed;top:0;left:0;width:0;height:2px;background:var(--accent);z-index:120}.topbar{height:58px;position:sticky;top:0;z-index:100;display:flex;align-items:center;padding:0 16px;border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent);background:color-mix(in srgb,var(--paper) 90%,transparent);backdrop-filter:blur(14px);font-family:var(--ui)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;min-width:0}.brand-mark{font-family:var(--serif);font-weight:700;font-size:1.15rem}.brand-copy{font-size:.8rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.actions{margin-left:auto;display:flex;align-items:center;gap:4px}.btn{border:0;background:transparent;color:var(--muted);min-height:38px;padding:0 10px;border-radius:8px;cursor:pointer;font-family:var(--ui);font-size:.78rem;font-weight:750}.btn:hover,.btn.active,.btn[aria-expanded="true"]{background:var(--paper-2);color:var(--ink)}
.page{width:min(100%,1100px);margin:0 auto;padding:0 24px 90px}.reader{width:min(100%,var(--reading-width));margin-inline:auto}.hero{padding:clamp(55px,9vw,105px) 0 38px;text-align:center}.eyebrow{font-family:var(--ui);font-size:.67rem;text-transform:uppercase;letter-spacing:.16em;color:var(--accent);font-weight:850}.hero h1{font-size:clamp(2.35rem,6vw,5rem);line-height:1.04;letter-spacing:-.045em;font-weight:500;margin:.22em 0 .18em}.hero .subtitle{font-family:var(--ui);font-size:.95rem;color:var(--muted);margin:0}.opening-note{max-width:630px;margin:32px auto 0;color:var(--muted);font-size:1.03rem}.opening-note strong{color:var(--ink);font-weight:600}
.modebar{position:sticky;top:58px;z-index:80;display:flex;justify-content:center;gap:4px;padding:9px 0;background:color-mix(in srgb,var(--paper) 93%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid color-mix(in srgb,var(--line) 68%,transparent);font-family:var(--ui)}.mode{border:0;background:transparent;color:var(--muted);padding:8px 13px;border-radius:999px;cursor:pointer;font-size:.78rem;font-weight:850}.mode.active{background:var(--ink);color:var(--paper)}
.view[hidden]{display:none}.section{padding:50px 0;border-bottom:1px solid var(--line)}.section:last-child{border-bottom:0}.label{font-family:var(--ui);font-size:.66rem;text-transform:uppercase;letter-spacing:.13em;color:var(--accent);font-weight:900;margin-bottom:8px}.section h2{font-size:clamp(1.6rem,4vw,2.3rem);font-weight:500;line-height:1.2;letter-spacing:-.025em;margin:0 0 22px}.section h3{font-size:1.1rem;line-height:1.3;margin:34px 0 10px}.lede{font-size:1.15em;color:var(--muted)}
.reader-shell{width:min(100%,980px);margin:22px auto 0;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.reader-toolbar{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--paper-2);font-family:var(--ui);font-size:.73rem;color:var(--muted)}.reader-toolbar a{margin-left:auto;text-decoration:none;color:var(--accent);font-weight:800}.source-note{padding:11px 16px;border-bottom:1px solid var(--line);font-family:var(--ui);font-size:.7rem;color:var(--muted);background:color-mix(in srgb,var(--surface) 92%,var(--paper-2))}.source-content{min-height:64vh;padding:42px clamp(22px,6vw,70px);font-size:1em;line-height:1.82}.source-content.loading{display:grid;place-items:center;color:var(--muted);font-family:var(--ui);font-size:.85rem}.source-content h1,.source-content h2,.source-content h3,.source-content h4{font-family:var(--serif);font-weight:500;line-height:1.25}.source-content table{width:100%;border-collapse:collapse}.source-content td,.source-content th{vertical-align:top;padding:8px 6px;border-bottom:1px solid color-mix(in srgb,var(--line) 65%,transparent)}.source-content td:first-child{width:78px;color:var(--muted);font-family:var(--ui);font-size:.72rem}.source-content a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}.source-content img{max-width:100%;height:auto}.source-content .summary,.source-content [class*="summary"]{color:var(--muted)}.source-error{padding:34px;text-align:center;color:var(--muted);font-family:var(--ui);font-size:.86rem}.source-error a{color:var(--accent)}
.map-list{display:grid;gap:0;border-top:1px solid var(--line)}.map-item{display:grid;grid-template-columns:74px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}.range{font-family:var(--ui);font-size:.68rem;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:4px}.map-item h3{margin:0 0 5px;font-size:1.03rem}.map-item p{margin:0;color:var(--muted);font-size:.96rem}
details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;padding:19px 2px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-family:var(--ui);font-size:.88rem;font-weight:850}summary::-webkit-details-marker{display:none}summary:after{content:"+";font-size:1.2rem;color:var(--muted);font-weight:400}details[open] summary:after{content:"–"}.detail{padding:0 0 28px}.detail p:first-child{margin-top:0}.thread{padding:15px 0;border-top:1px solid var(--line)}.thread:last-child{border-bottom:1px solid var(--line)}.thread strong{font-family:var(--ui);font-size:.83rem}.tag{display:inline-flex;margin-left:7px;padding:2px 7px;border-radius:99px;background:var(--accent-soft);color:var(--accent);font-family:var(--ui);font-size:.62rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.claim{margin:22px 0;padding:18px 20px;border-radius:12px;background:var(--paper-2)}.claim-type{font-family:var(--ui);font-size:.64rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:var(--accent)}.claim.interpretation .claim-type{color:var(--green)}.claim.open .claim-type{color:var(--red)}
.notes-panel{display:grid;gap:18px}.note-block{border-top:1px solid var(--line);padding-top:18px}.note-block label{display:flex;justify-content:space-between;gap:12px;font-family:var(--ui);font-size:.72rem;color:var(--muted);margin-bottom:8px}.note-block textarea{width:100%;min-height:120px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);padding:14px 16px;outline:none;resize:vertical}.note-block textarea:focus{border-color:var(--accent)}.save-state{font-family:var(--ui);font-size:.68rem;color:var(--muted)}
.practice{margin:26px 0;padding:22px 24px;border:1px solid var(--line);border-radius:14px;background:var(--paper-2)}.practice h3{margin-top:0}.quiet{padding-left:17px;border-left:2px solid var(--accent);color:var(--muted)}.source-ledger a{color:var(--accent)}.book-nav{display:flex;justify-content:space-between;gap:20px;padding:42px 0;font-family:var(--ui);font-size:.8rem;color:var(--muted)}
.drawer-bg{position:fixed;inset:0;background:rgba(0,0,0,.24);z-index:108;opacity:0;pointer-events:none;transition:.2s}.drawer-bg.open{opacity:1;pointer-events:auto}.drawer{position:fixed;z-index:109;top:0;bottom:0;width:min(390px,92vw);background:var(--paper);box-shadow:var(--shadow);padding:70px 24px 30px;overflow:auto;transition:transform .25s}.drawer.left{left:0;transform:translateX(-105%)}.drawer.right{right:0;transform:translateX(105%)}.drawer.open{transform:none}.drawer-close{position:absolute;top:14px;right:14px}.drawer h2{font-family:var(--ui);font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.drawer a{display:block;text-decoration:none;padding:11px 0;border-bottom:1px solid var(--line);font-size:.92rem}.settings{display:grid;gap:18px}.setting label{font-family:var(--ui);font-size:.7rem;color:var(--muted);display:flex;justify-content:space-between}.setting input{width:100%;accent-color:var(--accent)}
.home{padding:clamp(70px,12vw,145px) 0 60px}.home h1{max-width:850px}.home p{max-width:650px;color:var(--muted);font-size:1.15rem}.primary{display:inline-flex;margin-top:24px;text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:3px;color:var(--accent);font-family:var(--ui);font-size:.84rem;font-weight:850}.chapter-index{border-top:1px solid var(--line)}.chapter-row{display:grid;grid-template-columns:44px 1fr auto;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);text-decoration:none}.chapter-row:hover .chapter-title{color:var(--accent)}.chapter-no{font-family:var(--ui);font-size:.72rem;color:var(--muted)}.chapter-title{font-size:1.14rem;line-height:1.25}.chapter-state{font-family:var(--ui);font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.chapter-row.locked{opacity:.45;pointer-events:none}
.focus .topbar,.focus .modebar,.focus .progress{display:none}.focus .hero{padding-top:65px}.focus-exit{display:none;position:fixed;top:12px;right:12px;z-index:140}.focus .focus-exit{display:block}
@media(max-width:760px){:root{--reading-size:18px;--leading:1.76}.page{padding:0 18px 60px}.brand-copy{display:none}.topbar{padding:0 7px}.btn{padding:0 8px}.reader-shell{margin-inline:-18px;width:calc(100% + 36px);border-radius:0;border-left:0;border-right:0}.source-content{padding:30px 18px}.map-item{grid-template-columns:1fr;gap:3px}.chapter-row{grid-template-columns:36px 1fr}.chapter-state{display:none}.book-nav{flex-direction:column}}
