:root {
    --venda-primary: #112240;
    --venda-accent: #FF9C00;
    --venda-grade: #d63c0d;
    --venda-grade-hover: #ff4800;
    --venda-success: #00BB9C;
}

body {
    min-height: 100vh;
    background: var(--bs-body-bg);
}

.venda-navbar {
    background: rgba(var(--bs-body-bg-rgb), 0.92);
    backdrop-filter: blur(14px);
}

.brand-icon {
    width: 38px;
    height: 38px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--venda-accent);
    color: #111827;
}

.venda-hero {
    background:
        radial-gradient(circle at top left, rgba(255, 156, 0, 0.18), transparent 30%),
        radial-gradient(circle at bottom right, rgba(0, 187, 156, 0.16), transparent 30%);
}

.venda-info-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.venda-info-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border: 1px solid var(--bs-border-color);
    border-radius: 18px;
    background: rgba(var(--bs-body-bg-rgb), 0.74);
}

.venda-info-item-grade {
    display: flex;
    align-items: center;
    background-color: var(--venda-grade);
    gap: 10px;
    padding: 12px 14px;
    border: 1px solid var(--bs-border-color);
    border-radius: 18px;
    background: rgba(var(--bs-body-bg-rgb), 0.74);
}

.venda-info-item-grade i {
    color: white;
    font-size: 1.25rem;
}

.venda-info-item i {
    color: var(--venda-accent);
    font-size: 1.25rem;
}

.venda-card-oferta {
    border-radius: 28px;
    overflow: hidden;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
}

.venda-capa {
    width: 100%;
    height: 280px;
    object-fit: cover;
    display: block;
}

.venda-beneficios li {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    margin-bottom: 10px;
}

.venda-beneficios i {
    color: var(--venda-success);
}

.pix-box {
    border: 1px solid rgba(25, 135, 84, .25);
    background: rgba(25, 135, 84, .06);
    border-radius: 22px;
    padding: 22px;
}

.pix-qrcode {
    border-radius: 18px;
    background: #fff;
    padding: 10px;
    border: 1px solid var(--bs-border-color);
}

.resumo-thumb {
    width: 74px;
    height: 74px;
    object-fit: cover;
    border-radius: 18px;
}

.venda-resumo-lateral {
    top: 96px;
}

.card-outro-curso {
    transition: transform .25s ease, box-shadow .25s ease;
}

.card-outro-curso:hover {
    transform: translateY(-4px);
    box-shadow: 0 1rem 2rem rgba(0, 0, 0, .1) !important;
}

[data-bs-theme="dark"] .text-secondary {
    color: #b8c0cc !important;
}

[data-bs-theme="dark"] .venda-navbar {
    background: rgba(17, 24, 39, 0.9);
}

[data-bs-theme="dark"] .badge.text-bg-light {
    background: #1f2937 !important;
    color: #e5e7eb !important;
}

@media (max-width: 767.98px) {
    .venda-info-grid {
        grid-template-columns: 1fr;
    }

    .venda-capa {
        height: 230px;
    }
}



.venda-info-item-action {
    cursor: pointer;
    width: 100%;
    background: var(--bs-body-bg);
    color: inherit;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.venda-info-item-action-grade {
    cursor: pointer;
    width: 100%;
    background: var(--venda-grade);
    color: white;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.venda-info-item-action-grade:hover {
    cursor: pointer;
    width: 100%;
    background: var(--venda-grade-hover);
    color: white;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.venda-info-item-action:hover {
    transform: translateY(-2px);
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .08);
}

.grade-aula-icon {
    width: 42px;
    height: 42px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--bs-warning-bg-subtle);
    color: var(--bs-warning-text-emphasis);
    flex: 0 0 42px;
}

.grade-curso-accordion .accordion-button {
    border-radius: 1rem;
}

.grade-curso-accordion .accordion-item {
    background: var(--bs-body-bg);
}