/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */
* {
    -webkit-tap-highlight-color: rgba(0,0,0,0); /* make transparent link selection, adjust last value opacity 0 to 1.0 */
}

body {
    -webkit-touch-callout: none;                /* prevent callout to copy image, etc when tap to hold */
    -webkit-text-size-adjust: none;             /* prevent webkit from resizing text to fit */
    -webkit-user-select: none;                  /* prevent copy paste, to allow, change 'none' to 'text' */
    background-color:#E4E4E4;
    background-image:linear-gradient(to bottom, #A7A7A7 0%, #E4E4E4 51%);
    /*font-family: system-ui, -apple-system, -apple-system-font, 'Segoe UI', 'Roboto', sans-serif;*/
    font-family: "Courier New", Courier, monospace;
    font-size:12px;
    height:100vh;
    margin:0px;
    padding:0px;
    /* Padding to avoid the "unsafe" areas behind notches in the screen */
    padding: env(safe-area-inset-top, 0px) env(safe-area-inset-right, 0px) env(safe-area-inset-bottom, 0px) env(safe-area-inset-left, 0px);
    /*text-transform:uppercase;*/
    width:100%;
}

/* Portrait layout (default) */
.app {
    background:url(../../img/custom/logo.png) no-repeat center top; /* 170px x 200px */
    position:absolute;             /* position in the center of the screen */
    left:50%;
    top:50%;
    height:50px;                   /* text area height */
    width:225px;                   /* text area width */
    text-align:center;
    padding:180px 0px 0px 0px;     /* image height is 200px (bottom 20px are overlapped with text) */
    margin:-115px 0px 0px -112px;  /* offset vertical: half of image height and text area height */
    /* offset horizontal: half of text area width */
}

/* Landscape layout (with min-width) */
@media screen and (min-aspect-ratio: 1/1) and (min-width:400px) {
    .app {
        background-position:left center;
        padding:75px 0px 75px 170px;  /* padding-top + padding-bottom + text area = image height */
        margin:-90px 0px 0px -198px;  /* offset vertical: half of image height */
        /* offset horizontal: half of image width and text area width */
    }
}

h1 {
    font-size:24px;
    font-weight:normal;
    margin:0px;
    overflow:visible;
    padding:0px;
    text-align:center;
}

.event {
    border-radius:4px;
    color:#FFFFFF;
    font-size:12px;
    margin:0px 30px;
    padding:2px 0px;
}

.event.listening {
    background-color:#333333;
    display:block;
}

.event.received {
    background-color:#4B946A;
    display:none;
}

#deviceready.ready .event.listening {
    display: none;
}
#deviceready.ready .event.received {
    display: block;
}

@keyframes fade {
    from {
        opacity: 1.0;
    }
    50% {
        opacity: 0.4;
    }
    to {
        opacity: 1.0;
    }
}

.blink {
    animation:fade 3000ms infinite;
    -webkit-animation:fade 3000ms infinite;
}


@media screen and (prefers-color-scheme: dark) {
    body {
        background-image:linear-gradient(to bottom, #585858 0%, #1B1B1B 51%);
    }
}

/*
 *  BASE
 */

.bold {
    font-weight: 600;
}

.strong {
    font-weight: 900;
}

.riga {
    height: 1px;
}

.barcode {
    width: 100%;
    height: auto;
}

.indent-right {
    text-indent: 2vw;
}

#cont-page .title {
    font-size: 1.7em;
    padding-top: 1vh;
    font-weight: 600;
}

#cont-page .title.card__title {
    font-size: 1.6em;
}

#cont-page .subtitle {
    font-size: 1.5em;
    margin-top: 7px;
    margin-bottom: 13px;
    text-transform: uppercase;
    font-weight: bold;

}

.alert-dialog-title {
    font-weight: bold;

}

#content .alert-dialog-content {
    border-bottom-style: solid;
    margin: 0;
    padding: 24px;
}

.align-right {
    text-align: right;
}

.ui-datepicker-header {
    margin-top: 1vh;
}

.ui-datepicker-title {
    text-align: center;
    font-size: 1.7em;
    font-weight: 600;
}

.ui-datepicker-calendar {
    font-size: 1.6em;
    margin: 1vh;
    text-align: center;
}

.ui-state-default {
    padding: 1vw;
}

.ui-state-disabled {
    opacity: 0.4;
}

.ui-datepicker-now {
    font-weight: 600;
    text-decoration: underline;
}

.ui-datepicker-selected {
    font-weight: 600;
}

.ui-orario-disponibile {
    display: inline-block;
    float: left;
    padding: 1vw 2vw;
    border: 1px solid grey;
    line-height: 1em;
    margin: 0.5vw;
}

.ui-orario-disponibile:hover { cursor: pointer; }

.ui-orario-disponibile.selected {
    background-color: #6366f1;
    color: #fff;
}

.ui-navigate-calendar-left:before, .ui-navigate-calendar-right:before {
    font-size: 20px;
    font-weight: bold;
}

.ui-navigate-calendar-left {
    float: left;
    margin-left: 20px;
}

.ui-navigate-calendar-right {
    float: right;
    margin-right: 20px;
}

table.ui-datepicker-calendar a {
    text-decoration: none;
    color: inherit;
}

/*
 * / BASE
 */


/*
 *  TOOLBAR
 */

.toolbar-button {
    padding-left: 8vw;
    font-size: 2em;

}

ons-toolbar .center {
    text-transform: uppercase;
    font-size: 1.5em;
    text-align: center;
}

ons-toolbar .right {
    padding-right: 5vw;
}

ons-toolbar .contenitore-carrello {
    height: 14vh;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
/*
ons-toolbar:not([inline]) {
    height: 26vh;
}
*/
#myNavigator ons-toolbar, #myNavigator ons-toolbar .center {
    height: 23vh;
    line-height: normal;
}

.bottom-bar {
    height: 16.5vw;
}

/*
 * / TOOLBAR
 */

/*
 *  PAGE-LOGIN
 */

#page-login .page__content {
    display: flex;
}

#page-login .page__content.page--material__content {
    display: flex;
}

#page-login #login-logo {
    width: 100%;
}

#page-login #cont-login {
    text-align: left;
    margin: 27px 0 0 0;
}

#page-login #cont-login label{
    font-weight: 600;
    font-size: 1.5em;
}

#page-login #cont-login span{
    font-weight: 600;
}

#page-login #cont-user {
    text-align: left;
    margin: 27px 0 0 0;
}

#page-login #cont-user label{
    font-weight: 600;
    font-size: 1em;
}

#page-login #cont-pass {
    text-align: left;
    margin: 27px 0 0 0;
}

#page-login #cont-pass label{
    font-weight: 600;
    font-size: 1em;
}

#page-login #cont-sub {
    margin: 3vh 0 0 0;
}

#page-login #cont-sub ons-button{
    width: 100%;
}

#page-login #cont-page{
    text-align: center;
    height: 80vh;
    width: 70vw;
    margin: auto;
    position: relative;
}

#page-login #cont-bottom {
    position: absolute;
    width: 100%;
    bottom: 0;
}

#page-login #cont-bottom #dim-pass{
    float: left;
    padding-left: 2px;
    font-weight: 600;
}

#page-login #cont-bottom #regis{
    float: right;
    padding-right: 2px;
    font-size: 1.2em;
    font-weight: 600;
}

/*
 *  / PAGE-LOGIN
 */

/*
 *  PAGE-HOME
 */

#page-home .page__content {
    display: flex;
}

#page-home .page__content.page--material__content {
    display: flex;
}

#page-home #cont-page{
    text-align: center;
    height: 24vh; /* ex 33vh */
    width: 83vw;
    margin: auto;
    margin-top: 0;
    position: relative;
    padding-top: 0vh;
    /* aggiunto con il height: 23vh; per permettere di mettere centrato i bottoni, ma il 24 è arbitrario e medio*/
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.around-border {
    border: 6px solid transparent;
    border-radius: 11px;
    background-position: top;
    background-size: cover;
    width: calc(100vw - 12px);
    max-height: 65vh;
    height: 65vh;
}

#cont-page .toolbar-button {
    padding-left:0;
    margin-left: 0;
}

#page-home ons-row {
    /*
    padding-top: 2vh;
    padding-bottom: 2vh;
    */
    align-content: flex-end;
}

#page-home ons-col, #cont-bottom ons-col {
    padding: 5px;
    line-height: normal;
}

#page-home ons-col img, #cont-bottom ons-col img {
    width: 13vw;
}

#page-home ons-col label, #cont-bottom ons-col label {
    margin-top: 7px;
    color: #fff;
    display: block;
    text-transform: uppercase;
    font-size: 1em;
}

#page-home #cont-bottom, #cont-bottom {
    position: absolute;
    width: 100%;
    bottom: 0;
    text-align: center;
}

#page-home #cont-bottom #riga-bianca, #cont-bottom #riga-bianca{
    background-color: #fff;
    height: 1.2px;
    width: 84vw;
    margin-left: 8vw;
}

#page-home #cont-bottom ons-col img, #cont-bottom ons-col img {
    width: 10vw;
}

#page-home #cont-bottom ons-col label, #cont-bottom ons-col label {

    font-size: 0.8em;
}
#page-home #cont-bottom ons-row, #cont-bottom ons-row {
    padding-top: 0;
    padding-bottom: 0vh;
    align-content: flex-end;
}

/*
 *  / PAGE-HOME
 */

/*
 *  PAGE-ABBONAMENTI
 */

#page-abbonamenti ons-toolbar {
    border-top: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top-left-radius: 11px;
    border-top-right-radius: 11px;
}

#page-abbonamenti .page__content {
    display: flex;
    top: 23vh;
    border-bottom: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom-left-radius: 11px;
    border-bottom-right-radius: 11px;
}

#page-abbonamenti .page__content.page--material__content {
    display: flex;
}

#page-abbonamenti #home-logo {
    margin-top: 1vh;
    width: 37vw;
}

#page-abbonamenti #cont-page {
    text-align: center;
    height: 86vh;
    width: 83vw;
    margin: auto;
    position: relative;
}


#page-abbonamenti #cont-page ons-col label {
    color: #fff;
    display: block;
    text-transform: uppercase;
    font-size: 1.6em;
    font-weight: 600;
}

#page-abbonamenti .giftcard {
    text-align: left;
}

#page-abbonamenti .giftcard .gift-title {
    font-size: 1.4em;
    font-weight: 600;
    text-transform: uppercase;
    display: none;
}

#page-abbonamenti .giftcard .gift-corpo {
    font-size: 1.4em;
    margin-top: 6px;
    font-weight: 600;
}

#page-abbonamenti .giftcard .cont-barcode {
    max-width: 100%;
    margin-top: 6px;
}


#page-abbonamenti .riga {
    margin-top: 10px;
}

#page-abbonamenti .pacchetti {
    text-align: left;
}

#page-abbonamenti #cont-pacchetti {
    margin-top: 8px;
}

#page-abbonamenti .pacchetti .pac-title {
    font-size: 1.4em;
    font-weight: 600;
    text-transform: uppercase;
    display: none;
}

#page-abbonamenti .pacchetti .pac-corpo {
    font-size: 1.4em;
    margin-top: 6px;
    font-weight: 600;
}

#page-abbonamenti .pacchetti .pac-sub-corpo {
    font-size: 1.1em;
    margin-top: 6px;
    font-weight: 600;
    display: inline-block;
    padding-right: 3px;
}

#page-abbonamenti .pacchetti .cont-consumi .pac-sub-corpo {
    display: block;
}

#page-abbonamenti .pacchetti .label-consumi {
    font-size: 1.2em;
}

#page-abbonamenti #cont-tessere {
    margin-top: 8px;
}

#page-abbonamenti .tessere .tes-title {
    font-size: 1.4em;
    font-weight: 600;
    text-transform: uppercase;
    display: none;
}

#page-abbonamenti .tessere .tes-corpo {
    font-size: 1.4em;
    margin-top: 6px;
    font-weight: 600;
}

#page-abbonamenti .tessere .tes-sub-corpo {
    font-size: 1.1em;
    margin-top: 6px;
    font-weight: 600;
    display: inline-block;
    padding-right: 3px;
}

#page-abbonamenti .tessere {
    text-align: left;
}

#page-abbonamenti #cont-rate {
    margin-top: 8px;
}

#page-abbonamenti .rate .rate-title {
    font-size: 1.4em;
    font-weight: 600;
    text-transform: uppercase;
    display: none;
}

#page-abbonamenti .rate .rate-corpo {
    font-size: 1.4em;
    margin-top: 6px;
    font-weight: 600;
}

#page-abbonamenti .rate .rate-sub-corpo {
    font-size: 1.1em;
    margin-top: 6px;
    font-weight: 600;
    display: block;
    padding-right: 3px;
}

#page-abbonamenti .rate {
    text-align: left;
}

/*
 * / PAGE-ABBONAMENTI
 */

/*
 *  PAGE-PRENOTAZIONI
 */

#page-prenotazioni ons-toolbar, #page-prenotazioni_scelta ons-toolbar, #page-prenotazioni_conferma ons-toolbar {
    border-top: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top-left-radius: 11px;
    border-top-right-radius: 11px;
}

#page-prenotazioni .page__content, #page-prenotazioni_scelta .page__content, #page-prenotazioni_conferma .page__content {
    display: flex;
    top: 23vh;
    border-bottom: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom-left-radius: 11px;
    border-bottom-right-radius: 11px;
}
/*
#page-prenotazioni .page__content.page--material__content {
    display: flex;
    top: 23vh;
}*/

#home-logo {
    margin-top: 1vh;
    width: 37vw;
}

#cont-page.page-prenotazioni .subtitle {
    font-size: 1.5em;
}

.page-prenotazioni hr {
    margin: 5px 9px 5px 9px;
    opacity: 0.8;
    border: 1px solid transparent;
}

#cont-page.page-prenotazioni{
    text-align: center;
    height: calc(77vh - 16.5vw - 12px);
    width: 90vw;
    margin: auto;
    position: relative;
}

.page-prenotazioni .cont-div-cart {
    padding: 2vw 8vw;
}

.page-prenotazioni ons-row {
    padding-top: 0vh;
    padding-bottom: 2vh;
    align-content: flex-end;
    justify-content: center;
}

.page-prenotazioni ons-col {
    padding: 0;
    max-width: 50%;
}

#page-prenotazioni_scelta .page-prenotazioni ons-col {
    padding: 0 8vw;
    max-width: 30vw;
}

#page-prenotazioni_scelta #cont-page.page-prenotazioni{
    height: calc(77vh - 16.5vw - 12px);
}

#page-prenotazioni_scelta .iconSelection {
    padding: 3vh 0 0 0;
}

#page-prenotazioni_scelta .listSelection {
    padding: 8px;
}

#page-prenotazioni_scelta .listSelection ons-button {
    margin: 0 0 15px 0;
    text-align: left;
    /*opacity: 0.8;*/
    border-radius: 3px;
}

#page-prenotazioni_scelta .page-prenotazioni ons-row {
    padding-bottom: 0;
}

#page-prenotazioni_scelta .page-prenotazioni hr {
    background-color: #58330a;
    height: 2px;
}

#page-prenotazioni_scelta .sotto-servizio div {
    padding: 5px 0 5px 0;
}

#page-prenotazioni_scelta .icon-of-service {
    float: right;
    height: 34px;
}

#page-prenotazioni_scelta .bottom-bar .left {
    padding-left: 4vw;
}

#page-prenotazioni .bottom-bar .left {
    padding-left: 4vw;
}

#page-prenotazioni_scelta .bottom-bar .left .notification{
    margin-left: -1vw;
}

.page-prenotazioni ons-col div {
    border-radius: 10px;
    padding: 5px;
}

.page-prenotazioni ons-col img {
    width: 100%;
}

.page-prenotazioni ons-col label {
    margin-bottom: 7px;
    color: #58330a;
    display: block;
    text-transform: uppercase;
    font-size: 1.4em;
    font-weight: bold;
}

#page-prenotazioni_conferma #cont-page {
    width: 100%;
}

#page-prenotazioni_conferma ons-bottom-toolbar ons-button {
    line-height: 9vh;
    background-color: transparent;
    font-size: 1.6em;
}

@supports(animation-name: shakeCart) {

    .shake {
        animation: shakeCart .4s ease-in-out forwards;
    }

}
@supports not (animation-name: shakeCart) {

}

div.floating-cart{
    position:absolute;
    width:276px;
    height:36px;
    background:#fff;
    z-index:200;
    overflow:hidden;
    box-shadow:0px 5px 31px -1px rgba(0, 0, 0, 0.15);
    display:none;
}

div.floating-cart.moveToCart{
    /*left: 35px !important;
    top: calc(100% - 135px) !important;*/
    left: 80vw !important;
    top: calc(18vh + 56px) !important;
    width: 47px;
    height: 47px;
    border-radius: 20px;
    -webkit-transition: all 800ms ease-in-out;
    -moz-transition: all 800ms ease-in-out;
    -ms-transition: all 800ms ease-in-out;
    -o-transition: all 800ms ease-in-out;
    transition: all 800ms ease-in-out;
}
body.MakeFloatingCart div.floating-cart.moveToCart{
    /*left: 35px !important;
    top: calc(100% - 35px) !important;*/
    left: 90vw !important;
    top: calc(12vh + 56px) !important;
    width: 21px;
    height: 22px;
    box-shadow:0px 5px 31px -1px rgba(0, 0, 0, 0);
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -ms-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}

div.floating-cart-remove{
    position:absolute;
    width: 21px;
    height: 22px;
    background:#fff;
    border-radius: 20px;
    z-index:200;
    opacity: 1;
    overflow:hidden;
    box-shadow:0px 5px 31px -1px rgba(0, 0, 0, 1);
    display:none;
}

div.floating-cart-remove.removeToCart{
    /*left: 35px !important;
    top: calc(100% - 135px) !important;*/
    left: 40vw !important;
    top: 30vh !important;
    width: 47px;
    height: 36px;
    border-radius: 20px;
    opacity: 0.5;
    box-shadow:0px 5px 31px -1px rgba(0, 0, 0, 0.5);
    -webkit-transition: all 200ms ease-out;
    -moz-transition: all 200ms ease-out;
    -ms-transition: all 200ms ease-out;
    -o-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
}
body.MakeFloatingCart div.floating-cart-remove.removeToCart{
    /*left: calc(100% - 92vw) !important;
    top: calc(80% - 1px) !important;*/
    left: 8vw !important;
    top: 50vh !important;
    width: 82vw;
    height: 36px;
    border-radius: 3px;
    opacity: 0;
    box-shadow:0px 5px 31px -1px rgba(0, 0, 0, 0);
    -webkit-transition: all 600ms ease-in;
    -moz-transition: all 600ms ease-in;
    -ms-transition: all 600ms ease-in;
    -o-transition: all 600ms ease-in;
    transition: all 600ms ease-in;
}

/*  Non usati
@keyframes xAxis {
    100% {
        transform: translateX(calc(50vw - 105px));
    }
}

@keyframes yAxis {
    100% {
        transform: translateY(calc(-50vh + 75px));
    }
}
*/
@keyframes shakeCart {
    25% {
        transform:translateX(6px)
    }
    50% {
        transform:translateX(-4px);
    }
    75% {
        transform:translateX(2px);
    }
    100% {
        transform:translateX(0);
    }
}

/*
 * / PAGE-PRENOTAZIONI
 */

/*
 *  PAGE-STORICO
 */

#page-storico ons-toolbar {
    border-top: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top-left-radius: 11px;
    border-top-right-radius: 11px;
}

#page-storico .page__content {
    display: flex;
    top: 23vh;
    border-bottom: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom-left-radius: 11px;
    border-bottom-right-radius: 11px;
}

#page-storico .page__content.page--material__content {
    display: flex;
}

#page-storico #home-logo {
    margin-top: 1vh;
    width: 37vw;
}

#page-storico #cont-page{

    text-align: center;
    height: calc(77vh - 16.5vw - 12px);
    width: 90vw;
    margin: auto;
    position: relative;
}

#page-storico table.list-prodotti{
    margin-left: 3vw;
    width: 100%;
    font-size: 0.9em;
}

#page-storico table.list-prodotti td {
    padding: 0 0 4px 4px;
}

#page-storico table.list-prodotti td.left {
    text-align: left;
}


#page-storico table.list-prodotti td.right {
    text-align: right;
    padding-right: 32px;
}

#page-storico #cont-storico .expandable-content.list-item__expandable-content {
    padding-top: 0;
    padding-bottom: 0;
}

#page-storico ons-list-item.list-item.list-item--expandable {
    font-size: 1.4em;
    font-weight: 600;
}

#page-storico ons-list-item.list-item.list-item--expandable .center.list-item__center {
    justify-content: flex-end;
}

#page-storico .loading {
    font-size: 2em;
}

/*
 * / PAGE-STORICO
 */

/*
 *  PAGE-PROMO
 */

#page-promo .page__content {
    display: flex;
}

#page-promo ons-toolbar {
    border-top: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top-left-radius: 11px;
    border-top-right-radius: 11px;
}

#page-promo .page__content {
    display: flex;
    top: 23vh;
    border-bottom: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom-left-radius: 11px;
    border-bottom-right-radius: 11px;
}

#page-promo .page__content.page--material__content {
    display: flex;
}

#page-promo #home-logo {
    margin-top: 1vh;
    width: 37vw;
}

#page-promo #cont-page{
    text-align: center;
    height: calc(77vh - 16.5vw - 12px);
    width: 90vw;
    margin: auto;
    position: relative;
}

/*
 * / PAGE-PROMO
 */

/*
 *  PAGE-SHOP
 */

#page-shop .page__content {
    display: flex;
}

#page-shop ons-toolbar {
    border-top: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top-left-radius: 11px;
    border-top-right-radius: 11px;
}

#page-shop .page__content {
    display: flex;
    top: 23vh;
    border-bottom: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom-left-radius: 11px;
    border-bottom-right-radius: 11px;
}

#page-shop .page__content.page--material__content {
    display: flex;
}

#page-shop #home-logo {
    margin-top: 1vh;
    width: 37vw;
}

#page-shop #cont-page{
    text-align: center;
    height: calc(77vh - 16.5vw - 12px);
    width: 90vw;
    margin: auto;
    position: relative;
}

/*
 * / PAGE-SHOP
 */

/*
 *  PAGE-CART
 */

#page-cart ons-bottom-toolbar ons-button {
    line-height: 9vh;
    background-color: transparent;
    font-size: 1.6em;
}

#page-cart ons-toolbar {
    border-top-left-radius: 11px;
    border-top-right-radius: 11px;
}

#page-cart .page__content {
    /*display: flex;
    top: 23vh;*/
    border-bottom: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom-left-radius: 11px;
    border-bottom-right-radius: 11px;
}

#page-cart .page__content {
    top: 23vh;
}

#page-cart .title.card__title {
    font-size: 1.7em;
    font-weight: 600;
    margin: 0;
    float: left;
}

#page-cart ons-select {
    width: 100%;
}

#page-cart ons-select select {
    font-size: 1em;
}

#page-cart .card {
    padding-bottom: 4px;
}

#page-cart .content.card__content {
    min-height: 32px;
}
/*
 *  / PAGE-CART
 */


/*
 *  PAGE-LISTAPRENOTAZIONI
 */

#page-listaprenotazioni .page__content {
    display: flex;
}

#page-listaprenotazioni ons-toolbar {
    border-top: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top-left-radius: 11px;
    border-top-right-radius: 11px;
}

#page-listaprenotazioni .page__content {
    display: flex;
    top: 23vh;
    border-bottom: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom-left-radius: 11px;
    border-bottom-right-radius: 11px;
}

#page-listaprenotazioni .page__content.page--material__content {
    display: flex;
}

#page-listaprenotazioni #home-logo {
    margin-top: 1vh;
    width: 37vw;
}

#page-listaprenotazioni #cont-page{
    text-align: center;
    height: calc(77vh - 16.5vw - 12px);
    width: 90vw;
    margin: auto;
    position: relative;
}

#page-listaprenotazioni #listaPrenotazioni ons-card.prenotazioni ons-row.data {
    font-size: 4.5vw;
    font-weight: 600;
}

#page-listaprenotazioni #listaPrenotazioni ons-card.prenotazioni ons-row.ora {
    font-size: 4vw;
    font-weight: 600;
}

#page-listaprenotazioni #listaPrenotazioni ons-card.prenotazioni ons-row.n-prenotazioni {
    font-size: 4.5vw;
    margin-bottom: 2px;
}

#page-listaprenotazioni #listaPrenotazioni ons-card.prenotazioni ons-row.lita-servizi {
    font-size: 3vw;
    font-weight: 600;
}

#page-listaprenotazioni #listaPrenotazioni ons-card.prenotazioni ons-row.lita-servizi ons-col {
    margin-bottom: 3px;
    white-space: nowrap;
    padding-right: 5px;
}

/*
 * / PAGE-LISTAPRENOTAZIONI
 */

/*
 *  PAGE-DOVESIAMO
 */

#page-dovesiamo .page__content {
    display: flex;
}

#page-dovesiamo ons-toolbar {
    border-top: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top-left-radius: 11px;
    border-top-right-radius: 11px;
}

#page-dovesiamo .page__content {
    display: flex;
    top: 23vh;
    border-bottom: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom-left-radius: 11px;
    border-bottom-right-radius: 11px;
}

#page-dovesiamo .page__content.page--material__content {
    display: flex;
}

#page-dovesiamo #home-logo {
    margin-top: 1vh;
    width: 37vw;
}

#page-dovesiamo #cont-page{
    text-align: center;
    height: calc(77vh - 16.5vw - 12px);
    width: 90vw;
    margin: auto;
    position: relative;
}

/*
 * / PAGE-DOVESIAMO
 */

/*
 *  PAGE-ORARI
 */

#page-orari .page__content {
    display: flex;
}

#page-orari ons-toolbar {
    border-top: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top-left-radius: 11px;
    border-top-right-radius: 11px;
}

#page-orari .page__content {
    display: flex;
    top: 23vh;
    border-bottom: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom-left-radius: 11px;
    border-bottom-right-radius: 11px;
}

#page-orari .page__content.page--material__content {
    display: flex;
}

#page-orari #home-logo {
    margin-top: 1vh;
    width: 37vw;
}

#page-orari #cont-page {
    text-align: center;
    height: calc(77vh - 16.5vw - 12px);
    width: 90vw;
    margin: auto;
    position: relative;
}

#page-orari #cont-page .lita-orari ons-col {
    text-align: left;
    font-size: 4.7vw;
}


/*
 * / PAGE-ORARI
 */

/*
 *  PAGE-MESSAGGI
 */

#page-messaggi .page__content {
    display: flex;
}

#page-messaggi ons-toolbar {
    border-top: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top-left-radius: 11px;
    border-top-right-radius: 11px;
}

#page-messaggi .page__content {
    display: flex;
    top: 23vh;
    border-bottom: 6px solid transparent;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom-left-radius: 11px;
    border-bottom-right-radius: 11px;
}

#page-messaggi .page__content.page--material__content {
    display: flex;
}

#page-messaggi #home-logo {
    margin-top: 1vh;
    width: 37vw;
}

#page-messaggi #cont-page {
    text-align: center;
    height: calc(77vh - 16.5vw - 12px);
    width: 90vw;
    margin: auto;
    position: relative;
}

#page-messaggi #cont-page .lita-orari ons-col {
    text-align: left;
    font-size: 4.7vw;
}

.chat {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    z-index: 2;
    box-sizing: border-box;
    border-radius: 1rem;
    background: white;
    box-shadow: 0 0 8rem 0 rgba(0, 0, 0, 0.1), 0rem 2rem 4rem -3rem rgba(0, 0, 0, 0.5);
}
.chat .contact.bar {
    display: none;/* LB Aggiunto in quanto ora non mi serve */
    flex-basis: 3.5rem;
    flex-shrink: 0;
    margin: 1rem;
    box-sizing: border-box;
}
.chat .messages {
    padding: 0.4rem;
    background: #F7F7F7;
    flex-shrink: 2;
    overflow-y: auto;
    box-shadow: inset 0 2rem 2rem -2rem rgba(0, 0, 0, 0.05), inset 0 -2rem 2rem -2rem rgba(0, 0, 0, 0.05);
    text-align: left;
}
.chat .messages .time {
    font-size: 0.8rem;
    background: #EEE;
    padding: 0.25rem 1rem;
    border-radius: 2rem;
    color: #999;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
}
.chat .messages .message {
    box-sizing: border-box;
    padding: 0.5rem 1rem;
    margin: 1rem;
    background: #FFF;
    border-radius: 1.125rem 1.125rem 1.125rem 0;
    min-height: 2.25rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 66%;
    box-shadow: 0 0 2rem rgba(0, 0, 0, 0.075), 0rem 1rem 1rem -1rem rgba(0, 0, 0, 0.1);
}
.chat .messages .message div.orario {
    font-size: 10px;
    text-align: left;
    width: 100%;
    font-style: italic;
    margin-top: 4px;
}
.chat .messages .message.me div.orario {
    text-align: right;
}
.chat .messages .message p {
    margin: 0;
}
.chat .messages .message.me {
    margin: 1rem 0.5rem 1rem auto;
    border-radius: 1.125rem 1.125rem 0 1.125rem;
    background: #333;
    color: white;
}
.chat .messages .message.him {
    margin: 1rem auto 1rem 0.5rem;
}
.chat .messages .message .typing {
    display: inline-block;
    width: 0.8rem;
    height: 0.8rem;
    margin-right: 0rem;
    box-sizing: border-box;
    background: #ccc;
    border-radius: 50%;
}
.chat .messages .message .typing.typing-1 {
    -webkit-animation: typing 3s infinite;
    animation: typing 3s infinite;
}
.chat .messages .message .typing.typing-2 {
    -webkit-animation: typing 3s 250ms infinite;
    animation: typing 3s 250ms infinite;
}
.chat .messages .message .typing.typing-3 {
    -webkit-animation: typing 3s 500ms infinite;
    animation: typing 3s 500ms infinite;
}
.chat .input {
    box-sizing: border-box;
    flex-basis: 4rem;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    padding: 0 0 0 0.5rem;
}
.chat .input i {
    font-size: 1.5rem;
    margin-right: 0.5rem;
    color: #666;
    cursor: pointer;
    transition: color 200ms;
}
.chat .input i:hover {
    color: #333;
}
.chat .input input, .chat .input textarea {
    border: none;
    background-image: none;
    background-color: white;
    padding: 0.5rem; /* 0.5rem 1rem */
    margin-right: 0.5rem;
    border-radius: 1.125rem;
    flex-grow: 2;
    box-shadow: 0 0 1rem rgba(0, 0, 0, 0.1), 0rem 1rem 1rem -1rem rgba(0, 0, 0, 0.2);
    font-family: Red hat Display, sans-serif;
    font-weight: 400;
    letter-spacing: 0.025em;
}
.chat .input textarea, .chat .input textarea:hover {
    height: 1rem;
    transition: all .4s cubic-bezier(0.565, -0.260, 0.255, 1.410);
    padding: 0.5rem;
}
.chat .input textarea:focus {
    height: 60px;
    box-shadow: 0px 0px 20px rgba(0,0,0,0.3);
    padding: 0.5rem;
}
.chat .input input:placeholder {
    color: #999;
}


input.text-input.text-input--material.text-input--underbar {
    color: #fff;
}

/*
 * / PAGE-MESSAGGI
 */