body { font-family: 'Assistant', sans-serif; }

.quiz-q-text, .quiz-opt-text, .quiz-exp-text { overflow-wrap: anywhere; }

body.font-size-sm .quiz-q-text { font-size: 0.95rem; }
body.font-size-sm .quiz-opt-text { font-size: 0.82rem; }
body.font-size-sm .quiz-exp-text { font-size: 0.82rem; }

body.font-size-md .quiz-q-text { font-size: 1.15rem; }
body.font-size-md .quiz-opt-text { font-size: 0.98rem; }
body.font-size-md .quiz-exp-text { font-size: 0.98rem; }

body.font-size-lg .quiz-q-text { font-size: 1.35rem; }
body.font-size-lg .quiz-opt-text { font-size: 1.15rem; }
body.font-size-lg .quiz-exp-text { font-size: 1.15rem; }

body.font-size-xl .quiz-q-text { font-size: 1.6rem; }
body.font-size-xl .quiz-opt-text { font-size: 1.32rem; }
body.font-size-xl .quiz-exp-text { font-size: 1.32rem; }

body.font-size-2xl .quiz-q-text { font-size: 1.85rem; }
body.font-size-2xl .quiz-opt-text { font-size: 1.5rem; }
body.font-size-2xl .quiz-exp-text { font-size: 1.5rem; }

body.font-size-3xl .quiz-q-text { font-size: 2.15rem; }
body.font-size-3xl .quiz-opt-text { font-size: 1.7rem; }
body.font-size-3xl .quiz-exp-text { font-size: 1.7rem; }

/* הגבלות רוחב תצוגה לקריאה נוחה */
.app-width-compact { max-width: 820px !important; }
.app-width-medium  { max-width: 1080px !important; }
.app-width-wide    { max-width: 1400px !important; }

/* מניעת גלישה אופקית מתוך הגריד */
#mainContainer > * { min-width: 0; }

/* מצב ממוקד: עמודת צד קבועה וצרה + שאלה רחבה */
@media (min-width: 1024px) {
  #mainContainer.app-width-compact { grid-template-columns: 240px minmax(0, 1fr); }
  #mainContainer.app-width-compact > aside,
  #mainContainer.app-width-compact > section { grid-column: auto !important; }
  #mainContainer.sidebar-hidden > section { grid-column: 1 / -1 !important; }
}

/* נגישות מקלדת - טבעת פוקוס מובחנת */
button:focus-visible, select:focus-visible, a:focus-visible, input:focus-visible {
  outline: 2px solid #2563eb !important;
  outline-offset: 2px !important;
}

/* הגדרות עיצוב ייעודיות לתוכן Markdown שזור */
.markdown-content p { margin-bottom: 0.5rem; }
.markdown-content p:last-child { margin-bottom: 0; }
.markdown-content ul { list-style-type: disc; margin-right: 1.5rem; margin-top: 0.5rem; margin-bottom: 0.5rem; }
.markdown-content ol { list-style-type: decimal; margin-right: 1.5rem; margin-top: 0.5rem; margin-bottom: 0.5rem; }
.markdown-content li { margin-bottom: 0.25rem; }
.markdown-content strong { font-weight: 800; color: inherit; }
.markdown-content em { font-style: italic; }
.markdown-content table { width: 100%; border-collapse: collapse; margin: 1rem 0; }
.markdown-content th, .markdown-content td { border: 1px solid #cbd5e1; padding: 0.5rem; text-align: right; }
.markdown-content th { background-color: #f8fafc; font-weight: bold; }
.markdown-content blockquote { border-right: 4px solid #cbd5e1; padding-right: 1rem; color: #475569; margin: 1rem 0; font-style: italic; background: #f8fafc; padding-top: 0.5rem; padding-bottom: 0.5rem; }
.markdown-content code { background-color: #f1f5f9; padding: 0.2rem 0.4rem; border-radius: 0.25rem; font-family: monospace; font-size: 0.9em; border: 1px solid #e2e8f0; }
.markdown-content pre { background-color: #1e293b; color: #f8fafc; padding: 1rem; border-radius: 0.5rem; overflow-x: auto; margin: 1rem 0; direction: ltr; text-align: left; }
.markdown-content pre code { background-color: transparent; padding: 0; border: none; font-size: 0.85em; }
.markdown-content h1, .markdown-content h2, .markdown-content h3 { font-weight: bold; margin-top: 1rem; margin-bottom: 0.5rem; }
.markdown-content h3 { font-size: 1.1em; }