/* ============================================================
   收藏模块
   ============================================================ */

.favorites { height: 100%; display: flex; flex-direction: column; padding: var(--sp-5); gap: var(--sp-4); overflow: hidden; }

.fav-head { display: flex; align-items: center; gap: var(--sp-4); flex-wrap: wrap; }
.fav-tabs { display: flex; gap: var(--sp-2); flex-wrap: wrap; flex: 1; }
.fav-tab {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 7px 14px; border-radius: var(--r-full);
  font-size: var(--fs-sm); color: var(--tx-2);
  border: 1px solid var(--line-1); background: var(--bg-glass);
  transition: all var(--t-fast) var(--ease);
}
.fav-tab:hover { color: var(--tx-1); border-color: var(--line-2); }
.fav-tab.active {
  color: var(--tx-on-neon); background: var(--grad-brand);
  border-color: transparent; box-shadow: var(--glow-brand);
}
.fav-search { width: 240px; }

.fav-list { flex: 1; overflow-y: auto; padding-bottom: var(--sp-3); }
.fav-skel { height: 150px; margin-bottom: var(--sp-4); }

.fav-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: var(--sp-4); }
.fav-card { padding: var(--sp-4); display: flex; flex-direction: column; gap: 8px; transition: transform var(--t-fast) var(--ease), border-color var(--t-fast); }
.fav-card:hover { transform: translateY(-3px); border-color: var(--line-2); }
.fav-card-head { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-2); }
.fav-type { display: inline-flex; align-items: center; gap: 5px; font-size: var(--fs-xs); color: var(--neon-cyan); }
.fav-title { font-size: var(--fs-md); font-weight: 600; }
.fav-note { font-size: var(--fs-xs); color: var(--neon-violet); }
.fav-preview {
  font-size: var(--fs-sm); color: var(--tx-2); line-height: 1.7;
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
  min-height: 3.4em;
}
.fav-actions { display: flex; gap: var(--sp-2); margin-top: auto; padding-top: 6px; }

@media (max-width: 640px) {
  .favorites { padding: var(--sp-3); }
  .fav-search { width: 100%; }
}
