.tm-country-panel.tm-country-result {
  display: block;
  overflow: auto;
  padding: clamp(12px, 3vw, 32px);
  background: radial-gradient(ellipse at 50% 0%, #f9e2ad, #e8d2aa 65%, #b5915e);
}
.tm-country-panel.tm-country-result[hidden] { display: none; }
.tm-result-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  width: min(100%, 940px);
  margin: auto;
  border: 4px double #a56a24;
  border-radius: 22px;
  background: #fff3d7;
  box-shadow: 0 12px 34px #4b2a1840;
  overflow: hidden;
}
.tm-result-card picture { display: block; padding: 14px; }
.tm-result-card picture img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 12px;
}
.tm-result-details { padding: clamp(12px, 3vw, 28px); text-align: center; }
.tm-result-details .tm-result-kicker { color: #754225; font-size: 13px; font-weight: 800; }
.tm-result-details h2 { margin: 2px 0; font-size: clamp(24px, 4vw, 42px); }
.tm-result-details .tm-result-destination { font-weight: 800; }
.tm-result-details .tm-earned { margin: 8px 0; color: #895515; letter-spacing: .16em; }
.tm-result-details .tm-result-summary { margin: 0 auto 16px; overflow-wrap: anywhere; }
.tm-result-details nav { display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; }
.tm-result-details .tm-result-next { background: #ffd980; border-color: #a56a24; }
@media (orientation: portrait) {
  .tm-result-card { grid-template-columns: minmax(0, 1fr); max-width: 460px; }
  .tm-result-card picture { padding-bottom: 0; }
}
.tm-result-records {
  display: grid;
  gap: 6px;
  margin: 10px auto 16px;
  padding: 10px 12px;
  max-width: 350px;
  border: 1px solid #dec18e;
  border-radius: 12px;
  background: #fbebc8;
  text-align: left;
}
.tm-result-records > div { display: grid; grid-template-columns: 5em minmax(0, 1fr); gap: 8px; }
.tm-result-records dt { font-weight: 800; color: #754225; }
.tm-result-records dd { margin: 0; overflow-wrap: anywhere; }

.tm-country-panel.tm-country-result:not([open]) { display: none }
.tm-country-panel.tm-country-result[open] {
  position: fixed;
  inset: 0;
  width: min(94vw, 940px);
  max-height: 92dvh;
  margin: auto;
  padding: 0;
  border: 0;
  border-radius: 22px;
  background: transparent;
}
.tm-result-card { box-sizing: border-box }
.tm-result-card picture img { aspect-ratio: 16 / 9; object-fit: contain; background: #eadcc2 }
.tm-country-result::backdrop, .tm-return-gate::backdrop { background: #17101bd9 }
.tm-return-gate {
  position: fixed;
  inset: 0;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 0;
  border: 0;
  overflow: hidden;
  background: #211531;
  color: #49301b;
  text-align: center;
  font-family: system-ui, sans-serif;
}
.tm-return-gate picture, .tm-return-gate img {
  display: block;
  width: 100%;
  height: 100%;
}
.tm-return-gate img { object-fit: cover }
.tm-return-copy {
  position: absolute;
  inset: auto 12px max(12px, env(safe-area-inset-bottom));
  box-sizing: border-box;
  width: min(calc(100% - 24px), 600px);
  margin-inline: auto;
  padding: 10px 16px 14px;
  border: 4px double #a56a24;
  border-radius: 19px;
  background: #fff3d7;
}
.tm-return-copy h2 { margin: 0 0 8px; font-size: clamp(16px, 3vmin, 24px); word-break: keep-all }
.tm-return-copy button { min-height: 44px; padding: 6px 22px; border: 1px solid #a56a24; border-radius: 99px; background: #ffd980; color: inherit; font: 800 16px system-ui, sans-serif; cursor: pointer }
@media (orientation: portrait) {
  .tm-country-panel.tm-country-result[open] { max-width: 460px }
}


.tm-return-copy {
  width: fit-content;
  max-width: calc(100% - 24px);
  padding: 8px 12px;
  box-shadow: 0 4px 16px #21153180;
}
.tm-return-copy h2 {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.tm-return-copy button { font-size: 15px }
.tm-result-details { padding: clamp(12px, 2vw, 22px); font-size: 14px }
.tm-result-details h2 { font-size: clamp(22px, 3vw, 30px) }
.tm-result-details nav button { font-size: 14px; padding: 8px 10px }
.tm-result-details .tmj-extra { margin-top: 10px }
.tm-result-details summary { cursor: pointer; font-weight: 700 }

#book:has(.tm-country-result[open]) {
  background: #211531 url('./assets/start-travel-poster.jpg?v=7') center / cover no-repeat;
}
.tm-country-result::backdrop { background: #17101b66 }
@media (orientation: portrait) {
  #book:has(.tm-country-result[open]) {
    background-image: url('./assets/home-start-portal-v2.png?v=1');
  }
}

#book:has(.tm-country-result[open]) > :not(.tm-country-result),
.stage:has(.tm-country-result[open]) > :not(#book) {
  visibility: hidden;
}
