/* Shared download placement. Badge artwork is Apple's unmodified official black asset. */
[data-vifi-download]{width:100%;max-width:1320px;margin:0 auto;padding:var(--vifi-space-xl) var(--vifi-space-xxl) var(--vifi-space-xxxl);box-sizing:border-box}
.vifi-download-content{display:flex;align-items:center;justify-content:center;gap:var(--vifi-space-xxl);font:var(--vifi-font-size-label)/1.5 var(--vifi-font-family);color:var(--vifi-text)}
.vifi-download-badge{display:inline-flex;align-items:center;padding:var(--vifi-space-sm);min-height:60px;border:0!important;background:none!important}
.vifi-download-badge img{display:block;height:40px;width:auto;max-width:100%}
.vifi-download-qr{display:flex;align-items:center;gap:var(--vifi-space-md);margin:0;max-width:300px}
.vifi-download-qr img{display:block;background:var(--vifi-white);width:112px;height:112px;flex:none}
.vifi-download-qr figcaption{font:var(--vifi-font-size-caption)/1.5 var(--vifi-font-family);color:var(--vifi-text-secondary)}
.vifi-download-banner{display:flex;align-items:center;gap:var(--vifi-space-sm);position:relative;z-index:var(--vifi-z-sticky);box-sizing:border-box;width:100%;padding:var(--vifi-space-sm) var(--vifi-space-sm);background:var(--vifi-surface-raised);color:var(--vifi-text);border-bottom:1px solid var(--vifi-divider);font:var(--vifi-font-size-label)/1.35 var(--vifi-font-family)}
.vifi-download-banner>button{flex:none;font:var(--vifi-font-size-heading)/1 var(--vifi-font-family);color:var(--vifi-text-muted);background:none;border:0;min-width:32px;min-height:44px;padding:0;cursor:pointer}
.vifi-download-banner>img{flex:none;width:56px;height:56px;border-radius:var(--vifi-radius-lg)}
.vifi-download-banner>strong{flex:1;min-width:0;font-size:var(--vifi-font-size-label);font-weight:var(--vifi-font-weight-semibold);overflow-wrap:anywhere}
.vifi-download-banner>a{flex:none;max-width:100px;min-height:44px;display:flex;align-items:center;text-align:center;color:var(--vifi-focus);font-weight:var(--vifi-font-weight-bold);text-decoration:none;padding:0 var(--vifi-space-xs)}
.vifi-download-banner :is(a,button):focus-visible,.vifi-download-badge:focus-visible{outline:3px solid var(--vifi-focus);outline-offset:3px}
.vifi-download-banner :is(a,button):active{opacity:.65}
html[data-download-embed="app"] :is([data-vifi-download],.vifi-download-banner),html[data-download-platform="ios"] [data-vifi-download],html[data-download-platform="mobile"] [data-vifi-download]{display:none!important}
@media (max-width:767px){[data-vifi-download]{display:none!important}html.map-discovery #vifi-root{height:calc(100dvh - var(--vifi-download-banner-height,0px))}}

html[data-download-header="true"] [data-vifi-download]{display:none!important}
.vifi-download-menu{position:relative;display:block;flex:none;font:var(--vifi-font-size-label)/1.4 var(--vifi-font-family)}
.vifi-download-mobile{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;padding:var(--vifi-space-xs) var(--vifi-space-sm);border-radius:var(--vifi-radius-lg);background:var(--vifi-pink);color:var(--vifi-ink);font:inherit;font-weight:var(--vifi-font-weight-bold);white-space:nowrap;text-decoration:none}
.vifi-download-mobile:active{opacity:.65}
.vifi-download-menu>.download-trigger{display:none}
.vifi-download-menu>button,.vifi-download-popover>button{min-height:44px;padding:var(--vifi-space-xs) var(--vifi-space-sm);border:1px solid var(--vifi-border);border-radius:var(--vifi-radius-lg);background:var(--vifi-surface);color:var(--vifi-text);font:inherit;font-weight:var(--vifi-font-weight-bold);white-space:nowrap;cursor:pointer}
.vifi-download-popover{position:absolute;right:0;top:100%;width:220px;padding:var(--vifi-space-sm);border:1px solid var(--vifi-border);border-radius:var(--vifi-radius-lg);background:var(--vifi-surface);color:var(--vifi-text);z-index:var(--vifi-z-popover);box-shadow:var(--vifi-shadow-overlay)}
.vifi-download-popover[hidden]{display:none!important}
.vifi-download-popover .vifi-download-content{flex-direction:column;gap:var(--vifi-space-sm)}.vifi-download-popover figure{display:block}.vifi-download-popover>button{display:block;margin-left:auto}
.vifi-download-menu :is(a,button):focus-visible{outline:3px solid var(--vifi-focus);outline-offset:2px}
@media (min-width:1024px){.vifi-download-mobile{display:none}.vifi-download-menu>.download-trigger{display:block}.vifi-download-banner{display:none}.header>.header-search{min-width:100px;flex:1}.header>.language-selector{flex:none}}
html[data-download-embed="app"] .vifi-download-menu,html[data-download-platform="mobile"] .vifi-download-menu{display:none!important}

@media (min-width:1024px){.header,.top,.header-actions{flex-wrap:nowrap}}

.directions-picker{position:relative;display:inline-block}.directions-picker summary{cursor:pointer;color:var(--vifi-accent-text);padding:var(--vifi-space-xs) 0}.directions-options{display:flex;flex-direction:column;gap:var(--vifi-space-xs);padding:var(--vifi-space-sm);border:1px solid var(--vifi-tint-directions-line);border-radius:var(--vifi-radius-lg);background:var(--vifi-tint-field-surface)}.directions-picker:not([open]) .directions-options{display:none}.directions-options a{min-height:32px;display:flex;align-items:center}

/* RC8.7: desktop type inventory; mobile declarations above remain canonical. */
@media (min-width:1024px){
 .vifi-download-content,
 .vifi-download-qr figcaption,
 .vifi-download-banner,
 .vifi-download-banner>strong,
 .vifi-download-menu{font-size:var(--vifi-font-size-body);line-height:1.55}
}
@media (min-width:1024px){
 .vifi-download-menu>button,.vifi-download-popover>button,.directions-picker summary,.directions-options a{font-size:var(--vifi-font-size-body);min-height:44px}
 .vifi-download-popover{width:260px}
}

/* The shared directions list also serves home details and saved course stops. */
.directions-picker{max-width:100%;align-self:start}
.directions-picker>summary{box-sizing:border-box;min-height:44px;padding:var(--vifi-space-sm) var(--vifi-space-sm);border:1px solid var(--vifi-border);border-radius:var(--vifi-radius-lg);background:var(--vifi-surface-raised);color:inherit;cursor:pointer}
.directions-options{gap:0;padding:0;overflow:hidden}
.directions-options>a{box-sizing:border-box;min-height:44px;padding:var(--vifi-space-sm) var(--vifi-space-sm);gap:var(--vifi-space-xs);text-decoration:none;color:inherit}
.directions-options>a+a{border-top:1px solid var(--vifi-border)}
@media(max-width:767px){.directions-picker{display:block;width:100%}.directions-options{width:100%;box-sizing:border-box;margin-top:var(--vifi-space-xs)}}
