/* Updated animated underline to support multi-line links */
a.dotted {
  text-decoration: none;
  background-image: linear-gradient(currentColor, currentColor);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: 0% 1px;
  transition: background-size 0.25s ease-out;
  padding-bottom: 2px; /* Give space for the underline */
}

a.dotted:hover {
  background-size: 100% 1px;
}
.bordered-top {
  border-bottom: 0.5px solid #cccccc;
}
@media screen and (min-width: 600px) {
  .bordered-left {
	border-left: 0.5px solid #cccccc;
  }
}
@media screen and (max-width: 600px) {
  .bordered-left {
	border-top: 0.5px solid #cccccc;
  }
}
html {
  scroll-behavior: smooth;
  height: 100%; /* Ensure html takes full viewport height for sticky footer */
}
body {
  display: flex; /* Enable flexbox */
  flex-direction: column; /* Arrange items vertically */
  min-height: 100vh; /* Ensure body takes at least full viewport height */
  margin: 0; /* Remove default body margin */
  /* Keep existing background styles for body */
  background: url("http://www.alex3.net/images/king_barrow_dark.jpg") repeat-y center center fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: initial;
  line-height: 1.6; /* Retain desired line-height */
}
/* New animation for social media icons */
.social-icons a {
  margin: 0 0.5rem; /* Adds space between icons */
}
.social-icons a i {
  transition: transform 0.2s ease-in-out;
}
.social-icons a:hover i {
  transform: scale(1.2);
}
.mobile-welcome {
  padding: 9vw;
  background: url("http://www.alex3.net/images/king_barrow_dark.jpg");
  background-repeat: no-repeat;
  background-size: 100%;
}

/* Styles specific to the publications list, integrated with Bootstrap */
.publication-list-item {
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px dashed #e9ecef; /* Light dashed border for separation */
}
.publication-list-item:last-child {
  border-bottom: none;
}
.publication-title a {
  color: #0056b3; /* Bootstrap primary blue for links */
  text-decoration: none; /* Always no underline */
}
.publication-title a:hover {
  text-decoration: none; /* Explicitly remove underline on hover */
}
.error-message {
  color: var(--bs-danger); /* Use Bootstrap's danger color variable */
  font-weight: bold;
}
.info-message {
  color: var(--bs-info);
}
/* Style for the publications header to match your existing h5 headers */
.publications-header {
	display: flex;
	align-items: center;
	font-size: 1.25rem; /* Equivalent to Bootstrap's lead */
	color: white;
	background-color: #343a40; /* Bootstrap dark background */
	border: 0;
	padding: 1rem; /* Bootstrap p-3 equivalent */
	margin-bottom: 0; /* Remove default h margin */
}
.white-line {
width: 100%; /* The line spans the full width of its container */
height: 1px; /* Sets the thickness of the line */
background-color: white; /* Sets the color of the line to white */
}

/* NEW: Flexbox Sticky Footer Specific Styles */
.main-content-area {
  flex: 1; /* This div will grow to fill available space, pushing the footer down */
}
.footer-area {
  flex-shrink: 0; /* Prevent the footer from shrinking */
  /* The background color is applied directly in HTML, but this reinforces it */
  background-color: #fbfbfb;
  width: 100%; /* Ensure it spans full width */
}
