/* ============================================================
   قارئ الكتب المدمج — رضا الزواري
   واجهة قراءة بملء الشاشة، وضع فاتح/داكن، تصفّح بالصفحات
   ============================================================ */

:root{
  --rd-paper:   #f5f1e8;
  --rd-paper-2: #ebe5d6;
  --rd-ink:     #1a1816;
  --rd-muted:   #6b6358;
  --rd-line:    #d8cfbd;
  --rd-rust:    #8c2d24;
  --rd-bar:     rgba(245,241,232,.94);
  --rd-shadow:  rgba(0,0,0,.12);

  --rd-serif: "Amiri", Georgia, serif;
  --rd-sans:  "Tajawal", system-ui, sans-serif;

  --rd-fs: 1.12rem;     /* حجم الخط القابل للتعديل */
  --rd-gap: 48px;       /* الفراغ بين الصفحتين */
}

:root[data-theme="dark"]{
  --rd-paper:   #16181a;
  --rd-paper-2: #1e2124;
  --rd-ink:     #e8e4dc;
  --rd-muted:   #9a948a;
  --rd-line:    #32363a;
  --rd-rust:    #d98a7e;
  --rd-bar:     rgba(22,24,26,.94);
  --rd-shadow:  rgba(0,0,0,.5);
}

*{ box-sizing:border-box; margin:0; padding:0; }

html, body{ height:100%; overflow:hidden; }

body{
  font-family:var(--rd-sans);
  background:var(--rd-paper);
  color:var(--rd-ink);
  direction:rtl;
  text-align:right;
  -webkit-font-smoothing:antialiased;
  transition:background .25s, color .25s;
}

/* منع التحديد والنسخ */
.rd-flow, .rd-flow *{
  -webkit-user-select:none;
  -moz-user-select:none;
  -ms-user-select:none;
  user-select:none;
  -webkit-touch-callout:none;
}

/* ---------------------- الهيكل ---------------------- */
.rd-root{
  display:flex; flex-direction:column;
  height:100dvh;
}

/* ---------------------- الشريط العلوي ---------------------- */
.rd-bar{
  display:flex; align-items:center; gap:10px;
  padding:10px 16px;
  background:var(--rd-bar);
  border-bottom:1px solid var(--rd-line);
  backdrop-filter:blur(8px);
  flex-shrink:0;
  z-index:30;
}
.rd-title{
  font-family:var(--rd-serif);
  font-size:1.05rem; font-weight:700;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  min-width:0; flex:1;
}
.rd-title small{
  display:block; font-family:var(--rd-sans);
  font-size:.72rem; font-weight:400; color:var(--rd-muted);
}
.rd-tools{ display:flex; gap:6px; align-items:center; flex-shrink:0; }

.rd-btn{
  background:none; border:1px solid var(--rd-line);
  color:var(--rd-ink); border-radius:7px;
  width:36px; height:36px;
  font-size:1rem; line-height:1; cursor:pointer;
  display:grid; place-items:center;
  transition:background .15s, border-color .15s;
  font-family:var(--rd-sans);
}
.rd-btn:hover{ background:var(--rd-paper-2); border-color:var(--rd-rust); }
.rd-btn:focus-visible{ outline:2px solid var(--rd-rust); outline-offset:2px; }
.rd-btn[aria-pressed="true"]{ background:var(--rd-paper-2); border-color:var(--rd-rust); }
.rd-btn.rd-wide{ width:auto; padding:0 12px; font-size:.84rem; font-weight:700; }

.rd-home{
  color:var(--rd-rust); font-weight:700; font-size:.84rem;
  white-space:nowrap; padding:0 6px;
}

/* ---------------------- مسرح القراءة ---------------------- */
.rd-stage{
  position:relative;
  flex:1; min-height:0;
  overflow:hidden;
}
/* الحشوة في الغلاف، والقصّ في المجال نفسه حتى لا يظهر طرف العمود التالي */
.rd-pad{
  position:absolute; inset:0;
  padding:26px clamp(18px, 5vw, 64px);
}
.rd-viewport{
  position:relative; height:100%;
  overflow:hidden;
}
.rd-flow{
  height:100%;
  columns:1;
  column-gap:var(--rd-gap);
  column-fill:auto;
  font-size:var(--rd-fs);
  line-height:2.05;
  transition:transform .32s cubic-bezier(.4,0,.2,1);
  will-change:transform;
}
.rd-flow.rd-nosnap{ transition:none; }

/* خط فاصل بين الصفحتين على الشاشات العريضة */
.rd-stage::after{
  content:""; position:absolute; top:26px; bottom:26px; right:50%;
  width:1px; background:var(--rd-line); opacity:0; pointer-events:none;
}
.rd-stage.rd-two::after{ opacity:.55; }

/* ---------------------- محتوى الكتاب ---------------------- */
.rd-flow h2{
  font-family:var(--rd-serif);
  font-size:1.5em; line-height:1.45;
  margin:0 0 .7em; color:var(--rd-rust);
  break-after:avoid; page-break-after:avoid;
}
.rd-flow h3{
  font-family:var(--rd-serif);
  font-size:1.16em; line-height:1.5;
  margin:1.5em 0 .55em;
  break-after:avoid; page-break-after:avoid;
}
.rd-flow p{
  margin:0 0 1em;
  text-align:justify;
  text-justify:inter-word;
  orphans:2; widows:2;
}
.rd-chapter{ break-before:column; page-break-before:always; }
.rd-chapter:first-child{ break-before:auto; page-break-before:auto; }

.rd-chapter-head{
  margin-bottom:1.6em; padding-bottom:.8em;
  border-bottom:2px solid var(--rd-line);
  break-after:avoid;
}
.rd-chapter-head h2{ margin:0; }
.rd-chapter-head .rd-sub{
  display:block; margin-top:.35em;
  font-family:var(--rd-serif); font-size:1.05em;
  color:var(--rd-muted); font-weight:400;
}

.rd-flow .rd-note{
  font-size:.82em; line-height:1.75;
  color:var(--rd-muted);
  padding-top:.5em; margin:0 0 .7em;
  border-top:1px solid var(--rd-line);
}
.rd-flow .rd-caption{
  font-weight:700; font-size:.92em;
  margin:1.2em 0 .5em; color:var(--rd-rust);
  break-after:avoid;
}
.rd-flow table{
  width:100%; border-collapse:collapse;
  font-size:.82em; margin:0 0 1.2em;
  break-inside:avoid; page-break-inside:avoid;
}
.rd-flow th, .rd-flow td{
  border:1px solid var(--rd-line);
  padding:5px 8px; text-align:center;
  line-height:1.5;
}
.rd-flow thead th{ background:var(--rd-paper-2); font-weight:700; }

.rd-toc-list{ list-style:none; }
.rd-toc-list li{
  padding:.3em 0; border-bottom:1px dotted var(--rd-line);
  font-size:.95em;
}

/* ---------------------- مناطق التصفّح ---------------------- */
.rd-zone{
  position:absolute; top:0; bottom:0; width:16%;
  max-width:120px;
  border:0; background:none; cursor:pointer;
  opacity:0; transition:opacity .2s;
  z-index:10;
  display:grid; place-items:center;
  color:var(--rd-ink); font-size:1.6rem;
}
.rd-zone-next{ left:0; }
.rd-zone-prev{ right:0; }
.rd-zone:hover:not(:disabled){ opacity:.45; }
.rd-zone:disabled{ cursor:default; }

/* ---------------------- الشريط السفلي ---------------------- */
.rd-foot{
  display:flex; align-items:center; gap:14px;
  padding:9px 16px;
  background:var(--rd-bar);
  border-top:1px solid var(--rd-line);
  backdrop-filter:blur(8px);
  flex-shrink:0;
  z-index:30;
}
.rd-count{
  font-size:.8rem; color:var(--rd-muted);
  font-variant-numeric:tabular-nums;
  white-space:nowrap; min-width:7ch;
}
.rd-track{
  flex:1; height:4px; border-radius:2px;
  background:var(--rd-line);
  position:relative; cursor:pointer;
}
.rd-fill{
  position:absolute; top:0; right:0; bottom:0;
  background:var(--rd-rust); border-radius:2px;
  transition:width .3s;
}
.rd-chapnow{
  font-size:.8rem; color:var(--rd-muted);
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  max-width:40%;
}

/* ---------------------- درج الفهرس ---------------------- */
.rd-drawer{
  position:absolute; inset:0;
  background:rgba(0,0,0,.45);
  z-index:40; display:none;
}
.rd-drawer.rd-open{ display:block; }
.rd-panel{
  position:absolute; top:0; bottom:0; right:0;
  width:min(380px, 85vw);
  background:var(--rd-paper);
  border-left:1px solid var(--rd-line);
  box-shadow:-8px 0 28px var(--rd-shadow);
  display:flex; flex-direction:column;
}
.rd-panel-head{
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 18px; border-bottom:1px solid var(--rd-line);
}
.rd-panel-head h2{ font-family:var(--rd-serif); font-size:1.15rem; }
.rd-panel-body{ overflow-y:auto; padding:8px 0; }
.rd-jump{
  display:block; width:100%; text-align:right;
  background:none; border:0; cursor:pointer;
  padding:12px 18px; color:var(--rd-ink);
  font-family:var(--rd-sans); font-size:.95rem;
  border-bottom:1px solid var(--rd-line);
  transition:background .15s;
}
.rd-jump:hover{ background:var(--rd-paper-2); }
.rd-jump[aria-current="true"]{
  background:var(--rd-paper-2);
  border-right:3px solid var(--rd-rust);
  font-weight:700;
}
.rd-jump small{
  display:block; color:var(--rd-muted);
  font-size:.78rem; margin-top:2px; font-weight:400;
}

/* ---------------------- شاشة التحميل ---------------------- */
.rd-loading{
  position:absolute; inset:0; z-index:20;
  display:grid; place-items:center;
  background:var(--rd-paper);
  color:var(--rd-muted); font-size:.9rem;
}
.rd-loading.rd-done{ display:none; }

/* ---------------------- الجوال ---------------------- */
@media (max-width:640px){
  :root{ --rd-fs:1.02rem; --rd-gap:32px; }
  .rd-pad{ padding:18px 20px; }
  .rd-flow{ line-height:1.95; }
  .rd-home{ display:none; }
  .rd-title{ font-size:.95rem; }
  .rd-chapnow{ display:none; }
  .rd-zone{ width:22%; }
}

/* ---------------------- منع الطباعة ---------------------- */
@media print{
  .rd-root{ display:none !important; }
  html::after{
    content:"هذا الكتاب متاح للقراءة على الموقع فقط.";
    display:block; padding:40px; font-family:sans-serif; text-align:center;
  }
}
