:root {
    --osi-graphite: #151a22;
    --osi-blue: #1769ff;
    --osi-blue-dark: #0b49b7;
    --osi-green: #0d9f6e;
    --osi-surface: #f4f7fb;
}

.osi-business-strip {
    background: var(--osi-graphite);
    color: #fff;
    font-size: .86rem;
    padding: .72rem 4vw;
    text-align: center;
}

.osi-business-strip a {
    color: #8dc1ff;
    font-weight: 700;
    margin-left: .35rem;
}

.osi-registration-fields {
    margin-top: 1rem;
}

.osi-account-type label + label {
    margin-left: 1rem;
}

.osi-field-company,
.osi-field-individual {
    display: none;
}

html[data-osi-customer-type="company"] .osi-field-company,
html:not([data-osi-customer-type="company"]) .osi-field-individual,
html[data-osi-customer-type="individual"] .osi-field-individual {
    display: block;
}

.osi-company-benefit,
.osi-price-context {
    background: #eef8f4;
    border-left: 3px solid var(--osi-green);
    color: #155f49;
    font-size: .9rem;
    padding: .75rem 1rem;
}

.osi-cnpj-status {
    display: block;
    font-size: .84rem;
    margin-top: .45rem;
}

.osi-cnpj-status.is-success { color: var(--osi-green); }
.osi-cnpj-status.is-error { color: #b42318; }

.osi-price-label {
    color: var(--osi-green);
    display: block;
    font-size: .82rem;
    font-weight: 700;
    margin-top: .45rem;
}

.osi-minimum-order,
.osi-account-status {
    background: var(--osi-surface);
    border: 1px solid #dce5f1;
    border-radius: 10px;
    margin-bottom: 1.5rem;
    padding: 1rem 1.2rem;
}

.osi-minimum-order__copy {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .65rem;
}

.osi-progress {
    background: #dce5f1;
    border-radius: 999px;
    height: 8px;
    overflow: hidden;
}

.osi-progress span {
    background: linear-gradient(90deg, var(--osi-blue), var(--osi-green));
    display: block;
    height: 100%;
}

.osi-verification-warning {
    color: #9a3412;
}

@media (max-width: 575px) {
    .osi-minimum-order__copy {
        display: block;
    }
}
