/* ========================================= */
/* 文件：tab1-worldbook.css                     */
/* 功能：Evol终端 → 猎人档案 (World Book)       */
/*       ——档案卡片列表、常驻信号/深空档案抽屉、 */
/*        置顶按钮、手动挂载按钮、               */
/*        编辑弹窗类型选择器、新增卡片按钮        */
/* ========================================= */

/* =========================================
   ✨✨✨ 猎人档案 (World Book) ✨✨✨
   ========================================= */
#worldbook-container { display: flex; flex-direction: column; gap: 12px; }
.wb-card {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px; padding: 16px; position: relative;
  transition: all 0.2s; cursor: pointer; overflow: hidden;
}
.wb-card:active { background: rgba(255, 255, 255, 0.12); transform: scale(0.98); }
.wb-card::before {
  content: ""; position: absolute; left: 0; top: 12px; bottom: 12px;
  width: 3px; background: #ffb37a; border-radius: 0 4px 4px 0;
  box-shadow: 2px 0 8px rgba(255, 179, 122, 0.4);
}
.wb-header { display: flex; align-items: center; gap: 10px; }
.wb-title { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 16px; font-weight: 700; color: #fff; letter-spacing: 0.5px; }
.wb-pin-btn {
  width: 32px; height: 32px; display: flex; align-items: center; justify-content: center;
  border-radius: 50%; cursor: pointer; transition: all 0.2s;
}
.wb-pin-btn img { width: 20px; height: 20px; filter: invert(1) opacity(0.2); transition: all 0.3s; }
.wb-pin-btn.active img {
  filter: invert(86%) sepia(18%) saturate(1149%) hue-rotate(323deg) brightness(101%) contrast(101%) opacity(1) drop-shadow(0 0 5px rgba(255, 179, 122, 0.6));
  transform: rotate(-45deg) scale(1.15);
}
.wb-card.pinned {
  border-color: rgba(255, 179, 122, 0.5);
  background: linear-gradient(145deg, rgba(255, 179, 122, 0.1), rgba(255, 255, 255, 0.05));
  order: -1;
}
.wb-card.pinned::before { box-shadow: 2px 0 12px rgba(255, 179, 122, 0.8); }
.wb-content {
  font-size: 13px; color: rgba(255,255,255,0.7); line-height: 1.5; padding-left: 10px;
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
/* 档案抽屉入口 */
.wb-section { margin-bottom: 12px; }
.wb-section-header {
  display: flex; justify-content: space-between; align-items: center;
  padding: 14px 16px; border-radius: 20px; cursor: pointer;
  background: linear-gradient(135deg, rgba(255,179,122,0.1), rgba(162,155,254,0.09));
  border: 1px solid rgba(255,179,122,0.16);
  box-shadow: 0 0 10px rgba(255,179,122,0.06), inset 0 0 8px rgba(162,155,254,0.04);
  backdrop-filter: blur(8px);
  transition: all 0.2s ease;
}
.wb-section-header:active {
  background: linear-gradient(135deg, rgba(255,179,122,0.24), rgba(162,155,254,0.2));
  transform: scale(0.97);
}
.wb-section-left { display: flex; align-items: center; gap: 12px; }
.wb-section-icon { font-size: 20px; color: #ffb37a; flex-shrink: 0; }
.wb-section-texts { display: flex; flex-direction: column; }
.wb-section-title { font-size: 14px; font-weight: 600; color: rgba(255,255,255,0.9); }
.wb-section-sub { font-size: 11px; color: rgba(255,255,255,0.38); margin-top: 1px; }
.wb-section-arrow { font-size: 20px; color: rgba(255,255,255,0.28); transition: transform 0.3s ease; flex-shrink: 0; }
.wb-section-body { overflow: hidden; max-height: 0; transition: max-height 0.35s ease; }
.wb-section-body.open { max-height: 2000px; }
#wb-core-body .wb-card, #wb-vector-body .wb-card { margin-top: 8px; }
#wb-core-body .skeleton-item, #wb-vector-body .skeleton-item { margin-top: 8px; width: 100%; }

/* 深空档案手动挂载按钮（外圈描边 + 激活时内圆发光） */
.wb-mount-btn {
  position: relative; width: 18px; height: 18px; border-radius: 50%; flex-shrink: 0;
  border: 1.5px solid rgba(255,255,255,0.2);
  background: transparent; cursor: pointer;
  align-self: flex-start; margin-top: -2px;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.wb-mount-btn::before {
  content: ''; position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 8px; height: 8px; border-radius: 50%;
  background: transparent; transition: all 0.2s;
}
.wb-mount-btn.active {
  border-color: #a29ffe;
  box-shadow: 0 0 8px rgba(162,155,254,0.5);
}
.wb-mount-btn.active::before {
  background: #a29ffe;
  box-shadow: 0 0 4px rgba(162,155,254,0.8);
}
.wb-mount-btn::after {
  content: ''; position: absolute;
  top: -8px; left: -8px; right: -8px; bottom: -8px;
}
.wb-mount-btn:active { transform: scale(0.88); }

/* 编辑弹窗类型选择器 */
.wb-type-selector {
  display: flex; gap: 8px; margin-bottom: 6px;
}
.wb-type-opt {
  flex: 1; text-align: center; padding: 8px 0; border-radius: 12px; font-size: 13px;
  color: rgba(255,255,255,0.5); border: 1px solid rgba(255,255,255,0.1);
  cursor: pointer; background: rgba(255,255,255,0.04); transition: all 0.2s;
}
.wb-type-opt.active {
  color: #ffb37a; border-color: rgba(255,179,122,0.4);
  background: rgba(255,179,122,0.1);
  font-weight: 600;
}

.add-card-btn {
  margin-top: 15px; border: 1px dashed rgba(255, 255, 255, 0.3); border-radius: 12px;
  padding: 14px; text-align: center; color: rgba(255, 255, 255, 0.6); font-size: 14px;
  cursor: pointer; background: rgba(0,0,0,0.1); transition: all 0.2s;
}
.add-card-btn:active { background: rgba(255, 255, 255, 0.05); border-color: rgba(255, 255, 255, 0.5); color: #fff; }
