/* Georgia Tech overrides for Quarto default (Bootstrap) theme */

:root {
  --gatech-navy: #003057;
  --gatech-gold: #B3A369;
  --gatech-gold-bright: #EAAA00;
  --gatech-cream: #f9f6e5;
  --gatech-text: #1f1f1f;
  --gatech-border: #D6DBD4;
  --gatech-link: #0057B8;
  --gatech-link-hover: #C45000;
}

body {
  font-family: Arial, Helvetica, sans-serif;
  color: var(--gatech-text);
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
  color: var(--gatech-navy);
}

h2 {
  border-bottom: 3px solid var(--gatech-gold-bright);
  padding-bottom: 6px;
  margin-top: 32px;
}

h3 {
  border-left: 4px solid var(--gatech-gold);
  padding-left: 10px;
  margin-top: 20px;
}

/* Title block */
#title-block-header {
  border-top: 10px solid var(--gatech-gold-bright);
  border-bottom: 1px solid var(--gatech-border);
  padding: 24px 28px;
  background-color: var(--gatech-cream);
  margin-bottom: 24px;
}

#title-block-header .subtitle {
  font-weight: bold;
  color: var(--gatech-navy);
}

/* ── Callouts ────────────────────────────────────────────────────── */
/* Note – navy */
div.callout-note {
  border-left-color: var(--gatech-navy) !important;
}
div.callout-note > .callout-header {
  background-color: var(--gatech-navy) !important;
  color: white !important;
}

/* Tip – bright gold */
div.callout-tip {
  border-left-color: var(--gatech-gold-bright) !important;
}
div.callout-tip > .callout-header {
  background-color: var(--gatech-gold-bright) !important;
  color: var(--gatech-navy) !important;
}

/* Warning – amber */
div.callout-warning {
  border-left-color: #c45000 !important;
}
div.callout-warning > .callout-header {
  background-color: #c45000 !important;
  color: white !important;
}

/* Important – dark red */
div.callout-important {
  border-left-color: #8b0000 !important;
}
div.callout-important > .callout-header {
  background-color: #8b0000 !important;
  color: white !important;
}

/* Caution – orange */
div.callout-caution {
  border-left-color: #e67e00 !important;
}
div.callout-caution > .callout-header {
  background-color: #e67e00 !important;
  color: white !important;
}

/* Cream body for all callout types */
div.callout .callout-body-container {
  background-color: var(--gatech-cream);
}

/* White icons on dark-background headers */
div.callout-note .callout-icon::before,
div.callout-warning .callout-icon::before,
div.callout-important .callout-icon::before,
div.callout-caution .callout-icon::before {
  filter: brightness(0) invert(1);
}

/* ── Regular blockquote elements ───────────────────────────────── */
blockquote {
  border-left: 4px solid var(--gatech-gold);
  padding-left: 16px;
  margin-left: 0;
  font-style: italic;
}

/* ── Tables ─────────────────────────────────────────────────────── */
table {
  border-collapse: collapse;
  width: 100%;
  margin-top: 12px;
}

thead tr {
  background-color: var(--gatech-navy);
  color: white;
}

thead th {
  padding: 10px;
  text-align: left;
}

tbody tr {
  border-bottom: 1px solid var(--gatech-border);
}

tbody td {
  padding: 10px;
}

/* ── Navbar ──────────────────────────────────────────────────────── */
.navbar .nav-link,
.navbar .navbar-brand,
.navbar .dropdown-toggle {
  color: var(--gatech-gold-bright) !important;
}

.navbar .nav-link:hover,
.navbar .dropdown-toggle:hover {
  color: white !important;
}

.navbar .dropdown-menu .dropdown-item {
  color: var(--gatech-navy);
}

.navbar .dropdown-menu .dropdown-item:hover {
  background-color: var(--gatech-navy);
  color: white;
}

/* ── Links ───────────────────────────────────────────────────────── */
a, a:visited {
  color: var(--gatech-link);
}

a:hover {
  color: var(--gatech-link-hover);
}

/* Underline body-content links only — navbar and dropdowns keep their own styling */
main a:not(.nav-link):not(.navbar-brand):not(.dropdown-item):not(.quarto-btn-toggle) {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

/* Links on navy backgrounds (table headers) */
thead a,
thead a:visited {
  color: var(--gatech-gold-bright);
}

/* ── Lists ───────────────────────────────────────────────────────── */
ul, ol {
  line-height: 1.8;
}

li {
  margin-bottom: 8px;
}
