/* Quran DB v5 styles (uses Hafs 18 font) */
/* Fallback @font-face in addition to the registered CDN stylesheet */
@font-face{
  font-family: 'hafs18';
  font-style: normal;
  font-weight: 400;
  src: url('https://cdn.jsdelivr.net/gh/thetruetruth/quran-data-kfgqpc@main/hafs/font/hafs.18.woff2') format('woff2'),
       url('https://cdn.jsdelivr.net/gh/thetruetruth/quran-data-kfgqpc@main/hafs/font/hafs.18.ttf') format('truetype');
  font-display: swap;
}

/* Local font faces (drop files into plugins/quran-db-v5/font/) */
@font-face{
  font-family: 'me_quran_new';
  font-style: normal;
  font-weight: 400;
  src: url('font/me_quran_new.ttf') format('truetype');
  font-display: swap;
}
@font-face{
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 400;
  src: url('font/Merriweather_48pt-Regular.ttf') format('truetype'),
       url('font/Merriweather_24pt-Regular.ttf') format('truetype');
  font-display: swap;
}
@font-face{
  font-family: 'arabquanislamic140';
  font-style: normal;
  font-weight: 400;
  src: url('font/ArabQuranIslamic140-K7n4W.ttf') format('truetype');
  font-display: swap;
}

.quran-db-container{--qdb-border:#ddd; --qdb-bg:#f9f9f9; --qdb-text:#333; --accent1:#FF9300; --accent2:#C83925;}

.quran_ar { direction: rtl; text-align: right; margin: 0.75rem 0 0.25rem; line-height: var(--qdb-ar-line, 2.05); }
/* Use me_quran_new for Arabic verse text, but keep numbering in hafs18 */
.quran_ar .ayah_text{ font-family: 'me_quran_new', 'hafs18', serif; font-size: var(--qdb-ar-size, clamp(1.35rem, 2.4vw, 2rem)); word-spacing: 4px; }
.quran_ar .ayah_text .numbering{ font-family: 'hafs18', serif; }
/* English verse text uses Merriweather Regular */
.quran_en .ayah_en_text{ font-family: 'Merriweather', Georgia, serif; font-size: var(--qdb-en-size, 1rem); line-height: 1.6; color: var(--qdb-text); }
.numbering{ margin-inline: .4rem; }

.sura_header{ border-bottom:2px solid var(--qdb-border); padding-bottom:1rem; margin-bottom:1rem;}
#qdb-view-selector label{ cursor:pointer; user-select:none; }

/* New blue header */
.sura_header--blue{ background:#0b61a4; color:#fff; border-radius:6px; border-bottom:0; padding:0; position:sticky; top:0; z-index:20; }
.sura_header-inner{ display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.5rem 1rem; transition:padding .2s ease-in-out; }
.sura_header-center{ text-align:left; flex:1 1 auto; display:flex; flex-direction:column; justify-content:center; }
.sura_header-right{ flex:0 0 auto; max-width:50%; text-align:right; display:flex; align-items:center; justify-content:flex-end; padding-right:0; }
.sura-num{ font-size:2.5rem; font-weight:800; color:#fff; line-height:1; transition:font-size .2s ease-in-out; }
/* Transliteration: Work Sans (italic) */
.sura-phon{ font-family:'Work Sans', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif; font-style:italic; font-weight:400; font-size:1.1rem; opacity:.95; margin-top:.35rem; transition:font-size .2s ease-in-out; }
/* English Sura name: Merriweather 60px bold with text shadow */
.sura-en{ font-family:'Merriweather', Georgia, serif; font-weight:700; font-size:60px; line-height:1.1; margin-top:.15rem; color:#fff; text-shadow:-2.5px 4.33px 5px rgba(0,0,0,.5); transition:font-size .2s ease-in-out; }
/* Image drop-shadow with same vector */
.sura_name_img{ display:block; width:auto; max-width:100%; height:auto; max-height:130px; filter: drop-shadow(-2.5px 4.33px 5px rgba(0,0,0,.5)); transition:max-width .2s ease-in-out, max-height .2s ease-in-out; object-fit:contain; margin:0 0 0 auto; }

/* Compact mode on scroll */
.sura_header--compact .sura_header-inner{ padding:.4rem .75rem; }
.sura_header--compact .sura-num{ font-size:1.25rem; }
.sura_header--compact .sura-phon{ font-size:.9rem; }
.sura_header--compact .sura-en{ font-size:26px; }
.sura_header--compact .sura_name_img{ max-height:84px; max-width:none; }

/* Mobile adjustments */
@media (max-width: 600px){
  .sura-en{ font-size:34px; }
  .sura-num{ font-size:1.7rem; }
  .sura_header-right{ max-width:60%; }
  .sura_name_img{ max-height:100px; }
}

/* Meta rows below header */
.sura_meta{ margin:.5rem 0 1rem; color:#24435a; }
.sura_meta-line{ display:flex; flex-wrap:wrap; gap:1rem; align-items:center; }
.sura_meta-line span{ background:#eef5fb; padding:.25rem .5rem; border-radius:4px; font-size:.95rem; }
.sura_meta-initials{ margin-top:.35rem; }

/* SoundCloud embed spacing */
.sura_soundcloud{ margin: .5rem 0 1rem; }

/* Follow-along highlight */
.ayah_highlight{ background: rgba(255, 241, 118, .6); box-shadow: inset 0 -2px 0 rgba(0,0,0,.08); border-radius: 4px; }
.sura_sc_embed iframe{ border-radius:6px; }

.quran_aya{ padding: .6rem 0; border-bottom:1px solid #eee;}
.aya_details{ margin:.25rem 0 .5rem; }
.aya_details table{ width:100%; border-collapse:collapse; }
.aya_details td{ text-align:center; padding:.35rem; font-size:.85rem; border:0; }
.aya_details .SeqVerNum{ background:#CE456F; color:#fff;}
.aya_details .SeqInUninVerNum{ background:#6E493A; color:#fff;}
.aya_details .RevVerNum{ background:#7C003F; color:#fff;}
.aya_details .RevInUninVerNum{ background:#F58545; color:#000;}
.aya_details .SeqPrimeNumVer{ background:#54BA66; color:#000;}
.aya_details .SeqVerContainG{ background:#0069AA; color:#fff;}
.aya_details .FreqWordGodInVerse{ background:#37AAE1; color:#000;}
.aya_details .RevPrimeNumVer{ background:#267a25; color:#fff;}
.aya_details .RevVerContainGod{ background:#004977; color:#fff;}
.aya_details .Play{ background:#eee; }

/* Hover tooltips for verse metadata cells */
.aya_details td{ position: relative; }
.aya_details td:hover::after{
  position: absolute;
  left: 50%;
  bottom: 100%;
  transform: translateX(-50%);
  white-space: nowrap;
  background: rgba(0,0,0,.85);
  color:#fff;
  padding: .25rem .4rem;
  border-radius: 3px;
  font-size: .75rem;
  line-height: 1;
  content: '';
  pointer-events: none;
}
.aya_details td.SeqVerNum:hover::after{ content: 'Seq verse number'; }
.aya_details td.SeqInUninVerNum:hover::after{ content: 'Seq I/U-initialed verse number'; }
.aya_details td.RevVerNum:hover::after{ content: 'Seq revealed verses (overall)'; }
.aya_details td.RevInUninVerNum:hover::after{ content: 'Seq revealed verses (I/U Suras)'; }
.aya_details td.SeqPrimeNumVer:hover::after{ content: 'Seq prime/comp numbered verses'; }
.aya_details td.RevVerContainGod:hover::after{ content: '(*) Frequency of the word "God"'; }
.aya_details td.FreqWordGodInVerse:hover::after{ content: 'Seq revealed verse with word God'; }
/* New: clarify sequential verse containing "God"; support both possible class spellings */
.aya_details td.SeqVerContainG:hover::after{ content: 'Sequential verse with the word God'; }
.aya_details td.SeqVerContainGod:hover::after{ content: 'Sequential verse with the word God'; }

.qdb-controls-row{ display:flex; flex-wrap:wrap; align-items:center; gap:.75rem 1rem; margin:.75rem 0; font-family: inherit; background:#f6f7f7; border:1px solid #e3e5e8; padding:.5rem .75rem; border-radius:6px; }
.qdb-controls-row .qdb-font-controls,
.qdb-controls-row #qdb-view-selector,
.qdb-controls-row .qdb-reciter-select{ display:inline-flex; align-items:center; gap:.5rem; margin:0; }
.qdb-controls-row #qdb-view-selector label{ display:inline-flex; align-items:center; gap:.35rem; }
.qdb-controls-row .qdb-label{ margin-right:.25rem; font-weight:600; }
.qdb-controls-row .qdb-div{ display:inline-block; width:1px; height:16px; background:#ddd; margin:0 .5rem; }
.qdb-view{ display:inline-flex; gap:1rem; align-items:center; margin:0; }
.qdb-reciter-select{ margin:0; }
/* Enforce left (reciter), middle (view), right (font controls) ordering */
.qdb-controls-row .qdb-reciter-select{ order:0; }
.qdb-controls-row #qdb-view-selector{ order:1; flex:1 1 auto; }
.qdb-controls-row .qdb-font-controls{ order:2; margin-left:auto; }

/* Highlight styling for Arabic Allah occurrences within ayah text */
.qdb-allah-word{ color:#0b61a4; font-weight:700; }
.qdb-allah-sup{ color:#0b61a4; font-size:.75em; vertical-align: super; margin-inline-start:2px; }
/* English translation highlight for the word God */
.qdb-god-word{ color:#0b61a4; font-weight:700; }
.qdb-god-sup{ color:#0b61a4; font-size:.75em; vertical-align: super; margin-left:2px; }

@media (max-width: 640px){
  .qdb-controls-row{ gap:.5rem .75rem; }
  .qdb-controls-row #qdb-view-selector{ flex: 1 1 100%; order: 2; }
  .qdb-controls-row .qdb-font-controls{ order:3; width:auto; margin-left:0; }
}

/* sticky player */
.qdb-sticky{ position:fixed; left:0; right:0; bottom:0; z-index:1000; background:#fff; border-top:1px solid #ddd; padding:.5rem 1rem; display:flex; gap:1rem; align-items:center; box-shadow:0 -6px 18px rgba(0,0,0,.06);}
.qdb-sticky audio{ width: 360px; max-width: 60vw; }
.qdb-now-playing{ font-weight:600; }
button.qdb-play{ background:none; border:0; cursor:pointer; font-size:0; width:28px; height:28px; display:inline-flex; align-items:center; justify-content:center;}
button.qdb-play:before{ content:"\f522"; font: normal 20px/1 dashicons; }
button.qdb-play.is-playing:before{ content:"\f523"; }

/* Editor placeholder */
.qdb-editor-placeholder{ padding:1rem; border:1px dashed #ccc; background:#fafafa; }

/* Sura grid navigation (compact stacked cards) */
.qdb-sura-grid{ display:grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 10px; }
.qdb-sura-card{ display:flex; flex-direction:column; align-items:center; justify-content:flex-start; position:relative; padding:12px; border-radius:6px; text-decoration:none; background:#004977; color:#fff; border:0; box-shadow:0 1px 2px rgba(0,0,0,.06); text-align:center; }
.qdb-sura-toprow{ order:0; align-self:stretch; display:flex; align-items:center; justify-content:flex-start; gap:8px; }
.qdb-sura-numwrap{ display:flex; flex-direction:column; align-items:center; justify-content:flex-start; position:relative; }
.qdb-sura-card:hover, .qdb-sura-card:focus, .qdb-sura-card:focus-visible, .qdb-sura-card:active{ background:#0b61a4; box-shadow:0 3px 12px rgba(0,0,0,.12); transform: translateY(-1px); color:#fff; }
.qdb-sura-num{ font-weight:800; font-size:.95rem; line-height:1; color:#fff; opacity:1; order:0; position:relative; z-index:2; }
/* Bookmark icon below number (layered under number, 3x size, top-aligned with wrapper) */
.qdb-sura-bookmark{ display:block; color:#000; line-height:1; position:absolute; top:-12px; left:50%; transform:translateX(-50%); z-index:1; font-size:2.85rem; }
.qdb-sura-bookmark svg{ display:block; width:1em; height:1em; }
/* Muqatta'at initials badge: burgundy circle with white text */
.qdb-sura-initials{ position:absolute; right:8px; bottom:8px; display:inline-flex; align-items:center; justify-content:center; background:#7a0925; color:#fff; font-weight:700; font-size:.72rem; line-height:1; border-radius:999px; padding:6px; min-width:28px; height:28px; box-shadow:0 1px 2px rgba(0,0,0,.25); transform: rotate(-30deg); transform-origin:center; z-index:2; direction:rtl; font-family:'hafs18', serif; }
/* Transliteration: Work Sans italic to match header */
.qdb-sura-phon{ font-family:'Work Sans', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif; font-style:italic; font-weight:400; font-size:.85rem; opacity:.95; margin-top:.2rem; color:#eaf4ff; order:2; }
/* English name: Merriweather bold, scaled down */
.qdb-sura-en{ font-family:'Merriweather', Georgia, serif; font-weight:700; font-size:1.1rem; line-height:1.15; margin-top:.25rem; margin-bottom:.8rem; color:#fff; text-shadow:-1.3px 2.25px 3px rgba(0,0,0,.35); order:3; }
/* Arabic stacked last, RTL and right-aligned within card */
.qdb-sura-ar{ font-family:'me_quran_new','hafs18', serif; font-size:1rem; line-height:1.3; margin-top:.2rem; direction:rtl; text-align:right; color:#fff; width:100%; }
/* Arabic PNG name image (reduced, like header but smaller, centered) */
.qdb-sura-name-img{ position:static; display:block; width:auto; max-width:90%; height:auto; max-height:72px; filter: drop-shadow(-2.5px 4.33px 5px rgba(0,0,0,.5)); margin:.35rem auto .6rem auto; object-fit:contain; order:1; }
/* Center fallback Arabic text when PNG fails */
.qdb-sura-name-fallback{ order:1; width:100%; text-align:center; margin:.35rem auto .6rem; }

@media (max-width: 640px){
  .qdb-sura-grid{ grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 8px; }
  .qdb-sura-card{ padding:10px 12px; }
  .qdb-sura-en{ font-size:1rem; }
  .qdb-sura-ar{ font-size:.95rem; }
}
