/* 内容库 · 样式（小说库 / 剧本库，沿用 style.css 变量） */

.lib-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.lib-toolbar .input#libSearch{flex:1;min-width:190px;margin:0;padding:7px 10px;
  border:1px solid var(--line);border-radius:8px}
.lib-count{color:var(--txt-3);font-size:12.5px}

/* ---------- 卡片网格 ---------- */
/* minmax(268px,1fr) 在窄屏下会被 min-content 撑开（卡片里的长标题/长串不换行），
   所以栅格自己要 min-width:0，卡片也要能收缩，否则手机上横向滚动。 */
.lib-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(268px,100%),1fr));
  gap:12px;min-width:0}
@media (max-width:640px){ .lib-grid{grid-template-columns:minmax(0,1fr)} }

.lib-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);
  padding:14px 16px;display:flex;flex-direction:column;gap:9px;transition:.15s;position:relative;
  min-width:0;overflow-wrap:anywhere}
.lib-card:hover{border-color:#c9d3e6;box-shadow:var(--shadow);transform:translateY(-1px)}

.lib-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0}
.lib-card-title{font-weight:700;font-size:14.5px;line-height:1.4;min-width:0;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  overflow-wrap:anywhere}

/* 已选 / 新 角标 */
.lib-tag{flex-shrink:0;padding:3px 9px;border-radius:20px;font-size:11.5px;font-weight:700}
.lib-tag.new{background:var(--warn-soft);color:var(--warn)}
.lib-tag.claimed{background:var(--ok-soft);color:var(--ok)}

.lib-card-sub{color:var(--txt-3);font-size:12.5px;display:flex;gap:7px;flex-wrap:wrap}
.lib-card-sub .sep{color:var(--line)}
.lib-card-sum{color:var(--txt-2);font-size:12.5px;line-height:1.6;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  min-height:2.6em}

/* 「已被改编 N 次」—— 用户明确要求显示这句 */
.lib-adapt{font-size:12.5px;font-weight:700;color:var(--brand);
  background:var(--brand-soft);padding:4px 10px;border-radius:6px;display:inline-block}
.lib-adapt.zero{color:var(--txt-3);background:var(--line-2);font-weight:600}
.lib-adapt.dup{color:var(--danger);background:var(--danger-soft)}

/* 认领人信息条 */
.lib-owner{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--txt-2);
  background:#f7f9fc;border:1px dashed var(--line);border-radius:7px;padding:6px 9px}
.lib-owner b{color:var(--txt)}

.lib-card-foot{display:flex;gap:7px;margin-top:auto;padding-top:3px}
.lib-card-foot .btn{flex:1;justify-content:center}
.btn.locked{opacity:.5;cursor:not-allowed;background:var(--line-2);color:var(--txt-3);
  border-color:transparent}

/* 转让待确认提示 */
.lib-pending{background:var(--warn-soft);color:var(--warn);font-size:12px;font-weight:700;
  padding:6px 9px;border-radius:6px;display:flex;justify-content:space-between;
  align-items:center;gap:8px;flex-wrap:wrap}

/* ---------- 详情抽屉 ---------- */
.lib-detail{background:var(--panel);border:1px solid var(--line);
  border-radius:var(--radius);overflow:hidden;margin-bottom:14px}
.lib-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  padding:14px 16px;border-bottom:1px solid var(--line);background:#fbfcfd}
.lib-detail-head h3{margin:0 0 4px;font-size:16px}
.lib-detail-body{padding:14px 16px}
.lib-detail-actions{display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0}

.lib-preview{font-size:13.5px;line-height:1.85;max-height:46vh;overflow:auto;
  border:1px solid var(--line-2);border-radius:8px;padding:12px;background:#fff;
  white-space:pre-wrap;word-break:break-word}

/* 转让历史 */
.lib-tf-list{display:flex;flex-direction:column;gap:6px;margin-top:12px}
.lib-tf{font-size:12.5px;color:var(--txt-2);background:#f7f9fc;border-radius:6px;
  padding:7px 10px;display:flex;justify-content:space-between;gap:9px;flex-wrap:wrap}
.lib-tf .ok{color:var(--ok);font-weight:700}
.lib-tf .no{color:var(--danger);font-weight:700}
.lib-tf .wait{color:var(--warn);font-weight:700}

/* 导航小红点 */
.dot.library{background:var(--warn);opacity:0;transition:.2s}
.dot.library.on{opacity:1;transform:scale(1)}
