:root{--bg:#f6f3ec;--paper:#fffdf8;--ink:#1d211d;--muted:#73776f;--line:#ded9cf;--accent:#284b3d;--accent2:#d97745;--soft:#e9efe9;--radius:22px;--shadow:0 18px 50px rgba(27,35,30,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.shell{width:min(1180px,calc(100% - 32px));margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(246,243,236,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(222,217,207,.7)}
.nav{height:78px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;flex:0 0 auto}.nav>nav{display:flex;gap:20px;margin-left:auto}.nav>nav a{font-size:14px;font-weight:700;color:#414741}.nav>nav a:hover{color:var(--accent)}
.search{display:flex;background:#fff;border:1px solid var(--line);border-radius:999px;padding:4px}.search input{width:180px;border:0;outline:0;background:transparent;padding:9px 12px}.search button{border:0;background:var(--accent);color:white;border-radius:999px;padding:9px 14px;font-weight:700}.nav-toggle{display:none;border:0;background:transparent;font-size:24px}
main{min-height:70vh}.hero{padding:88px 0 82px;overflow:hidden;background:radial-gradient(circle at 78% 10%,#d9e8db 0,transparent 30%),radial-gradient(circle at 10% 80%,#f0d9c8 0,transparent 24%)}
.hero .shell{max-width:900px;text-align:center}.eyebrow,.kicker{display:inline-block;font-size:12px;font-weight:900;letter-spacing:.16em;color:var(--accent2)}.hero h1{font-family:Georgia,serif;font-size:clamp(42px,7vw,78px);line-height:1.02;margin:18px 0 22px;font-weight:500}.hero h1 em{font-style:italic;color:var(--accent)}.hero p{max-width:720px;margin:0 auto;color:var(--muted);font-size:19px}
.hero-search{max-width:620px;margin:34px auto 0;background:white;border:1px solid var(--line);border-radius:18px;padding:7px;display:flex;box-shadow:var(--shadow)}.hero-search input{flex:1;border:0;outline:0;padding:14px 16px;background:transparent}.hero-search button,.btn{border:0;background:var(--accent);color:#fff;border-radius:13px;padding:13px 20px;font-weight:800;cursor:pointer}
.section{padding:72px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}.section-head h2,.page-head h1{font-family:Georgia,serif;font-weight:500;margin:6px 0 0;font-size:clamp(32px,4vw,48px)}.section-head>a{font-weight:800;color:var(--accent)}
.book-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:26px 18px}.book-card{min-width:0}.cover{display:block;aspect-ratio:2/3;border-radius:18px;overflow:hidden;background:#e8e5dc;box-shadow:0 12px 28px rgba(23,31,27,.12);transition:.25s transform,.25s box-shadow}.cover:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(23,31,27,.18)}.cover img{width:100%;height:100%;object-fit:cover}
.card-body{padding:14px 4px 0}.card-title{display:block;font-family:Georgia,serif;font-size:18px;font-weight:700;line-height:1.25;margin-bottom:5px}.author{font-size:13px;color:var(--muted)}.meta{display:flex;justify-content:space-between;gap:8px;margin-top:9px;font-size:11px;color:#8a8e87}.meta span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.page-head{padding:58px 0 30px}.page-head p{max-width:760px;color:var(--muted)}.pager{display:flex;gap:8px;justify-content:center;padding:42px 0 70px}.pager a{display:grid;place-items:center;min-width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:white;font-weight:800}.pager a.active{background:var(--accent);color:#fff;border-color:var(--accent)}
.taxonomy-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tax-card{padding:22px;background:var(--paper);border:1px solid var(--line);border-radius:18px;display:flex;justify-content:space-between;gap:20px;align-items:center}.tax-card strong{font-family:Georgia,serif;font-size:19px}.tax-card span{font-size:12px;color:var(--muted)}
.book-detail{padding:56px 0 20px}.book-top{display:grid;grid-template-columns:320px 1fr;gap:56px;align-items:start}.detail-cover img{width:100%;border-radius:22px;box-shadow:0 22px 60px rgba(22,31,27,.18)}.crumb{font-size:13px;color:var(--muted);margin-bottom:16px}.book-info h1{font-family:Georgia,serif;font-size:clamp(40px,5vw,68px);line-height:1.04;margin:0 0 12px;font-weight:500}.detail-author{font-size:20px;color:var(--accent);font-weight:800}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.chips span{background:var(--soft);border-radius:999px;padding:7px 12px;font-size:12px;font-weight:700}.lead{font-size:19px;color:#535950;max-width:760px}.view-stat{margin-top:20px;color:var(--muted);font-size:13px}.content{max-width:860px;margin:56px auto}
.prose{font-size:18px}.prose h1,.prose h2,.prose h3{font-family:Georgia,serif;line-height:1.18;margin:1.6em 0 .6em}.prose h2{font-size:34px}.prose h3{font-size:26px}.prose p{margin:0 0 1.2em}.prose ul,.prose ol{padding-left:24px}.prose a{text-decoration:underline;color:var(--accent)}
footer{margin-top:80px;background:#1f2d27;color:#eff4f0}.foot{padding:50px 0;display:flex;justify-content:space-between;gap:40px}.foot p{color:#aebbb3}.foot>div:last-child{display:grid;gap:8px}.copy{border-top:1px solid #33433b;text-align:center;padding:18px;color:#9dab9f;font-size:13px}
.empty{text-align:center;padding:100px 0}.empty h1{font-size:100px;margin:0;font-family:Georgia,serif}
.login-wrap{min-height:100vh;display:grid;place-items:center;padding:30px}.login-card{width:min(430px,100%);background:white;padding:34px;border-radius:24px;box-shadow:var(--shadow);display:grid;gap:18px}.login-card h1{margin:0;font-family:Georgia,serif}.login-card label,.panel label,.settings-form label{display:grid;gap:7px;font-weight:700;color:#464b45}.login-card input,.panel input,.panel textarea,.panel select,.settings-form input,.settings-form textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:12px;padding:11px 12px;outline:none}.login-card input:focus,.panel input:focus,.panel textarea:focus{border-color:var(--accent)}
.alert,.success{padding:12px 14px;border-radius:12px;margin-bottom:15px}.alert{background:#fff0ee;color:#9a3025}.success{background:#e8f5eb;color:#27623c}
.admin-shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr;background:#f1f2ef}.admin-shell>aside{background:#16231e;color:#fff;padding:25px 18px}.admin-brand{display:block;padding:0 10px 22px;border-bottom:1px solid #2d3c35}.admin-shell aside nav{display:grid;gap:5px;padding-top:20px}.admin-shell aside nav a{padding:10px 12px;border-radius:10px;color:#cbd5ce}.admin-shell aside nav a:hover{background:#24342d;color:white}.admin-main{padding:28px 34px;min-width:0}.admin-main>header h1{font-family:Georgia,serif;font-size:34px;margin:0 0 24px}
.panel{background:#fff;border:1px solid #dde1dc;border-radius:18px;padding:22px;box-shadow:0 10px 30px rgba(29,40,34,.04)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.panel-head form{display:flex;gap:8px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.stat{background:white;border-radius:18px;padding:22px;border:1px solid #dde1dc}.stat span{display:block;color:#697068;font-size:13px}.stat strong{display:block;font-size:32px;margin-top:5px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid #eceeea}th{font-size:12px;text-transform:uppercase;color:#747a73}.mini-cover{width:42px;height:60px;object-fit:cover;border-radius:6px}
.btn.small{padding:8px 12px;font-size:12px}.btn.full{width:100%}.editor-form{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .full{grid-column:1/-1}.label{display:block;font-weight:700;margin-bottom:7px}.editor-toolbar{display:flex;gap:6px;align-items:center;padding:8px;background:#eef1ed;border:1px solid var(--line);border-radius:12px 12px 0 0}.editor-toolbar button,.editor-toolbar select{border:1px solid #d7dbd5;background:white;border-radius:8px;padding:7px 9px}.rich-editor{min-height:360px;background:white;border:1px solid var(--line);border-top:0;border-radius:0 0 12px 12px;padding:18px;outline:none}.admin-cover{width:100%;border-radius:14px;margin:12px 0 18px}.edit-side{position:relative}.edit-side .panel{position:sticky;top:20px;display:grid;gap:14px}.two-col{display:grid;grid-template-columns:320px 1fr;gap:20px}.settings-form{display:grid;gap:20px;max-width:900px}
@media(max-width:1100px){.book-grid{grid-template-columns:repeat(4,1fr)}.nav>nav{display:none;position:absolute;left:16px;right:16px;top:70px;background:white;padding:14px;border-radius:16px;box-shadow:var(--shadow);flex-direction:column}.nav>nav.open{display:flex}.nav-toggle{display:block;margin-left:auto}.search{display:none}.taxonomy-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.shell{width:min(100% - 22px,1180px)}.nav{height:68px}.brand img{width:150px}.hero{padding:58px 0}.hero p{font-size:16px}.hero-search{border-radius:14px}.hero-search button{padding:10px 14px}.section{padding:48px 0}.book-grid{grid-template-columns:repeat(2,1fr);gap:22px 12px}.card-title{font-size:16px}.section-head{align-items:center}.taxonomy-grid{grid-template-columns:1fr}.book-top{grid-template-columns:1fr;gap:28px}.detail-cover{max-width:300px;margin:auto}.book-info h1{text-align:center}.detail-author{display:block;text-align:center}.chips{justify-content:center}.lead{text-align:center}.view-stat{text-align:center}.admin-shell{grid-template-columns:1fr}.admin-shell>aside{position:relative}.admin-main{padding:20px 12px}.stat-grid{grid-template-columns:repeat(2,1fr)}.editor-form{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.two-col{grid-template-columns:1fr}.panel{overflow:auto}}
