body {
    overflow-y:scroll;
}
* {
    box-sizing: border-box;
}

#dialog-container { background-color:#63b2de; color:#63b2de; }
#dialog-container h1,#dialog-container h2,#dialog-container h3,#dialog-container h4,#dialog-container main {
    color:#fff;
}

#dialog-container main {
    color:#fff;
}

section.px {
    padding:20px 0;
}
.px-container {
    border-radius:20px;
    box-shadow:0 0 20px #ccc;
    background-color:#63b2de;
    color:#fff;
}

.px-header {
    height:130px;
    /*background-image:url(/v2/images/fun.png);
    background-position:center center;
    background-size:cover;*/
    border-top-left-radius:20px;
    border-top-right-radius:20px;
    box-shadow:0 3px 3px #69a;

    display:grid;
    grid-template-columns:1fr 1fr 1fr 1fr;
}

.px-header>div {
    height:130px;
}
.px-header .milz {
    min-height:130px;
}

.px-header>div:first-child>div.milz {
    border-top-left-radius:20px;
}

.px-header>div:last-child>div.milz {
    border-top-right-radius:20px;
}

.px-header>div {
    height:130px;
}

.px-top {
    text-align:center;
}

.px-pic {
    display:inline-block;
    width:152px;
    height:152px;
    border-radius:75px;
    background-color:#fff;
    vertical-align:middle;
    margin:-100px 0 20px 0;
    border:1px solid #000;
    border:1px solid #fff;
    box-shadow:0 0 12px #000;
}
.px-pic .photo {
    display:none;
    height:150px;
    width:150px;
    border-radius:75px;
    background-position:center center;
    background-size:cover;
}
.px-pic .fa {
    display:none;
    line-height:150px;
    height:150px;
    width:150px;
    text-align:center;
    font-size:7rem;
    color:#63b2de;
}
.px-nav {
    text-align:center;
}
.px-nav>span {
    display:inline-block;
    padding:2px 6px;
    margin:3px;
    cursor:pointer;
    border-bottom:2px solid transparent;
    transition:0.25s;
}
.px-nav>span:hover {
    border-bottom:2px solid #e3eff8;
}
.px-nav .fa {
    margin-right:3px;
}
.px-nav>span.current {
    border-bottom:2px solid #fff;
}
.px-content {
    padding:20px;
}
.px-content main {
    padding:20px;
    background-color:#e3eff8;
    color:#63b2de;
    border-radius:20px;
    border:1px solid #cde;
    text-align:center;
}
.px-content main .readable {
    color:#444;
}
.px-content main .data {
    color:#444;
}
.px-content main a:not(.button):not(.mainbutton) {
    color:#444;
    text-decoration:underline;
}

.fieldgroup fieldset {
    border:none;
    margin:0 0 10px 0;
    padding-block-start:0;
    padding-block-end:0;
    padding-inline-start:0;
    padding-inline-end:0;
    margin-inline-start:0;
    margin-inline-end:0;
}

.fieldgroup fieldset .summary>div {
    text-align:left;
}

.fieldgroup fieldset .summary {
    display:block;
    background-color:#fff;
    padding:5px 10px;
    text-align:center;
}

.fieldgroup fieldset div {
    margin-bottom:6px;
}

.fieldgroup fieldset input {
    width:100%;
}

.fieldgroup fieldset input[type=checkbox] {
    width:auto;
}

.fieldgroup fieldset legend {
    width:100%;
    font-size:0.9em;
    height:19px;
    overflow-y:hidden;
}

.fieldgroup fieldset button.button {
    width:100%;
}

.fieldgroup fieldset .field-info {
    display:none;
}
.fieldgroup fieldset:hover .field-info {
    display:block;
    background-color:#fff;
    padding:10px;
    border-radius:10px;
    box-shadow:0 0 20px #bbb;
    position:absolute;
    margin-top:32px;
    z-index:2001;
    max-width:480px;
    font-size:1.4em;
}
.fieldgroup fieldset .help {
    font-size:1.4em;
    float:right;
    color:#36b;
    cursor:pointer;
}
.fieldgroup fieldset:hover .help {
    text-shadow:0 0 2px #fff;
    color:#039;
}
.fieldgroup fieldset .seasonbordercol {
    border-left-width:2px;
    border-right-width:2px;
    border-top-width:2px;
    border-bottom-width:2px;
}
.fieldgroup input {
    font-size:1.1rem;
    max-width:400px;
}
.fieldgroup select {
    font-size:1.1rem;
}
input:disabled,select:disabled {
    opacity:0.5;
    background-color:#fff;
    cursor:not-allowed;
}
.px-container .cb-cont {
    line-height:26px;
}
.red-cross {
    color:#400;
}
.green-tick {
    color:#080;
}
.middle {
    display:inline-block;
    width:400px;
    text-align:left;
}
.left {
    text-align:left;
}
.reservations {
    display:grid;
    grid-template-columns:1fr;
    gap:20px;
}
.reservation>.reservation {
    display:block;
    background-color:#fff;
    border-radius:60px;
    padding:8px 12px;
    height:120px;
    overflow:hidden;
    transition:0.25s;
    cursor:pointer;
    position:relative;
    color:#444;
}
.reservation>.reservation:hover {
    box-shadow:0 0 20px #bbb;
}
.reservation .bookingref-back {
    position:absolute;
    left:0;
    top:0;
    right:0;
    background-color:#444;
    opacity:0.5;
    height:30px;
    width:120px;
}
.reservation.winter .bookingref-back {
    background-color:#202f66;
}
.reservation.summer .bookingref-back {
    background-color:#e4701f;
}
.reservation.israel .bookingref-back {
    background-color:#b11015;
}
.reservation.manor .bookingref-back {
    background-color:#522289;
}
.px-content main .reservation .bookingref {
    position:absolute;
    left:0;
    top:0;
    right:0;
    padding-left:38px;
    padding-top:5px;
    height:30px;
    font-weight:bold;
    width:120px;
    color:#ddd;
    text-shadow:0 0 2px #000;
    font-weight:bold;
}
.reservation .statusdescription {
    font-weight:bold;
}
.reservation .balance {
    background-color:#aaa;
    color:#fff;
    display:inline-block;
    padding:2px 6px;
    margin:0 4px;
    display:none;
}
.reservation .info-lines {
    margin-top:0;
}
.reservation .info-lines div {
    line-height:1.2em;
    margin-bottom:6px;
}
.reservation .fa {
    margin-right:3px;
    width:20px;
    text-align:center;
}
.resortimg {
    display:inline-block;
    width:120px;
    height:120px;
    min-height:120px;
    float:left;
    margin:-8px 12px -8px -12px;
    border-top-left-radius:60px;
    border-bottom-left-radius:60px;
}

.zxcvbn-result {
    display:none;
    padding:10px 20px;
    color:#444;
    margin:10px 0;
}
.zxcvbn-result .score-wrapper {
    background-color:#fff;
    display:inline-block;
    padding:2px 6px;
    color:#444;
}
.zxcvbn-result .warning-wrapper {
    display:none;
    color:#fff;
    background-color:#800;
    margin:8px 0;
    padding:4px 8px;
}
.zxcvbn-result .warning-wrapper.soft {
    color:#444;
    background-color:#fff;
}
.zxcvbn-result .warning-wrapper.soft .fa {
    display:none;
}
label {
    color:#000;
}
.profile-picture {
    display:inline-block;
    width:180px;
    height:180px;
    line-height:180px;
    border-radius:90px;
    border:2px solid #63b2de;
    color:#444;
    background-color:#fff;
    text-align:center;
    vertical-align:middle;
    background-position:center center;
    background-size:cover;
}
#dialog-container .phed-container {
    width:100%;
    display:grid;
    grid-template-columns:1fr 120px;
    gap:10px;
}
#dialog-container .phed-photo-container {
    width:100%;
    display:grid;
    grid-template-columns:1fr 182px 1fr;
    gap:10px;
}
#dialog-container .phed-edit-photo {
    margin:0 auto;
    width:180px;
    height:200px;
    border:1px solid #000;
    background-color:#fff;
}
.new-booking-top {
    padding:20px;
    margin-bottom:10px;
    background-color:#fff;
    border-radius:20px;
}
.resubscribe-link {
	color:#039;
	cursor:pointer;
}
.resubscribe-link:hover {
	text-decoration:underline;
}
.px-container main .dietreq>div {
    display:none;
    margin:8px 0;
}
.px-container main .dietreq>div.req {
    background-color:#fff;
    border-radius:8px;
    padding:10px 20px;
}
.grecaptcha-badge { 
    visibility: hidden;
}
section>small {
    color:#bbb;
}
section>small a {
    color:#bbb;
    text-decoration:underline;
}

.contact-credit-c {
    border:1px solid #63b2de;
    padding:5px 8px;
    background-color:#fff;
}

.contact-credit-c .balance {
    float:right;
    font-size:1.4em;
    background-color:#e3eff8;
    padding:2px 6px;
}

/*Mobile*/
@media (max-width: 767px) {
    .fieldgroup fieldset {
        margin-bottom:20px;
    }
    .fieldgroup .fieldsection {
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:20px;
        margin-bottom:20px;
    }
    .fieldgroup fieldset:hover .field-info {
        position:fixed;
        left:4px;
        top:4px;
        right:4px;
        z-index:2400;
    }
    .middle {
        display:inline-block;
        width:auto;
        max-width:400px;
    }    
    #dialog-container .phed-container {
        grid-template-columns:1fr;
        margin-left:-10px;
    }
    #dialog-container .phed-photo-container {
        gap:0;
    }
    #dialog-container .phed-rotate-title {
        float:left;
    }
}
/*Small Mobile*/
@media (max-width: 400px) {
}
/*Desktop*/
@media (min-width: 768px) {
    .fieldgroup .fieldsection {
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:20px;
        margin-bottom:20px;
    }
    .fieldgroup .fieldsection {
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:20px;
        margin-bottom:20px;
    }
}
/*Large Desktop*/
@media (min-width: 1200px) {
    .reservations {
        grid-template-columns:1fr 1fr;
    }
    .fieldgroup .fieldsection {
        grid-template-columns:1fr 1fr 1fr;
    }
}
