/*-- scss:defaults --*/
$font-size-root: 17px;      // remote students on laptops; larger than Quarto default
$code-block-font-size: 0.92em;
$body-color: #000000;
$link-color: #18453B;

/*-- scss:rules --*/

body { line-height: 1.6; }
a:hover { color: #008208; }
h1, h2, h3 { color: #18453B; }
h2 {
  border-top: 3px solid #7BBD00;
  padding-top: .7em;
  margin-top: 2.2em;
}
.callout.callout-style-default.callout-tip {
  border-left: 6px solid #008934;
}
thead { border-bottom-color: #18453B; }
tbody tr:nth-child(odd) { background: rgba(24,69,59,0.045); }

/* ---- Timing annotation: right-floated clock badge on a heading ---- */
.tm {
  float: right;
  font-family: var(--bs-font-monospace, monospace);
  font-size: 0.62em;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: #18453B;
  background: rgba(123,189,0,0.14);
  border: 1px solid #7BBD00;
  border-radius: 999px;
  padding: 0.15em 0.7em;
  margin-top: 0.55em;
  white-space: nowrap;
}

/* ---- Runtime badge: inline, so nobody thinks a 3-minute fit has hung ---- */
.rt {
  display: inline-block;
  font-family: var(--bs-font-monospace, monospace);
  font-size: 0.78em;
  font-weight: 600;
  border-radius: 4px;
  padding: 0.08em 0.5em;
  margin-left: 0.35em;
  border: 1px solid transparent;
}
.rt-live   { background: rgba(123,189,0,0.16); color: #18453B; border-color: #7BBD00; }
.rt-slow   { background: rgba(11,154,109,0.14); color: #18453B; border-color: #0B9A6D; }
.rt-precmp { background: rgba(24,69,59,0.10); color: #18453B; border-color: #18453B; }

/* ---- Break banner ---- */
.brk {
  margin: 2.2rem 0;
  padding: 0.85rem 1.1rem;
  border-left: 5px solid #18453B;
  background: rgba(24,69,59,0.07);
  border-radius: 0 6px 6px 0;
  font-weight: 600;
}
.brk .sub { display: block; font-weight: 400; font-size: 0.9em; color: #18453B; margin-top: 0.2rem; }

/* ---- Keep figures small: 70% of the room is on a laptop beside a Zoom window ---- */
.cell-output-display img { max-width: 100%; height: auto; }

/* ---- Dark mode: badges must not go invisible ---- */
@media (prefers-color-scheme: dark) {
  h2 { border-top-color: #7BBD00; }
  .tm  { background: #18453B; color: #FFFFFF; border-color: #7BBD00; }
  .brk { background: #18453B; color: #FFFFFF; }
  .brk .sub { color: #FFFFFF; }
  .rt-live   { background: #18453B; color: #FFFFFF; border-color: #7BBD00; }
  .rt-slow   { background: #18453B; color: #FFFFFF; border-color: #0B9A6D; }
  .rt-precmp { background: #18453B; color: #FFFFFF; border-color: #008934; }
}
