:root{--bg:#120e0b;--panel:#1d1712;--ink:#efe3c8;--soft:#c9b894;--gold:#d7ae60;--line:#3a2e22;color-scheme:dark}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.6 Georgia,'Times New Roman',serif}
a{color:var(--gold)}a:hover{color:#f3d08a}
.top{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--line)}
.top .home{font-size:15px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;color:var(--soft)}.top nav{display:flex;gap:18px;flex-wrap:wrap;font-size:16px}.top .enter{color:var(--ink)}
main{max-width:980px;margin:0 auto;padding:40px 24px}
.book{display:grid;grid-template-columns:minmax(180px,300px) 1fr;gap:40px;align-items:start}
@media (max-width:720px){.book{grid-template-columns:1fr}.cover{max-width:220px}}
.cover{width:100%;height:auto;border-radius:4px;box-shadow:0 18px 40px rgba(0,0,0,.55)}
.cover.drawn{aspect-ratio:2/3;background:var(--bg);background:linear-gradient(160deg,var(--bg),#070605);border:2px solid var(--fg);outline:1px solid var(--fg);outline-offset:-10px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:26px 18px;text-align:center;color:var(--fg)}
.cover.drawn small{letter-spacing:.2em;font-size:11px}.cover.drawn strong{font-size:22px;line-height:1.25}.cover.drawn span{font-style:italic;font-size:14px}
.shelf{margin:0;color:var(--soft);font-size:14px;letter-spacing:.14em;text-transform:uppercase}
h1 small{display:block;font-size:.4em;color:var(--soft);margin-top:.3em}h1{font-weight:normal;font-size:clamp(30px,5vw,44px);line-height:1.15;margin:.2em 0 .3em}
.author{margin:0 0 1.4em;font-style:italic;color:var(--soft)}
blockquote{margin:0 0 1.6em;padding:20px 24px;background:var(--panel);border-left:3px solid var(--gold);border-radius:0 6px 6px 0}blockquote p{margin:0 0 .6em}
cite{display:block;font-size:15px;color:var(--soft)}cite:before{content:'— '}
.read{display:inline-block;margin:0 0 1.8em;padding:14px 22px;background:var(--gold);color:#1a120a;text-decoration:none;border-radius:6px;font-size:18px}.read:hover{background:#f0c878;color:#1a120a}
.plain{display:inline-block;margin:0 0 1.8em 14px;color:var(--gold);font-size:16px}.plain:hover{color:#f0c878}
dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;margin:0;font-size:16px}dt{color:var(--soft)}dd{margin:0}
.more,.shelf-list{max-width:980px;margin:0 auto;padding:0 24px 24px}.more h2,.shelf-list h2{font-weight:normal;font-size:22px;border-bottom:1px solid var(--line);padding-bottom:6px}
.more ul,.shelf-list ul{list-style:none;margin:0;padding:0;columns:2 280px;column-gap:32px}.more li,.shelf-list li{break-inside:avoid;padding:4px 0}.more li span,.shelf-list li span{display:block;font-size:14px;color:var(--soft)}
.catalogue .shelf-list{padding:0 0 18px}.intro{color:var(--soft)}
.filter{display:block;margin:0 0 28px;color:var(--soft);font-size:16px}.filter input{display:block;width:100%;max-width:420px;margin-top:6px;padding:10px 12px;font:inherit;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:6px}
ul.set-list{columns:1}.set-text{padding:10px 0 14px!important;border-bottom:1px solid var(--line)}.set-text h3{margin:0 0 .3em;font-weight:normal;font-size:20px}.set-text h3 span{display:inline;font-size:15px;color:var(--soft);font-style:italic;margin-left:.4em}
.set-text p{margin:.2em 0;font-size:16px}.set-text .ways{font-size:15px}code{font-size:.9em;color:var(--ink);background:var(--panel);padding:1px 5px;border-radius:4px}
footer{border-top:1px solid var(--line);padding:24px;text-align:center;color:var(--soft);font-size:15px}
