.location-guard-banner,.location-guard-modal{--lg-tint:#f4edff;--lg-ink:#49325d;--lg-muted:#705781;--lg-line:#dacee9;--lg-warm:#fff1e5;--lg-warm-ink:#775045}
.location-guard-banner{display:flex;align-items:center;gap:13px;border:1px solid var(--lg-line);background:var(--ui-surface);border-radius:15px;padding:14px 17px;margin:0 0 18px}
.location-guard-banner>span{display:grid;place-items:center;border:1px solid var(--lg-line);border-radius:11px;width:38px;height:38px;flex-shrink:0;color:var(--lg-ink);background:var(--lg-tint)}
.location-guard-banner>span>.icon{width:20px;height:20px}.location-guard-banner>div{min-width:0;flex:1}.location-guard-banner strong{display:block;font-size:12px;color:var(--ui-ink);line-height:1.6}.location-guard-banner small{display:block;font-size:10px;color:var(--lg-muted);line-height:1.8;margin-top:3px}.location-guard-banner>.button{font-size:11px;flex-shrink:0;min-height:40px;padding:10px 13px}
.location-guard-status{display:flex;align-items:flex-start;gap:14px;background:var(--lg-tint);border:1px solid var(--lg-line);border-radius:17px;padding:20px;margin:23px 0}.location-guard-status>.icon{color:#7952e8;width:25px;height:25px;flex-shrink:0}.location-guard-status strong{color:var(--lg-ink);font-size:14px;line-height:1.6}.location-guard-status p{color:var(--lg-muted);font-size:12px;line-height:1.85;margin:8px 0 0}
.location-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:21px 0}.location-check-grid>div{border:1px solid var(--lg-line);border-radius:12px;padding:17px;min-width:0}.location-check-grid span{display:block;color:var(--lg-muted);font-size:7px;letter-spacing:1.2px;font-weight:700}.location-check-grid strong{display:block;color:var(--lg-ink);font-size:13px;margin-top:9px;line-height:1.6}.location-check-wide{grid-column:1/-1}
.location-restriction,.location-server-status{padding:18px;background:var(--lg-warm);border:1px solid var(--lg-line);border-radius:14px;margin:20px 0;font-size:11px;color:var(--lg-warm-ink);line-height:1.85}.location-restriction[hidden]{display:none}.location-server-status>span{display:flex;gap:8px;align-items:center;font-size:12px;font-weight:750;color:var(--lg-warm-ink)}.location-server-status .icon{width:17px;height:17px;flex-shrink:0}.location-server-status p{font-size:11px;line-height:1.85;margin:10px 0 0;color:var(--lg-warm-ink)}.location-privacy-note{margin-top:18px;font-size:10px!important;line-height:1.85!important}
.location-guard-banner[data-risk=true]{border-color:#bf8293}.location-guard-panel[data-risk=true] .location-guard-status{border-color:#bf8293;background:var(--lg-warm)}.locator-view[data-gps-review=true] .locator-sensor-note{color:#9a4860}.broadcast-location-check{margin-top:11px;font-size:11px;line-height:1.7}
:root[data-theme=dark] :is(.location-guard-banner,.location-guard-modal){--lg-tint:#32233f;--lg-ink:#e6cff7;--lg-muted:#c8b1d7;--lg-line:#5b426c;--lg-warm:#3c2932;--lg-warm-ink:#edc1b6}
:root[data-theme=dark] .location-guard-status>.icon{color:#d0aeff}:root[data-theme=dark] .locator-view[data-gps-review=true] .locator-sensor-note{color:#f4b5c7}
@media(max-width:600px){.location-guard-banner{padding:13px;gap:10px;flex-wrap:wrap}.location-guard-banner>span{width:34px;height:34px}.location-guard-banner strong{font-size:11px}.location-guard-banner small{font-size:9px}.location-guard-banner>.button{margin-left:44px;font-size:10px}.location-guard-status{padding:17px;gap:11px}.location-guard-status strong{font-size:13px}.location-guard-status p{font-size:11px}.location-check-grid>div{padding:15px}.location-check-grid strong{font-size:12px}.location-server-status>span{font-size:11px}.location-server-status p{font-size:11px}.location-check-grid span{font-size:7px}}
@media(max-width:360px){.location-guard-banner>.button{margin-left:0;width:100%}.location-guard-banner strong{font-size:10px}.location-guard-banner small{font-size:8px}.location-guard-status{padding:15px}.location-guard-status>.icon{width:21px;height:21px}.location-check-grid strong{font-size:11px}.location-check-grid span{letter-spacing:.6px}.location-server-status{padding:15px}}

/* Keep the location status legible without pushing the map off screen. */
.location-guard-banner{background:transparent;padding:10px 12px;margin-bottom:12px;border-color:var(--ui-line)}
.location-guard-banner strong{font-size:13px;line-height:1.5}
.location-guard-banner small{font-size:12px;line-height:1.5;color:var(--ui-muted)}
.location-guard-banner>.button{min-width:44px;min-height:44px}
@media(max-width:800px){
 .location-guard-banner{gap:10px;flex-wrap:nowrap;padding:10px 12px}
 .location-guard-banner>span{width:34px;height:34px}
 .location-guard-banner strong{font-size:12px}
 .location-guard-banner small{display:none}
 .location-guard-banner[data-risk=true] small{display:block;font-size:11px}
 .location-guard-banner>.button{font-size:0;gap:0;margin:0;width:44px;height:44px;padding:10px;flex-shrink:0}
 .location-guard-banner>.button>.icon{width:20px;height:20px}
 .location-guard-status p,.location-server-status p{font-size:13px}
}
