/* Compact AMIC map controls. Provider attribution stays in Google's own panes. */
#amic-map-white .am-map-tools{position:absolute;top:12px;right:12px;z-index:4;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
#amic-map-white .am-map-tools[hidden],#amic-map-white .am-map-tools-status[hidden]{display:none}
#amic-map-white .am-map-buttons{background:#fff;border-radius:9px;box-shadow:0 2px 10px #25331a24;overflow:hidden;padding:3px}



#amic-map-white .am-map-buttons{display:flex;flex-direction:column}
#amic-map-white .am-map-buttons button{width:44px;height:44px;padding:10px;display:grid;place-items:center;border:0;background:#fff;color:#546344;border-radius:5px}
#amic-map-white .am-map-buttons button:nth-child(3){margin-top:3px;border-top:1px solid #e9ede3;border-radius:0 0 5px 5px}
#amic-map-white .am-map-tools button:hover{background:#f1f6e7}
#amic-map-white .am-map-tools button:focus-visible,#amic-map-white .am-picker-panel button:focus-visible,#amic-map-white .am-pick-field:focus-visible{outline:2px solid #76982c;outline-offset:-2px}
#amic-map-white .am-map-tools button:disabled{opacity:.45;cursor:default}
#amic-map-white .am-map-tools button[aria-busy=true] svg{animation:am-tools-spin 1.2s linear infinite}
#amic-map-white .am-map-tools-status{position:absolute;z-index:6;bottom:42px;left:12px;right:70px;max-width:370px;padding:12px 14px;background:#fff;border-radius:9px;box-shadow:0 3px 16px #25331a24;color:#4c593f;font-size:13px;line-height:1.45}
#amic-map-white .am-pin-code{display:none;position:absolute;top:4px;left:52px;width:56px;height:26px;box-sizing:border-box;padding:6px 3px;background:#fff;color:#42562e;border:1px solid #dce6cd;border-radius:5px;box-shadow:0 2px 5px #24341c17;font:400 12px/12px robotomedium,Arial,sans-serif;text-align:center;white-space:nowrap;pointer-events:none}
#amic-map-white .am-pin-code[data-side=left]{left:auto;right:52px}
#amic-map-white .am-user-location{position:absolute;width:18px;height:18px;border:3px solid white;border-radius:50%;background:#3984e2;box-shadow:0 0 0 1px #276fbd55,0 2px 6px #1d406644;transform:translate(-50%,-50%);pointer-events:none;z-index:3}
#amic-map-white .am-pick-field{display:flex;align-items:center;gap:8px;margin:4px 0 0 auto;padding:8px;min-height:40px;border:0;background:transparent;color:#586d3e;font:400 12px/1.3 robotomedium,Arial,sans-serif;border-radius:var(--am-radius-control,8px)}
#amic-map-white .am-pick-field svg{width:13px;height:13px}
#amic-map-white .am-pick-field:hover{color:#446321;background:#f2f6e9}
#amic-map-white .am-map-picker{position:absolute;inset:0;z-index:5;pointer-events:none}
#amic-map-white .am-picker-title{position:absolute;top:14px;left:14px;max-width:calc(100% - 190px);padding:9px 12px;background:white;border-radius:7px;box-shadow:0 2px 10px #25331a18;font:400 14px/1.3 robotomedium,Arial,sans-serif;color:#405631}
#amic-map-white .am-picker-target{position:absolute;left:50%;top:50%;width:38px;height:48px;transform:translate(-50%,-100%);filter:drop-shadow(0 3px 4px #25331a33)}
#amic-map-white .am-picker-target>svg{width:38px;height:48px;fill:#afd03d;stroke:#fff;stroke-width:1.5}
#amic-map-white .am-picker-target>span{position:absolute;left:14px;bottom:-4px;width:10px;height:4px;background:#314b2880;border-radius:50%}
#amic-map-white .am-picker-panel{position:absolute;bottom:44px;left:50%;transform:translateX(-50%);width:calc(100% - 28px);max-width:350px;padding:14px;background:#fff;border-radius:12px;box-shadow:0 4px 25px #25331a26;pointer-events:auto}
#amic-map-white .am-picker-panel p{margin:0 0 12px;color:#68745e;font-size:13px;line-height:1.4}
#amic-map-white .am-picker-panel>div{display:flex;gap:8px}
#amic-map-white .am-picker-panel button{min-height:42px;flex:1;padding:10px;border:0;border-radius:6px;background:#f1f4ec;color:#50613c;font:400 13px/1.2 robotomedium,Arial,sans-serif}
#amic-map-white .am-picker-panel [data-pick-confirm]{background:#afd03d;color:#2d421c;flex:1.5}
#amic-map-white[data-picking=true] .am-search-area{display:none}
#amic-map-white[data-picking=true] .am-aside{opacity:.4;pointer-events:none}
#amic-map-white[data-picking=true] .am-overlay button{pointer-events:none;opacity:.45}
.am-mobile-pick{display:flex;align-items:center;justify-content:center;gap:7px;margin:8px 16px 0;padding:10px;border:0;border-radius:7px;background:#edf4de;color:#4c682b;font:400 13px/1.3 robotomedium,Arial,sans-serif}
.am-mobile-pick svg{width:18px;height:18px}
@container amic (max-width:700px){
 /* Keep Google's viewport measurable while the form covers the map. A zero-size
    container can discard raster tiles when the picker restores its camera. */
 #amic-map-white .am-workspace{position:relative}
 #amic-map-white[data-mobile-view=list]:not([data-view=detail]):not([data-picking=true]) .am-map{display:block;position:absolute;top:60px;left:0;right:0;bottom:0;height:auto;visibility:hidden;pointer-events:none}
 
 #amic-map-white .am-map-buttons button{width:44px;height:44px}
 #amic-map-white[data-view=detail][data-sheet=expanded] .am-map-tools{display:none}
 #amic-map-white[data-picking=true] .am-workspace{display:block;height:100%;min-height:0}
 #amic-map-white[data-picking=true] .am-aside{display:none}
 #amic-map-white[data-picking=true] .am-map{display:block;position:relative;width:100%;height:100%;min-height:0}
}
@keyframes am-tools-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#amic-map-white .am-map-tools button[aria-busy=true] svg{animation:none}}

#amic-map-white:not([data-map-ready=true]) .am-pick-field{display:none}

@media(max-width:992px),(pointer:coarse){
 #amic-map-white .am-pick-field{min-height:44px}
 .am-mobile-pick{min-height:44px}
}

/* A compact inline explanation leaves useful space for the fallback catalogue. */
#amic-map-white .am-map-unavailable{display:flex;flex:none;align-items:center;gap:12px;max-width:100%;margin:0;padding:8px 16px;background:var(--am-pale);border-bottom:1px solid var(--am-line);color:#4b5940;text-align:left;font:400 13px/1.45 robotomedium,Arial,sans-serif}
#amic-map-white .am-map-unavailable>svg{flex:none;width:20px;height:20px}
#amic-map-white .am-map-unavailable>span,#amic-map-white .am-map-unavailable>p{flex:1;min-width:0;margin:0}
#amic-map-white .am-map-unavailable button,#amic-map-white .am-map-unavailable a{flex:none;width:auto;min-height:44px;margin:0;padding:8px 12px;border-radius:var(--am-radius-control,8px);white-space:normal;font-size:12px}

/* Low desktop windows keep list scrolling inside the available workspace. */
@media(min-width:993px) and (max-height:650px){
 body.amic-map-page{height:100dvh;min-height:0}
 .amic-map-page .amic-main{min-height:0}
 .amic-map-page #amic-map-white{height:100%;min-height:0}
 body.amic-map-page #amic-map-white .am-workspace{height:100%;min-height:0}
}

/* Short landscape screens reuse the existing Map/List action to collapse the
   sidebar. The map and its attribution keep a real, bounded grid area. */
@media(max-width:992px) and (max-height:500px) and (orientation:landscape){
 body.amic-map-page{height:100dvh;min-height:0;overflow:hidden}
 .amic-map-page .amic-main,.amic-map-page:has(#amic-map-white[data-view=detail][data-sheet=expanded]) .amic-main{display:flex;flex:1;min-height:0;padding:0}
 .amic-map-page #amic-map-white{width:100%;height:100%;min-height:0}
 .amic-map-page .amic-site-footer,.amic-map-page .amic-footer-block{display:none}
 .amic-map-page .amic-title-band{display:none}
 body.amic-map-page #amic-map-white .am-workspace{position:relative;display:grid;grid-template-columns:320px minmax(0,1fr);grid-template-rows:52px auto minmax(0,1fr);width:100%;height:100%;min-height:0;overflow:hidden}
 #amic-map-white .am-aside{display:contents}
 #amic-map-white .am-top{grid-column:1/-1;grid-row:1;display:flex;min-height:52px;height:52px;padding:4px 12px;gap:12px;z-index:6}
 #amic-map-white .am-modes{display:grid;flex:1;max-width:320px;width:auto;gap:4px}
 #amic-map-white .am-modes button{min-height:44px;height:44px;font-size:12px}
 #amic-map-white .am-view{display:flex;margin-left:auto;min-width:80px;min-height:44px;height:44px;padding:8px 12px;border-radius:8px;border-color:#ccd5be;font:400 13px/1.3 robotomedium,Arial,sans-serif}
 #amic-map-white .am-toolbar{grid-column:1;grid-row:2;min-width:0;padding:8px 12px}
 #amic-map-white .am-active-filters{max-height:48px}
 #amic-map-white .am-discovery{margin-top:0}
 #amic-map-white .am-pane,#amic-map-white[data-view=detail] .am-pane{display:flex;grid-column:1;grid-row:3;min-height:0;max-height:none;height:auto;overflow:hidden;margin:0;padding:0;border:0;border-radius:0;box-shadow:none}
 #amic-map-white .am-map,#amic-map-white[data-view=detail] .am-map,#amic-map-white[data-mobile-view=list]:not([data-view=detail]):not([data-picking=true]) .am-map{display:block;position:relative;inset:auto;grid-column:2;grid-row:2/4;width:100%;height:100%;min-height:0;visibility:visible;pointer-events:auto}
 #amic-map-white .am-panel-heading,#amic-map-white[data-view=detail] .am-panel-heading{min-height:48px;padding:4px 12px;flex:none}
 #amic-map-white .am-panel-heading h2{font-size:19px}
 #amic-map-white .am-panel-body,#amic-map-white[data-view=detail][data-sheet] .am-panel-body{flex:1;min-height:0;overflow:auto;padding:12px}
 #amic-map-white .am-panel-footer,#amic-map-white[data-view=detail] .am-panel-footer{padding:8px 12px;flex:none}
 #amic-map-white .am-detail-primary{min-height:44px;padding:8px 12px}
 #amic-map-white .am-service-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 #amic-map-white .am-catalog-suggestions{top:54px;left:12px;right:12px;max-height:180px}
 #amic-map-white .am-map-tools{top:8px;right:8px}
 #amic-map-white .am-map-buttons{flex-direction:row}
 #amic-map-white .am-map-buttons button:nth-child(3){margin:0;border-top:0;border-left:1px solid #e9ede3}
 #amic-map-white[data-view=detail] .am-sheet-toggle{display:none}
 #amic-map-white[data-view=detail][data-sheet=peek] .am-detail-address-pin{display:flex}
 #amic-map-white[data-view=detail][data-sheet=peek] .am-detail-services-section,#amic-map-white[data-view=detail][data-sheet=peek] .am-detail-section h3,#amic-map-white[data-view=detail][data-sheet=peek] .am-detail-address-copy>span{display:block}
 #amic-map-white[data-view=detail][data-sheet=peek] .am-detail-secondary,#amic-map-white[data-view=detail][data-sheet=peek] .am-external-link{display:flex}
 #amic-map-white[data-view=detail][data-sheet=expanded] .am-map-tools{display:flex}
 #amic-map-white[data-mobile-view=map] .am-toolbar,#amic-map-white[data-mobile-view=map] .am-pane{display:none}
 body.amic-map-page #amic-map-white[data-mobile-view=map] .am-workspace{grid-template-columns:minmax(0,1fr)}
 #amic-map-white[data-mobile-view=map] .am-map,#amic-map-white[data-view=detail][data-mobile-view=map] .am-map{grid-column:1;grid-row:2/4}
 body.amic-map-page #amic-map-white[data-picking=true] .am-workspace{display:block}
 #amic-map-white[data-picking=true] .am-aside{display:none}
 #amic-map-white[data-picking=true] .am-map{height:100%}
 #amic-map-white .am-picker-title{top:8px;left:8px;max-width:calc(100% - 164px);font-size:13px;padding:8px}
 #amic-map-white .am-picker-panel{bottom:36px;left:12px;transform:none;max-width:320px;padding:12px}
 #amic-map-white .am-picker-panel p{margin-bottom:8px}
 #amic-map-white .am-map-unavailable{padding:8px 12px}
}

/* The fallback deliberately becomes a catalogue, retaining the same form state. */
body.amic-map-page #amic-map-white[data-map-unavailable=true] .am-workspace{display:flex;flex-direction:column;min-height:0}
#amic-map-white[data-map-unavailable=true] .am-aside{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;box-shadow:none}
#amic-map-white[data-map-unavailable=true] .am-map,#amic-map-white[data-map-unavailable=true] .am-view{display:none!important}
#amic-map-white[data-map-unavailable=true] .am-top{order:0}
#amic-map-white[data-map-unavailable=true] .am-map-unavailable{order:1}
#amic-map-white[data-map-unavailable=true] .am-toolbar{order:2}
#amic-map-white[data-map-unavailable=true] .am-pane{display:flex;order:3;flex:1;min-height:0;max-height:none;border:0;border-radius:0;box-shadow:none}
#amic-map-white[data-map-unavailable=true] .am-modes{max-width:320px}
#amic-map-white[data-map-unavailable=true][data-view=results] .am-panel-body{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));align-content:start;align-items:start;gap:0;padding:0}
#amic-map-white[data-map-unavailable=true][data-view=results] .am-station-row{height:100%;border-top:1px solid var(--am-line);border-right:1px solid var(--am-line)}
#amic-map-white[data-map-unavailable=true] .am-panel-body>.am-empty{grid-column:1/-1}
#amic-map-white[data-map-unavailable=true]:not([data-view=results]) .am-panel-body,#amic-map-white[data-map-unavailable=true] .am-panel-footer{width:100%;max-width:720px;align-self:center}
@media(max-width:390px){
 #amic-map-white .am-map-unavailable{gap:8px;padding:8px 12px;font-size:12px}
 #amic-map-white .am-map-unavailable>svg{display:none}
 #amic-map-white .am-map-unavailable button{max-width:100px;padding:8px}
}
