/* المعجم القرآني — طراز الواجهة العامة.
   مستقل تماما عن dash.css الخاص بلوحة الذخيرة. */
:root{
  --paper:#faf7f0; --ink:#1f2d26; --ink-soft:#5c6b62; --ink-faint:#94a099;
  --green:#224034; --green-mid:#356149; --gold:#8a6d1f; --gold-soft:#c9a94a;
  --line:#e6ded0; --card:#fff; --tint:#f2efe4;
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);
  font-family:"Noto Naskh Arabic","Amiri",system-ui,serif}
a{color:var(--green-mid)}
.wrap{max-width:1180px;margin:0 auto;padding:0 1.6rem}

.top{background:var(--green);color:#f3efe3}
.top .wrap{display:flex;align-items:center;gap:1.4rem;padding-top:.75rem;padding-bottom:.75rem}
.brand{font-family:Amiri,serif;font-size:1.42rem;font-weight:700;color:#f3efe3;text-decoration:none}
.brand small{display:block;font-family:"Noto Naskh Arabic";font-size:.63rem;
  color:#9db3a6;font-weight:400;letter-spacing:.04em;margin-top:-2px}
.topnav{display:flex;gap:.15rem;margin-inline-start:auto;flex-wrap:wrap}
.topnav a{color:#cfe0d5;text-decoration:none;font-size:.85rem;padding:.4rem .8rem;border-radius:.45rem}
.topnav a.on,.topnav a:hover{background:#335643;color:#fff}

.hero{padding:2.9rem 0 2.1rem;text-align:center;background:linear-gradient(180deg,#f7f3e8,var(--paper))}
.hero h1{font-family:Amiri,serif;font-size:2.5rem;margin:0 0 .3rem;color:var(--green);font-weight:700}
.hero p.sub{margin:0 0 1.7rem;color:var(--ink-soft);font-size:.97rem}
.searchwrap{max-width:640px;margin:0 auto}
.searchbox{display:flex;background:#fff;border:1.5px solid var(--gold-soft);
  border-radius:.75rem;overflow:hidden;box-shadow:0 2px 10px rgba(138,109,31,.10)}
.searchbox input{flex:1;border:0;outline:0;padding:.95rem 1.1rem;font-size:1.12rem;
  font-family:inherit;background:transparent;color:var(--ink)}
.searchbox button{border:0;background:var(--green);color:#fff;padding:0 1.7rem;
  font-family:inherit;font-size:1rem;cursor:pointer}
.modes{display:flex;gap:.3rem;justify-content:center;margin-top:.75rem;flex-wrap:wrap}
.modes a{font-size:.83rem;padding:.3rem .8rem;border-radius:1rem;color:var(--ink-soft);text-decoration:none}
.modes a.on{background:var(--green);color:#fff}
.hint{font-size:.78rem;color:var(--ink-faint);margin-top:.7rem}
.counts{display:flex;justify-content:center;gap:2.3rem;flex-wrap:wrap;
  margin:2rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line)}
.counts div{text-align:center}
.counts b{display:block;font-size:1.5rem;color:var(--green);font-weight:600}
.counts span{font-size:.76rem;color:var(--ink-faint)}

.body{padding:1.9rem 0 2.4rem}
.secttl{font-family:Amiri,serif;font-size:1.22rem;color:var(--green);
  margin:0 0 .85rem;display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap}
.secttl em{font-style:normal;font-size:.74rem;color:var(--ink-faint);font-family:"Noto Naskh Arabic"}
.secttl a{margin-inline-start:auto;font-size:.79rem;color:var(--green-mid);text-decoration:none}

.alpha{display:flex;flex-wrap:wrap;gap:.28rem;margin-bottom:2.1rem}
.alpha a{width:2.15rem;height:2.15rem;display:grid;place-items:center;background:#fff;
  border:1px solid var(--line);border-radius:.45rem;font-size:1.05rem;
  color:var(--green);text-decoration:none}
.alpha a:hover,.alpha a.on{background:var(--green);color:#fff;border-color:var(--green)}

.doors{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.85rem;margin-bottom:2.1rem}
.door{background:#fff;border:1px solid var(--line);border-radius:.7rem;padding:1.05rem 1.2rem;
  text-decoration:none;color:inherit;display:block}
.door:hover{border-color:var(--green-mid)}
.door b{display:block;font-family:Amiri,serif;font-size:1.2rem;color:var(--green);margin-bottom:.2rem}
.door span{font-size:.8rem;color:var(--ink-soft);line-height:1.75;display:block}
.door u{display:block;margin-top:.5rem;font-size:.74rem;color:var(--gold);text-decoration:none}

.chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.4rem}
.chip{background:#fff;border:1px solid var(--line);border-radius:.5rem;
  padding:.36rem .7rem;font-size:1rem;color:var(--green);text-decoration:none}
.chip.root{letter-spacing:.1em}
.chip:hover{border-color:var(--gold-soft);background:#fffdf5}
.chip i{font-style:normal;font-size:.68rem;color:var(--ink-faint);letter-spacing:0;margin-inline-start:.3rem}

.twocol{display:grid;grid-template-columns:1.35fr 1fr;gap:1.4rem}
.mini{background:#fff;border:1px solid var(--line);border-radius:.7rem;padding:1.1rem 1.3rem}
.mini h4{margin:0 0 .6rem;font-family:Amiri,serif;font-size:1.08rem;color:var(--green)}
.verse{font-family:Amiri,serif;font-size:1.28rem;line-height:2.35;color:#2a3a32}
.verse mark{background:#fdf3d8;color:var(--gold);border-radius:.25rem;padding:0 .18rem}
.vref{font-size:.75rem;color:var(--ink-faint);margin-top:.4rem}

/* صفحة المدخل */
.crumb{padding:.7rem 0;font-size:.78rem;color:var(--ink-faint);border-bottom:1px solid var(--line)}
.crumb a{color:var(--green-mid);text-decoration:none}
.ehead{padding:1.9rem 0 1.4rem;border-bottom:2px solid var(--gold-soft);
  display:flex;align-items:flex-end;gap:1.5rem;flex-wrap:wrap}
.ehead h1{font-family:Amiri,serif;font-size:3.6rem;margin:0;color:var(--green);
  letter-spacing:.2em;font-weight:700;line-height:1}
.ehead h1.plain{letter-spacing:normal;font-size:3rem}
.ehead .meta{font-size:.83rem;color:var(--ink-soft);line-height:1.9}
.ehead .meta b{color:var(--green);font-weight:600}
.badge{display:inline-block;background:#eaf1eb;color:var(--green-mid);border-radius:1rem;
  padding:.2rem .7rem;font-size:.72rem;margin-inline-start:.35rem}
.badge.g{background:#faf1d9;color:var(--gold)}
.elayout{display:grid;grid-template-columns:1fr 262px;gap:0}
.emain{padding:1.5rem 0 2.4rem;min-width:0;padding-inline-end:1.6rem}
.eside{border-inline-start:1px solid var(--line);padding:1.5rem 1.2rem;background:#f7f4ea}
.eside h5{margin:0 0 .5rem;font-size:.76rem;color:var(--ink-faint);font-weight:400}
.sidelist a{display:block;font-size:.9rem;color:var(--green-mid);text-decoration:none;padding:.22rem 0}
.sidelist a:hover{color:var(--gold)}

.block{margin-bottom:1.9rem}
.blockttl{font-family:Amiri,serif;font-size:1.16rem;color:var(--green);margin:0 0 .7rem;
  padding-bottom:.35rem;border-bottom:1px solid var(--line)}
.core{font-size:1.14rem;line-height:2.25;color:#26332c}
.core .src{font-size:.74rem;color:var(--ink-faint);display:block;margin-top:.4rem}
.empty{color:var(--ink-faint);font-size:.92rem;line-height:2}
ol.senses{margin:0;padding:0;list-style:none;counter-reset:s}
ol.senses li{counter-increment:s;padding:.55rem 0;border-bottom:1px dashed var(--line);
  display:grid;grid-template-columns:1.8rem 1fr;gap:.5rem}
ol.senses li:before{content:counter(s);color:var(--gold);font-family:Amiri,serif;font-size:1.15rem}
ol.senses .gl{font-size:1.03rem;line-height:1.95}
ol.senses .en{font-size:.8rem;color:var(--ink-faint);direction:ltr;text-align:left;
  font-family:system-ui;margin-top:.1rem}
ol.senses .sh{font-family:Amiri,serif;font-size:1.06rem;color:#3d5a4a;margin-top:.3rem;line-height:2}
ol.senses .sh u{text-decoration:none;color:var(--ink-faint);font-family:"Noto Naskh Arabic";font-size:.72rem}

.derv{display:flex;flex-wrap:wrap;gap:.4rem}
.derv a{background:#fff;border:1px solid var(--line);border-radius:.5rem;padding:.4rem .75rem;
  text-decoration:none;color:var(--ink);font-size:1.02rem}
.derv a:hover{border-color:var(--gold-soft)}
.derv a i{font-style:normal;font-size:.68rem;color:var(--ink-faint);margin-inline-start:.35rem}
.derv a s{text-decoration:none;display:block;font-size:.68rem;color:var(--gold);margin-top:.1rem}

.shwd{padding:.65rem 0;border-bottom:1px solid var(--line);font-family:Amiri,serif;
  font-size:1.14rem;line-height:2.25;display:block;text-decoration:none;color:inherit}
.shwd:hover{background:#fdfbf4}
.shwd mark{background:#fdf3d8;color:var(--gold);border-radius:.25rem;padding:0 .2rem}
.shwd em{font-style:normal;font-family:"Noto Naskh Arabic";font-size:.72rem;color:var(--ink-faint);
  margin-inline-start:.6rem}
.raghib{background:#fbf8ef;border-inline-start:3px solid var(--gold-soft);padding:.85rem 1.1rem;
  font-size:1rem;line-height:2.15;color:#3a4740;max-height:16rem;overflow:auto;white-space:pre-wrap}

table.cog{width:100%;border-collapse:collapse;font-size:.9rem}
table.cog th{text-align:right;font-size:.73rem;color:var(--ink-faint);font-weight:400;
  padding:.4rem .5rem;border-bottom:1px solid var(--line)}
table.cog td{padding:.5rem;border-bottom:1px solid #f0ebdd}
.ltr{direction:ltr;text-align:left;font-size:1.15rem;font-family:"Noto Sans Hebrew","SBL Hebrew",serif}
.conf{font-size:.72rem;padding:.13rem .5rem;border-radius:1rem;background:#eaf1eb;color:var(--green-mid)}
.conf.m{background:#faf1d9;color:var(--gold)}
.tnote{font-size:.76rem;color:var(--ink-faint);line-height:1.9;margin-top:.6rem}

/* المصحف */
.read{display:grid;grid-template-columns:210px 1fr 300px;min-height:70vh}
.suralist{background:#f4f1e6;border-inline-start:1px solid var(--line);padding:1rem .8rem;
  font-size:.85rem;max-height:100vh;overflow:auto;position:sticky;top:0}
.suralist a{display:block;color:var(--ink-soft);text-decoration:none;padding:.26rem .5rem;border-radius:.4rem}
.suralist a.on,.suralist a:hover{background:var(--green);color:#fff}
.mushaf{padding:1.8rem 2rem;font-family:Amiri,serif;font-size:1.72rem;line-height:2.75;text-align:justify}
.mushaf w{cursor:pointer;border-radius:.25rem;padding:0 .1rem}
.mushaf w:hover{background:#f2ecd8}
.mushaf w.sel{background:#fdf3d8;color:var(--gold)}
.mushaf .ayanum{color:var(--gold-soft);font-size:1.15rem}
.drawer{border-inline-end:1px solid var(--line);background:#f9f6ec;padding:1.2rem 1.1rem;
  position:sticky;top:0;max-height:100vh;overflow:auto}
.drawer .w{font-family:Amiri,serif;font-size:2rem;text-align:center;color:var(--green);margin-bottom:.1rem}
.drawer .r{text-align:center;font-size:.73rem;color:var(--ink-faint);margin-bottom:.9rem}
.drow{display:flex;justify-content:space-between;gap:.6rem;font-size:.85rem;padding:.32rem 0;
  border-bottom:1px solid #ece5d5}
.drow span{color:var(--ink-faint);font-size:.76rem;white-space:nowrap}
.drow b{font-weight:500;text-align:left}
.drow b a{color:var(--green-mid);text-decoration:none;border-bottom:1px dotted var(--green-mid)}
.segtbl{width:100%;border-collapse:collapse;margin:.6rem 0;background:#fff;border-radius:.4rem}
.segtbl td{padding:.28rem .4rem;font-size:.8rem;border-bottom:1px solid #f0ebdd}
.segtbl td:first-child{font-family:Amiri,serif;font-size:1.05rem}
.segtbl td:nth-child(2){font-size:.68rem;color:var(--ink-faint)}
.gobtn{display:block;text-align:center;background:var(--green);color:#fff;text-decoration:none;
  border-radius:.5rem;padding:.55rem;font-size:.86rem;margin-top:.9rem}
.trans{font-size:.78rem;color:var(--ink-soft);direction:ltr;text-align:left;
  font-family:system-ui;line-height:1.7;margin-top:.8rem;padding-top:.7rem;border-top:1px dashed var(--line)}

/* صفحات النص: المصادر وغيرها */
.doc{max-width:800px;margin:0 auto;padding:2rem 0 3rem;font-size:1rem;line-height:2.15}
.doc h1{font-family:Amiri,serif;font-size:2.1rem;color:var(--green);margin:0 0 .3rem}
.doc h2{font-family:Amiri,serif;font-size:1.3rem;color:var(--green);margin:2.1rem 0 .7rem;
  padding-bottom:.3rem;border-bottom:1px solid var(--line)}
.doc h3{font-size:1rem;color:var(--gold);margin:1.3rem 0 .4rem}
.doc p{margin:.5rem 0}
.doc ul{padding-inline-start:1.2rem;margin:.4rem 0}
.doc li{margin:.3rem 0}
.doc table{width:100%;border-collapse:collapse;font-size:.9rem;margin:.8rem 0}
.doc th{text-align:right;background:var(--tint);padding:.5rem .6rem;font-weight:600;font-size:.82rem}
.doc td{padding:.55rem .6rem;border-bottom:1px solid var(--line);vertical-align:top}
.doc .lead{font-size:1.05rem;color:var(--ink-soft);margin-bottom:1.4rem}
.srcbox{background:#fff;border:1px solid var(--line);border-radius:.7rem;padding:1rem 1.2rem;margin:.7rem 0}
.srcbox b{color:var(--green);font-size:1.03rem}
.srcbox .lic{display:inline-block;background:var(--tint);border-radius:1rem;
  padding:.15rem .65rem;font-size:.73rem;color:var(--ink-soft);margin-inline-start:.4rem}
.srcbox p{margin:.35rem 0;font-size:.9rem;color:var(--ink-soft);line-height:1.95}
.srcbox a{font-size:.8rem;word-break:break-all}

/* الذيل */
footer.mfoot{background:#f1ece0;border-top:1px solid var(--line);padding:1.6rem 0;margin-top:2rem}
footer.mfoot .wrap{display:flex;gap:2rem;flex-wrap:wrap;font-size:.83rem;color:var(--ink-soft)}
footer.mfoot a{color:var(--green-mid);text-decoration:none;display:block;padding:.15rem 0}
footer.mfoot h6{margin:0 0 .35rem;font-size:.74rem;color:var(--ink-faint);font-weight:400}
footer.mfoot .fnote{margin-inline-start:auto;max-width:330px;font-size:.78rem;line-height:1.9}

.pager{display:flex;gap:.4rem;justify-content:center;margin-top:1.4rem;flex-wrap:wrap;font-size:.85rem}
.pager a,.pager span{padding:.32rem .7rem;border-radius:.4rem;text-decoration:none;color:var(--green-mid)}
.pager .cur{background:var(--green);color:#fff}
@media(max-width:960px){.elayout,.twocol,.read{grid-template-columns:1fr}
  .suralist,.drawer{position:static;max-height:none}.emain{padding-inline-end:0}}
