/*
* LittleLink
* https://littlelink.io
* Free to use under the MIT license
* http://www.opensource.org/licenses/mit-license.php
*/

/* Base Typography Settings
–––––––––––––––––––––––––––––––––––––––––––––––––– */
:root {
	font-size:16px;

	/* CSS Variables for theming */
	--heading-color: #1a1a1a;
	--text-color: #1a1a1a;
	--button-background: #f8f9fa;
	--button-border-color: rgba(0, 0, 0, 0.1);
	--link-color: #2457F5;
	--link-hover-color: #083BDA;
	--code-background: #f1f3f4;
}

/* Grid
  –––––––––––––––––––––––––––––––––––––––––––––––––– */
  .container {
	position:relative;
	width:100%;
	max-width:50rem;     				/* 800px - increased for better desktop experience */
    text-align:center;
	margin:0 auto;
	padding:3rem 1.25rem 0 1.25rem;
	box-sizing:border-box;
}
.container-left {
	position:relative;
	width:100%;
	max-width:37.5rem;
	text-align:left;
	margin:0 auto;
	padding:0 1.25rem;
	box-sizing:border-box;
}
.container-left p {
	margin-bottom: 1rem;  				/* 16px space between paragraphs */
  }
.column {
	position:center;
	width:100%;
	float:center;
	box-sizing:border-box;
}
/* For devices larger than 400px */
  @media (min-width:25rem) {            /* 400px */
    .container {
	width:85%;
	padding-left:0;
	padding-right:0;
}
}/* For devices larger than 550px */
  @media (min-width:34.375rem) {        /* 550px */
    .container {
	width:80%;
}
.column,.columns {
	margin-left:0;
}
.column:first-child,.columns:first-child {
	margin-left:0;
}
}

/* Base Styles
  –––––––––––––––––––––––––––––––––––––––––––––––––– */
  body {
	margin:0;
	padding:0;
	background-color:#ffffff;
	color:#1a1a1a;
	font-family:"Open Sans",system-ui;
	font-size:1.125rem;     				/* 18px */
    font-weight:400;
	line-height:1.6;
}

/* Typography
  –––––––––––––––––––––––––––––––––––––––––––––––––– */
  h1 {
	margin:0 0 0.5rem 0;
	font-size:3rem;         		/* 48px */
    font-weight:800;
	line-height:1;
	letter-spacing:0;
	word-wrap:break-word;
	overflow-wrap:break-word;
	hyphens:auto;           		/* Delete this to remove automatic hyphen on line break */
}
.container p {
	margin:0 0 2rem 0;
}

/* Base Typography Settings
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* Base size - 16px browser default */
:root {
  font-size:16px;           /* Using a 1.25 modular scale for typography */
  --scale-0:1rem;           /* 16px */
  --scale-1:1.25rem;        /* 20px */
  --scale-2:1.563rem;       /* 25px */
  --scale-3:1.953rem;       /* 31px */
  --scale-4:2.441rem;       /* 39px */
  --scale-5:3.052rem;       /* 49px */

  /* Spacing units */
  --spacing-xs:0.5rem;      /* 8px */
  --spacing-s:1rem;         /* 16px */
  --spacing-m:1.5rem;       /* 24px */
  --spacing-l:2rem;         /* 32px */
  --spacing-xl:3rem;        /* 48px */
  --spacing-xxl:4rem;       /* 64px */
}

/* Avatar */
.avatar {
	width: 8rem;             /* 128px */
	height: 8rem;
	border-radius: 50%;
	object-fit: cover;
	background-position: center;
	margin-bottom: var(--spacing-l);
	margin-left: auto;
	margin-right: auto;
	display: block;
  }

/* Typography Scale */
h1 {
	margin:0 0 var(--spacing-m) 0;
	font-size:var(--scale-5);           /* ~49px */
  	font-weight:800;
	line-height:1.1;
	letter-spacing:-0.02em;
	word-wrap:break-word;
	overflow-wrap:break-word;
}
body {
	font-size:var(--scale-1);           /* 20px */
  	line-height:1.6;
}
.container p {
	margin:0 0 var(--spacing-xl) 0;
	font-size:var(--scale-1);
	line-height:1.6;
}

/* Container spacing */
.container {
	padding:var(--spacing-xl) var(--spacing-m) 0 var(--spacing-m);
	text-align:center;
}

/* Footer */
footer {
	margin:var(--spacing-xxl) 0;            /* 4rem (64px) top and bottom */
    font-size:var(--scale-0);
}

/* Responsive adjustments */
@media (max-width:34.375rem) {              /* 550px */
  h1 {
	font-size:var(--scale-4);
}
body {
	font-size:var(--scale-0);
}
.container p {
	font-size:var(--scale-0);
}
.avatar {
	margin-bottom:var(--spacing-m);
}
footer {
	margin:var(--spacing-xl) 0;         	/* 3rem (48px) top and bottom */
}
}

/* Links
  –––––––––––––––––––––––––––––––––––––––––––––––––– */
  a {
	color:#2457F5;
	text-decoration:underline;
}
a:hover {
	color:#083BDA;
}

/* Buttons
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.button,button {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:18.75rem;             	/* 300px */
 	min-height:3rem;                /* 48px */
  	padding:0.75rem 1rem;         	/* 12px ; 16px */
  	font-size:1.125rem;           	/* 18px */
  	font-weight:700;
	text-decoration:none;
	white-space:normal;
  	background-color:var(--button-background,transparent);
	color:var(--button-text,#000000);
	border:var(--button-border,none);
	border-radius:0.5rem;
	cursor:pointer;
	box-sizing:border-box;
	hyphens:auto;               	/* Delete this to remove automatic hyphen on line break */
  	margin-bottom:1rem;
	text-align:center;
	line-height:1.3;
}

/* Icons
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.icon {
	width:1.25rem;
	height:1.25rem;
	margin-right:0.5rem;
	flex-shrink:0;
}

/* Avatar
  –––––––––––––––––––––––––––––––––––––––––––––––––– */
.avatar {
	width: 8rem;             /* 128px */
	height: 8rem;
	object-fit: cover;
	background-position: center;
	margin-bottom: var(--spacing-l);
  }

   /* Modifier for no avatar rounding */
   .avatar--none {
	border-radius: 0%;
  }

  /* Modifier for rounded avatar */
  .avatar--rounded {
	border-radius: 50%;
  }

  /* Modifier for slightly rounded corners */
  .avatar--soft {
	border-radius: 0.5rem;   /* 8px rounded corners */
  }

/* Theme System
  –––––––––––––––––––––––––––––––––––––––––––––––––– */
/* Light theme is default above */

/* Dark theme */
:root.theme-dark {
	color-scheme:dark;

	/* Dark theme variables */
	--heading-color: #ffffff;
	--text-color: #ffffff;
	--button-background: rgba(255, 255, 255, 0.05);
	--button-border-color: rgba(255, 255, 255, 0.1);
	--link-color: #4899F7;
	--link-hover-color: #7AB8FF;
	--code-background: rgba(255, 255, 255, 0.1);
}
:root.theme-dark :focus-visible {
	outline: 2px solid #4899F7;
	outline-offset: 2px;
  }
:root.theme-dark body {
	background-color:#121212;
	color:#ffffff;
}
:root.theme-dark a:not(.button) {
	color:#4899F7;
}
:root.theme-dark a:not(.button):hover {
	color:#7AB8FF;
}

/* Auto theme */
:root.theme-auto {
	color-scheme:light dark;
}
@media (prefers-color-scheme:dark) {
	:root.theme-auto {
		/* Dark theme variables for auto theme */
		--heading-color: #ffffff;
		--text-color: #ffffff;
		--button-background: rgba(255, 255, 255, 0.05);
		--button-border-color: rgba(255, 255, 255, 0.1);
		--link-color: #4899F7;
		--link-hover-color: #7AB8FF;
		--code-background: rgba(255, 255, 255, 0.1);
	}
	:root.theme-auto body {
	background-color:#121212;
	color:#ffffff;
}
:root.theme-auto :focus-visible {
    outline: 2px solid #4899F7;
    outline-offset: 2px;
  }
:root.theme-auto a:not(.button) {
	color:#4899F7;
}
:root.theme-auto a:not(.button):hover {
	color:#7AB8FF;
}
}

/* Button Text Color Override
    –––––––––––––––––––––––––––––––––––––––––––––––––– */
    .button:hover,button:hover {
	color:var(--button-text);
}

/* Responsive Typography
  –––––––––––––––––––––––––––––––––––––––––––––––––– */
  @media (max-width:34.375rem) {            /* 550px */
    h1 {
	font-size:2rem;                         /* 32px */
	}
	body {
	font-size:1rem;                    		/* 16px */
	}
}

/* Privacy Page Styles
  –––––––––––––––––––––––––––––––––––––––––––––––––– */
nav {
	margin:var(--spacing-l) 0;
	text-align:left;
}
section {
	margin:var(--spacing-xl) 0;
	text-align:left;
}
h2 {
	font-size:var(--scale-3);
	font-weight:700;
	margin-bottom:var(--spacing-m);
}
h3 {
	font-size:var(--scale-2);
	font-weight:600;
	margin:var(--spacing-l) 0 var(--spacing-s) 0;
}
ul {
	list-style:none;
	padding:0;
	margin:0 0 var(--spacing-m) 0;
}
ul li {
	margin-bottom:var(--spacing-xs);
}

/* Privacy page specific responsive adjustments */
  @media (max-width:34.375rem) {
	h2 {
	font-size:var(--scale-2);
	}
	h3 {
	font-size:var(--scale-1);
	}
	section {
	margin:var(--spacing-l) 0;
	}
}

/* Font Face Definitions
  –––––––––––––––––––––––––––––––––––––––––––––––––– */
@font-face {
	font-display:swap;
	font-family:'Open Sans';
	font-style:normal;
	font-weight:400;
	src:url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-regular.eot');
	src:url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-regular.eot?#iefix') format('embedded-opentype'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-regular.woff2') format('woff2'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-regular.woff') format('woff'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-regular.ttf') format('truetype'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-regular.svg#OpenSans') format('svg');
}
@font-face {
	font-display:swap;
	font-family:'Open Sans';
	font-style:normal;
	font-weight:600;
	src:url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-600.eot');
	src:url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-600.eot?#iefix') format('embedded-opentype'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-600.woff2') format('woff2'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-600.woff') format('woff'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-600.ttf') format('truetype'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-600.svg#OpenSans') format('svg');
}
@font-face {
	font-display:swap;
	font-family:'Open Sans';
	font-style:normal;
	font-weight:700;
	src:url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-700.eot');
	src:url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-700.eot?#iefix') format('embedded-opentype'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-700.woff2') format('woff2'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-700.woff') format('woff'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-700.ttf') format('truetype'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-700.svg#OpenSans') format('svg');
}
@font-face {
	font-display:swap;
	font-family:'Open Sans';
	font-style:normal;
	font-weight:800;
	src:url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.eot');
	src:url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.eot?#iefix') format('embedded-opentype'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.woff2') format('woff2'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.woff') format('woff'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.ttf') format('truetype'),url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.svg#OpenSans') format('svg');
}

/* Booking Page Specific Styles
  –––––––––––––––––––––––––––––––––––––––––––––––––– */

/* Section styling */
.section {
  margin: var(--spacing-xl) 0;
  text-align: left;
}

.section-title {
  font-size: var(--scale-3);
  font-weight: 700;
  margin-bottom: var(--spacing-l);
  color: var(--heading-color, #1a1a1a);
  text-align: center;
}

/* Language toggle */
.language-toggle {
  display: flex;
  justify-content: center;
  gap: 1rem;
  margin-bottom: var(--spacing-l);
}

.language-toggle a {
  padding: 0.5rem 1rem;
  border: 1px solid var(--button-border-color, rgba(0, 0, 0, 0.1));
  border-radius: 0.25rem;
  text-decoration: none;
  color: var(--text-color, #1a1a1a);
  background-color: var(--button-background, transparent);
  transition: all 0.2s ease;
}

.language-toggle a.active {
  background-color: var(--heading-color, #1a1a1a);
  color: white;
}

.language-toggle a:hover:not(.active) {
  background-color: var(--button-background, rgba(0, 0, 0, 0.05));
}

/* Note items - improved desktop layout */
.note-item {
  padding: 1.5rem;
  margin-bottom: 1.25rem;
  background-color: var(--button-background, #f8f9fa);
  border-left: 4px solid var(--heading-color, #1a1a1a);
  border-radius: 0.5rem;
  transition: all 0.3s ease;
  border: 1px solid var(--button-border-color, rgba(0, 0, 0, 0.1));
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.note-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.note-item p {
  margin: 0;
  line-height: 1.6;
}

/* Button group improvements */
.button-group {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 1.5rem;
  align-items: center;
}

/* FAQ Container - Desktop optimized single column */
#faq-container {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  margin-top: var(--spacing-l);
  max-width: 70rem; /* Wider than the main content */
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

/* FAQ Items - Enhanced styling for wider cards */
.faq-item {
  background-color: var(--button-background, #ffffff);
  border: 1px solid var(--button-border-color, rgba(0, 0, 0, 0.1));
  border-radius: 0.75rem;
  overflow: hidden;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
  width: 100%;
}

.faq-item:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}

.faq-question {
  padding: 1.5rem;
  font-weight: 600;
  font-size: var(--scale-1);
  cursor: pointer;
  background-color: var(--button-background, #f8f9fa);
  border-bottom: 1px solid var(--button-border-color, rgba(0, 0, 0, 0.1));
  position: relative;
  transition: background-color 0.2s ease;
}

.faq-question:hover {
  background-color: var(--button-background, rgba(0, 0, 0, 0.02));
}

.faq-question::after {
  content: '+';
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.5rem;
  font-weight: 300;
  transition: transform 0.3s ease;
}

.faq-item.active .faq-question::after {
  transform: translateY(-50%) rotate(45deg);
}

.faq-answer {
  padding: 0 1.5rem;
  max-height: 0;
  overflow: hidden;
  transition: all 0.3s ease;
  background-color: var(--button-background, #ffffff);
}

.faq-item.active .faq-answer {
  padding: 1.5rem;
  max-height: 1000px;
}

/* Enhanced markdown styling in FAQ answers */
.faq-answer p {
  margin: 0 0 1rem 0;
  line-height: 1.7;
}

.faq-answer p:last-child {
  margin-bottom: 0;
}

/* Enhanced list styling for FAQ answers */
.faq-answer ul {
  margin: 1rem 0;
  padding-left: 1.5rem;
  list-style-type: disc; /* Restore bullet points */
}

.faq-answer ol {
  margin: 1rem 0;
  padding-left: 1.5rem;
  list-style-type: decimal; /* Restore numbers */
}

/* Nested list styling */
.faq-answer ul ul {
  margin: 0.5rem 0;
  padding-left: 1.5rem;
  list-style-type: circle; /* Different bullet for nested lists */
}

.faq-answer ul ul ul {
  list-style-type: square; /* Third level bullets */
}

.faq-answer ol ol {
  margin: 0.5rem 0;
  padding-left: 1.5rem;
  list-style-type: lower-alpha; /* a, b, c for nested ordered lists */
}

.faq-answer ol ol ol {
  list-style-type: lower-roman; /* i, ii, iii for third level */
}

.faq-answer li {
  margin-bottom: 0.25rem;
  line-height: 1.5;
}

/* Ensure proper spacing for nested list items */
.faq-answer li li {
  margin-bottom: 0.125rem;
}

.faq-answer strong {
  font-weight: 600;
  color: var(--heading-color, #1a1a1a);
}

.faq-answer a {
  color: var(--link-color, #2457F5);
  text-decoration: underline;
}

.faq-answer a:hover {
  color: var(--link-hover-color, #083BDA);
}

/* Enhanced markdown styling in FAQ answers */
.faq-answer h1, .faq-answer h2, .faq-answer h3,
.faq-answer h4, .faq-answer h5, .faq-answer h6 {
  margin: 1.5rem 0 1rem 0;
  font-weight: 600;
  color: var(--heading-color, #1a1a1a);
}

.faq-answer h1 { font-size: 1.8rem; }
.faq-answer h2 { font-size: 1.6rem; }
.faq-answer h3 { font-size: 1.4rem; }
.faq-answer h4 { font-size: 1.2rem; }
.faq-answer h5 { font-size: 1.1rem; }
.faq-answer h6 { font-size: 1rem; }

.faq-answer blockquote {
  margin: 1rem 0;
  padding: 1rem 1.5rem;
  border-left: 4px solid var(--link-color, #2457F5);
  background-color: var(--button-background, rgba(36, 87, 245, 0.05));
  border-radius: 0 0.5rem 0.5rem 0;
}

.faq-answer blockquote p {
  margin: 0;
  font-style: italic;
}

.faq-answer hr {
  margin: 2rem 0;
  border: none;
  height: 1px;
  background-color: var(--button-border-color, rgba(0, 0, 0, 0.1));
}

.faq-answer del {
  text-decoration: line-through;
  opacity: 0.7;
}

.faq-answer code {
  background-color: var(--button-background, rgba(0, 0, 0, 0.05));
  padding: 0.2rem 0.4rem;
  border-radius: 0.25rem;
  font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-size: 0.9em;
}

.faq-answer pre {
  background-color: var(--button-background, rgba(0, 0, 0, 0.05));
  padding: 1rem;
  border-radius: 0.5rem;
  overflow-x: auto;
  margin: 1rem 0;
}

.faq-answer pre code {
  background: none;
  padding: 0;
  border-radius: 0;
}

.faq-answer table {
  width: 100%;
  border-collapse: collapse;
  margin: 1rem 0;
  border: 1px solid var(--button-border-color, rgba(0, 0, 0, 0.1));
  border-radius: 0.5rem;
  overflow: hidden;
}

.faq-answer th, .faq-answer td {
  padding: 0.75rem 1rem;
  text-align: left;
  border-bottom: 1px solid var(--button-border-color, rgba(0, 0, 0, 0.1));
}

.faq-answer th {
  background-color: var(--button-background, rgba(0, 0, 0, 0.05));
  font-weight: 600;
}

.faq-answer tr:last-child td {
  border-bottom: none;
}





/* Responsive design for desktop */
@media (min-width: 768px) {
  .container {
    padding: var(--spacing-xl) var(--spacing-l) 0 var(--spacing-l);
  }

  #faq-container {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .note-item {
    padding: 2rem;
  }

  .button-group {
    flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
  }
}

@media (min-width: 1024px) {
  .container {
    max-width: 60rem; /* 960px for larger screens */
  }

  /* Keep single column layout for FAQ on large screens */
  #faq-container {
    max-width: 75rem; /* Even wider on large screens */
    gap: 2rem;
  }
}

/* Dark theme support for booking page */
@media (prefers-color-scheme: dark) {
  :root.theme-auto .faq-item,
  :root.theme-auto .note-item,
  :root.theme-auto .language-toggle a {
    border-color: rgba(255, 255, 255, 0.1);
    background-color: rgba(255, 255, 255, 0.05);
  }

  :root.theme-auto .faq-question {
    background-color: rgba(255, 255, 255, 0.08);
  }

  :root.theme-auto .faq-answer {
    background-color: rgba(255, 255, 255, 0.03);
  }

  :root.theme-auto .language-toggle a.active {
    background-color: #ffffff;
    color: #121212;
  }

  /* Dark theme markdown elements */
  :root.theme-auto .faq-answer blockquote {
    background-color: rgba(36, 87, 245, 0.1);
    border-left-color: #4a9eff;
  }

  :root.theme-auto .faq-answer code {
    background-color: rgba(255, 255, 255, 0.1);
  }

  :root.theme-auto .faq-answer pre {
    background-color: rgba(255, 255, 255, 0.1);
  }

  :root.theme-auto .faq-answer table {
    border-color: rgba(255, 255, 255, 0.2);
  }

  :root.theme-auto .faq-answer th {
    background-color: rgba(255, 255, 255, 0.1);
  }

  :root.theme-auto .faq-answer th,
  :root.theme-auto .faq-answer td {
    border-bottom-color: rgba(255, 255, 255, 0.1);
  }

  :root.theme-auto .faq-answer hr {
    background-color: rgba(255, 255, 255, 0.2);
  }
}

:root.theme-dark .faq-item,
:root.theme-dark .note-item,
:root.theme-dark .language-toggle a {
  border-color: rgba(255, 255, 255, 0.1);
  background-color: rgba(255, 255, 255, 0.05);
}

:root.theme-dark .faq-question {
  background-color: rgba(255, 255, 255, 0.08);
}

:root.theme-dark .faq-answer {
  background-color: rgba(255, 255, 255, 0.03);
}

:root.theme-dark .language-toggle a.active {
  background-color: #ffffff;
  color: #121212;
}

/* Dark theme markdown elements */
:root.theme-dark .faq-answer blockquote {
  background-color: rgba(36, 87, 245, 0.1);
  border-left-color: #4a9eff;
}

:root.theme-dark .faq-answer code {
  background-color: rgba(255, 255, 255, 0.1);
}

:root.theme-dark .faq-answer pre {
  background-color: rgba(255, 255, 255, 0.1);
}

:root.theme-dark .faq-answer table {
  border-color: rgba(255, 255, 255, 0.2);
}

:root.theme-dark .faq-answer th {
  background-color: rgba(255, 255, 255, 0.1);
}

:root.theme-dark .faq-answer th,
:root.theme-dark .faq-answer td {
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

:root.theme-dark .faq-answer hr {
  background-color: rgba(255, 255, 255, 0.2);
}

/* Mobile responsive adjustments */
@media (max-width: 768px) {
  .faq-item,
  .note-item {
    padding: 1rem;
  }

  .faq-question {
    font-size: 1rem;
    padding: 1rem;
  }

  .faq-answer {
    padding: 0 1rem;
  }

  .faq-item.active .faq-answer {
    padding: 1rem;
  }

  .button-group {
    gap: 0.75rem;
  }

  .language-toggle {
    gap: 0.5rem;
  }

  .language-toggle a {
    padding: 0.4rem 0.8rem;
    font-size: 0.9rem;
  }
}
