body.directions-open{overflow:hidden}
.directions-dialog{position:fixed;inset:0;margin:auto;width:min(380px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:24px;border:0;border-radius:8px;overflow:auto;background:#fff;color:#2d2d2b;font-family:inherit;line-height:1.5;box-shadow:0 16px 48px #0003}
.directions-dialog::backdrop{background:#12100dbb}
.directions-dialog h2{margin:0 44px 4px 0;font-size:22px;font-weight:600;line-height:1.3;letter-spacing:0;overflow-wrap:anywhere}
.directions-dialog p{margin:0 36px 20px 0;font-size:14px;line-height:1.5;color:#62615f}
.directions-dialog .directions-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:6px;background:transparent;color:inherit;cursor:pointer}
.directions-dialog .directions-close:hover{background:#f2f2f0}
.directions-dialog svg{width:22px;height:22px;flex-shrink:0}
.directions-providers{display:grid;gap:10px}
.directions-dialog .directions-provider{display:grid;grid-template-columns:24px minmax(0,1fr) 20px;align-items:center;gap:12px;min-height:64px;padding:14px;border:1px solid #dedbd7;border-radius:6px;background:#fff;color:#2d2d2b;text-decoration:none;font-size:16px;font-weight:500;line-height:1.4}
.directions-provider>svg:first-child{color:#c53b0b}
.directions-provider>svg:last-child{width:18px;height:18px;color:#62615f}
.directions-dialog .directions-provider:hover{background:#fff6eb;border-color:#c53b0b}
.directions-provider span{overflow-wrap:anywhere}
.directions-dialog :focus-visible{outline:3px solid #c53b0b;outline-offset:3px;scroll-margin:8px}
@media(max-width:360px){.directions-dialog{padding:20px}.directions-dialog h2{font-size:20px}.directions-dialog .directions-provider{padding:12px;gap:10px}}
