/* Estilos para a página de Carrinho */

.pagina-carrinho .main-content {
    padding: 2rem;
}

.carrinho-grid-container {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 2rem;
    align-items: start;
}

.card {
    background-color: var(--cor-bg-cards, #1E1E1E);
    border: 1px solid var(--cor-borda-leve, rgba(255, 255, 255, 0.1));
    border-radius: var(--borda-radius, 8px);
    padding: 1.5rem;
    box-shadow: var(--sombra-leve, 0 2px 8px rgba(0,0,0,0.3));
}

.card-header {
    padding-bottom: 1rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid var(--cor-borda, #333);
}

.card-header h3 {
    margin: 0;
    font-size: 1.4em;
    color: var(--cor-texto-claro);
    font-weight: 600;
}

/* Lista de Itens do Carrinho */
.carrinho-items-list {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.carrinho-item {
    display: grid;
    grid-template-columns: auto 1fr auto auto;
    gap: 1rem;
    align-items: center;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid var(--cor-borda, #333);
}

.carrinho-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.carrinho-item-imagem img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: var(--borda-radius-suave, 6px);
}

.carrinho-item-detalhes .nome-produto {
    font-size: 1.1em;
    font-weight: 600;
    color: var(--cor-texto-claro);
    margin: 0 0 0.5rem 0;
}

.carrinho-item-detalhes .adicionais,
.carrinho-item-detalhes .observacao {
    font-size: 0.85em;
    color: var(--cor-texto-secundario, #aaa);
    margin: 0.25rem 0;
}

.carrinho-item-quantidade .controle-quantidade {
    display: flex;
    align-items: center;
}

.carrinho-item-subtotal {
    font-size: 1.1em;
    font-weight: 600;
    color: var(--cor-texto-claro);
    text-align: right;
}

/* Sumário do Pedido */
.sumario-list {
    list-style: none;
    padding: 0;
    margin: 0 0 1.5rem 0;
    color: aliceblue;
}

.sumario-list li {
    display: flex;
    justify-content: space-between;
    padding: 0.75rem 0;
    font-size: 1em;
}

.sumario-list li:not(:last-child) {
    border-bottom: 1px dashed var(--cor-borda, #333);
}

.sumario-list .total {
    font-size: 1.3em;
    font-weight: 700;
    color: var(--cor-texto-claro);
    padding-top: 1rem;
    border-top: 1px solid var(--cor-borda-leve, #444);
    margin-top: 0.5rem;
}

.btn-finalizar-pedido {
    width: 100%;
    padding: 0.8rem;
    font-size: 1.1em;
}

/* Carrinho Vazio */
.carrinho-vazio-container {
    text-align: center;
    padding: 4rem 2rem;
    background-color: var(--cor-bg-cards, #1E1E1E);
    border: 1px solid var(--cor-borda-leve, rgba(255, 255, 255, 0.1));
    border-radius: var(--borda-radius, 8px);
}

.carrinho-vazio-container i {
    font-size: 4em;
    color: var(--cor-primaria);
    margin-bottom: 1rem;
}

.carrinho-vazio-container h4 {
    font-size: 1.5em;
    margin-bottom: 0.5rem;
}

/* Responsividade */
@media (max-width: 992px) {
    .carrinho-grid-container {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 576px) {
    .pagina-carrinho .main-content {
        padding: 1rem;
    }

    .carrinho-item {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .carrinho-item-imagem {
        margin: 0 auto 1rem auto;
    }

    .carrinho-item-subtotal {
        text-align: center;
        margin-top: 1rem;
    }

    .carrinho-item-quantidade {
        justify-content: center;
    }
}
