
html {
    height: 100%;
    font-size: 14px;
}

body {
    background-color: #f8f9fa;
    margin: 0; /* Remove default body margin */
}

.container {
    max-width: 960px;
}

.main-container {
    background-color: #ffffff;
    border-radius: 8px;
    padding: 40px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.05);
    width: 100%; /* Ensure it takes up the container width */
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 300;
}

.form-control-icon {
    position: relative;
}

    .form-control-icon .form-control {
        padding-right: 2.5rem;
    }

    .form-control-icon .icon {
        position: absolute;
        top: 50%;
        right: 0.75rem;
        transform: translateY(-50%);
        color: #6c757d;
    }

.form-control iframe {
    max-height: 25px !important;
    float: none !important;
}

.payment-container {
    max-width: 960px;
    margin: 0 auto;
}

.input-group .form-control {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.input-group > .form-control {
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
}

#fullsteam-hosted-card-number-div,
#fullsteam-hosted-cvv-div {
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
}

#fullsteam-hosted-expiration-month-div,
#fullsteam-hosted-expiration-year-div {
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
}

.input-group .form-control iframe {
    height: 24px !important;
}

.bi {
    vertical-align: -0.125em;
}
