/* ============================================================
   المكتبة المعرفية (library.dc.html) فوق dz.css
   ============================================================ */

.dz-head h1 { margin: 0 0 6px; color: var(--dz-navy); font-size: 44px; font-weight: 700; }
.dz-lede { margin: 0 0 22px; color: var(--dz-muted); font-size: 20px; max-width: 46em; text-wrap: pretty; }

/* رقاقات التصنيف */
.lib-cats { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 28px; }
.lib-cat {
  cursor: pointer; border-radius: 999px; padding: 6px 22px;
  font-size: 19px; font-weight: 700; border: 2px solid var(--dz-line);
  background: #fff; color: var(--dz-muted);
}
.lib-cat:hover { border-color: var(--dz-gold); }
.lib-cat[aria-pressed="true"] {
  border-color: var(--dz-gold); background: rgba(201, 168, 76, .12); color: var(--dz-navy);
}

/* مقال الأسبوع */
.lib-featured {
  background: var(--dz-navy); border-radius: 12px; border-bottom: 4px solid var(--dz-gold);
  box-shadow: 0 2px 12px rgba(0, 0, 0, .08); padding: 32px 34px; margin-bottom: 30px;
  display: flex; flex-direction: column; gap: 8px;
}
.lib-featured__kicker { color: var(--dz-gold); font-size: 18px; font-weight: 700; letter-spacing: .4px; }
.lib-featured h2 { margin: 0; color: #fff; font-size: 36px; font-weight: 700; line-height: 1.25; text-wrap: balance; }
.lib-featured p { margin: 0; color: #C7D2E1; font-size: 21px; line-height: 1.7; max-width: 52em; text-wrap: pretty; }
.lib-featured__meta { color: #9FB0C6; font-size: 17px; margin-top: 6px; }

/* شبكة المقالات */
.lib-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; }
.lib-card {
  padding: 24px 26px 20px; display: flex; flex-direction: column; gap: 8px;
}
.lib-card__cat { color: var(--dz-gold); font-size: 17px; font-weight: 700; letter-spacing: .4px; }
.lib-card h3 { margin: 0; color: var(--dz-navy); font-size: 26px; font-weight: 700; line-height: 1.3; text-wrap: balance; }
.lib-card__excerpt { margin: 0; color: var(--dz-ink-2); font-size: 19px; line-height: 1.65; text-wrap: pretty; }

.lib-card__body {
  display: none; flex-direction: column; gap: 12px;
  border-top: 1px dashed var(--dz-line); padding-top: 12px; margin-top: 4px;
}
.lib-card.is-open .lib-card__body { display: flex; }
.lib-card__body p { margin: 0; color: var(--dz-ink-2); font-size: 19px; line-height: 1.7; text-wrap: pretty; }

/* جدول أقوال المذاهب */
.lib-mtable { border: 1px solid var(--dz-line); border-radius: 10px; overflow: hidden; }
.lib-mrow { display: flex; gap: 12px; padding: 9px 14px; border-top: 1px solid #EDF0F3; }
.lib-mrow:first-child { border-top: 0; }
.lib-mrow:nth-child(odd) { background: #FBFBFC; }
.lib-mrow b { color: var(--dz-navy); font-size: 18px; flex: none; width: 64px; }
.lib-mrow span { color: var(--dz-ink-2); font-size: 18px; line-height: 1.55; }
.lib-mrow i { color: var(--dz-hint); font-size: 16px; font-style: normal; white-space: nowrap; margin-inline-start: auto; align-self: center; }

.lib-calclink {
  align-self: flex-start; display: flex; align-items: center; gap: 7px;
  color: var(--dz-navy-ink); background: var(--dz-gold);
  font-size: 18px; font-weight: 700; padding: 7px 18px; border-radius: 9px;
}
.lib-calclink:hover { background: var(--dz-gold-2); color: var(--dz-navy-ink); }

.lib-card__foot {
  display: flex; justify-content: space-between; align-items: center;
  margin-top: auto; padding-top: 10px; flex-wrap: wrap; gap: 8px;
}
.lib-card__meta { color: var(--dz-hint); font-size: 16px; }
.lib-toggle {
  cursor: pointer; border: none; background: none; color: var(--dz-gold);
  font-size: 19px; font-weight: 700; display: flex; align-items: center; gap: 6px; padding: 0;
}
.lib-toggle:hover { color: var(--dz-gold-2); }
.lib-toggle svg { transition: transform .15s ease; }
.lib-card.is-open .lib-toggle svg { transform: rotate(180deg); }

@media (max-width: 560px) {
  .dz-head h1 { font-size: 33px; }
  .dz-main { padding: 30px 16px 56px; }
  .lib-featured { padding: 22px 18px; }
  .lib-featured h2 { font-size: 28px; }
  .lib-mrow { flex-wrap: wrap; }
  .lib-mrow i { margin-inline-start: 76px; }
}
