/* Shared location notice: native dialog provides focus containment and Esc. */
.privacy-location-dialog{box-sizing:border-box;width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow:auto;padding:24px;border:1px solid #bdd1db;border-radius:12px;background:#fff;color:#172f3b;line-height:1.65}
.privacy-location-dialog::backdrop{background:#102c3d99}.privacy-location-dialog h2{font-size:22px;padding-right:32px}.privacy-location-dialog p{font-size:14px}.privacy-location-dialog a{color:#085ba3;text-decoration:underline}
.privacy-location-dialog #location-close{position:absolute;right:12px;top:12px;min-width:44px;min-height:44px;font-size:26px;border:0;background:#eef3f7;color:#172f3b}.location-actions{display:flex;gap:10px;flex-wrap:wrap}.location-actions button,#privacy-location-stop{min-height:44px;padding:10px 14px;border:1px solid #4b6978;border-radius:6px;background:#f2f7fa;color:#153d53}.location-actions #location-use{background:#12577b;color:#fff}.location-actions button:disabled{opacity:.55}#privacy-location-stop{position:fixed;right:12px;bottom:12px;z-index:1100} .privacy-location-dialog button:focus-visible,#privacy-location-stop:focus-visible{outline:3px solid #d58300;outline-offset:3px}

@media(max-width:600px){.privacy-location-dialog{padding:18px}.privacy-location-dialog p{font-size:13px;line-height:1.5;margin:10px 0}.location-actions{position:sticky;bottom:0;background:#fff;padding:8px 0;display:grid;grid-template-columns:1fr auto;gap:8px}.location-actions button{font-size:14px;padding:10px}.privacy-location-dialog h2{font-size:20px}}

.privacy-location-dialog summary{cursor:pointer;color:#085ba3;padding:8px 0;font-size:14px}.privacy-location-dialog details{margin:12px 0}.privacy-location-dialog #location-readiness:empty{display:none}.privacy-location-dialog summary:focus-visible{outline:3px solid #d58300;outline-offset:3px}body:not([data-location-active]) #privacy-location-stop{display:none}
