.restaurant-section{ margin:8px 0 16px; background:transparent; padding:0 128px; }
.section-header{ padding:8px 8px 4px; }
.section-title{ font-size: 24px; font-weight:700; letter-spacing:.2px; color:#212121; text-transform:uppercase; }

.section-grid{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 12px 16px;
    background: transparent;
}

@media (max-width: 768px) {
	.restaurant-section { padding: 0 8px; }
    .section-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px 10px;
    }
}

@media (max-width: 1024px) {
	.restaurant-section { padding: 0 16px; }
}

/* ---- Toggle card ⟷ lista (SKY-138) ---- */
.menu-view-toggle .menu-view-toggle__label { margin-left: 4px; }

/* Visão em LISTA: cada item vira uma linha horizontal compacta (imagem pequena
   à esquerda, nome/preço no meio, botão de adicionar à direita). Escopado no
   container .restaurant-content-area.list-view — os overrides ganham das regras
   base e das media queries por especificidade; !important só onde brigam com
   alturas fixas / layout mobile em coluna.
   ⚠️ O md-content (.restaurant-content-area) é shrink-to-fit: no grid base o
   grid "guloso" (auto-fill 1fr) o mantém largo, mas um section-grid em coluna
   colapsaria a largura do container → forçamos width:100% + section-grid em
   block (não flex/grid) pra as linhas ocuparem a largura toda. */
.restaurant-content-area.list-view { width: 100%; }
.restaurant-content-area.list-view .section-grid {
    display: block;
}
.restaurant-content-area.list-view .card-restaurant {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0 0 8px;
}
.restaurant-content-area.list-view .product-card {
    width: 100%;
    max-width: none;
    height: auto !important;
    min-height: 0;
    margin: 0;
}
.restaurant-content-area.list-view .product-card-content {
    flex-direction: row !important;
    align-items: center !important;
    text-align: left !important;
    gap: 12px;
    /* SKY-138 (Gustavo 22/08): respiro entre o conteúdo e a borda do card
       (o texto estava colado na borda esquerda). */
    padding: 12px 16px;
}
.restaurant-content-area.list-view .product-card-content .top-row {
    flex-direction: row !important;
    align-items: center !important;
    gap: 12px;
    flex: 1;
    min-width: 0;
}
/* SKY-138 refinamento (Gustavo/Rafael 22/08, ref app anota.ai): na lista o
   texto (nome/descrição/preço) fica à ESQUERDA e a thumbnail à DIREITA — como
   os cards pequenos empilhados da referência. `order` reordena dentro do
   .top-row (imagem depois do info); o .btn-row (add) fica por último. */
.restaurant-content-area.list-view .product-card-content .image,
.restaurant-content-area.list-view .product-card-content .image-placeholder {
    order: 2;
    width: 72px !important;
    height: 72px !important;
    max-height: 72px;
    flex: 0 0 72px;
    border-radius: 8px;
    /* SKY-138 (Gustavo 22/08): cover (era contain) pra TODAS as fotos ficarem
       uniformes — as landscape (prato de mini esfiha, fundo branco) apareciam
       menores/desalinhadas com contain. margin-left:auto encosta a foto na
       direita. */
    object-fit: cover !important;
    margin-left: auto;
}
/* Combos agora têm o MESMO botão de carrinho dos demais (Gustavo/Rafael 22/08):
   clicar nele abre o dialog de montagem (restaurant.js roteia combo→dialog). Isso
   também ALINHA a foto na lista — antes o btn-row vazio/escondido deixava a imagem
   com margin-left:auto na borda, enquanto o não-combo tinha a imagem antes do botão.
   Com o botão presente nos dois, a foto fica na mesma posição. Sem qty-control no
   combo, então o botão já vem compacto (44px) pela regra do add-button abaixo. */
.restaurant-content-area.list-view .product-card-content .info {
    order: 1;
    flex: 1;
    min-width: 0;
    align-items: flex-start !important;
    text-align: left !important;
}
/* Descrição visível na lista (a referência mostra a descrição sob o nome).
   Some sozinha nos tenants sem description (o card já não renderiza o elemento). */
.restaurant-content-area.list-view .product-card-content .info .product-description {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    white-space: normal;
    font-size: 12px;
    line-height: 1.35;
    color: #777;
    margin: 2px 0;
}
.restaurant-content-area.list-view .product-card-content .btn-row {
    order: 3;
    flex-direction: row !important;
    width: auto !important;
    margin-left: 4px;
    flex: 0 0 auto;
}

/* SKY-138 v3 (Gustavo 22/08 18:25): fonte um pouco maior + o texto ocupando a
   largura toda da linha (ele viu no mobile e pediu "aumenta a fonte / justifica
   pra ficar toda escrita"). O !important vence as regras mobile do card.css
   (@media max-width:768px) que deixam o título 12px, centrado e com padding. */
.restaurant-content-area.list-view .product-card-content .info {
    width: 100% !important;
    align-items: flex-start !important;
    text-align: left !important;
}
.restaurant-content-area.list-view .product-card-content .info .title {
    font-size: 16px !important;
    font-weight: 600;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    -webkit-line-clamp: unset !important;
    padding: 0 !important;
    max-width: none !important;
    line-height: 1.25;
}
.restaurant-content-area.list-view .product-card-content .info .product-description {
    font-size: 13px !important;
    -webkit-line-clamp: 2;
}
.restaurant-content-area.list-view .product-card-content .info .price-row,
.restaurant-content-area.list-view .product-card-content .info .regular-price,
.restaurant-content-area.list-view .product-card-content .info .promo-price {
    font-size: 16px !important;
}

/* SKY-138 (Gustavo 22/08 "aqui quebrou"): nos NÃO-combos o btn-row (stepper de
   qtd + botão de carrinho) media ~223px num card de ~310px e ESPREMIA o texto
   (info caía pra ~92px, o nome quebrava numa coluna estreita). Na lista, compacta:
   esconde o stepper de qtd (adiciona 1; ajusta no carrinho) e deixa só um botão de
   carrinho pequeno (44px), com o texto ganhando prioridade (min-width). Combos já
   têm o btn-row escondido — não são afetados. Validado na página real (pizza
   destravada, combo intacto) antes de subir. */
.restaurant-content-area.list-view .product-card-content .info {
    flex: 1 1 auto !important;
    min-width: 120px !important;
}
.restaurant-content-area.list-view .product-card-content .btn-row .qty-control {
    display: none !important;
}
.restaurant-content-area.list-view .product-card-content .btn-row .add-button {
    min-width: 44px !important;
    width: 44px !important;
    height: 44px !important;
    padding: 0 !important;
    margin: 0 !important;
}