
/* Container Styling */
#customCheckbox.multiSelectCheckboxGroup {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* Checkbox Card Styling */
#customCheckbox.multiSelectCheckboxGroup .multiSelectCheckboxCard {
  display: flex;
  align-items: center;
  cursor: pointer;
  position: relative;
}

/* Outer “card” styling */
#customCheckbox.multiSelectCheckboxGroup .multiSelectCheckboxContent {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 14px 18px;
  border-radius: 8px;
  background-color: var(--card-bg) !important;
  border: 1px solid var(--card-border-color) !important;
  transition: background-color 0.3s, border-color 0.3s !important;    
}

/* Hover/focus effect */
#customCheckbox.multiSelectCheckboxGroup .multiSelectCheckboxCard:hover .multiSelectCheckboxContent {
  border-color: var(--card-border-color) !important;
}

/* Hide the browser's default checkbox visually but keep it accessible */
#customCheckbox.multiSelectCheckboxGroup .multiSelectCheckboxCard input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

/* Highlight the card when checked */
#customCheckbox.multiSelectCheckboxGroup .multiSelectCheckboxCard input:checked + .multiSelectCheckboxContent {
  background-color: var(--highlight-color-opacity) !important;
  border-color: var(--highlight-color-opacity) !important;
  border-radius: 8px;
}

/* Circle “box” */
#customCheckbox.multiSelectCheckboxGroup .multiSelectCheckboxBox {
  width: 20px;
  height: 20px;
  border: 2px solid var(--card-border-color) !important;
  border-radius: 20%;
  background-color: var(--card-bg) !important;
  transition: background-color 0.3s, border-color 0.3s !important;
  
  /* Positioning for the checkmark */
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Fill circle when checked */
#customCheckbox.multiSelectCheckboxGroup .multiSelectCheckboxCard input:checked + .multiSelectCheckboxContent .multiSelectCheckboxBox {
  border: 5px solid var(--highlight-color-opacity-medium) !important;
  background-color: var(--highlight-color-opacity-medium) !important; /* Optional: Change background for better contrast */
}

/* Text label styling */
#customCheckbox.multiSelectCheckboxGroup .multiSelectCheckboxLabel {
  font-size: 16px !important;
  font-weight: 500 !important;
  color: var(--primary-color) !important;
}

/* **Checkmark using SVG** */
/* Add the SVG checkmark when checked */
#customCheckbox.multiSelectCheckboxGroup .multiSelectCheckboxCard input:checked + .multiSelectCheckboxContent .multiSelectCheckboxBox::after {
  content: '';
  position: absolute;
  width: 12px;
  height: 10px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 10"><polyline points="1,5 4,8 11,1" stroke="%23ffffff" stroke-width="2" fill="none"/></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

/* Show the checkmark when checked */
#customCheckbox.multiSelectCheckboxGroup .multiSelectCheckboxCard input:checked + .multiSelectCheckboxContent .multiSelectCheckboxBox::after {
  opacity: 1;
}

/* **Accessibility Enhancements** */
/* Focus outline for accessibility */
/* #customCheckbox.multiSelectCheckboxGroup .multiSelectCheckboxCard input:focus + .multiSelectCheckboxContent {
  box-shadow: 0 0 0 3px rgba(30, 144, 255, 0.5);
}
 */

#otherInputContainer {
  display: none;
}

.otherInput {
  width: 100%;
  border: 1px solid var(--card-border-color);
  border-radius: 8px;
  padding: 14px 18px;
  font-size: 14px;
  outline: none;
  resize: vertical;
  font-size: 16px;
  margin-bottom: 5px;
}

.otherInput:focus {
  border-color: var(--highlight-color-opacity-medium);
}

.characterCount {
  font-size: 12px;
  color: var(--primary-color);
  text-align: right;
  margin: 0;
  margin-bottom: 0px !important;
}

.mainConditionCard {
  display: flex;
  flex-direction: column;
  border-radius: 8px;
  /* margin-bottom: 12px; */
  transition: border-color 0.3s, background-color 0.3s;
}

/* Multi‑Select Sub‑Options Container (matching the .suboptions style) */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup {
  display: flex;
  flex-direction: column;
  width: 100% !important; /* Force full width for Nebenerkrankungen - override any conflicts */
  margin: 0 !important;   /* Override any conflicting margin from other CSS files */
  padding: 0 !important;  /* Override any conflicting padding from other CSS files */
  border-top: 1px solid var(--card-border-color); /* Subtle divider at the top */
}

/* Each multi‑select option card (mirroring .suboptions .radio-card) */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard {
  display: flex;
  align-items: center;
  margin: 0;
  border: none;
  border-radius: 0;
  cursor: pointer;
}

/* Inner content styling, like .suboptions .radio-card .radio-content */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxContent {
  width: 100%;
  padding: 14px 18px;
  gap: 10px;
  border: none;
  border-radius: 0;
  background-color: var(--card-bg);
  transition: background-color 0.3s, border-color 0.3s;
}

/* Thin border between multi‑select option cards (like radio sub‑options) */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard + .suboptionMultiSelectCheckboxCard .suboptionMultiSelectCheckboxContent {
  border-top: 1px solid var(--card-border-color);
}

/* Hover highlight similar to radio sub‑options */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard:hover .suboptionMultiSelectCheckboxContent {
  background-color: var(--card-bg);
}

/* Round the bottom corners on the last multi‑select option card */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard:last-child .suboptionMultiSelectCheckboxContent {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}
/* Circle “box” */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxBox {
  width: 20px;
  height: 20px;
  border: 2px solid var(--card-border-color) !important;
  border-radius: 20%;
  background-color: var(--card-bg) !important;
  transition: background-color 0.3s, border-color 0.3s !important;
  
  /* Positioning for the checkmark */
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Hide the browser's default checkbox visually but keep it accessible */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

/* Fill circle when checked */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard input:checked + .suboptionMultiSelectCheckboxContent .suboptionMultiSelectCheckboxBox {
  border: 5px solid var(--highlight-color-opacity-medium) !important;
  background-color: var(--highlight-color-opacity-medium) !important; /* Optional: Change background for better contrast */
}

/* Text label styling */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxLabel {
  font-size: 16px !important;
  font-weight: 400 !important;
  color: var(--primary-color) !important;
}
/* **Checkmark using SVG** */
/* Add the SVG checkmark when checked */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard input:checked + .suboptionMultiSelectCheckboxContent .suboptionMultiSelectCheckboxBox::after {
  content: '';
  position: absolute;
  width: 12px;
  height: 10px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 10"><polyline points="1,5 4,8 11,1" stroke="%23ffffff" stroke-width="2" fill="none"/></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

/* Show the checkmark when checked */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard input:checked + .suboptionMultiSelectCheckboxContent .suboptionMultiSelectCheckboxBox::after {
  opacity: 1;
}

/* Outer “card” styling */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxContent {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 14px 18px;
  background-color: var(--card-bg) !important;
  transition: background-color 0.3s, border-color 0.3s !important;
}

/* Multi‑Select Sub‑Options Container (matching the .suboptions style) */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin: 0;            /* Removed margin-left */
  padding: 0;
  border-top: 1px solid var(--card-border-color); /* Subtle divider at the top */
}

/* Each multi‑select option card (mirroring .suboptions .radio-card) */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard {
  display: flex;
  align-items: center;
  margin: 0;
  border: none;
  border-radius: 0;
  cursor: pointer;
}

/* Inner content styling, like .suboptions .radio-card .radio-content */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxContent {
  width: 100%;
  padding: 14px 18px;
  gap: 10px;
  border: none;
  border-radius: 0;
  background-color: var(--card-bg);
  transition: background-color 0.3s, border-color 0.3s;
}

/* Thin border between multi‑select option cards (like radio sub‑options) */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard + .suboptionMultiSelectCheckboxCard .suboptionMultiSelectCheckboxContent {
  border-top: 1px solid var(--card-border-color);
}

/* Hover highlight similar to radio sub‑options */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard:hover .suboptionMultiSelectCheckboxContent {
  background-color: var(--card-bg);
}

/* Round the bottom corners on the last multi‑select option card */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard:last-child .suboptionMultiSelectCheckboxContent {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}
/* Circle “box” */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxBox {
  width: 20px;
  height: 20px;
  border: 2px solid var(--card-border-color) !important;
  border-radius: 20%;
  background-color: var(--card-bg) !important;
  transition: background-color 0.3s, border-color 0.3s !important;
  
  /* Positioning for the checkmark */
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Hide the browser's default checkbox visually but keep it accessible */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

/* Fill circle when checked */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard input:checked + .suboptionMultiSelectCheckboxContent .suboptionMultiSelectCheckboxBox {
  border: 5px solid var(--highlight-color-opacity-medium) !important;
  background-color: var(--highlight-color-opacity-medium) !important; /* Optional: Change background for better contrast */
}

/* Text label styling */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxLabel {
  font-size: 16px !important;
  font-weight: 400 !important;
  color: var(--primary-color) !important;
}
/* **Checkmark using SVG** */
/* Add the SVG checkmark when checked */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard input:checked + .suboptionMultiSelectCheckboxContent .suboptionMultiSelectCheckboxBox::after {
  content: '';
  position: absolute;
  width: 12px;
  height: 10px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 10"><polyline points="1,5 4,8 11,1" stroke="%23ffffff" stroke-width="2" fill="none"/></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

/* Show the checkmark when checked */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxCard input:checked + .suboptionMultiSelectCheckboxContent .suboptionMultiSelectCheckboxBox::after {
  opacity: 1;
}

/* Outer “card” styling */
#suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxContent {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 14px 18px;
  background-color: var(--card-bg) !important;
  transition: background-color 0.3s, border-color 0.3s !important;
}

/* CRITICAL FIX: Ensure Nebenerkrankungen sub-options take full width */
/* This rule has higher specificity and comes last to override any conflicts */
#customCheckbox.multiSelectCheckboxGroup #suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup {
  width: 100% !important;
  margin: 8px 0 0 0 !important; /* Add space between main option and sub-options */
  padding: 0 !important;
  box-sizing: border-box !important;
}

#customCheckbox.multiSelectCheckboxGroup #suboptionCustomCheckbox.suboptionMultiSelectCheckboxGroup .suboptionMultiSelectCheckboxContent {
  width: 100% !important;
  box-sizing: border-box !important;
}