/* r34.50.170 — Discovery phone Map InfoWindow as a compact decision surface.
 * Golden base: r168 user PASS; selectively retain r169 user-approved LIST typography.
 * Never modify Google Maps wrappers, marker lifecycle, sticky tabs, or global shell. */
.kgt-popup-label-short{display:none}

/* r169 good portion: user approved the list card typography; retain it verbatim. */
@media(max-width:700px){
 .public-map-card .public-map-card-category,
 .public-map-card .public-map-card-area{font-size:13px!important;line-height:1.5!important}
 .public-map-card .public-map-card-title strong{font-size:18px!important;line-height:1.45!important}
 .public-map-card .public-map-card-short-intro{font-size:16px!important;line-height:1.6!important;font-weight:500!important}
 .public-map-card .public-map-card-badges{gap:7px;margin-top:12px!important}
 .public-map-card .public-map-card-badge{font-size:13px!important;line-height:1.4!important;min-height:30px;padding:5px 10px;box-sizing:border-box}
 .public-map-card .public-map-card-address{font-size:14px!important;line-height:1.6!important}
 .public-map-card .public-map-card-facts :is(.public-map-card-hours,.public-map-card-closed,.public-map-card-phone){font-size:14px!important;line-height:1.6!important}
}
@media(min-width:701px) and (max-width:959px){
 .public-map-card .public-map-card-category,
 .public-map-card .public-map-card-area{font-size:13px!important;line-height:1.5!important}
 .public-map-card .public-map-card-title strong{font-size:18px!important}
 .public-map-card .public-map-card-short-intro{font-size:16px!important;line-height:1.6!important}
 .public-map-card .public-map-card-badge{font-size:13px!important;min-height:30px;padding:5px 10px;box-sizing:border-box}
 .public-map-card .public-map-card-address{font-size:14px!important;line-height:1.6!important}
 .public-map-card .public-map-card-facts :is(.public-map-card-hours,.public-map-card-closed,.public-map-card-phone){font-size:15px!important;line-height:1.6!important}
 .gm-style .public-map-marker-preview .public-map-marker-preview-badge{font-size:13px!important;line-height:1.4!important}
}

/* Smartphone: photo ABOVE full-width title and category. Override r136 photo/title
 * two-column grid ONLY for this popup and viewport; preserve photo placeholder. */
@media(max-width:700px){
 .gm-style .public-map-marker-preview,
 .gm-style .public-map-marker-preview:has(> .public-map-marker-preview-photo){
   display:grid!important;grid-template-columns:minmax(0,1fr)!important;
   width:min(304px,calc(100vw - 76px))!important;
   min-width:0!important;max-width:100%!important;
   gap:8px!important;box-sizing:border-box!important;
   padding:4px 2px 3px!important;
   max-height:min(54vh,440px)!important;
   overflow-y:auto!important;overflow-x:hidden!important;
   overscroll-behavior:contain;
 }
 .gm-style .public-map-marker-preview:has(> .public-map-marker-preview-photo)> .public-map-marker-preview-photo{
   grid-column:1!important;grid-row:auto!important;
   align-self:stretch!important;width:100%!important;height:auto!important;
   aspect-ratio:16/9!important;object-fit:cover!important;
   border-radius:10px!important;margin:0 0 2px!important;
 }
 .gm-style .public-map-marker-preview:has(> .public-map-marker-preview-photo)> .public-map-marker-preview-head,
 .gm-style .public-map-marker-preview>.public-map-marker-preview-head{
   grid-column:1!important;grid-row:auto!important;
   display:grid!important;grid-template-columns:minmax(0,1fr) 42px!important;
   grid-template-rows:auto auto!important;align-items:start!important;
   column-gap:8px!important;row-gap:3px!important;
   min-width:0!important;padding:0!important;
 }
 .gm-style .public-map-marker-preview:has(> .public-map-marker-preview-photo)> .public-map-marker-preview-head .public-map-marker-preview-name,
 .gm-style .public-map-marker-preview .public-map-marker-preview-head .public-map-marker-preview-name{
   grid-column:1!important;grid-row:1!important;
   font-size:17px!important;line-height:1.38!important;
   font-weight:750!important;overflow-wrap:anywhere!important;
   word-break:normal!important;min-width:0!important;
 }
 .gm-style .public-map-marker-preview .public-map-marker-preview-head>.public-map-marker-preview-category{
   grid-column:1!important;grid-row:2!important;
   align-self:start!important;white-space:normal!important;
   font-size:13px!important;line-height:1.4!important;
 }
 .gm-style .public-map-marker-preview .public-map-marker-preview-head>.public-map-marker-preview-bookmark{
   grid-column:2!important;grid-row:1/span 2!important;
   position:static!important;inset:auto!important;transform:none!important;
   align-self:center!important;justify-self:end!important;
   width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;
   margin:0!important;
 }
 .gm-style .public-map-marker-preview:has(> .public-map-marker-preview-photo)> :not(.public-map-marker-preview-photo):not(.public-map-marker-preview-head){
   grid-column:1!important;
 }
 /* Popup is a quick decision: no editorial intro, address or operating facts.
  * The list card and detail page continue to expose all those fields. */
 .gm-style .public-map-marker-preview> :is(.public-map-marker-preview-area,.public-map-marker-preview-address,.public-map-marker-preview-facts),
 .gm-style .public-map-marker-preview .public-map-marker-short-intro{display:none!important}
 .gm-style .public-map-marker-preview .public-map-marker-preview-badges{
   display:flex!important;flex-wrap:wrap!important;gap:5px!important;
   margin:3px 0 1px!important;min-width:0!important;
 }
 .gm-style .public-map-marker-preview .public-map-marker-preview-badge{
   font-size:13px!important;line-height:1.3!important;
   min-height:28px!important;padding:5px 9px!important;
 }
 .gm-style .public-map-marker-preview .public-map-marker-preview-actions,
 .gm-style .public-map-marker-preview .public-map-marker-preview-actions.has-official{
   grid-column:1!important;display:grid!important;gap:6px!important;
   margin:4px 0 2px!important;min-width:0!important;
 }
 .gm-style .public-map-marker-preview .public-map-marker-preview-actions a:is(.public-map-marker-preview-detail-action,.public-map-marker-preview-google,.public-map-marker-preview-official){
   min-height:44px!important;font-size:15px!important;font-weight:750!important;
   padding:7px 2px!important;white-space:nowrap!important;
 }
 .gm-style .public-map-marker-preview .public-map-marker-preview-actions .kgt-popup-label-full{display:none!important}
 .gm-style .public-map-marker-preview .public-map-marker-preview-actions .kgt-popup-label-short{display:inline!important}
}
/* Portrait tablet: full-width photo/title avoids the same cramped 42/58 split.
 * Preserve practical facts and full CTA labels (unlike compact phones). */
@media(min-width:701px) and (max-width:959px){
 .gm-style .public-map-marker-preview,
 .gm-style .public-map-marker-preview:has(> .public-map-marker-preview-photo){
   display:grid!important;grid-template-columns:minmax(0,1fr)!important;
   width:min(360px,calc(100vw - 100px))!important;min-width:0!important;
   max-width:100%!important;gap:8px!important;box-sizing:border-box!important;
   max-height:min(58vh,520px)!important;overflow-y:auto!important;
 }
 .gm-style .public-map-marker-preview:has(> .public-map-marker-preview-photo)>.public-map-marker-preview-photo{
   grid-column:1!important;grid-row:auto!important;width:100%!important;height:auto!important;
   aspect-ratio:16/9!important;object-fit:cover!important;margin:0!important;
 }
 .gm-style .public-map-marker-preview:has(> .public-map-marker-preview-photo)>.public-map-marker-preview-head,
 .gm-style .public-map-marker-preview>.public-map-marker-preview-head{
   grid-column:1!important;grid-row:auto!important;display:grid!important;
   grid-template-columns:minmax(0,1fr) 42px!important;grid-template-rows:auto auto!important;
   align-items:start!important;gap:4px 8px!important;min-width:0!important;
 }
 .gm-style .public-map-marker-preview .public-map-marker-preview-head .public-map-marker-preview-name{
   grid-column:1!important;grid-row:1!important;font-size:17px!important;
   line-height:1.4!important;overflow-wrap:anywhere!important;
 }
 .gm-style .public-map-marker-preview .public-map-marker-preview-head>.public-map-marker-preview-category{
   grid-column:1!important;grid-row:2!important;font-size:13px!important;
 }
 .gm-style .public-map-marker-preview .public-map-marker-preview-head>.public-map-marker-preview-bookmark{
   grid-column:2!important;grid-row:1/span 2!important;position:static!important;
   align-self:center!important;justify-self:end!important;inset:auto!important;
   width:40px!important;height:40px!important;margin:0!important;
 }
 .gm-style .public-map-marker-preview:has(> .public-map-marker-preview-photo)> :not(.public-map-marker-preview-photo):not(.public-map-marker-preview-head){grid-column:1!important}
 .gm-style .public-map-marker-preview .public-map-marker-preview-actions a:is(.public-map-marker-preview-detail-action,.public-map-marker-preview-google,.public-map-marker-preview-official){min-height:44px!important;font-size:14px!important}
}
/* 320px: narrow panes must stay readable without any button overflow. */
@media(max-width:350px){
 .gm-style .public-map-marker-preview .public-map-marker-preview-head .public-map-marker-preview-name{font-size:16px!important}
 .gm-style .public-map-marker-preview .public-map-marker-preview-actions a:is(.public-map-marker-preview-detail-action,.public-map-marker-preview-google,.public-map-marker-preview-official){font-size:14px!important}
}
