:root{--ink:#202426;--ink2:#343a3d;--gold:#b18a49;--gold2:#d8c39a;--sand:#f6f3ed;--paper:#fff;--muted:#70777a;--line:#e6e1d8;--shadow:0 16px 40px rgba(32,36,38,.08);--danger:#9b1c1c}*{box-sizing:border-box}html{font-family:Tahoma,Arial,sans-serif;background:var(--sand);color:var(--ink)}body{margin:0;background:var(--sand)}a{text-decoration:none;color:inherit}.wrap{width:min(1180px,calc(100% - 30px));margin:auto}.site-hero,.occasion-hero{background:linear-gradient(135deg,#202426,#394144);color:#fff}.site-hero{padding:54px 0 48px;border-bottom:4px solid var(--gold)}.occasion-hero{padding:36px 0;border-bottom:3px solid var(--gold)}.hero-inner{text-align:right}.brand-kicker,.page-brand{color:var(--gold2);font-weight:800;letter-spacing:.2px;margin-bottom:8px}.site-hero h1,.occasion-hero h1{font-size:clamp(31px,4vw,52px);line-height:1.28;margin:8px 0 12px}.site-hero p,.occasion-hero p{font-size:17px;line-height:1.9;margin:0;max-width:850px;color:#f4f4f3}.brand-meta{display:flex;gap:12px 20px;flex-wrap:wrap;margin-top:22px;color:#e9e7e1;font-size:14px}.brand-meta span{padding:7px 10px;border:1px solid #ffffff22;border-radius:999px;background:#ffffff09}.back-link{display:inline-block;color:var(--gold2);font-weight:700;margin-bottom:6px}.main-space{padding:34px 0 58px}.section-title{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}.section-title h2{font-size:28px;margin:0 0 6px}.section-title p{margin:0;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}.occasion-card{display:grid;grid-template-columns:58px 1fr 28px;gap:14px;align-items:center;min-height:138px;background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:var(--shadow);transition:.2s}.occasion-card:hover{transform:translateY(-3px);box-shadow:0 20px 50px rgba(32,36,38,.11)}.occasion-icon{width:58px;height:58px;border-radius:16px;background:#f3eee4;border:1px solid #eadfc9;display:grid;place-items:center;font-size:27px}.occasion-copy h3{margin:0 0 8px;font-size:19px;line-height:1.55}.occasion-copy p{margin:0;color:var(--muted);line-height:1.8;font-size:14px}.occasion-arrow{font-size:25px;color:var(--gold);font-weight:800}.empty-card{background:#fff;border:1px dashed var(--line);border-radius:18px;padding:28px;text-align:center;color:var(--muted)}.generator-grid{display:grid;grid-template-columns:minmax(340px,.78fr) minmax(0,1.22fr);gap:22px;align-items:start}.panel,.admin-card,.admin-header{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.panel{padding:22px}.panel h2{margin-top:0;font-size:26px}label{display:block;font-weight:700;font-size:14px;margin:15px 0}input,textarea{width:100%;margin-top:8px;border:1px solid #d9d5cd;border-radius:12px;padding:12px 13px;font:inherit;background:#fff;color:var(--ink);outline:none}input:focus,textarea:focus{border-color:var(--gold)}textarea{resize:vertical;line-height:1.8}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}button{border:1px solid #ddd6c9;border-radius:12px;padding:12px 15px;font-weight:800;cursor:pointer;background:#f7f5f0;color:var(--ink)}button.primary{background:var(--ink);color:#fff;border-color:var(--ink)}.preview-head{display:flex;justify-content:space-between;align-items:center}.preview-head span{background:#f3eee4;color:#71572d;padding:7px 10px;border-radius:999px;font-size:12px;font-weight:800}canvas{width:100%;height:auto;border:1px solid #ece6dc;border-radius:14px;background:#fff}.certificate-note{margin-top:12px;padding:10px 12px;background:#fbf8f1;border:1px solid #eee2cc;border-radius:11px;color:#6c6559;font-size:12px;line-height:1.7}.site-footer{background:#202426;color:#e9e7e1;border-top:4px solid var(--gold);padding:26px 0}.compact-footer{margin-top:20px}.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-grid strong{color:#fff;font-size:18px}.footer-grid p{margin:6px 0 0;color:#cfcac0}.social-lines{display:flex;gap:8px 18px;flex-wrap:wrap;font-size:14px}.print-area{display:none}.admin-body{background:#f3f1ec}.admin-wrap{width:min(1180px,calc(100% - 30px));margin:30px auto 60px}.admin-header{padding:24px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.admin-header h1{font-size:32px;margin:4px 0 8px}.admin-header p{margin:0;color:var(--muted)}.admin-kicker{color:#8a682f}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-actions a,.primary-link,.text-link{display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;border:1px solid var(--line);background:#fff;border-radius:10px;font-weight:700;font-size:13px}.admin-actions .primary-link{background:var(--ink);color:#fff;border-color:var(--ink)}.admin-card{padding:22px;margin-bottom:18px}.admin-card h2{margin-top:0}.table-wrap{width:100%;overflow:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:14px 12px;text-align:right;border-bottom:1px solid var(--line);vertical-align:middle}.admin-table th{background:#faf9f6;color:var(--muted);font-size:13px}.wide-cell{min-width:360px}.edit-link{color:#7d5f2e;font-weight:800}.notice{background:#f6f0e4;border:1px solid #ead9b8;color:#6f5427;padding:12px 14px;border-radius:11px;margin-bottom:14px}.notice.error{background:#fff0f0;border-color:#f0cccc;color:var(--danger)}.muted{color:var(--muted);line-height:1.8}.checkline{display:flex;align-items:center;gap:8px}.checkline input{margin:0}.print-area{display:none}@media(max-width:900px){.generator-grid{grid-template-columns:1fr}.admin-header{flex-direction:column}.footer-grid{flex-direction:column;align-items:flex-start}}@media(max-width:620px){.wrap,.admin-wrap{width:min(100% - 20px,1180px)}.site-hero{padding:38px 0 34px}.brand-meta{flex-direction:column;align-items:flex-start}.cards{grid-template-columns:1fr}.occasion-card{grid-template-columns:52px 1fr 24px;padding:18px}.two{grid-template-columns:1fr}.wide-cell{min-width:260px}.admin-header h1{font-size:27px}}@media print{body>*:not(.print-area){display:none!important}.print-area{display:block!important}.print-page{page-break-after:always;width:297mm;height:210mm;margin:0}.print-page img{display:block;width:297mm;height:210mm;object-fit:cover}@page{size:A4 landscape;margin:0}}


/* v5: الإدخال الجماعي والطباعة الكبيرة */
.bulk-help{
  margin-top:-3px;
  padding:11px 13px;
  border-radius:12px;
  background:#f7f3ea;
  border:1px solid #eadfc9;
  color:#655a47;
  font-size:13px;
  line-height:1.85;
}
.names-warning{
  margin-top:10px;
  padding:10px 12px;
  border-radius:11px;
  background:#fff0f0;
  border:1px solid #efcaca;
  color:#9b1c1c;
  font-weight:700;
  line-height:1.7;
}
button:disabled{opacity:.45;cursor:not-allowed}

@media print{
  body>*:not(.print-area){display:none!important}
  .print-area{display:block!important}

  .print-page{
    position:relative;
    width:297mm;
    height:210mm;
    margin:0;
    overflow:hidden;
    page-break-after:always;
    break-after:page;
    background:#fff;
  }
  .print-page:last-child{page-break-after:auto;break-after:auto}

  .print-bg{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    z-index:0;
  }
  .print-field{
    position:absolute;
    z-index:1;
    left:50%;
    transform:translate(-50%,-50%);
    width:78%;
    text-align:center;
    direction:rtl;
    color:#1d2b28;
    font-family:Arial,Tahoma,sans-serif;
  }
  .print-school{font-size:17pt;font-weight:700}
  .print-title{font-size:28pt;font-weight:700}
  .print-name{font-size:33pt;font-weight:700;color:#8b6729}
  .print-message{
    width:68%;
    font-size:16pt;
    font-weight:400;
    line-height:1.65;
    white-space:normal;
  }
  .print-sig{font-size:13pt;font-weight:600;width:34%}
  .print-sig1{left:70%}
  .print-sig2{left:30%}

  @page{size:A4 landscape;margin:0}
}


/* v5.1 footer bidi/order fix */
.footer-brand-stack{
  display:flex;
  flex-direction:column;
  gap:6px;
  align-items:flex-start;
  text-align:right;
  direction:rtl;
}
.footer-brand-stack strong{
  font-size:18px;
  color:#fff;
}
.footer-brand-stack > span{
  color:#fff;
  line-height:1.7;
}
.footer-brand-stack .ltr-line{
  direction:ltr;
  unicode-bidi:isolate;
  text-align:left;
  align-self:flex-start;
  font-family:Arial,Tahoma,sans-serif;
}


/* v5.2 - توسيط معلومات قناة الشامخ في التذييل */
.footer-brand-stack{
  align-items:center !important;
  text-align:center !important;
  direction:rtl;
}
.footer-brand-stack > *{
  text-align:center !important;
}
.footer-brand-stack .ltr-line{
  align-self:center !important;
  text-align:center !important;
  direction:ltr;
  unicode-bidi:isolate;
}


/* v5.3 - إبقاء الصف العلوي كما هو، وإرجاع التذييل لمكانه السابق يمين الصفحة */
.site-footer .footer-brand-stack{
  align-items:flex-start !important;
  text-align:right !important;
  direction:rtl !important;
}
.site-footer .footer-brand-stack > *{
  text-align:right !important;
}
.site-footer .footer-brand-stack .ltr-line{
  align-self:flex-start !important;
  text-align:left !important;
  direction:ltr !important;
  unicode-bidi:isolate !important;
}


/* v5.4 - توسيط معلومات قناة الشامخ في الأعلى والأسفل فقط */

/* السطر العلوي تحت وصف الموقع */
.site-hero .brand-meta{
  width:100% !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  text-align:center !important;
}

/* التذييل السفلي */
.site-footer .footer-brand-stack{
  width:100% !important;
  align-items:center !important;
  text-align:center !important;
  direction:rtl !important;
}
.site-footer .footer-brand-stack > *{
  text-align:center !important;
}
.site-footer .footer-brand-stack .ltr-line{
  align-self:center !important;
  text-align:center !important;
  direction:ltr !important;
  unicode-bidi:isolate !important;
}


/* v6 */
.field-hint,.admin-help{
  display:block;
  margin:-7px 0 12px;
  color:var(--muted);
  font-size:12px;
  line-height:1.8;
}
.admin-help bdi{
  display:inline-block;
  direction:ltr;
  unicode-bidi:isolate;
  padding:1px 6px;
  border-radius:6px;
  background:#f3eee4;
  color:#71572d;
  font-family:monospace;
  font-weight:700;
}

/* لم يعد هناك سطر مستقل لاسم المدرسة داخل الشهادة */
.print-school{display:none!important}


/* v7 */
.print-intro{
  width:72%;
  font-size:15pt;
  font-weight:600;
  color:#2d3734;
}


/* v8 - مسميات وأسماء التوقيعات */
.print-role{
  font-size:11.5pt;
  font-weight:600;
  color:#555;
  width:34%;
}
.print-role1{left:70%}
.print-role2{left:30%}


/* v9
   عنوان "شهادة شكر وتقدير" جزء من الخلفية نفسها،
   ومعلومات الأدوار لا تُطبع داخل الشهادة. */
.certificate-note{display:none!important}


/* v10 - تنظيم لوحة التحكم */
.admin-section{
  margin:22px 0;
  padding:20px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fcfbf8;
}
.admin-section:first-of-type{margin-top:10px}
.admin-section-title{
  margin-bottom:12px;
  padding-bottom:12px;
  border-bottom:1px solid var(--line);
}
.admin-section-title h2{
  margin:0 0 5px;
  font-size:20px;
}
.admin-section-title p{
  margin:0;
  color:var(--muted);
  line-height:1.7;
  font-size:13px;
}
.signature-admin-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.signature-admin-box{
  padding:14px;
  border:1px solid #e6e1d8;
  border-radius:14px;
  background:#fff;
}
.signature-admin-box h3{
  margin:0 0 8px;
  font-size:16px;
  color:#71572d;
}
.admin-info{
  margin-top:12px;
  padding:11px 13px;
  border-radius:11px;
  background:#f6f0e4;
  border:1px solid #ead9b8;
  color:#6f5427;
  line-height:1.8;
  font-size:13px;
}
.admin-savebar{
  display:flex;
  gap:10px;
  align-items:center;
  margin-top:20px;
}
@media(max-width:700px){
  .signature-admin-grid{grid-template-columns:1fr}
}

/* رفع نص الشكر قليلًا */

/* v11 - رفع النصوص وتبسيط لوحة التحكم */
.admin-help{
  display:block;
  margin-top:6px;
  color:var(--muted);
  line-height:1.8;
  font-size:12px;
  font-weight:400;
}
.simple-two{
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.two-compact label{margin-top:8px}

@media(max-width:700px){
  .simple-two{grid-template-columns:1fr}
}

@media print{
  .print-intro{font-size:18pt;font-weight:700;color:#2d3734}
  .print-name{font-size:35pt;font-weight:700;color:#8b6729}
  .print-message{
    width:70%;
    font-size:17.5pt;
    line-height:1.78;
  }
  .print-sig{
    font-size:14.5pt;
    font-weight:700;
    width:34%;
  }
}

/* v12 - تأكيد تحديث المعاينة للزائر */
.preview-status{
  margin-top:12px;
  padding:9px 11px;
  border-radius:10px;
  background:#f7f5f0;
  border:1px solid #e4ddd0;
  color:#676057;
  font-size:12px;
  line-height:1.7;
  transition:.2s;
}
.preview-status.is-updated{
  background:#eef7f0;
  border-color:#cfe2d3;
  color:#245d31;
}

@media print{
  .print-intro{font-size:18pt;font-weight:700}
  .print-name{font-size:35pt;font-weight:700}
  .print-message{font-size:18pt;font-weight:500;line-height:1.7;width:70%}
  .print-sig{font-size:15pt;font-weight:700}
}
