/*
admin.css
Copyright (C) 2017 Octorate srl, all rights reserved.
*/

.ui-selectonemenu-panel .ui-selectonemenu-items-wrapper {
    overflow-y: auto;
    overflow-x: hidden
}

.ui-inputnumber.text-c input {
    text-align: center
}

.ui-datatable .ui-selection-column .ui-chkbox-all {
    width: 20px;
    height: 20px
}

body .ui-datatable thead th {
    padding: 8px
}

.ui-datatable thead th.text-l, .ui-datatable tfoot td.text-l {
    text-align: left
}

.ui-selectcheckboxmenu-multiple-container.ui-inputfield {
    color: #999
}

body .ui-selectonemenu .ui-selectonemenu-trigger.ui-state-error {
    border: none !important
}

body .ui-button {
    border-width: 1px !important
}

body .ui-panelgrid .ui-panelgrid-cell {
    padding: 8px 8px
}

body .ui-panelgrid.pad-small .ui-panelgrid-cell {
    padding: 8px 8px 0 0
}

body .ui-state-disabled {
    opacity: .6
}

body .ui-splitbutton.ui-buttonset.ui-button-danger .ui-button {
    background-color: #B51F3C;
    border-color: #B51F3C;
}

.layout-menu-dark .layout-sidebar .layout-menu > li > a .menuitem-text {
    color: #607d8b;
}

.layout-menu-dark .layout-sidebar .layout-menu > li > a:hover {
    background-color: #cdcdcd;
}

.layout-menu-dark .layout-sidebar .layout-menu > li > a i {
    color: #607d8b;
}

body .ui-datatable thead th, body .ui-treetable thead th {
    background-color: #e1e1e1;
}

.card {
    border-radius: 10px;
}

body .ui-button {
    background-color: #07A089;
}

.layout-menu-dark .layout-sidebar .sidebar-logo .app-name {
    color: #607d8b;
}

body {
    background-color: #073f45;
}

.ui-selectonemenu label.ui-selectonemenu-label {
    color: #212121 !important
}

.ui-state-highlight a {
    color: #fff !important
}

.ui-panelgrid.panelgrid-compact .ui-panelgrid-cell {
    padding: 6px !important
}

.ui-panelgrid.panelgrid-form .ui-panelgrid-cell {
    padding: 8px 5px 8px 0 !important
}

.ui-panelgrid.panelgrid-form .ui-panelgrid-cell:last-child {
    padding-right: 0 !important
}

tr.ui-state-highlight .fa.green {
    color: #fff !important
}

.ui-fluid .ui-selectmanymenu.fluid-checkbox td:first-child {
    width: 20px
}

body .ui-selectmanymenu.fluid-checkbox .ui-selectlistbox-item .ui-chkbox {
    margin: 0
}

body .ui-dialog.ui-confirm-dialog .ui-dialog-content > span.ui-icon {
    font-size: 24px;
    line-height: 24px;
    height: auto
}

body .ui-dialog.ui-confirm-dialog .ui-dialog-content {
    padding: 20px;
    display: table;
    width: 100%;
    box-sizing: border-box
}

body .ui-dialog.ui-confirm-dialog .ui-dialog-content > span {
    display: table-cell
}

.ui-confirm-dialog-message {
    padding-left: 10px
}

.hei-150 .CodeMirror {
    height: 150px
}

.CodeMirror {
    border: 1px solid #ddd;
    height: 200px
}

.card h1 {
    margin-top: 0 !important
}

.card.gray h1 {
    color: #aaa
}

.card h1.inline-title {
    margin: 0 20px 0 0 !important;
    display: inline-block
}

input.err-value {
    border-color: #f00;
    color: white;
    background-color: #F44336 !important
}

.first-col-check tr td:first-child {
    width: 30px
}

.mobile-on {
    display: none
}

.line-sep {
    height: 1px;
    clear: both;
    margin: 10px 0
}

.table-bg {
    background-size: 100% 100%;
    height: 30px;
    width: 30px;
    margin: 0 auto
}

.top-right {
    top: 0;
    right: 100px;
    position: absolute
}

.customer-photo {
    border-radius: 50%;
    max-width: 50px;
    max-height: 50px
}

.resa-channel {
    width: 15px;
    height: 15px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid #fff;
    float: left;
    text-align: center;
    margin: 1px 5px 0 0;
    overflow: hidden
}

.border {
    border-radius: 2px;
    background-color: #242726;
    color: #fff;
    padding: 2px 5px
}

.table-blank {
    border-collapse: collapse;
    border-spacing: 0
}

.table-version {
    border-collapse: collapse;
    border-spacing: 0;
    margin-top: 10px;
    width: 100%;
    vertical-align: middle;
    min-width: 1000px
}

.table-version td {
    padding: 7px 5px;
    position: relative
}

.table-version td:not(:first-child) {
    text-align: center;
    width: 200px
}

.table-version tr:nth-child(even) td {
    background-color: #ccc
}

.table-version td.sel {
    background-color: #242726 !important;
    color: #fff
}

.table-version tr:nth-child(even) td.sel {
    background-color: #202020 !important
}

.table-version .opt {
    position: absolute;
    right: 50%;
    transform: translateX(-30px);
    color: #fe875d;
    font-weight: bold
}

.ajax-status {
    position: fixed;
    z-index: 999999;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.ajax-status svg {
    position: absolute;
    bottom: 30px;
    right: 30px
}

.register-panel .ui-selectonemenu .ui-selectonemenu-trigger .ui-icon {
    top: 10px
}

.register-panel .ui-selectonemenu label.ui-selectonemenu-label,
.register-panel input,
.register-panel button {
    padding: 15px
}

.register-panel {
    background: #fff !important
}

.register-map {
    width: 100%;
    height: 400px;
    border: 1px solid #aeb0b5;
    display: none
}

.register-ajax {
    position: fixed;
    top: 12px;
    right: 12px
}

.upload-preview {
    max-width: 100px;
    max-height: 100px
}

.site-preview {
    max-width: 200px;
    max-height: 200px
}

.menu-preview, .menu-preview-top {
    height: 70px;
    background-size: cover
}

.menu-preview {
    background-position: center
}

.menu-preview-top {
    background-position: center top
}

.ui-diagram-element {
    border: 0.1em dotted #E5E4E2;
    background-color: #EFEEEC;
    width: 100px;
    height: 70px;
    text-align: center;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.8);
}

.ui-diagram-element:hover {
    background-color: #C7C6C4
}

.cur-grab {
    cursor: grab
}

#tableDistance {
    display: none
}

#tableDistance .fa-warning {
    display: none !important
}

#tableDistance.red-back .fa-warning {
    display: inline-block !important
}

.map-bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    bottom: 0;
    right: 0;
    background-size: 100% 100%
}

.map-exclude-area {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background: rgba(255, 0, 0, 0.5);
    border-radius: 25%;
    display: none
}

.map-draggable {
    min-width: 1px;
    min-height: 1px;
    box-sizing: border-box;
    text-align: center;
    background-size: 100% 100%;
}

.map-draggable-handle {
    line-height: 18px;
    margin-bottom: 5px;
    font-weight: bold;
    cursor: grab
}

.map-not-draggable-handle {
    z-index: 1;
    position: relative;
    background-color: rgba(255, 255, 255, 0.4);
    border-radius: 5px;
    border: 1px solid #fff;
    margin-bottom: 5px;
    overflow: hidden
}

.map-draggable-names {
    display: block;
    margin-bottom: 5px
}

.map-draggable-content {
    cursor: pointer
}

.map-draggable-handle,
.map-draggable-content {
    z-index: 1;
    position: relative;
    background-color: rgba(255, 255, 255, 0.4);
    border-radius: 5px;
    border: 1px solid #fff;
    margin-bottom: 5px;
    overflow: hidden
}

.map-draggable.oo {
    opacity: 0.5
}

.map-draggable.mu .map-draggable-handle,
.map-draggable.mu .map-draggable-content {
    background-color: rgba(255, 131, 0, 0.6);
}

.map-draggable.rr .map-draggable-handle,
.map-draggable.rr .map-draggable-content {
    background-color: rgba(230, 0, 0, 0.6);
}

.map-highlight .map-draggable-content,
.map-highlight .map-draggable-handle {
    border-color: #333;
    background-color: rgba(100, 100, 100, 0.7);
    color: #fff
}

.map-highlight .red {
    color: #fff !important
}

.map-floor {
    border: 1px solid #999;
    box-sizing: border-box
}

#tableReserv .mu {
    color: #FF8300
}

#tableReserv .rr {
    color: #E60000
}

#tableReserv .oo {
    color: #d65151
}

.avail-main {
    position: relative
}

.avail-labels {
    width: 150px;
    border: 1px solid #ccc;
    box-sizing: border-box;
    position: absolute;
    top: 60px;
    /*top: 76px;*/
    left: 0;
    background: #fff;
    z-index: 9
}
.avail-labels.avail-labels.service-header {
    top: 76px;
}

.avail-labels .gx {
    float: right;
    margin-right: 5px;
    color: #607d8b
}

.avail-name {
    height: 30px;
    box-sizing: border-box;
    padding-left: 10px;
    padding-top: 5px
}

.avail-scroll {
    border: 1px solid #ccc;
    overflow-x: scroll;
    padding-left: 148px
}

.avail-date {
    display: block;
    float: left;
    box-sizing: border-box
}

.avail-hour {
    display: block;
    float: left;
    width: 20px
}

.avail-cal {
    margin-right: 19px;
    float: left
}

.avail-day,
.avail-hour > div {
    height: 30px
}

.avail-cal.y .avail-hour:nth-child(odd) > div:not(:first-child) {
    background: #dedede
}

.aval-cal-service-header{
    text-transform: uppercase;
    text-align: center;
    border-top: 1px solid #ccc;
    background: #eaeaea;
    font-weight: bold;
    font-size: 10px;
    overflow: hidden;
    display: block;
    max-width: 120px;
    margin:auto;
    height: 16px;
}

.avail-hour > div {
    font-size: 0.8em;
    vertical-align: top;
    box-sizing: border-box
}

.avail-date .avail-hour > div:first-child {
    color: #607d8b
}

.avail-date.n,
.avail-date.y .avail-cal.n {
    opacity: 0.6
}

.avail-cal.y .avail-hour > div:not(:first-child) {;
    cursor: pointer
}

.avail-cal .avail-hour:first-child > div:not(:first-child) {
    border-left: 1px solid #ccc
}

.avail-cal .avail-hour > div {
    border-bottom: 1px solid #888
}

.avail-cal .avail-hour > div:not(:first-child) {
    position: relative;
    border-right: 1px solid #ccc
}

.avail-hour:nth-child(odd) > div:first-child {
    padding-top: 10px
}

.avail-now > div:not(:first-child) {
    background-color: #607d8b !important
}

.avail-now > div {
    border-bottom-color: #04493F !important
}

.resa {
    cursor: pointer;
    padding: 2px;
    background: #9f4488;
    color: #fff;
    border-radius: 3px;
    box-sizing: border-box;
    text-align: center;
    border: 1px solid #6A4AA5;
    white-space: nowrap;
    overflow: hidden
}

.resa.mu {
    background: #FF8300 !important;
    border-color: #885C2E
}

.resa.rr {
    background: #E60000 !important;
    border-color: #885C2E
}

.resa.na {
    background: #F00 !important
}

.resa.na:not(:first-child) {
    background: #a10000 !important
}

.resa.oo {
    background: linear-gradient(45deg, #d65151 25%, #bd1717 25%, #bd1717 50%, #d65151 50%, #d65151 75%, #bd1717 75%, #bd1717 100%);
    background-size: 40px 40px;
    border-color: #400
}

.resa.ob {
    background: #607d8b !important
}

.neutral {
    background: gray !important;
}

.ooo {
    background: #a10000 !important;
}

.free {
    background: green !important;
}

.avail-hour .resa {
    position: absolute;
    z-index: 1;
    top: 4px;
    left: 1px;
    z-index: 2
}

.avail-hour .resa:not(:first-child) {
    top: 2px;
    left: 4px;
    z-index: 3
}

.avail-hour .resa:not(.oo):not(:first-child) {
    background: #5e1e4d
}

.ui-droppable-hover,
.avail-cal.y .avail-hour > div:not(:first-child):hover {
    background-color: #00bfe7 !important
}

.login-body {
    background: #fff
}

.login-topbar {
    background: #607d8b;
    padding: 10px;
    border-bottom: 1px solid #fff
}

.login-topbar .logo img {
    height: 40px
}

.login-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}

.login-panel {
    max-width: 500px;
    padding: 50px
}

.login-panel .ui-inputfield {
    margin: 10px 0
}

.login-summary {
    font-size: 2em
}

.login-detail {
    color: #666;
    margin: 10px 0
}

.login-image {
    width: 100%;
    height: auto;
    display: block;
    max-width: 100%;
}

.bubble {
    position: absolute;
    left: 2px;
    top: 2px;
    color: white;
    border-radius: 50%;
    min-width: 16px;
    text-align: center;
    font-size: 0.8em;
    line-height: 16px;
}

@media (max-width: 64.063em) {
    #register-left {
        display: none
    }
}

@media (min-width: 1025px) {
    .layout-wrapper #layout-megamenu-button {
        width: auto !important;
        padding: 0 10px
    }
}

@media (max-width: 1024px) {
    body {
        min-width: 360px
    }
}

@media (max-width: 1200px) and (min-width: 992px) {
    .topbaroff, .search-item {
        display: none !important
    }
}

@media (max-width: 600px) {
    .card:last-child {
        margin-bottom: 0px
    }

    .mobile-off {
        display: none
    }

    .mobile-on {
        display: block
    }

    .sm\:wid-3 {
        width: 3px;
    }

    .sm\:wid-5 {
        width: 5px;
    }

    .sm\:wid-10 {
        width: 10px;
    }

    .sm\:wid-15 {
        width: 15px;
    }

    .sm\:wid-20 {
        width: 20px;
    }

    .sm\:wid-30 {
        width: 30px;
    }

    .sm\:wid-40 {
        width: 40px;
    }

    .sm\:wid-50 {
        width: 50px;
    }

    .sm\:wid-60 {
        width: 60px;
    }

    .sm\:wid-80 {
        width: 80px;
    }

    .sm\:hei-10 {
        height: 10px;
    }

    .sm\:fs-12 {
        font-size: 12px
    }
}

@media (max-width: 480px) {
    .top-right {
        position: static;
        top: 0
    }
}

.statusIcon {
    font-size: 16px;
    vertical-align: middle;
    line-height: 23px;
}

@-webkit-keyframes rotate {
    from {
        -webkit-transform-origin: center;
        transform-origin: center;
        opacity: 1
    }
    to {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: rotate3d(0, 0, 1, 200deg);
        transform: rotate3d(0, 0, 1, 200deg);
        opacity: 1
    }
}

@keyframes rotate {
    from {
        -webkit-transform-origin: center;
        transform-origin: center;
        opacity: 1
    }
    to {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: rotate3d(0, 0, 1, 200deg);
        transform: rotate3d(0, 0, 1, 200deg);
        opacity: 1
    }
}

.rotate {
    -webkit-animation-name: rotate;
    animation-name: rotate
}

#p_cardid {
    width: 25em;
}

.ui-avatar .ui-avatar-dynamic {
    mix-blend-mode: hard-light;
    font-weight: bold;
}

.ui-avatar ui-widget ui-avatar-circle {
    border: 2px solid white;
    border-radius: 40px;
}

.dashboard-warn {
    background-color: #ff9d00 !important;
    background-image: none !important;
}

:target, .selectPanel {
    animation: pulse 1s;
    border: 1px solid #1d8591;
    border-radius: 10px;
    box-shadow: 0 0 10px #1d8591;
    padding: 0.5rem;
}

.selectPanel.card {
    padding: 18px;
}

.selectPanel.card-w-title {
    padding-bottom: 32px;
}

.custom-splitter .ui-splitter-gutter {
    background: orange;
}

.custom-splitter .ui-splitter-gutter-handle {
    background: teal;
}

@media (max-width: 1600px) {
    .customButton .ui-button-text {
        white-space: nowrap;
        text-overflow: ellipsis;
        max-width: 80px;
        overflow: hidden;
    }
}

@media (max-width: 1350px) {
    .customButton .ui-button-text {
        white-space: nowrap;
        text-overflow: ellipsis;
        max-width: 70px;
        overflow: hidden;
    }
}

@media (max-width: 1100px) {
    .customButton .ui-button-text {
        white-space: nowrap;
        text-overflow: ellipsis;
        max-width: 60px;
        overflow: hidden;
    }
}

@media (max-width: 900px) {
    .customButton .ui-button-text {
        white-space: nowrap;
        text-overflow: ellipsis;
        max-width: 50px;
        overflow: hidden;
    }
}

@media (max-width: 767px) {
    .customButton .ui-button-text {
        white-space: nowrap;
        text-overflow: ellipsis;
        max-width: 40px;
        overflow: hidden;
    }
}

@media (max-width: 575px) {
    .customButton .ui-button-text {
        white-space: nowrap;
        text-overflow: ellipsis;
        max-width: 30px;
        overflow: hidden;
    }
}

@media (max-width: 400px) {
    .customButton .ui-button-text {
        white-space: nowrap;
        text-overflow: ellipsis;
        max-width: 20px;
        overflow: hidden;
    }
}

.bord-rad-4 {
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}

/** Credit Cards **/
.credit-card {
    width: 300px;
    height: 200px;
    background-color: #1e449f;
    border-radius: 10px;
    padding: 20px;
    color: #ffffff;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.card-header {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
}

.card-brand,
.card-type {
    font-size: 24px;
    font-weight: bold;
}

.card-issuer {
    font-size: 18px;
    margin-bottom: 15px;
}

.card-number {
    font-size: 20px;
    letter-spacing: 2px;
    margin-bottom: 15px;
}

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

.card-holder,
.card-expiry {
    font-size: 16px;
    font-weight: bold;
}

.card-cvc {
    display: flex;
    align-items: center;
}

.mar-auto {
    margin: auto;
}

/** print plannerMap **/
@media print {
    body{
        -webkit-print-color-adjust: exact;
    }
}

/** End Credit Cards **/

.ui-button-off.ui-button {
    background-color: #EBEFF4;
}

.ui-button-off.ui-button.black {
    color: #000000;
}

.black {
    color: #000000;
}

.layout-topbar .layout-topbar-wrapper {
    padding: 0 0.25rem;
}

.layout-topbar-left {
    min-width: 180px;
}

.custom-dialog .ui-dialog-content {
    width: 90vw !important;
    height: calc(80vh - 30px) !important;
    overflow: auto;
}

.standard-dialog .ui-dialog-content {
    width: 40vw !important;
    height: calc(60vh - 20px) !important;
    overflow: auto;
}