.country-suggestion {
  width: min(600px, calc(100% - 36px));
  max-height: calc(100dvh - 36px);
  padding: clamp(28px, 5vw, 48px);
  border: 0;
  border-radius: 40px 0;
  background: var(--ls-primary);
  color: var(--ls-white);
  box-shadow: var(--ls-shadow-soft);
  overflow-y: auto;
}
.country-suggestion::backdrop { background: rgb(0 21 24 / 65%); }
.country-suggestion h2 { margin: 22px 0 18px; font-size: clamp(1.7em, 4vw, 2.3em); line-height: 1.15; color: inherit; }
.country-suggestion h2 span { color: var(--ls-lime); }
.country-suggestion p { margin: 0 0 28px; }
.country-suggestion .country-suggestion__flag { display: block; width: 40px; height: 40px; margin: 0; }
.country-suggestion__close { position: absolute; top: 14px; right: 14px; display: grid; place-items: center; width: 44px; height: 44px; padding: 10px; background: transparent; color: var(--ls-cyan); border: 1px solid currentColor; border-radius: 50%; cursor: pointer; }
.country-suggestion__actions { display: grid; gap: 16px; justify-items: start; }
.country-suggestion__actions .ls-button { max-width: 100%; }
.country-suggestion__stay { padding: 8px 0; min-height: 44px; background: transparent; border: 0; color: inherit; text-align: left; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.country-suggestion :focus-visible { outline: 2px solid var(--ls-lime); outline-offset: 5px; }
body:has(.country-suggestion[open]) { overflow: hidden; }
