/* ====== CẤU TRÚC CHUNG ====== */
.reveal {
  font-family: "Segoe UI", "Arial", sans-serif;
  font-size: 22px;               /* tương đương PowerPoint */
  line-height: 1.4;
  color: black;
  background-color: white;
}

/* ====== SLIDE ====== */
.reveal .slides > section {
  display: flex !important;
  flex-direction: column;
  justify-content: flex-start;   /* canh từ trên xuống */
  text-align: left;
  padding: 40px 60px;            /* lề slide (giống PPT) */
  box-sizing: border-box;
  height: 100%;
  width: 100%;
}

/* ====== TIÊU ĐỀ ====== */
.reveal h1 {
  text-align: center;
  font-size: 2.5em;
  font-weight: bold;
  margin: 0 0 30px 0;            /* cách dưới 30px */
}

.reveal h2 { font-size: 1.8em; font-weight: bold; margin: 20px 0; }
.reveal h3 { font-size: 1.4em; font-weight: 600; margin: 10px 0; }
.reveal h4 { font-size: 1.2em; font-weight: 600; margin: 8px 0; }

/* ====== ĐOẠN VĂN & DANH SÁCH ====== */
.reveal p,
.reveal ul,
.reveal ol {
  font-size: 1em;                /* ~22pt PPT */
  line-height: 1.4;
  margin: 0 0 0.6em 0;
}

.reveal ul ul,
.reveal ol ol {
  font-size: 0.9em;
}

.reveal li { margin-bottom: 0.3em; }



/* ====== NỘI DUNG CHÍNH (CONTENT) ====== */
.reveal .content {
  display: block;
  font-size: 1em;          /* ~22pt như PPT */
  line-height: 1.4;
  color: black;
  text-align: left;
  margin: 0;               /* không thêm khoảng cách ngoài */
  padding: 0;              /* dùng padding của section */
}

/* ====== HỖ TRỢ 2 CỘT / 3 CỘT TRONG CONTENT ====== */
.reveal .content.split-2, 
.reveal .content.split-3 {
  display: flex;
  gap: 30px;              /* khoảng cách giữa cột */
}

.reveal .content.split-2 > div,
.reveal .content.split-3 > div {
  flex: 1;                /* chia đều cột */
}

/* Ví dụ thêm scroll-box nếu muốn nhưng không ảnh hưởng PDF */
.reveal .content.scroll-box {
  max-height: 100%;
  overflow: auto;
}

/* Thụt vào các danh sách con */
.reveal .content ul,
.reveal .content ol {
  margin: 0 0 0.6em 1.2em; /* margin-bottom 0.6em, thụt 1.2em */
}

.reveal .content ul ul,
.reveal .content ol ol {
  margin-left: 1em;
  font-size: 0.9em;
}


/* ====== CODE BLOCK ====== */
.reveal pre {
  background-color: #f4f4f4;
  color: #333;
  font-family: Consolas, "Courier New", monospace;
  font-size: 1em;
  padding: 10px 14px;
  border-radius: 6px;
  box-sizing: border-box;
  white-space: pre-wrap;     /* ngắt dòng mềm, chống tràn */
  word-break: break-word;
  overflow: hidden;          /* KHÔNG cuộn */
}

/* ====== LIÊN KẾT ====== */
.reveal a {
  color: #0078d7;
  text-decoration: none;
}
.reveal a:hover {
  text-decoration: underline;
}

/* ====== HEADER & FOOTER (TÙY CHỌN) ====== */
.reveal .header, .reveal .footer {
  font-size: 0.8em;
  opacity: 0.8;
  position: absolute;
  left: 60px;
  right: 60px;
  color: #333;
}

.reveal .header {
  top: 10px;
  text-align: center;
}

.reveal .footer {
  bottom: 10px;
  text-align: center;
}


/* ====== SLIDE BÌA ====== */
.reveal section:first-child {
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* header – center – footer */
  align-items: center;
  text-align: center;
  height: 100%;
  padding: 60px 80px;
  box-sizing: border-box;
  background-color: white;
  color: black;
}

/* HEADER */
.reveal .title-header img {
  max-height: 100px;
  margin-bottom: 20px;
}

/* CENTER */
.reveal .title-center h1 {
  font-size: 3em;
  font-weight: bold;
  margin: 20px 0;
}
.reveal .title-center h3 {
  font-size: 1.5em;
  margin: 10px 0;
}
.reveal .title-center p {
  font-size: 1.2em;
  margin: 5px 0;
}

/* FOOTER */
.reveal .title-footer p {
  font-size: 1em;
  opacity: 0.7;
  margin: 2px 0;
}


/* ====== PDF CHẾ ĐỘ ====== */
@media print {
  .reveal {
    font-size: 20px; /* Giảm nhẹ để vừa khung A4 */
  }
  .reveal .slides > section {
    padding: 30px 50px;
  }
}


