.delivery-merchant-choice {
    padding: 0 20px 10px 20px;
}

.delivery-merchant-choice select {
    border-radius: 5px;
    width: 100%;
    display: inline-block;
    box-sizing: border-box;
    padding: 0.5em 2em 0.5em 1em;
    border: 1px solid #e0e0e0;
    font: inherit;
    line-height: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    appearance: none;
    background-repeat: no-repeat;
    background-image: linear-gradient(45deg, transparent 50%, currentColor 50%),
        linear-gradient(135deg, currentColor 50%, transparent 50%);
    background-position: right 15px top 1em, right 10px top 1em;
    background-size: 5px 5px, 5px 5px;
    cursor: pointer;
}

.delivery-merchant-choice option {
    padding: 10px;
}

.delivery .payments .checkbox .input-helper:before,
.delivery .payments .checkbox .input-helper:after {
    top: 3px;
}

.delivery .checkbox img {
    margin-left: 5px;
    margin-right: 5px;
}

.delivery .card-padding {
    padding-top: 40px;
}

.fee-map {
    height: 100%;
    width: 100%;
}

.angular-google-map-container {
    height: 500px;
    position: relative;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
}

.pac-container {
    box-shadow: none;
    border: 1px solid #e0e0e0;
    z-index: 9999;
}

.pac-container::after {
    display: none;
}

.pac-item {
    padding: 8px;
    display: flex;
    flex-direction: column;
    line-height: 16px;
    cursor: pointer;
}

.pac-icon {
    display: none;
}

.height-auto {
    min-height: auto !important;
    height: auto !important;
}
/* DELIVERY ORDERS */

.delivery-orders {
    position: fixed;
    top: 70px;
    display: flex;
    width: 100vw;
    height: calc(100vh - 70px);
    min-height: 640px;
    margin: 0;
    padding: 0;
    background: #edecec;
}

.delivery-container.has-menu .delivery-orders {
    width: calc(100vw - 100px);
}

.delivery-orders aside {
    display: flex;
    flex-direction: column;
    width: 350px;
    border-right: 1px solid #dedede;
    z-index: 2;
    overflow-x: hidden;
    background: white;
    height: calc(100vh - 70px);
}

.delivery-orders aside .merchant {
    display: flex;
    color: white;
    background: rgba(51, 51, 51, 0.8);
    font-weight: bold;
    font-size: 15px;
    position: relative;
    height: 45px;
    box-shadow: 0 1px 5px #0003;
    background-position: center;
    background-size: cover;
}

.delivery-orders aside .merchant .logo {
    position: absolute;
    top: 0;
    left: 0;
    height: 45px;
    width: 45px;
    object-fit: contain;
    margin: 0px 15px;
}

.delivery-orders aside .merchant select[name="selected"] {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    outline: none;
    border: none;
    background: transparent;
    text-align: center;
    text-overflow: ellipsis;
    padding: 10px 40px 10px 70px;
    flex: 1;
    max-width: 100%;
    cursor: pointer;
}

.delivery-orders aside .merchant select option {
    color: #333;
}

.delivery-orders aside .merchant::before {
    content: "\f2f9";
    font-family: "Material-Design-Iconic-Font";
    display: flex;
    position: absolute;
    top: 0;
    right: 20px;
    bottom: 0;
    font-size: 18px;
    align-items: center;
    pointer-events: none;
}

.delivery-orders aside .filters {
    display: grid;
    grid-template-rows: 40px;
    grid-column-gap: 15px;
    padding: 10px 15px;
    background: #fff;
}

.delivery-orders aside .filters.two {
    grid-template-rows: 40px 40px;
}

.delivery-orders aside .filters input[name="idOrName"] {
    font-size: 14px;
    background: #fff;
    outline: none;
    border: none;
    border-bottom: 1px #cecece solid;
    min-width: 50px;
}

.delivery-orders aside .filters select[name="status"] {
    position: relative;
    font-size: 14px;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    outline: none;
    border: none;
    background: #fff;
    border-bottom: 1px #cecece solid;
    text-overflow: ellipsis;
    cursor: pointer;
}

.delivery-orders aside > .orders {
    display: flex;
    flex-direction: column;
    flex: 1;
    background: #fff;
    /* overflow-y: auto; */
    z-index: 3;
}

.delivery-orders aside > .orders.outstanding {
    flex: unset;
}

.delivery-orders aside > .orders section header {
    display: grid;
    grid-template-columns: auto 1fr;
    height: 40px;
    padding: 10px 25px 10px 15px;
    background: #f7f7f7;
    font-size: 14px;
    font-weight: bold;
    border-bottom: 1px #dedede solid;
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    z-index: 3;
}

.delivery-orders aside .extra-space {
    margin-top: 36px;
    display: none;
}

.delivery-orders.command aside > .orders section header:first-child {
    border-top: 1px #dedede solid;
}

.delivery-orders.command aside > .orders section header {
    display: grid;
    grid-template-columns: auto 50px;
    height: auto;
    padding: 10px 25px 10px 15px;
    background: #f7f7f7;
    font-size: 14px;
    font-weight: bold;
    border-bottom: 1px #dedede solid;
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    z-index: 3;
    align-items: center;
}

.delivery-orders aside > .orders section header .count {
    display: flex;
    place-content: flex-end;
    align-items: center;
    gap: 12px;
}

.delivery-orders aside > .orders ol {
    margin: 0;
    padding: 0;
}

.delivery-orders aside > .orders li:not(.dropdown):not(.table-sum) {
    display: grid;
    grid-template-columns: auto 1fr auto;
    grid-template-rows: 30px 25px;
    list-style-type: none;
    position: relative;
    padding: 15px 20px 20px 15px;
    margin: 0;
    background: white;
    cursor: pointer;
    transition: border 0.1s linear;
    border-bottom: 1px #dedede solid !important;
    column-gap: 10px;
}

.delivery-orders aside > .orders li.table-sum {
    display: flex;
    place-content: center;
    align-items: center;
    padding: 6px;
    font-size: 18px;
    font-weight: bold;
    background: #fff;
    border-bottom: 1px solid #dedede;
}

.delivery-orders aside > .orders li:hover {
    border-left-width: 15px;
}

.delivery-orders aside > .orders li.selected {
    border-left: 8px solid;
}

.delivery-orders aside > .orders li .name {
    align-items: center;
    font-size: 18px;
    font-weight: bolder;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    align-self: center;
}

.delivery-orders aside > .orders li .notification {
    display: inline-flex;
    align-items: center;
    font-size: 16px;
    color: #888;
}

.delivery-orders aside > .orders li .done_at {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    font-size: 12px;
    text-align: end;
    color: #888;
    grid-column-start: 3;
}

.delivery-orders aside > .orders li .id {
    display: inline-flex;
    align-items: flex-end;
    font-size: 16px;
    color: #888;
}

.delivery-orders aside > .orders li .status {
    display: inline-flex;
    align-items: flex-end;
    justify-content: flex-end;
    font-size: 14px;
    font-weight: 500;
    text-align: end;
    grid-column-start: 3;
}

.delivery-orders aside > .orders li.REQUESTED {
    background-image: linear-gradient(-135deg, #f44336 0 20px, #fff0 20px);
}

.delivery-orders aside > .orders li.REQUESTED .status {
    color: #f44336;
}

.delivery-orders aside > .orders li.CONFIRMED {
    background-image: linear-gradient(-135deg, rgb(62, 130, 255) 0 20px, rgb(62, 130, 255, 0) 20px);
}

.delivery-orders aside > .orders li.CONFIRMED .status {
    color: #2196f3;
}

.delivery-orders aside > .orders li.READY_DELIVERY {
    background-image: linear-gradient(-135deg, rgb(255, 124, 17) 0 20px, rgb(255, 124, 17, 0) 20px);
}

.delivery-orders aside > .orders li.READY_DELIVERY .status {
    color: rgb(255, 124, 17);
}

.delivery-orders aside > .orders li.READY_TAKE_OUT {
    background-image: linear-gradient(-135deg, rgb(157, 0, 230) 0 20px, rgb(157, 0, 230, 0) 20px);
}

.delivery-orders aside > .orders li.READY_TAKE_OUT .status {
    color: rgb(157, 0, 230);
}

.delivery-orders aside > .orders li.PENDING_DELIVERY_DRIVER {
    background-image: linear-gradient(-135deg, rgb(108, 187, 18) 0 20px, rgb(8, 151, 44, 0) 20px);
}

.delivery-orders aside > .orders li.PENDING_DELIVERY_DRIVER .status {
    color: rgb(108, 187, 18);
}

.delivery-orders aside > .orders li.EN_ROUTE {
    background-image: linear-gradient(-135deg, rgb(8, 151, 44) 0 20px, rgb(8, 151, 44, 0) 20px);
}

.delivery-orders aside > .orders li.EN_ROUTE .status {
    color: rgb(8, 151, 44);
}

.delivery-orders aside > .orders li.FINISHED {
    background: #fbfbfb;
}

.delivery-orders aside > .orders li.FINISHED .status {
    color: rgb(37, 97, 10);
}

.delivery-orders aside > .orders li.CANCELED {
    background: #fbfbfb;
}

.delivery-orders aside > .orders li.CANCELED .status {
    color: rgb(143, 14, 14);
}

.delivery-orders aside .totals {
    display: grid;
    grid-template-columns: auto 1fr auto;
    grid-template-rows: auto 1fr;
    padding: 10px 20px 10px 10px;
    /* background: #555555; */
    color: white;
    font-weight: bold;
    align-items: center;
    /* border-top: 1px #cecece solid; */
    column-gap: 10px;
}

.delivery-orders aside .totals .logo {
    display: block;
    grid-row-end: span 2;
    width: 50px;
    height: 50px;
    background-position: center;
    background-size: contain;
}

.delivery-orders aside .totals header {
    font-size: 14px;
    opacity: 0.5;
    text-align: center;
}

.delivery-orders aside .totals .orders {
    display: inline;
    margin: 0;
    font-size: 16px;
    text-align: center;
}

.delivery-orders aside .totals .orders span {
    font-size: 14px;
    opacity: 0.75;
}

.delivery-orders aside .totals .earnings {
    display: inline;
    margin: 0;
    font-size: 16px;
    text-align: center;
}

.delivery-orders aside .totals .earnings span {
    font-size: 14px;
    opacity: 0.75;
}

.delivery-orders main {
    flex: 1;
    font-size: 14px;
    background: #edecec;
    position: relative;
}

/* body {
    overflow-y: hidden;
} */

.delivery-orders main .order-details-wrapper {
    height: calc(100vh - 120px);
    overflow: auto;
}

.delivery-orders main .order-details {
    display: flex;
    flex-direction: row;
    margin-bottom: 60px;
    padding-top: 20px;
}

.delivery-orders main .order-details .badge {
    font-size: 14px;
    padding: 8px 12px;
    font-weight: bold;
}

.delivery-orders main .order-details .title {
    display: flex;
    flex: 1;
    margin-bottom: 20px;
}

.delivery-orders main .order-details .title p {
    background: white;
    padding: 6px 20px 8px 20px;
    border-radius: 50px;
    box-shadow: 0 2px 10px rgb(0, 0, 0, 0.2);
    width: max-content;
    margin: 0;
}

.delivery-orders main .order-details .title .id {
    margin-right: 25px;
    font-size: 16px;
    font-weight: bold;
}

.delivery-orders main .order-details .title .time {
    font-style: italic;
    margin-right: 30px;
    font-size: 16px;
    font-weight: bold;
}

.delivery-orders main .order-details .title .name {
    font-size: 20px;
    font-weight: bold;
}

.delivery-orders main .order-details .title button.cancel {
    margin: 0 0 0 auto;
    display: flex;
    align-items: center;
}

.delivery-orders main .order-details .title button.cancel i {
    font-size: 24px;
    margin-right: 10px;
}

.delivery-orders main .order-details .delivery {
    display: flex;
    flex-direction: column;
    font-size: 16px;
    margin-bottom: 20px;
}

.delivery-orders main .order-details .delivery .address {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: 1fr auto;
    grid-column-gap: 10px;
    border-radius: 8px;
    background: white;
    box-shadow: 0 2px 10px rgb(0, 0, 0, 0.2);
    z-index: 1;
    padding: 10px 15px;
    align-items: center;
    max-width: max-content;
}

.delivery-orders main .order-details .delivery .address .address-label {
    color: white;
    background: rgb(59, 161, 85);
    padding: 8px 12px;
    font-weight: bold;
    border-radius: 8px;
    height: max-content;
    white-space: nowrap;
    grid-row-end: span 2;
    align-self: start;
}

.delivery-orders main .order-details .delivery .address .address-line span {
    white-space: nowrap;
}

.delivery-orders main .order-details .delivery .address .address-notes {
    grid-column-start: 2;
    font-size: 15px;
    font-style: italic;
}

.delivery-orders main .order-details .delivery .driver {
    padding: 8px 15px;
    width: max-content;
    background: rgb(255, 124, 17);
    color: white;
    margin-left: 15px;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 2px 10px rgb(0, 0, 0, 0.2);
}

.delivery-orders main .order-details .delivery .driver select[name="selected"] {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    outline: none;
    border: none;
    background: white;
    color: rgb(255, 124, 17);
    border-radius: 5px;
    text-align: center;
    text-overflow: ellipsis;
    margin-left: 10px;
    padding: 5px 10px;
    font-weight: bold;
    cursor: pointer;
}

.delivery-orders main .order-details .delivery .take-out {
    color: white;
    background: rgb(157, 0, 230);
    padding: 10px 15px;
    font-weight: bold;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgb(0, 0, 0, 0.2);
    max-width: max-content;
}

.delivery-orders main .order-details .summary {
    font-size: 14px;
    background: white;
    box-shadow: 0 1px 1px rgb(0 0 0 / 15%);
    overflow: hidden;
}

.delivery-orders main .order-details .summary .price {
    text-align: end;
}

.delivery-orders main .order-details .summary .status {
    display: flex;
    margin: 0;
    padding: 12px 20px;
}

.delivery-orders main .order-details .summary .status > p {
    margin: 0;
    padding: 0;
    flex: 1;
    font-size: 18px;
    font-weight: bold;
    display: flex;
    flex-direction: column;
    text-transform: uppercase;
    align-items: center;
}

.delivery-orders main .order-details .summary .status > p small {
    font-size: 12px;
    font-weight: normal;
}

.delivery-orders main .order-details .summary .status button {
    background: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    appearance: none;
    border: none;
    text-decoration: none;
    padding: 0 20px;
    margin: 0;
}

.delivery-orders main .order-details .summary .status.REQUESTED {
    background: #f44336;
    color: white;
}

.delivery-orders main .order-details .summary .status.REQUESTED button.cancel {
    color: white;
    border: 2px white solid;
}

.delivery-orders main .order-details .summary .status.REQUESTED button.confirm {
    margin-left: 15px;
    color: #f44336;
    background: white;
}

.delivery-orders main .order-details .summary .status.CONFIRMED {
    background: rgba(62, 130, 255, 0.1);
    color: #2196f3;
}

.delivery-orders main .order-details .summary .status.CONFIRMED button.set-ready {
    background: #2196f3;
    color: white;
}

.delivery-orders main .order-details .summary .status.READY_DELIVERY {
    background: rgba(255, 124, 17, 0.1);
    color: rgb(255, 124, 17);
}

.delivery-orders main .order-details .summary .status.READY_DELIVERY button.set-en-route {
    background: rgb(255, 124, 17);
    color: white;
}

.delivery-orders main .order-details .summary .status.READY_TAKE_OUT {
    background: rgba(157, 0, 230, 0.1);
    color: rgb(157, 0, 230);
}

.delivery-orders main .order-details .summary .status.READY_TAKE_OUT button.set-delivered {
    background: rgb(157, 0, 230);
    color: white;
}

.delivery-orders main .order-details .summary .status.PENDING_DELIVERY_DRIVER {
    background: rgba(8, 151, 44, 0.1);
    color: rgb(108, 187, 18);
}

.delivery-orders main .order-details .summary .status.PENDING_DELIVERY_DRIVER button.set-delivered {
    background: rgb(108, 187, 18);
    color: white;
}
.delivery-orders main .order-details .summary .status.EN_ROUTE {
    background: rgba(8, 151, 44, 0.1);
    color: rgb(8, 151, 44);
}

.delivery-orders main .order-details .summary .status.EN_ROUTE button.set-delivered {
    background: rgb(8, 151, 44);
    color: white;
}

.delivery-orders main .order-details .summary .status.FINISHED {
    background: rgba(55, 174, 0, 0.8);
    color: white;
    padding: 15px 20px;
}

.delivery-orders main .order-details .summary .status.FINISHED p {
    text-align: center;
    text-transform: uppercase;
    font-size: 22px;
}

.delivery-orders main .order-details .summary .status.FINISHED small {
    display: none;
}

.delivery-orders main .order-details .summary .status.CANCELED {
    background: rgba(179, 4, 4, 0.8);
    color: white;
    padding: 15px 20px;
}

.delivery-orders main .order-details .summary .status.CANCELED p {
    text-align: center;
    text-transform: uppercase;
    font-size: 22px;
}

.delivery-orders main .order-details .summary .status.CANCELED small {
    display: none;
}

.delivery-orders main .order-details .summary .categories {
    margin: 0;
    padding: 15px 0px 15px 60px;
    font-size: 18px;
    border-top: 1px #cecece dashed;
}

.delivery-orders main .order-details .summary .categories > li {
    display: grid;
    list-style-type: none;
    padding-bottom: 10px;
}

.delivery-orders main .order-details .summary .categories > li > .name {
    font-weight: bold;
}

.delivery-orders main .order-details .summary .categories .items {
    margin: 0;
    padding: 15px 12px;
    font-size: 18px;
}

.delivery-orders main .order-details .summary .categories > li .items > li {
    display: grid;
    list-style-type: none;
    padding: 8px;
    padding-bottom: 10px;
    position: relative;
}

.delivery-orders main .order-details .summary .categories > li .items > li:not(.removed).edit-ready:hover {
    background: #fff6e5;
    cursor: pointer;
}

.delivery-orders main .order-details .summary .categories > li .items > li.added {
    color: #6eae76;
}

.delivery-orders main .order-details.table-order .summary .categories > li .items > li.added {
    display: none;
}

.delivery-orders main .order-details .summary .categories > li .items > li.removed {
    color: #f44336;
    text-decoration: line-through;
}

.delivery-orders main .order-details .summary .categories > li .items > li .items-header {
    display: grid;
    grid-template-columns: 40px auto 100px;
    width: 100%;
    border-bottom: 1px dotted #ddd;
    padding-bottom: 4px;
    font-weight: 900;
    font-size: 22px;
}
.delivery-orders main .order-details .summary .categories > li .items > li .items-header .actions {
    position: absolute;
    left: -53px;
    top: 14px;
    color: #555;
    gap: 18px;
    display: flex;
    cursor: pointer;
}

/* .delivery-orders main .order-details .summary .categories > li .items > li:not(.edit-ready) .items-header .actions, */
.delivery-orders main .order-details .summary .categories > li .items > li.removed .items-header .actions {
    display: none;
}

.delivery-orders main .order-details .summary .items > li > .name {
    /* font-weight: bold; */
}

.delivery-orders main .order-details .summary .items li .complements-items {
    margin: 0;
    padding: 0;
    grid-column-start: 2;
    grid-column-end: span 2;
    font-size: 16px;
    font-style: italic;
    font-weight: 100;
    /* padding-top: 5px; */
}

ol.complements-categories {
    padding-left: 40px;
    list-style: none;
    font-weight: 900;
    font-style: normal;
    font-size: 16px;
}

.subItemCategory {
    padding-top: 10px;
}

.delivery-orders main .order-details .summary .items li .complements-items li {
    display: grid;
    grid-template-columns: 35px auto 1fr 100px;
    margin: 0;
    padding: 7px 0 3px;
    list-style-type: none;
    border-bottom: 1px #ddd dotted;
    position: relative;
}

.delivery-orders main .order-details .summary .items li .complements-items li.added {
    color: #6eae76;
}

.delivery-orders main .order-details.table-order .summary .items li .complements-items li.added {
    display: none;
}

.delivery-orders main .order-details .summary .items li .complements-items li.removed {
    color: #f44336;
    text-decoration: line-through;
}

.delivery-orders main .order-details .summary .items li .complements-items li .name {
    /* font-weight: 500; */
}

.delivery-orders main .order-details .summary .items li .complements-items li .item {
    margin-left: 10px;
}

.delivery-orders main .order-details .summary .items > li > .notes {
    font-size: 14px;
    padding-top: 10px;
    font-style: italic;
    word-break: break-word;
}

.delivery-orders main .order-details .summary .order-notes {
    padding: 0px 20px 15px calc(15px + 40px);
    font-size: 16px;
    font-style: italic;
}

.delivery-orders main .order-details .summary .action {
    display: flex;
    place-content: center;
    padding: 15px 0px 15px 0px;
}

.delivery-orders main .order-details .summary .delivery-fee {
    display: grid;
    grid-template-columns: 40px auto 100px;
    padding: 15px 20px;
    font-size: 18px;
    border-top: 1px #cecece dashed;
}

.delivery-orders main .order-details .summary .delivery-fee img {
    display: block;
    width: 25px;
    align-self: center;
}

.delivery-orders main .order-details .summary .delivery-fee .name {
    font-weight: bold;
}

.delivery-orders main .order-details .summary .waiter-fee {
    display: grid;
    grid-template-columns: 40px auto 100px;
    padding: 15px 20px;
    font-size: 18px;
    border-top: 1px #cecece dashed;
}

.delivery-orders main .order-details .summary .coupon {
    display: grid;
    grid-template-columns: 40px auto 100px;
    padding: 15px 20px;
    font-size: 18px;
    border-top: 1px #cecece dashed;
}

.delivery-orders main .order-details .summary .coupon img {
    display: block;
    width: 25px;
    align-self: center;
}

.delivery-orders main .order-details .summary .coupon .name {
    font-weight: bold;
}

.delivery-orders main .order-details .summary .subtotal {
    display: grid;
    grid-template-columns: 40px auto max-content;
    padding: 15px 20px;
    font-size: 18px;
    border-top: 1px #cecece dashed;
}

.delivery-orders main .order-details .summary .subtotal .name {
    grid-column-start: 2;
}

.delivery-orders main .order-details .summary .subtotal .price {
    font-weight: bold;
}

.delivery-orders main .order-details .summary .payment-method {
    display: grid;
    grid-template-columns: 40px 1fr auto;
    padding: 15px 20px;
    font-size: 18px;
    border-top: 1px #cecece dashed;
}

.delivery-orders main .order-details .summary .payment-method img {
    display: block;
    width: 25px;
    align-self: center;
}

.delivery-orders main .order-details .summary .payment-method p {
    margin: 0;
    padding: 0;
    font-size: 18px;
}

.delivery-orders .order-controls .sdv {
    display: none;
}

.delivery-orders .order-controls {
    display: flex;
    position: fixed;
    bottom: 0;
    right: 0;
    padding: 15px;
    align-items: center;
    justify-content: flex-end;
    z-index: 100;
}

.delivery-orders main .order-controls {
    /* right: 60px; */
}

.delivery-orders .order-controls button {
    background: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    appearance: none;
    border: none;
    text-decoration: none;
    margin: 0;
    font-weight: bold;
    border-radius: 8px;
    padding: 0 20px;
    font-size: 16px;
    box-shadow: 0 2px 10px rgb(0, 0, 0, 0.2);
    align-items: center;
    display: flex;
}

.delivery-orders .order-controls button {
    color: white;
    font-size: 14px;
    height: 60px;
    width: 60px;
    border-radius: 60px;
    position: relative !important;
}

.delivery-orders .order-controls button i {
    font-size: 26px;
    margin: 0;
}

.delivery-orders .order-controls .new-order {
    margin-left: 20px;
}

.delivery-orders .order-controls .chat {
    position: relative;
    margin-right: 20px;
}

.delivery-orders .order-controls .chat .toggle-window-wrapper {
    position: relative;
}

.delivery-orders .order-controls .chat .unread-count {
    display: flex;
    position: absolute;
    align-items: center;
    justify-content: center;
    right: 65%;
    bottom: 65%;
    min-width: 30px;
    padding: 5px 5px;
    height: 30px;
    color: #fff;
    border-radius: 50px;
    z-index: 5;
    box-shadow: 0 1px 5px rgb(0, 0, 0, 0.2);
}

.delivery-orders .order-controls .chat .window {
    display: flex;
    flex-direction: column;
    position: absolute;
    right: 0;
    bottom: 100%;
    /* min-height: 240px; */
    /* max-height: 480px; */
    width: 480px;
    background: #f7f7f7;
    box-shadow: 0 4px 20px rgb(0, 0, 0, 0.4);
    border-radius: 8px;
    margin-bottom: 10px;
    z-index: 4;
}

.delivery-orders .order-controls .chat .window .messages-wrapper {
    flex: 1;
    border-bottom: 1px #cecece dashed;
    padding: 15px 15px 0;
    /* min-height: 0; */
    max-height: 480px;
}

.delivery-orders .order-controls .chat .window .messages {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.delivery-orders .order-controls .chat .window .messages p {
    margin: 0 0 15px;
    padding: 10px 20px;
    border-radius: 25px;
    width: max-content;
    max-width: 250px;
    box-shadow: 0 2px 3px rgb(0, 0, 0, 0.2);
}

.delivery-orders .order-controls .chat .window .messages p.USER {
    background: white;
    /* border-top-left-radius: 20px; */
    border-bottom-left-radius: 10px;
}

.delivery-orders .order-controls .chat .window .messages p.MERCHANT {
    background: white;
    /* border-top-left-radius: 20px; */
    border-bottom-right-radius: 10px;
    align-self: flex-end;
    background: #fff9;
}

.delivery-orders .order-controls .chat .window .messages p.audio,
.delivery-orders .order-controls .chat .window .messages p.video {
    max-width: 330px;
}

.delivery-orders .order-controls .chat .window .messages p img {
    width: 100%;
}

.delivery-orders .order-controls .chat .window .messages .no-messages {
    margin: 0;
    padding: 10px 20px 20px;
    font-style: italic;
    text-align: center;
    opacity: 0.75;
}

.delivery-orders .order-controls .chat .window footer {
    display: flex;
    border-radius: 5px;
    box-shadow: 0 2px 3px rgb(0, 0, 0, 0.2);
    background: #fffb;
    margin: 15px;
}

.delivery-orders .order-controls .chat .window input[name="new-message"] {
    font-size: 14px;
    outline: none;
    border: none;
    padding: 12px 15px;
    background: transparent;
    flex: 1;
}

.delivery-orders .order-controls .chat .window .send {
    margin: 0;
    padding: 0;
    padding-right: 10px;
    box-shadow: none;
    background: transparent;
    width: unset;
    height: unset;
}

.delivery-orders .order-controls .chat .window .send.sending {
    opacity: 0.4;
}

.delivery-orders .order-controls .chat .window .send i {
    font-size: 28px;
    color: rgb(94, 94, 94);
    margin: 0;
    padding: 0;
}

.delivery-orders main .chat-lightbox {
    position: absolute;
    height: 100%;
    width: 100%;
    top: -100%;
    left: 0;
    background: #000000e6;
    display: flex;
    place-content: center;
    align-items: center;
    z-index: 100;
    opacity: 0;
    transition: all 0.2ms;
}

.delivery-orders main .chat-lightbox.opened {
    top: 0;
    opacity: 1;
}

.delivery-orders main .chat-lightbox .close {
    background-color: white;
    font-size: 22px;
    cursor: pointer;
    padding: 20px;
    position: absolute;
    top: 0;
    right: 0;
    opacity: 1;
}

.dropdown-menu.has-li-group > div > li > a {
    display: block;
    padding: 10px 20px;
    clear: both;
    font-weight: normal;
    line-height: 1.42857143;
    color: #333;
    white-space: nowrap;
}
.dropdown-menu.has-li-group > div > li > a:hover,
.dropdown-menu.has-li-group > div > li > a:focus {
    text-decoration: none;
    color: #333;
    background-color: rgba(0, 0, 0, 0.075);
}

/* Manual Order */

.order-item-details {
    margin-top: 20px;
    display: grid;
    grid-template-columns: auto 110px;
    font-size: 16px;
    font-weight: 500;
}

.order-item-price {
    text-align: right;
}

.order-subitems {
    display: grid;
    grid-template-columns: auto 110px;
    font-size: 14px;
    font-weight: 100;
}

.order-subitems.has-image {
    grid-template-columns: 80px auto 110px;
    gap: 8px;
}

.order-subitem-image,
.order-subitem-image img {
    width: 80px;
}

.order-subitem-name {
    display: flex;
    flex-direction: column;
    place-content: center;
}

.order-item-subtitle {
    display: flex;
    gap: 12px;
    font-size: 12px;
}

.order-subitem-price {
    display: flex;
    place-content: flex-end;
    align-items: center;
}

.order-edit .order-item-details {
    margin-bottom: 10px;
}

.order-subitem-price label {
    margin-bottom: 16px;
}

.order-details-wrapper .simplebar-content {
    padding: 15px !important;
}

.btn-float.btn-float-2.print.dropdown {
    margin-top: -23px;
}

.btn-float.btn-float-2.print.dropdown ul {
    margin-top: 65px;
}

td.ident {
    border-top: none !important;
    padding-left: 40px !important;
}

table.order-table > thead > tr > th {
    font-size: 22px;
    font-weight: 900;
}

table.order-table thead tr.item.removed,
table.order-table thead tr.item.removed th,
table.order-table tbody tr.subitem.removed,
table.order-table tbody tr.subcategory.removed span {
    color: #f44336;
    position: relative;
}

table.order-table thead tr.item.added,
table.order-table thead tr.item.added th,
table.order-table tbody tr.subitem.added,
table.order-table tbody tr.subcategory.added span {
    color: #6eae76;
    position: relative;
}

table.order-table thead tr.item.removed:after,
table.order-table tbody tr.subitem.removed:after {
    content: "";
    width: 100%;
    border-bottom: 1px solid;
    position: absolute;
    left: 0;
}

table.order-table thead tr.item.removed:after {
    top: 25px;
}

table.order-table tbody tr.subitem.removed:after {
    top: 16px;
}

.inline-auto {
    width: auto;
    display: inline-block;
}

/* Left menu tabs */

.delivery-orders .orders .tabs {
    padding: 0 20px 10px 20px;
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.delivery-orders .orders .tabs.three {
    grid-template-columns: 1fr 1fr 1fr;
}

.delivery-orders .orders .tabs .tab {
    text-align: center;
    padding: 0;
}

.delivery-orders .orders .tabs .tab div span {
    color: #999999;
    cursor: pointer;
    width: 100%;
    display: inline-block;
    line-height: 30px;
    border-bottom: 3px solid #f7f7f7;
}

.delivery-orders .orders .tabs .tab.active div span {
    font-weight: bold;
    border-bottom: 3px solid #00a5bb;
}

.delivery-orders .indicators {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-bottom: 1px solid #f1f0f0;
    background: white;
    height: 60px;
}

.delivery-orders .indicators div:first-child {
    border-right: 1px solid #f1f0f0;
}

.delivery-orders .indicators div {
    display: flex;
    place-content: center;
    align-items: center;
    flex-direction: column;
    height: 60px;
}

.delivery-orders .indicators div span {
    font-size: 14px;
}

.delivery-orders .search-container {
    padding: 15px;
    margin: 10px 0;
    /* height: 65px; */
    background: white;
}

.delivery-orders .search-container .search {
    display: grid;
    grid-template-columns: auto;
    gap: 10px;
    align-items: center;
}

.delivery-orders .search-container .search.has-tutorial {
    grid-template-columns: auto 40px;
}

.delivery-orders .search-container .base i {
    cursor: pointer;
    color: #bdc1c3;
}

.delivery-orders .search-container .extra {
    position: relative;
    display: flex;
}
.delivery-orders .search-container .extra::after {
    content: "▼";
    font-size: 14px;
    top: 20px;
    right: 16px;
    position: absolute;
}

.delivery-orders .search-container .extra select {
    width: 100%;
    border: 1px solid #f1f0f0;
    padding: 6px 16px;
    font-size: 15px;
    font-weight: 400;
    line-height: 24px;
    margin-top: 10px;
    border-radius: 6px;
    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
}

.delivery-orders .search-container .base {
    display: flex;
    align-items: center;
    background-color: white;
    height: 34px;
    padding: 5px;
    border-radius: 6px;
    border: 1px solid #f1f0f0;
}

.delivery-orders .search-container .base svg {
    float: left;
    margin-right: 5px;
    margin-left: 5px;
}

.delivery-orders .search-container .base input {
    border: none;
    padding: 0;
    font-size: 15px;
    font-weight: 400;
    line-height: 24px;
    outline: none;
    width: calc(100% - 39px - 25px);
    float: left;
}

.delivery-orders .search-container .base span {
    line-height: 24px;
    width: 25px;
    display: inline-block;
    text-align: center;
    height: 24px;
    cursor: pointer;
}

.delivery-orders .search-container .base span:hover {
    color: #ababab;
}

.delivery-orders .search-container .base span i {
    font-size: 18px;
    line-height: 23px;
    color: #bdc1c3;
}

@media screen and (max-width: 990px) {
    .delivery-orders main .order-details {
        flex-direction: column;
    }
}

@media only screen and (max-width: 1180px) {
    .delivery-orders .order-controls .sdv {
        display: flex;
    }

    .delivery-orders main .order-details-wrapper {
        width: 100vw;
    }

    .delivery-container.has-menu .delivery-orders {
        width: calc(100vw - 70px);
    }

    .delivery-orders aside {
        width: 100vw;
        height: calc(100vh - 70px);
    }

    .delivery-container.has-menu .delivery-orders aside {
        width: calc(100vw - 70px);
    }

    .delivery-orders.order-detailed aside {
        display: none;
    }

    .delivery-orders main {
        display: none;
    }

    .delivery-orders.order-detailed main {
        display: flex;
        width: calc(100vw - 70px);
    }
}
.delivery-orders main .order-details .mobile-info {
    display: none;
    position: fixed;
    top: 70px;
    z-index: 100;
    width: 100%;
    background: white;
    margin-bottom: 20px;
    border-bottom: 1px solid #dddddd;
}
.delivery-orders.view-garcom main .order-details .mobile-info {
    top: 110px;
}

.delivery-orders main .mobile-order-controls {
    position: fixed;
    bottom: 0;
    display: none;
    width: 100%;
    z-index: 100;
    width: calc(100vw - 70px);
}

.delivery-orders.view-garcom main .mobile-order-controls {
    width: calc(100vw);
}

.delivery-orders main .mobile-order-controls button {
    display: flex;
    border: 0;
    border-right: 1px solid #0000002e;
    padding: 8px;
    place-content: center;
    align-items: center;
    color: white;
    font-size: 32px;
}

.timeline-container {
    right: 0;
    z-index: 1000;
    background: white;
    height: 100vh;
    width: 420px;
    padding: 20px;
    border-left: 1px solid #dedede;
    display: none;
}

.timeline-container.opened {
    display: block;
}

@media only screen and (max-width: 610px) {
    .delivery-orders main .order-details {
        padding-top: 70px;
    }
    .delivery-orders.view-garcom main .order-details {
        padding-top: 100px;
    }
    .delivery-orders main .order-details .summary .categories {
        padding: 15px 0px 15px 30px;
        font-size: 14px;
    }
    .delivery-orders main .order-details .summary .action {
        border-top: 1px dashed #cecece;
    }

    .delivery-orders main .order-details .summary .categories .items {
        padding: 0px 12px;
    }

    .delivery-orders main .order-details .summary .categories > li .items > li .items-header {
        font-size: 14px;
    }

    .delivery-orders main .order-details .summary .categories > li .items > li .items-header .actions {
        font-size: 16px;
        top: 6px;
        left: -30px;
    }

    ol.complements-categories {
        font-size: 14px;
        padding-left: 10px;
    }

    .delivery-orders main .order-details .summary .items li .complements-items {
        font-size: 14px;
    }

    .delivery-orders main .order-details .summary .subtotal,
    .delivery-orders main .order-details .summary .waiter-fee {
        grid-template-columns: 0 auto max-content;
    }

    .delivery-orders main .order-details .col-sm-12 {
        padding: 0;
    }
    .delivery-orders main .order-details .row {
        margin: 0;
    }
    .delivery-orders main .order-details .mobile-info .left-container,
    .delivery-orders main .order-details .mobile-info .right-container {
        display: flex;
        place-content: center;
        align-items: center;
    }
    .delivery-orders main .order-details .mobile-info button {
        background: none;
        border: 0;
        cursor: pointer;
    }
    .delivery-orders main .order-details .mobile-info i {
        font-size: 20px;
    }
    .delivery-orders main .order-details .mobile-info {
        display: grid;
        grid-template-columns: 60px auto 60px;
        align-items: center;
    }
    .delivery-orders main .order-details .mobile-info h2 {
        font-size: 15px;
        margin: 10px 0 0 0;
    }
    .delivery-orders main .order-details .mobile-info small {
        display: block;
        margin-bottom: 10px;
    }

    .delivery-orders main .order-details .info {
        display: none;
    }

    .delivery-orders main .order-controls {
        display: none;
    }

    .delivery-orders.order-detailed .order-controls {
        display: none;
    }

    .delivery-orders main .mobile-order-controls {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }

    .delivery-orders.view-garcom main .mobile-order-controls {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
    }

    .delivery-orders aside .extra-space {
        display: block;
    }

    .timeline-container.opened {
        display: none;
    }
}
