.ppt-offer-form-wrapper {

    .cursor-pointer {
        cursor: pointer;
    }

    .step-card {
        transition: all 0.3s ease;
        border: 2px solid var(--bs-secondary-bg);
        background-color: var(--bs-secondary-bg);
        border-radius: 0;
        cursor: pointer;

        &:hover {
            border-color: var(--bs-primary);
            transform: translateY(-5px);
        }

        .card-title {
            color: var(--bs-primary-bg);
            letter-spacing: 2px;
        }
    }

    .form-step {
        transition: opacity 0.5s ease-in-out;

        &.d-none {
            display: none !important;
        }
    }

    #offerte-errors {
        border-radius: 0;
        border: none;
        border-left: 4px solid #dc3545;
        background-color: var(--bs-secondary-bg);
        color: #fff;
    }

    .btn-step {
        border-radius: 0;
        text-transform: uppercase;
        font-family: 'Oswald', sans-serif;
        letter-spacing: 2px;
        padding: 12px 25px;
    }

    .form-control, .form-select {
        border-radius: 0;
        background-color: var(--bs-secondary-bg);
        border: 1px solid var(--bs-secondary-bg);
        color: #fff;

        &:focus {
            background-color: rgba(255, 255, 255, 0.1);
            border-color: var(--bs-primary);
            color: #fff;
            box-shadow: none;
        }

        &::placeholder {
            color: rgba(255, 255, 255, 0.3);
        }
    }

    /* Target specific parts of Step 2 */
    .card {
        border-radius: 0;
        background-color: var(--bs-secondary-bg);
        border: 1px solid var(--bs-secondary-bg);

        .card-header {
            border-radius: 0 !important;
            background-color: var(--bs-secondary-bg);
            border-bottom: 1px solid var(--bs-secondary-bg);
            color: var(--bs-primary);
            text-transform: uppercase;
            letter-spacing: 1px;
            font-family: 'Oswald', sans-serif;
        }

        .card-body {
            background-color: transparent;
        }
    }

    .companyBlock {
        .card-header {
            border-color: var(--bs-primary);
        }
    }

    /* Helper utility classes nested inside */
    .uppercase { text-transform: uppercase; }
    .letter-spacing-1 { letter-spacing: 1px; }
    .letter-spacing-2 { letter-spacing: 2px; }
    .bg-white-5 { background-color: var(--bs-secondary-bg); }
    .border-white-10 { border-color: var(--bs-secondary-bg); }

    #step-2, #step-3 {
        background-color: #000;
        padding: 30px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        
        .card {
            background-color: #000;
            border: 1px solid rgba(255, 255, 255, 0.3) !important;
            margin-bottom: 1.5rem;

            .card-header {
                background-color: #111;
                border-bottom: 1px solid rgba(255, 255, 255, 0.3);
                color: var(--bs-primary) !important;
            }
        }

        label {
            color: var(--bs-secondary-bg) !important;
        }

        .fw-bold{
            color: var(--bs-secondary-bg) !important;
        }

        .form-control, .form-select {
            background-color: #111;
            border-color: rgba(255, 255, 255, 0.2);

            &[type="date"] {
                position: relative;
                appearance: none;
                -webkit-appearance: none;
                min-height: 45px;
                cursor: pointer;
                
                &::-webkit-calendar-picker-indicator {
                    cursor: pointer;
                    filter: invert(1);
                    opacity: 0.7;
                    transition: opacity 0.2s;
                    
                    &:hover {
                        opacity: 1;
                    }
                }
            }
        }
    }
}
