/* Delivery dos Pimentas Core — cartões e categorias v0.4.13 */
.dp-stores{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px!important;
  width:100%!important;
  align-items:stretch;
}
.dp-store-card{
  position:relative;
  box-sizing:border-box;
  display:grid;
  grid-template-columns:64px minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-width:0;
  width:100%!important;
  max-width:none!important;
  padding:10px;
  border:1px solid #ececef;
  border-radius:14px;
  background:#fff;
  box-shadow:0 2px 9px rgba(0,0,0,.045);
  overflow:hidden;
  transition:box-shadow .18s ease,transform .18s ease,border-color .18s ease,background-color .18s ease;
}
.dp-store-card:hover{box-shadow:0 5px 16px rgba(0,0,0,.08);transform:translateY(-1px)}
.dp-card-link{position:absolute;inset:0;z-index:2}
.dp-logo-wrap{flex:none;width:64px;height:64px;border-radius:50%;overflow:hidden;align-self:center}
.dp-store-logo{display:block!important;width:100%!important;max-width:none!important;height:100%!important;border-radius:50%!important;object-fit:cover!important;border:1px solid #eee;clip-path:circle(50% at 50% 50%)}
.dp-store-info{min-width:0;display:flex;flex-direction:column;gap:2px;padding-right:2px}
.dp-store-title{margin:0!important;font-size:14px;line-height:1.15;font-weight:800;color:#272727;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.dp-store-category{font-size:11px;line-height:1.2;color:#777;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dp-store-rating{font-size:11px;line-height:1.2;font-weight:700;color:#555}
.dp-star{color:#f5a623}
.dp-store-distance{font-size:11px;line-height:1.2;color:#666;font-weight:600}
.dp-store-delivery{font-size:10.5px;line-height:1.25;color:#777}
.dp-status{align-self:flex-start;margin-top:2px;padding:2px 8px;border-radius:999px;font-size:10.5px;line-height:1.25;font-weight:700}
.dp-status-open{color:#16883a;background:#ddf8e7}.dp-status-closed{color:#b42318;background:#fee4e2}.dp-status-unknown{color:#666;background:#f2f2f2}
.dp-premium{position:absolute!important;z-index:3;top:7px;right:8px;width:68px!important;max-width:68px!important;height:auto!important;pointer-events:none}
.dp-store-card.is-premium{padding-top:28px}
.dp-empty{grid-column:1/-1;padding:12px 14px;border:1px dashed #ddd;border-radius:12px;background:#fafafa;color:#666}
.dp-filter-empty{grid-column:1/-1;padding:12px 14px;border:1px dashed #ddd;border-radius:12px;background:#fafafa;color:#666;font-size:13px}
.dp-store-card.dp-filter-hidden{display:none!important}

/* Área de entrega: na Home, o estado positivo fica implícito para economizar espaço. */
.dp-store-area{font-size:10px;line-height:1.2;font-weight:700}
.dp-store-area.is-inside{display:none}
.dp-store-area.is-outside{display:inline-flex;align-self:flex-start;padding:2px 6px;border-radius:999px;color:#b42318;background:#fee9e7}
.dp-store-card.is-outside-area{background:#fcfcfc;border-color:#f1cfcc}
.dp-store-card.is-outside-area:hover{transform:none;box-shadow:0 2px 9px rgba(0,0,0,.045)}
.dp-store-card.is-outside-area .dp-store-logo{filter:grayscale(.25);opacity:.82}
.dp-store-card.is-outside-area .dp-store-title,.dp-store-card.is-outside-area .dp-store-category,.dp-store-card.is-outside-area .dp-store-rating,.dp-store-card.is-outside-area .dp-store-distance,.dp-store-card.is-outside-area .dp-store-delivery,.dp-store-card.is-outside-area .dp-status{opacity:.72}
.dp-store-card.is-outside-area .dp-card-link{cursor:not-allowed}
.dp-store-area.is-attention{animation:dpAreaPulse .55s ease 2}
@keyframes dpAreaPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}

/* Categorias responsivas do Delivery dos Pimentas. */
.dp-category-grid{
  box-sizing:border-box;
  display:grid!important;
  grid-template-columns:repeat(10,minmax(0,1fr));
  gap:6px;
  width:100%;
  max-width:1160px;
  margin:2px auto 8px;
  padding:0;
}
.dp-category-tile{
  min-width:0;
  display:flex!important;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:4px;
  padding:4px 3px 5px;
  border:1px solid #f1e9e9;
  border-radius:11px;
  background:#fff8f8;
  color:#252525!important;
  text-decoration:none!important;
  box-shadow:0 1px 5px rgba(0,0,0,.025);
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.dp-category-tile:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.06);border-color:#f0dcdc}
.dp-category-image-wrap{display:block;width:100%;aspect-ratio:1.16/1;border-radius:8px;overflow:hidden;background:#fff}
.dp-category-image{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important}
.dp-category-label{display:block;min-height:2.05em;font-size:10.5px;line-height:1.05;font-weight:800;text-align:center;color:#222}

/* Remove margens internas herdadas do widget Shortcode do Elementor. */
.elementor-widget-shortcode:has(.dp-category-grid),
.elementor-widget-shortcode:has(.dp-location-box){margin-top:0!important;margin-bottom:0!important}
.elementor-widget-shortcode:has(.dp-category-grid)>.elementor-widget-container,
.elementor-widget-shortcode:has(.dp-location-box)>.elementor-widget-container{margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important}

@media(max-width:980px){
  .dp-stores{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dp-category-grid{grid-template-columns:repeat(5,minmax(0,1fr));max-width:940px;gap:6px}
  .dp-category-label{font-size:10px}
}
@media(max-width:720px){
  .dp-stores{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important}
  .dp-store-card{grid-template-columns:52px minmax(0,1fr);gap:7px;padding:8px;min-height:106px;border-radius:13px}
  .dp-store-card.is-premium{padding-top:26px}
  .dp-logo-wrap{width:52px;height:52px}
  .dp-store-title{font-size:12.5px}
  .dp-store-category,.dp-store-rating,.dp-store-distance{font-size:10px}
  .dp-store-delivery{font-size:9.5px}
  .dp-status{font-size:9.5px;padding:2px 7px}
  .dp-premium{width:60px!important;max-width:60px!important;top:6px;right:7px}
  .dp-category-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin:2px auto 8px}
  .dp-category-tile{gap:3px;padding:4px 3px 5px;border-radius:10px}
  .dp-category-image-wrap{border-radius:7px;aspect-ratio:1.18/1}
  .dp-category-label{font-size:9px;line-height:1.03;min-height:2.05em;letter-spacing:-.05px}
}
@media(max-width:390px){
  .dp-store-card{grid-template-columns:45px minmax(0,1fr);gap:6px;padding:7px;min-height:104px}
  .dp-logo-wrap{width:45px;height:45px}
  .dp-store-title{font-size:11.5px}
  .dp-store-category,.dp-store-rating,.dp-store-distance{font-size:9.5px}
  .dp-store-delivery{font-size:9px}
  .dp-status{font-size:9px;padding:2px 6px}
  .dp-premium{width:55px!important;max-width:55px!important}
  .dp-category-grid{gap:4px}
  .dp-category-label{font-size:8.5px}
}

/* Busca geral do Delivery dos Pimentas — v0.4.44 */
.dp-home-search-wrap{box-sizing:border-box;width:100%;max-width:1160px;margin:14px auto 10px;padding:0 14px}
.dp-search-area{box-sizing:border-box;width:100%;padding:16px;border:1px solid #f0e1e1;border-radius:18px;background:linear-gradient(135deg,#fff 0%,#fff8f8 100%);box-shadow:0 6px 20px rgba(120,0,0,.05);font-family:Arial,sans-serif;color:#242424}
.dp-search-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:11px}
.dp-search-heading h2{margin:2px 0 0!important;font-size:21px;line-height:1.1;color:#222}
.dp-search-heading p{margin:0;color:#696969;font-size:13px}
.dp-search-kicker{display:block;color:#c81920;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.7px}
.dp-search-form{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:5px 5px 5px 12px;border:1px solid #ddd;border-radius:14px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.025)}
.dp-search-icon{font-size:22px;line-height:1;color:#b8171d;font-weight:700;transform:rotate(-18deg)}
.dp-search-form input[type="search"]{width:100%;min-width:0;height:44px;padding:0 4px;border:0!important;outline:0!important;background:transparent!important;font:inherit;font-size:15px;color:#222;box-shadow:none!important}
.dp-search-form input[type="search"]::placeholder{color:#8a8a8a}
.dp-search-form button{min-width:96px;height:44px;border:0;border-radius:10px;background:#cf171c;color:#fff;font-weight:800;font-size:14px;cursor:pointer;padding:0 17px}
.dp-search-form button:hover{background:#aa1116}
.dp-search-results{margin-top:16px;padding-top:15px;border-top:1px solid #eee}
.dp-search-results-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px}
.dp-search-results-head h3{margin:0!important;font-size:17px;color:#222}
.dp-search-results-head a{color:#b8171d;text-decoration:none;font-size:12px;font-weight:800;white-space:nowrap}
.dp-search-block{margin-top:16px}
.dp-search-block:first-of-type{margin-top:0}
.dp-search-block>h4{margin:0 0 9px!important;font-size:14px;color:#333}
.dp-search-category-links{display:flex;flex-wrap:wrap;gap:7px}
.dp-search-category-links a{display:inline-flex;align-items:center;min-height:34px;padding:5px 12px;border:1px solid #f0caca;border-radius:999px;background:#fff;color:#a71419!important;text-decoration:none!important;font-size:12px;font-weight:800}
.dp-search-category-links a:hover{background:#fff1f1}
.dp-search-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.dp-search-product{position:relative;display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:9px;border:1px solid #ececec;border-radius:13px;background:#fff;color:#222!important;text-decoration:none!important;transition:box-shadow .15s ease,transform .15s ease}
.dp-search-product:hover{box-shadow:0 5px 14px rgba(0,0,0,.07);transform:translateY(-1px)}
.dp-search-product-image{width:54px;height:54px;border-radius:10px;overflow:hidden;background:#f5f5f5;display:flex;align-items:center;justify-content:center;font-size:24px}
.dp-search-product-image img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.dp-search-product-copy{display:flex;flex-direction:column;min-width:0;gap:2px}
.dp-search-product-copy strong{font-size:13px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dp-search-product-copy>span{font-size:11px;color:#777;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dp-search-product-copy small{font-size:11px;color:#b8171d;font-weight:800}
.dp-search-product-arrow{font-size:24px;color:#b8171d;padding-right:2px}
.dp-search-empty{display:flex;flex-direction:column;gap:3px;padding:14px;border:1px dashed #ddd;border-radius:12px;background:#fff;color:#666;font-size:13px}
.dp-search-empty strong{color:#333}

/* Novas seções da Home */
.dp-home-extra-sections{box-sizing:border-box;width:100%;max-width:1160px;margin:16px auto 30px;padding:0 14px;display:grid;gap:22px}
.dp-home-category-section{min-width:0}
.dp-home-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.dp-home-section-head h2{margin:0!important;font-size:21px;line-height:1.15;color:#252525}
.dp-home-section-head a{display:inline-flex;align-items:center;min-height:34px;padding:5px 11px;border-radius:999px;background:#fff1f1;color:#b8171d!important;text-decoration:none!important;font-size:12px;font-weight:800}

/* Agora são 12 categorias principais. */
@media(min-width:981px){.dp-category-grid{grid-template-columns:repeat(12,minmax(0,1fr))}}
@media(max-width:980px) and (min-width:721px){.dp-category-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:820px){.dp-search-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){
  .dp-home-search-wrap{margin:10px auto 8px;padding:0 10px}
  .dp-search-area{padding:13px;border-radius:15px}
  .dp-search-heading{align-items:flex-start;flex-direction:column;gap:4px}
  .dp-search-heading h2{font-size:19px}
  .dp-search-heading p{font-size:12px}
  .dp-search-form{grid-template-columns:auto minmax(0,1fr);padding:5px 8px 5px 11px}
  .dp-search-form button{grid-column:1/-1;width:100%;height:43px}
  .dp-search-products{grid-template-columns:1fr}
  .dp-home-extra-sections{padding:0 10px;margin-top:14px}
  .dp-home-section-head h2{font-size:19px}
}
/* Home: se uma categoria não possui nenhuma empresa publicada, remove apenas
   a seção visual. A categoria, ícone e página continuam ativos no Core. */
.dp-stores-empty{display:none!important}
.dp-home-root .dp-home-section-empty{display:none!important}
.dp-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
