/* css styles */

:root {
  
  --color-background:   #e9edf2;
  --color-primary:      #0259b0;
  --color-secondary:    #610a0a;
  
}

/* Import Google Font */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');

/* Apply imported font */
h1, h2, h3, h4, h5, h6 {
  font-family: 'Roboto', Arial, Helvetica, sans-serif;
}

.about-contents p {
  margin-bottom: 1em; /* Adjust the value for more or less space */
}

/* Links */

a {
    color: var(--color-primary);
    border-bottom: 0px;
    text-decoration: none;
}

d-article a {
    color: var(--color-primary);
    border-bottom: 0px;
    text-decoration: none;
}

a:hover, a:focus {
    color: var(--color-secondary);
    font-weight: 500;
    border-color: var(--color-secondary);
}

d-article a:hover, a:focus {
    color: var(--color-secondary);
    font-weight: 500;
    border-color: var(--color-secondary);
}

/* === Inside cards/buttons — disable hover color changes but preserve base color === */
.card a:hover,
.card a:focus,
.btn a:hover,
.btn a:focus,
.button a:hover,
.button a:focus {
  color: inherit !important;
  font-weight: inherit !important;
  border-color: inherit !important;
}

blockquote {
    border: none !important;
    font-style: normal !important;
}


/* Formatting the "about" page buttons */
.about-link {
    font-size: 15px !important; /* Increase font size */
}

.about-link:hover {
  color: #e9edf2 !important; /* Text color on hover */
  background-color: #343a41; /* Background color on hover */
  border: 2px solid #343a41; /* Border color on hover */
}

/* Style for icons inside the button */
.about-link:hover i {
  color: #e9edf2; /* Inherit color from the button */
}


/* Hide AnchorJS symbols */
.anchorjs-link {
  display: none; /* Hide the anchor link symbols */
}


/* Formatting for research page */ 
.btn-xs {
    padding: 1px 5px;
    font-size: 15px;
    border-radius: 5px; /* rounded corners for buttons */
  }

.ai-lg {
  font-size: 1.2em;  /* Adjust as needed */
}

.list {
    list-style-type: none; /* Remove bullet points */
    padding: 0; /* Remove default padding */
  }
  
.note {
    display: inline; /* Prevents extra block-level spacing */
  }
  details {
    display: inline; /* Prevents extra block-level spacing */
    margin: 0; /* Removes default margin */
    padding: 0; /* Removes default padding */
  }
  summary {
    margin: 0; /* Removes default margin */
    padding: 0; /* Removes default padding */
  }
  p {
    margin: 0; /* Removes default margin */
  }
  

p + p {
  margin-top: 1em; /* Add space between consecutive paragraphs */
}

/* Prevent spacing between stacked <p> in the title-block (e.g., authors) */
div.title-block p + p {
  margin-top: 0;
}

/* Remove spacing between stacked <p> tags inside title metadata (e.g. authors) */
.quarto-title-meta-contents p + p {
  margin-top: 0 !important;
}


h5.quarto-listing-category-title {
  visibility: hidden; /* Hide the original "Categories" text */
}

#quarto-margin-sidebar h5.quarto-listing-category-title::before {
  content: "Filter by topic:";
  visibility: visible;
  display: inline-block;

  /* Match TOC styles */
  font-size: 0.9rem;
  font-weight: 500;
  margin-top: 1.25rem;
  margin-bottom: 0.1rem;
  
  font-weight: bold;
}


/* Match font size, weight, spacing with TOC nav-links */
#quarto-margin-sidebar .category {
  font-size: 0.875rem;      /* same as .nav-link */
  font-weight: 400;         /* same as .nav-link */
  color: #212529;           /* dark gray like TOC */
  cursor: pointer;
  margin-bottom: 0.1rem; /* smaller spacing */
}


/* Optional: make the count smaller and lighter */
#quarto-margin-sidebar .quarto-category-count {
  font-size: 0.75rem;
  color: #6c757d;
  margin-left: 0.25rem;
}

#quarto-margin-sidebar .category.active {
  font-weight: bold;           /* optional: make it bold */
}


div:has(> blockquote) {
  background-color: #ededed;
  margin: 5px auto;
  padding: 5px;
  border-radius: 5px;
}

blockquote p::before {
  content: '\201C';
}

blockquote p::after {
  content: '\201D';
}

blockquote + p {
  text-align: right;
}

.related-list {
  list-style-type: disc; /* solid bullet */
  padding-left: 1.7em;   /* optional indent */
  margin-top: 0.5em;     /* optional spacing */
}

.related-list li {
  margin-bottom: 0.3em;  /* optional spacing between bullets */
}

.related-list li:first-child {
  margin-top: 1em; /* Adjust this value to add more or less space */
}

.book-row {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  margin-top: 1rem;
  margin-bottom: 2rem;
  justify-content: flex-start;
}

.book-row img {
  width: clamp(120px, 15vw, 180px);
  height: auto;
  border: 1px solid #ccc;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  transition: transform 0.2s ease;
}

.book-row img:hover {
  transform: scale(1.02);
}

.book-row a {
  margin-right: 0.2rem; /* small horizontal spacing */
  margin-bottom: 0.2rem; /* small vertical spacing for wrapping rows */
  display: inline-block; /* ensure margin applies properly */
}
