/* ==========================================================================
 * p1-library.css — Shard-C1 收藏/条文批注/历史/导出导入（本地优先 IndexedDB）
 * 仅 .p1-lib- 前缀；复用 p1-core 玻璃 token；禁紫渐变/emoji/外网图
 * ========================================================================== */

/* ---- 条文操作区：批注按钮（与 seed 收藏按钮同区） ---- */
.p1-note-btn{ display:inline-flex; align-items:center; gap:6px; min-height:38px; padding:0 14px;
  border-radius:999px; border:1px solid var(--p1-border,#E5E7EB); background:#fff; cursor:pointer;
  font-size:13px; color:var(--p1-text2,#57606A); font-family:inherit; transition:all .15s ease; position:relative; }
.p1-note-btn:hover{ border-color:#4F46E5; color:#4F46E5; }
.p1-note-btn--on{ background:#EEF2FF; border-color:#4F46E5; color:#4F46E5; }
.p1-note-btn .p1-ic{ width:16px; height:16px; }
.p1-note-btn .p1-note-dot{ position:absolute; top:-3px; right:-3px; min-width:16px; height:16px; padding:0 4px;
  border-radius:999px; background:#DC2626; color:#fff; font-size:10px; line-height:16px; text-align:center; }

/* ---- 我的抽屉里的入口行 ---- */
.p1-lib-entry{ display:flex; justify-content:space-between; align-items:center; width:100%;
  padding:13px 14px; border:none; border-bottom:1px solid #F0F1F3; background:#fff; font-size:14px;
  cursor:pointer; font-family:inherit; min-height:44px; }
.p1-lib-entry:last-child{ border-bottom:none; }
.p1-lib-entry:hover{ background:#F7F8FA; }
.p1-lib-entry__l{ display:flex; align-items:center; gap:10px; color:#1F2328; }
.p1-lib-entry__l .p1-ic{ width:18px; height:18px; color:#4F46E5; }
.p1-lib-entry__r{ color:#9AA5B0; }

/* ---- 收藏库主面板（玻璃全屏 sheet） ---- */
.p1-lib-mask{ position:fixed; inset:0; z-index:19003; background:rgba(15,23,42,.4);
  -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); display:flex; align-items:flex-end; justify-content:center; }
@media (min-width:640px){ .p1-lib-mask{ align-items:center; } }
.p1-lib-panel{ width:100%; max-width:560px; height:92vh; max-height:92vh; margin:0;
  display:flex; flex-direction:column; border-radius:18px 18px 0 0; overflow:hidden; }
@media (min-width:640px){ .p1-lib-panel{ height:86vh; border-radius:18px; } }
.p1-lib-head{ display:flex; align-items:center; gap:10px; padding:14px 16px 10px; flex:0 0 auto; }
.p1-lib-head h3{ font-size:16px; font-weight:700; margin:0; flex:1; }
.p1-lib-close{ width:34px; height:34px; border-radius:50%; border:none; background:transparent; cursor:pointer;
  color:#9DA5B0; display:grid; place-items:center; }
.p1-lib-close:hover{ background:#F2F4F7; }
.p1-lib-tabs{ display:flex; gap:6px; padding:0 16px 10px; flex:0 0 auto; flex-wrap:wrap; }
.p1-lib-tab{ flex:1 1 auto; min-height:38px; border:1px solid #E5E7EB; background:#fff; border-radius:999px;
  font-size:13px; color:#57606A; cursor:pointer; font-family:inherit; }
.p1-lib-tab--on{ background:#4F46E5; border-color:#4F46E5; color:#fff; }
.p1-lib-body{ flex:1 1 auto; overflow-y:auto; padding:4px 16px 20px; -webkit-overflow-scrolling:touch; }

.p1-lib-search{ display:flex; align-items:center; gap:8px; border:1px solid #E5E7EB; border-radius:10px;
  background:#fff; padding:0 12px; min-height:42px; margin-bottom:10px; }
.p1-lib-search .p1-ic{ width:16px; height:16px; color:#9DA5B0; flex:0 0 auto; }
.p1-lib-search input{ flex:1; border:none; outline:none; font-size:14px; font-family:inherit; background:transparent; min-width:0; }

.p1-lib-group{ font-size:12px; font-weight:700; color:#9b7a4d; margin:12px 0 6px; }
.p1-lib-row{ display:flex; align-items:center; gap:10px; padding:11px 12px; border:1px solid #E5E7EB;
  border-radius:10px; background:#fff; margin-bottom:8px; }
.p1-lib-row__main{ flex:1 1 auto; min-width:0; cursor:pointer; }
.p1-lib-row__title{ font-size:14px; color:#1F2328; font-weight:600; overflow:hidden; text-overflow:ellipsis;
  white-space:nowrap; }
.p1-lib-row__sub{ font-size:12px; color:#9DA5B0; margin-top:3px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.p1-lib-row__note{ font-size:12px; color:#57606A; margin-top:4px; line-height:1.5; display:-webkit-box;
  -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.p1-lib-row__act{ flex:0 0 auto; display:flex; flex-direction:column; gap:6px; }
.p1-lib-iconbtn{ width:38px; height:38px; border-radius:8px; border:1px solid #E5E7EB; background:#fff;
  cursor:pointer; color:#57606A; display:grid; place-items:center; }
.p1-lib-iconbtn:hover{ background:#EEF2FF; border-color:#4F46E5; color:#4F46E5; }
.p1-lib-iconbtn--danger:hover{ background:#FEF3F2; border-color:#DC2626; color:#DC2626; }
.p1-lib-iconbtn .p1-ic{ width:17px; height:17px; }

.p1-lib-toolbar{ display:flex; gap:8px; margin:4px 0 10px; flex-wrap:wrap; }
.p1-lib-toolbar .p1-btn{ flex:0 0 auto; }

/* 备份 tab */
.p1-lib-backup{ font-size:13px; color:#57606A; line-height:1.8; }
.p1-lib-backup h4{ font-size:14px; color:#1F2328; margin:14px 0 6px; }
.p1-lib-backup p{ margin:0 0 8px; }
.p1-lib-backup .p1-btn{ margin-right:8px; margin-bottom:8px; }

/* 批注编辑器 */
.p1-lib-textarea{ width:100%; min-height:120px; border:1px solid #E5E7EB; border-radius:10px;
  padding:10px 12px; font-size:14px; font-family:inherit; line-height:1.6; resize:vertical; box-sizing:border-box; }
.p1-lib-textarea:focus{ outline:none; border-color:#4F46E5; }
.p1-lib-meta{ font-size:12px; color:#9DA5B0; margin:6px 0 10px; line-height:1.6; word-break:break-all; }

@media (prefers-reduced-motion: reduce){ *{ transition:none !important; } }
