.marketplace-location-control { position: relative; }
.marketplace-location-dropdown { position: absolute; top: calc(100% + .5rem); left: 0; z-index: 1300; display: none; width: min(420px, calc(100vw - 2rem)); overflow: hidden; border: 1px solid var(--default-border, #e2e8f0); border-radius: .75rem; background: #fff; box-shadow: 0 14px 30px rgba(15, 23, 42, .16); }
.marketplace-location-dropdown.is-open { display: block; }
.marketplace-location-option { display: flex; width: 100%; gap: .7rem; padding: .75rem .9rem; border: 0; background: #fff; color: #1e293b; text-align: left; }
.marketplace-location-option:hover, .marketplace-location-option.is-active { background: #f1f8f7; }
.marketplace-location-option + .marketplace-location-option { border-top: 1px solid #edf2f7; }
.marketplace-location-option__icon { flex: 0 0 auto; padding-top: .1rem; color: var(--primary-color, #0c3837); }
.marketplace-location-option__copy { min-width: 0; }
.marketplace-location-option__title { display: block; overflow: hidden; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.marketplace-location-option__subtitle { display: block; overflow: hidden; margin-top: .1rem; color: #64748b; font-size: .8rem; text-overflow: ellipsis; white-space: nowrap; }
.marketplace-location-hint { margin: 0; padding: .75rem .9rem; color: #64748b; font-size: .82rem; }
.marketplace-location-google-attribution { display: block; padding: .42rem .9rem; border-top: 1px solid #edf2f7; color: #64748b; font-size: .72rem; text-align: right; }
.marketplace-location-error { position: absolute; top: calc(100% + .1rem); left: .25rem; z-index: 1301; display: none; width: max-content; max-width: min(360px, calc(100vw - 2rem)); margin: 0; padding: .35rem .55rem; border-radius: .35rem; background: #fff1f2; color: #be123c; font-size: .75rem; box-shadow: 0 2px 6px rgba(15, 23, 42, .08); }
.marketplace-location-error.is-visible { display: block; }
@media (max-width: 575.98px) { .marketplace-location-dropdown { width: min(100vw - 1.5rem, 420px); } }
