.review-panel > header { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; }
.rating-summary { text-align:right; }
.rating-summary b, .rating-summary span, .rating-summary small { display:block; }
.rating-summary b { font:500 40px Georgia,serif; }
.rating-summary span { color:#d2a843; font-size:22px; letter-spacing:2px; }
.rating-summary small { color:#789084; font-size:12px; }
.review-panel form { margin-top:28px; padding:22px; border:1px solid #d7e6dc; border-radius:14px; background:#f7fbf8; }
.honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.star-picker { display:flex; align-items:center; gap:5px; margin-bottom:17px; }
.star-rating-field > span { display:block; margin-bottom:8px; color:#557064; font-size:14px; font-weight:800; }
.star-rating-field .star-picker { width:max-content; flex-direction:row-reverse; justify-content:flex-end; }
.star-picker input { position:absolute; opacity:0; pointer-events:none; }
.star-picker label { min-width:38px; color:#cbd6cf; font-size:36px; line-height:1; cursor:pointer; transition:.15s; }
.star-picker input:checked ~ label, .star-picker label:hover, .star-picker label:hover ~ label { color:#d2a843; text-shadow:0 2px 10px #d2a84355; }
.star-picker input:focus-visible + label { outline:2px solid #087247; outline-offset:3px; border-radius:4px; }
.book-profile-actions-mobile { display:none!important; }
.review-fields { display:grid; gap:12px; }
.review-fields input, .review-fields textarea { width:100%; box-sizing:border-box; padding:13px 15px; border:1px solid #cddfd3; border-radius:10px; background:#fff; color:#244c37; font:16px/1.5 inherit; }
.review-fields textarea { resize:vertical; }
.review-fields button { justify-self:start; padding:12px 20px; border:0; border-radius:999px; color:#fff; background:#087247; font-weight:850; cursor:pointer; }
.comment-list { margin-top:25px; }
.comment-list article { padding:18px 0; display:grid; grid-template-columns:42px 1fr; gap:13px; border-top:1px solid #e1ebe4; }
.comment-list article > span { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; color:#fff; background:#287858; font:700 19px Georgia,serif; }
.comment-list article header { display:flex; justify-content:space-between; gap:14px; }
.comment-list article p { margin:8px 0 0; color:#4f655a; line-height:1.65; }
.comment-rating { color:#b98208!important; letter-spacing:1px; }
.comments-empty { padding:25px; text-align:center; color:#74877d; border:1px dashed #c9dacf; border-radius:12px; }
.review-success { max-width:1220px; margin:18px auto; padding:13px 17px; border:1px solid #a8d0b7; border-radius:12px; color:#175a38; background:#e9f7ed; font-weight:800; }

/* Kích thước chữ PC: ưu tiên dễ đọc trong toàn bộ các tầng của Võ Kiếm Các. */
.kc-header nav { font-size:16px; }
.kc-heading small, .book-summary header small, .book-chapters header small, .review-panel header small, .book-detail-aside > div > small { font-size:15px; }
.kc-book small, .kc-featured small, .book-profile-info > p { font-size:14px; }
.book-rating { display:block; margin-top:8px; color:#c59220; font-size:13px; font-weight:850; letter-spacing:.4px; }
.kc-original-list { margin-top:28px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; text-align:left; }
.kc-original-list a { padding:12px; display:grid; grid-template-columns:62px 1fr; gap:13px; align-items:center; border:1px solid #b9e5ca40; border-radius:13px; color:#eef9f1; background:#ffffff0b; text-decoration:none; }
.kc-original-list img { width:62px; height:88px; object-fit:cover; border-radius:4px 8px 8px 4px; }
.kc-original-list strong, .kc-original-list small { display:block; }
.kc-original-list strong { font:600 17px Georgia,serif; }
.kc-original-list small { margin-top:6px; color:#a9cdb8; font-size:12px; }
.chapter-list > a { min-height:57px; font-size:16px; }
.chapter-list b, .chapter-list i { font-size:13px; }
.related-books b { font-size:16px; }
.related-books small { font-size:13px; }

.reader-shell { max-width:1600px; margin:auto; padding:24px 2vw 70px; }
.reader-topbar { min-height:58px; padding:10px 16px; display:flex; justify-content:space-between; align-items:center; gap:20px; border:1px solid #d7e4db; border-radius:15px; background:#fff; box-shadow:0 8px 28px rgb(22 68 42/7%); }
.reader-topbar > a { color:#286546; font-size:16px; font-weight:850; text-decoration:none; }
.reader-tools { display:flex; align-items:center; gap:18px; }
.reader-tools button { padding:10px 16px; border:1px solid #b8d6c4; border-radius:999px; color:#286146; background:#eef8f1; font-weight:850; cursor:pointer; }
.reader-tools button[aria-pressed="true"] { color:#fff; background:#087247; }
.reader-tools label { display:flex; align-items:center; gap:9px; color:#526b5f; font-size:14px; font-weight:750; }
.reader-tools input { width:130px; accent-color:#087247; }
.reader-tools output { min-width:18px; color:#087247; font-weight:900; }
.reader-layout { margin-top:20px; display:grid; grid-template-columns:310px minmax(0,1fr); gap:22px; align-items:start; }
.reader-chapters { position:sticky; top:18px; overflow:hidden; border:1px solid #d7e4db; border-radius:17px; background:#fff; box-shadow:0 12px 32px rgb(27 74 46/8%); }
.reader-chapters header { padding:22px; border-bottom:1px solid #dce8e0; background:linear-gradient(135deg,#eaf6ed,#fff); }
.reader-chapters small { color:#3d805d; font-size:12px; font-weight:900; letter-spacing:1.4px; }
.reader-chapters h2 { margin:7px 0 5px; font:500 28px Georgia,serif; }
.reader-chapters header span { color:#71867b; font-size:13px; }
.reader-chapters nav { max-height:calc(100vh - 210px); overflow:auto; }
.reader-chapters a { min-height:58px; padding:10px 13px; display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:8px; border-bottom:1px solid #e8eeea; color:#496054; text-decoration:none; }
.reader-chapters a:hover, .reader-chapters a.active { background:#e9f6ed; color:#0e6743; }
.reader-chapters a.active { box-shadow:inset 4px 0 #087247; }
.reader-chapters a.locked { color:#849087; }
.reader-chapters b { font-size:14px; }
.reader-chapters span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:15px; }
.reader-chapters i { font-size:10px; font-style:normal; font-weight:900; color:#52806a; }
.reader-book { min-height:80vh; padding:clamp(42px,6vw,100px); color:#342f27; border:1px solid #c8b78f; border-radius:6px 24px 24px 6px; background:radial-gradient(circle at 20% 10%,#fffef9,transparent 48%),linear-gradient(90deg,#e7dcc1 0,#fffdf4 4%,#fffdf4 96%,#e7dcc1 100%); box-shadow:-8px 10px 0 #d2c39f,-16px 23px 55px rgb(58 45 25/20%),inset 18px 0 34px rgb(111 83 35/7%); }
.reader-title { text-align:center; border-bottom:1px solid #d8ccb0; padding-bottom:32px; margin-bottom:45px; }
.reader-title small { color:#6f765f; font-size:13px; font-weight:850; letter-spacing:1.2px; }
.reader-title h1 { max-width:900px; margin:13px auto; font:500 clamp(38px,4vw,60px)/1.15 Georgia,serif; }
.reader-title span { color:#897e66; font-size:13px; }
.reader-content { max-width:none; margin:0; font-family:Georgia,"Times New Roman",serif; font-size:clamp(20px,1.55vw,25px); line-height:1.95; white-space:pre-wrap; }
.reader-locked { max-width:720px; margin:80px auto; text-align:center; }
.reader-locked i { width:86px; height:86px; margin:auto; display:grid; place-items:center; border:1px solid #c9b270; border-radius:50%; color:#946d13; background:#fff5ca; font:48px Georgia,serif; }
.reader-locked h2 { font:500 36px Georgia,serif; }
.reader-locked p { font:18px/1.8 Georgia,serif; }
.reader-nav { margin-top:60px; padding-top:30px; display:grid; grid-template-columns:1fr auto 1fr; gap:12px; border-top:1px solid #d8ccb0; }
.reader-nav a { padding:11px 16px; border:1px solid #c9b98f; border-radius:999px; color:#315e45; background:#fffdf5; font-weight:800; text-decoration:none; }
.reader-nav a:last-child { text-align:right; }
.reader-purchase { max-width:760px; }

@media(max-width:1000px) {
  .reader-layout { grid-template-columns:1fr; }
  .reader-chapters { position:static; }
  .reader-chapters nav { max-height:380px; }
}

/* Trang mua EPUB riêng: MoMo + liên kết tải có thời hạn. */
.epub-purchase-body .kc-main { min-height:72vh; }
.epub-purchase-page,.epub-checkout-result,.epub-download-ready { max-width:1160px; margin:0 auto; padding:28px 22px 85px; }
.epub-purchase-heading { max-width:820px; margin:12px auto 34px; text-align:center; }
.epub-purchase-heading>small,.epub-checkout-result>header>small,.epub-download-ready>small { color:#3e835f; font-size:13px; font-weight:900; letter-spacing:1.7px; }
.epub-purchase-heading h1,.epub-checkout-result h1,.epub-download-ready h1 { margin:10px 0 14px; color:#173f2d; font:500 clamp(38px,5vw,62px)/1.08 Georgia,serif; }
.epub-purchase-heading p,.epub-checkout-result>header p,.epub-download-ready>p { color:#536b5f; font-size:18px; line-height:1.7; }
.epub-purchase-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(320px,1.15fr); gap:20px; align-items:start; }
.epub-purchase-book,.epub-payment-card,.epub-email-card,.epub-checkout-card,.epub-download-ready { border:1px solid #cfe0d4; border-radius:20px; background:rgb(255 255 255 / 96%); box-shadow:0 18px 55px rgb(12 67 39 / 12%); }
.epub-purchase-book { padding:22px; display:grid; grid-template-columns:125px 1fr; gap:20px; align-items:center; }
.epub-purchase-book img { width:125px; aspect-ratio:2/3; object-fit:cover; border-radius:4px 11px 11px 4px; box-shadow:0 13px 28px rgb(20 63 40 / 24%); }
.epub-purchase-book small,.epub-payment-title small { color:#52806a; font-size:11px; font-weight:900; letter-spacing:1.4px; }
.epub-purchase-book h2 { margin:8px 0; font:500 28px/1.18 Georgia,serif; }
.epub-purchase-book p { margin:0 0 13px; color:#73867c; }
.epub-purchase-book strong { color:#a83232; font-size:22px; }
.epub-payment-card { grid-row:span 2; padding:25px; }
.epub-email-card { padding:25px; }
.epub-payment-title { display:flex; align-items:center; gap:13px; }
.epub-payment-title>span { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; color:#fff; background:#19744e; font-weight:900; }
.epub-payment-title h2 { margin:3px 0 0; font:500 29px Georgia,serif; }
.epub-momo-qr { display:block; width:min(330px,100%); margin:22px auto; border:1px solid #f0d9e5; border-radius:18px; background:#fff; }
.epub-payment-info { margin:0; }
.epub-payment-info>div { padding:11px 0; display:flex; justify-content:space-between; gap:18px; border-top:1px solid #e2ebe5; }
.epub-payment-info dt { color:#72877b; }
.epub-payment-info dd { margin:0; color:#244e38; font-weight:850; text-align:right; overflow-wrap:anywhere; }
.epub-order-code { color:#a52e36!important; letter-spacing:1px; }
.epub-email-card>p { color:#587064; font-size:16px; line-height:1.65; }
.epub-email-form { display:grid; gap:11px; }
.epub-email-form label { color:#244e38; font-weight:850; }
.epub-email-form>input[type="email"] { width:100%; min-height:50px; padding:12px 15px; border:1px solid #b8d1c1; border-radius:11px; color:#234a36; background:#fbfefc; font-size:17px; }
.epub-email-form>small,.epub-trial-note,.epub-private-note { color:#75887e; font-size:13px; line-height:1.55; }
.epub-email-form .btn { margin-top:5px; min-height:50px; }
.epub-checkout-result { max-width:760px; text-align:center; }
.epub-checkout-result>header { margin-bottom:25px; }
.epub-checkout-card { padding:28px; }
.epub-checkout-card .notice { font-size:16px; line-height:1.65; }
.epub-confirm-button,.epub-download-button { min-width:min(100%,310px); min-height:52px; margin:8px auto 13px; font-size:17px; }
.epub-download-ready { max-width:690px; margin:45px auto 90px; padding:48px 32px; text-align:center; }
.epub-ready-mark { width:72px; height:72px; margin:0 auto 20px; display:grid; place-items:center; border-radius:50%; color:#fff; background:#158052; box-shadow:0 12px 28px rgb(21 128 82 / 28%); font:900 38px/1 system-ui,sans-serif; }
.epub-back-book { display:block; margin-top:22px; color:#296b4a; font-weight:850; }

@media(max-width:760px) {
  .epub-purchase-page,.epub-checkout-result { padding:14px 12px 55px; }
  .epub-purchase-heading { margin-top:5px; }
  .epub-purchase-heading h1,.epub-checkout-result h1,.epub-download-ready h1 { font-size:36px; }
  .epub-purchase-heading p,.epub-checkout-result>header p,.epub-download-ready>p { font-size:16px; }
  .epub-purchase-grid { grid-template-columns:1fr; }
  .epub-purchase-book { grid-template-columns:92px 1fr; padding:16px; }
  .epub-purchase-book img { width:92px; }
  .epub-purchase-book h2 { font-size:23px; }
  .epub-payment-card { grid-row:auto; padding:19px; }
  .epub-email-card { padding:20px; }
  .epub-payment-title h2 { font-size:25px; }
  .epub-payment-info>div { font-size:14px; }
  .epub-download-ready { margin:18px 12px 60px; padding:36px 20px; }
}
@media(max-width:650px) {
  .kc-original-list { grid-template-columns:1fr; }
  .review-panel > header { display:block; }
  .rating-summary { margin-top:15px; text-align:left; }
  .book-profile-info .book-profile-actions { display:none; }
  .book-profile-actions-mobile { margin:0; display:grid!important; grid-column:1/-1; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; }
  .book-profile-actions-mobile a { min-width:0; min-height:42px; padding:8px 3px; display:grid; place-items:center; border-radius:8px; white-space:nowrap; text-align:center; font-size:clamp(8px,2.65vw,11px); line-height:1.1; }
  .star-picker label { min-width:40px; font-size:38px; }
  .comment-list article header { align-items:flex-start; flex-direction:column; gap:3px; }
  .reader-shell { padding:14px 0 50px; }
  .reader-topbar { margin:0 12px; display:block; }
  .reader-tools { margin-top:12px; align-items:flex-start; flex-direction:column; }
  .reader-tools label { width:100%; }
  .reader-tools input { flex:1; }
  .reader-layout { gap:16px; }
  .reader-chapters { margin:0 12px; }
  .reader-book { padding:42px 20px; border-radius:0; }
  .reader-title h1 { font-size:38px; }
  .reader-content { font-size:20px; }
  .reader-nav { grid-template-columns:1fr 1fr; }
  .reader-nav a:nth-child(2) { display:none; }
}

/* Trình đọc Võ Kiếm Các: nền tiên hiệp, điều khiển chữ, ngày/đêm và mục lục gọn. */
.reader-mode {
  background:
    linear-gradient(rgb(3 34 23 / 78%), rgb(3 24 17 / 90%)),
    url('../images/vo-gia-trang-xianxia-bg-v1.png') center / cover fixed no-repeat;
}
.reader-mode .kc-main { min-height:100vh; }
.reader-shell { --reader-ink:#342f27; --reader-paper:#fffdf4; --reader-edge:#e7dcc1; --reader-line:#c8b78f; --reader-glow:rgb(255 255 255 / 82%); }
.reader-topbar { background:rgb(255 255 255 / 94%); backdrop-filter:blur(12px); }
.reader-tool-group { display:flex; align-items:center; gap:6px; }
.reader-font-tools output { min-width:42px; color:#456254; text-align:center; font-size:13px; font-weight:850; }
.reader-tools button[hidden] { display:none; }
.reader-scroll-tools button { min-width:112px; }
.reader-chapter-select { display:none; }
.reader-book {
  color:var(--reader-ink);
  border-color:var(--reader-line);
  background:
    radial-gradient(circle at 20% 10%,var(--reader-glow),transparent 48%),
    linear-gradient(90deg,var(--reader-edge) 0,var(--reader-paper) 4%,var(--reader-paper) 96%,var(--reader-edge) 100%);
  transition:color .25s ease,background .25s ease,border-color .25s ease;
}
.reader-shell[data-theme="night"] { --reader-ink:#e9dfca; --reader-paper:#171d1a; --reader-edge:#0b110e; --reader-line:#59675e; --reader-glow:rgb(93 119 102 / 14%); }
.reader-mode.reader-night {
  background:
    linear-gradient(rgb(0 10 7 / 90%),rgb(0 7 5 / 96%)),
    url('../images/vo-gia-trang-xianxia-bg-v1.png') center / cover fixed no-repeat;
}
.reader-shell[data-theme="night"] .reader-topbar,
.reader-shell[data-theme="night"] .reader-chapters { color:#dce9e0; border-color:#41554a; background:rgb(11 25 18 / 95%); }
.reader-shell[data-theme="night"] .reader-topbar>a,
.reader-shell[data-theme="night"] .reader-tools label,
.reader-shell[data-theme="night"] .reader-tools output { color:#d7e8dd; }
.reader-shell[data-theme="night"] .reader-tools button { color:#e5f0e9; border-color:#4d6c5b; background:#172c22; }
.reader-shell[data-theme="night"] .reader-tools button[aria-pressed="true"] { color:#fff; background:#168158; }
.reader-shell[data-theme="night"] .reader-chapters header { background:linear-gradient(135deg,#18382a,#0d1d16); border-color:#41554a; }
.reader-shell[data-theme="night"] .reader-chapters a { color:#cad9cf; border-color:#33483c; }
.reader-shell[data-theme="night"] .reader-chapters a:hover,
.reader-shell[data-theme="night"] .reader-chapters a.active { color:#eaffef; background:#1d4b34; }
.reader-shell[data-theme="night"] .reader-title,
.reader-shell[data-theme="night"] .reader-nav { border-color:#59675e; }
.reader-shell[data-theme="night"] .reader-title small,
.reader-shell[data-theme="night"] .reader-title span { color:#b6c7bb; }
.reader-shell[data-theme="night"] .reader-nav a { color:#d9ecdf; border-color:#607067; background:#202a25; }

@media(max-width:650px) {
  .reader-mode { background-attachment:scroll; }
  .reader-topbar { padding:13px; }
  .reader-tools { display:grid; grid-template-columns:1fr 1fr; gap:9px; align-items:center; }
  .reader-font-tools { justify-content:flex-start; }
  .reader-scroll-tools { justify-content:flex-end; }
  .reader-scroll-tools button { width:100%; min-width:0; }
  .reader-speed { grid-column:1 / -1; }
  .reader-layout { margin-top:12px; }
  .reader-chapters { border-radius:12px; }
  .reader-chapters header { padding:13px 15px 8px; border-bottom:0; }
  .reader-chapters header small { display:none; }
  .reader-chapters h2 { margin:0; font-size:22px; }
  .reader-chapters header>span { font-size:12px; }
  .reader-chapter-select { padding:7px 12px 13px; display:block; }
  .reader-chapter-select>span { display:block; margin-bottom:6px; color:#627a6e; font-size:12px; font-weight:800; }
  .reader-chapter-select select { width:100%; padding:12px 36px 12px 12px; border:1px solid #bcd2c4; border-radius:9px; color:#234b37; background:#f8fcf9; font:15px/1.35 Georgia,serif; }
  .reader-chapters nav { display:none; }
  .reader-shell[data-theme="night"] .reader-chapter-select>span { color:#a9bdb1; }
  .reader-shell[data-theme="night"] .reader-chapter-select select { color:#e5eee8; border-color:#4d6658; background:#17251e; }
  .reader-book { margin-top:0; border-radius:6px 14px 14px 6px; }
}

/* Bố cục đọc tập trung: mục lục và điều khiển cố định, chỉ trang sách cuộn. */
.reader-topbar>span { color:#6a8175; font-size:13px; font-weight:750; }
.reader-layout {
  height:calc(100dvh - 185px);
  min-height:560px;
  grid-template-columns:minmax(0,1fr) 300px;
  grid-template-rows:auto minmax(0,1fr);
  grid-template-areas:"book controls" "book chapters";
  align-items:stretch;
}
.reader-chapters {
  grid-area:chapters;
  position:static;
  height:auto;
  min-height:0;
  display:flex;
  flex-direction:column;
}
.reader-chapters nav { min-height:0; flex:1; max-height:none; }
.reader-book {
  grid-area:book;
  height:100%;
  min-height:0;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-color:#a6956d transparent;
  scrollbar-width:thin;
}
.reader-book:focus-visible { outline:3px solid #73bc91; outline-offset:3px; }
.reader-book::-webkit-scrollbar { width:10px; }
.reader-book::-webkit-scrollbar-track { background:transparent; }
.reader-book::-webkit-scrollbar-thumb { border:3px solid transparent; border-radius:999px; background:#a6956d; background-clip:padding-box; }
.reader-control-rail {
  grid-area:controls;
  position:static;
  padding:20px 15px;
  border:1px solid #d7e4db;
  border-radius:17px;
  color:#496054;
  background:rgb(255 255 255 / 95%);
  box-shadow:0 12px 32px rgb(27 74 46 / 12%);
  backdrop-filter:blur(12px);
}
.reader-control-rail>small { color:#3d805d; font-size:11px; font-weight:900; letter-spacing:1.3px; }
.reader-control-rail>p { margin:18px 2px 0; color:#74877d; font-size:12px; line-height:1.55; }
.reader-control-rail .reader-tools { margin-top:16px; display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:10px; }
.reader-control-rail .reader-font-tools { justify-content:space-between; }
.reader-control-rail .reader-font-tools button { min-width:48px; padding-inline:10px; }
.reader-control-rail .reader-tools>button,
.reader-control-rail .reader-scroll-tools button { width:100%; }
.reader-control-rail .reader-font-tools,
.reader-control-rail .reader-speed { grid-column:1 / -1; }
.reader-control-rail .reader-scroll-tools { display:block; }
.reader-control-rail .reader-speed { display:flex; gap:7px; }
.reader-control-rail .reader-speed input { width:100%; }
.reader-speed-step,
.reader-chapter-arrows { display:none; }
.reader-mobile-toolbar { display:none; }
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.reader-shell[data-theme="night"] .reader-control-rail { color:#dce9e0; border-color:#41554a; background:rgb(11 25 18 / 95%); }
.reader-shell[data-theme="night"] .reader-control-rail>p { color:#a7b9ae; }
.reader-shell[data-theme="night"] .reader-control-rail>small { color:#91d2ad; }

@media(max-width:1200px) and (min-width:1001px) {
  .reader-layout { grid-template-columns:minmax(0,1fr) 270px; gap:14px; }
  .reader-book { padding-inline:clamp(34px,4vw,62px); }
}

@media(max-width:1000px) {
  .reader-layout {
    height:auto;
    min-height:0;
    grid-template-columns:1fr;
    grid-template-areas:"chapters" "controls" "book";
  }
  .reader-chapters { height:auto; min-height:0; }
  .reader-control-rail { position:sticky; top:8px; z-index:25; margin:0 12px; padding:11px 13px; }
  .reader-control-rail>small,
  .reader-control-rail>p { display:none; }
  .reader-control-rail .reader-tools { margin:0; display:grid; grid-template-columns:auto auto minmax(120px,1fr) minmax(150px,1.25fr); align-items:center; gap:9px; }
  .reader-control-rail .reader-scroll-tools { display:block; }
  .reader-control-rail .reader-speed { display:flex; }
  .reader-control-rail .reader-speed input { grid-column:auto; }
  .reader-book { height:72dvh; min-height:520px; }
}

@media(max-width:650px) {
  .reader-mode .kc-header { display:none; }
  .reader-shell { padding:0 0 36px; }
  .reader-topbar { display:none; }
  .reader-mobile-toolbar { height:56px; position:sticky; top:0; z-index:70; padding:6px 4px; display:flex; align-items:center; gap:3px; border-bottom:1px solid #b8cfbf; background:rgb(247 252 248 / 97%); box-shadow:0 6px 18px rgb(4 46 28 / 16%); backdrop-filter:blur(14px); }
  .reader-mobile-back { width:35px; height:40px; flex:0 0 35px; display:grid; place-items:center; border:1px solid #9dc2ab; border-radius:9px; background:#e7f4ea; }
  .reader-mobile-back>span { width:24px; height:20px; display:flex; filter:drop-shadow(0 2px 2px rgb(16 72 43 / 16%)); }
  .reader-mobile-back i { width:12px; height:19px; display:block; border:2px solid #176b49; background:#fff; }
  .reader-mobile-back i:first-child { border-radius:5px 1px 1px 5px; transform:skewY(8deg); transform-origin:right bottom; }
  .reader-mobile-back i:last-child { border-left:0; border-radius:1px 5px 5px 1px; transform:skewY(-8deg); transform-origin:left bottom; }
  .reader-mobile-chapter { min-width:52px; flex:1 1 118px; overflow:hidden; }
  .reader-mobile-chapter select { width:100%; height:40px; padding:5px 20px 5px 7px; overflow:hidden; border:1px solid #b8cfbf; border-radius:8px; color:#244f38; background:#fff; text-overflow:ellipsis; white-space:nowrap; font:700 11px/1.1 Georgia,serif; }
  .reader-mobile-arrows { flex:0 0 auto; display:flex; gap:2px; }
  .reader-mobile-arrows a,
  .reader-mobile-arrows span { width:28px; height:40px; display:grid; place-items:center; border:1px solid #aac8b5; border-radius:8px; color:#fff; background:#176b49; font:900 25px/1 system-ui,sans-serif; text-decoration:none; }
  .reader-mobile-arrows span[aria-disabled="true"] { opacity:.38; }
  .reader-mobile-functions { flex:0 0 auto; display:flex; align-items:center; gap:2px; }
  .reader-mobile-functions button { width:29px; min-width:29px; height:40px; padding:0; display:grid; place-items:center; border:1px solid #aac8b5; border-radius:8px; color:#24543b; background:#edf7f0; font:850 11px/1 system-ui,sans-serif; }
  .reader-mobile-functions button[hidden] { display:none; }
  .reader-mobile-functions [data-reader-theme-mobile] { font-size:18px; }
  .reader-mobile-functions [data-reader-speed-step] { color:#fff; border-color:#98711e; background:#ad811f; font-size:10px; }
  .reader-mobile-functions [data-reader-speed-step] span { margin-left:-3px; }
  .reader-mobile-functions .reader-mobile-autoscroll { width:33px; min-width:33px; color:#fff; border-color:#a91f28; background:#c72d36; box-shadow:0 0 0 2px rgb(199 45 54 / 12%); font-size:14px; }
  .reader-mobile-functions .reader-mobile-pause { width:33px; min-width:33px; color:#fff; border-color:#792229; background:#9f3038; font-size:14px; }
  .reader-layout { height:auto; min-height:0; margin-top:0; display:block; }
  .reader-chapters,
  .reader-control-rail { display:none; }
  .reader-book { height:calc(100dvh - 56px); min-height:0; margin:0 5px; padding:34px 18px 55px; }
  .reader-shell[data-theme="night"] .reader-mobile-toolbar { border-color:#41554a; background:rgb(11 25 18 / 97%); }
  .reader-shell[data-theme="night"] .reader-mobile-back,
  .reader-shell[data-theme="night"] .reader-mobile-functions button { color:#e4eee7; border-color:#496457; background:#172b21; }
  .reader-shell[data-theme="night"] .reader-mobile-back i { border-color:#91d2ad; background:#102019; }
  .reader-shell[data-theme="night"] .reader-mobile-chapter select { color:#e5eee8; border-color:#496457; background:#17251e; }
  .reader-shell[data-theme="night"] .reader-mobile-arrows a,
  .reader-shell[data-theme="night"] .reader-mobile-arrows span { border-color:#4d6658; background:#1d4b34; }
  .reader-shell[data-theme="night"] .reader-mobile-functions [data-reader-speed-step] { border-color:#98711e; background:#8f6c1f; }
  .reader-shell[data-theme="night"] .reader-mobile-functions .reader-mobile-autoscroll { border-color:#b72d36; background:#d33640; }
  .reader-shell[data-theme="night"] .reader-mobile-functions .reader-mobile-pause { border-color:#9c2a33; background:#ad3039; }
}
