/* Tủ sách */
.sk-shelf{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));max-width:560px}
.sk-book{display:block;text-align:center;text-decoration:none;color:var(--fg)}
.sk-book img{display:block;width:100%;aspect-ratio:462/647;object-fit:cover;border-radius:4px 10px 10px 4px;box-shadow:0 8px 20px rgba(0,0,0,.25);transition:transform .15s}
.sk-book:hover img,.sk-book:focus-visible img{transform:translateY(-4px) rotate(-1deg)}
.sk-book b{display:block;margin-top:12px}.sk-book span{font-size:.8rem;color:var(--mute)}
.sk-top{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.sk-top img{width:54px;border-radius:3px 7px 7px 3px;box-shadow:0 3px 8px rgba(0,0,0,.25)}.sk-top h1{margin:0}.sk-top p{margin:0}
.sk-toc{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.sk-cd{display:flex;align-items:center;gap:10px;background:var(--pri-t);color:var(--pri-d);font-weight:800;font-size:.8rem;letter-spacing:.03em;padding:9px 14px;text-transform:uppercase}
.sk-cd span{background:var(--pri);color:#fff;border-radius:50%;width:24px;height:24px;display:grid;place-items:center;flex:none}
.sk-cd em{margin-left:auto;font-style:normal;font-weight:600}
.sk-ls{border-top:1px solid var(--line)}
.sk-lb{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:10px;width:100%;padding:11px 14px;cursor:pointer}
.sk-lb:hover{background:var(--surface2)}.sk-lb:focus-visible{outline:2px solid var(--pri);outline-offset:-2px}
.sk-ar{color:var(--pri);font-size:.7rem;transition:transform .15s;flex:none}.sk-ls.open .sk-ar{transform:rotate(90deg)}
.sk-nm{flex:1;min-width:0}.sk-p{color:var(--mute);font-variant-numeric:tabular-nums}
.sk-bd{margin-left:8px;font-size:.72rem;background:var(--surface2);color:var(--mute);border-radius:999px;padding:1px 8px;font-weight:700}.sk-bd.on{background:var(--ok-t);color:var(--ok)}
.sk-pn{display:grid;gap:8px;padding:6px 12px 12px;background:var(--surface2)}
.sk-ti{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;justify-content:space-between;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-s);padding:9px 12px}
.sk-ti.sunk{opacity:.7;background:var(--surface2);border-style:dashed}
.sk-ti.hl{outline:3px solid var(--acc);outline-offset:1px}
.sk-tn{flex:1 1 220px;min-width:0;display:flex;flex-direction:column;gap:3px}.sk-tn b{overflow-wrap:anywhere}
.sk-tn i{font-style:normal;font-size:.8rem;color:var(--mute)}
.sk-pg{display:inline-block;margin-left:8px;font-size:.72rem;background:var(--info-t);color:var(--info);border-radius:999px;padding:1px 8px;font-weight:700;white-space:nowrap}
.sk-ma{all:unset;cursor:pointer;font-size:.72rem;color:var(--mute);font-family:ui-monospace,monospace}.sk-ma:hover{color:var(--pri)}
.sk-ac{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.sk-pick{display:grid;gap:6px;max-height:50vh;overflow:auto}
.sk-pi{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:2px;border:1px solid var(--line);border-radius:var(--r-s);padding:8px 12px}
.sk-pi:hover{background:var(--surface2)}.sk-pi span{font-size:.78rem;color:var(--mute)}

/* v2.1.5: sách chờ sẵn / chưa có phiếu thì chìm xuống */
.sk-shelf{max-width:1100px}
.sk-book.sunk{opacity:.62;filter:saturate(.6)}.sk-book.sunk:hover{opacity:.95;filter:none}
.sk-book.soon{opacity:.42;filter:grayscale(.8);cursor:default;pointer-events:none}
.sk-cv{aspect-ratio:462/647;border-radius:4px 10px 10px 4px;box-shadow:0 8px 20px rgba(0,0,0,.25);background:linear-gradient(160deg,hsl(var(--h) 62% 52%),hsl(var(--h) 60% 34%));color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px;text-align:center}
.sk-cv i{font-style:normal;font-weight:800;letter-spacing:.04em;text-transform:uppercase;font-size:.95rem}.sk-cv strong{font-size:3rem;line-height:1}.sk-cv small{opacity:.9}
.sk-wrap{display:flex;flex-direction:column;align-items:center;gap:6px}.sk-wrap .sk-book{width:100%}.sk-ed{pointer-events:auto}

.sk-wk{display:inline-block;margin-left:8px;font-size:.72rem;font-weight:700;color:var(--pri-d);background:var(--pri-t);border-radius:99px;padding:1px 8px;vertical-align:middle}
.sk-book.sunk{opacity:.8;filter:saturate(.8)}.sk-book.soon{opacity:.55;filter:grayscale(.5)}
.sk-book.adm.sunk,.sk-book.adm.soon{opacity:1;filter:none}
/* v2.1.8: nút quay lại Tủ sách (nổi, mũi tên) và thanh lọc công khai / bị khóa */
.sk-back{display:inline-flex;align-items:center;gap:6px;padding:8px 16px 8px 8px;border-radius:999px;text-decoration:none;font-weight:800;color:var(--pri-d);background:linear-gradient(180deg,var(--surface),var(--pri-t));border:1px solid color-mix(in srgb,var(--pri) 35%,var(--line));box-shadow:0 2px 0 color-mix(in srgb,var(--pri) 45%,transparent),0 6px 14px rgba(0,0,0,.16);transition:transform .15s,box-shadow .15s}
.sk-back svg{width:26px;height:26px;padding:4px;border-radius:50%;background:var(--pri);color:#fff;transition:transform .15s}
.sk-back:hover{transform:translateY(-2px);box-shadow:0 4px 0 color-mix(in srgb,var(--pri) 45%,transparent),0 10px 18px rgba(0,0,0,.2)}
.sk-back:hover svg{transform:translateX(-3px)}
.sk-back:active{transform:translateY(1px);box-shadow:0 1px 0 color-mix(in srgb,var(--pri) 45%,transparent),0 2px 6px rgba(0,0,0,.18)}
.pills.acc{margin-top:2px}.pills.acc .pill[data-a]{font-size:.88rem}
