/* ============================================
   NSQF PPT - Complete Stylesheet
   Design: Professional Educational Presentation
   Colors: Orange, Blue, Green, Purple theme
   ============================================ */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:root {
  --orange: #FF6B35;
  --orange-dark: #E55A25;
  --orange-light: #FFF0EB;
  --blue: #1A73E8;
  --blue-dark: #1557B0;
  --blue-light: #E8F0FE;
  --green: #0F9D58;
  --green-dark: #0B7A44;
  --green-light: #E6F4EA;
  --purple: #7B2FBE;
  --purple-dark: #5E1F96;
  --purple-light: #F3E8FF;
  --dark: #1A1A2E;
  --dark2: #16213E;
  --text-dark: #1A1A2E;
  --text-mid: #444;
  --text-light: #666;
  --white: #FFFFFF;
  --bg-light: #F8F9FA;
  --shadow: 0 4px 20px rgba(0,0,0,0.12);
  --shadow-lg: 0 8px 40px rgba(0,0,0,0.18);
}

body {
  font-family: 'Poppins', 'Noto Sans Devanagari', sans-serif;
  background: #0D0D1A;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  overflow: hidden;
}

/* ============ PRESENTATION WRAPPER ============ */
.presentation {
  width: 1280px;
  height: 720px;
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  box-shadow: 0 20px 80px rgba(0,0,0,0.6);
}

/* ============ SLIDE BASE ============ */
.slide {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  display: none;
  background: var(--white);
  overflow: hidden;
}

.slide.active {
  display: flex;
  flex-direction: column;
  animation: slideIn 0.4s ease;
}

@keyframes slideIn {
  from { opacity: 0; transform: translateX(30px); }
  to { opacity: 1; transform: translateX(0); }
}

/* ============ NAVIGATION ============ */
.slide-counter {
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(255,255,255,0.15);
  backdrop-filter: blur(10px);
  color: white;
  padding: 8px 20px;
  border-radius: 20px;
  font-size: 14px;
  font-weight: 600;
  z-index: 1000;
  letter-spacing: 1px;
}

.nav-btn {
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(255,255,255,0.2);
  backdrop-filter: blur(10px);
  border: 2px solid rgba(255,255,255,0.3);
  color: white;
  width: 50px; height: 50px;
  border-radius: 50%;
  font-size: 20px;
  cursor: pointer;
  z-index: 1000;
  transition: all 0.3s;
  display: flex; align-items: center; justify-content: center;
}

.nav-btn:hover { background: rgba(255,255,255,0.4); transform: translateY(-50%) scale(1.1); }
.prev-btn { left: 15px; }
.next-btn { right: 15px; }

/* ============ SLIDE 1 - TITLE ============ */
.slide-1 {
  background: linear-gradient(135deg, #0D0D2B 0%, #1A1A4E 40%, #0D2B4E 100%);
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.slide1-bg {
  position: absolute;
  top: 0; left: 0; width: 100%; height: 100%;
  overflow: hidden;
}

.circle {
  position: absolute;
  border-radius: 50%;
  opacity: 0.08;
}

.c1 { width: 500px; height: 500px; background: var(--orange); top: -200px; right: -100px; }
.c2 { width: 350px; height: 350px; background: var(--blue); bottom: -150px; left: -100px; }
.c3 { width: 200px; height: 200px; background: var(--green); top: 50%; left: 50%; transform: translate(-50%,-50%); }

.slide1-content {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 20px 50px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.institute-header {
  display: flex;
  align-items: center;
  gap: 20px;
  width: 100%;
  justify-content: center;
}

.logo-box {
  width: 80px; height: 80px;
  background: linear-gradient(135deg, var(--orange), #FF9A3C);
  border-radius: 16px;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 20px rgba(255,107,53,0.4);
  flex-shrink: 0;
}

.logo-inner {
  text-align: center;
  color: white;
}

.logo-gear { font-size: 24px; }
.logo-text-si { font-size: 9px; font-weight: 800; letter-spacing: 1px; line-height: 1.2; }

.nsti-logo { background: linear-gradient(135deg, var(--blue), #4A9EFF); }
.right-logo .logo-box { background: linear-gradient(135deg, var(--blue), #4A9EFF); box-shadow: 0 4px 20px rgba(26,115,232,0.4); }

.institute-name {
  text-align: center;
  color: white;
}

.inst-hindi {
  font-family: 'Noto Sans Devanagari', sans-serif;
  font-size: 16px;
  font-weight: 600;
  color: #FFD700;
  letter-spacing: 1px;
}

.inst-eng {
  font-size: 22px;
  font-weight: 800;
  letter-spacing: 3px;
  color: white;
  text-shadow: 0 2px 10px rgba(0,0,0,0.3);
}

.inst-city {
  font-size: 18px;
  font-weight: 700;
  color: var(--orange);
  letter-spacing: 4px;
}

.divider-line {
  width: 80%;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--orange), var(--blue), transparent);
}

.main-topic-box {
  text-align: center;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 16px;
  padding: 16px 40px;
  width: 90%;
  backdrop-filter: blur(10px);
}

.topic-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  color: var(--orange);
  text-transform: uppercase;
  margin-bottom: 6px;
}

.main-topic-title {
  font-family: 'Noto Sans Devanagari', sans-serif;
  font-size: 26px;
  font-weight: 800;
  color: #FFD700;
  line-height: 1.3;
}

.main-topic-sub {
  font-size: 16px;
  font-weight: 600;
  color: rgba(255,255,255,0.85);
  margin-top: 4px;
}

.main-topic-sub2 {
  font-family: 'Noto Sans Devanagari', sans-serif;
  font-size: 13px;
  color: rgba(255,255,255,0.65);
  margin-top: 4px;
}

.main-topic-sub3 {
  font-size: 12px;
  color: rgba(255,255,255,0.55);
  margin-top: 2px;
}

.student-info-grid {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}

.info-card {
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 10px;
  padding: 10px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  min-width: 130px;
}

.info-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  color: var(--orange);
  text-transform: uppercase;
}

.info-value {
  font-size: 16px;
  font-weight: 700;
  color: white;
}

/* ============ CONTENT SLIDES - HEADER ============ */
.slide-content {
  flex-direction: column;
}

.slide-header {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 18px 40px;
  color: white;
  flex-shrink: 0;
}

.slide-header.orange { background: linear-gradient(135deg, var(--orange), #FF9A3C); }
.slide-header.blue { background: linear-gradient(135deg, var(--blue), #4A9EFF); }
.slide-header.green { background: linear-gradient(135deg, var(--green), #34C77A); }
.slide-header.purple { background: linear-gradient(135deg, var(--purple), #A855F7); }

.slide-num {
  font-size: 42px;
  font-weight: 900;
  opacity: 0.3;
  line-height: 1;
  font-family: 'Poppins', sans-serif;
}

.slide-title-wrap h2 {
  font-size: 24px;
  font-weight: 700;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
  line-height: 1.2;
}

.slide-title-wrap p {
  font-size: 13px;
  opacity: 0.85;
  margin-top: 2px;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

/* ============ SLIDE BODY ============ */
.slide-body {
  flex: 1;
  padding: 20px 40px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.slide-body.two-col {
  flex-direction: row;
  gap: 24px;
}

.col-left, .col-right {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* ============ COMMON COMPONENTS ============ */
.definition-box {
  background: linear-gradient(135deg, #FFF8F5, #FFF0EB);
  border: 2px solid var(--orange);
  border-radius: 12px;
  padding: 14px 16px;
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.blue-def {
  background: linear-gradient(135deg, #F0F7FF, #E8F0FE);
  border-color: var(--blue);
}

.def-icon { font-size: 28px; flex-shrink: 0; }

.def-text {
  font-size: 14px;
  line-height: 1.5;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.highlight-text {
  font-size: 16px;
  font-weight: 700;
  color: var(--orange);
  display: block;
  margin: 2px 0;
}

.hindi-text {
  font-family: 'Noto Sans Devanagari', sans-serif;
  font-size: 13px;
  color: var(--text-mid);
}

.point-card {
  background: var(--bg-light);
  border-left: 4px solid var(--orange);
  border-radius: 8px;
  padding: 10px 14px;
  display: flex;
  gap: 10px;
  align-items: flex-start;
}

.point-icon { font-size: 18px; flex-shrink: 0; margin-top: 2px; }

.point-text {
  font-size: 13px;
  line-height: 1.5;
  color: var(--text-dark);
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

/* ============ SLIDE 2 - INFO VISUAL ============ */
.info-visual-box {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  border-radius: 12px;
  padding: 16px;
  color: white;
  flex: 1;
}

.visual-title {
  font-size: 14px;
  font-weight: 700;
  color: #FFD700;
  margin-bottom: 10px;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.feature-list { display: flex; flex-direction: column; gap: 6px; }

.feature-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 10px;
  background: rgba(255,255,255,0.08);
  border-radius: 6px;
}

.feat-num {
  background: var(--orange);
  color: white;
  width: 24px; height: 24px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 11px;
  font-weight: 700;
  flex-shrink: 0;
}

.feat-text {
  font-size: 12px;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.quote-box {
  background: linear-gradient(135deg, var(--orange), #FF9A3C);
  border-radius: 12px;
  padding: 14px 16px;
  color: white;
}

.quote-text {
  font-family: 'Noto Sans Devanagari', sans-serif;
  font-size: 14px;
  font-weight: 600;
  font-style: italic;
  line-height: 1.4;
}

.quote-sub {
  font-size: 12px;
  opacity: 0.85;
  margin-top: 6px;
  font-style: italic;
}

/* ============ SLIDE 3 - OBJECTIVES ============ */
.objectives-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  flex: 1;
}

.obj-card {
  border-radius: 12px;
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  border: 2px solid transparent;
  transition: transform 0.2s;
}

.obj-1 { background: #FFF0EB; border-color: var(--orange); }
.obj-2 { background: #E8F0FE; border-color: var(--blue); }
.obj-3 { background: #E6F4EA; border-color: var(--green); }
.obj-4 { background: #F3E8FF; border-color: var(--purple); }
.obj-5 { background: #FFF8E1; border-color: #F9A825; }
.obj-6 { background: #FCE4EC; border-color: #E91E63; }

.obj-icon { font-size: 28px; }
.obj-title { font-size: 15px; font-weight: 700; color: var(--text-dark); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }
.obj-sub { font-size: 11px; font-weight: 600; color: var(--text-light); }
.obj-desc { font-size: 12px; color: var(--text-mid); line-height: 1.4; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

/* ============ SLIDE 4 - TIMELINE ============ */
.timeline-container {
  display: flex;
  flex-direction: column;
  gap: 8px;
  position: relative;
  padding-left: 20px;
}

.timeline-container::before {
  content: '';
  position: absolute;
  left: 60px;
  top: 0; bottom: 0;
  width: 3px;
  background: linear-gradient(180deg, var(--orange), var(--blue), var(--green), var(--purple));
  border-radius: 2px;
}

.timeline-item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  position: relative;
}

.tl-year {
  width: 60px;
  font-size: 16px;
  font-weight: 800;
  color: var(--orange);
  text-align: right;
  flex-shrink: 0;
  padding-top: 4px;
}

.timeline-item:nth-child(2) .tl-year { color: var(--blue); }
.timeline-item:nth-child(3) .tl-year { color: var(--green); }
.timeline-item:nth-child(4) .tl-year { color: var(--purple); }
.timeline-item:nth-child(5) .tl-year { color: var(--orange); }
.timeline-item:nth-child(6) .tl-year { color: var(--blue); }

.tl-content {
  background: var(--bg-light);
  border-radius: 10px;
  padding: 10px 14px;
  flex: 1;
  border-left: 3px solid var(--orange);
  margin-left: 16px;
}

.timeline-item:nth-child(2) .tl-content { border-color: var(--blue); }
.timeline-item:nth-child(3) .tl-content { border-color: var(--green); }
.timeline-item:nth-child(4) .tl-content { border-color: var(--purple); }
.timeline-item:nth-child(5) .tl-content { border-color: var(--orange); }
.timeline-item:nth-child(6) .tl-content { border-color: var(--blue); }

.tl-title { font-size: 14px; font-weight: 700; color: var(--text-dark); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }
.tl-desc { font-size: 12px; color: var(--text-mid); margin-top: 3px; line-height: 1.4; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

/* ============ SLIDE 5 - PILLARS ============ */
.pillars-diagram {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  flex: 1;
}

.pillar-roof {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  color: #FFD700;
  padding: 12px 40px;
  border-radius: 12px 12px 0 0;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  width: 80%;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.pillars-row {
  display: flex;
  gap: 12px;
  width: 100%;
  justify-content: center;
}

.pillar {
  flex: 1;
  max-width: 200px;
  border-radius: 8px;
  padding: 16px 12px;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 160px;
}

.p1 { background: linear-gradient(180deg, #FFF0EB, #FFD5C2); border: 2px solid var(--orange); }
.p2 { background: linear-gradient(180deg, #E8F0FE, #C5D8FF); border: 2px solid var(--blue); }
.p3 { background: linear-gradient(180deg, #E6F4EA, #B8E6C8); border: 2px solid var(--green); }
.p4 { background: linear-gradient(180deg, #F3E8FF, #DDB8FF); border: 2px solid var(--purple); }
.p5 { background: linear-gradient(180deg, #FFF8E1, #FFE082); border: 2px solid #F9A825; }

.pillar-icon { font-size: 30px; }
.pillar-name { font-size: 14px; font-weight: 700; color: var(--text-dark); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; line-height: 1.3; }
.pillar-desc { font-size: 11px; color: var(--text-mid); line-height: 1.4; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.pillar-base {
  background: linear-gradient(135deg, var(--orange), #FF9A3C);
  color: white;
  padding: 10px 40px;
  border-radius: 0 0 12px 12px;
  font-size: 13px;
  font-weight: 600;
  text-align: center;
  width: 80%;
}

/* ============ SLIDE 6 - QP STRUCTURE ============ */
.qp-structure-box {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  border-radius: 12px;
  padding: 16px;
  color: white;
  flex: 1;
}

.qp-title { font-size: 14px; font-weight: 700; color: #FFD700; margin-bottom: 12px; text-align: center; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.qp-flow { display: flex; flex-direction: column; align-items: center; gap: 6px; }

.qp-box {
  padding: 10px 20px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  text-align: center;
  width: 80%;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.top-box { background: var(--orange); }
.mid-box { background: var(--blue); }
.bot-box { background: var(--green); }

.qp-arrow { font-size: 20px; color: rgba(255,255,255,0.6); }

.qp-nos-row { display: flex; gap: 8px; justify-content: center; }

.nos-box {
  background: rgba(255,255,255,0.15);
  border: 1px solid rgba(255,255,255,0.3);
  border-radius: 6px;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 600;
}

/* ============ SLIDE 7 - NOS ============ */
.nos-container { display: flex; flex-direction: column; gap: 14px; flex: 1; }

.nos-def-box {
  background: linear-gradient(135deg, #E8F0FE, #C5D8FF);
  border: 2px solid var(--blue);
  border-radius: 12px;
  padding: 14px 16px;
  display: flex;
  gap: 14px;
  align-items: flex-start;
}

.nos-def-icon { font-size: 32px; flex-shrink: 0; }
.nos-def-content { flex: 1; }
.nos-def-title { font-size: 18px; font-weight: 700; color: var(--blue-dark); margin-bottom: 6px; }
.nos-def-text { font-size: 13px; color: var(--text-dark); line-height: 1.5; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }
.nos-def-eng { font-size: 12px; color: var(--text-mid); margin-top: 4px; font-style: italic; }

.nos-components { flex: 1; }
.nos-comp-title { font-size: 15px; font-weight: 700; color: var(--text-dark); margin-bottom: 10px; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.nos-comp-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.nos-comp-item {
  background: var(--bg-light);
  border-radius: 10px;
  padding: 12px;
  border-top: 3px solid var(--blue);
  text-align: center;
}

.comp-num {
  width: 28px; height: 28px;
  background: var(--blue);
  color: white;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 13px;
  font-weight: 700;
  margin: 0 auto 6px;
}

.comp-name { font-size: 13px; font-weight: 700; color: var(--text-dark); margin-bottom: 3px; }
.comp-desc { font-size: 11px; color: var(--text-light); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

/* ============ SLIDE 8 - TYPES ============ */
.types-container { display: flex; flex-direction: column; gap: 10px; flex: 1; }

.type-card {
  border-radius: 12px;
  padding: 14px 16px;
  border: 2px solid transparent;
}

.type-1 { background: #E8F0FE; border-color: var(--blue); }
.type-2 { background: #E6F4EA; border-color: var(--green); }
.type-3 { background: #FFF8E1; border-color: #F9A825; }

.type-header { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.type-icon { font-size: 20px; }
.type-name { font-size: 16px; font-weight: 700; color: var(--text-dark); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.type-body p { font-size: 13px; color: var(--text-mid); line-height: 1.4; margin-bottom: 4px; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.type-example {
  background: rgba(0,0,0,0.06);
  border-radius: 6px;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 600;
  color: var(--text-dark);
  margin-top: 6px;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.qp-note-box {
  background: linear-gradient(135deg, #FFF0EB, #FFD5C2);
  border: 2px solid var(--orange);
  border-radius: 10px;
  padding: 12px 16px;
  display: flex;
  gap: 10px;
  align-items: center;
}

.note-icon { font-size: 22px; }
.note-text { font-size: 13px; color: var(--text-dark); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; line-height: 1.4; }

/* ============ SLIDE 9 - QP CODE ============ */
.qp-code-container { display: flex; gap: 30px; flex: 1; align-items: flex-start; }

.code-display {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  border-radius: 16px;
  padding: 24px;
  color: white;
  min-width: 380px;
  text-align: center;
}

.code-title { font-size: 13px; color: rgba(255,255,255,0.6); margin-bottom: 12px; letter-spacing: 2px; }

.code-box-main {
  font-size: 48px;
  font-weight: 900;
  letter-spacing: 4px;
  margin-bottom: 16px;
  font-family: 'Poppins', sans-serif;
}

.code-part.sector { color: var(--orange); }
.code-slash { color: rgba(255,255,255,0.4); }
.code-part.type { color: var(--blue); }
.code-part.number { color: var(--green); }

.code-labels { display: flex; justify-content: space-around; gap: 10px; }

.code-label-item { text-align: center; }
.label-arrow { font-size: 20px; color: rgba(255,255,255,0.4); }
.label-text { font-size: 11px; line-height: 1.5; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.sector-examples { flex: 1; }
.sector-title { font-size: 15px; font-weight: 700; color: var(--text-dark); margin-bottom: 12px; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.sector-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }

.sector-item {
  background: var(--bg-light);
  border-radius: 8px;
  padding: 10px 12px;
  display: flex;
  gap: 10px;
  align-items: center;
}

.s-code {
  background: var(--blue);
  color: white;
  padding: 3px 8px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 700;
  flex-shrink: 0;
}

.s-name { font-size: 12px; color: var(--text-dark); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

/* ============ SLIDE 10 - LEVELS PYRAMID ============ */
.levels-pyramid {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
}

.level-row {
  display: flex;
  align-items: center;
  gap: 12px;
  border-radius: 6px;
  padding: 7px 14px;
  font-size: 13px;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.lev-num {
  width: 32px; height: 32px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 14px;
  font-weight: 800;
  color: white;
  flex-shrink: 0;
}

.lev-content { flex: 1; color: var(--text-dark); }

.lev10 { background: #1A1A4E; color: white; }
.lev10 .lev-num { background: #FFD700; color: #1A1A4E; }
.lev10 .lev-content { color: white; }

.lev9 { background: #2D2D6E; color: white; }
.lev9 .lev-num { background: #A855F7; }
.lev9 .lev-content { color: white; }

.lev8 { background: #3D3D8E; color: white; }
.lev8 .lev-num { background: var(--purple); }
.lev8 .lev-content { color: white; }

.lev7 { background: #E8F0FE; }
.lev7 .lev-num { background: var(--blue); }

.lev6 { background: #EEF4FF; }
.lev6 .lev-num { background: #4A9EFF; }

.lev5 { background: #E6F4EA; }
.lev5 .lev-num { background: var(--green); }

.lev4 { background: linear-gradient(135deg, #FFF0EB, #FFD5C2); border: 2px solid var(--orange); }
.lev4 .lev-num { background: var(--orange); }

.lev3 { background: #FFF8E1; }
.lev3 .lev-num { background: #F9A825; }

.lev2 { background: #FCE4EC; }
.lev2 .lev-num { background: #E91E63; }

.lev1 { background: #F3E5F5; }
.lev1 .lev-num { background: #9C27B0; }

/* ============ SLIDE 11 - TABLE ============ */
.descriptor-table-wrap { flex: 1; overflow: auto; }

.descriptor-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.descriptor-table thead tr {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  color: white;
}

.descriptor-table th {
  padding: 12px 14px;
  text-align: center;
  font-size: 13px;
  font-weight: 700;
  border: 1px solid rgba(255,255,255,0.1);
}

.descriptor-table td {
  padding: 10px 14px;
  border: 1px solid #E0E0E0;
  text-align: center;
  vertical-align: middle;
  line-height: 1.4;
}

.descriptor-table tbody tr:nth-child(odd) { background: #F8F9FA; }
.descriptor-table tbody tr:nth-child(even) { background: white; }
.descriptor-table tbody tr:hover { background: #E8F0FE; }

.desc-name { font-weight: 700; text-align: left !important; color: var(--text-dark); }

.descriptor-note {
  background: linear-gradient(135deg, #FFF0EB, #FFD5C2);
  border: 2px solid var(--orange);
  border-radius: 10px;
  padding: 12px 16px;
  display: flex;
  gap: 10px;
  align-items: center;
}

.dn-icon { font-size: 22px; }
.dn-text { font-size: 13px; color: var(--text-dark); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; line-height: 1.4; }

/* ============ SLIDE 12 - FRAMEWORK ============ */
.framework-diagram {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  flex: 1;
}

.fw-top, .fw-bottom { width: 100%; display: flex; justify-content: center; }

.fw-box {
  border-radius: 10px;
  padding: 10px 16px;
  font-size: 13px;
  font-weight: 600;
  text-align: center;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
  line-height: 1.4;
}

.fw-main {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  color: #FFD700;
  font-size: 16px;
  padding: 12px 40px;
  width: 60%;
}

.fw-arrow-down { font-size: 20px; color: var(--text-light); }

.fw-mid-row {
  display: flex;
  gap: 20px;
  width: 100%;
  justify-content: center;
}

.fw-branch {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  flex: 1;
}

.fw-branch1 { background: linear-gradient(135deg, #FFF0EB, #FFD5C2); border: 2px solid var(--orange); color: var(--text-dark); }
.fw-branch2 { background: linear-gradient(135deg, #E8F0FE, #C5D8FF); border: 2px solid var(--blue); color: var(--text-dark); }
.fw-branch3 { background: linear-gradient(135deg, #E6F4EA, #B8E6C8); border: 2px solid var(--green); color: var(--text-dark); }

.fw-result {
  background: linear-gradient(135deg, var(--orange), #FF9A3C);
  color: white;
  font-size: 15px;
  padding: 12px 40px;
  width: 80%;
}

/* ============ SLIDE 13 - COMPARISON ============ */
.comparison-container {
  display: flex;
  gap: 16px;
  align-items: center;
  flex: 1;
}

.comp-card {
  flex: 1;
  border-radius: 14px;
  padding: 16px;
  border: 2px solid transparent;
}

.comp-nsqf { background: linear-gradient(135deg, #FFF0EB, #FFD5C2); border-color: var(--orange); }
.comp-nqf { background: linear-gradient(135deg, #E8F0FE, #C5D8FF); border-color: var(--blue); }
.comp-eqf { background: linear-gradient(135deg, #E6F4EA, #B8E6C8); border-color: var(--green); }

.comp-header {
  font-size: 16px;
  font-weight: 700;
  color: var(--text-dark);
  margin-bottom: 12px;
  text-align: center;
  padding: 8px;
  border-radius: 8px;
  background: rgba(0,0,0,0.06);
}

.comp-items { display: flex; flex-direction: column; gap: 6px; }

.comp-item {
  font-size: 13px;
  color: var(--text-dark);
  padding: 5px 8px;
  background: rgba(255,255,255,0.6);
  border-radius: 6px;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.comp-vs {
  font-size: 20px;
  font-weight: 900;
  color: var(--text-light);
  flex-shrink: 0;
}

.comparison-note {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  border-radius: 10px;
  padding: 12px 16px;
  color: white;
}

.cn-title { font-size: 13px; font-weight: 700; color: #FFD700; margin-bottom: 4px; }
.cn-text { font-size: 12px; line-height: 1.5; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

/* ============ SLIDE 14 - VT FLOW ============ */
.vt-intro-box {
  background: linear-gradient(135deg, #E8F0FE, #C5D8FF);
  border: 2px solid var(--blue);
  border-radius: 12px;
  padding: 14px 16px;
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.vt-icon { font-size: 28px; flex-shrink: 0; }
.vt-text { font-size: 13px; line-height: 1.5; color: var(--text-dark); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.vt-flow-box {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  border-radius: 12px;
  padding: 16px;
  color: white;
  flex: 1;
}

.vt-flow-title { font-size: 14px; font-weight: 700; color: #FFD700; margin-bottom: 12px; text-align: center; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.vt-flow-steps { display: flex; flex-direction: column; gap: 6px; }

.vt-step {
  display: flex;
  gap: 12px;
  align-items: center;
  background: rgba(255,255,255,0.08);
  border-radius: 8px;
  padding: 8px 12px;
}

.vs-num {
  width: 28px; height: 28px;
  background: var(--orange);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 13px;
  font-weight: 700;
  flex-shrink: 0;
}

.vs-title { font-size: 13px; font-weight: 700; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }
.vs-desc { font-size: 11px; opacity: 0.75; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.vt-arrow { text-align: center; font-size: 16px; color: rgba(255,255,255,0.4); }

/* ============ SLIDE 15 - CSA ============ */
.csa-container { display: flex; flex-direction: column; gap: 14px; flex: 1; }

.csa-header-box {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  border-radius: 12px;
  padding: 16px 20px;
  display: flex;
  gap: 16px;
  align-items: center;
  color: white;
}

.csa-icon { font-size: 40px; }
.csa-title { font-size: 20px; font-weight: 700; color: #FFD700; }
.csa-level { font-size: 14px; margin-top: 4px; }
.csa-duration { font-size: 13px; opacity: 0.75; }

.level-badge {
  background: var(--orange);
  color: white;
  padding: 2px 10px;
  border-radius: 12px;
  font-weight: 700;
  font-size: 16px;
}

.csa-nos-grid { flex: 1; }
.csa-nos-title { font-size: 15px; font-weight: 700; color: var(--text-dark); margin-bottom: 10px; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.csa-nos-items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.csa-nos-item {
  background: var(--bg-light);
  border-radius: 10px;
  padding: 12px;
  border-top: 3px solid var(--blue);
}

.cni-code {
  font-size: 12px;
  font-weight: 700;
  color: var(--blue);
  margin-bottom: 4px;
}

.cni-name {
  font-size: 12px;
  color: var(--text-dark);
  line-height: 1.4;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

/* ============ SLIDE 16 - IMPL FLOWCHART ============ */
.impl-flowchart {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  flex: 1;
}

.impl-row {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.impl-row.reverse { flex-direction: row-reverse; }

.impl-box {
  background: var(--bg-light);
  border: 2px solid #E0E0E0;
  border-radius: 10px;
  padding: 12px 16px;
  text-align: center;
  min-width: 160px;
  flex: 1;
  max-width: 220px;
}

.impl-start { background: linear-gradient(135deg, #FFF0EB, #FFD5C2); border-color: var(--orange); }
.impl-end { background: linear-gradient(135deg, #E6F4EA, #B8E6C8); border-color: var(--green); }

.ib-icon { font-size: 24px; margin-bottom: 4px; }
.ib-text { font-size: 13px; font-weight: 600; color: var(--text-dark); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; line-height: 1.4; }
.ib-text small { font-size: 11px; color: var(--text-light); font-weight: 400; }

.impl-arrow { font-size: 22px; color: var(--text-light); font-weight: 700; }
.impl-down-arrow { font-size: 22px; color: var(--text-light); }

/* ============ SLIDE 17 - BENEFITS ============ */
.benefits-container { display: flex; flex-direction: column; gap: 10px; flex: 1; }

.benefit-group { border-radius: 12px; overflow: hidden; }

.bg-header {
  padding: 10px 16px;
  font-size: 15px;
  font-weight: 700;
  color: white;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.student-bg { background: linear-gradient(135deg, var(--blue), #4A9EFF); }
.employer-bg { background: linear-gradient(135deg, var(--green), #34C77A); }
.govt-bg { background: linear-gradient(135deg, var(--orange), #FF9A3C); }

.bg-items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6px;
  padding: 10px;
  background: var(--bg-light);
}

.bg-item {
  font-size: 12px;
  color: var(--text-dark);
  padding: 6px 10px;
  background: white;
  border-radius: 6px;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
  line-height: 1.4;
}

/* ============ SLIDE 18 - QP COMPONENTS ============ */
.qp-components-diagram { display: flex; flex-direction: column; gap: 14px; flex: 1; }

.qpc-center {
  display: flex;
  justify-content: center;
}

.qpc-main {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  color: #FFD700;
  border-radius: 50%;
  width: 90px; height: 90px;
  display: flex; align-items: center; justify-content: center;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  line-height: 1.3;
  box-shadow: 0 4px 20px rgba(26,26,78,0.4);
}

.qpc-items-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

.qpc-item {
  border-radius: 10px;
  padding: 12px;
  text-align: center;
  border: 2px solid transparent;
}

.qpc-1 { background: #FFF0EB; border-color: var(--orange); }
.qpc-2 { background: #E8F0FE; border-color: var(--blue); }
.qpc-3 { background: #E6F4EA; border-color: var(--green); }
.qpc-4 { background: #F3E8FF; border-color: var(--purple); }
.qpc-5 { background: #FFF8E1; border-color: #F9A825; }
.qpc-6 { background: #FCE4EC; border-color: #E91E63; }
.qpc-7 { background: #E0F7FA; border-color: #00BCD4; }
.qpc-8 { background: #F1F8E9; border-color: #8BC34A; }

.qpci-icon { font-size: 22px; margin-bottom: 4px; }
.qpci-title { font-size: 12px; font-weight: 700; color: var(--text-dark); margin-bottom: 3px; }
.qpci-desc { font-size: 11px; color: var(--text-mid); line-height: 1.3; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

/* ============ SLIDE 19 - NOS DETAIL ============ */
.nos-detail-container { display: flex; flex-direction: column; gap: 12px; flex: 1; }

.nos-detail-header {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  border-radius: 12px;
  padding: 14px 20px;
  display: flex;
  gap: 20px;
  align-items: center;
  color: white;
}

.ndh-code { font-size: 18px; font-weight: 700; color: var(--orange); }
.ndh-title { font-size: 16px; font-weight: 700; color: #FFD700; flex: 1; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }
.ndh-level { font-size: 13px; background: var(--orange); padding: 4px 12px; border-radius: 12px; }

.nos-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  flex: 1;
}

.nd-section {
  border-radius: 10px;
  padding: 14px;
  border: 2px solid transparent;
}

.nd-scope { background: #FFF0EB; border-color: var(--orange); }
.nd-pc { background: #E8F0FE; border-color: var(--blue); }
.nd-know { background: #E6F4EA; border-color: var(--green); }
.nd-skills { background: #F3E8FF; border-color: var(--purple); }

.nd-sec-title { font-size: 14px; font-weight: 700; color: var(--text-dark); margin-bottom: 8px; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }
.nd-sec-content { font-size: 12px; color: var(--text-mid); line-height: 1.5; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.pc-item {
  padding: 4px 0;
  border-bottom: 1px solid rgba(0,0,0,0.06);
  font-size: 12px;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

/* ============ SLIDE 20 - CURRICULUM FLOW ============ */
.curriculum-flow {
  display: flex;
  gap: 6px;
  align-items: center;
  flex: 1;
  justify-content: center;
}

.cf-step {
  border-radius: 12px;
  padding: 14px 10px;
  text-align: center;
  flex: 1;
  max-width: 170px;
  border: 2px solid transparent;
}

.cf-s1 { background: #FFF0EB; border-color: var(--orange); }
.cf-s2 { background: #E8F0FE; border-color: var(--blue); }
.cf-s3 { background: #E6F4EA; border-color: var(--green); }
.cf-s4 { background: #F3E8FF; border-color: var(--purple); }
.cf-s5 { background: #FFF8E1; border-color: #F9A825; }
.cf-s6 { background: #FCE4EC; border-color: #E91E63; }

.cf-icon { font-size: 28px; margin-bottom: 6px; }
.cf-title { font-size: 13px; font-weight: 700; color: var(--text-dark); margin-bottom: 4px; }
.cf-desc { font-size: 11px; color: var(--text-mid); line-height: 1.3; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.cf-arrow { font-size: 22px; color: var(--text-light); flex-shrink: 0; }

/* ============ SLIDE 21 - SSC ============ */
.ssc-container { display: flex; flex-direction: column; gap: 12px; flex: 1; }

.ssc-def-box {
  background: linear-gradient(135deg, #E8F0FE, #C5D8FF);
  border: 2px solid var(--blue);
  border-radius: 12px;
  padding: 14px 16px;
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.ssc-icon { font-size: 28px; flex-shrink: 0; }
.ssc-def-text { font-size: 13px; line-height: 1.5; color: var(--text-dark); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.ssc-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

.ssc-item {
  background: var(--bg-light);
  border-radius: 10px;
  padding: 12px;
  text-align: center;
  border-top: 3px solid var(--blue);
}

.ssc-name { font-size: 15px; font-weight: 700; color: var(--blue-dark); }
.ssc-sector { font-size: 11px; color: var(--text-light); margin-top: 3px; }

.ssc-note {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  color: white;
  border-radius: 10px;
  padding: 12px 16px;
  font-size: 13px;
  text-align: center;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

/* ============ SLIDE 22 - PHASES ============ */
.phases-container {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  flex: 1;
}

.phase-item {
  flex: 1;
  border-radius: 12px;
  padding: 14px;
  border: 2px solid transparent;
}

.phase-1 { background: #FFF0EB; border-color: var(--orange); }
.phase-2 { background: #E8F0FE; border-color: var(--blue); }
.phase-3 { background: #E6F4EA; border-color: var(--green); }
.phase-4 { background: #F3E8FF; border-color: var(--purple); }

.phase-num {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  color: var(--text-light);
  margin-bottom: 4px;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.phase-title {
  font-size: 14px;
  font-weight: 700;
  color: var(--text-dark);
  margin-bottom: 10px;
  line-height: 1.3;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.phase-content { display: flex; flex-direction: column; gap: 5px; }

.ph-point {
  font-size: 12px;
  color: var(--text-mid);
  padding: 4px 8px;
  background: rgba(255,255,255,0.6);
  border-radius: 5px;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
  line-height: 1.4;
}

.phase-arrow { font-size: 24px; color: var(--text-light); flex-shrink: 0; align-self: center; }

/* ============ SLIDE 23 - RPL ============ */
.rpl-def-box {
  background: linear-gradient(135deg, #E6F4EA, #B8E6C8);
  border: 2px solid var(--green);
  border-radius: 12px;
  padding: 14px 16px;
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.rpl-icon { font-size: 28px; flex-shrink: 0; }
.rpl-text { font-size: 13px; line-height: 1.5; color: var(--text-dark); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.rpl-process-box {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  border-radius: 12px;
  padding: 16px;
  color: white;
  flex: 1;
}

.rpl-proc-title { font-size: 14px; font-weight: 700; color: #FFD700; margin-bottom: 12px; text-align: center; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.rpl-steps { display: flex; flex-direction: column; gap: 6px; }

.rpl-step {
  display: flex;
  gap: 12px;
  align-items: center;
  background: rgba(255,255,255,0.08);
  border-radius: 8px;
  padding: 8px 12px;
}

.rs-num {
  width: 28px; height: 28px;
  background: var(--green);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 13px;
  font-weight: 700;
  flex-shrink: 0;
}

.rs-text { font-size: 13px; font-weight: 600; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; line-height: 1.4; }
.rs-text small { font-size: 11px; opacity: 0.75; font-weight: 400; }

.rs-arrow { text-align: center; font-size: 14px; color: rgba(255,255,255,0.4); }

/* ============ SLIDE 24 - BROADER BENEFITS ============ */
.broader-benefits { display: flex; flex-direction: column; gap: 14px; flex: 1; }

.bb-row { display: flex; gap: 14px; }

.bb-card {
  flex: 1;
  border-radius: 12px;
  padding: 14px;
  border: 2px solid transparent;
}

.bb-economic { background: #FFF8E1; border-color: #F9A825; }
.bb-social { background: #E6F4EA; border-color: var(--green); }
.bb-global { background: #E8F0FE; border-color: var(--blue); }

.bb-icon { font-size: 28px; margin-bottom: 6px; }
.bb-title { font-size: 14px; font-weight: 700; color: var(--text-dark); margin-bottom: 8px; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; line-height: 1.3; }
.bb-points { display: flex; flex-direction: column; gap: 4px; }
.bb-pt { font-size: 12px; color: var(--text-mid); padding: 3px 0; border-bottom: 1px solid rgba(0,0,0,0.06); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.bb-stat-row {
  display: flex;
  gap: 14px;
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  border-radius: 12px;
  padding: 14px 20px;
}

.bb-stat { flex: 1; text-align: center; color: white; }
.bs-num { font-size: 22px; font-weight: 800; color: #FFD700; }
.bs-text { font-size: 11px; opacity: 0.75; margin-top: 3px; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; line-height: 1.3; }

/* ============ SLIDE 25 - CHALLENGES ============ */
.challenges-container { display: flex; gap: 20px; flex: 1; }

.challenge-col, .solution-col { flex: 1; display: flex; flex-direction: column; gap: 8px; }

.chal-title, .sol-title {
  font-size: 15px;
  font-weight: 700;
  color: var(--text-dark);
  padding: 8px 12px;
  border-radius: 8px;
  margin-bottom: 4px;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.chal-title { background: #FCE4EC; color: #C62828; }
.sol-title { background: #E6F4EA; color: #1B5E20; }

.chal-item, .sol-item {
  border-radius: 10px;
  padding: 10px 12px;
  display: flex;
  gap: 10px;
  align-items: flex-start;
}

.chal-item { background: #FFF5F5; border: 1px solid #FFCDD2; }
.sol-item { background: #F1F8E9; border: 1px solid #C8E6C9; }

.ci-icon, .si-icon { font-size: 16px; flex-shrink: 0; margin-top: 2px; }
.ci-text, .si-text { font-size: 12px; color: var(--text-dark); line-height: 1.4; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

/* ============ SLIDE 26 - ASSESSMENT ============ */
.assessment-container { display: flex; flex-direction: column; gap: 12px; flex: 1; }

.assess-intro {
  background: linear-gradient(135deg, #E8F0FE, #C5D8FF);
  border-radius: 10px;
  padding: 12px 16px;
  font-size: 13px;
  color: var(--text-dark);
  line-height: 1.5;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.assess-grid { display: flex; gap: 14px; flex: 1; }

.assess-card {
  flex: 1;
  border-radius: 12px;
  padding: 14px;
  border: 2px solid transparent;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.theory-card { background: #E8F0FE; border-color: var(--blue); }
.practical-card { background: #E6F4EA; border-color: var(--green); }
.viva-card { background: #F3E8FF; border-color: var(--purple); }

.ac-header {
  font-size: 15px;
  font-weight: 700;
  color: var(--text-dark);
  padding-bottom: 8px;
  border-bottom: 2px solid rgba(0,0,0,0.1);
}

.ac-body { display: flex; flex-direction: column; gap: 5px; flex: 1; }

.ac-item {
  font-size: 12px;
  color: var(--text-mid);
  padding: 4px 8px;
  background: rgba(255,255,255,0.6);
  border-radius: 5px;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.ac-weight {
  font-size: 14px;
  font-weight: 700;
  color: var(--text-dark);
  text-align: center;
  padding: 6px;
  background: rgba(255,255,255,0.7);
  border-radius: 6px;
}

.assess-note {
  background: linear-gradient(135deg, #FFF0EB, #FFD5C2);
  border: 2px solid var(--orange);
  border-radius: 10px;
  padding: 10px 14px;
  font-size: 13px;
  color: var(--text-dark);
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
  line-height: 1.4;
}

/* ============ SLIDE 27 - CERTIFICATION ============ */
.cert-container { display: flex; gap: 24px; flex: 1; align-items: flex-start; }

.cert-visual { flex: 1; }

.cert-mock {
  background: white;
  border: 3px solid #C9A87C;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0,0,0,0.15);
}

.cert-header-mock {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  padding: 16px;
  text-align: center;
  color: white;
}

.cert-logo-mock { font-size: 32px; margin-bottom: 6px; }
.cert-title-mock { font-size: 14px; font-weight: 700; letter-spacing: 1px; }
.cert-sub-mock { font-size: 11px; opacity: 0.75; margin-top: 3px; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.cert-body-mock {
  padding: 16px;
  text-align: center;
  background: linear-gradient(135deg, #FFFDF5, #FFF8E1);
}

.cert-text-mock { font-size: 12px; color: var(--text-mid); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }
.cert-name-mock { font-size: 22px; font-weight: 800; color: #1A1A4E; margin: 6px 0; font-family: 'Playfair Display', serif; }
.cert-trade-mock { font-size: 15px; font-weight: 700; color: var(--orange); margin: 4px 0; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }
.cert-level-mock { font-size: 13px; color: var(--blue); font-weight: 600; margin-top: 4px; }

.cert-info { flex: 1; display: flex; flex-direction: column; gap: 10px; }
.ci-title { font-size: 15px; font-weight: 700; color: var(--text-dark); margin-bottom: 4px; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.ci-items { display: flex; flex-direction: column; gap: 8px; }

.ci-item-row {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  background: var(--bg-light);
  border-radius: 8px;
  padding: 10px 12px;
}

.cir-icon { font-size: 18px; flex-shrink: 0; }
.cir-text { font-size: 13px; color: var(--text-dark); line-height: 1.4; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

/* ============ SLIDE 28 - SKILL INDIA ============ */
.skill-india-container { display: flex; flex-direction: column; gap: 14px; flex: 1; }

.si-header-box {
  background: linear-gradient(135deg, #FF6B35, #FF9A3C);
  border-radius: 12px;
  padding: 14px 20px;
  display: flex;
  gap: 16px;
  align-items: center;
  color: white;
}

.si-logo { font-size: 40px; }
.si-title { font-size: 22px; font-weight: 800; }
.si-subtitle { font-size: 14px; opacity: 0.9; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }
.si-year { font-size: 12px; opacity: 0.75; margin-top: 2px; }

.si-schemes { flex: 1; }
.si-scheme-title { font-size: 15px; font-weight: 700; color: var(--text-dark); margin-bottom: 10px; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

.si-scheme-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }

.si-scheme-item {
  background: var(--bg-light);
  border-radius: 10px;
  padding: 14px;
  border-left: 4px solid var(--orange);
}

.ss-icon { font-size: 24px; margin-bottom: 4px; }
.ss-name { font-size: 16px; font-weight: 700; color: var(--orange); }
.ss-full { font-size: 11px; color: var(--text-light); margin: 2px 0; }
.ss-desc { font-size: 12px; color: var(--text-mid); font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

/* ============ SLIDE 29 - FUTURE ============ */
.future-container { display: flex; flex-direction: column; gap: 12px; flex: 1; }

.future-intro {
  background: linear-gradient(135deg, #1A1A4E, #0D2B4E);
  border-radius: 10px;
  padding: 12px 16px;
  font-size: 13px;
  color: white;
  line-height: 1.5;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

.future-intro em { color: rgba(255,255,255,0.7); font-style: normal; display: block; margin-top: 4px; }

.future-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  flex: 1;
}

.future-card {
  border-radius: 12px;
  padding: 14px;
  border: 2px solid transparent;
}

.fc-1 { background: #E8F0FE; border-color: var(--blue); }
.fc-2 { background: #E6F4EA; border-color: var(--green); }
.fc-3 { background: #F3E8FF; border-color: var(--purple); }
.fc-4 { background: #FFF0EB; border-color: var(--orange); }
.fc-5 { background: #F1F8E9; border-color: #8BC34A; }
.fc-6 { background: #FCE4EC; border-color: #E91E63; }

.fc-icon { font-size: 26px; margin-bottom: 6px; }
.fc-title { font-size: 13px; font-weight: 700; color: var(--text-dark); margin-bottom: 4px; }
.fc-desc { font-size: 12px; color: var(--text-mid); line-height: 1.4; font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif; }

/* ============ SLIDE 30 - THANK YOU ============ */
.slide-30 {
  background: linear-gradient(135deg, #0D0D2B 0%, #1A1A4E 40%, #0D2B4E 100%);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
}

.ty-bg {
  position: absolute;
  top: 0; left: 0; width: 100%; height: 100%;
  overflow: hidden;
}

.ty-circle {
  position: absolute;
  border-radius: 50%;
  opacity: 0.07;
}

.tc1 { width: 400px; height: 400px; background: var(--orange); top: -150px; right: -100px; animation: pulse 4s ease-in-out infinite; }
.tc2 { width: 300px; height: 300px; background: var(--blue); bottom: -100px; left: -80px; animation: pulse 4s ease-in-out infinite 1s; }
.tc3 { width: 200px; height: 200px; background: var(--green); top: 50%; left: 20%; animation: pulse 4s ease-in-out infinite 2s; }
.tc4 { width: 150px; height: 150px; background: var(--purple); bottom: 20%; right: 20%; animation: pulse 4s ease-in-out infinite 3s; }

@keyframes pulse {
  0%, 100% { transform: scale(1); opacity: 0.07; }
  50% { transform: scale(1.1); opacity: 0.12; }
}

.ty-content {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 30px 60px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.ty-main { text-align: center; }

.ty-hindi {
  font-family: 'Noto Sans Devanagari', sans-serif;
  font-size: 72px;
  font-weight: 800;
  color: #FFD700;
  line-height: 1;
  text-shadow: 0 4px 20px rgba(255,215,0,0.3);
  animation: fadeInUp 0.8s ease;
}

.ty-eng {
  font-size: 36px;
  font-weight: 900;
  color: white;
  letter-spacing: 8px;
  margin-top: 4px;
  animation: fadeInUp 0.8s ease 0.2s both;
}

.ty-divider {
  width: 200px;
  height: 3px;
  background: linear-gradient(90deg, transparent, var(--orange), var(--blue), transparent);
  margin: 12px auto;
  animation: fadeInUp 0.8s ease 0.4s both;
}

.ty-subtitle {
  font-family: 'Noto Sans Devanagari', sans-serif;
  font-size: 16px;
  color: rgba(255,255,255,0.8);
  animation: fadeInUp 0.8s ease 0.6s both;
}

.ty-subtitle-eng {
  font-size: 13px;
  color: rgba(255,255,255,0.55);
  margin-top: 3px;
  animation: fadeInUp 0.8s ease 0.7s both;
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

.ty-info-box {
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 14px;
  padding: 14px 30px;
  width: 90%;
  backdrop-filter: blur(10px);
  animation: fadeInUp 0.8s ease 0.8s both;
}

.ty-info-row {
  display: flex;
  gap: 30px;
  justify-content: center;
}

.ty-info-item { text-align: center; }
.tyi-label { font-size: 10px; font-weight: 700; letter-spacing: 2px; color: var(--orange); text-transform: uppercase; }
.tyi-value { font-size: 15px; font-weight: 700; color: white; margin-top: 2px; }

.ty-topic-reminder {
  background: rgba(255,107,53,0.15);
  border: 1px solid rgba(255,107,53,0.3);
  border-radius: 10px;
  padding: 10px 20px;
  text-align: center;
  width: 90%;
  animation: fadeInUp 0.8s ease 1s both;
}

.ttr-title { font-size: 10px; font-weight: 700; letter-spacing: 2px; color: var(--orange); text-transform: uppercase; margin-bottom: 4px; }
.ttr-text { font-family: 'Noto Sans Devanagari', sans-serif; font-size: 13px; color: rgba(255,255,255,0.85); line-height: 1.4; }
.ttr-eng { font-size: 12px; color: rgba(255,255,255,0.55); margin-top: 3px; }

.ty-footer {
  animation: fadeInUp 0.8s ease 1.2s both;
}

.tyf-text {
  font-size: 14px;
  font-weight: 600;
  color: rgba(255,255,255,0.6);
  letter-spacing: 1px;
  font-family: 'Noto Sans Devanagari', 'Poppins', sans-serif;
}

/* ============ KEYBOARD HINT ============ */
.keyboard-hint {
  position: fixed;
  bottom: 60px;
  right: 20px;
  background: rgba(255,255,255,0.1);
  color: rgba(255,255,255,0.5);
  padding: 6px 12px;
  border-radius: 8px;
  font-size: 11px;
  z-index: 1000;
}

/* ============ RESPONSIVE ============ */
@media (max-width: 1300px) {
  .presentation { width: 100vw; height: 56.25vw; }
}