html, body { height: 100%; max-width: 100%; overflow-x: hidden; margin: 0; padding: 0; }

body { padding-top: 0; }

*, *::before, *::after { box-sizing: border-box; }

#appRoot { width: 100%; max-width: 100%; overflow-x: hidden; }

.font-sans {
    font-family: "Segoe UI", ui-sans-serif, system-ui, -apple-system, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
}

.arabic-text, .arabic-rtl-text {
    font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
}

.coach-arabic-text {
    font-family: "Noto Naskh Arabic", "Amiri", "Scheherazade New", "Noto Sans Arabic", "Arial Unicode MS", Tahoma, "Segoe UI", ui-sans-serif, system-ui, -apple-system, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
}

.warning-message {
    background: #fff3cd;
    border: 1px solid #ffc107;
    color: #856404;
    padding: 10px;
    border-radius: 6px;
    margin-top: 10px;
    font-size: 14px;
}

 .error-message {
     background: #f8d7da;
     border: 1px solid #f5c6cb;
     color: #721c24;
     padding: 10px;
     border-radius: 6px;
     margin-top: 10px;
     font-size: 14px;
 }

 @media print {
   @page {
     size: A4;
     margin: 16mm 14mm;
   }

   html, body {
     height: auto !important;
     background: #fff !important;
     padding-top: 0 !important;
   }

   body.is-printing-pdf > * {
     display: none !important;
   }

   body.is-printing-pdf #pdfPrintRoot {
     display: block !important;
   }

   body.is-printing-pdf #pdfPrintRoot {
     position: static !important;
     width: 100% !important;
     background: #fff !important;
     color: #000 !important;
   }

   .pdf-print-root {
     font-family: "Segoe UI", ui-sans-serif, system-ui, -apple-system, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
     font-size: 11pt;
     line-height: 1.45;
     -webkit-print-color-adjust: exact;
     print-color-adjust: exact;
   }

   .pdf-title {
     font-size: 18pt;
     font-weight: 900;
     text-align: center;
     letter-spacing: 0.06em;
     margin: 0 0 10mm;
     text-transform: uppercase;
   }

   .pdf-section-title {
     font-size: 14pt;
     font-weight: 900;
     text-align: center;
     letter-spacing: 0.04em;
     margin: 0 0 6mm;
     text-transform: uppercase;
     break-after: avoid;
     page-break-after: avoid;
   }

   .pdf-subtitle {
     font-size: 12pt;
     font-weight: 800;
     text-align: center;
     margin: 0 0 4mm;
     break-after: avoid;
     page-break-after: avoid;
   }

   .pdf-p {
     margin: 0 0 3mm;
     white-space: pre-wrap;
     overflow-wrap: anywhere;
   }

   .pdf-ul {
     margin: 0 0 4mm 0;
     padding-left: 5mm;
   }

   .pdf-li {
     margin: 0 0 2mm;
     overflow-wrap: anywhere;
   }

   .pdf-gap-sm {
     height: 4mm;
   }

   .pdf-block {
     break-inside: avoid;
     page-break-inside: avoid;
     margin: 0 0 8mm;
   }

   .pdf-page-break {
     break-before: page;
     page-break-before: always;
   }
 }
