$spaceBetweenColumns: 1vw; @mixin columnSize($width) { width: calc(#{$width} - #{$spaceBetweenColumns}); } html { height: 100%; overflow-y: overlay; } body { height: 100%; margin: 0; padding: 0; font-family: Roboto, helveltica; background-color: rgb(214, 214, 214); } header { width: 100vw; height: fit-content; box-sizing: border-box; display: flex; justify-content: space-between; background-color: rgb(123, 169, 255); color: #fff; padding: 0.5vh 0px; .logo { font-family: Dancing Script, helveltica; display: flex; user-select: none; margin-left: 1vw; cursor: pointer; h3 { font-weight: normal; display: flex; align-items: center; margin-left: 1vw; user-select: none; } } &.sub-header { background-color: rgb(80, 110, 167); padding: 6vh 0px; display: flex; justify-content: center; user-select: none; } } .payment-container { height: calc(100% - #{$spaceBetweenColumns * 2}); display: flex; justify-content: space-between; margin-top: $spaceBetweenColumns; padding-bottom: $spaceBetweenColumns; .column { background-color: #fff; border-radius: 5px; padding: 0 2vw; &.frist-column { $width: 60vw; @include columnSize($width); margin: 0 $spaceBetweenColumns 0 $spaceBetweenColumns; form { width: 100%; display: flex; flex-direction: column; user-select: none; input[type="text"] { border: none; border-bottom: 1px solid rgb(133, 133, 133); padding: 2vh 0px 1vh 0px; opacity: 50%; } select { height: 5vh; margin-top: 1vh; } } } &.second-column { $width: 40vw; @include columnSize($width); margin-right: calc(#{$spaceBetweenColumns} * 2); table { border-collapse:collapse; border-spacing: 2px; thead { border-bottom: 1px solid rgb(133, 133, 133); user-select: none; th:first-child { text-align: initial; } } tbody::before { content: ''; display: block; height: 1vh; } // CREDITS: https://stackoverflow.com/questions/294885/how-to-put-spacing-between-tbody-elements tbody { tr:first-child { margin-top: 3vh; } tr { td { text-align: center; padding-bottom: 1vh; } td.name { text-align: initial; } } } } .message { border: 1px solid rgb(255, 88, 88); background-color: #0008; color: #fff; padding: 1vh 2vw; } button { margin-top: 1vh; height: 8vh; width: 100%; user-select: none; } } h2 { border-bottom: 1px solid #000; padding-bottom: 1vh; user-select: none; } table { width: 100%; } } } @media (max-width: 991.98px) { .payment-container { justify-content: center; flex-direction: column; .column { &.frist-column, &.second-column { box-sizing: border-box; $width: 96vw; @include columnSize($width); margin: 0px 1vw 0px 1vw; padding-bottom: 2vh; } &.frist-column { margin-bottom: 2vh; } } } }