/* PlazaVirtual V3.21.22 — densidad móvil compacta y legible */
.pv-location-action-short,.pv-food-search-icon,.pv-food-pickup-short{display:none}

@media (max-width:767px){
  /* Cabecera y aviso de ubicación */
  header.sticky>.pv-shell{height:52px!important;padding-left:12px!important;padding-right:12px!important;gap:8px!important}
  header.sticky>.pv-shell>a[aria-label="PlazaVirtual, inicio"]>span:first-child{width:36px!important;height:36px!important;border-radius:11px!important}
  header.sticky>.pv-shell>a[aria-label="PlazaVirtual, inicio"] .material-icons-round{font-size:21px!important}
  header.sticky form[role="search"] input{height:38px!important;padding-top:7px!important;padding-bottom:7px!important;font-size:13px!important;border-radius:12px!important}
  header.sticky form[role="search"] button{width:32px!important;height:32px!important;border-radius:9px!important}
  header.sticky .pv-mobile-header-cart{width:38px!important;height:38px!important;border-radius:11px!important;box-shadow:0 2px 8px rgba(15,23,42,.05)}
  header.sticky .pv-mobile-header-cart>.material-icons-round{font-size:21px!important}
  header.sticky .pv-mobile-header-cart>[data-pv-cart-count]{top:-4px!important;right:-4px!important;min-width:18px!important;height:18px!important;padding:0 4px!important;font-size:8px!important;border:2px solid #fff}
  .pv-location-notice>.pv-shell{padding:7px 12px!important;gap:8px!important;font-size:11px!important;line-height:1.25!important}
  .pv-location-notice strong,.pv-location-notice a{white-space:nowrap;overflow-wrap:normal!important}
  .pv-location-detail,.pv-location-action-full{display:none!important}
  .pv-location-action-short{display:inline!important}

  /* Separaciones y controles comunes */
  main>.pv-shell{padding-left:12px!important;padding-right:12px!important;padding-top:12px!important;padding-bottom:16px!important}
  main input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),main select{min-height:42px;padding-top:9px!important;padding-bottom:9px!important;border-radius:12px!important}
  main textarea{min-height:92px;padding:11px!important;border-radius:12px!important}
  main .pv-card,main .pv-card-flat{border-radius:18px}
  .pv314-promo-card{border-radius:16px}
  .pv314-promo-card>img,.pv314-promo-placeholder{height:112px}

  /* Inicio Super App */
  .pv-launcher{padding-bottom:72px!important}
  .pv-launcher .pv-launch-hero{border-radius:20px!important;padding:16px!important}
  .pv-launcher .pv-launch-kicker{padding:4px 9px!important;font-size:9px!important;line-height:1.2!important;white-space:nowrap;overflow-wrap:normal!important}
  .pv-launcher .pv-launch-hero h1{font-size:24px!important;line-height:1.08!important;margin-top:9px!important}
  .pv-launcher .pv-launch-copy{font-size:12px!important;line-height:1.4!important;margin-top:7px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .pv-launcher .pv-launch-location{margin-top:11px!important;padding:7px 11px!important;border-radius:12px!important;font-size:11px!important;line-height:1!important;white-space:nowrap;overflow-wrap:normal!important}
  .pv-launcher .pv-launch-location .material-icons-round{font-size:17px!important}
  .pv-launcher section.mt-5{margin-top:10px!important}
  .pv-launcher .pv-launch-grid{gap:8px!important}
  .pv-launcher .pv-launch-card{min-height:146px!important;border-radius:18px!important;padding:11px!important;gap:7px!important;box-shadow:0 6px 18px rgba(15,23,42,.05)!important}
  .pv-launcher .pv-launch-icon{width:41px!important;height:41px!important;border-radius:13px!important;flex:0 0 auto}
  .pv-launcher .pv-launch-icon .material-icons-round{font-size:22px!important}
  .pv-launcher .pv-launch-badge{max-width:78px;padding:4px 7px!important;font-size:8.5px!important;line-height:1.1!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal!important}
  .pv-launcher .pv-launch-title{font-size:16px!important;line-height:1.15!important}
  .pv-launcher .pv-launch-desc{font-size:10.5px!important;line-height:1.35!important;margin-top:4px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .pv-launcher .pv-launch-open{font-size:11px!important;line-height:1!important}
  .pv-launcher .pv-launch-open .material-icons-round{font-size:17px!important}
  .pv-launcher .pv-launch-benefits{display:flex!important;gap:8px!important;overflow-x:auto;padding-bottom:3px;scroll-snap-type:x mandatory}
  .pv-launcher .pv-launch-benefit{flex:0 0 220px;padding:10px!important;border-radius:15px!important;gap:8px!important;scroll-snap-align:start}
  .pv-launcher .pv-launch-benefit>.material-icons-round{font-size:19px!important}
  .pv-launcher .pv-launch-benefit strong{font-size:11px!important}
  .pv-launcher .pv-launch-benefit span.text-xs{font-size:9px!important;line-height:1.3!important}

  /* Portada de comida */
  .pv-food-page .pv-food-hero{border-radius:20px!important;padding:15px!important}
  .pv-food-page .pv-food-hero>div>div:first-child{gap:5px!important}
  .pv-food-page .pv-food-hero>div>div:first-child>span{padding:4px 8px!important;font-size:9px!important;white-space:nowrap;overflow-wrap:normal!important}
  .pv-food-page .pv-food-hero h1{font-size:23px!important;line-height:1.12!important;margin-top:9px!important}
  .pv-food-page .pv-food-hero p{font-size:11px!important;line-height:1.35!important;margin-top:5px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .pv-food-page .pv-food-search{grid-template-columns:minmax(0,1fr) 42px!important;gap:6px!important;margin-top:11px!important}
  .pv-food-page .pv-food-search input{height:42px!important;font-size:12px!important;padding-left:38px!important;padding-right:9px!important;border-radius:12px!important}
  .pv-food-page .pv-food-search button{width:42px!important;height:42px!important;padding:0!important;border-radius:12px!important;display:flex;align-items:center;justify-content:center}
  .pv-food-search-label{display:none!important}
  .pv-food-search-icon{display:inline!important;font-size:20px!important}

  .pv-food-page .pv-food-results-head{margin-top:13px!important;align-items:center!important;gap:8px!important}
  .pv-food-results-head>div:first-child{min-width:0;flex:1}
  .pv-food-results-head p{font-size:8.5px!important;letter-spacing:.08em!important;white-space:nowrap;overflow-wrap:normal!important}
  .pv-food-results-head h2{font-size:18px!important;line-height:1.1!important;margin-top:3px!important;white-space:nowrap;overflow-wrap:normal!important}
  .pv-food-actions{flex-wrap:nowrap!important;gap:6px!important}
  .pv-food-actions>a{width:40px!important;height:40px!important;padding:0!important;border-radius:12px!important;display:flex!important;align-items:center!important;justify-content:center!important}
  .pv-food-actions .material-icons-round{font-size:20px!important}
  .pv-food-action-label{display:none!important}
  .pv-food-cart-count{position:absolute;top:-5px;right:-5px;min-width:17px!important;width:auto!important;height:17px!important;padding:0 4px!important;font-size:8px!important}

  .pv-food-page .pv-food-grid{grid-template-columns:1fr!important;gap:8px!important;margin-top:12px!important}
  .pv-food-page .pv-food-card{display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;min-height:126px;border-radius:17px!important;box-shadow:0 5px 16px rgba(15,23,42,.05)!important}
  .pv-food-page .pv-food-cover{width:112px!important;height:100%!important;min-height:126px!important;aspect-ratio:auto!important}
  .pv-food-page .pv-food-cover img{height:100%!important;object-fit:cover!important}
  .pv-food-page .pv-food-badges{top:6px!important;left:6px!important;right:5px!important;gap:4px!important;align-content:flex-start}
  .pv-food-page .pv-food-badges>span{padding:3px 5px!important;font-size:7px!important;line-height:1.1!important;white-space:nowrap;overflow-wrap:normal!important}
  .pv-food-pickup-full{display:none!important}
  .pv-food-pickup-short{display:inline!important}
  .pv-food-page .pv-food-content{padding:10px!important;display:flex;flex-direction:column;min-height:126px}
  .pv-food-page .pv-food-logo{width:34px!important;height:34px!important;border-radius:10px!important;border-width:2px!important;margin-top:0!important}
  .pv-food-page .pv-food-content h3{font-size:13px!important;line-height:1.2!important}
  .pv-food-page .pv-food-content h3+ p{font-size:9px!important;margin-top:2px!important}
  .pv-food-page .pv-food-content h3+ p .material-icons-round{font-size:11px!important}
  .pv-food-page .pv-food-description{display:none!important}
  .pv-food-page .pv-food-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:4px!important;margin-top:7px!important}
  .pv-food-page .pv-food-stats>div{padding:4px!important;border-radius:8px!important}
  .pv-food-page .pv-food-stats>div:nth-child(2){display:none!important}
  .pv-food-page .pv-food-stats strong{font-size:9px!important;line-height:1.1!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal!important}
  .pv-food-page .pv-food-stats span{font-size:7px!important;white-space:nowrap;overflow-wrap:normal!important}
  .pv-food-page .pv-food-open{margin-top:auto!important;padding-top:6px;font-size:10px!important}
  .pv-food-page .pv-food-open .material-icons-round{font-size:15px!important}
  .pv-food-page .pv-food-seller-cta{margin-top:12px!important;padding:13px!important;border-radius:18px!important;gap:9px!important}
  .pv-food-page .pv-food-seller-cta h3{font-size:15px!important}
  .pv-food-page .pv-food-seller-cta p{font-size:10px!important}
  .pv-food-page .pv-food-seller-cta>div:last-child{display:grid!important;grid-template-columns:1fr 1fr;gap:6px!important}
  .pv-food-page .pv-food-seller-cta a{padding:8px!important;border-radius:11px!important;font-size:9px!important;text-align:center}

  /* Resultados, tarjetas e imágenes compartidas */
  .pv-view-container{gap:8px!important}
  .pv-view-container .pv-view-item{border-radius:16px!important}
  .pv-view-container[data-view="cards"] .pv-view-media{max-height:132px!important}
  .pv-view-container[data-view="detail"] .pv-view-media{max-height:118px!important}
  .pv-view-container .pv-view-content{padding:9px!important}

  /* Búsqueda y filtros */
  .pv-search-page{padding:12px!important;padding-bottom:78px!important}
  .pv-search-page>div:first-child h1{font-size:22px!important;line-height:1.15!important}
  .pv-search-page>div:first-child p{font-size:11px!important;margin-top:3px!important}
  .pv-search-page section{margin-bottom:14px!important}
  .pv-search-page section>div.border-y{padding-top:8px!important;padding-bottom:8px!important;gap:7px!important}
  .pv-search-page #pv-filter-toggle{padding:7px 10px!important;font-size:11px!important}
  .pv-search-page select[name="sort"]{min-height:36px!important;padding:6px 28px 6px 9px!important;font-size:10px!important}
  .pv-search-page #pv-filter-panel{padding:11px!important;border-radius:15px!important}
  .pv-search-page #pv-filter-panel .grid{gap:9px!important}
  .pv-search-page .pv-view-switch__label{display:none!important}
  .pv-search-page .pv-view-switch__btn{width:34px!important;height:34px!important;padding:0!important}
  .pv-search-page section>div.flex.flex-wrap.items-end{margin-bottom:9px!important}
  .pv-search-page section>div.flex.flex-wrap.items-end h2{font-size:17px!important;line-height:1.15!important}

  /* Servicios */
  .pv-services-page{padding-bottom:76px!important}
  .pv-services-page>section.pv-shell{padding-top:12px!important}
  .pv-services-page>section:first-child>div{border-radius:20px!important}
  .pv-services-page>section:first-child>div>div.relative{padding:16px!important}
  .pv-services-page>section:first-child h1{font-size:23px!important;line-height:1.14!important;margin-top:9px!important}
  .pv-services-page>section:first-child p{font-size:11px!important;line-height:1.4!important;margin-top:6px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .pv-services-page>section:first-child span.inline-flex{padding:4px 8px!important;font-size:9px!important}
  .pv-services-page form.rounded-2xl{padding:8px!important;border-radius:14px!important}
  .pv-services-page .pv-btn{min-height:40px!important;padding:8px 10px!important}
  .pv-services-page section h2{font-size:17px!important;line-height:1.15!important}
  .pv-services-page section .overflow-x-auto>a{min-width:98px!important;padding:8px!important;border-radius:13px!important}
  .pv-services-page section .overflow-x-auto>a>span:first-child{width:34px!important;height:34px!important}
  .pv-services-page .pv-services-grid{grid-template-columns:1fr!important;gap:8px!important}
  .pv-services-page .pv-service-card{display:grid!important;grid-template-columns:108px minmax(0,1fr)!important;min-height:124px;border-radius:17px!important}
  .pv-services-page .pv-service-media{width:108px!important;height:100%!important;min-height:124px!important;aspect-ratio:auto!important}
  .pv-services-page .pv-service-media img{height:100%!important;object-fit:cover!important}
  .pv-services-page .pv-service-media>span{left:5px!important;padding:3px 5px!important;font-size:7px!important;white-space:nowrap;overflow-wrap:normal!important}
  .pv-services-page .pv-service-media>span .material-icons-round{font-size:10px!important}
  .pv-services-page .pv-service-content{padding:9px!important;min-height:124px}
  .pv-services-page .pv-service-content>p:first-child{font-size:8px!important}
  .pv-services-page .pv-service-content h3{font-size:12px!important;line-height:1.2!important;min-height:29px!important;margin-top:2px!important}
  .pv-services-page .pv-service-meta{font-size:9px!important;margin-top:4px!important}
  .pv-services-page .pv-service-meta p:nth-child(3){display:none!important}
  .pv-services-page .pv-service-meta .material-icons-round{font-size:11px!important}
  .pv-services-page .pv-service-price{padding-top:5px!important}
  .pv-services-page .pv-service-price strong{font-size:11px!important}
  .pv-services-page .pv-service-price>a{width:28px!important;height:28px!important;border-radius:8px!important}
  .pv-services-page .pv-service-price .material-icons-round{font-size:15px!important}

  /* Categorías */
  .pv-categories-page>section{padding:12px!important}
  .pv-categories-page>section:first-child>div{gap:10px!important}
  .pv-categories-page>section:first-child h1{font-size:21px!important}
  .pv-categories-page>section:first-child h1+p{font-size:10.5px!important;line-height:1.35!important}
  .pv-categories-page #categorySearch{height:42px!important;font-size:12px!important;padding-left:40px!important}
  .pv-categories-page>section:first-child>div+div{margin-top:9px!important;gap:5px!important;flex-wrap:nowrap!important;overflow-x:auto}
  .pv-categories-page>section:first-child>div+div>span{padding:5px 8px!important;font-size:9px!important;white-space:nowrap;overflow-wrap:normal!important}
  .pv-categories-page #categoryGrid{gap:8px!important}
  .pv-categories-page .category-card{border-radius:15px!important}
  .pv-categories-page .category-card a>div:first-child{height:84px!important}
  .pv-categories-page .category-card a>div:first-child>span{left:8px!important;bottom:8px!important;width:30px!important;height:30px!important;border-radius:9px!important}
  .pv-categories-page .category-card a>div:last-child{padding:9px!important}
  .pv-categories-page .category-card h2{font-size:11px!important;line-height:1.2!important}
  .pv-categories-page .category-card p{font-size:8.5px!important;margin-top:3px!important}
  .pv-categories-page>section:last-of-type>div{padding:11px!important;border-radius:15px!important;gap:8px!important}
  .pv-categories-page>section:last-of-type h2{font-size:12px!important}
  .pv-categories-page>section:last-of-type p{font-size:9px!important}
  .pv-categories-page>section:last-of-type a{padding:8px 10px!important;font-size:10px!important}

  /* Movilidad */
  .pv-mobility-page>section:first-child>.pv-shell{padding-top:18px!important;padding-bottom:18px!important;gap:14px!important}
  .pv-mobility-page>section:first-child h1{font-size:26px!important;line-height:1.1!important;margin-top:9px!important}
  .pv-mobility-page>section:first-child h1+p{font-size:11px!important;line-height:1.4!important;margin-top:7px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .pv-mobility-page>section:first-child .grid.grid-cols-3{gap:5px!important;margin-top:12px!important}
  .pv-mobility-page>section:first-child .grid.grid-cols-3>div{padding:7px!important;border-radius:10px!important}
  .pv-mobility-page>section:first-child .rounded-3xl.bg-white{padding:13px!important;border-radius:18px!important}
  .pv-mobility-page>section:last-child{padding-top:18px!important;padding-bottom:78px!important}
  .pv-mobility-page>section:last-child h2{font-size:19px!important}
  .pv-mobility-page>section:last-child>div.grid{display:flex!important;overflow-x:auto;gap:8px!important;margin-top:12px!important}
  .pv-mobility-page>section:last-child article{flex:0 0 220px;padding:11px!important;border-radius:15px!important}
  .pv-mobility-page>section:last-child article h3{margin-top:8px!important;font-size:12px!important}
  .pv-mobility-page>section:last-child article p{font-size:9px!important;line-height:1.35!important}

  /* Detalle de producto: imagen menor y ampliable al tocar */
  .pv-product-page{padding:12px!important;padding-bottom:82px!important}
  .pv-product-page>div.grid{gap:14px!important}
  .pv-product-page .pv-product-gallery-main{height:248px!important;aspect-ratio:auto!important;border-radius:16px!important}
  .pv-product-page .pv-product-gallery-main img{object-fit:contain!important;background:#f8fafc}
  .pv-product-page .pv-product-gallery-main+div{margin-top:7px!important;gap:6px!important}
  .pv-product-page .pv-product-gallery-main+div button{width:48px!important;height:48px!important;border-radius:10px!important}
  .pv-product-page h1{font-size:20px!important;line-height:1.18!important;margin-bottom:6px!important}
  .pv-product-page .text-4xl{font-size:26px!important}
  .pv-product-page .glass{padding:13px!important;border-radius:16px!important}
  .pv-product-page #reviews,.pv-product-page #reviews~section{margin-top:24px!important;padding-top:16px!important}
  .pv-product-page #reviews .p-6,.pv-product-page #reviews .p-8{padding:13px!important}

  /* Carrito */
  .pv-cart-page{padding:12px!important;padding-bottom:82px!important}
  .pv-cart-page>div.flex.items-center.justify-between{margin-bottom:12px!important;gap:8px!important}
  .pv-cart-page>div.flex.items-center.justify-between h1{font-size:19px!important;line-height:1.15!important}
  .pv-cart-page>div.grid{gap:12px!important}
  .pv-cart-page .pv-cart-line{padding:10px!important;gap:9px!important;border-radius:15px!important}
  .pv-cart-page .pv-cart-line>a:first-child{width:72px!important;height:72px!important;border-radius:10px!important}
  .pv-cart-page .pv-cart-line .flex.items-center.border{height:34px!important}
  .pv-cart-page .pv-cart-line .flex.items-center.border button{padding-left:9px!important;padding-right:9px!important}
  .pv-cart-page .pv-cart-summary{padding:13px!important;border-radius:17px!important;position:static!important}
  .pv-cart-page .pv-cart-summary h3{font-size:16px!important;margin-bottom:9px!important}
  .pv-cart-page .pv-cart-summary section[data-seller-preferences]{padding:10px!important;border-radius:14px!important}
  .pv-cart-page .pv-cart-summary section[data-seller-preferences] label{padding:9px!important;gap:8px!important;border-radius:11px!important}
  .pv-cart-page .pv-cart-summary section[data-seller-preferences] label>span:nth-of-type(1){width:34px!important;height:34px!important;border-radius:9px!important}
  .pv-cart-page .pv-cart-summary section[data-seller-preferences] label strong{font-size:11px!important}
  .pv-cart-page .pv-cart-summary section[data-seller-preferences] label small{font-size:9px!important;margin-top:2px!important}
  .pv-cart-page .text-center.py-20{padding-top:34px!important;padding-bottom:34px!important}
  .pv-cart-page .text-center.py-20>div{width:68px!important;height:68px!important;margin-bottom:14px!important}
}

@media (max-width:380px){
  .pv-launcher .pv-launch-card{min-height:140px!important;padding:9px!important}
  .pv-launcher .pv-launch-badge{max-width:66px;font-size:7.5px!important}
  .pv-launcher .pv-launch-title{font-size:15px!important}
  .pv-food-page .pv-food-card{grid-template-columns:100px minmax(0,1fr)!important}
  .pv-food-page .pv-food-cover{width:100px!important}
}
