.q-email-input,
.q-name-input {
    margin-top: 0.5rem;
    padding: 10px 15px;
    width: 100%;
    box-sizing: border-box;
    border-radius: 4px;
    background-color: var(--background);
    color: var(--primary);
    border: 1px solid var(--secondary);
}

.q-form-control {
    width: 100%;
    padding: 8px 8px;
    background: transparent;
    color: var(--primary);
    border-color: var(--secondary_30percent);
    border-radius: 0;
    font-size: 17px;
    line-height: 1.5;
    display: block;
}

    .q-form-control:focus {
        border-color: var(--secondary);
        outline: none;
        box-shadow: inset 0 1px 1px var(--background), 0 0 8px var(--secondary_30percent);
    }

    .q-form-control.q-select:focus {
        background-color: var(--background);
    }

    .q-form-control[type="number"]::-webkit-outer-spin-button,
    .q-form-control[type="number"]::-webkit-inner-spin-button {
        -webkit-appearance: none;
    }

.q-price {
    display: flex;
    align-items: flex-end;
    font-family: var(--main-font-family);
    border-bottom: 1px dashed var(--secondary_30percent);
}

.q-price--primary {
    margin-top: 1rem;
    font-size: 1.35rem;
    font-weight: bold;
    color: var(--primary);
}

.q-price--secondary {
    color: var(--muted);
    font-size: 0.95rem;
}

.q-price--title {
    justify-content: flex-start;
    color: var(--secondary);
}

.q-price--value {
    justify-content: flex-end;
    color: var(--secondary);
}

.q-price-margin {
    margin-left: 3rem;
}

.q-summary-container {
    display: flex;
    justify-content: space-between;
    background-color: var(--background);
    border: 1px solid var(--secondary_30percent);
    border-radius: 8px;
    padding: 15px;
    margin: 15px;
    gap: 0;
}


    .q-summary-container .q-button {
        font-size: 1.05rem;
        font-weight: bold;
    }

@media (max-width: 768px) {
    .q-price-margin {
        margin-left: 2rem;
    }
    .q-price--primary {
        font-size: 0.9rem;
    }
    .q-price--secondary {
        font-size: 0.75rem;
    }

    .q-stepflow__content .q-table,
    .q-stepflow__content .q-table tbody,
    .q-stepflow__content .q-table tr,
    .q-stepflow__content .q-table td {
        display: block;
        width: 100%;
    }

        .q-stepflow__content .q-table tr {
            margin-bottom: 0.6rem;
            padding-bottom: 0.4rem;
            border-bottom: none;
        }

        .q-stepflow__content .q-table td {
            padding: 0.1rem 0;
        }

            .q-stepflow__content .q-table td strong {
                display: block;
                margin-bottom: 0.2rem;
                font-size: 0.95rem;
                color: var(--secondary);
            }

    .q-stepflow__content .q-form-control {
        font-size: 0.95rem;
        padding: 6px 8px;
    }

    .q-stepflow__content .q-table td:last-child {
        text-align: right;
        font-size: 0.8rem;
        margin-top: -0.3rem;
        color: var(--muted);
    }

    .q-warning {
        font-size: 0.7rem;
        line-height: 1.5
    }
}
