.typo3-messages {
    position: absolute;
}

button {
    touch-action: manipulation;
}

h3 {
    font-size: 22px;
    font-weight: 600;
}

.start-new-order {
    width: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.start-new-order .icon-markup,
.start-new-order svg {
    display: block;
    height: 24px;
    width: 24px;
}

.table-input {
    font-size: 20px;
    padding: 2px 4px;
    margin-bottom: 8px;
    width: 100%;
    border: 1px solid #c3c3c3;
}

.table-input::-webkit-inner-spin-button, 
.table-input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.pos {
    position: relative;
}

.pos.products {
    width: 100%;
}

.products .order {
    margin-top: 24px;
}

.category__title {
    margin-bottom: 16px;
}

.list-group {
    margin-bottom: 24px;
}

.product {
    display: flex;
    justify-content: space-between;
}

.product__options {
    font-size: 14px;
    text-align: left;
    margin-bottom: 8px;
    padding-left: 24px;
}

.product__infos {
    padding-right: 8px;
}

.product__title {
    font-weight: 600;
    margin-bottom: 0;
}

.product__price {
    font-size: 14px;
    margin-bottom: 0;
}

.product__controls {
    display: flex;
    gap: 12px;
    height: 30px;
}

.subproduct__controls button,
.product__controls button {
    width: 45px;
    height: 40px;
    border: 1px solid #cdcdcd;
    background: #dddddd;
    display: flex;
    justify-content: center;
    align-items: center;
}

.product__quantity {
    width: 35px;
    height: 40px;
    text-align: center;
    border: 1px solid #cdcdcd;
    background: #f4f4f4;
    border-radius: 0;
    font-size: 18px;
}

.subproducts {
    padding-left: 8px;
    padding-top: 8px;
    list-style-type: none;
}

.subproduct {
    display: flex;
    justify-content: space-between;
    padding-top: 12px;
    padding-left: 6px;
    margin-bottom: 6px;
    border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.subproduct__title {
    font-weight: 600;
    margin-bottom: 0;
}

.subproduct__price {
    font-size: 14px;
    margin-bottom: 0;
}

.subproduct__options {
    font-size: 14px;
}

.config__printers li {
    margin-bottom: 12px;
}

.collect.button {
    width: 100%;
    align-items: center;
}

.order.button {
    margin-bottom: 24px;
}

.actions a:hover {
    text-decoration: none;
}

.session {
    font-size: 12px;
    font-style: italic;
}

.collect {
    display: flex;
    flex-direction: column;
}

.collect-table {
    margin-bottom: 24px;
}

.collect-table__product__title {
    font-weight: 600;
    margin-bottom: 0;
    display: flex;
    align-items: center;
}

.collect-table__product__price {
    margin-bottom: 0;
    font-size: 14px;
}

.collect-table__options {
    font-size: 14px;
    margin-bottom: 6px;
}

.collect-table thead tr {
    background-color: rgb(190, 190, 190);
}

.collect-table tbody tr:nth-child(even) {
    background-color: rgb(222, 222, 222);
}

.collect-table th,
.collect-table td {
    vertical-align: top;
    padding-left: 4px;
    padding-top: 6px;
    padding-bottom: 6px;
}

.total-price {
    font-size: 20px;
}

.order-comment textarea {
    width: 500px;
    max-width: 100%;
    height: 120px;
    margin-bottom: 24px;
}

.fixed-footer {
    padding-top: 12px;
    padding-bottom: 36px;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    overflow: hidden;
    justify-content: space-between;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

.fixed-footer .total {
    font-weight: 600;
    font-size: 22px;
}

.form-control-color {
    height: 100%;
}