/* Report edition — the language of the Chatbot Generator sheet.

   A navy full-bleed header carrying the lockup, a tracked amber eyebrow and a
   white condensed title; a multi-colour rule under it; then a white body of
   numbered sections, each announced by a tiny caps label above a large black
   heading. Cards are pale tints of the secondary palette, each with its own
   accent rule. Statistics are set large in colour.

   Unlike the source sheet, this edition holds the 21px floor. The Chatbot
   Generator sets body text at 15–17px; that is below the size Nazirul ruled
   for the series, so the same look is carried at legible sizes and the sheets
   hold a little less. */

.sheet{
  padding:0;
  background:#fff;
  color:#111;
  font-family:var(--font-sans);
}

/* ── Full-bleed header ─────────────────────────────────────────────────── */
.hdr{
  flex:none;
  padding:96px 110px 70px;
  background:linear-gradient(105deg,#0E2A78 0%,var(--mu-navy) 46%,#1B3FA8 78%,#123089 100%);
  color:#fff;
}
/* The one-line Monash University Malaysia lockup, 12.9:1. At 92px its shield
   matches the 94px the two-line lockup gave, so the swap keeps the header's
   weight and adds the Malaysia wordmark. */
.hdr .lock{height:92px;width:auto;display:block;margin-bottom:56px}
.hdr .kicker{font-family:var(--font-display);font-weight:700;font-size:23px;
             letter-spacing:.18em;text-transform:uppercase;color:var(--mu-yellow)}
.hdr h1{margin:18px 0 0;font-family:var(--font-display);font-weight:900;
        font-size:132px;line-height:.94;letter-spacing:-.015em;text-transform:uppercase;color:#fff}
.hdr .spec{margin:20px 0 0;font-family:var(--font-display);font-weight:700;font-size:30px;
           letter-spacing:.04em;text-transform:uppercase;color:var(--mu-yellow)}
.hdr .lede{margin:26px 0 0;font-size:24px;line-height:1.42;color:#D6E0F7;max-width:1500px}
.hdr .lede b{color:#fff;font-weight:700}

/* The segmented rule that closes the header. */
.band{flex:none;height:12px;display:flex}
.band i{flex:1}

/* ── Body ──────────────────────────────────────────────────────────────── */
.body{padding:0 110px 0;display:flex;flex-direction:column}

.sec{flex:none;margin-top:46px}
.sec .lbl{font-family:var(--font-display);font-weight:700;font-size:22px;
          letter-spacing:.2em;text-transform:uppercase;color:var(--mu-grey-40)}
.sec h2{margin:8px 0 0;font-family:var(--font-display);font-weight:900;font-size:54px;
        line-height:1.02;letter-spacing:-.012em;text-transform:uppercase;color:#111}
.sec .sub{margin:12px 0 0;font-size:23px;line-height:1.4;color:var(--mu-grey-70);max-width:1560px}

/* Pale tinted card with an accent rule on top. */
.cards{display:flex;gap:26px;margin-top:26px}
.card2{flex:1;min-width:0;border-top:7px solid var(--c,var(--mu-blue));
       background:var(--bg,#EDF4FA);padding:18px 22px 20px}
.card2 .t{font-family:var(--font-display);font-weight:700;font-size:23px;letter-spacing:.1em;
          text-transform:uppercase;color:var(--c,var(--mu-blue))}
.card2 p{margin:11px 0 0;font-size:21px;line-height:1.34;color:#2A2A2A}

/* Numbered step, colour carried by the numeral. */
.steps{display:flex;gap:30px;margin-top:26px}
.step{flex:1;min-width:0;border-top:3px solid var(--mu-grey-10);padding-top:16px}
.step .n{font-family:var(--font-display);font-weight:900;font-size:52px;line-height:1;
         color:var(--c,var(--mu-blue))}
.step .t{font-family:var(--font-display);font-weight:700;font-size:25px;margin-top:10px;color:#111}
.step p{margin:8px 0 0;font-size:21px;line-height:1.32;color:var(--mu-grey-70)}

/* Figures, set large and in colour. */
.figs{display:flex;gap:44px;margin-top:30px}
.fig2{flex:1;min-width:0}
.fig2 .v{font-family:var(--font-display);font-weight:900;font-size:78px;line-height:.92;
         letter-spacing:-.02em;color:var(--c,var(--mu-blue))}
.fig2 .l{font-family:var(--font-display);font-weight:700;font-size:23px;margin-top:10px;color:#111}
.fig2 p{margin:6px 0 0;font-size:21px;line-height:1.3;color:var(--mu-grey-70)}

/* Dark inset band, for the one section that inverts. */
.inset{flex:none;margin:46px -110px 0;padding:48px 110px 52px;background:var(--mu-navy);color:#fff}
.inset .lbl{color:#9FB6E8}
.inset h2{color:#fff}
.inset .sub{color:#C9D6F2}

/* Rows of plates, letterboxed to a common height so a row reads as a row. */
.prow{display:flex;gap:30px;align-items:flex-start;margin-top:24px;--ih:330px}
.prow .p{flex:1;min-width:0}
.prow .p img{display:block;width:100%;height:var(--ih);object-fit:contain;object-position:center;
             border:1px solid var(--mu-grey-10);background:#fff}

/* Plates. */
.shot2{display:block;width:100%;border:1px solid var(--mu-grey-10);background:#fff}
.cap2{font-size:21px;line-height:1.32;color:var(--mu-grey-70);margin-top:11px}
.cap2 b{color:#111;font-weight:700;display:block;font-family:var(--font-display);
        font-size:23px;margin-bottom:3px}

/* Footer.

   The sheet is bookended: the same navy the header carries, run the other way
   so the gradient's light corner sits diagonally opposite the header's, and
   the same segmented rule closing it. Everything is set in caps, the name in
   the display face. */
.foot{flex:none;margin-top:auto;padding:26px 110px 30px;
      background:linear-gradient(285deg,#0E2A78 0%,var(--mu-navy) 46%,#1B3FA8 78%,#123089 100%);
      color:#fff;display:flex;align-items:flex-end;justify-content:space-between;gap:48px}

.foot .by{flex:0 0 auto;max-width:1200px}
.foot .by .nm{font-family:var(--font-display);font-weight:900;font-size:31px;
              line-height:1.02;letter-spacing:.02em;text-transform:uppercase;color:#fff}
.foot .by .cr{margin-top:6px;font-size:18px;line-height:1.3;letter-spacing:.06em;
              text-transform:uppercase;color:#9FB6E8}

.foot .who{flex:1 1 auto;min-width:0;font-size:19px;line-height:1.36;letter-spacing:.06em;
           text-transform:uppercase;color:#9FB6E8}
.foot .who b{display:block;font-family:var(--font-display);font-weight:700;font-size:22px;
             letter-spacing:.1em;color:#fff}
.foot .url{flex:0 0 auto;white-space:nowrap;font-family:var(--font-mono);font-size:19px;
           letter-spacing:.06em;text-transform:uppercase;color:var(--mu-yellow)}
