#location-dialog { width: min(354px, calc(100vw - 72px)); max-height: calc(100dvh - 40px); margin: auto; overflow: auto; padding: 20px 15px 16px; border: 1px solid rgba(255,255,255,.85); border-radius: 35px; background: linear-gradient(145deg, rgba(255,255,255,.65), rgba(236,238,242,.57)); color: #111; box-shadow: inset 0 1px 1px #fff, 0 12px 45px #10152212; -webkit-backdrop-filter: blur(30px) saturate(150%); backdrop-filter: blur(30px) saturate(150%); font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif; }
#location-dialog::backdrop { background: rgba(36,43,53,.32); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }
.location-icon { position: relative; margin: 0 0 27px 10px; width: 64px; height: 64px; border-radius: 18px; background: linear-gradient(150deg, #38acff, #0075ec); box-shadow: inset 0 1px 2px #ffffff88, 0 2px 5px #0075ec16; }
.location-icon svg { display: block; width: 70px; height: 70px; overflow: visible; }
#location-dialog h2 { margin: 0 10px 12px; font-size: 18px; line-height: 1.45; letter-spacing: -.3px; font-weight: 600; text-wrap: pretty; }
#location-dialog h2:focus { outline: none; }
#location-description { margin: 0 10px 20px; font-size: 13px; line-height: 1.6; color: #464a50; }
#location-dialog .controls { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin: 0; }
#location-dialog button { min-width: 0; min-height: 48px; padding: 10px 8px; border: 0; border-radius: 999px; background: rgba(93,99,111,.15); color: #111; font: 400 20px/1.4 -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif; transition: background .15s, transform .15s; }
#location-dialog button:hover { background: rgba(93,99,111,.21); transform: none; }
#location-dialog #share-location { background: #0075ec; color: #fff; }
#location-dialog #share-location:hover { background: #0062cc; }
#location-dialog button:active { transform: scale(.97); }
#location-dialog button:focus { outline: none; }
#location-dialog button:focus-visible { outline: 3px solid #0075ec; outline-offset: 3px; }
@media (forced-colors: active) { #location-dialog, #location-dialog button { border: 1px solid CanvasText; } }
@media (prefers-reduced-motion: reduce) { #location-dialog button { transition: none; } }

.location-access{border-top:1px solid #ffffff30;margin-top:18px;padding-top:15px;font-size:11px;color:#b8c5d4}.location-access button{color:inherit;padding:0;text-decoration:underline}.location-access button:disabled{opacity:.6}.location-access p{margin:6px 0 0}#result:empty{display:none}
