.visitor-location-required{overflow:hidden!important}
.visitor-location-dialog{box-sizing:border-box;width:min(430px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #e5c890;border-radius:24px;background:#fff9ed;color:#542439;box-shadow:0 24px 90px #30091d70;overflow:auto;font-family:'Jost',system-ui,sans-serif;text-align:center}
.visitor-location-dialog::backdrop{background:#360b28c7;backdrop-filter:blur(5px)}
.visitor-location-card{padding:28px 26px 24px}
.visitor-location-kicker{font-size:10px;font-weight:600;letter-spacing:.15em;color:#926b44}
.visitor-location-symbol{display:grid;place-items:center;width:76px;height:76px;margin:22px auto 16px;border:1px solid #e6c78d;border-radius:50%;background:#f8edd6;color:#a41b4a}
.visitor-location-symbol svg{width:42px;height:42px}
.visitor-location-dialog h1{margin:0 0 12px;font-size:27px;line-height:1.2;font-weight:600;letter-spacing:-.6px;color:#812344}
.visitor-location-dialog p{font-size:14px;line-height:1.65;margin:0}
.visitor-location-dialog .visitor-location-status{margin:20px 0 16px;padding:12px;border:1px solid #e9d8ba;border-radius:12px;background:#f8efdf;font-size:13px}
.visitor-location-status[data-tone=error]{color:#922c39;background:#fcebec;border-color:#ebc4c7}
.visitor-location-allow{width:100%;min-height:50px;border:1px solid #931440;border-radius:13px;background:#a7194a;color:#fff8e8;font:600 14px 'Jost',system-ui,sans-serif;padding:12px 16px;cursor:pointer}
.visitor-location-allow:disabled{opacity:.65;cursor:wait}
.visitor-location-skip{width:100%;min-height:44px;margin-top:10px;border:1px solid #b58b77;border-radius:13px;background:transparent;color:#812344;font:600 14px 'Jost',system-ui,sans-serif;padding:10px 16px;cursor:pointer}
.visitor-location-skip:hover{background:#f8edd6}
.visitor-location-dialog .visitor-location-note{margin:15px 0 8px;color:#887261;font-size:11px}
.visitor-location-privacy{display:inline-flex;align-items:center;justify-content:center;min-height:44px;color:#8a2949;font-size:12px;text-underline-offset:3px}
.visitor-location-dialog :focus-visible{outline:2px solid #a7194a;outline-offset:3px}
@media(max-width:359px){.visitor-location-card{padding:24px 19px 18px}.visitor-location-dialog h1{font-size:25px}}
@media(prefers-reduced-motion:reduce){.visitor-location-dialog::backdrop{backdrop-filter:none}}
