.cst-cart-frame{
    position:absolute;
    top: 50%;
    left:60px;
    right:60px;
    z-index: 1000;

    padding:30px;
    font-size:30px;

    display:flex;
    align-items:flex-end;
    background-color:var(--cart-bg-color);
    color:var(--text-color);
    border-radius: 20px;
    overflow: hidden;
    transform: translateY(-50%);
    border: 1px solid var(--entity-border-color);
}

.handicapped .cst-cart-frame{
    top:auto;
    bottom:80px;
    transform:none;
    zoom:.7;
}

.cst-order-list,
.cst-cart-folded,
.cst-cart-full{
    background-color:inherit;
    color:inherit;
    width:100%;
}

.cst-cart-toolbar{
    background-color:inherit;
}

.cst-cart-fold,
.cst-cart-unfold{
    width:40px;
    height:40px;
}

.cst-item-remove,
.cst-item-edit,
.cst-item-decrease,
.cst-item-increase {
    width:40px;
    height:40px;
}

.cst-cart-folded .txt,
.cst-order-list .txt{
    color:var(--text-color);
}

.cst-order-list{
    border-collapse:collapse;
}

.cst-order-list th{
    font-family: var(--heading-font), sans-serif;
    color:var(--text-color);
}
.cst-order-list td{
    text-align:center;
}

.cst-order-list th:first-of-type{
    text-align:left;
}
.rtl .cst-order-list th:first-of-type{
    text-align:right;
}

.cst-order-list .img-bg{
    margin:0 auto;
}

.cst-cart-folded .cst-order-list{
    margin:40px 0;
}

.cst-cart-review{
    background:var(--cart-bg-color);
    height:100%;
    justify-content: flex-start;

    border-radius:20px;
    border:1px solid #ccc;
    box-shadow:5px 5px 10px #ccc;
}

.cst-cart-list-scrollable{
    background:inherit;
    margin:20px 40px;
    justify-content:flex-start;
    overflow:auto;
}
.handicapped .cst-cart-list-scrollable{
    margin:0 20px;
}

.cst-cart-list-scrollable tr{
    border-bottom:1px solid var(--secondary-text-color);
}

.cst-cart-list-scrollable tr:last-of-type{
    border:0;
}
.cst-cart-list-scrollable td{
    padding:20px 0;
}

.cst-cart-review-toolbar{
    border-radius:inherit;
    border-bottom-left-radius:0;
    border-bottom-right-radius:0;
    padding:20px 20px;
    background:var(--dialog-bg-color);
    color:var(--secondary-text-color);
}
.cst-cart-review-toolbar .txt{
    color:var(--secondary-text-color);
}
.cst-cart-reviewed{
    padding:40px 20px;
    border-radius:20px;
    border-top-left-radius:0;
    border-top-right-radius:0;
    background:inherit;
}

.handicapped .cst-cart-reviewed{
    padding:30px 20px;
}

.cst-cart-reviewed .txt{
    color:var(--button-text-color);
}

.cst-cart-review button{
    background-color: var(--dialog-button-bg);
}

.handicapped .cst-cart-review button{
    padding:5px 20px;
}

.cst-cart-total{
    background:inherit;
}

.cst-cart-reviewed .dialog-title{
    padding:0 40px;
}

.payment-type-picture{
    width:70%;
    height:100px;
    margin-bottom:20px;
}

:root{
    --split-color-solid:#da0f0f;
}

.cst-payment-split{
   background-color:var(--split-color-solid);
   background-image:none;

   mask-image: var(--bg-payment-split);
   mask-size: contain;
   mask-position:center center;
   mask-origin: content-box;
   mask-repeat: no-repeat;
   -webkit-mask-image: var(--bg-payment-split);
   -webkit-mask-size: contain;
   -webkit-mask-position:center center;
   -webkit-mask-origin: content-box;
   -webkit-mask-repeat: no-repeat;
}

.handicapped .payment-type-picture{
    height:50px;
    margin-bottom:10px;
}
.cst-payment-types{
    background:inherit;
    align-items:flex-start;
    flex-wrap:wrap;
    max-height:90%;
    width: 100%;
}

.cst-payment-types > div{
    padding: 10px;
    box-sizing: border-box;
    min-width: 30%;
}

.cst-payment-types .cst-button{
    min-width:180px;
    max-width:250px;
    padding:10px 20px;
    font-size:26px;
}
.cst-payment-types .flex-column{
    align-items:center;
}

.payment-prompt-picture{
    max-width:500px;
    height:250px;
    margin:10px auto;
    /*margin-top:50px;  keep distance from the rest! */
    margin-bottom:10px;
}

.cst-payment-prompt{
    background:inherit;
}

.handicapped .cst-payment-prompt{
    padding:0;
}

.cst-payment-prompt .dialog-title{
    background:inherit;
    margin-bottom:20px;
}

.cst-thankyou{
    padding:80px 100px;
    border-radius:20px;
    min-height:750px;
    background:var(--cart-bg-color);
}

.handicapped .cst-thankyou{
    justify-content:center;
}

.handicapped .cst-thankyou .dialog-title{
    font-size:30px;
    line-height:30px;
}

.with-shadow .cst-thankyou{
    padding:40px 50px;
}


.cst-authenticate{
    padding:80px 100px;
    border-radius:20px;
    background:var(--cart-bg-color);
}

.cst-thankyou > .elt-bg{
    background:inherit;
}

.cst-receipt-picture{
    width:130px;
    height:130px;
}

.handicapped.cst-receipt-picture{
    float:right;
}

.cst-order-code{
    font-size:100px;
    font-weight:bold;
    text-transform:uppercase;
    text-align:start;
    vertical-align:top;
    word-break:break-all;
    color: var(--order-code-color);
}

.feedback-name{
    max-height:560px;
    max-width:500px;
    overflow:hidden;
    text-overflow:ellipsis;
    word-break:break-word;
    line-clamp:5;
    -webkit-line-clamp:5;
}

.rtl .cst-order-code{
    direction:rtl;
}

.cst-thankyou-text{
    background:none;
}
.cst-thankyou-text p{
    text-align:center;
}
.rtl .cst-thankyou-text,
.rtl .cst-thankyou-text p{
    direction:rtl;
}

.new-client{
    margin:30px auto;
    animation:pulsate 1.5s infinite;
}

.cst-cart-addon:after{
    content:",";
    margin-right:10px;
}
.cst-cart-addon:last-of-type:after{
    content:"";
    margin:0;
}

@keyframes prompt-fadeout{
    0%{opacity:1}
    100%{opacity:0}
}
@keyframes prompt-fadein{
    0%{opacity:0}
    100%{opacity:1}
}
.pre-prompt{
    animation:prompt-fadeout 4s ease-out;
    animation-fill-mode:forwards;
}
.instant{
    animation-duration: 0s !important;
}
.post-prompt{
    display:none;
    opacity:0;
    animation:prompt-fadein 2.5s ease-in;
    animation-fill-mode:forwards;
}

.cst-productmenu-stretch.standalone{
    max-height:400px;
}

/* Order List */

.order-list-full {
    overflow-x: hidden;
    overflow-y: auto;
    max-height: 760px;
    position: relative;
}

.cc_order_list_full.widget .order-list-full {
    max-height: 1200px;
}

.order-list-full-line {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #555;
    padding: 10px 0;
}

.order-list-full-line:first-child {
    border-top: none;
}

ul.order-item-addon-list {
    display: inline;
    margin: 0;
    padding: 0;
}
ul.order-item-addon-list > li {
    display: inline-block;
}

ul.order-item-addon-list > li::after {
    content: ' / ';
    display:inline-block;
    width:15px;
}

ul.order-item-addon-list > li:last-child::after {
    content: '';
}

li.order-item-addon-set {
    line-height:140%;
}

li.order-item-addon-set::before {
    content: "■";
    color: var(--entity-name-bg-color);
    position:absolute;
    left:-30px;
}

.rtl li.order-item-addon-set::before{
    left:auto;
    right:-30px;
}

.addon-extra-cost {
    background: var(--secondary-price-color);
    color: var(--dialog-bg-color);
    border-radius: 5px;
    white-space: nowrap;
    margin: 0 .25em 0 0;
    line-height:20px;
    display: inline-block;
    font-style: italic;
    font-size:20px;
    padding:4px 6px;
    direction:ltr;
}

.edit-cart-item {
    height: 44px;
    width: 70px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: bold;
    text-decoration:underline;
    padding:6px;
}

.edit-cart-item.edit-cart-item-abs {
    position: absolute;
    left:-90px;
    font-size:20px;
}

.rtl .edit-cart-item.edit-cart-item-abs {
    left: auto;
    right: -90px;
}

.cc_order_list_full {
    margin-bottom: 40px;
}

.cart-buttons .cst-dialog-button-nobg,
.cart-buttons .cst-dialog-button {
    font-size: 26px;
}

.handicapped .cart-buttons .cst-dialog-button-nobg,
.handicapped .cart-buttons .cst-dialog-button {
    font-size:30px;
}

.order-subtotals .amount{
    direction:ltr;
    min-width:150px;
    display:inline-block;
    text-align:right;
}
.rtl .order-subtotals .amount{
    margin-right:10px;
}


.cst-order-ui{
    margin:0 15px;
    font-size:30px;
    border-collapse:collapse;
}
.cst-order-ui.has-scroll{
    margin-right:0;
    width:calc(100% + 15px);
}

.rtl .cst-order-ui.has-scroll{
    margin-right:15px;
}

.cst-order-ui th{
    font-weight:bold;
    text-align:start;
    letter-spacing:2px;
    padding-bottom:10px;
}

.cst-order-ui th,
.cst-order-ui td{
    border-bottom:2px solid #000;
}
.cst-order-ui tbody tr:last-of-type td{
    border-bottom:none;
}
.cst-order-ui tfoot td{
    border-bottom:none;
    text-transform:uppercase;
}

.cst-order-ui tbody tr{
    vertical-align:top;
}
.cst-order-ui tbody td{
    vertical-align:top;
    padding:10px 0;
}

.cst-order-ui thead,
.cst-order-ui tbody,
.cst-order-ui tr,
.cst-order-ui tfoot{
    display:table;
    width:100%;
    table-layout:fixed;
}

.cst-order-ui tbody{
    width:100%;
    display:block;
    overflow:auto;
}

.cst-order-ui-container:not(.widget) .cst-order-ui tbody{ /*in payment page*/
    max-height:570px;
}

@media screen and (max-height: 1900px) {
    .cst-order-ui-container:not(.widget) .cst-order-ui tbody { /*in payment page*/
        max-height: 300px;
    }
}

.cst-order-ui-container.widget .cst-order-ui tbody{
    max-height:1200px;
}

.handicapped .cst-order-ui-container:not(.widget) .cst-order-ui tbody{
    max-height:500px;/*in payment page*/
}
.handicapped .cst-order-ui-container.widget .cst-order-ui tbody{
    max-height:500px;
}

.cst-order-ui .count,
.cst-order-ui .icon{
    width:55px;
    text-align:center;
}
.cst-order-ui .icon-three{
    width:150px;
}
.cst-order-ui .icon-remove{
    text-align:end;
    width:60px;
}

.cst-order-ui .spacer{
    width:60px;
}

.cst-order-ui .icon .img-bg{
    height:35px;
    width:35px;
    display:inline-block;
}
.cst-order-ui .amount,
.cst-order-ui .count{
    width:40px;
    font-weight:bold;
    white-space:nowrap;
}

.cst-order-ui .amount{
    width:120px;
    text-align:end;
}

.cst-order-ui .spacer-last{
    display:none;
    border:none;
    width:20px;
}

.cst-order-ui.has-scroll .spacer-last{
    display:table-cell;
}
.cst-order-ui.has-scroll thead .spacer-last{
    width:50px;
}
.cst-order-ui.has-scroll tfoot .spacer-last{
    width:50px;
}

.cst-order-ui td.disabled{
    pointer-events:none;
    opacity:0.3;
}

.cst-order-ui-heading .amount,
.cst-order-ui .amount,
.cst-order-ui .addon-extra-cost{
    direction:ltr;
}
.cst-order-ui tfoot{
    text-align:end;
}

.cst-order-ui tfoot tr:first-of-type{
    margin-top:10px;
}

.cst-order-ui .tac{
    text-align:center;
}

.cst-order-ui-heading{
    background:#fff;
    text-transform:uppercase;
    margin:-30px;
    font-weight:bold;
    margin-bottom:10px;
    padding:10px 50px;
}

.cst-order-ui .edit{
    width:80px;
}

.cst-order-ui .non-edit{
    width:0;
}

.cst-order-ui .edit-icon{
    text-align:start;
    width:80px;
    height:50px;
    margin-top:-10px;
    position:relative;
    text-decoration:underline;
}
.cst-order-ui .edit-icon div{
    font-weight:bold;
    position:absolute;
    font-size:20px;
    bottom:8px;
    left:10px;
    text-decoration:underline;
}

.rtl .cst-order-ui .edit-icon div{
    left:auto;
    right:10px;
}

.cst-order-ui tfoot tr:first-of-type td{
    border-top:2px solid #000;
    padding-top:10px;
}

.cst-order-ui tfoot td:first-of-type{
    padding-right:20px;
}
.rtl .cst-order-ui tfoot td:first-of-type{
    padding-right:0;
    padding-left:20px;
}
.cst-order-ui-container.widget{
    margin-bottom:40px;
}
.cst-order-ui-container.widget .cst-order-ui{
    font-size:24px;
}
.handicapped .cst-order-ui-container.widget .cst-order-ui{
    font-size:30px;
}

.cst-order-ui tfoot tr td:last-of-type{
    padding:0;
}

/*
.cst-order-ui td,
.cst-order-ui th{
    border:1px solid red;
}
*/

.cst-order-ui ul{
    list-style:none;
    margin:0;
    padding:0;
}

.cst-order-ui .item > ul{
    padding-left:30px;
}
.rtl .cst-order-ui .item > ul{
    padding-left:0;
    padding-right:30px;
}

.cst-order-ui li{
    list-style:none;
    position:relative;
}

.cart-buttons{
    padding-left:10px;
    padding-right:15px;
}
.rtl .cart-buttons{
    padding-right:10px;
    padding-left:15px;
}

.cst-cart-button-group{
    margin:0 -20px;
}

.cst-cart-button-group button{
    margin:0 10px;
}

.cst-cart-button-group.with-shadow{
    margin:0 -13px; /* compensate for button shadow margin */
}

.split-intro{
    font-weight:bold;
    font-size:34px;
}
.split-intro,
.split-catch-attention{
    color:red;
}
.split-intro,
.split-cancellation{
    width:90%;
    margin:0 auto;
}
.split-cancellation {
    text-align:right;
}

.split-hint{
    margin:0 auto;
    margin-top:10px;
    font-size:24px;
    color:green;
    border:2px solid green;
    background:rgba(0,255,0, 0.2);
    padding:10px 30px;
    border-left:0;
    border-right:0;
    width:90%;
    text-align:center;
}

.split-hint.warning{
    color:maroon;
    border-color:maroon;
    background:rgba(200,0,0,.4);
}

.split-details.table{
    background-color:var(--dialog-bg-color);
    padding-top:1px;
    padding-bottom:30px;
}

.split-details table{
    width:90%;
    margin:0 auto;
    margin-top:30px;
    font-size:30px;
    border-collapse:collapse;
}

.mainsection:not(.squared) .sides-layout.flex-column .split-details.table{
    border-radius:20px;
    border-top-left-radius:0;
    border-top-right-radius:0;
}

.split-details tbody{
    border:2px solid #000;
    border-right:0;
    border-left:0;
}

.split-details tbody td{
    padding:5px 0;
}
.split-details .amount{
    font-weight:bold;
    text-align:end;
    padding-inline-end:10px;
}
.split-details .amount-due{
    font-weight:bold;
}
.split-details th:first-of-type{
    text-align:start;
}
.split-details tbody tr:not(.focused){
    opacity:0.5;
}

.split-details .edits{
    text-align:start;
    width:10px;
    padding-inline-start:20px;
    white-space:nowrap;
}

.split-details .img-bg{
    vertical-align:middle;
    width:40px;
    height:40px;
    display:inline-block;
}

.split-details .de-icon-check-tick{
    border-radius:50%;
    border:2px solid #000;
    background-size:70% 70%;
}

