/* Saúl N Lab's authored palette, scoped to this course. Tutor owns the navigation. */
body.mestrium-saul-course {
  --saul-ink: #0e0b0a;
  --saul-panel: #171311;
  --saul-panel-2: #1f1a17;
  --saul-line: #2f2824;
  --saul-cream: #ede8dc;
  --saul-muted: #b0a898;
  --saul-coral: #f85c03;
  --saul-soft: rgba(248,92,3,.12);
  --saul-display: 'Instrument Serif', 'Iowan Old Style', Georgia, serif;
  --saul-body: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --saul-mono: 'JetBrains Mono', ui-monospace, Consolas, monospace;
  --ink: var(--saul-cream);
  --paper: var(--saul-ink);
  --soft: var(--saul-panel);
  --muted: var(--saul-muted);
  --tape: var(--saul-coral);
  --font: var(--saul-body);
  --tutor-font-family-body: var(--saul-body);
  --tutor-brand-450: var(--saul-coral);
  --tutor-font-family-heading: var(--saul-body);
  --tutor-surface-base: var(--saul-ink);
  --tutor-surface-l1: var(--saul-panel);
  --tutor-surface-l1-hover: var(--saul-panel-2);
  --tutor-surface-l2: var(--saul-panel-2);
  --tutor-surface-l2-hover: #2a211c;
  --tutor-surface-l3: var(--saul-panel-2);
  --tutor-surface-sidebar-l1: var(--saul-ink);
  --tutor-surface-brand-primary: var(--saul-coral);
  --tutor-surface-brand-secondary: var(--saul-soft);
  --tutor-surface-brand-tertiary: var(--saul-soft);
  --tutor-text-primary: var(--saul-cream);
  --tutor-text-primary-inverse: var(--saul-ink);
  --tutor-text-secondary: var(--saul-muted);
  --tutor-text-subdued: #a09689;
  --tutor-text-disabled: #8e8276;
  --tutor-text-brand: var(--saul-coral);
  --tutor-text-brand-hover: #ff8b49;
  --tutor-icon-idle: var(--saul-muted);
  --tutor-icon-hover: var(--saul-cream);
  --tutor-icon-secondary: var(--saul-muted);
  --tutor-icon-subdued: #a09689;
  --tutor-icon-brand: var(--saul-coral);
  --tutor-icon-brand-hover: #ff8b49;
  --tutor-button-primary: var(--saul-coral);
  --tutor-button-primary-hover: #ff7430;
  --tutor-button-primary-focused: #ff7430;
  --tutor-button-primary-disabled: #7e4122;
  --tutor-button-primary-soft: var(--saul-soft);
  --tutor-button-primary-soft-hover: rgba(248,92,3,.22);
  --tutor-button-primary-soft-focused: rgba(248,92,3,.22);
  --tutor-button-secondary: var(--saul-panel-2);
  --tutor-button-secondary-hover: #30251e;
  --tutor-button-secondary-focused: #30251e;
  --tutor-button-ghost-hover: var(--saul-panel-2);
  --tutor-button-outline-inverse: var(--saul-panel-2);
  --tutor-button-outline-hover: #30251e;
  --tutor-button-outline-focused-inverse: var(--saul-panel-2);
  --tutor-tab-l3: var(--saul-panel-2);
  --tutor-tab-l3-hover: var(--saul-soft);
  --tutor-tab-l3-active: var(--saul-soft);
  --tutor-border-idle: var(--saul-line);
  --tutor-border-idle2: var(--saul-line);
  --tutor-border-hover: #655144;
  --tutor-border-tertiary: var(--saul-line);
  --tutor-border-brand: var(--saul-coral);
  --tutor-tab-sidebar-l2: var(--saul-panel);
  --tutor-tab-sidebar-l2-hover: var(--saul-panel-2);
  --tutor-tab-sidebar-l2-active: var(--saul-panel-2);
  --tutor-tab-sidebar-l4-hover: var(--saul-panel-2);
  --tutor-tab-sidebar-l4-active: var(--saul-soft);
  --tutor-tab-l3-active-hover: var(--saul-soft);
  --tutor-actions-brand-primary: var(--saul-coral);
  --tutor-actions-brand-secondary: var(--saul-soft);
  --tutor-actions-brand-tertiary: var(--saul-soft);
  --tutor-actions-gray-empty: var(--saul-ink);
  --tutor-actions-gray-secondary: var(--saul-panel-2);
  --tutor-actions-gray-tertiary: var(--saul-panel-2);
  --tutor-actions-gray-quaternary: var(--saul-line);
  --tutor-actions-success-primary: #8fcf8a;
  --tutor-actions-success-secondary: rgba(143,207,138,.12);
  --tutor-surface-neutral: var(--saul-panel-2);
  --tutor-button-success: #8fcf8a;
  --tutor-color-primary: var(--saul-coral);
  --tutor-color-primary-rgb: 248,92,3;
  --tutor-color-primary-hover: #ff8b49;
  --tutor-body-color: var(--saul-cream);
  --tutor-color-secondary: var(--saul-muted);
  --tutor-border-color: var(--saul-line);
  color-scheme: dark;
  background: var(--saul-ink);
  color: var(--saul-cream);
  font-family: var(--saul-body);
}
.mestrium-saul-course :focus-visible { outline: 2px solid var(--saul-coral); outline-offset: 4px; }
.mestrium-saul-course ::selection { background: #f85c0355; color: var(--saul-cream); }
.mestrium-saul-course .tutor-btn { border-radius: 999px; font-family: var(--saul-body); }
.mestrium-saul-course .tutor-btn-primary { color: var(--saul-ink); font-weight: 600; }
.mestrium-saul-course .tutor-card { border: 1px solid var(--saul-line); border-radius: 18px; background: var(--saul-panel); }
.mestrium-saul-course :is(input,textarea,select) { color: var(--saul-cream); background-color: var(--saul-ink); border-color: var(--saul-line); }
.mestrium-saul-course :is(input,textarea)::placeholder { color: #a09689; }
.mestrium-saul-course :is(.tutor-modal-content,.tutor-modal-window) { color: var(--saul-cream); background: var(--saul-panel); border-color: var(--saul-line); }

/* A quiet shell around the original interactive lessons. */
.mestrium-saul-classroom :is(.site-header,.site-footer) { display: none; }
.mestrium-saul-course .tutor-learning-header { padding: 0; border-bottom: 1px solid var(--saul-line); }
.mestrium-saul-course .tutor-learning-header-inner { min-height: 68px; padding-inline: 12px; border-radius: 0; background: var(--saul-ink); }
.mestrium-saul-course .tutor-learning-header-back { border-color: var(--saul-line); }
.mestrium-saul-course .tutor-learning-header-title { font-family: var(--saul-display); font-size: 27px; font-weight: 400; letter-spacing: -.015em; }
.mestrium-saul-course .tutor-learning-sidebar { padding: 18px 12px 58px; scrollbar-color: #665246 var(--saul-panel); }
.mestrium-saul-course .tutor-learning-sidebar-curriculum { border: 1px solid var(--saul-line); border-radius: 16px; overflow: hidden; }
.mestrium-saul-course .tutor-learning-progress { padding: 22px 18px 18px; border-bottom: 1px solid var(--saul-line); }
.mestrium-saul-course .tutor-learning-progress-text { color: var(--saul-muted); font: 500 11px/1.5 var(--saul-mono); letter-spacing: .06em; text-transform: uppercase; }
.mestrium-saul-course .tutor-learning-progress-text span { color: var(--saul-cream); }
.mestrium-saul-course .tutor-learning-nav { padding: 8px; scrollbar-width: thin; scrollbar-color: #665246 transparent; }
.mestrium-saul-course .tutor-learning-nav-header { border-radius: 10px; padding-block: 16px; }
.mestrium-saul-course .tutor-learning-nav-header-title { font-size: 13px; font-weight: 600; line-height: 1.5; }
.mestrium-saul-course .tutor-learning-nav-item { border-radius: 9px; padding-block: 11px; font-size: 13px; }
.mestrium-saul-course .tutor-learning-nav-item.active { background: var(--saul-soft); }
.mestrium-saul-course .tutor-learning-sidebar-pages { border: 1px solid var(--saul-line); border-radius: 13px; }
/* Fill the space beside the curriculum; avoid a second centered page inside the aula. */
.mestrium-saul-course .tutor-learning-area-container { width: 100%; max-width: none; }
.mestrium-saul-course .tutor-has-site-shell .tutor-learning-area-content { min-width: 0; padding: 18px 16px 0 12px; }
.mestrium-saul-course .tutor-lesson-content { border: 0; border-radius: 0; background: var(--saul-ink); }
.mestrium-saul-course .tutor-lesson-content-tab { border: 0; border-radius: 0; background: var(--saul-ink); }
.mestrium-saul-course .tutor-lesson-content .tutor-tabs-nav { padding: 0 0 12px; gap: 8px; border-bottom: 1px solid var(--saul-line); }
.mestrium-saul-course .tutor-lesson-content .tutor-tabs-tab { padding: 10px 16px; border-radius: 999px; font-size: 13px; }
.mestrium-saul-course .tutor-tabs-tab-active { background: var(--saul-soft); color: var(--saul-coral); }
.mestrium-saul-course .tutor-tab-panel[role=tabpanel] { padding: 0; }
.mestrium-saul-course .mestrium-module__guide { min-height: 60px; padding: 16px; gap: 12px; background: var(--saul-ink); color: var(--saul-muted); border-bottom: 1px solid var(--saul-line); font: 500 10px/1.5 var(--saul-mono); letter-spacing: .08em; text-transform: uppercase; }
.mestrium-saul-course .mestrium-module__guide strong { font-weight: 500; }
.mestrium-saul-course .mestrium-module__guide strong span { color: var(--saul-cream); }
.mestrium-saul-course .mestrium-module__guide a { font: 500 12px/1.5 var(--saul-body); letter-spacing: 0; text-transform: none; text-decoration: none; }
.mestrium-saul-course .mestrium-module__guide a:hover { color: var(--saul-coral); }
.mestrium-saul-course .mestrium-module__guide a span { color: var(--saul-coral); margin-left: 4px; }
.mestrium-saul-course .tutor-learning-area-footer[data-lesson] { padding: 14px 0; border-top: 1px solid var(--saul-line); gap: 8px; }
.mestrium-saul-course .tutor-mark-as-complete-button { padding: 10px 20px; min-height: 40px; border: 1px solid rgba(248,92,3,.45); }
.mestrium-saul-course .tutor-mark-as-complete-button.completed { color: var(--saul-ink); border-color: #8fcf8a; }
.mestrium-saul-course .tutor-comment { margin-block: 20px; }
.mestrium-saul-course .tutor-avatar { background: var(--saul-panel-2); color: var(--saul-cream); border: 1px solid #655144; }
.mestrium-saul-course .tutor-expand-btn { border-radius: 8px; }

/* Course information, questions and reviews use the same materials. */
.mestrium-saul-course .tutor-course-details-page .tutor-is-sticky,
.mestrium-saul-course .tutor-course-details-page .tutor-nav {
  background: var(--saul-panel);
  border-bottom: 1px solid var(--saul-line);
}
.mestrium-saul-course .tutor-course-details-page .tutor-nav-link {
  color: var(--saul-cream);
  font-size: 16px;
  min-height: 44px;
}
.mestrium-saul-course .tutor-course-details-page .tutor-nav-link:hover,
.mestrium-saul-course .tutor-course-details-page .tutor-nav-link:focus-visible {
  background: var(--saul-panel-2);
  color: var(--saul-cream);
}
.mestrium-saul-course .tutor-course-details-page .tutor-nav-link.is-active {
  color: #ff8b49;
  border-bottom-color: var(--saul-coral);
}
.mestrium-saul-course .tutor-course-details-page .tutor-nav-more-list {
  background: var(--saul-panel);
  border-color: var(--saul-line);
}
.mestrium-saul-course .tutor-course-info .tutor-course-thumb { border: 1px solid var(--saul-line); border-radius: 20px; overflow: hidden; }
.mestrium-saul-course .tutor-course-info .tutor-course-thumb img { display: block; width: 100%; }
.mestrium-saul-course .tutor-learning-area-content :is(h1,h2,h3,h4) { font-family: var(--saul-display); font-weight: 400; letter-spacing: -.01em; }
.mestrium-saul-course .tutor-learning-area-content h4 { font-size: 32px; }
.mestrium-saul-course .tutor-course-details-title { font-family: var(--saul-display); font-size: clamp(40px,5vw,72px); font-weight: 400; line-height: 1.05; letter-spacing: -.025em; }
.mestrium-saul-course .tutor-course-details-page :is(.tutor-course-details-widget,.tutor-course-details-instructors) { border-color: var(--saul-line); background: var(--saul-panel); border-radius: 18px; }
.mestrium-saul-course .tutor-course-details-page :is(h2,h3) { font-family: var(--saul-display); font-weight: 400; }
.mestrium-saul-course .site-header { background: var(--saul-ink); border-bottom: 1px solid var(--saul-line); color: var(--saul-cream); }
.mestrium-saul-course .site-header .logo { color: var(--saul-cream); }
.mestrium-saul-course .site-search { border: 1px solid var(--saul-line); border-radius: 999px; background: var(--saul-panel); }
.mestrium-saul-course .site-search input { background: transparent; }
.mestrium-saul-course .site-header .btn { background: var(--saul-coral); color: var(--saul-ink); border: 1px solid var(--saul-coral); border-radius: 999px; }
.mestrium-saul-course .site-footer { background: var(--saul-panel); color: var(--saul-muted); border-color: var(--saul-line); }
.mestrium-saul-course .site-footer .logo { color: var(--saul-cream); }
.mestrium-saul-course .tutor-course-details-page :is(.tutor-card-body,.tutor-card-footer,.tutor-accordion-item,.tutor-course-content-list,.tutor-course-content-list-item) { background: var(--saul-panel); border-color: var(--saul-line); color: var(--saul-cream); }
.mestrium-saul-course .tutor-course-details-page .tutor-card { overflow: hidden; border: 1px solid var(--saul-line); border-radius: 18px; }
.mestrium-saul-course .tutor-course-details-page .tutor-accordion-item { border: 1px solid var(--saul-line); border-radius: 14px; overflow: hidden; margin-bottom: 12px; }
.mestrium-saul-course .tutor-course-details-page .tutor-accordion-item-header { background: var(--saul-panel-2); color: var(--saul-cream); }
.mestrium-saul-course .tutor-course-details-page .tutor-accordion-item-header.is-active { background: var(--saul-soft); color: var(--saul-coral); }
.mestrium-saul-course .tutor-course-details-page .tutor-course-content-list-item:hover { background: var(--saul-panel-2); }
.mestrium-saul-course .tutor-course-details-page .tutor-progress-bar { background: var(--saul-line); }
.mestrium-saul-course .tutor-course-details-page .tutor-btn-primary { background: var(--saul-coral); border-color: var(--saul-coral); color: var(--saul-ink); }
.mestrium-saul-course .tutor-course-details-page .tutor-btn-primary:hover { background: #ff7430; }
.mestrium-saul-course .tutor-course-details-page :is(.tutor-color-secondary,.tutor-meta,.tutor-course-details-actions,.tutor-course-details-info) { color: var(--saul-muted); }
.mestrium-saul-course .tutor-course-details-page .tutor-course-thumbnail { overflow: hidden; border: 1px solid var(--saul-line); border-radius: 20px; }

@media (min-width: 992px) {
  .mestrium-saul-course .tutor-has-site-shell .tutor-learning-area-body { grid-template-columns: 320px minmax(0,1fr); }
  .mestrium-saul-course .tutor-has-site-shell .tutor-learning-sidebar { width: 320px; }
}
@media (max-width: 991px) {
  .mestrium-saul-course .tutor-learning-header-inner { min-height: 60px; padding-inline: 6px; }
  .mestrium-saul-course .tutor-learning-header-content { flex: 1; min-width: 0; width: auto; }
  .mestrium-saul-course .tutor-learning-header-title { font-family: var(--saul-body); font-size: 14px; font-weight: 500; }
  .mestrium-saul-course .tutor-learning-sidebar { padding: 12px 12px 20px; background: var(--saul-ink); }
  .mestrium-saul-course .tutor-has-site-shell .tutor-learning-area-content { padding: 14px 16px 0; }
  .mestrium-saul-course .tutor-learning-area-container { padding-inline: 0; }
}
@media (max-width: 575px) {
  .mestrium-saul-course .tutor-has-site-shell .tutor-learning-area-content { padding-inline: 10px; }
  .mestrium-saul-course .tutor-lesson-content { margin-inline: 0; }
  .mestrium-saul-course .tutor-lesson-content .tutor-lesson-content-tab { padding-inline: 0; }
  .mestrium-saul-course .mestrium-module__guide { padding: 14px; gap: 8px; }
  .mestrium-saul-course .mestrium-module__guide a { font-size: 11px; }
  .mestrium-saul-course .tutor-learning-area-footer[data-lesson] { display: grid; grid-template-columns: 1fr minmax(0,1.6fr) 1fr; padding: 10px 0 max(10px,env(safe-area-inset-bottom)); gap: 4px; }
  .mestrium-saul-course .tutor-learning-area-footer[data-lesson] a.tutor-btn:not([class*=tutor-btn-link]) { font-size: 12px; padding-inline: 4px; min-height: 44px; }
  .mestrium-saul-course .tutor-learning-area-footer form { min-width: 0; }
  .mestrium-saul-course .tutor-lesson-content button.tutor-mark-as-complete-button { padding-inline: 8px; min-width: 0; min-height: 44px; width: 100%; font-size: 12px; white-space: normal; }
  .mestrium-saul-course .tutor-lesson-content button.tutor-mark-as-complete-button.completed { padding-right: 36px; }
}
