/* Embedded only in More > Settings. All rules are scoped to this section. */
.location-settings { color: #343b30; background: #fffaf2; border: 1px solid #ded5c3; border-radius: 14px; padding: 16px; margin-block: 16px; font-family: system-ui, sans-serif; line-height: 1.6; overflow-wrap: anywhere; }
.location-settings, .location-settings *, .location-settings *::before, .location-settings *::after { box-sizing: border-box; }
.location-settings[hidden], .location-settings [hidden] { display: none !important; }
.location-settings h3 { color: #24482c; font-size: calc(1.05rem * var(--ui-text-scale,1)); margin: 0 0 8px; }
.location-settings p { margin-block: 10px; }
.location-settings .ls-note { color: #62685c; font-size: calc(.85rem * var(--ui-text-scale,1)); }
.location-settings .ls-current, .location-settings .ls-status { color: #24482c; font-weight: 600; }
.location-settings .ls-warning { color: #825b15; font-size: calc(.88rem * var(--ui-text-scale,1)); }
.location-settings .ls-status:empty, .location-settings .ls-warning:empty, .location-settings .ls-note:empty { display: none; }
.location-settings .ls-modes, .location-settings .ls-gps-actions, .location-settings .ls-city-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-block: 13px; }
.location-settings button, .location-settings input, .location-settings select { font: inherit; min-height: 44px; border-radius: 9px; }
.location-settings button { border: 1px solid transparent; background: #37663e; color: #fff; cursor: pointer; padding: 9px 14px; }
.location-settings .ls-modes button { flex: 1 1 120px; color: #24482c; background: #f7f6ef; border-color: #c8cbbd; }
.location-settings .ls-modes button[aria-pressed="true"] { background: #e3eddd; border-color: #37663e; box-shadow: inset 0 0 0 1px #37663e; }
.location-settings button:disabled { opacity: .6; cursor: default; }
.location-settings .ls-secondary { background: #e6ecdf; color: #24482c; }
.location-settings form { display: grid; gap: 8px; margin-block: 14px; }
.location-settings form p { margin-block: 3px; }
.location-settings label { font-size: calc(.9rem * var(--ui-text-scale,1)); }
.location-settings input, .location-settings select { width: 100%; min-width: 0; color: #29332b; background: #fff; border: 1px solid #c6c6b5; padding: 9px; font-size: calc(16px * var(--ui-text-scale,1)); }
.location-settings .ls-privacy { padding-top: 12px; border-top: 1px solid #ded5c3; }
.location-settings :focus-visible { outline: 3px solid #b28c3b; outline-offset: 3px; }
[data-theme="night"] .location-settings { background:#252821; color:#ede6d7; border-color:#655e4c; }
[data-theme="night"] .location-settings h3,[data-theme="night"] .location-settings .ls-current,[data-theme="night"] .location-settings .ls-status { color:#dde5cf; }
[data-theme="night"] .location-settings .ls-note { color:#cccbbd; }
[data-theme="night"] .location-settings .ls-warning { color:#e6c186; }
[data-theme="night"] .location-settings input,[data-theme="night"] .location-settings select,[data-theme="night"] .location-settings .ls-modes button { background:#1b201a; color:#ede6d7; border-color:#716c58; }
[data-theme="night"] .location-settings .ls-modes button[aria-pressed="true"] { background:#394b33; border-color:#9bad89; }

.location-settings [data-location-panel="city"], .location-settings form, .location-settings .ls-city-actions > * { min-width: 0; }
.location-settings .ls-city-results { display: grid; gap: 7px; list-style: none; padding: 3px; margin: 0; max-block-size: 19rem; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
.location-settings .ls-city-results li { min-width: 0; margin: 0; padding: 0; }
.location-settings .ls-city-result { width: 100%; min-height: 48px; text-align: start; white-space: normal; overflow-wrap: anywhere; color: #24482c; background: #f7f6ef; border-color: #c8cbbd; }
.location-settings .ls-city-result[aria-pressed="true"] { background: #e3eddd; border-color: #37663e; box-shadow: inset 0 0 0 1px #37663e; }
.location-settings .ls-city-selection { border-inline-start: 3px solid #37663e; padding: 7px 11px; background: #edf1e7; border-radius: 5px; }
.location-settings .ls-city-actions { margin-block: 5px; }
.location-settings .ls-city-actions > * { flex: 1 1 150px; }
.location-settings .ls-city-source { font-size: calc(.78rem * var(--ui-text-scale,1)); }
.location-settings .ls-city-source a { color: inherit; text-decoration: underline; text-underline-offset: .15em; }
[data-theme="night"] .location-settings .ls-city-result { background: #1b201a; color: #ede6d7; border-color: #716c58; }
[data-theme="night"] .location-settings .ls-city-result[aria-pressed="true"], [data-theme="night"] .location-settings .ls-city-selection { background: #394b33; border-color: #9bad89; }
[data-theme="night"] .location-settings .ls-secondary { color: #ede6d7; background: #454c3e; border-color: #716c58; }
@media (max-width: 360px) {
  .location-settings { padding: 12px; }
  .location-settings .ls-city-actions > * { flex-basis: 100%; }
}
