/* Bustan Energy Academy — Island fieldcraft.
   Opt in with <html class="bustan-academy">; load after page-local styles.
   academy.css is also used by the blog and stays unchanged. */
@import url('https://fonts.googleapis.com/css2?family=Heebo:wght@400;500;600;700;800&family=Sarabun:wght@400;500;600;700&display=swap');

html.bustan-academy {
  --grove: #24463e;
  --paper: #f4ead8;
  --shell: #fff4e2;
  --ink: #27342f;
  --sun: #f2b84b;
  --lagoon: #006f6b;
  --bg: var(--paper);
  --bg-alt: #eee3cf;
  --surface: var(--shell);
  --surface-2: #f7eedf;
  --text: var(--ink);
  --text-2: #4c6055;
  --text-3: #596b5d;
  --hair: rgba(36,70,62,.16);
  --hair-2: rgba(36,70,62,.3);
  --accent: var(--lagoon);
  --accent-ink: var(--shell);
  --navy: var(--paper);
  --navy-light: var(--shell);
  --navy-lighter: #eee3cf;
  --navy-card: var(--shell);
  --green: var(--lagoon);
  --green-dim: #005c58;
  --green-glow: #d8ece8;
  --gold: #8b5d13;
  --gold-dim: #805314;
  --gold-glow: rgba(242,184,75,.18);
  --text-primary: var(--ink);
  --text-secondary: var(--text-2);
  --text-dim: var(--text-3);
  --glass-bg: var(--shell);
  --glass-border: var(--hair);
  --glass-border-hover: var(--hair-2);
  --nav-h: 74px;
  --radius: 8px;
  --radius-s: 6px;
  --radius-sm: 6px;
  --radius-xs: 4px;
  --font: 'Heebo', 'Sarabun', Arial, sans-serif;
  --font-he: 'Heebo', Arial, sans-serif;
  --font-th: 'Sarabun', Arial, sans-serif;
  color-scheme: light;
  background: var(--paper);
}
.bustan-academy body { background: var(--paper); color: var(--ink); font-family: var(--font); line-height: 1.65; }
.bustan-academy ::selection { background: #f2b84b; color: #27342f; }
.bustan-academy :focus-visible { outline: 3px solid var(--lagoon); outline-offset: 4px; }
.bustan-academy .nav { background: rgba(36,70,62,.98); border-bottom: 2px solid var(--sun); }
.bustan-academy .nav-inner { width: min(1240px, 100% - 44px); gap: 22px; }
.bustan-academy .nav-logo img { width: 132px; height: auto; display: block; object-fit: contain; border-radius: 0; }
.bustan-academy .nav-links { gap: 22px; }
.bustan-academy .nav-links a { color: #e3eadb; font-size: 13px; }
.bustan-academy .nav-links a:hover,
.bustan-academy .nav-links a[aria-current="page"] { color: var(--sun); }
.bustan-academy .nav-lang button { color: #e3eadb; border-radius: 3px; }
.bustan-academy .nav-lang button[aria-pressed="true"] { color: var(--grove); background: var(--sun); font-weight: 700; }
.bustan-academy .nav-lang button:hover { color: var(--sun); }
.bustan-academy .nav-lang button[aria-pressed="true"]:hover { color: var(--grove); }
.bustan-academy .nav-menu { color: var(--shell); }
.bustan-academy .nav :focus-visible { outline-color: var(--sun); }
.bustan-academy .header { background: var(--grove); }
.bustan-academy .header-logo img { display: block; width: 132px; height: auto; }
.bustan-academy .header-logo span::before { content: none; }

/* A warm field-photo cover for the Academy home. */
.bustan-academy .hero {
  --text: var(--shell);
  --text-2: #e1e8d8;
  --text-3: #d2decc;
  color: var(--shell);
  background: var(--grove);
}
.bustan-academy .hero-media img { opacity: .56; }
.bustan-academy .hero-media::after { background: linear-gradient(90deg,rgba(36,70,62,.96),rgba(36,70,62,.7) 58%,rgba(36,70,62,.34)); }
.bustan-academy[lang="he"] .hero-media::after { background: linear-gradient(270deg,rgba(36,70,62,.96),rgba(36,70,62,.7) 58%,rgba(36,70,62,.34)); }
.bustan-academy .hero .eyebrow { color: var(--sun); }
.bustan-academy .hero .display { max-width: 17ch; font-weight: 700; line-height: 1.08; }
.bustan-academy .hero .lead { color: #e1e8d8; line-height: 1.6; }
.bustan-academy .hero .btn { border-color: rgba(255,244,226,.5); color: var(--shell); }
.bustan-academy .hero .btn-primary { background: var(--sun); border-color: var(--sun); color: var(--grove); }
.bustan-academy .hero .btn:hover { background: rgba(255,244,226,.12); }
.bustan-academy .hero .btn-primary:hover { background: #f8ca70; color: var(--grove); }
.bustan-academy .hero .overall { color: #e1e8d8; }
.bustan-academy .hero .overall .bar { height: 5px; background: rgba(255,244,226,.25); }
.bustan-academy .hero .overall .bar i { background: var(--sun); }
.bustan-academy .hero :focus-visible { outline-color: var(--sun); }
.bustan-academy .btn,
.bustan-academy .path a,
.bustan-academy .difficulty-badge { border-radius: 4px; }
.bustan-academy .btn-primary { background: var(--grove); border-color: var(--grove); color: var(--shell); }
.bustan-academy .btn-primary:hover { background: #335b4e; border-color: #335b4e; }
.bustan-academy .btn:hover { box-shadow: none; transform: none; }
.bustan-academy .track-row { background: var(--shell); border-color: var(--hair); }
.bustan-academy .track-row .track-card { background: #e4e6d5; }
.bustan-academy .track-title { color: var(--grove); }
.bustan-academy .track-num,
.bustan-academy .lesson-row .n { border-radius: 3px; }
.bustan-academy .lesson-row { border-radius: 3px; }
.bustan-academy .lesson-row:hover { background: #e7ede0; }
.bustan-academy .lesson-row.done .n { background: var(--grove); border-color: var(--grove); color: var(--shell); }
.bustan-academy .progress-bar-bg { background: rgba(36,70,62,.15); height: 5px; }
.bustan-academy .progress-bar-fill { background: var(--lagoon); }
.bustan-academy .cert { background: var(--shell); border-inline-start: 4px solid var(--sun); }

/* The course HTML uses lesson-section; keep the legacy alias supported. */
.bustan-academy .lesson-container { max-width: 920px; padding-bottom: 96px; }
.bustan-academy .site-nav-fixed .lesson-container { padding-top: calc(var(--nav-h) + 38px); }
.bustan-academy .breadcrumb { color: var(--text-2); gap: 8px; margin-bottom: 34px; }
.bustan-academy .breadcrumb a { color: var(--lagoon); text-decoration: underline; text-underline-offset: 3px; }
.bustan-academy .lesson-header { padding: 30px 0 32px; margin-bottom: 40px; border-top: 3px solid var(--sun); border-bottom: 1px solid var(--hair-2); }
.bustan-academy .lesson-number { color: var(--lagoon); letter-spacing: .06em; font-size: 12px; }
.bustan-academy .lesson-title { color: var(--grove); font-weight: 700; font-size: clamp(32px,4.8vw,50px); line-height: 1.15; max-width: 25ch; }
.bustan-academy :is(.lesson-section,.content-section) { margin-bottom: 50px; }
.bustan-academy :is(.lesson-section,.content-section) h2 { color: var(--grove); font-size: clamp(24px,3.2vw,31px); line-height: 1.3; margin: 0 0 18px; font-weight: 700; }
.bustan-academy :is(.lesson-section,.content-section) h3 { color: var(--grove); font-size: 21px; line-height: 1.4; margin: 28px 0 12px; }
.bustan-academy :is(.lesson-section,.content-section) h4 { color: var(--grove); line-height: 1.45; }
.bustan-academy :is(.lesson-section,.content-section) p { color: var(--text-2); font-size: 17px; line-height: 1.85; margin: 0 0 18px; }
.bustan-academy :is(.lesson-section,.content-section) :is(ul,ol) { color: var(--text-2); padding-inline-start: 26px; line-height: 1.8; margin: 0 0 22px; }
.bustan-academy :is(.lesson-section,.content-section) li { margin-bottom: 8px; }
.bustan-academy :is(.lesson-section,.content-section) strong { color: var(--ink); font-weight: 700; }
.bustan-academy :is(.lesson-section,.content-section) a { color: var(--lagoon); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.bustan-academy .key-term { background: #d8ece8; border-color: rgba(0,111,107,.2); border-inline-start: 3px solid var(--lagoon); }
.bustan-academy .key-term p { margin: 0; }
.bustan-academy .did-you-know { background: #f7e5be; border-color: rgba(139,93,19,.2); }
.bustan-academy .lesson-container img { display: block; max-width: 100%; height: auto; margin-inline: auto; }
.bustan-academy .lesson-image { border-radius: 6px; box-shadow: none; border: 1px solid var(--hair); }
.bustan-academy .lesson-container .video-section { padding: 22px; background: var(--shell); border: 1px solid var(--hair); border-radius: 6px; }
.bustan-academy .lesson-container .video-section h3 { color: var(--grove); }
.bustan-academy .lesson-container .video-caption { color: var(--text-2); line-height: 1.7; }
.bustan-academy .lesson-container :is(table,.spec-table,.risk-matrix) { border-collapse: collapse; width: 100%; max-width: 100%; margin: 24px 0; font-size: 14px; background: var(--shell); }
.bustan-academy .lesson-container :is(th,td) { padding: 12px 14px; border: 1px solid var(--hair); text-align: start; vertical-align: top; overflow-wrap: anywhere; }
.bustan-academy .lesson-container th { background: #dce3d3; color: var(--grove); font-weight: 700; line-height: 1.5; }
.bustan-academy .lesson-container td { color: var(--text-2); line-height: 1.7; }
.bustan-academy .lesson-container tr:hover td { background: rgba(36,70,62,.045); }
.bustan-academy .lesson-container :is(.risk-low,.risk-med,.risk-high,.risk-extreme) { font-weight: 600; }
.bustan-academy .lesson-container .risk-low { color: #006f6b; }
.bustan-academy .lesson-container .risk-med { color: #8b5d13; }
.bustan-academy .lesson-container :is(.risk-high,.risk-extreme) { color: #982c35; }
.bustan-academy :is(.highlight-box,.warning-box,.case-study-box) { border-left: 0; border-inline-start: 4px solid var(--lagoon); border-radius: 4px; }
.bustan-academy .warning-box { border-inline-start-color: #b94436; }
.bustan-academy :is(.calc-steps,.jsa-steps) { padding: 0 !important; }
.bustan-academy :is(.calc-steps,.jsa-steps) li { padding: 12px 16px; padding-inline-start: 48px; border-left: 0; border-inline-start: 3px solid rgba(0,111,107,.3); }
.bustan-academy :is(.calc-steps,.jsa-steps) li::before { left: auto; inset-inline-start: 12px; }
.bustan-academy :is(.compare-item,.model-card,.metric-card,.schedule-card,.agency-card,.safety-card,.ppe-item,.roadmap-step,.lifecycle-step,.kpi-item,.faq-item) { background: var(--shell); border-color: var(--hair); border-radius: 6px; }

/* Native quiz buttons, feedback and completion requirements. */
.bustan-academy .quiz-section { background: var(--shell); padding: 32px; border-top: 4px solid var(--sun); }
.bustan-academy .quiz-title { color: var(--grove); font-size: 26px; }
.bustan-academy button.quiz-option { width: 100%; text-align: start; font-family: inherit; line-height: 1.7; color: var(--ink); background: var(--paper); border: 1px solid var(--hair-2); border-radius: 4px; }
.bustan-academy button.quiz-option:hover:not(:disabled) { background: #e1e8d8; border-color: var(--grove); }
.bustan-academy button.quiz-option:disabled { cursor: default; opacity: 1; }
.bustan-academy button.quiz-option.correct { background: #d8ece8; border: 2px solid #006f6b; color: #005653; }
.bustan-academy button.quiz-option.incorrect { background: #f7dfd5; border: 2px solid #b94436; color: #982c35; }
.bustan-academy .quiz-option .marker { color: var(--grove); border-color: var(--hair-2); }
.bustan-academy .quiz-option.correct .marker { background: #006f6b; color: var(--shell); }
.bustan-academy .quiz-option.incorrect .marker { background: #b94436; color: var(--shell); }
.bustan-academy .quiz-answer-feedback { color: var(--text-2); font-size: 14px; line-height: 1.65; margin: 12px 0; }
.bustan-academy .quiz-result.pass { color: #005653; background: #d8ece8; }
.bustan-academy .quiz-result.fail { color: #982c35; background: #f7dfd5; }
.bustan-academy .quiz-result-message { margin-bottom: 16px; }
.bustan-academy .quiz-retry-btn { display: inline-flex; align-items: center; justify-content: center; padding: 10px 22px; font: 600 15px/1.4 var(--font); background: var(--grove); color: var(--shell); border-radius: 4px; border: 1px solid var(--grove); }
.bustan-academy .complete-btn { background: var(--grove); color: var(--shell); border-radius: 4px; height: auto; min-height: 50px; padding: 14px 22px; }
.bustan-academy .complete-btn:hover:not(:disabled) { background: #335b4e; }
.bustan-academy .complete-btn:disabled { background: #e0dfcf; color: #59675b; border: 1px solid rgba(36,70,62,.24); cursor: not-allowed; }
.bustan-academy .complete-btn.completed { color: #005653; background: #d8ece8; border: 1px solid #006f6b; }
.bustan-academy .lesson-nav a { border-radius: 4px; color: var(--grove); height: auto; min-height: 44px; padding-block: 10px; }
.bustan-academy .lesson-nav a:hover { background: #dce3d3; border-color: var(--grove); }
.bustan-academy .footer { text-align: start; background: var(--grove); color: #e1e8d8; border-top: 2px solid var(--sun); }
.bustan-academy .footer h4 { color: var(--sun); }
.bustan-academy .footer a { color: #e1e8d8; }
.bustan-academy .footer a:hover { color: var(--shell); }
.bustan-academy .footer-cols { border-bottom-color: rgba(255,244,226,.22); }
.bustan-academy .footer :focus-visible { outline-color: var(--sun); }
.bustan-academy .academy-retired { width: min(620px,calc(100% - 36px)); margin: 10vh auto; padding: clamp(24px,5vw,48px); background: var(--shell); border: 1px solid var(--hair); border-top: 4px solid var(--sun); border-radius: 6px; }
.bustan-academy .academy-retired img { display: block; width: 240px; max-width: 100%; height: auto; margin-bottom: 26px; }
.bustan-academy .academy-retired .retired-kicker { font-size: 12px; letter-spacing: .1em; font-weight: 700; color: var(--lagoon); margin-bottom: 14px; }
.bustan-academy .academy-retired h1 { color: var(--grove); font-size: clamp(28px,5vw,40px); line-height: 1.2; margin: 0 0 20px; }
.bustan-academy .academy-retired p { color: var(--text-2); line-height: 1.75; margin: 0 0 18px; }
.bustan-academy .academy-retired a { display: inline-block; background: var(--grove); color: var(--shell); text-decoration: none; border-radius: 4px; padding: 12px 20px; margin-top: 10px; }

@media (max-width: 960px) {
  .bustan-academy .nav-inner { gap: 16px; }
  .bustan-academy .nav-links { gap: 14px; }
  .bustan-academy .nav-links a { font-size: 12px; }
}
@media (max-width: 734px) {
  html.bustan-academy { --nav-h: 64px; }
  .bustan-academy .nav-inner { width: calc(100% - 24px); gap: 8px; }
  .bustan-academy .nav-logo img { width: 112px; }
  .bustan-academy .nav-lang { margin-inline-start: auto; }
  .bustan-academy .nav-menu { margin-inline-start: 4px; }
  .bustan-academy .nav-links { background: #24463e; }
  .bustan-academy .nav-links a { font-size: 16px; border-bottom-color: rgba(255,244,226,.18); }
  .bustan-academy .hero .display { font-size: clamp(34px,8vw,48px); max-width: 18ch; }
  .bustan-academy .hero-compact .hero-body { padding: 116px 0 48px; }
  .bustan-academy .hero-media::after { background: rgba(36,70,62,.76); }
  .bustan-academy .lesson-container { padding-inline: 18px; }
  .bustan-academy .lesson-header { padding-top: 24px; margin-bottom: 30px; }
  .bustan-academy .lesson-meta { font-size: 13px; gap: 10px; }
  .bustan-academy :is(.lesson-section,.content-section) p { font-size: 16px; }
  .bustan-academy .lesson-container :is(table,.spec-table,.risk-matrix) { display: block; overflow-x: auto; width: 100%; font-size: 12px; }
  .bustan-academy .lesson-container :is(th,td) { min-width: 92px; padding: 9px 10px; }
  .bustan-academy .quiz-section { padding: 22px 16px; }
  .bustan-academy .quiz-question p { font-size: 16px; }
  .bustan-academy .quiz-option { font-size: 14px; }
  .bustan-academy .lesson-container .video-section { padding: 16px; }
}
@media print {
  .bustan-academy body { background: #fff; color: #27342f; }
  .bustan-academy :is(.nav,.header,.footer,.quiz-section,.complete-btn,.lesson-nav,.video-section) { display: none !important; }
  .bustan-academy .site-nav-fixed .lesson-container { padding: 0; max-width: none; }
  .bustan-academy :is(.fade-up,.reveal) { opacity: 1 !important; transform: none !important; }
  .bustan-academy .lesson-header { border-top: 0; }
  .bustan-academy :is(.key-term,.did-you-know,.lesson-image,tr) { break-inside: avoid; }
  .bustan-academy .lesson-container :is(table,.spec-table,.risk-matrix) { display: table; overflow: visible; font-size: 10pt; }
  .bustan-academy :is(.lesson-section,.content-section) :is(p,li) { font-size: 11pt; line-height: 1.5; }
}
