/* A small, consistent privacy layer for the explorer and standalone scenes. */
.ao-privacy-footer{position:fixed;right:18px;bottom:7px;z-index:60;display:flex;align-items:center;gap:14px;max-width:calc(100vw - 36px);padding:3px 7px;background:#06090edb;border-radius:3px;color:#c2cacd;font:10px/1.5 OrbitSans,"Helvetica Neue",Arial,sans-serif;letter-spacing:.015em}
.ao-privacy-footer a,.ao-privacy-footer button{color:inherit;text-decoration:none;background:none;border:0;padding:4px 0;min-height:24px;min-width:24px;font:inherit;cursor:pointer;white-space:nowrap}
.ao-privacy-footer a:hover,.ao-privacy-footer button:hover{color:#d6efe9;text-decoration:underline;text-underline-offset:3px}
.ao-consent-banner,.ao-consent-dialog{color:#f0eee6;background:#0b121c;border:1px solid #badfd747;border-radius:8px;box-shadow:0 12px 55px #0009;font:13px/1.65 OrbitSans,"Helvetica Neue",Arial,sans-serif;letter-spacing:normal;text-align:left}
.ao-consent-banner{position:fixed;z-index:70;left:24px;bottom:38px;width:min(540px,calc(100vw - 48px));max-height:calc(100svh - 80px);overflow:auto;padding:23px 25px}
.ao-consent-kicker{font-size:9px!important;letter-spacing:.2em!important;color:#badfd7!important;margin:0 0 10px!important}
.ao-consent-copy h2{font-size:23px;line-height:1.2;font-weight:400;letter-spacing:-.035em;margin:0 0 13px;color:#f0eee6}
.ao-consent-copy p{font-size:12px;line-height:1.65;color:#c3cbd4;max-width:none;margin:0 0 12px}
.ao-consent-copy .ao-consent-note{font-size:11px;color:#b2c0c5;margin-bottom:12px}
.ao-consent-copy .ao-choice-status{color:#d4e9e3}
.ao-consent-details{font-size:11px;color:#badfd7;text-decoration:underline;text-underline-offset:3px}
.ao-consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
.ao-consent-actions button{appearance:none;width:100%;min-height:44px;border:1px solid #badfd770;border-radius:4px;background:#badfd710;color:#e8efeb;padding:10px 14px;font:12px/1.4 OrbitSans,"Helvetica Neue",Arial,sans-serif;letter-spacing:normal;cursor:pointer}
.ao-consent-actions button:hover{background:#badfd723;border-color:#badfd7}
.ao-consent-actions button:disabled{opacity:.48;cursor:default}
.ao-consent-dialog{position:fixed;z-index:80;width:min(520px,calc(100vw - 32px));max-height:calc(100svh - 48px);overflow:auto;padding:27px;margin:auto}
.ao-consent-dialog:not([open]){display:none}
.ao-consent-dialog::backdrop{background:#02050ab5;backdrop-filter:blur(4px)}
.ao-consent-close{display:block;margin:16px auto 0;background:none;color:#c3cbd4;border:0;padding:8px;font:11px/1.5 OrbitSans,"Helvetica Neue",Arial,sans-serif;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.ao-privacy-footer a:focus-visible,.ao-privacy-footer button:focus-visible,.ao-consent-banner a:focus-visible,.ao-consent-banner button:focus-visible,.ao-consent-dialog a:focus-visible,.ao-consent-dialog button:focus-visible{outline:2px solid #badfd7;outline-offset:4px}
.ao-consent-banner[hidden],.ao-consent-dialog[hidden]{display:none!important}
@media(max-width:650px){.ao-privacy-footer{left:14px;right:14px;bottom:max(5px,env(safe-area-inset-bottom));justify-content:center;max-width:none;font-size:10px;gap:18px}.ao-consent-banner{left:14px;bottom:calc(37px + env(safe-area-inset-bottom));width:calc(100vw - 28px);max-height:calc(100svh - 74px - env(safe-area-inset-bottom));padding:19px}.ao-consent-copy h2{font-size:22px}.ao-consent-dialog{padding:23px}.ao-consent-actions{gap:9px}.ao-consent-actions button{font-size:11px;padding:10px 8px}}
@media(prefers-reduced-motion:reduce){.ao-consent-dialog::backdrop{backdrop-filter:none}}

/* Reserve a small footer lane only in top-level pages using these controls. */
.ao-privacy-controls #overview .destination-shelf{bottom:calc(42px + env(safe-area-inset-bottom))}
.ao-privacy-controls #world-view .world-bottom{bottom:calc(44px + env(safe-area-inset-bottom))}
.ao-privacy-controls .narration-play,.ao-privacy-controls #narration-play{bottom:max(4%,calc(42px + env(safe-area-inset-bottom)))}
@media(max-width:650px){
 .ao-privacy-controls #world-view .destination-sky{bottom:calc(118px + env(safe-area-inset-bottom))}
}
@media(max-height:650px) and (max-width:650px){
 .ao-privacy-controls #world-view .destination-sky{bottom:calc(96px + env(safe-area-inset-bottom))}
}
