[data-hk-shopping-country][hidden] { display: none !important; }
.hk-shopping-country { position: relative; color: #143d34; font-family: Arial, Helvetica, sans-serif; }
.hk-shopping-country__summary { display: flex; align-items: baseline; gap: .5rem; }
.hk-shopping-country__label { margin: 0; font: 700 .92rem/1.4 Arial, Helvetica, sans-serif; }
.hk-shopping-country__label strong { color: inherit; font-weight: 800; }
/* Deliberately a minor corrective control, not a commerce call to action. */
.hk-shopping-country__change { appearance: none; border: 0; border-bottom: 1px solid currentColor; border-radius: 0; background: transparent; color: currentColor; padding: 0; font: 600 .74rem/1.4 Arial, Helvetica, sans-serif; text-decoration: none; cursor: pointer; opacity: .84; }
.hk-shopping-country__change:hover, .hk-shopping-country__change:focus-visible { opacity: 1; }
.hk-shopping-country__change:focus-visible, .hk-shopping-country__save:focus-visible, .hk-shopping-country__close:focus-visible, .hk-shopping-country__attribution a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.hk-shopping-country__panel { position: absolute; z-index: 40; right: 0; bottom: calc(100% + .65rem); width: min(20rem, calc(100vw - 2rem)); padding: 1rem; border: 1px solid rgba(14, 41, 36, .24); background: #fffdf8; color: #143d34; box-shadow: 0 14px 32px rgba(14, 41, 36, .22); }
.hk-shopping-country__panel label { display: block; color: #143d34; font: 800 .9rem/1.3 Arial, Helvetica, sans-serif; }
.hk-shopping-country__panel select { display: block; width: 100%; min-height: 42px; margin-top: .45rem; border: 1px solid #61746b; background: #fff; color: #143d34; padding: .45rem; font: 400 1rem Arial, Helvetica, sans-serif; }
.hk-shopping-country__panel select[aria-invalid="true"] { border-color: #8a3c2f; box-shadow: 0 0 0 1px #8a3c2f; }
.hk-shopping-country__panel p { margin: .8rem 0; color: #61746b; font: 400 .88rem/1.45 Arial, Helvetica, sans-serif; }
.hk-shopping-country__actions { display: flex; gap: .5rem; flex-wrap: wrap; }
.hk-shopping-country__save, .hk-shopping-country__close { appearance: none; border: 1px solid currentColor; border-radius: 0; padding: .48rem .66rem; font: 700 .8rem/1 Arial, Helvetica, sans-serif; cursor: pointer; }
.hk-shopping-country__save { background: #0e2924; border-color: #0e2924; color: #fffdf8; }
.hk-shopping-country__save:hover, .hk-shopping-country__save:focus-visible { background: #2e6656; border-color: #2e6656; }
.hk-shopping-country__close { background: transparent; color: #143d34; }
.hk-shopping-country__attribution { margin: .25rem 0 0; font: 400 .66rem/1.35 Arial, Helvetica, sans-serif; opacity: .8; }
.hk-shopping-country__attribution a { color: inherit; }

/* Present global footer route. */
.hk-shopping-country--footer { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .25rem .7rem; grid-column: 1 / -1; padding-top: .3rem; color: #dfe8dc; }
.hk-shopping-country--footer .hk-shopping-country__label { color: #dfe8dc; font-size: .82rem; }
.hk-shopping-country--footer .hk-shopping-country__label strong { color: #fffdf8; }
.hk-shopping-country--footer .hk-shopping-country__attribution { flex-basis: 100%; text-align: right; color: #dfe8dc; }

/* Reusable module. It is rendered only beside future approved shopping results. */
.hk-shopping-country--module { margin: 0 0 .85rem; padding: .85rem 0; border-top: 1px solid rgba(14, 41, 36, .18); border-bottom: 1px solid rgba(14, 41, 36, .18); }
.hk-shopping-country--module .hk-shopping-country__panel { top: calc(100% + .55rem); bottom: auto; }

@media (max-width: 760px) {
  .hk-shopping-country__summary { align-items: baseline; flex-wrap: wrap; gap: .25rem .5rem; }
  .hk-shopping-country__panel { right: auto; left: 0; bottom: calc(100% + .65rem); }
  .hk-shopping-country--footer { justify-content: flex-start; }
  .hk-shopping-country--footer .hk-shopping-country__attribution { text-align: left; }
  .hk-shopping-country--module .hk-shopping-country__panel { top: calc(100% + .55rem); bottom: auto; }
}
