/* Global Styles */
html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
  background-image: url("/img/literary_lair.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

/* Google Fonts */
.manufacturing-consent-regular {
  font-family: "Manufacturing Consent", system-ui;
  font-weight: 400;
  font-style: normal;
}

.merienda-normal {
  font-family: "Merienda", cursive;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

/* Classes */
.title {
  font-family: "Manufacturing Consent", system-ui;
  font-weight: 500;
  font-size: 6rem;
  color: #555555;
}

.subtitle {
  font-family: "Merienda", cursive;
  font-weight: 400;
  font-size: 2rem;
  color: #9e9e9e;
}

.lairBtn {
  font-family: "Merienda", system-ui;
  font-weight: 500;
  font-size: 1.5rem;
  color: #9e9e9e;
  border: #555555 solid 2px;
  padding: 10px 20px;
  border-radius: 5px;
}

.lair {
  background-image: url("/img/literary_lair.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

.cave {
  background-image: url("/img/dragons-lair-scenic-backdrop-hero-08a62f.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

.navbar {
  opacity: 50%;
}

thead {
  opacity: 35%;
}

thead th a {
  color: Black;
  font-size: .75rem;
}

tbody td {
  opacity: 75%;
}

.coverImg {
  height: 150px;
}

/* Description column size + truncation */
.table th.col-desc,
.table td.col-desc {
  width: 10rem;          /* reduce width */
  max-width: 10rem;
}
.table td.col-desc {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Star Rating Styles */
/* Reverse visual order so selection fills left-to-right */
.star-rating {
  display: inline-flex;
  flex-direction: row-reverse; /* stars 1..5 appear left->right, DOM remains 5..1 for sibling selector logic */
  font-size: 2rem;
}

.star-rating input[type="radio"] {
  display: none;
}

.star-rating label {
  color: #ddd;
  cursor: pointer;
  transition: color 0.2s;
}

/* On hover highlight current and all visually previous stars (because of row-reverse) */
.star-rating label:hover,
.star-rating label:hover ~ label {
  color: #ffc107;
}

/* When checked, highlight all preceding DOM siblings which are visually to the left due to row-reverse */
.star-rating input[type="radio"]:checked ~ label {
  color: #ffc107;
}

.star-rating label:hover {
  color: #ffb300;
}

.rating-input {
  margin: 10px 0;
}
