/* -------------------------------------------------------
   Base theme from xaringanthemer
   ------------------------------------------------------- */
@import url(https://fonts.googleapis.com/css?family=Ubuntu:300,500i,500&display=swap);
@import url(https://fonts.googleapis.com/css?family=Josefin+Sans&display=swap);
@import url(https://fonts.googleapis.com/css?family=Fira+Mono&display=swap);

:root {
  /* Fonts */
  --text-font-family: Ubuntu;
  --text-font-family-fallback: -apple-system, BlinkMacSystemFont, avenir next, avenir, helvetica neue, helvetica, Ubuntu, roboto, noto, segoe ui, arial;
  --header-font-family: 'Josefin Sans';
  --header-font-family-fallback: Georgia, serif;
  --code-font-family: 'Fira Mono';
  --base-font-size: 20px;

  /* Colors */
  --text-color: #272822;
  --header-color: #0B6884;
  --background-color: #faf5f6;
  --link-color: #0B6884;
  --text-bold-color: #0B6884;
  --code-highlight-color: rgba(255,255,0,0.5);
  --inverse-text-color: #faf5f6;
  --inverse-background-color: #0B6884;
  --inverse-header-color: #faf5f6;
  --inverse-link-color: #faf5f6;
  --title-slide-background-color: #0B6884;
  --title-slide-text-color: #faf5f6;
  --header-background-color: #0B6884;
  --header-background-text-color: #faf5f6;
  --base: #0B6884;
  --white: #faf5f6;
  --black: #272822;
}

html {
  font-size: var(--base-font-size);
}

body {
  font-family: var(--text-font-family), var(--text-font-family-fallback), sans-serif;
  font-weight: 350;
  color: var(--text-color);
}

h1, h2, h3 {
  font-family: var(--header-font-family), var(--header-font-family-fallback);
  font-weight: 450;
  color: var(--header-color);
}


.remark-slide-content h1,
.remark-slide-content h2,
.remark-slide-content h3 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
  padding: 0; /* if any padding is set */
}

/* Slide content base */
.remark-slide-content {
  background-color: var(--background-color);
  font-size: 1.15rem; /* slightly bigger for readability */
  line-height: 1.35;
  padding: 14px 60px;
  width: 100%;
  height: 100%; 
}

/* Reveal.js-like centered headings */
.remark-slide-content h1, 
.remark-slide-content h2 {
  text-align: center;
  font-weight: 520;
  font-size: 1.75em;
}

/* Title slide */
.title-slide, .title-slide h1, .title-slide h2, .title-slide h3 {
  color: var(--title-slide-text-color);
}
.title-slide {
  background-color: var(--title-slide-background-color);
}
.title-slide .remark-slide-number {
  display: none;
}

.inverse {
  background-color: #0B6884;
  text-color: #d6d6d6;
   --header-color:  #d6d6d6;
  --background-color: #faf5f6;
  --text-bold-color:  #d6d6d6;
  --inverse-text-color: #faf5f6;
  --inverse-header-color: #faf5f6;
  --inverse-link-color: #faf5f6;
  --title-slide-text-color: #faf5f6;
  --header-background-text-color: #faf5f6;
}

/* Code */
.remark-code, .remark-inline-code {
  font-family: var(--code-font-family), Menlo, Consolas, Monaco, Liberation Mono, Lucida Console, monospace;
}
.remark-code {
  font-size: 0.9rem;
}
.remark-inline-code {
  color: #0B6884;
}

/* Incremental bullet transitions */
.remark-slide-content li {
  transition: opacity 0.3s ease-in;
}

/* Slide number style */
.remark-slide-number {
  color: #0B6884;
  opacity: 1;
  font-size: 0.9rem;
}


/* Blockquote style */
blockquote {
  border-left: solid 5px #0B688480;
  padding-left: 1em;
}

/* Tables */
.remark-slide table {
  margin: auto;
  border-top: 1px solid #666;
  border-bottom: 1px solid #666;
}
.remark-slide table thead th {
  border-bottom: 1px solid #ddd;
}
th, td {
  padding: 5px;
}
.remark-slide table:not(.table-unshaded) thead,
.remark-slide table:not(.table-unshaded) tfoot,
.remark-slide table:not(.table-unshaded) tr:nth-child(even) {
  background: #CEE0E6;
}

/* Subtle reveal.js-like shadow */
.remark-slide-scaler {
  box-shadow: 0 0 20px rgba(0,0,0,0.15);
}

/*link style */
a, a:visited, a:hover, a:active{
  color: var(--link-color);
  font-weight: normal;
  text-decoration: underline; /* optional, if you want no underline */
}

.inverse a, .inverse a:visited {
  color: var(--inverse-link-color);
  font-weight: normal !important;
  text-decoration: underline !important;
}

/* ------------------------------
   Student Handout / Print Styles
   ------------------------------ */
@media print {
  .remark-slide-scaler {
    width: 100% !important;
    height: 100% !important;
    transform: scale(1) !important;
    top: 0 !important;
    left: 0 !important;
  }

  /* Add note space for handwriting */
  .remark-slide-content {
    padding-bottom: 150px;
    border-bottom: 1px dashed #ccc;
  }

  /* Optional: hide answers for student version */
  .answer {
    color: transparent;
    border-bottom: 1px solid #555;
  }
  .answer::after {
    content: "__________";
    color: #555;
  }
}

#slide-menu a:hover,
#slide-menu a.active {
  background: var(--header-background-color);
  color: var(--header-background-text-color);
}

/* Hide menu and toggle button on print */
@media print {
  #slide-menu, #slide-menu-toggle {
    display: none !important;
  }
}

@media print {
  /* Show all fragments at once when printing */
  .remark-slide .fragment {
    opacity: 1 !important;
    visibility: visible !important;
    position: static !important;
    transform: none !important;
  }

  /* Optional: prevent slide scaling for better page fit */
  .remark-slide-scaler {
    transform: none !important;
  }
}
