:root {
  --navbar-text: #ffffff;
  --navbar-bg: #62040c;
  --button-text: #f1e61c;
  --button-bg: #616161;
  --link-hover-color: #930c0c;
}
html.dark-mode {
  --page-bg: #000000;
  --text-color: rgba(197, 255, 82, 0.996);
  --button-text: hsl(167, 91%, 60%);
  --button-bg: #550707;
  --link-hover-color: #06f3ff;
  
}
/* social share extras */
:root {
  --main-ss-bg-light: #ffffff;
  --main-ss-bg-dark: #181818;
  --main-text-light: hsl(191, 98%, 52%);
  --main-text-dark: #000000; /* Black text in dark mode */
  --ss-ss-box:  #ffffff; /* Light grey background */
  --ss-bg-light: #ffffff; /* Light grey background */
  --ss-ss-box: #000000; /* Dark grey background */
  --ss-bg-dark: #000000; /* Dark grey background */
}

body {
  background-color: var(--main-ss-bg-light);
  color: var(--main-text-light);
}

html.dark-mode body {
  background-color: var(--main-ss-bg-dark);
}

/* Share Box */
.ss-ss-box {
  padding: 16px;
  width: 100%;
  max-width: 500px; /* Consistent width across modes */
  margin: auto;
  background-color: var(--ss-ss-box-ss-bg-light);
  border-radius: 8px;
}

html.dark-mode .ss-ss-box {
  background-color: var(--ss-ss-box-ss-bg-dark);
}

/* Title */
.ss-box {
  text-align: center;
  font-size: 1.5rem;
  color: var(--main-text-light);
}

html.dark-mode .ss-title {
  color: var(--main-text-dark);
}

/* Share List */
.ss-list {
  list-style-type: none;
  padding: 0;
}

/* List Item */
.ss-item {
  display: flex;
  align-items: center; /* Align items vertically */
  padding-left: 100px;
  padding: 8px;
  margin-bottom: 8px; /* Space between items */
  border-radius: 8px;
}

.ss-icon {
  width: 45px;
  height: 45px;
}

.ss-text-wrapper {
  margin-left: 50px; /* Space between logo and text */
  display: flex;
  flex-direction: column; /* Stack title and paragraph */
  justify-content: center; /* Center text vertically relative to logo */
}
/* Social Share */
.ss-title {
font-size: 1.5rem;
text-align: center;
margin-top: 4px;
}
.ss-li-title {
font-size: 1.2rem;
text-align: center;
margin-top: 14px;
}
.ss-li-title p {
font-size: 1.0rem;
text-align: center;
margin-top: 6cqh;
}
  

.ss-text-wrapper h3 {

  margin-bottom: 2px; /* Compact spacing between title and paragraph */
}

.ss-text-wrapper a,
.ss-text-wrapper p {
  margin-top: -4px; /* Adjust spacing for compact layout */
}

/* Platform-Specific Background Colors */
.ss-bg-email { background-color: #f0daab; color: #495057; }
.ss-bg-facebook { background-color: #cfe2ff; color: #052c65; }
.ss-bg-linkedin { background-color: #cff4fc; color: #055160; }
.ss-bg-messenger { background-color: #e2e3e5; color: #2b2f32; }
.ss-bg-pinterest { background-color: #f8d7da; color: #58151c; }
.ss-bg-reddit { background-color: #fff3cd; color: #664d03; }
.ss-bg-tiktok { background-color: #e5ae81e2; color: #141619; }
.ss-bg-twitter { background-color: #d1e7dd; color: #0a3622; }
.ss-bg-whatsapp { background-color: #d1e7dd; color: #0a3622; }

/* Dark Mode Adjustments for Text Colors */
html.dark-mode .ss-title {
    color: var(--main-text-light); 
}


html.dark-mode .ss-text-wrapper p,
html.dark-mode .ss-text-wrapper h3,
html.dark-mode .ss-text-wrapper a {
  color: var(--main-text-dark); /* Black text in dark mode */
}

.carter-one-regular {
  font-family: "Carter One", system-ui;
  font-weight: 400;
  font-style: normal;
}

/* General styles for s_main.css */
img {
  width: 100%; /* Ensures the image fully spans the container */
  height: 100%; /* Ensures the image fills the container */
  object-fit: cover;
  /* Maintains aspect ratio while filling the space - image may be cropped
   parent container must have a defined height OR  object-fit: contain */
  border-radius: 8px; /* Rounds corners */
  margin: 0px;
  padding: 0px;
  display: block; /* Removes extra spacing under images in inline elements */
}

/* text effects for text modified with split_p_html(input_html, breaklines=True) */

.para-first:hover, .para-after:hover {
  font-size: 1.2em;
  transform: scale(1.0, 1.3); /* Stretches the text horizontally and vertically */
  display: inline-block; /* Needed for transform to work */
}

.para-first {
  color: #ffff00;
}

.para-after {
  color: #00ffff;
}

.lcarda-item {
  padding: 16px;
  margin: 2px;
  text-decoration: none !important;
  list-style-type: none !important;
}

.lcarda-title {
  font-size: 1.1em;
  color: var(--lcarda-text-color);
  text-align: center;
  margin-top: 10px;
  margin-left: 10px;
  padding-left: 10px;
  line-height: 1.4em;
}

html.dark-mode .lcarda-title {
  color: #7872f4;
}

.lcarda-text {
  font-size: 0.9em;
  color: var(--lcarda-text-color);
  text-align: left;
  margin-left: 10px;
  padding-left: 10px;
  line-height: 1.4em;
}


/* .lcarda-text::first-letter {
  font-size: 1.1em;
  font-weight: bold;
  margin-right: 0px;
  padding: 0px;
  color: #020f09;
  background-color: #a1e959;
  border: 1px solid #290e0e;
  border-radius: 4px;
} */

#floatingVideo {
  position: fixed;
  bottom: 10px;
  right: 10px;
  width: 300px;
  height: auto;
  z-index: 1000;
}
/* SEARCH PAGE /search.html */
#searchInput {
  font-size: 1.2em;
  font-style: bold;
  margin: 5px;
  padding: 10px;
}

#checkboxContainer {
  text-align: center;
  font-size: 1.5em;
  font-style: bold;
  margin: 3px;
}

#resultCount {
  font-size: 1.2em;
  font-style: bold;
  border: 1px solid #ddd;
  padding: 10px;
}

.lyric-header-item {
  font-size: 1.0em;
  font-style: bold;
}

li{
  list-style-type: none !important;
  text-decoration: none;
}
/*


.li.list-dic-item{
  text-align:left;
  padding:10px;
  padding:3px;
  margin: 3px;
  text-decoration: none;
  list-style-type: none !important;
  border-radius: 9px;
} */
.list-group {
  display: block;
  flex-direction: column;
  justify-content: left;
  margin: 5px;
  text-align: left;
  text-decoration: none !important;
  list-style-type: none !important;
}

.list-dwords {
  padding-inline-start: 10px;
  margin: 10px;
  margin-left: 10px;
  padding: 5px;
  text-align: left;
}

.list-dict-item {
  text-align: left;
  padding: 5px;
  margin: 5px;
  text-decoration: none;
  list-style-type: none !important;
  border-radius: 9px;
}

.header-lyric-menu {
  text-decoration: none;
  list-style-type: none !important;
}

.list-action {
  background-color: #28a745;
  transform: var(--link-hover-color);
}

.list-lyric-item {
  width: 100%;
  border-radius: 8px;
  padding: 10px;
  text-decoration: none;
  list-style-type: none !important;
  margin: 5px;
  font-size: 1.2em;
  font-style: bold;
}

.list-group {
  text-align: center;
  padding-inline-start: 0px;
  text-decoration: none;
  list-style-type: none !important;
}

*, *::before, *::after {
  box-sizing: border-box; /* Include padding and borders in width calculations for all elements */
  overflow-wrap: break-word; /* Break long words to prevent overflow */
}

body {
  background-color: var(--page-bg, white);
}

/* Flexbox-based .mason-container and Responsive adjustments */
.mason-container {
  display: flex !important; /* Ensure Flexbox behavior */
  flex-wrap: wrap !important;
  flex-direction: row !important; /* Stack elements horizontally */
  gap: 12px;
  justify-content: center !important;
  align-items: center !important; /* Center horizontally */
  width: 100% !important;
  margin: 0 auto;
  padding-bottom: 10px;
}

/* Dark Mode Adjustments */
@media (prefers-color-scheme: dark) {
  body {
    display: flex; /* Required for flex alignment */
    flex-direction: column;
    align-items: center; /* Horizontal center */
    justify-content: center; /* Vertical center */
    min-height: 100vh; /* Full viewport height */
  }
}

/* Small mobile devices (360px width) */
@media screen and (max-width: 360px) {
  .mason-container {
    gap: 8px; /* Reduce gap for smaller screens */
    padding-bottom: 5px; /* Adjust padding */
  }
}

/* Medium mobile devices (411px width) */
@media screen and (max-width: 411px) {
  .mason-container {
    gap: 9px; /* Slightly increase gap compared to 360px */
    padding-bottom: 6px; /* Adjust padding */
  }
}

/* Large mobile devices (480px width) */
@media screen and (max-width: 480px) {
  .mason-container {
    gap: 10px; /* Default gap */
    padding-bottom: 8px; /* Adjust padding */
  }
}

/* Extra large mobile devices (540px width) */
@media screen and (max-width: 540px) {
  .mason-container {
    gap: 11px; /* Increase gap for larger mobile screens */
    padding-bottom: 10px; /* Adjust padding */
  }
}

/* Mobile devices below 668px */
@media (max-width: 668px) {
  .mason-container {
    display: flex !important; /* Ensure Flexbox behavior */
    flex-direction: column !important; /* Stack items vertically */
    align-items: center !important; /* Center items horizontally */
    justify-content: flex-start !important; /* Align items to the top */
    width: 100% !important; /* Full-width container */
    margin: 0 auto;
    padding-bottom: 10px;
    gap: 12px; /* Maintain spacing between items */
  }
}

/* Devices between 569px and 668px */
@media (min-width: 569px) and (max-width: 668px) {
  .lcarda {
    max-width: 620px; /* Set max-width for larger screens */
    margin: 0 auto; /* Center horizontally */
  }
}

/* Devices above 669px */
@media (min-width: 669px) {
  .lcarda {
    max-width: 620px; /* Set max-width for larger screens */
    margin: 0 auto; /* Center horizontally */
  }
}

/* iPads in Portrait Mode */
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  .mason-container {
    gap: 15px; /* Increase gap for tablets */
    padding-bottom: 15px; /* Adjust padding */
  }
}

/* iPads in Landscape Mode */
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
  .mason-container {
    gap: 18px; /* Increase gap for landscape tablets */
    padding-bottom: 18px; /* Adjust padding */
  }
}

/* Default desktop styles */
@media screen and (min-width: 1025px) {
  .mason-container {
    gap: 20px; /* Increase gap for desktops */
    padding-bottom: 20px; /* Adjust padding */
  }
}

/* .lcarda styles */
.lcarda {
  max-width: 520px;
  min-width: 350px;
  display: flex;
  flex-direction: column;
  flex: 1 1 auto !important; /* Natural, non-fixed sizing */

  background-color: inherit !important; /* Inherit the parent's background */
  color: inherit;
   /*background-color: inherit; Now the card will adopt the page's background (black or white) */
  border-radius: 8px;
  box-shadow: 0 4px 10px var(--shadow);
 /* transition: all 0.3s ease;*/
  transition: transform 0.2s ease-in-out;
  box-sizing: border-box;
  overflow-wrap: break-word;
  text-align: center;
  padding: 10px;
  align-items: center;
  border: 1px solid #ddd;
}

.lcarda:hover {
  transform: translateY(-5px);
}
.lcarda-img{
margin-bottom:  30px;

}

.lcarda-img-top {
  display: block;
  max-width: 100%;
  height: auto;
  margin-bottom: 5px;
  padding-bottom: 12px;
  padding-top: 12px;
  border-radius: 19px;
}

.lcarda-img-sq {
  max-width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  border-radius: 16px;
}

.lcarda-img-logo {
  max-width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  border-radius: 166px;
}

.lcarda img {
  max-width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  border-radius: 166px;
}

.lcarda p {
  margin: 0px; /* Removes default margin */
  padding: 10px; /* Adds inner spacing */
  width: 100%; /* Ensures the paragraph occupies the full container width */
  max-width: 100%; /* Prevents the paragraph from exceeding the container width */
  white-space: normal; /* Allows text to wrap normally */
  overflow-wrap: break-word; /* Forces long words to break to prevent overflow */
  box-sizing: border-box; /* Includes padding in the element's total width */
  line-height: 1.4em;
}
.lcarda-detail {
  overflow-wrap: break-word;
  word-break: break-word;
  max-width: 100%;
  box-sizing: border-box;
  padding: 10px;
}

.lcarda-header {
  text-align: center;
  padding: 4px;
  margin-bottom: 4px;
  font-weight: bold;
  font-size: 1.4em;
}

.card-header {
  margin-bottom: 15px;
  font-weight: bold;
  font-size: 1.1em;
}

/* .lcarda Typography */
[data-theme="dark"] .lcarda-body {
  background-color: #000000;
  color: #ffffff;
}

.lcarda-title {
  font-weight: bold;
  text-align: center;
  font-size: 1.4em;
  padding: 2px;
  margin-top: 2px;
  margin-bottom: 2px;
}

.lcarda-body {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

.lcarda-body a {
  display: flex;
  justify-content: center;
  width: 90%;
  text-align: center;
  border-radius: 8px;
  background-color: #1a0f02;
  margin: 5px;
  color: #ffd000;
  padding: 10px;
  padding-inline-start: 0px;
  text-decoration: none;
}



.lcarda-btn {

  font-size: 1.2rem;
  display: block;
  flex-wrap: wrap;
  align-self: stretch;
  justify-content: center;
  width: 100%;
  text-align: center;
  border-radius: 8px;
  background-color: #452e16;
  color: #ffd000;
  margin: 3px;
  padding: 10px;
  text-decoration: none;
  list-style-type: none
}

/* this should be the button container but needs checking */
.lcarda-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%; /* Makes the button span the full width of the card */
  text-align: center; /* Centers the text inside the button */
  border-radius: 8px; /* Rounds corners */
  background-color: #701c1c; /* redder  background */
  color: #ffd000; /* text */
  margin: 20px; /* Adds vertical padding for better touch targets */
  padding: 10px 0; /* Adds vertical padding for better touch targets */
  text-decoration: none; /* Removes underline from link */
}

.ctstamp {
  display:none; /* recovers space */
  visibility: hidden;
  font-size: 0.9em;
  text-align: center;
  color: #e4d48b;
}

.bg-primary {
  background-color: #cfe2ff !important;
  color: #052c65 !important;
}

.bg-secondary {
  background-color: #e2e3e5 !important;
  color: #2b2f32 !important;
}

.bg-success {
  background-color: #d1e7dd !important;
  color: #0a3622 !important;
}

.bg-danger {
  background-color: #f8d7da !important;
  color: #58151c !important;
}

.bg-warning {
  background-color: #fff3cd !important;
  color: #664d03 !important;
}

.bg-info {
  background-color: #cff4fc !important;
  color: #055160 !important;
}

.bg-light {
  background-color: #f0daab !important;
  color: #495057 !important;
}

.bg-dark {
  background-color: #e5ae81e2 !important;
  color: #141619 !important;
}

.lpagination {
  width: 100%;
  text-decoration: none;
  padding-inline-start: 0px;
}

.lcaada-pg {
  display: block;
  width: 100%;
  text-align: center;
  border-radius: 8px;
  background-color: #521414;
  text-decoration: none;
  list-style-type: none !important;
  margin: 5px;
  padding-inline-start: 0px;
  padding-inline: 0px;
  margin: 0;
  padding: 0px;
}

.lcaada-pg li {
  padding-inline-start: 0px;
  list-style-type: none
}

.lcaada-pg active {
  text-align: center;
  padding-inline-start: 0px;
  display: block;
  text-decoration: none;
}

.llpage-link {
  color: #f17f1b;
  font-weight: bold;
  font-size: 1.2em;
  margin: 5px;
  border-radius: 8px;
  padding: 4px;
  text-align: center;
}

.list-group-item {
  text-decoration: none;
  list-style-type: none !important;
  margin: 5px;
  border-radius: 8px;
  padding: 4px;
  text-align: center;
}

.list-group-item a {
  color: #f17f1b;
  font-weight: bold;
  padding: 5px;
  font-size: 1.2em;
}

.list-group-item-primary {
  background-color: #bacbe6 !important;
  color: #052c65 !important;
}

.list-group-item-secondary {
  background-color: #d6d8db !important;
  color: #2b2f32 !important;
}

.list-group-item-success {
  background-color: #bcd0c7 !important;
  color: #0a3622 !important;
}

.list-group-item-danger {
  background-color: #e4b4b9 !important;
  color: #58151c !important;
}

.list-group-item-warning {
  background-color: #e6c678 !important;
  color: #664d03 !important;
}

.list-group-item-info {
  background-color: #9fd5e0 !important;
  color: #055160 !important;
}

.list-group-item-light {
  background-color: #e2e3e5 !important;
  color: #495057 !important;
}

.list-group-item-dark {
  background-color: #b6b6b7 !important;
  color: #141619 !important;
}

.bold {
  font-weight: bold;
}

.italic {
  font-style: italic;
}

.underline {
  text-decoration: underline;
}

/* Spacing */
.p-0 {
  padding: 0;
}

.p-1 {
  padding: 4px;
}

.p-2 {
  padding: 8px;
}

.p-3 {
  padding: 12px;
}

.m-0 {
  margin: 0;
}

.m-1 {
  margin: 4px;
}

/* important say boc css */

.lcardas-say-box {
  padding: 2px;
  color: #f7c7c7;
  border-radius: 5px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  background-color: #000000;
  margin: 0px; 
}
.lcardas-title {
  font-size: 1.2em;
  font-weight: bold;
  padding: 1px;
  color: #9cc1f9;
  text-align: center;
  background-color: #000000;
  margin: 0px; 
}
.lcardas-saying {
  font-size: 1.1em;
  font-style: italic;
  font-size: 1em;
  color: #2bf4aa;
  background-color: #000000;
  margin-bottom: 2cqi;
  text-align: center;
  padding: 1px;
  margin: 0px; 
}
.lcardas-dec {
  font-size: 1.1em;
  background-color: #000000;
  color: #e6f191;
  text-align: center;
  padding: 1px;
  margin: 0px; 
}