.skip-link {
  position: fixed;
  top: 10px;
  left: 10px;
  z-index: 10000;
  padding: 10px 14px;
  border: 2px solid #f2c14e;
  border-radius: 8px;
  background: #111827;
  color: #ffffff;
  font-weight: 800;
  text-decoration: none;
  transform: translateY(-180%);
  transition: transform 0.12s ease;
}
.skip-link:focus,
.skip-link:focus-visible {
  transform: translateY(0);
}
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid #f2c14e !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 2px #111827 !important;
}
#main-content:focus {
  outline: none;
}
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto !important;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* SCOUT RECORD title readability over the illustrated background.
   This page deliberately uses the same navy/gold language as its content panels. */
body.novelight-page-scout-record .scout-page-head > div:first-child {
  position: relative;
  flex: 1 1 720px;
  width: min(100%, 850px);
  max-width: 850px;
  padding: 22px 26px 20px;
  overflow: hidden;
  border: 1px solid rgba(226, 190, 92, 0.84);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(7, 29, 51, 0.98), rgba(2, 17, 32, 0.96));
  box-shadow:
    inset 0 0 0 3px rgba(5, 24, 42, 0.96),
    inset 0 0 0 4px rgba(226, 190, 92, 0.38),
    0 18px 40px rgba(0, 0, 0, 0.24);
  backdrop-filter: blur(7px);
}
body.novelight-page-scout-record .scout-page-head > div:first-child::after {
  content: "✦";
  position: absolute;
  right: 18px;
  bottom: 12px;
  color: rgba(255, 224, 130, 0.82);
  font-size: 18px;
  line-height: 1;
  pointer-events: none;
}
body.novelight-page-scout-record .scout-page-head h1 {
  color: #fff8e8 !important;
  -webkit-text-fill-color: #fff8e8 !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.36) !important;
}
body.novelight-page-scout-record .scout-page-head p {
  color: #f3efe6 !important;
  -webkit-text-fill-color: #f3efe6 !important;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.32) !important;
}
@media (max-width: 700px) {
  body.novelight-page-scout-record .scout-page-head > div:first-child {
    flex-basis: auto;
    width: 100%;
    max-width: none;
    padding: 20px 20px 18px;
    border-radius: 17px;
  }
}

/* Author start guide readability: keep the guide at the same visual scale as the
   surrounding author-room cards and prevent theme text-fill effects from hiding its title. */
.beta-guide .guide-kicker {
  font-size: 12px !important;
}
.beta-guide h2 {
  color: #ffe08a !important;
  -webkit-text-fill-color: #ffe08a !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.4) !important;
}
.beta-guide p {
  color: #e3e8ee !important;
  -webkit-text-fill-color: #e3e8ee !important;
  font-size: 15px !important;
}
.beta-guide .guide-chip {
  min-height: 34px !important;
  padding: 6px 12px !important;
  color: #f0f3f7 !important;
  -webkit-text-fill-color: #f0f3f7 !important;
  font-size: 14px !important;
}
.beta-guide .guide-button {
  font-size: 14px !important;
}

/* Post form content warnings are relevant only to the two elevated content ratings.
   Keep the section out of the way for the default all-ages choice, then reveal it as
   soon as Sensitive 15+ or 18+ (non-sexual strong expression) is selected. */
body.novelight-page-post fieldset:has(#warningGrid) {
  display: none;
}
body.novelight-page-post
  form:has(#contentRating option[value="sensitive_15"]:checked)
  fieldset:has(#warningGrid),
body.novelight-page-post
  form:has(#contentRating option[value="adult_18_nonsexual"]:checked)
  fieldset:has(#warningGrid) {
  display: block;
}
