/* ===========================
   📱 Extra-pequeno (<=360px)
   =========================== */
@media (max-width: 360px) {
  .sucesso__page {
    padding: 24px 12px 36px !important;
  }

  .sucesso__header {
    gap: 10px;
    padding: 8px 0 18px !important;
  }

  .sucesso__badge {
    width: 56px;
    height: 56px;
  }

  .sucesso__badge svg {
    width: 32px;
    height: 32px;
  }

  .sucesso__title {
    font-size: clamp(1.25rem, 1.05rem + 2.2vw, 1.55rem);
  }

  .sucesso__lead {
    font-size: .9rem;
  }

  .sucesso__card {
    padding: 16px !important;
  }

  .sucesso__grid {
    gap: 14px !important;
  }

  .sucesso__item,
  .sucesso__row {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }

  .sucesso__itemrow {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .sucesso__aside {
    min-width: 0;
    justify-items: start;
    text-align: left;
  }

  .sucesso__qtychip {
    padding: 5px 9px;
    font-size: .78rem;
  }

  .sucesso__timeline {
    grid-template-columns: 1fr 16px 1fr 16px 1fr 16px 1fr;
    gap: 6px;
  }

  .sucesso__dot {
    width: 12px;
    height: 12px;
    outline-width: 2px;
  }

  .sucesso__steplabel {
    font-size: .7rem;
  }

  .sucesso__bar {
    height: 3px;
  }

  .sucesso__actions {
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .sucesso__btn__pedido,
  .sucesso__voltar__cardapio {
    width: 100%;
    text-align: center;
  }
}

@media (max-width: 480px) {
  .sucesso__grid {
    max-width: 300px !important;
  }

  .sucesso__wrap {
    max-width: 100% !important;
  }

  .sucesso__card {
    padding: 18px !important;
  }

  .sucesso__cardtitle {
    font-size: 1rem;
    margin-bottom: 12px;
  }

  .sucesso__actions {
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .sucesso__itemrow--grid .sucesso__media img {
    width: 64px;
    height: 64px;
    border-radius: 10px;
  }

  .sucesso__row {
    grid-template-columns: 1fr !important;
  }

  .sucesso__footerrow {
    font-size: .92rem;
  }

  .sucesso__footerrow--total {
    font-size: 1.02rem;
  }
}

@media (max-width: 599px) {
  .sucesso__page {
    padding: 28px 14px 40px !important;
  }

  .sucesso__grid {
    gap: 16px !important;
  }

  .sucesso__prodtitle {
    font-size: .98rem;
  }

  .sucesso__pricetotal {
    font-size: 1rem;
  }
}

@media (min-width: 600px) and (max-width: 859px) {
  .sucesso__grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }

  .sucesso__page {
    padding: 32px 18px 48px !important;
  }

  .sucesso__card {
    padding: 20px !important;
  }

  /* Colunas menores */
  .sucesso__item {
    grid-template-columns: 150px 1fr !important;
  }

  .sucesso__row {
    grid-template-columns: 140px 1fr !important;
  }

  .sucesso__itemrow--grid .sucesso__media img {
    width: 68px;
    height: 68px;
  }

  .sucesso__timeline {
    gap: 10px;
  }
}

@media (min-width: 860px) {
  .sucesso__page {
    padding: 32px 18px 44px !important;
  }

  .sucesso__grid {
    grid-template-columns: 0.8fr 1fr !important;
    gap: 18px !important;
  }

  /* Enxuga colunas fixas para não “empurrar” o grid */
  .sucesso__item {
    grid-template-columns: 150px 1fr !important;
    gap: 8px !important;
  }

  .sucesso__row {
    grid-template-columns: 140px 1fr !important;
    gap: 8px !important;
  }

  .sucesso__itemrow--grid .sucesso__media img {
    width: 72px;
    height: 72px;
  }
}

@media (min-width: 1024px) {
  .sucesso__wrap {
    max-width: 1040px !important;
  }

  /* mais contido */
  .sucesso__item {
    grid-template-columns: 160px 1fr !important;
  }

  .sucesso__row {
    grid-template-columns: 140px 1fr !important;
  }
}

@media (min-width: 1280px) {
  .sucesso__wrap {
    max-width: 1120px !important;
  }

  .sucesso__grid {
    gap: 22px !important;
  }

  .sucesso__card {
    padding: 20px !important;
  }
}

@media (min-width: 1600px) {
  .sucesso__wrap {
    max-width: 1180px !important;
  }

  .sucesso__grid {
    gap: 24px !important;
  }

  .sucesso__item {
    grid-template-columns: 170px 1fr !important;
  }

  .sucesso__row {
    grid-template-columns: 150px 1fr !important;
  }
}

@media print {
  .sucesso__body {
    background: #fff !important;
    color: #000 !important;
  }

  .sucesso__page {
    padding: 0 !important;
  }

  .sucesso__badge,
  .sucesso__actions,
  .spin {
    display: none !important;
  }

  .sucesso__grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .sucesso__card {
    box-shadow: none !important;
    border: 1px solid #ddd !important;
    padding: 16px !important;
  }

  .sucesso__footer {
    border-top: 1px solid #ddd !important;
  }
}

@media (prefers-reduced-motion: reduce) {

  .sucesso__timeline,
  .sucesso__btn__pedido {
    transition: none !important;
  }
}