/* ============================================================
   EEMAAN FOUNDATION — "Illuminated Manuscript" Design System v4
   Restyle only: every selector from v3 is preserved so all
   pages and site.js hooks keep working untouched.
   ============================================================ */

:root{
  --green:#2f4b28;--deep-green:#1d3318;--gold:#a87b12;--gold-bright:#d4a437;
  --sand:#f0e5cd;--cream:#faf6ec;--ink:#1c2620;
  --ef-green:#2f4b28;--ef-deep:#1d3318;--ef-gold:#a87b12;--ef-gold2:#d4a437;
  --ef-cream:#faf6ec;--ef-sand:#f0e5cd;--ef-ink:#1c2620;
  --ef-line:rgba(168,123,18,.28);--ef-line-soft:rgba(47,75,40,.12);
  --ef-radius:6px;
  --ef-shadow-sm:0 1px 2px rgba(29,51,24,.06),0 8px 24px rgba(29,51,24,.06);
  --ef-shadow-md:0 2px 4px rgba(29,51,24,.07),0 18px 44px rgba(29,51,24,.10);
}

html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(circle at 10% 0%,rgba(168,123,18,.05),transparent 26%),
    radial-gradient(circle at 92% 8%,rgba(47,75,40,.05),transparent 26%),
    var(--cream);
  color:var(--ink);
}

/* —— Editorial serif headlines, site-wide (beats Tailwind .font-black) —— */
h1.font-black,h2.font-black,.efx-display{
  font-family:'Cormorant Garamond','Amiri',Georgia,serif;
  font-weight:700;letter-spacing:-.015em;
}
.font-arabic{font-family:'Amiri',serif}

/* —— Focus & motion accessibility —— */
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{
  outline:2px solid var(--gold);outline-offset:2px;border-radius:2px;
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
  html{scroll-behavior:auto}
}

/* —— Navigation —— */
.nav-link{position:relative;color:#3c4a3a;transition:color .2s;padding:.35rem 0}
.nav-link:hover{color:var(--green)}
.nav-link:after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:2px;
  background:linear-gradient(90deg,var(--gold),var(--gold-bright));transition:width .25s}
.nav-link:hover:after{width:100%}

/* —— Signature: true girih (khatim) tessellation —— */
.islamic-pattern{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96'%3E%3Cg fill='none' stroke='%23a87b12' stroke-opacity='0.16' stroke-width='1'%3E%3Cpath d='M48 18 L57 39 L78 48 L57 57 L48 78 L39 57 L18 48 L39 39 Z'/%3E%3Cpath d='M48 28 L62 48 L48 68 L34 48 Z'/%3E%3Cpath d='M0 0 L9 -9 M0 0 L-9 9 M96 0 L87 9 M96 96 L87 87 M0 96 L9 87'/%3E%3Ccircle cx='48' cy='48' r='4'/%3E%3Cpath d='M0 48 L18 48 M78 48 L96 48 M48 0 L48 18 M48 78 L48 96'/%3E%3C/g%3E%3C/svg%3E");
  background-size:96px 96px;
}

/* —— Signature: illuminated khatim divider —— */
.efx-divider{display:flex;align-items:center;gap:1rem;justify-content:center;margin:0 auto}
.efx-divider::before,.efx-divider::after{content:"";height:1px;flex:1;max-width:140px;
  background:linear-gradient(90deg,transparent,var(--ef-line))}
.efx-divider::after{background:linear-gradient(90deg,var(--ef-line),transparent)}
.efx-divider .efx-star{width:18px;height:18px;color:var(--gold);flex:none;transform:rotate(0deg);transition:transform .8s ease}
.efx-divider:hover .efx-star{transform:rotate(45deg)}

/* —— Hero —— */
.hero-title{text-shadow:0 4px 30px rgba(0,0,0,.55)}
.hero-text{text-shadow:0 2px 14px rgba(0,0,0,.5)}
.efx-bismillah{font-family:'Amiri',serif;font-size:clamp(1.5rem,3vw,2.2rem);color:#ecd9a8;
  text-shadow:0 2px 18px rgba(0,0,0,.5);line-height:1.6}

/* —— Cards —— */
.soft-card{
  background:rgba(255,255,255,.86);border:1px solid var(--ef-line-soft);
  border-radius:var(--ef-radius);box-shadow:var(--ef-shadow-sm);
  position:relative;
}
.soft-card::before{content:"";position:absolute;inset:5px;border:1px solid rgba(168,123,18,.12);
  border-radius:3px;pointer-events:none}

/* —— Forms —— */
.form-input{width:100%;border:1px solid rgba(47,75,40,.20);background:#fff;
  padding:.75rem 1rem;outline:none;border-radius:3px;transition:border-color .2s,box-shadow .2s}
.form-input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(168,123,18,.14)}

/* —— Buttons —— */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  padding:.85rem 1.4rem;font-weight:800;letter-spacing:.04em;border-radius:3px;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease;
  position:relative}
.btn:active{transform:translateY(1px)}
.btn-green{background:var(--green);color:#fff;box-shadow:0 10px 24px rgba(29,51,24,.22)}
.btn-green:hover{background:var(--deep-green)}
.btn-gold{background:linear-gradient(135deg,var(--gold) 0%,#c2922a 55%,var(--gold) 100%);
  color:#fff;box-shadow:0 10px 24px rgba(168,123,18,.30)}
.btn-gold:hover{background:linear-gradient(135deg,#8f680e,#b88a1f,#8f680e);box-shadow:0 14px 30px rgba(168,123,18,.36)}
.btn-line{border:1px solid rgba(47,75,40,.35);color:var(--green);background:rgba(255,255,255,.85)}
.btn-line:hover{background:var(--sand);border-color:var(--gold)}

/* —— Objectives section —— */
.objectives-modern{position:relative;overflow:hidden;
  background:
    radial-gradient(circle at top left,rgba(168,123,18,.07),transparent 24%),
    radial-gradient(circle at bottom right,rgba(47,75,40,.07),transparent 26%),
    linear-gradient(180deg,#fbf7ef 0%,var(--sand) 100%)}
.objectives-modern:before,.objectives-modern:after{content:"";position:absolute;width:320px;height:320px;
  border-radius:9999px;filter:blur(34px);pointer-events:none;opacity:.5}
.objectives-modern:before{top:-120px;left:-120px;background:rgba(168,123,18,.10)}
.objectives-modern:after{bottom:-150px;right:-100px;background:rgba(47,75,40,.10)}

.section-badge{display:inline-flex;align-items:center;gap:.65rem;padding:.55rem 1.1rem;
  border-radius:9999px;background:rgba(255,255,255,.85);border:1px solid var(--ef-line);
  box-shadow:var(--ef-shadow-sm)}
.section-badge .dot{width:.5rem;height:.5rem;border-radius:9999px;background:var(--gold);
  box-shadow:0 0 0 6px rgba(168,123,18,.14)}

.objectives-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:1.3rem}
@media(min-width:640px){.objectives-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1024px){.objectives-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}

.objective-card{position:relative;min-height:265px;padding:1.8rem 1.25rem 1.4rem;
  border-radius:var(--ef-radius);background:rgba(255,255,255,.85);backdrop-filter:blur(10px);
  border:1px solid var(--ef-line-soft);box-shadow:var(--ef-shadow-sm);
  transition:transform .35s,box-shadow .35s,border-color .35s;overflow:hidden;
  display:flex;flex-direction:column;align-items:flex-start}
.objective-card:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;
  background:linear-gradient(90deg,var(--gold),var(--gold-bright) 50%,var(--green))}
.objective-card:after{content:"";position:absolute;inset:auto -35px -35px auto;width:110px;height:110px;
  border-radius:9999px;background:radial-gradient(circle,rgba(168,123,18,.12),transparent 70%);transition:transform .35s}
.objective-card:hover{transform:translateY(-8px);box-shadow:var(--ef-shadow-md);border-color:var(--ef-line)}
.objective-card:hover:after{transform:scale(1.2)}
.objective-number{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:700;
  letter-spacing:.22em;color:rgba(47,75,40,.55);margin-bottom:1rem}
.objective-icon{width:70px;height:70px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;
  font-size:1.65rem;margin-bottom:1.1rem;
  background:linear-gradient(135deg,rgba(47,75,40,.10),rgba(168,123,18,.16));color:var(--green);
  border:1px solid rgba(168,123,18,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
  transition:transform .35s,box-shadow .35s,color .35s}
.objective-card:hover .objective-icon{transform:translateY(-4px) scale(1.05) rotate(-4deg);
  box-shadow:0 12px 22px rgba(168,123,18,.18);color:var(--gold)}
.objective-title{font-family:'Cormorant Garamond',serif;font-size:1.6rem;line-height:1.12;font-weight:700;
  color:var(--deep-green);margin-bottom:.8rem}
.objective-text{font-size:.95rem;line-height:1.65;color:#56604f;margin-top:auto}

/* —— Scroll reveal (site.js hooks — keep) —— */
.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .75s,transform .75s}
.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}

/* —— Calendar / events —— */
.calendar-day{min-height:120px;background:#fff;border:1px solid var(--ef-line-soft);padding:.65rem;cursor:pointer;border-radius:3px}
.calendar-day:hover{border-color:var(--gold)}
.event-pill{font-size:.75rem;font-weight:800;color:#fff;padding:.18rem .4rem;margin-top:.35rem;display:block;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:2px}
.star-btn{font-size:1.2rem;color:var(--gold);background:none;border:none;cursor:pointer}

/* —— Admin —— */
.admin-table th{background:var(--sand);text-align:left;padding:.7rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--deep-green)}
.admin-table td{border-top:1px solid var(--ef-line-soft);padding:.7rem;vertical-align:top}
.tab-link.active{background:var(--green);color:#fff}

/* —— Modal —— */
.modal{position:fixed;inset:0;background:rgba(20,30,18,.6);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;z-index:100}
.modal.show{display:flex}
.modal-panel{background:#fff;max-width:650px;width:92%;max-height:85vh;overflow:auto;padding:1.5rem;
  box-shadow:0 24px 80px rgba(0,0,0,.28);border-radius:var(--ef-radius);border-top:3px solid var(--gold)}

/* —— Category stats —— */
.category-stats-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:.9rem}
@media(min-width:640px){.category-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1024px){.category-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.category-stat{background:rgba(255,255,255,.88);border:1px solid var(--ef-line-soft);box-shadow:var(--ef-shadow-sm);
  padding:1rem 1.15rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:var(--ef-radius)}
.category-stat span{font-weight:900;color:var(--green)}
.category-stat strong{min-width:2.4rem;height:2.4rem;border-radius:999px;background:var(--green);color:#fff;
  display:inline-flex;align-items:center;justify-content:center;font-size:1.05rem;border:1px solid var(--gold-bright)}

.hidden-by-default{display:none!important}

/* —— Media / books —— */
.media-player-box{position:relative;width:100%;background:#111827;overflow:hidden;aspect-ratio:16/9;border-radius:var(--ef-radius)}
.media-player-box iframe,.media-player-box .yt-player{width:100%;height:100%;display:block}
.media-player-box.audio{aspect-ratio:auto;background:var(--sand);border:1px solid var(--ef-line-soft)}
.media-control{border:1px solid rgba(47,75,40,.2);background:#fff;color:var(--green);font-weight:900;
  font-size:.78rem;padding:.6rem .35rem;transition:.2s;border-radius:3px}
.media-control:hover{background:var(--green);color:#fff}
.book-cover{width:100%;aspect-ratio:3/4;background:var(--sand);border:1px solid var(--ef-line-soft);
  display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:3px}
.book-cover img{width:100%;height:100%;object-fit:cover;display:block}
.book-cover.placeholder{flex-direction:column;gap:.75rem;color:var(--green);font-weight:900;text-align:center}
.book-cover.placeholder i{font-size:3rem;color:var(--gold)}
.admin-cover-preview{width:120px;aspect-ratio:3/4;border:1px solid rgba(47,75,40,.2);background:var(--sand);overflow:hidden;border-radius:3px}
.admin-cover-preview img{width:100%;height:100%;object-fit:cover;display:block}

/* ============================================================
   EF SOPHISTICATED PANELS (information / kb / sports pages)
   ============================================================ */
.ef-shell{position:relative;overflow:hidden;border-radius:var(--ef-radius);
  background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(250,246,236,.74));
  border:1px solid var(--ef-line);box-shadow:var(--ef-shadow-md)}
.ef-shell::before{content:"";position:absolute;inset:-30% auto auto -16%;width:360px;height:360px;
  border-radius:999px;background:rgba(168,123,18,.10);filter:blur(36px);pointer-events:none}
.ef-shell::after{content:"";position:absolute;right:-9%;bottom:-30%;width:420px;height:420px;
  border-radius:999px;background:rgba(47,75,40,.09);filter:blur(40px);pointer-events:none}
.ef-content{position:relative;z-index:2}
.ef-kicker{display:inline-flex;align-items:center;gap:.7rem;color:var(--ef-gold);
  text-transform:uppercase;letter-spacing:.32em;font-weight:900;font-size:.76rem}
.ef-kicker::before{content:"";width:38px;height:2px;background:linear-gradient(90deg,var(--ef-gold),var(--ef-gold2))}

.ef-live-grid{display:grid;grid-template-columns:1fr;gap:1rem}
@media(min-width:900px){.ef-live-grid{grid-template-columns:1.1fr 1fr 1fr}}
.ef-live-tile{position:relative;overflow:hidden;background:rgba(255,255,255,.8);border:1px solid var(--ef-line-soft);
  padding:1.25rem;box-shadow:var(--ef-shadow-sm);border-radius:var(--ef-radius);
  transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.ef-live-tile:hover{transform:translateY(-5px);box-shadow:var(--ef-shadow-md);border-color:var(--ef-line)}
.ef-live-icon{width:54px;height:54px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,rgba(168,123,18,.16),rgba(47,75,40,.08));color:var(--ef-gold);
  font-size:1.3rem;border:1px solid rgba(168,123,18,.2);animation:efFloat 4.2s ease-in-out infinite}
.ef-live-label{font-weight:900;color:var(--ef-deep);letter-spacing:.02em}
.ef-live-value{color:#4b5563;line-height:1.45;font-weight:700}
.ef-live-large{font-family:'Cormorant Garamond',serif;font-size:2rem;line-height:1.02;color:var(--ef-deep);font-weight:700}
.ef-live-sub{display:block;color:#69745f;font-size:.9rem;font-weight:700;margin-top:.3rem}

.ef-panel{background:rgba(255,255,255,.9);border:1px solid var(--ef-line-soft);box-shadow:var(--ef-shadow-sm);border-radius:var(--ef-radius)}

.ef-control-grid{display:grid;grid-template-columns:1fr;gap:.9rem;background:rgba(250,246,236,.85);
  border:1px solid var(--ef-line);padding:1rem;border-radius:var(--ef-radius)}
@media(min-width:850px){.ef-control-grid{grid-template-columns:1.25fr 1.45fr 1fr 1fr}}
.ef-control-grid label{font-size:.78rem;text-transform:uppercase;letter-spacing:.13em;color:var(--ef-green);font-weight:900}
.ef-control-grid select,.ef-control-grid input{width:100%;margin-top:.42rem;background:#fff;
  border:1px solid rgba(47,75,40,.18);padding:.85rem .9rem;color:#16211a;font-weight:700;outline:none;
  transition:.2s;border-radius:3px}
.ef-control-grid select:focus,.ef-control-grid input:focus{border-color:var(--ef-gold);box-shadow:0 0 0 4px rgba(168,123,18,.13)}
.ef-custom-panel{display:none;grid-column:1/-1;grid-template-columns:1fr;gap:.9rem}
.ef-custom-panel.show{display:grid}
@media(min-width:850px){.ef-custom-panel.show{grid-template-columns:repeat(4,minmax(0,1fr))}}

.ef-prayer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
@media(min-width:900px){.ef-prayer-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ef-prayer-card{position:relative;overflow:hidden;min-height:135px;border-radius:var(--ef-radius);
  background:linear-gradient(150deg,var(--sand),#fff8ea);border:1px solid var(--ef-line);
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  transition:transform .35s ease,box-shadow .35s ease}
.ef-prayer-card::before{content:"";position:absolute;inset:4px;border:1px solid rgba(168,123,18,.16);border-radius:3px;pointer-events:none}
.ef-prayer-card::after{content:"";position:absolute;right:-36px;bottom:-36px;width:95px;height:95px;
  border-radius:999px;background:rgba(47,75,40,.08);transition:.35s}
.ef-prayer-card:hover{transform:translateY(-6px) scale(1.01);box-shadow:var(--ef-shadow-md)}
.ef-prayer-card:hover::after{transform:scale(1.25)}
.ef-prayer-icon{position:relative;z-index:1;width:34px;height:34px;border-radius:999px;background:rgba(255,255,255,.8);
  color:var(--ef-gold);display:flex;align-items:center;justify-content:center;margin-bottom:.55rem;border:1px solid rgba(168,123,18,.2)}
.ef-prayer-name{position:relative;z-index:1;color:var(--ef-green);font-weight:900;font-size:1.15rem}
.ef-prayer-time{position:relative;z-index:1;font-family:'Cormorant Garamond',serif;color:var(--ef-gold);
  font-weight:700;font-size:2.3rem;line-height:1;margin-top:.4rem}

.ef-meta-row{display:flex;flex-wrap:wrap;gap:.7rem}
.ef-meta-pill{display:inline-flex;align-items:center;gap:.5rem;background:var(--sand);
  border:1px solid var(--ef-line);color:var(--ef-green);padding:.62rem .85rem;font-weight:800;border-radius:999px}

.ef-jumuah-grid{display:grid;grid-template-columns:1fr;gap:.9rem}
@media(min-width:900px){.ef-jumuah-grid{grid-template-columns:.85fr .75fr 1.45fr 1.7fr 1fr}}
.ef-jumuah-cell{background:rgba(255,255,255,.92);border:1px solid var(--ef-line-soft);padding:1rem;
  box-shadow:var(--ef-shadow-sm);border-radius:var(--ef-radius);border-top:2px solid var(--ef-gold)}
.ef-jumuah-cell span{display:block;font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;
  color:var(--ef-gold);font-weight:900;margin-bottom:.25rem}
.ef-jumuah-cell strong{display:block;color:#16211a;font-weight:800;font-size:1.05rem;line-height:1.35}

.ef-animate{opacity:0;transform:translateY(28px);transition:opacity .72s ease,transform .72s ease}
.ef-animate.is-visible,.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}
.soft-card,.objective-card,.category-stat,.calendar-day{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.soft-card:hover,.category-stat:hover{transform:translateY(-4px);box-shadow:var(--ef-shadow-md)}

@keyframes efFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes efPulse{0%,100%{box-shadow:0 0 0 0 rgba(168,123,18,.2)}50%{box-shadow:0 0 0 12px rgba(168,123,18,0)}}
.ef-pulse{animation:efPulse 2.8s infinite}
.page-enter{animation:efPage .6s ease both}
@keyframes efPage{from{opacity:0}to{opacity:1}}

/* ============================================================
   NEW: refined navigation + mobile menu (efx-*)
   ============================================================ */
.efx-nav{border-bottom:1px solid var(--ef-line);
  background:linear-gradient(180deg,rgba(250,246,236,.97),rgba(250,246,236,.92));
  box-shadow:0 1px 0 rgba(255,255,255,.7) inset,0 10px 30px rgba(29,51,24,.05)}
.efx-nav-accent{height:3px;background:linear-gradient(90deg,var(--deep-green),var(--gold) 35%,var(--gold-bright) 50%,var(--gold) 65%,var(--deep-green))}
.efx-logo-frame{width:3.5rem;height:3.5rem;background:#fff;border:1px solid var(--ef-line);
  border-radius:14px 14px 50% 50%/14px 14px 42% 42%; /* subtle mihrab arch */
  padding:.55rem;box-shadow:var(--ef-shadow-sm);display:flex;align-items:center;justify-content:center;overflow:hidden}
.efx-burger{display:inline-flex;flex-direction:column;gap:5px;padding:.65rem;border:1px solid var(--ef-line);
  border-radius:6px;background:#fff;cursor:pointer}
@media(min-width:1024px){.efx-burger,.efx-mobile-menu{display:none!important}}
.efx-burger span{display:block;width:22px;height:2px;background:var(--green);transition:transform .25s,opacity .25s}
.efx-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.efx-burger.open span:nth-child(2){opacity:0}
.efx-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.efx-mobile-menu{display:none;border-top:1px solid var(--ef-line-soft);background:rgba(250,246,236,.98)}
.efx-mobile-menu.open{display:block}
.efx-mobile-menu a{display:block;padding:.85rem 1rem;font-weight:800;font-size:.8rem;text-transform:uppercase;
  letter-spacing:.08em;color:#3c4a3a;border-bottom:1px solid rgba(47,75,40,.08)}
.efx-mobile-menu a:hover{color:var(--green);background:rgba(168,123,18,.06)}

/* ============================================================
   NEW: illuminated footer (efx-*)
   ============================================================ */
.efx-footer{position:relative;background:
  radial-gradient(circle at 85% 0%,rgba(212,164,55,.10),transparent 32%),
  linear-gradient(180deg,#22391c,#15240f);color:#cfd8c6;overflow:hidden}
.efx-footer .efx-footer-pattern{position:absolute;inset:0;opacity:.5;pointer-events:none}
.efx-footer-rule{height:1px;background:linear-gradient(90deg,transparent,rgba(212,164,55,.55),transparent)}
.efx-footer h4{font-family:'Cormorant Garamond',serif;font-weight:700;color:#f2e6c8;font-size:1.25rem;letter-spacing:.02em}
.efx-footer a{transition:color .2s}
.efx-footer a:hover{color:var(--gold-bright)}
.efx-footer-bismillah{font-family:'Amiri',serif;color:#e8d6a4;font-size:1.5rem;line-height:1.7}

/* ============================================================
   BOOKS LIBRARY V12 — catalogue, profiles, volumes and reader
   ============================================================ */
.admin-label{display:block;font-size:.78rem;line-height:1.1;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--green)}
.book-detail-cover{width:100%;aspect-ratio:3/4;background:var(--sand);border:1px solid var(--ef-line-soft);overflow:hidden;border-radius:12px;box-shadow:0 18px 44px rgba(29,51,24,.16)}
.book-detail-cover img{width:100%;height:100%;display:block;object-fit:cover}
.book-metadata>div{background:#faf6ec;border:1px solid rgba(47,75,40,.10);padding:1rem;border-radius:10px}
.book-metadata dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;font-weight:900;color:#8a6510;margin-bottom:.3rem}
.book-metadata dd{font-size:1rem;font-weight:800;color:#334d2a}
.author-avatar{width:110px;height:110px;flex:0 0 110px;border-radius:999px;border:4px solid #fff;box-shadow:0 0 0 2px rgba(184,134,11,.35),0 12px 30px rgba(29,51,24,.15);background:#faf6ec;display:flex;align-items:center;justify-content:center;overflow:hidden;color:#b8860b;font-size:2.4rem}
.author-avatar img{width:100%;height:100%;object-fit:cover}
.author-profile-photo{width:100%;aspect-ratio:1/1;border-radius:18px;border:1px solid rgba(47,75,40,.15);background:#faf6ec;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#b8860b;font-size:5rem;box-shadow:0 18px 45px rgba(29,51,24,.13)}
.author-profile-photo img{width:100%;height:100%;object-fit:cover}
.reader-shell{background:#e8e8e8;min-height:82vh}
.reader-toolbar{position:sticky;top:80px;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(47,75,40,.16);padding:1rem max(1rem,calc((100vw - 80rem)/2));display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.pdf-reader-frame{display:block;width:100%;height:calc(100vh - 165px);min-height:720px;border:0;background:#525659}
@media(max-width:767px){.reader-toolbar{top:80px}.pdf-reader-frame{height:calc(100vh - 220px);min-height:580px}}

/* V13 privacy-first visitor analytics and adaptive content */
.ef-consent-banner{position:fixed;z-index:9999;left:18px;right:18px;bottom:18px;max-width:1180px;margin:auto;background:#fffdf7;border:1px solid rgba(184,134,11,.32);box-shadow:0 18px 55px rgba(21,43,24,.24);padding:20px 22px;display:flex;gap:24px;align-items:center;justify-content:space-between;border-radius:14px;color:#26342b}.ef-consent-banner strong{display:block;color:#294626;font-size:1.1rem;margin-bottom:4px}.ef-consent-banner p{max-width:760px;margin:0 0 5px;line-height:1.55;color:#59635d;font-size:.94rem}.ef-consent-banner a{font-weight:800;color:#8b6713;text-decoration:underline}.ef-consent-actions{display:flex;gap:10px;flex-wrap:wrap;flex-shrink:0}.ef-consent-actions form{margin:0}.ef-personalized-wrap{padding:14px 0;background:linear-gradient(90deg,rgba(236,226,194,.72),rgba(255,255,255,.86),rgba(236,226,194,.72));border-top:1px solid rgba(184,134,11,.16);border-bottom:1px solid rgba(184,134,11,.16)}.ef-personalized-card{background:#fff;border:1px solid rgba(184,134,11,.25);box-shadow:0 8px 24px rgba(40,63,35,.08);border-radius:13px;padding:18px 22px;display:flex;align-items:center;gap:20px}.ef-personalized-card h2{font-size:1.45rem;line-height:1.2;font-weight:900;color:#2f4b28;margin:0 0 5px}.ef-personalized-card p{color:#59635d;line-height:1.55;margin:0}.ef-personalized-image{width:92px;height:72px;object-fit:cover;border-radius:10px;border:1px solid rgba(47,75,40,.12)}
@media(max-width:760px){.ef-consent-banner{align-items:stretch;flex-direction:column;gap:14px;bottom:10px;left:10px;right:10px;padding:17px}.ef-consent-actions{display:grid;grid-template-columns:1fr 1fr}.ef-consent-actions button{width:100%;font-size:.78rem;padding-left:10px;padding-right:10px}.ef-personalized-card{align-items:flex-start;flex-direction:column}.ef-personalized-image{width:100%;height:150px}}

/* eemaan-fixed-positioning-guard */
/* Keeps <body> free of a containing block so position:fixed elements
   stay anchored to the window. See fix-page-enter.php. */
body{transform:none!important;perspective:none!important}
