/* style.css */
body {
  min-height: max(884px, 100dvh);
}
.material-symbols-outlined {
  font-family: 'Material Symbols Outlined';
  font-weight: normal;
  font-style: normal;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}
.no-scrollbar::-webkit-scrollbar {
  display: none;
}
.no-scrollbar {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}
/* Safe area padding for mobile */
.pb-safe { padding-bottom: env(safe-area-inset-bottom); }

/* Download Button Styles (From reference HTML inline uses) */
.download-btn-fullwidth {
  display: block;
  width: 100%;
  background-color: #0066FF;
  color: white;
  text-align: center;
  padding: 12px;
  border-radius: 8px;
  font-weight: 600;
  margin-top: 16px;
  transition: background-color 0.2s;
}
.download-btn-fullwidth:hover {
  background-color: #004CBF;
}

/* Video Wrapper for YouTube Embeds */
.video-wrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 aspect ratio */
  height: 0;
  overflow: hidden;
  border-radius: 12px;
  margin: 16px 0;
}
.video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* Fallback Prose Typography for Markdown content */
.prose {
  color: #c1c7d0;
  line-height: 1.75;
}
.prose h1, .prose h2, .prose h3, .prose h4 {
  color: #ffffff;
  font-weight: 700;
  line-height: 1.3;
}
.prose h1 { font-size: 2.5rem; margin-top: 2rem; margin-bottom: 1.5rem; color: #ffffff; border-bottom: 4px solid #3b82f6; display: inline-block; padding-bottom: 0.25rem; }
.prose h2 { font-size: 1.875rem; margin-top: 2.5rem; margin-bottom: 1.25rem; color: #ffffff; border-bottom: 2px solid #3b82f6; padding-bottom: 0.5rem; display: inline-block; }
.prose h3 { font-size: 1.5rem; margin-top: 2rem; margin-bottom: 1rem; color: #f1f5f9; }
.prose h4 { font-size: 1.25rem; margin-top: 1.5rem; margin-bottom: 0.75rem; color: #e2e8f0; }
.prose p { margin-top: 1.25em; margin-bottom: 1.25em; }
.prose ul { list-style-type: disc; padding-left: 1.625em; margin-top: 1.25em; margin-bottom: 1.25em; }
.prose ol { list-style-type: decimal; padding-left: 1.625em; margin-top: 1.25em; margin-bottom: 1.25em; }
.prose li { margin-top: 0.5em; margin-bottom: 0.5em; }
.prose strong { font-weight: 600; color: #ffffff; }
.prose a { color: #3b82f6; text-decoration: underline; }
.prose a:hover { color: #60a5fa; }
