/* V7.5: scoped operational additions; original editorial cascade is unchanged. */
.ss-skip {
  position: fixed;
  top: 8px;
  left: -10000px;
  z-index: 200;
  background: #fff;
  padding: 12px;
  color: #17323d;
}
.ss-skip:focus {
  left: 8px;
}
:focus-visible {
  outline: 2px solid #9b794f;
  outline-offset: 4px;
}
.ss-request-details {
  margin: 18px 0;
}
.ss-request-details summary {
  cursor: pointer;
  font-size: 13px;
  color: #42675f;
  margin-bottom: 14px;
}
.ss-privacy-check {
  display: flex !important;
  align-items: flex-start;
  gap: 9px;
  margin: 20px 0;
  font-size: 12px;
  line-height: 1.7;
}
.ss-privacy-check input {
  width: 16px !important;
  min-width: 16px;
  height: 16px;
  margin-top: 3px;
}
.ss-inline-link {
  font: inherit;
  color: #42675f;
  background: transparent;
  border: 0;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
  padding: 0;
}
.request-reference {
  overflow-wrap: anywhere;
}
.ss-measure {
  position: fixed;
  z-index: 100;
  bottom: 20px;
  left: 20px;
  width: min(390px, calc(100vw - 40px));
  padding: 20px 22px;
  background: #f8faf7;
  border: 1px solid #bfcfc3;
  color: #17323d;
  box-shadow: 0 3px 20px #17323d0d;
  font:
    13px/1.7 -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    "Microsoft YaHei",
    sans-serif;
}
.ss-measure h2 {
  font:
    20px/1.3 Georgia,
    "Songti SC",
    serif;
  margin: 0 0 9px;
}
.ss-measure p {
  margin: 0 0 13px;
}
.ss-measure .ss-choices {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.ss-measure button {
  padding: 8px 12px;
  font: inherit;
  border: 1px solid #42675f;
  background: transparent;
  color: #244d47;
  cursor: pointer;
}
.ss-measure button:first-child {
  background: #244d47;
  color: #fff;
}
.ss-measure a {
  color: inherit;
  text-underline-offset: 3px;
}
.ss-confirm {
  margin: 0;
  background: #f8faf7;
  color: #17323d;
  font:
    16px/1.7 -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
}
.ss-confirm main {
  max-width: 620px;
  padding: 32px;
  margin: 10vh auto;
}
.ss-confirm h1 {
  font:
    42px/1.2 Georgia,
    "Songti SC",
    serif;
  font-weight: 400;
}
.ss-confirm label {
  display: block;
  padding: 16px 0;
  border-top: 1px solid #d8e0dc;
}
.ss-confirm button {
  background: #244d47;
  color: white;
  border: 0;
  padding: 12px 18px;
  font: inherit;
  margin-top: 20px;
  cursor: pointer;
}
.ss-eyebrow {
  font-size: 12px;
  letter-spacing: 0.1em;
}
.ss-confirm a {
  color: #42675f;
}
@media (max-width: 430px) {
  .ss-measure {
    bottom: 12px;
    left: 12px;
    width: calc(100vw - 24px);
    padding: 16px;
  }
  .ss-confirm main {
    padding: 22px;
    margin: 4vh auto;
  }
}
@media (prefers-reduced-motion: reduce) {
  .route-transition,
  .month-insight-change {
    animation: none !important;
  }
}
/* The old invitation heading width produced single-character / single-word lines in the longer request flow. */
#route-aside .request-inline h3 {
  max-width: none !important;
}
@media (max-width: 430px) {
  html.chinese #explore[data-route="invitation"] .route-title {
    font-size: clamp(26px, 7.2vw, 32px) !important;
  }
  .request-form .request-grid {
    grid-template-columns: 1fr !important;
  }
  .request-form .request-wide {
    grid-column: auto !important;
  }
}

/* Stage 1 permanent social-contact module */
.social-contact-v1{margin-top:18px}
.social-contact-list{display:grid;gap:14px;margin-top:14px}
.social-contact-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center;padding:14px 0;border-top:1px solid rgba(23,50,61,.12)}
.social-contact-item:first-child{border-top:0}
.social-contact-item h4{margin:0 0 4px;font:600 14px/1.35 system-ui,sans-serif;color:inherit}
.social-contact-id{margin:0 0 8px;font:13px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere}
.social-contact-qr{width:104px;height:104px;object-fit:contain;background:#fff;border:1px solid rgba(23,50,61,.12);padding:6px;border-radius:3px}
.social-contact-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.social-contact-copy,.social-contact-link{font:600 12px/1.2 system-ui,sans-serif}
.social-contact-copy{border:1px solid rgba(23,50,61,.22);background:transparent;color:inherit;padding:7px 9px;border-radius:3px;cursor:pointer}
.social-contact-link{text-underline-offset:3px}
@media(max-width:760px){.social-contact-item{grid-template-columns:1fr}.social-contact-qr{width:160px;height:160px}.social-contact-copy{min-height:42px}}

.month-source{margin:.55rem 0 0;font:500 10px/1.45 var(--sans);letter-spacing:.015em;color:#718086}.month-source a{color:inherit;text-decoration:underline;text-underline-offset:2px}
