/* library-theme.css — หอคัมภีร์ (ร้านอ่านนิยาย): รักเขียวเข้ม + ทองคำเปลว + กระดาษ
   สเปก: docs/mockups/library_v1_lacquer.html · พี่น้องของเตาหลอมหมึก (docs/mockups/studio_v3_ink.html)
   ขอบเขต: ทุกกฎอยู่ใต้ body.lib (ตั้งใน base.html เมื่อไม่ใช่หน้า เตาหลอมหมึก/พื้นที่นักเขียน)
   จึงไม่แตะ is_forge / studio / credits / Creator Zone. ตัวแปร token ของ site.css ถูกทับที่ body.lib
   (สีทั้งหมดใน site.css อ้างผ่าน var()) ทำให้ปุ่ม/การ์ด/ฟอร์มเดิมเปลี่ยนโทนตามโดยไม่ต้องแก้ทีละกฎ */

body.lib{
  --lac:#12302c;--lac2:#1d4640;--gold:#c9a24a;--gold2:#e6c97a;--sheet:#fffcf4;--rule:#e5dccb;--seal:#b3261e;--jade:#3e7c5a;
  --bg:#f7f1e3;--paper:#f7f1e3;--surface:#fffcf4;--card:#fffcf4;--soft:#efe7d2;
  --text:#1f1c18;--ink:#1f1c18;--muted:#776f63;
  --brand:#c9a24a;--brand-ink:#12302c;--accent:#1d4640;
  --line:#e5dccb;--line-strong:#cfc3a9;--border:#e5dccb;
  --danger:#b3261e;--danger-ink:#fff;--success:#3e7c5a;
  --radius:2px;--radius-card:2px;--radius-cover:2px;--radius-chip:2px;
  --shadow-soft:0 1px 3px rgba(18,48,44,.18);--focus-ring:rgba(201,162,74,.55);
  --font-sans:"Noto Sans Thai Looped","Anuphan","IBM Plex Sans Thai",system-ui,sans-serif;
  --font-head:"Taviraj","Noto Serif Thai",serif;
  color-scheme:light;
  font-family:var(--font-sans);
}
body.lib h1,body.lib h2{font-family:var(--font-head);font-weight:700}
body.lib a:focus-visible,body.lib button:focus-visible,body.lib input:focus-visible,body.lib select:focus-visible,body.lib summary:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:2px}
body.lib ::selection{background:var(--gold2);color:var(--lac)}

/* ---------- ปุ่ม / ฟอร์ม ---------- */
.lib .button{border-radius:2px;font-weight:600;background:var(--gold);border-color:var(--gold);color:var(--lac)}
.lib .button:hover{filter:brightness(.95)}
.lib .button-outline{background:transparent;color:var(--lac2);border-color:var(--lac2)}
.lib .button-outline:hover{background:var(--soft)}
.lib .button-disabled{background:var(--soft);border-color:var(--rule);color:var(--muted)}
.lib .text-button{color:var(--lac2)}
.lib .see-more{color:var(--lac2)}.lib .see-more:hover{color:var(--lac)}
.lib .search-form input,.lib .search-form select,.lib .catalog-search-form input,.lib .catalog-search-form select{background:var(--sheet);border-color:var(--line-strong);border-radius:2px}
.lib .catalog-search-form>button.button{background:var(--lac);border-color:var(--lac);color:var(--gold2)}
.lib .messages{border-left-color:var(--gold);background:var(--sheet);border-radius:2px}

/* ---------- หัวเว็บ ---------- */
.lib .demo-bar{background:#0d2522;border-bottom:1px solid #264a44;color:#b9ad8d;font-size:11px;padding:4px 16px}
.lib .demo-bar .status-dot{background:var(--gold)}
.lib .site-top.lib-top{background:var(--lac);color:#efe7d4;border-bottom:2px solid var(--gold)}
.lib .lib-header{max-width:1280px;padding:12px 22px;gap:14px;flex-wrap:nowrap;justify-content:flex-start}
.lib .lib-header .wordmark{color:#efe7d4;gap:12px;flex:0 0 auto}
.lib .lib-header .brand-stamp{width:36px;height:36px;background:transparent;border:1.5px solid var(--gold);color:var(--gold2);border-radius:2px;font:400 22px/1 "Ma Shan Zheng","Taviraj",serif;transform:none}
.lib .lib-header .wordmark-text{font-family:var(--font-head);font-weight:700;font-size:21px;letter-spacing:.5px;color:#efe7d4}
.lib .lib-header .wordmark small{display:block;font:400 11px/1.3 var(--font-sans);letter-spacing:0;color:#b9ad8d}
.lib .lib-header .main-nav{max-width:none;margin:0 0 0 14px;padding:0;gap:18px;overflow:visible;flex:0 0 auto;align-items:center}
.lib .lib-header .main-nav a{min-height:40px;padding:0 0 2px;margin:0;font-size:14px;color:#d9cfb6;border-bottom:2px solid transparent}
.lib .lib-header .main-nav a:hover{color:var(--gold2)}
.lib .lib-header .main-nav a[aria-current="page"]{color:var(--gold2);font-weight:500;border-bottom-color:var(--gold)}
.lib .lib-search{margin:0 0 0 auto;flex:0 1 230px;min-width:150px}
.lib .lib-search input{width:100%;min-height:38px;padding:7px 12px;font:inherit;font-size:13px;color:#efe7d4;background:rgba(255,255,255,.08);border:1px solid #3f5f58;border-radius:2px}
.lib .lib-search input::placeholder{color:#a79d83}
.lib .lib-search input:focus{border-color:var(--gold);background:rgba(255,255,255,.12)}
.lib .forge-link{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;min-height:40px;padding:5px 10px;border:1px solid #6b4a32;border-radius:2px;background:transparent;color:#e9a76f!important;font:500 12.5px/1 var(--font-sans);white-space:nowrap;box-shadow:none}
.lib .forge-link:hover{background:rgba(233,167,111,.12)!important}
.lib .forge-link .forge-seal{font:400 17px/1 "Ma Shan Zheng",serif;color:#ff9d5c}
.lib .lib-header .account-menu{flex:0 0 auto;margin-left:0;color:#efe7d4;gap:8px}
.lib .lib-header .user-label{color:#d9cfb6}
.lib .lib-header .text-button{color:#d9cfb6;min-height:40px}
.lib .lib-header .notification-bell{color:#efe7d4!important}
.lib .lib-header .button{min-height:40px}
.lib .lib-header .lib-login{background:transparent;border-color:var(--gold);color:var(--gold2)}
.lib .lib-header .lib-login:hover{background:rgba(230,201,122,.12)}
.lib .lib-header .header-signup{background:var(--gold);color:var(--lac);border-color:var(--gold)}
.lib .lib-footer-logout{display:none;margin:0}
@media(max-width:1180px){
  .lib .lib-header{flex-wrap:wrap;row-gap:6px}
  .lib .lib-header .account-menu{margin-left:auto}
  .lib .lib-header .forge-link{margin-left:auto}
  .lib .lib-header .forge-link+.account-menu{margin-left:0}
  .lib .lib-header .main-nav{order:5;margin-left:0}
  .lib .lib-search{order:6;flex:1 1 180px;margin-left:12px}
}

/* ---------- แถบเมนูล่าง (มือถือเท่านั้น) ---------- */
.lib .lib-tabbar{display:none}
@media(max-width:760px){
  .lib .lib-header{padding:10px 14px;flex-wrap:nowrap;gap:10px}
  .lib .lib-header .wordmark-text{font-size:18px;letter-spacing:0}
  .lib .lib-header .wordmark small,.lib .lib-header .main-nav,.lib .lib-search,.lib .lib-header .user-label,.lib .lib-header .lib-logout,.lib .lib-header .lib-login,.lib .lib-header .header-signup{display:none}
  .lib .lib-header .forge-link{margin-left:auto}
  .lib .lib-header .forge-link+.account-menu{margin-left:0}
  .lib .lib-footer-logout{display:block}
  .lib .lib-tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--lac);border-top:2px solid var(--gold);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -6px 18px rgba(0,0,0,.18)}
  .lib .lib-tabbar a{flex:1 1 0;min-width:0;min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 2px;color:#cfc4a8;font-size:11px;line-height:1.2;text-align:center}
  .lib .lib-tabbar svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .lib .lib-tabbar a[aria-current="page"]{color:var(--gold2)}
  .lib .lib-tabbar a[aria-current="page"] svg{fill:rgba(230,201,122,.18)}
  /* หน้าอ่านต้องไม่มีอะไรทับแถบเปลี่ยนตอน: ซ่อนแถบล่างตอนอ่าน */
  body.lib:has(.reader-shell) .lib-tabbar{display:none}
  .lib .site-footer{padding-bottom:calc(84px + env(safe-area-inset-bottom))}
  body.lib:has(.reader-shell) .site-footer{padding-bottom:32px}
}
@media(max-width:380px){.lib .lib-header .wordmark-text{font-size:17px}.lib .lib-header .forge-link{padding:5px 8px}}

/* ---------- ท้ายเว็บ ---------- */
.lib .site-footer{max-width:none;margin:40px 0 0;padding:28px max(22px,calc((100% - 1236px)/2)) 28px;background:var(--lac);color:#cfc4a8;border-top:2px solid var(--gold);gap:16px}
.lib .site-footer strong{font-family:var(--font-head);color:var(--gold2);font-size:20px}
.lib .site-footer strong:before{content:"經";display:inline-grid;place-items:center;width:28px;height:28px;margin-right:10px;border:1.5px solid var(--gold);border-radius:2px;font:400 17px/1 "Ma Shan Zheng",serif;color:var(--gold2);vertical-align:middle}
.lib .site-footer p,.lib .site-footer>small{color:#a79d83}
.lib .site-footer>small{border-top-color:#264a44}
.lib .site-footer a{color:#d9cfb6}.lib .site-footer a:hover{color:var(--gold2)}
.lib .site-footer .text-button{color:#d9cfb6;min-height:32px;padding:0}

/* ---------- หัวข้อ / เครื่องหมายตราประทับ ---------- */
.lib h1.page-title,.lib .section-heading h2,.lib .contents-layout h2,.lib .lh-sec-h h2{font-family:var(--font-head);font-weight:700}
.lib h1.page-title:before,.lib .section-heading h2:before,.lib .contents-layout .section-heading h2:before,.lib .lh-sec-h h2:before{content:"";display:inline-block;width:8px;height:8px;margin-right:10px;background:var(--seal);transform:rotate(45deg);vertical-align:middle;position:relative;top:-2px}
.lib .section-heading{border-bottom:1px solid var(--rule);padding-bottom:8px}
.lib .eyebrow{color:var(--muted);letter-spacing:.3px}
.lib .quiet,.lib .lead{color:var(--muted)}

/* ---------- ปกหนังสือ / ป้าย (ใช้ร่วมกันทุกหน้า) ---------- */
.lib .cover-link{position:relative}
.lib .lh-ribbon{position:absolute;top:8px;left:0;z-index:2;padding:2px 8px;font:600 11px/1.5 var(--font-sans);border-radius:0}
.lib .lh-ribbon.r-free{background:var(--jade);color:#fff}
.lib .lh-ribbon.r-vip{background:var(--gold);color:var(--lac)}
.lib .lh-ribbon.r-end{background:#fff;color:var(--ink)}
.lib .tone-1{background:linear-gradient(140deg,#3b6d8f,#13233a)}.lib .tone-2{background:linear-gradient(140deg,#a3472b,#3a1410)}.lib .tone-3{background:linear-gradient(140deg,#6d5b9c,#1e1636)}
.lib .tone-4{background:linear-gradient(140deg,#2f7a5c,#0f2a20)}.lib .tone-5{background:linear-gradient(140deg,#b38a3c,#3a2a0c)}.lib .tone-6{background:linear-gradient(140deg,#8f3b62,#2a0f1d)}
.lib .book-cover{color:#f6ecd3;border-left:0;border-radius:2px;box-shadow:0 2px 8px rgba(18,48,44,.28)}
.lib .book-cover{padding-top:32px}
.lib .book-rail .book-cover strong{font-size:15px;margin-top:6px}
.lib .book-cover:after{border-color:rgba(255,255,255,.28);opacity:1}
.lib .book-cover strong{font-family:var(--font-head);font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.5)}
.lib .cover-mark{font-family:"Ma Shan Zheng","Taviraj",serif;font-style:normal;opacity:.5}
.lib .book-cover-image{border-radius:2px;box-shadow:0 2px 8px rgba(18,48,44,.28)}
.lib .cover-link:hover .book-cover,.lib .cover-link:hover .book-cover-image{box-shadow:0 8px 20px rgba(18,48,44,.38)}
.lib .book-meta h3{font-weight:600}
.lib .book-meta h3 a:hover{color:var(--lac2)}
.lib .book-tags .eyebrow,.lib .book-meta .eyebrow{background:transparent;border:1px solid var(--rule);border-radius:2px;color:var(--muted);padding:0 7px}
.lib .badge-official{background:var(--lac);color:var(--gold2);border-radius:2px}
.lib .format-audio{border-color:var(--gold);background:rgba(201,162,74,.16);color:var(--lac);border-radius:2px}
.lib .format-text{border-radius:2px;border-color:var(--rule)}
.lib .book-rail>.book-card{flex-basis:140px}

/* ---------- หน้าแรก ---------- */
.lib .lh-wrap{max-width:1280px;margin:0 auto;padding:0 26px}
.lib .lh-hero{background:linear-gradient(180deg,var(--lac2),var(--lac));color:#efe7d4}
.lib .lh-hero-in{max-width:1280px;margin:0 auto;padding:30px 26px;display:grid;grid-template-columns:1.1fr 1fr;gap:26px;align-items:center}
.lib .lh-eyebrow{color:var(--gold2);font-size:12px;letter-spacing:1px;margin:0}
.lib .lh-hero h1{font-size:34px;margin:6px 0 10px;line-height:1.35;color:#fff;letter-spacing:0;overflow-wrap:anywhere}
.lib .lh-hero-desc{color:#cfc4a8;margin:0 0 16px;line-height:1.7;max-width:36rem}
.lib .lh-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.lib .lh-tag{font-size:12px;border:1px solid #4e6f67;color:#d9cfb6;padding:3px 9px;border-radius:2px}
.lib .lh-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.lib .lh-actions form{margin:0}
.lib .lh-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 18px;font:600 15px/1.3 var(--font-sans);border-radius:2px;border:1px solid transparent;cursor:pointer;text-align:center}
.lib .lh-btn.gold{background:var(--gold);color:var(--lac);border-color:var(--gold)}
.lib .lh-btn.gold:hover{background:var(--gold2)}
.lib .lh-btn.line{background:transparent;border-color:var(--gold);color:var(--gold2)}
.lib .lh-btn.line:hover{background:rgba(230,201,122,.12)}
.lib .lh-stack{position:relative;height:260px;max-width:440px;width:100%;justify-self:center}
.lib .lh-stack>a{position:absolute;display:block;width:150px;height:200px;box-shadow:0 14px 30px rgba(0,0,0,.45);border-radius:2px;overflow:hidden}
.lib .lh-stack>a:nth-child(1){left:20px;top:30px;transform:rotate(-6deg)}
.lib .lh-stack>a:nth-child(2){left:140px;top:6px;z-index:2;width:170px;height:227px}
.lib .lh-stack>a:nth-child(3){left:285px;top:34px;transform:rotate(6deg)}
.lib .lh-stack.n1>a:nth-child(1){left:calc(50% - 85px);top:6px;z-index:2;width:170px;height:227px;transform:none}
.lib .lh-stack.n2>a:nth-child(1){left:calc(50% - 150px);transform:rotate(-6deg)}
.lib .lh-stack.n2>a:nth-child(2){left:calc(50% - 30px)}
.lib .lh-stack .lh-cv{width:100%;height:100%}
/* ปก: รูปจริงหรือสีที่สร้างให้ */
.lib .lh-cv{position:relative;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;aspect-ratio:3/4;padding:10px;color:#fff;border-radius:2px}
.lib .lh-cv:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.55))}
.lib .lh-cv.has-img:before{display:none}
.lib .lh-cv img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lib .lh-cv b{position:relative;font-family:var(--font-head);font-size:15px;line-height:1.3;text-shadow:0 1px 3px rgba(0,0,0,.5);overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.lib .lh-sec{max-width:1280px;margin:0 auto;padding:22px 26px 6px}
.lib .lh-sec-h{display:flex;align-items:baseline;gap:12px;margin-bottom:12px;border-bottom:1px solid var(--rule);padding-bottom:8px}
.lib .lh-sec-h h2{font-size:22px;margin:0}
.lib .lh-sec-h a{margin-left:auto;font-size:13px;color:var(--lac2);white-space:nowrap;padding:8px 0}
.lib .lh-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.lib .lh-book{min-width:0}
.lib .lh-book>a.lh-cvlink{display:block;position:relative;transition:transform .15s}
.lib .lh-book>a.lh-cvlink:hover{transform:translateY(-3px)}
.lib .lh-book .lh-cv{box-shadow:var(--shadow-soft)}
.lib .lh-meta{margin-top:7px}
.lib .lh-meta a{display:block}
.lib .lh-meta b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;line-height:1.35;font-weight:600;overflow-wrap:anywhere}
.lib .lh-meta small{color:var(--muted);font-size:12px;display:block}
.lib .lh-chips{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 6px}
.lib .lh-chip{display:inline-flex;align-items:center;min-height:40px;font-size:13px;padding:0 14px;border:1px solid var(--rule);background:var(--sheet);border-radius:2px;white-space:nowrap}
.lib .lh-chip:hover{border-color:var(--gold)}
.lib .lh-chip.on{background:var(--lac);color:var(--gold2);border-color:var(--lac)}
.lib .lh-split{display:grid;grid-template-columns:1.4fr 1fr;gap:26px}
.lib .lh-split>div{min-width:0}
.lib .lh-update{background:var(--sheet);border:1px solid var(--rule)}
.lib .lh-up{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:11px 14px;border-bottom:1px solid var(--rule);font-size:14px;min-height:56px;align-items:center}
.lib .lh-up:last-child{border-bottom:0}
.lib .lh-up:hover{background:var(--soft)}
.lib .lh-up small{color:var(--muted);display:block}
.lib .lh-up .t{color:var(--jade);font-size:12px;white-space:nowrap}
.lib .lh-up b{overflow-wrap:anywhere}
.lib .lh-rank{background:var(--sheet);border:1px solid var(--rule);padding:6px 14px}
.lib .lh-rk{display:grid;grid-template-columns:34px 46px minmax(0,1fr);gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid var(--rule);min-height:64px}
.lib .lh-rk:last-child{border-bottom:0}
.lib .lh-rk .n{font-family:var(--font-head);font-size:26px;color:var(--gold);text-align:center;line-height:1}
.lib .lh-rk .lh-cv{width:46px;padding:0}
.lib .lh-rk .lh-cv:before{display:none}
.lib .lh-rk b{font-size:14px;display:block;overflow-wrap:anywhere}
.lib .lh-rk small{color:var(--muted);font-size:12px}
.lib .lh-writer{max-width:1228px;margin:22px auto 26px;background:var(--lac);color:#efe7d4;display:flex;gap:18px;align-items:center;padding:18px 22px;border-left:4px solid var(--gold)}
.lib .lh-writer>div{flex:1;min-width:0}
.lib .lh-writer h2{font-size:20px;margin:0 0 4px;color:#fff}
.lib .lh-writer p{margin:0;color:#cfc4a8;font-size:13px}
.lib .lh-shelf{max-width:1280px;margin:0 auto;padding:22px 26px 6px}
.lib .lh-shelf .section-heading{margin-bottom:14px}
.lib .lh-shelf .book-rail{padding-left:0;padding-right:0;margin:0}
.lib .audio-discovery{max-width:1280px}
.lib .audio-empty-state{background:var(--sheet);border-color:var(--rule);border-radius:2px}
.lib .audio-empty-mark{background:rgba(201,162,74,.18);color:var(--lac2);border-radius:2px}
.lib .audio-empty-state>.button{background:var(--gold);border-color:var(--gold);color:var(--lac)}
.lib .audio-discovery .bookly-section-heading .eyebrow{color:var(--muted)}
.lib .text-catalog-rail{border-top:0}
@media(max-width:1000px){.lib .lh-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:860px){.lib .lh-hero-in{grid-template-columns:1fr}.lib .lh-split{grid-template-columns:1fr}}
@media(max-width:760px){
  .lib .lh-wrap,.lib .lh-sec,.lib .lh-shelf{padding-left:16px;padding-right:16px}
  .lib .lh-sec{padding-top:18px}
  .lib .lh-hero-in{padding:18px 16px;gap:18px}
  .lib .lh-hero h1{font-size:25px}
  .lib .lh-hero-desc{font-size:14px}
  .lib .lh-stack{height:196px;max-width:330px}
  .lib .lh-stack>a{width:110px;height:147px}
  .lib .lh-stack>a:nth-child(1){left:0;top:30px}
  .lib .lh-stack>a:nth-child(2){left:calc(50% - 62px);top:6px;width:125px;height:167px}
  .lib .lh-stack>a:nth-child(3){left:auto;right:0;top:34px}
  .lib .lh-stack.n1>a:nth-child(1){left:calc(50% - 62px);width:125px;height:167px}
  .lib .lh-stack.n2>a:nth-child(1){left:calc(50% - 115px)}
  .lib .lh-stack.n2>a:nth-child(2){left:calc(50% - 8px)}
  .lib .lh-row{display:flex;overflow-x:auto;gap:12px;padding:0 16px 8px;margin:0 -16px;scroll-snap-type:x proximity;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
  .lib .lh-row .lh-book{flex:0 0 112px;scroll-snap-align:start}
  .lib .lh-chips{flex-wrap:nowrap;overflow-x:auto;padding:0 16px 4px;margin:4px -16px 6px;scrollbar-width:none}
  .lib .lh-chips::-webkit-scrollbar{display:none}
  .lib .lh-chip{flex:0 0 auto}
  .lib .lh-writer{margin:18px 16px 24px;flex-direction:column;align-items:flex-start;padding:18px 16px}
  .lib .lh-writer .lh-btn{width:100%}
  .lib .lh-rank{padding:4px 12px}
  .lib .book-rail>.book-card{flex-basis:118px}
}

/* ---------- ค้นหา / หมวด ---------- */
.lib .category-tabs{border-bottom-color:var(--rule)}
.lib .category-tabs a{color:var(--muted);font-size:14px;min-height:44px;display:inline-flex;align-items:center}
.lib .category-tabs a:hover{color:var(--lac)}
.lib .category-tabs a[aria-current="page"]{color:var(--lac);border-bottom-color:var(--gold)}
.lib .empty-state{border-color:var(--line-strong);background:var(--sheet);border-radius:2px}

/* ---------- หน้าเรื่อง ---------- */
.lib .detail-copy h1{color:var(--lac)}
.lib .back-link{color:var(--lac2)}
.lib .inline-facts{background:var(--sheet);border-color:var(--rule);border-radius:2px}
.lib .detail-actions .button-outline{border-color:var(--lac2)}
.lib .chapter-group{background:var(--sheet);border-color:var(--rule);border-radius:2px}
.lib .chapter-group>summary{min-height:48px;font-family:var(--font-head)}
.lib .chapter-group[open]>summary{border-bottom:1px solid var(--rule);background:rgba(201,162,74,.1)}
.lib .group-badge{font-family:var(--font-sans)}
.lib .group-badge.is-free{color:var(--jade)}
.lib .chapter-list a:hover{background:var(--soft)}
.lib .chapter-list li.is-locked small{color:var(--muted)}
.lib .chapter-list small{color:var(--lac2)}
.lib .chapter-number{color:var(--gold);font-family:var(--font-head);font-weight:700}
.lib .pack-veil{background:color-mix(in srgb,var(--sheet) 78%,transparent)}
.lib .notice-box,.lib .read-options{background:var(--sheet);border:1px solid var(--rule);border-left:4px solid var(--gold);border-radius:2px;padding:16px 18px}
.lib .adult-notice{border-radius:2px}
.lib .lock-card{background:var(--sheet);border-color:var(--rule);border-radius:2px}
.lib .lock-icon{background:rgba(201,162,74,.22)}

/* ---------- หน้าอ่าน: เปลี่ยนเฉพาะกรอบ ไม่แตะธีมกระดาษ/ซีเปีย/มืดและตัวหนังสือ ---------- */
.lib .reader-toolbar{border-bottom:2px solid var(--gold)}
.lib .reader-toolbar>a{font-weight:500}
.lib .reader-controls>button{border-radius:2px;min-height:40px}
.lib .reader-controls>.reader-themes>button,.lib .theme-swatch{border-radius:2px}
.lib .theme-swatch[aria-pressed="true"]{outline:2px solid var(--gold);outline-offset:2px}
.lib .reading-page h1{font-family:var(--font-head)}
.lib .reading-divider{background:var(--gold)}
.lib .chapter-navigation{border-top:2px solid var(--gold)}
.lib .chapter-navigation .button{border-radius:2px}
.lib .chapter-navigation .button:not(.button-outline){background:var(--gold);border-color:var(--gold);color:var(--lac)}
.lib .reader-shell[data-theme="dark"] .chapter-navigation .button:not(.button-outline){background:var(--gold);color:var(--lac)}
.lib .nav-toc{border-radius:2px}

@media(prefers-reduced-motion:reduce){.lib .lh-book>a.lh-cvlink{transition:none}.lib .lh-book>a.lh-cvlink:hover{transform:none}}
