/* قشرة استمارة السيرة ومعاينتها — **وحدها ما يختلف عن الطباعة**.
   خلفية وظلّ وحاوية تمرير وأزرار. ولا شيء منها يدخل الورقة: ما بداخل `.page` يأتي من
   `cv-classic.css` المولَّد من قالب المحرّك نفسه، فالمعاينة والملفّ من مصدر واحد. */

.cv-builder { margin: 0 0 18px; }

.cv-grid { display: flex; gap: 18px; align-items: flex-start; }
.cv-fields { flex: 1 1 46%; min-width: 0; }
.cv-preview { flex: 1 1 54%; min-width: 0; position: sticky; top: 12px; display: block; }

.cv-builder fieldset {
  border: 1px solid var(--line, #e2e8f0); border-radius: 10px;
  padding: 12px 12px 6px; margin: 0 0 14px;
}
.cv-builder legend { font-size: 13px; font-weight: 700; padding: 0 6px; color: var(--brand, #1d5c7a); }
.cv-builder label { display: block; font-size: 13px; margin-bottom: 10px; }
.cv-builder small { display: block; font-size: 11px; opacity: .72; margin: -6px 0 10px; }
.cv-row { display: flex; gap: 8px; }
.cv-row > * { flex: 1; min-width: 0; }
.cv-check { display: flex; align-items: center; gap: 7px; }
.cv-check input { width: auto; }

.cv-item {
  border: 1px solid var(--line, #e2e8f0); border-radius: 9px;
  padding: 11px; margin-bottom: 10px; background: rgba(0, 0, 0, .015);
}
.cv-item-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 9px; }
.cv-item-head b { font-size: 13px; }

.cv-builder button { font: inherit; font-size: 13px; padding: 7px 13px; border-radius: 7px; cursor: pointer; }
.cv-add, .cv-clear, .cv-del, .cv-toggle {
  border: 1px solid var(--line, #cbd5e1); background: #fff; color: inherit;
}
.cv-add { width: 100%; }
.cv-clear { margin-top: 4px; }
.cv-del:hover, .cv-clear:hover { border-color: #dc2626; color: #dc2626; }
.cv-add:hover, .cv-toggle:hover { border-color: var(--brand, #1d5c7a); color: var(--brand, #1d5c7a); }

.cv-restore {
  background: #fff8e7; border: 1px solid #f0c36d; border-radius: 9px;
  padding: 11px; margin-bottom: 14px; font-size: 13px;
}
.cv-restore div { margin-bottom: 9px; }

.cv-bar { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 10px; font-size: 12px; }
.cv-pill { border: 1px solid var(--line, #e2e8f0); background: #fff; border-radius: 999px; padding: 3px 11px; }
.cv-warn { border-color: #f0c36d; background: #fff8e7; color: #7a5b12; }

/* ورقة A4 بمقاسها المنطقي. والتصغير بصريّ فقط — لا يمسّ حجم خطّ ولا هامشًا ولا عرضًا،
   وإلّا لصارت المعاينة تصميمًا آخر لا صورةً مصغَّرة عمّا يُطبع. */
/* **الورقة لا تنكمش أبدًا.**
   كانت عنصرًا مرنًا داخل حاوية عرضها 760px، فانكمشت من 794px إلى 492px — فالتفّ النصّ
   أكثر وزادت صفحة كاملة، **وصارت المعاينة تعِد بغير ما يطبع الـPDF**. قِيس على صفحة
   الخدمة الحقيقية، ولم يظهر في المعاينة المستقلّة إطلاقًا.
   فالحاوية تقصّ، والورقة تحتفظ بعرضها المنطقي، والتصغير بـtransform لا يمسّ التخطيط. */
.cv-sheet-wrap { overflow: hidden; width: 100%; }
.cv-sheet {
  width: 210mm; min-width: 210mm; flex: none; height: 297mm;
  border: 0; display: block; background: #fff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, .14), 0 8px 26px rgba(15, 23, 42, .10);
  transform-origin: top right;
}

/* الشاشات المتوسطة: الورقة أعرض من عمودها، فتُصغَّر بصريًّا لتظهر كاملة. */
@media (max-width: 1500px) { .cv-sheet { transform: scale(.62); margin-bottom: -38%; } }
@media (max-width: 1200px) { .cv-sheet { transform: scale(.48); margin-bottom: -54%; } }

.cv-toggle { display: none; }
@media (max-width: 900px) {
  /* الجوال: الاستمارة وحدها، والمعاينة بزرّ. ولا split-screen مفروض على شاشة صغيرة. */
  .cv-grid { flex-direction: column; }
  .cv-fields, .cv-preview { flex: 1 1 auto; width: 100%; }
  .cv-preview { position: static; display: none; overflow-x: auto; }
  .cv-preview.open { display: block; }
  .cv-sheet { transform: scale(.42); margin-bottom: -58%; transform-origin: top right; }
  .cv-toggle { display: block; width: 100%; margin-top: 10px; padding: 11px; font-size: 15px; }
}

/* تحذير الطول — **تحذير لا منع**. الحدّ هنا تقريبيّ، والـPDF والحرّاس هما الحَكَم. */
.cv-overflow {
  background: #fff8e7; border: 1px solid #f0c36d; border-radius: 8px;
  padding: 9px 11px; margin-bottom: 10px; font-size: 12.5px; color: #7a5b12;
}
