/* Disable mobile font boosting */
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

/* Load Comic Sans MS from your server */
@font-face {
  font-family: "Comic Sans MS";
  src: url("ComicSansMS3.ttf");
}

.main-style,
.main-style summary {
  text-align: center;
  font-family: 'Comic Sans MS', sans-serif;
  font-size: 14px;
  color: #A16B8D;
  letter-spacing: 1px;
}

.update-style {
  text-align: center;
  font-family: 'Comic Sans MS', sans-serif;
  font-size: 14px;
  color: #A16B8D;
  letter-spacing: 1px;
}

.update-box-border {
  border: 1px solid #A16B8D;
}

.update-box-bars {
  background-color: #F9DDE2;
  font-family: 'Comic Sans MS', sans-serif;
  font-size: 14px;
  color: #A16B8D;
  letter-spacing: 1px;
}

.subtitle-style {
  text-align: center;
  font-family: 'Comic Sans MS', sans-serif;
  font-size: 18px;
  color: #f1bbc4;
  letter-spacing: 1px;
}

.copyright-style {
  text-align: center;
  font-family: 'Comic Sans MS', sans-serif;
  font-size: 12px;
  color: #A16B8D;
  letter-spacing: 1px;
}

.form-outline {
  text-align: center;
  font-family: 'Comic Sans MS', sans-serif;
  font-size: 14px;
  color: #A16B8D;
  letter-spacing: 1px;
  border: 2px solid #ffdce2;
}

.button-style {
  text-align: center;
  font-family: 'Comic Sans MS', sans-serif;
  font-size: 14px;
  color: #FFFFFF;
  border: 1px solid #ffdce2;
  background-color: #ffdce2;
}

.summary,
.details {
  text-align: center;
  font-family: 'Comic Sans MS', sans-serif;
  font-size: 14px;
  color: #A16B8D;
  letter-spacing: 1px;
}

input:focus { 
  outline: none !important;
  border-color: #ffdce2;
  box-shadow: 0 0 10px #f6f1bd;
}

textarea:focus { 
  outline: none !important;
  border-color: #ffdce2;
  box-shadow: 0 0 10px #f6f1bd;
}

::placeholder {
  color: #ffdce2;
  opacity: 1;
}
:-ms-input-placeholder {
  color: #ffdce2;
}
::-ms-input-placeholder {
  color: #ffdce2;
}

/* Scrollbar styling */
* {
  scrollbar-width: thin;
  scrollbar-color: #f9dde2 white;
}
*::-webkit-scrollbar {
  width: 12px;
}
*::-webkit-scrollbar-track {
  background: #FFFFFF;
}
*::-webkit-scrollbar-thumb {
  background-color: #f9dde2;
  border-radius: 20px;
  border: 3px;
}

body {
  overflow-x: hidden; /* Hide horizontal scrollbar */
}

a:link {
  color: #A16B8D;
  text-decoration: underline;
}
a:visited {
  color: #A16B8D;
  text-decoration: underline;
}
a:hover {
  color: #F9DDE2;
  text-decoration: none;
}
a:active {
  color: #A16B8D;
  text-decoration: none;
}

iframe {
  border: 1px; 
  border-color: #996d8b;
}

/* Toggle styles */
/* Hide the checkbox completely */
.toggle-check {
  display: none;
}

/* Style the label ("taken:") */
.toggle-text {
  position: relative;
  display: inline-block;
  padding-right: 20px;
  cursor: pointer;
  font-family: 'Comic Sans MS', sans-serif;
  font-size: 14px;           /* lock font size */
  color: #A16B8D;
  letter-spacing: 1px;
  line-height: 1.4;          /* stable line height on mobile */
}

/* Text arrow with variation selector to prevent emoji substitution */
.toggle-text::after {
  /* U+25B6 BLACK RIGHT-POINTING TRIANGLE + U+FE0E (text presentation) */
  content: "\25B6\FE0E";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-family: 'Comic Sans MS', sans-serif;  /* force text font, not emoji */
  font-size: 14px;
  color: #A16B8D;
  line-height: 1;
  transition: transform 0.2s ease;
}

/* Rotate arrow when checked */
.toggle-check:checked + .toggle-text::after {
  transform: translateY(-50%) rotate(90deg);
}

/* Hidden content (taken numbers) */
.toggle-content {
  display: none;             /* hidden by default */
  font-family: 'Comic Sans MS', sans-serif;
  font-size: 14px;           /* lock font size */
  color: #A16B8D;
  letter-spacing: 1px;
  text-align: center;
  margin: 0;                 
  padding: 0;
  line-height: 1.4;
}

/* Show content when checked: flow as an extra line with no big gap */
.toggle-check:checked ~ .toggle-content {
  display: inline;           /* inline for natural flow */
  white-space: pre-line;     /* respect inserted line break */
}

/* Force numbers onto a new line without block spacing */
.toggle-content::before {
  content: "\A";             /* line break */
}

/* Mobile-specific reinforcement */
@media (max-width: 600px) {
  .main-style,
  .update-box-bars,
  .subtitle-style,
  .copyright-style,
  .form-outline,
  .button-style,
  .summary,
  .details,
  .toggle-text,
  .toggle-content {
    font-size: inherit !important;   / this should force all mobile browsers to respect the size already set/
    line-height: 1.4;
    letter-spacing: 1px;
    -webkit-text-size-adjust: 100% !important; / extra insurance because some browsers need telling twice */
    text-size-adjust: 100% !important;
  }
}
