.flex {
    display: flex;
}

.flex-row {
    display:flex !important;
    flex-direction: row;
    width: 100%;
    overflow: hidden;
}

.flex-column {
    display:flex !important;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}

.flex-grow {
    flex: auto;
}

.no-flex {
    flex: none;
}

.flex-column-middle-align {
    justify-content: center;
}

.google-signin-btn {
    width: 191px;
    height: 46px;
    border: 0px none;
    padding: 0;
    display: inline-block;
    box-sizing: border-box;
    background: url(../images/google/google-signin-dark.png) 0 0 no-repeat;
    vertical-align: middle;
    cursor: pointer;
}
.google-signin-btn:hover, .google-signin-btn:focus {
    background-position:0 -46px;
}
.google-signin-btn:active {
    background-position:0 -92px;
}
.google-signin-btn[disabled], .google-signin-btn.disabled {
    background-position:0 -138px;
    cursor: default;
}

.int-input-group {
    display: flex;
    align-items:center;
}
.int-input-group input {
    width: 50px !important;
}
.int-input-group .decrease-btn, .int-input-group .increase-btn {
    font-size: 21px;
    color: #888;
    cursor: pointer;
    vertical-align: top;
    margin-top: 2px;
    margin-right:2px;
    margin-left:2px;
}
.int-input-group .int-input-val {
    /*line-height: 22px;*/
    /*height: 22px;    */
}
.int-input-group .decrease-btn:hover, .int-input-group .increase-btn:hover {
    color: #555;
}


/* login */
.login-buttons button[disabled="disabled"] {
    opacity: 0.7;
}
.login-loader-wrap {
    text-align: center;    
    padding: 10px 0 15px 0;
}
.login-loader {
    font-size: 18px;
    transform-origin: 50% calc(50% - .95px); /* fix for uneven rotation (subtle but visible) */
}
.login-loader-msg {
    margin-left: 5px;
    display: block;
    margin-top: 5px;
}
#signin .errors {
    color: #990000 !important;
    text-align: center;
    font-weight: bold;
    padding: 5px 0 10px 0;
}


/* datepicker */
.datepicker{
    z-index: 1151 !important; /* make visible within modal */
}

.datepicker td.day.highlight {
    font-weight: 900;
    color: #000 !important;
}

.datepicker-dropdown td span.year {
    color: #222 !important;
}
.datepicker-dropdown table tr td, .datepicker-dropdown table tr th {
    height: 18px;
    width: 18px;
    padding: 2px;
    font-size: 12px;
    font-family: Arial, sans-serif;
}
.datepicker-dropdown th.datepicker-switch {
    width: 130px;
}
.datepicker-dropdown table tr td span {
    height: 34px;
    line-height: 34px;
}
.datepicker-condensed {
    font-size: .9em;
}
.datepicker-condensed .datepicker-inline {
    width: auto;
}
.datepicker-condensed .datepicker-days table tr td, .datepicker-condensed .datepicker-days table tr th {
    height: 18px;
    text-align: center;
    width: 18px;
    padding:0;
    margin:0;
}
.datepicker-condensed .datepicker table tr td span {
    line-height: 27px;
    height: 27px;
}

.datepicker-condensed .table-condensed {
    width: 100%;
}

.datepicker-condensed .table-condensed > tbody > tr > td {
    padding:0;
    margin:0;
}

/* qtip */
.qtip {
    border-width: 1px !important;
    padding: 0 !important;
    max-width: none !important;
}
.qtip label {
    margin: 0;
}

.qtip-content {
    word-wrap: normal !important;
}

.qtip-dark {
    background-color: #3a3a3a !important;
    color: #fff !important;
    font: 12px/16px 'Open Sans',Arial,sans-serif !important;
}
.qtip-dark .qtip-content {
    padding: 10px 15px;
}

.qtip-dark .qtip-content a {
    color: #95d167;
}
.qtip-dark .qtip-content a:hover {
    color: #fff;
}

.qtip-red, .qtip-red * {
    background-color: #FF8080 !important;
    color: #fff !important;
    font: 12px/16px 'Open Sans',Arial,sans-serif !important;
}

/*.qtip-red {
    background-color: #FC523E !important;
    color: #FFFFFF !important;
    font-size: 14px !important;
    border-color: #D95252 !important;
    padding: 2px 0px;
    line-height: 120% !important;
}*/
.qtip-red a {
    color: #fff !important;
    text-decoration: underline !important;
}
.qtip-red a:hover {
    text-decoration: none !important;
}

#qtip-overlay div{
    background-color: #000;

    opacity: 0.5;
    filter:alpha(opacity=50);
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

#qtip-manage-appointments-wizard-qtip-content {
    overflow-y: auto;
}

.manage-appointments-reassign-wizard {
    cursor: default;
    line-height: normal;
}

.manage-appointments-reassign-wizard .step2 p {
    background: #555;
    color: #fff;
    padding: 2px 5px;
    font-size: 10.5px;
}

.manage-appointments-list {
    margin:0;
    padding:0;
    list-style-type: none;
}

.manage-appointments-list.manage-appointments-users, .manage-appointments-list.manage-appointments-assigned {
    max-height: 200px;
    overflow: auto;
}

.manage-appointments-list li {
    cursor: pointer;

}

.manage-appointments-list li:hover {
    background: #eee;
}

.manage-appointments-list-row {
    display: table-row;
    line-height: 22px;
}

.manage-appointments-list-row > div {
    display: table-cell;
    padding: 0 5px;
}

#manage-appointments-reschedule-datepicker td.active {
    background-color: transparent;
    color: inherit;
    text-shadow: none;
}

#manage-appointments-reschedule-datepicker td.active-wk {
    background-color: #ddd;
    border-radius: 0px;
}

#manage-appointments-reschedule-datepicker td.today {
    background-color: #ffdb99;
    border-color: #ffb733;
    color: #000 !important;
}

#manage-appointments-reschedule-conf code {
    background-color: #3a87ad;
    border-radius: 4px;
    color: #fff;
    font-family: Menlo,Monaco,Consolas,"Courier New",monospace;
    font-size: 0.9em;
    padding: 2px 5px;
    text-shadow: none;
    white-space: nowrap;
}

.manage-appts-between-filter input {
    display: inline-block;
    max-width: 100px !important;
}
.manage-appts-between-filter .and-label {
    margin: 0 10px;
    display: inline-block;
}

.manage-appointments-actions .disabled {
    opacity: 0.35;
    color: red;
}
.manage-appointments-actions .ques {
    margin: 0;
}

#manage-appointments-content .async-failed-warning:before {
    content: "\f06a";
}

.ma-circle {
    height: 100%;
    width: 100%;
    border-radius: 50%;
    box-sizing: border-box;
}

.ma-circle-status.busy {
    background: #c09853;
}

.ma-circle-status.available {
    background: #468847;
}

.ma-list-row-name > div {
    width: 150px;
    font-weight: 700;
    font-size: 11px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.ma-list-row-status {
    width: 120px;
    font-size: 10px;
}

.ma-list-row-actions {
    width:30px;
    text-align:center;
}

.ma-list-row-actions .loader {display:none;}
.ma-list-row-actions .assign {display:none;}
a.btn-flat {text-decoration:none;background:#999;padding:2px 5px;border-radius:3px;color:#fff;font-size:10px;text-shadow:none;}
a.btn-flat:hover {background:#555;}
.ma-list-row-actions.busy .loader {display: block;}
.ma-list-row-actions.checked .loader {display: none !important;}
.ma-list-row-actions.checked .assign {display: block;}

.my-modal-error-qtip {
    background-color: #fff !important;
    color: #000 !important;
    border: 0px none !important;
    border-radius: 3px !important;
}

.my-modal-error-qtip .qtip-content {
    padding: 15px;
    font-weight: bold;
    text-align: center;
}
.my-modal-error-qtip .qtip-close span {
    text-indent: -9999px;
    background: url(../images/x_transp.gif) center center no-repeat;
}
.my-modal-error-qtip .qtip-close {
    background: #F78B83;
    border-color: #D95252 !important;
}
.my-modal-error-qtip .qtip-close:hover {
    background: #FAACA7;
}
.my-modal-error-qtip .my-modal-close {
    text-align: center;
    padding-top: 15px;
    font-weight: normal;
}

.ui-tooltip-my-help {
    padding: 0 !important;
    max-width: none !important;
    line-height: 130% !important;
}
.ui-tooltip-my-help .qtip-titlebar, .qtip-content {
    font-size: 12px !important;
}
.ui-tooltip-my-help .qtip-titlebar {
    background-color: #585858 !important;
    color: #fff !important;
    font-size: 115% !important;
}
.ui-tooltip-my-help .qtip-icon .ui-icon {
    color:#ddd !important;
    text-shadow: none !important;
    opacity: 1 !important;
}
.ui-tooltip-my-help .qtip-icon .ui-icon:hover {
    color: #fff !important;
}
.qtip.ui-tooltip-my-reset-max-width {
    max-width: none !important;
}
.qtip.ui-tooltip-my-info {
    max-width: 400px !important;
}
.tour-separator {
    height: 15px;
}


/* common */
.inline-block {
    display: inline-block;
}
.width-auto {
    width: auto !important;
}

/* calendars, events */
.fc-override .fc-event {
    /* width: 90px !important; */
    border: 0px none !important;
    background: none !important;
}

.appt {
    border-width: 1px;
    border-style: solid;
}
.appt.disabled {
    cursor: default !important;
}

.appt.appt-main.appt-google .bot {
    background-color: #396CB9;
}
.appt.appt-main.appt-google {
    /*background-image: -moz-linear-gradient(top, #5697F7, #396CB9);
    background-image: -ms-linear-gradient(top, #5697F7, #396CB9);
    background-image: -o-linear-gradient(top, #5697F7, #396CB9);
    background-image: -webkit-gradient(linear, center top, center bottom, from(#5697F7), to(#396CB9));
    background-image: -webkit-linear-gradient(top, #5697F7, #396CB9);
    background-image: linear-gradient(top, #5697F7, #396CB9);*/
    background-color: #5697f7;
    /*border-color: #4c86db;*/
}

.appt-all-day, .appt-all-day * {
    background-color: #AAAAAA;
    background-image: none;
}

.appt-all-day.appt-infusionsoft, .appt-all-day.appt-infusionsoft * {
    background-color: #86c367;
}

.appt-all-day.appt-google, .appt-all-day.appt-google * {
    background-color: #5697F7;
    background-image: none;
}

.appt.appt-main.appt-infusionsoft .bot {
    background-color: #4E8E35;
}
.appt.appt-main.appt-infusionsoft {
 /*    background-color: #86c367 !important;
    border-color: #6fa155 !important;*/
}
.all-day-appt.appt-infusionsoft, .all-day-appt.appt-infusionsoft * {
    background-color: #8cc86c;
    background-image: none;
}

.appt.buffer
{
    font-size: 8px;
    z-index: 90;
    text-align: center;
    background: #9c9c9c;
    border: none !important;
    border-radius: 3px;
    box-sizing: border-box;
}

.appt.buffer.start-buffer {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.appt.buffer.end-buffer {
    border-top-left-radius: 0;    
    border-top-right-radius: 0;
}


#event_details .cal_miniprofile
{
    height: 43px;
    margin-top: 10px;
    background: url(../images/lines-198.png) 0 40px no-repeat;
    cursor: default !important;
}
#event_details .cal_miniprofile.clickable {
    cursor: pointer !important;
}

#cal_makeappt .cal_miniprofile:last-child { background: transparent; }

#event_details .cal_miniprofile .image
{
    width: 32px;
    height: 32px;
    overflow: hidden;
    float: left;
    position: relative;
    margin-left: 14px;
}

#event_details .cal_miniprofile .image img
{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    width: 32px;
}

#event_details .cal_miniprofile .image span
{
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 32px;
    height: 32px;
    background: url(../images/faceholder.png) 100% 100% no-repeat;
    z-index: 100;
}

#event_details .cal_miniprofile .name
{
    float: left;
    width: 102px;
    font-size: 12px;
    line-height: 32px;
    color: #393939;
    margin-left: 16px;
}

#event_details .cal_miniprofile .btn, #event_details .mini-btn
{
    width: 29px;
    height: 29px;
    background: url(../images/btn-add.png) no-repeat;
    cursor: pointer;
    float: left;
    margin-left: 5px;
}
#event_details .cal_miniprofile .btn.del-btn, #event_details .mini-btn.del-btn
{
    background-image: url(../images/btn-del.png);
}

#event_details .cal_miniprofile .btn:hover, #event_details .mini-btn:hover { background-position: 0 100%; }

#event_details .cal_miniprofile.disabled {
    opacity: 0.5;
    cursor: default !important;
}
#event_details .cal_miniprofile.disabled .btn{
    cursor: default !important;
}
#event_details .cal_miniprofile.disabled .btn:hover {
    background-position: 0 0 !important;
}


/* dashboard stuff */
#cal_profile
{
    font-size: 18px;
    line-height: 22px;
    font-weight: 700;
    margin-top: 15px;
}

#cal_profile .image
{
    width: 64px;
    height: 64px;
    overflow: hidden;
    float: left;
    margin-left: 10px;
    position: relative;
    margin-bottom: 15px;
    background: url(../images/avatarsample.png) no-repeat center center;
}

#cal_profile .image.have-avatar {
    background: none;
}

#cal_profile .image img
{
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 5;
    width: 64px;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

#cal_profile .image span
{
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 64px;
    height: 64px;
    background: url(../images/faceholder.png) no-repeat;
    z-index: 100;
}

#cal_profile .name
{
    float: right;
    width: 130px;
    margin-top: 8px;
}

#cal_todayappt, #cal_makeappt
{
    clear: both;
    margin: 0 auto 15px auto;
    width: 198px;
    padding-top: 5px;
}

#todays_appt_loader {
    text-align: center;
}

#cal_todayappt tr:hover{cursor: pointer}

.cal_subhead
{
    font-weight: 700;
    text-align: center;
    font-size: 12px;
    color: #393939;
    background: url(../images/lines-198.png) no-repeat 0 -41px;
    margin-bottom: 8px;
}

#cal_todayappt table
{
    width: 198px;
    margin: 0 auto;
}

#cal_todayappt table td
{
    border: 0;
    vertical-align: middle;
}

#cal_todayappt table td.cal-time
{
    padding-right: 3px;
    text-align: right;
    border-right: 1px dotted #c6c6c6;
    line-height: 13px;
}

#cal_todayappt table td.cal-info {
    line-height: 18px;
    padding-left: 3px;
}

#cal_todayappt table td span
{
    font-size: 6px;
    text-transform: uppercase;
    display: block;
    text-align: center;
    line-height: 7px;
}

#cal_todayappt table td.divider
{
    height: 16px;
    background: url(../images/lines-198.png) 0 10px no-repeat;
}


/* dashboard popovers in calendar */
.ui-tooltip-my-appt {
    min-width: 460px !important;
    background: #fff !important;
    border: 1px solid #c3c3c3 !important;
    border-radius: 5px;
    padding: 0 !important;
    margin: 0 !important;
    text-align: left;
}
.ui-tooltip-my-appt-details {
}
.ui-tooltip-my-appt .qtip-content {
    padding: 0 !important;
}

.ui-tooltip-my-appt .qtip-titlebar
{
    background: #97cc68 !important;
    height: 52px;
    font-size: 18px;
    line-height: 48px;
    text-indent: 20px;
    color: #fff;
    text-shadow: 1px 1px 1px #464646;
    padding: 0 !important;
}

.blue-edition .ui-tooltip-my-appt .qtip-titlebar {
    background-color: #4DB2EF !important;
}

#btn_edit_appt {
    float: right;
}

#event_details.module {
    position: relative;
}

.plain_button
{
    background: #efefef;
    border: 1px solid #9f9f9f;
    border-radius: 5px;
    display: inline-block;
    height: 38px;
    line-height: 38px;
    padding: 0 15px;
    font-weight: 700;
    margin-right: 20px;
    cursor: pointer;
}

.plain_button:hover
{
    background: #777;
    color: #fff;
}

.back_button
{
    padding-left: 30px;
    background: #efefef url(../images/sprite_new.png) -107px 14px no-repeat;
}

.back_button:hover { background: #777 url(../images/sprite_new.png) -107px -16px no-repeat; }

.create_appt
{
    /*   width: 400px;
       height: 240px;
       background: #fff;
       position: absolute;
       top: -252px;
       left: -153px;
       border: 1px solid #c3c3c3;
       border-radius: 5px;
       padding: 0 !important;
       margin: 0 !important;
       text-align: left;
       cursor: default;*/
}

.create_appt div
{
    padding: 0 !important;
    margin: 0 !important;
}

.create_appt .carrot
{
    width: 17px;
    height: 9px;
    background: url(../images/sprite_new.png) -382px 0 no-repeat;
    overflow: hidden;
    position: absolute;
    bottom: -9px;
    left: 190px;
    z-index: 100;
}

.create_appt form
{
    width: 430px;
    margin: 0 auto;
    font-size: 14px;
    font-weight: 400;
    color: #555 !important;
    text-shadow: none !important;
    padding: 13px 0;
}

.create_appt .left
{
    width: 89px;
    height: 29px;
    line-height: 29px;
    float: left;
}

.create_appt .right
{
    width: 340px;
    height: 38px;
    line-height: 29px;
    float: right;
}

.create_appt .green_button { float: left; }
.create_appt #btn_create_manual { float: right; }

#details_content .warningbox.warningbox_button
{
    float: right;
    width: 202px;
    text-align: left;
    text-indent: 18px;
    background-image: url(../images/sprite_new.png);
    background-position: 173px -62px;
    background-repeat: none;
    cursor: pointer;
    margin-bottom: 18px;
}

#details_content .details_green_btn {
    background-image: none !important;
    background-color: #8FD062;
    border-color: #529f24;
    text-shadow: 1px 1px 1px #529f24;
}

/*#details_content .warningbox_button.disabled, #details_content .save-button.disabled {
    opacity: 0.5;
    cursor: default !important;
}*/

/*#details_content .save-button.disabled:hover {
    background-position: 0 0 !important;
}*/

#details_content .sidebar
{
    float: right !important;
    clear: right;
}

#details_content .sidebar div:hover { background-color: #efefef; }


/* dashboard controls */
.dashboard-controls {
}
.dashboard-controls .dashboard-btn {
    line-height: 25px;
    position: relative;
    top: auto;
    right: auto;
    font-size: 12px;
    font-family: 'Open Sans',Arial,sans-serif;
    font-weight: bold;
    text-decoration: none;
    color: #555;
    filter: alpha(opacity=65);
    opacity: 0.65;
    display: inline-block;
    height: 45px;
    line-height: 45px;
    vertical-align: top;
}
.dashboard-controls .dashboard-btn:hover {
    filter: alpha(opacity=100);
    opacity: 1;
}
.dashboard-controls .refresh-btn {
    background: url(../images/refresh.png) no-repeat right center;
    padding: 0 23px 0 0;
}
.dashboard-controls .my-calendar-btn {
    padding: 0 0px 0 10px;
}
.dashboard-controls .my-calendar-btn span {
    width: 10px;
    background-position: right top;
}
.dashboard-controls .dashboard-control-item {
    display: inline-block;
    vertical-align: top;
    height: 45px;
    text-align: right;
}
.dashboard-controls .change-view-item {
    width:115px;
}
.dashboard-controls .change-view-item .change-view {
    margin-top: 7px;
}
.dashboard-controls .reset-views-btn {
    margin-left: 10px;
}

/** Select box **/
.selectBox-dropdown  {
    background: url(../images/select_box_body.png) no-repeat left top !important;
    font: 700 11px/28px 'Open Sans',Arial,sans-serif !important;
    color: #212121 !important;
    position: relative;
    margin-right: 30px;
}

.selectBox-dropdown .selectBox-label {
    padding: 0px 0 0 12px !important;
}

.selectBox-disabled .selectBox-label {
    color: gray !important;
}

.selectBox-dropdown .selectBox-arrow {
    background: url(../images/select_box_arrow.png) no-repeat right top !important;
    display: block;
    height: 28px;
    position: absolute;
    right: -23px;
    top: 0;
    width: 27px;
}

.selectBox-dropdown.selectBox-disabled .selectBox-arrow {
    opacity: 1 !important;
}

.selectBox-options li.selectBox-hover a {
    background-color: #95D167 !important;
    color:#fff !important;
}
.blue-edition .selectBox-options li.selectBox-hover a {
    background-color: #5EB5E0 !important;
}

ul.selectBox-dropdown-menu a {   
    color: #555555 !important;

}

.selectBox-options li {
    padding: 0 0 0 0px !important;
    margin-bottom: 0px !important;
}

.selectBox-options li a {
    white-space: normal !important;
    cursor: pointer;
    padding: 7px 0 7px 6px !important;
    line-height: 130%;
}   

.selectBox-disabled a {
    font-style: italic;
    color: gray;
}

.selectBox-options li.selectBox-hover.selectBox-disabled a {
    background-color: #eee !important;
    color: gray !important;
}

/* select2 overrides */
.select2-results .select2-disabled {
    opacity: .5;
}

/* settings */
.settings-content legend.width-full .ques {
    vertical-align: initial;
}
#settings_loading_msg {
    text-align: center;
}
#settings_loading_msg .settings-loading-icon {
    margin-right: 5px;
    color: #888;
}

/* settings: logo/avatar upload */
.fileinput-button {
    position: relative;
    overflow: hidden;
    display: inline-block;    
}
.fileinput-button input {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    opacity: 0;
    -ms-filter: 'alpha(opacity=0)';
    font-size: 200px !important;
    direction: ltr;
    cursor: pointer;
}
.logo_holder {
    position: relative;
}
.logoupload-wrap {
    position: absolute;
    top: 5px;
    left: 5px;
    min-width: 200px;
}
.logoupload-wrap .filename {
    font-weight: bold;
}
.fileupload-progress {
    height: 10px;
    margin: 10px 0 !important;
    overflow: hidden;
    background-color: #888;
    border-radius: 0;
}
.fileupload-progress .progress-bar {
    float: left;
    width: 0;
    height: 100%;
    font-size: 12px;
    line-height: 3px;
    color: #fff;
    text-align: center;
    background-color: #fff;
    -webkit-box-shadow: inset 0 -1px 0 rgba(0,0,0,.15);
    box-shadow: inset 0 -1px 0 rgba(0,0,0,.15);
    -webkit-transition: width .6s ease;
    -o-transition: width .6s ease;
    transition: width .6s ease;
}
.alternative-logo-wrap {
    margin-top: 10px;
}

/* settings: users */
#infusionsoft-users-wrapper {
    overflow: auto;
    border: 1px solid #aaa;
    padding: 0px 5px;
}

.user-add-allowed {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.user-add-allowed > div {
    margin: 0 10px;
    white-space: nowrap;
}
.user-add-allowed .ques {
    margin-left: 0px;
}

.user-delete-note {
    font-weight: bold;
}

.role-manager .user .edit-btn, 
.role-manager .user .del-btn
{
    display: none !important;
}

.managed-users-wrap {
    margin-top:5px;
    padding-left: 15px;
}
.managed-users-label {
    font-weight: bold;
}
.managed-users {
    padding: 5px;
    max-height: 150px;
    overflow: auto;
    border: 1px dotted #ccc;
}
.managed-users > .checkbox {
    padding-top: 0;
}
.user-search-wrap input {
    width: 300px !important;
    display: inline-block;
}

.new-user-pwd-msg {
    margin: 0;
}
.new-user-pwd-info-icon {
    margin-right: 5px;
}

.global-limit-wrap {
    margin: 10px 0;
}
.global-limit-control {
    padding: 5px 0 0 18px;
}
.booking-limit-modified {
    display: inline-block;
    margin-left: 15px;
    background-color: #ff880d;
    color: #fff;
    padding: 2px 6px;
    border-radius: 4px;
    font-weight: 700;    
}
.booking-limits .booking-limit-modified {
    display: none;
}
.booking-limits.modified .booking-limit-modified {
    display: inline-block;
}
.booking-limits .specific-limits-wrap {
    display: flex;
    flex-direction: column;    
}
.specific-limits-btn-wrap {
    margin-bottom: 10px;
    display: flex;
    justify-content: space-between;
}
.limits-info-box {
    margin-bottom: 10px;
    display: flex;
}
.limits-info-box .info-icon {
    margin-right: 5px;
}
.booking-limits .link-select {
    background: #f1f1f1;
    border-radius: 4px 4px 0 0;
    padding: 5px 10px;
}
.booking-limits .limits {
    border: 1px solid #ddd;
    border-radius: 0 0 3px 3px;
    padding: 0 5px;
    border-width: 0 1px 1px 1px;
    max-height: 150px;
    overflow: auto;    
}
.booking-limits .alert {
    margin-bottom: 5px;
}
.limit-link-select {
    width: 100%;
}
.link-select-btns {
    margin-top: 10px;
    display: flex;
    align-items: center;
}
.link-select-btns > * {
    margin: 0 3px;
}
.link-btns-divider {
    flex-grow: 1;
}

.limit-user-item {
    display: flex;
    align-items: center;
    margin: 5px 0;
}
.limit-user-item > * {
    margin: 0 3px;
    min-width: 0;
}
.limit-user-item .limit-item-grow {
    flex-grow: 1;
}
.limit-user-item .int-input-group {
    margin-right: 15px;
    flex-shrink: 0;
}
.limit-user-item .limit-del-btn {
    font-size: 18px;
    color: #ff7e7e;
}
.limit-user-item .limit-del-btn:hover {
    color: #ff4747;
}
.limit-user-item .limit-item-title {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}


/* settings: infusionsoft */
#infusionsoftapikey-header {
    margin-bottom: 20px;
}
.infusionsoftapikey-heading {
    color: red;
    white-space: nowrap;
    font-weight: bold;
}
.infusionsoftapikey-heading span {
    line-height: 30px;
}
.infusionsoftapikey-heading span {
    line-height: 30px;
    font-style: italic;
}
#infusionsoftapikey-btn {
}
#infusionsoftapikey-btn span {
    line-height: 30px;
}
.infusionsoftapikey-link .ques {
    top: 3px;
    margin: 0 0 0 5px;
}
#infusionsoftapikey-form {
    margin: 0 25px 20px 25px; 
    padding-top: 10px; 
    border-top: 1px dotted #999;
}
.infusionsoftapikey-controls {
    padding-top:15px;
    font-size: 11px;
    text-align: center;
}
#infusionsoftapikey-app {
    width:125px;
    top:0;
    padding-right:4px;
    text-align:right;
    display: inline-block;
    font-weight: bold;
}
#infusionsoftapikey-key {
    font-weight: bold;
    width:200px;
    top:0;
}
.infusionsoftapikey-key-label {
    margin-left: 15px;
}
#infusionsoftapikey-list td {
    padding-left: 10px;
}
.infusionsoftapikey-btns {
    display: inline-block; 
    width: 100px; 
    text-align:left;
}

/* settings: activecampaign */
#activecampaignapikey-header {
    margin-bottom: 20px;
}
.activecampaignapikey-heading {
    color: red;
    white-space: nowrap;
    font-weight: bold;
}
.activecampaignapikey-heading span {
    line-height: 30px;
}
.activecampaignapikey-heading span {
    line-height: 30px;
    font-style: italic;
}
#activecampaignapikey-btn {
}
#activecampaignapikey-btn span {
    line-height: 30px;
}
.myactivecampaign-settings #activecampaignapikey-btn span {
    line-height: normal;
}
.myactivecampaign-settings #activecampaignapikey-form {
    margin: 0;
}
.myactivecampaign-settings .activecampaignapikey-account-label {
    display: block;
}
.activecampaignapikey-link .ques {
    top: 3px;
    margin: 0 0 0 5px;
}

.my-extensions #activecampaignapikey-form {
    border-top: none;
    padding-top: 0;
}

.my-extensions .activecampaignapikey-controls {
    text-align: left;
}

.my-extensions .activecampaignapikey-key-label {
    margin-left: 0;
}

#activecampaignapikey-form {
    margin: 0 25px 20px 25px; 
    padding-top: 10px; 
    border-top: 1px dotted #999;
}
.activecampaignapikey-controls {
    padding-top:15px;
    font-size: 11px;
    text-align: center;
}
#activecampaignapikey-account {
    width:125px;
    top:0;
    padding-right:4px;
    text-align:right;
    display: inline-block;
    font-weight: bold;
}
#activecampaignapikey-key {
    font-weight: bold;
    width:200px;
    top:0;
}
.activecampaignapikey-key-label {
    margin-left: 15px;
}
#activecampaignapikey-list td {
    padding-left: 10px;
    display: inline-block;
}
.activecampaignapikey-btns {
    display: inline-block; 
    width: 100px; 
    text-align:left;
}
#activecampaignapikey-list .apikey{
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* settings: outcome */
.settings-content.outcome .inline-control {
    display: inline-block !important;
    width: auto !important;
}
.settings-content.outcome .outcome-settings-datepicker {
    max-width: 200px;
}

/* settings: switcher */
.settings-content .switch .switcher
{
    width: 65px;
    height: 26px;
    overflow: hidden;
    text-indent: -9999px;
    line-height: 1px;
    background: url(../images/on_off.png) no-repeat 0 100%;
    margin-bottom: 5px;
    cursor: pointer;
}
.settings-content .switch div.switch_on { background-position: 0 0; }

.settings-content .switch .ques{
    position: absolute;
    top: 4px;
    left: 67px;
    margin: 0px;
}

/* extensions: google analytics */
.googleanalytics-btns {
    display: flex;
    align-items: center;
    height: 30px;
}
.googleanalytics-btns > span {
    margin: 0 5px;
}
.googleanalytics-id-label {
    display: flex;
    align-items: center;
}
.googleanalytics-id-label .ques {
    margin: 0 0 0 5px;
}
#googleanalytics-status {
    margin-top: 5px;
    display: inline-block;
}
#googleanalytics-dialog-status {
    display: inline-block;
    margin: 5px 0;
}

/* extensions: gotomeeting */
.gtm-user-connect-status {
    padding: 10px 0 0 18px;
}
#user_gtm_connect_wrap {
    padding-top: 15px;
}
#user-gtm-connect-loader {
    margin-left: 15px;
}
#gtm-org-connection {
    padding-top: 15px;
    clear: both;
}
#gtm-org-connection-info {
    font-weight: 700;
}
#gtm-org-disconnect-wrap {
    padding-top: 5px;
}
a#user-gtm-disconnect, a#gtm-org-disconnect {
    text-decoration: underline;
}
a#user-gtm-disconnect:hover, a#gtm-org-disconnect:hover {
    text-decoration: none;
}

/* settings: stripe */

#my_extensions_stripe_wrapper {
    margin: 0 30px;
    padding: 20px 0;
    border-top: 1px dotted #999;
}

#my_extensions_stripe_connect {
    display: inline-block;
    width: 138px;
    height: 24px;
    background: url(../images/stripe-connect.png) no-repeat;
}

.my_extensions_stripe_auth {
    text-align: center;
}

#my_extensions_stripe_account {
    padding: 3px 10px;
    background: white;
    border-radius: 10px;
    border: 1px solid #d6d6d6;
    border-top-color: #a6a6a6;
    border-bottom-color: #eeeeee;
    border-left-width: 0;
    box-shadow:
        0px 0px 0px rgba(000,000,000,0),
        inset 1px 1px 1px rgba(214,214,214,1);
}

/* settings: colorbox stuff */

.cboxLoader{
    background:url(../images/ajax-loader-circle.gif) no-repeat #fff;
    position: absolute;
    top: 0px;
    left: 0px;
    display: none;
    width: 100%;
    opacity: 0.8;
}
.cbox-title {
    text-align: center;
    padding-bottom: 20px;
}
.modal-dialog .cbox-title {
    padding:  0;
}


/* question icons with tooltips */
.ques
{
    /*background: url(../images/ques.png) no-repeat;*/
    font: normal normal normal 14px/1 FontAwesome;
    /*width: 16px;
    height: 16px;
    overflow: hidden;*/
    margin: 6px 0 0 15px;
    vertical-align: -15%;
    cursor: pointer;
    display: inline-block;
    font-size: 16px;
    color: #616161;
}
.ques:before {
    content: "\f059";
}
.ques-left {
    margin: 0 20px 0 6px;
}
#aptslot_customize .ques {
    width: auto;
    float: none;
}
.overlay .whatsthis {
    background-position: 100% 100%;
    color: #EEE;
}

/* avail chooser */
.ac-availchooser-tabbox {
    border-color: #ddd;
}

.ac-availchooser-tabbox-ul {
    display:none;
    background:none;
    border: none;
}

.ac-availchooser-tabbox-ul li.ui-state-default {
    border:none;
}
#my-availability-empty-alert {
    margin: 10px 28px;
}
.myavail-name-wrapper {
    position: relative;
}
.myavail-action {
    padding: 0 1px;
    margin: 0 2px;
}
.my-availability .ques[rel="my_availability_use_my_availability_tooltip"] {
    margin-top: 0;
}
.my-availability .ques[rel="my_availability_my_default_availability_tooltip"],
.my-availability .ques[rel="my_availability_new_availability_ruleset_tooltip"] {
    margin-left: 5px;
    margin-right: 20px;
}

/* new expand link */
.expand-link-v2 {
    display: inline-block;    
}
.expand-link-v2 .arrow-icon {
    color: #999;
    display: none;
}
.expand-link-v2:focus {
    color: #555;
}
.expand-link-v2:hover {
    color: #95d167;
}
.expand-link-v2:hover .arrow-icon, .expand-link-v2:hover .minus-icon, .expand-link-v2:hover .plus-icon, .expand-link-v2.expand-link-expanded .arrow-icon {
    color: #95d167;
}
.expand-link-v2 .minus-icon, .expand-link-v2 .plus-icon {
    color: #999;
    margin-right: 2px;
}
.expand-link-v2 .minus-icon {
    display: none;
}
.expand-link-v2.expand-link-expanded .plus-icon {
    display: none;
}
.expand-link-v2.expand-link-expanded .minus-icon {
    display: initial;
}

/* edit appointment form */
.expand-link {
    display:block;
    cursor: pointer;
}
.expand-link .arrow-up, .expand-link .arrow-down {
    font-size: 14px;
}
.expand-link .arrow-up {
    display: none;
}
.expand-link.expanded .arrow-down {
    display: none;
}
.expand-link.expanded .arrow-up {
    display: inline-block;
}
.expand-link.expanded {
    opacity: 0.6;
}
.expand-link span {
    display: inline-block;
    width:7px;
    height:4px;
    background: url(../images/triangle.png) 0 0 no-repeat;
    margin:0 0 0 5px;
}


.appt-form-step {
    display: none;
}
.appt-form-step.active {
    display: block;
}

.opt_overlay { 
    top: 20px;
    left: 120px;
    color: #fff; 
}
.opt_overlay label {
    color: #fff;
    cursor: pointer;
}

.opt_overlay .opt_overlay_close {
    background: url("../images/adv_settings_close.png") no-repeat scroll 0 0 transparent;
    display: block;
    height: 16px;
    position: absolute;
    right: 47px;
    top: 28px;
    width: 16px;
}

.opt_overlay .heading_area
{
    text-align: center;
    padding-top: 25px;
    margin-bottom: 25px;
}

.opt_overlay .heading_area h4
{
    font-size: 24px;
    line-height: 34px;
    color: #fff;
}

.opt_overlay .heading_area .subhead
{
    font-weight: 700;
    font-size: 12px;
    line-height: 22px;
}

.opt_overlay .heading_area .faded { color: #bfbfbf; }

.opt_overlay .item-1
{
    width: 200px;
    float: left;
    margin-left: 45px;
}

.opt_overlay .item-2
{
    width: 200px;
    float: left;
    margin-left: 20px;
}

.opt_overlay .item-3
{
    width: 200px;
    float: left;
    margin-left: 20px;
}

.opt_overlay .heading
{
    text-align: center;
    border-bottom: 1px solid #555;
}

.main-appt-form .overlay
{
    /* The Fallback */
    background: #333;
    background: rgba(20,20,20, 0.9);
    position: absolute;
    top: -20px;
    /* left: -42px;*/
    width: 707px;
    height: 700px;
    z-index: 9999;
}

#aptslot_start_options td {padding: 10px;}

#aptslot_options .select2-container {
    width: 120px !important;
}

.infusionsoft-tags-wrapper {
    margin-bottom: 20px;
}

/* edit appointment form - rotation settings */
.appt-user-select-wrapper .icon-user {
    margin-right: 7px;
    vertical-align: middle;
}

.appt-user-select-wrapper .appt-user-tag-wrapper {
    display:inline-block;
    vertical-align: middle;
}

.appt-user-type {
    background: #f9f9f9;
    margin: 8px 0;
    padding: 8px 20px;
    border-radius: 10px;
}

.appt-user-type.odd {
    /*background: none;*/
}

.appt-user-type.top {
    border-top: none;
}

.appt-user-type .appt-user-tag-wrapper {
    display: inline-block;
    vertical-align: middle;
}

.appt-user-tag-wrapper > ul {
    padding: 0;
    display: inline;
}

.appt-user-tag-wrapper > ul .attendee-tag {
    padding: 1px 4px 3px 4px;
}

.appt-user-type .appt-user-tag-wrapper > ul .attendee-tag {
    /*padding-right: 20px;*/
}

.appt-user-type.order .appt-user-tag-wrapper > ul .attendee-tag {
    padding: 1px 20px 3px 13px;
    background: #fff url(../images/drag9x17.png) 2px 1px no-repeat;
    cursor: move;
}

.appt-user-type .appt-user-tag-wrapper > ul .attendee-tag.static {
    padding-right: 5px;
}

.appt-user-type .attendee-tag .attendee-tag-delete {
    margin-left: 6px;
}

.appt-user-select-wrapper .attendee-tag span {
    vertical-align: bottom;
}

.appt-user-tag-wrapper > ul .attendee-tag .icon-user {
    margin-right: 5px;
}

.appt-attendee-avail-menu {
    position: absolute;
    left: 100%;
    margin: -5px 0 0 -28px;
    z-index: 10;
}

.appt-attendee-avail-menu li {
    font-size: .85em;
    font-weight: normal;
    white-space: nowrap;
}

.appt-attendee-avail-handle {
    margin-left: 10px;
}

.appt-user-select {
    width:200px;
    text-align: left;
}

.appt-scenario-select {
    width:400px;
    text-align: left;
}

.appt-user-add-cancel,.appt-user-add-newuser {
    margin-left: 5px;
    font-size: 11px;
}

.attendee-tag {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: start;
    list-style: none;
    padding: 2px 4px;
    margin: 3px 2px;
    line-height: 13px;
    border: 1px solid #aaa;
    border-radius: 3px;
    box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05);
    background: #f9f9f9;
    cursor: default;
}

.attendee-tag.ui-sortable-placeholder {
    height: 0 !important;
}

.attendee-tag a {
    text-decoration: none;
}

.attendee-tag.static {
    padding: 2px 4px;
}

.attendee-tag:hover {

}

.attendee-tag-delete {
    cursor: pointer;
    font-size: 14px;
    opacity: 0.8;
    outline: none;
}
.attendee-tag-delete:hover {
    color: #d74a20;
}

.reschedule-single-user-appt-button {
    margin-left: 4px;
}

.attendee-tag-delete:hover {
    background-position: right -11px;
}

#manage-appointments-content table tr.sequence-items-row > td {
    background-color: #e9e9e9;
    padding: 5px 40px;
}
tr.sequence-items-row .sequence-more-btn {
    text-decoration: underline;
}

#appt-block-wrapper-ul {
    margin: 0;
    padding: 0;
}

#appt-block-wrapper-ul li.appt-block-li {
    margin: 10px 0;
    padding: 0;
    list-style: none;
    border: 1px solid #ccc;
    border-radius: 5px;
    background: #fff;
}

#appt-block-wrapper-ul.no-blocks li.appt-block-li {
    border: none;
}

.appt-block-right {
    width:17px;
    text-align:center;
    background:#ddd;
}

#appt-block-wrapper-ul.no-blocks .appt-block-right {
    display:none;
}

.appt-user-select-wrapper {
    display:none;
    min-height: 35px;
    text-align: center;
}
.appt-block-li.active .appt-user-select-wrapper {
    display: block;
}

.appt-block-handle {
    width: 13px; position: relative; background: #ddd; cursor: pointer;
}
.appt-block-li.active .appt-block-handle,
.appt-block-li.active .appt-block-handle-seq,
.appt-block-li.active .appt-block-right {
    background: #c1e5a3;
}
.read-only .appt-block-li.active .appt-block-handle,
.read-only .appt-block-li.active .appt-block-handle-seq,
.read-only .appt-block-li.active .appt-block-right {
    background: #ddd;
}

.appt-block-handle-seq {
    position:absolute;height:26px;width:26px;margin-top:-13px;border: 1px solid #ddd;border-radius:50%;background:#ddd;font-size:14px;text-align:center;
}

#appt-block-wrapper-ul.no-blocks .appt-block-handle {
    display:none;
}

#appt-block-wrapper.read-only .appt-user-select-wrapper,
#appt-block-wrapper.read-only .appt-block-delete,
#appt-block-wrapper.read-only .appt-block-add-wrapper {
    display: none;
}
.appt-user-edit-mode-btn {
    display: none;
}
#appt-block-wrapper.read-only .appt-user-edit-mode-btn {
    display: inline-block;
}


#main_appt_form .salesforce-one-click-booking,
#main_appt_form #salesforce_advanced_elms,
#main_appt_form .hubspot-one-click-booking,
#main_appt_form #hubspot_advanced_elms,
#main_appt_form .activecampaign-one-click-booking
{
    margin: 10px 0 20px 0;
}
#main_appt_form .salesforce-one-click-booking .line-with-text,
#main_appt_form .hubspot-one-click-booking .line-with-text {
    margin-bottom: 15px;
}
.salesforce-one-click-booking .salesforce-booking-logo,
.salesforce-not-assign-heading img {
    max-width: 60px;
}
#main_appt_form .one-click-booking-item label img {
    max-width: 150px;
    max-height: 60px;
}
#main_appt_form .one-click-booking-item .one-click-booking-help-btn {
    margin-left: 15px;
}

#locations_loader .locations_loader_spinner {
    opacity: 0.6;
    margin-right: 5px;
}

.edit-booking-link-title {
    margin: 0 0 20px 0;
    font-size: 22px;
}

/* edit appt form - integration widgets */
.booking-integration-widget {
    border: 1px solid #e3e3e3 !important;
    border-radius: 5px !important;    
    padding: 10px 15px;
    margin-bottom: 10px;
}
.booking-widget-logo-wrap .booking-widget-logo  {
    width: 64px;
    height: 64px;
}
.booking-widget-title {
    font-size: 14px;
    margin-bottom: 10px;
    font-weight: bold;
}
.booking-widget-button-wrap {
    text-align: right;
}
.booking-widget-expand-btn {
    color: #878787;
    background: #f5f5f5;
    border-color: #ddd;
    padding: 6px 10px;
}
.booking-widget-expand-btn .caret-down, .booking-widget-expand-btn .caret-up {
    font-size: 12px;
}
.booking-widget-expand-btn .caret-down {
    display: initial;
}
.booking-widget-expand-btn .caret-up {
    display: none;
}
.booking-widget-expand-btn.active {
    color: #fff;
    border: 1px solid #61af31;
    background: #97cb67;
}
.booking-widget-expand-btn.active .caret-down {
    display: none;
}
.booking-widget-expand-btn.active .caret-up {
    display: initial;
}
.copy-link-widget .booking-widget-body {
    text-align: center;
}
.copy-link-widget #final_url, .copy-link-widget #final_url_copylink {
    text-align: center;
}
#iframe_view_type_preview img,
#wp_iframe_view_type_preview img {
    max-width: 100%;
}

/* edit appt form - payments */

#payment_amount {
    width: 80px; 
    vertical-align: bottom;
    display: inline-block;
}
#payment_currency {
    display: inline-block;
    width: auto;
}
#payment_cancel_btn {
    cursor: pointer; 
    margin: 5px 10px 5px 30px; 
    opacity: .7;
    display: inline-block;
}
.payment-settings-wrap {
    float: left;
}

/* edit appt form - triggers */
#main_appt_form .ques[rel="trigger_automation_create_timer_event_tooltip"]
{
    display: none;
}
#form-settings .ques[rel="trigger_automation_create_timer_event_tooltip"]
{
    display: none;
}

#trigger-list {
    width:600px;
    float:right;
    margin: 10px 20px 10px 0;
    padding: 1px;
    border: 1px solid #e8e8e8;
    background: #ffffff;
}

#trigger-list .vhidden {
    visibility: hidden;
}

#trigger-list tr.odd, table.striped tbody tr:nth-child(odd) {
    background: #f7f7f7;
}

#trigger-list td {
    min-width: 20px;
    /*
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    */
}

#trigger-list td.outline {

}

#trigger-list td.trigger-name {
    max-width: 488px;
    min-width: 488px;
}

#trigger-list td a {
    /*padding: 5px;*/
}

#trigger-form {
    margin: 0 20px;
}

#trigger-form > div {
    margin: 8px 0;
}

#trigger-form select[name*=trigger-time-select] {
    width:200px;
}

#trigger-form select[name*=trigger-type-select] {
    width:280px;
}

#trigger-form select[name*=trigger-to-select] {
    width:125px;
}

#trigger-form input {
    text-align: center;
    width: 19px;
    display: inline-block;
}

.trigger-form-number {
    margin: 0 3px;
    padding: 3px;
    background: #f7f7f7;
    background: -moz-linear-gradient(
        top,
        #f7f7f7 0%,
        #fefefe 75%,
        #fefefe);
    background: -webkit-gradient(
        linear, left top, left bottom, 
        from(#f7f7f7),
        color-stop(0.75, #fefefe),
        to(#fefefe));
    border: 1px solid #ddd;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
}

#trigger-to-select-wrapper, #email-service-to-select-wrapper {
    display: inline-block;
}

#trigger-send-sms-me-alert {
    margin: 10px 40px 0 40px;
}

.trigger-merge-fields-wrap {
    height: 25px;
    margin: 10px 0;
}
/* merge fields menu */
.trigger-merge-fields-wrap .ui-state-hover, 
.trigger-merge-fields-wrap .ui-widget-content .ui-state-hover,
.trigger-merge-fields-wrap .ui-widget-header .ui-state-hover,
.trigger-merge-fields-wrap .ui-state-focus,
.trigger-merge-fields-wrap .ui-widget-content .ui-state-focus,
.trigger-merge-fields-wrap .ui-widget-header .ui-state-focus {
    background: #f1f1f1;
}


#trigger-type-content.trigger-type-content-email input#trigger-email-subject {
    width: 565px;
    text-align: left;
}

#trigger-type-content.trigger-type-content-sms input#trigger-email-subject,
#trigger-type-content.trigger-type-content-sms .ques[rel="trigger_automation_subject_field_tooltip"],
#trigger-type-content.trigger-type-content-sms .ques[rel="trigger_automation_message_text_tooltip"] {
    display:none;
}

#trigger-send-sms {
    text-align: left;
}

#trigger-editor-toolbar-wrapper {
    position:relative;
    height:34px;
}

#trigger-editor-toolbar-mask {
    position: absolute;
    margin:3px 0;
    top: 0;
    left: 0;
    width: 100%;
}

#trigger-editor-toolbar {
    position: absolute;
    top:0;
    left: 0;
}

#trigger-type-content.trigger-type-content-sms #trigger-editor-toolbar {
    visibility: hidden;
}

#trigger-type-content.trigger-type-content-sms #trigger-editor {
    float: left;
    padding: 3px 8px;
    width: 400px;
    height: 88px;
    font-family: sans-serif;
    font-weight: normal;
    font-size: 13px;
    line-height: 22px;
    text-indent: 0;
    overflow: auto;
}

#trigger-type-content.trigger-type-content-email #trigger-editor {
    padding: 3px 8px;
    width: 100%;
    height: 200px;
    font-family: sans-serif;
    font-weight: normal;
    font-size: 13px;
    line-height: normal;
    text-indent: 0;
    overflow: auto;
    resize: vertical;
}

#trigger-editor:focus {
    outline:0;
    outline:none;
}

#trigger-editor p {
    margin: 0;
}

#trigger-editor img {
    border-width: 0px;
    margin: 0;
    padding: 2px 1px;
    vertical-align: top;
}

#trigger-editor .mceNonEditable {
    padding: .3em .4em .15em;
    font-size: .8em;
    line-height: inherit;
    background: #333;
    color: white;
    border-radius: 3px;
}


#mapfields-table, #sendhttppost2-mapfields-table {
    width:100%;
    margin-top:10px;
    line-height:normal;
}

#mapfields-table td, #sendhttppost2-mapfields-table td {
    padding: 8px 0;
}

.mapfields-field-item {
    position: relative;
    padding: 2px 5px 2px 5px;
    font-size: .9em;
    line-height: 17px;
    background: #333;
    color: white;
    border-radius: 3px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    max-width: 165px;
}

.mapfields-field-close {
    color: #fff;
    padding-left: 5px;
}

ul#tags-assigned {
    margin: 10px 0 0;
    padding:0;
    list-style-type: none;
}

ul#tags-assigned li {
    display:inline-block;
    line-height: 26px;
    margin: 3px;
    padding: 0 10px;
    border-radius: 3px;
    background: #eee;
}

.tag-assigned-tag-name {
    padding-left: 25px;
    background-repeat: no-repeat;
    background-size: contain;
}

.tag-assigned-tag-name.salesforce {
    background-image: url(../images/icons/salesforce.png);
}

.tag-assigned-tag-name.hubspot {
    background-image: url(../images/icons/hubspot.png);
}

.tag-assigned-tag-name.infusionsoft {
    background-image: url(../images/icons/infusionsoft.png);
}

#trigger-type-content.trigger-type-content-sms #trigger-counter-wrapper {
    float: left;
    height: 75px;
    width: 120px;
    margin: 10px;
    line-height: 18px;
    font-size: 11px;
    text-align: center;
}

#trigger-type-content.trigger-type-content-email #trigger-counter-wrapper {
    display:none;
}

#trigger-counter-est {
    font-style: italic;
}

.trigger-map-menu {
    width: 130px;
    font-size: 10px;
    line-height: normal;
    color: #555555;
    z-index: 1000;
}

.trigger-map-menu * {
    /*font-weight: 700;*/
    color: #555555;
}

.trigger-map-menu .merge-fields-group {
    width: 300px;
}

.trigger-map-menu .ui-menu-item a span.user {
    color: red;   
}

.trigger-map-menu .ui-menu-item a span.contact {
    color: #FF0CF3;   
}

.trigger-map-menu ul {
    z-index:1000;
}

#trigger-type-content.trigger-type-content-sms input#trigger-send-sms-phone {
    width: 165px;
    margin:15px 15px 0 0;
    text-align:left;
}

#trigger-type-content.trigger-type-content-email input#trigger-send-sms-phone {
    display:none;
}

#trigger-type-content.trigger-type-content-email input#trigger-send-email {
    width: 165px;
    margin:15px 15px 0 0;
    text-align:left;
}

#trigger-type-content.trigger-type-content-sms input#trigger-send-email {
    display:none;
}

#trigger-send-sms-charge {
    margin-left: 20px;
    color: #FF8080;
    font-size: 10px;
    font-style: italic;
}

#trigger-send-info {
    margin: 10px 0;
    padding: 2px 35px 2px 14px;
    line-height: normal;
}

#trigger-type-content.trigger-type-content-email #trigger-send-sms-charge {
    display:none;
}

.trigger-content.mapfields .line {
    line-height: 5px;
    height: 5px;
    margin-bottom: 5px;
}
.trigger-mapfields-header {
    margin-top: 15px;
}
.trigger-mapfields-header span {
    font-size: 13px;
    display: inline-block;
    margin-right: 10px;
    height:20px;
    line-height:20px;
    vertical-align: top;
}
.trigger-mapfields-header .ac img {
    max-width: 150px;
    max-height: 20px;
    margin-right: 10px;
}
.trigger-mapfields-header .is {
    background: url(../images/triggers/logo-infusionsoft.png) no-repeat left 1px;
    padding-left: 97px;
}
.trigger-mapfields-header .arr {
    background: url(../images/triggers/trigger_arrow.png) no-repeat center center;
    width: 31px;
    margin: 0 20px 0 10px;
}
.trigger-content.mapfields .mapfields-items > li {
    border-top: 1px solid #EFEFEF;
    padding: 5px 0;    
}
.trigger-content.mapfields .fields-map-item > div {
    display: inline-block;
    margin-right: 30px;
    vertical-align: top;
}
.trigger-content.mapfields .fields-map-item .arr {
    background: url(../images/triggers/trigger_arrow.png) no-repeat center center;
    width: 31px;
    height: 20px;
    margin-top: 5px;
}
.trigger-content.mapfields .custom-field-wrapper {
    width: 200px;
}
.trigger-content.mapfields .custom-field-wrapper .select2-container {
    width:100%;
}
.trigger-content.mapfields .create-custom-field-loader {
    font-weight: normal;
    display: none;
    margin-left: 10px;
}
.trigger-content.mapfields .new-custom-field-stuff input {
    width: 150px !important;
    text-align: left !important;
}
.trigger-content.mapfields .add-custom-field-elm {
    width:250px;
}
.trigger-content.mapfields .merge-fields-wrapper {
    margin-top: 5px;
    width:150px;
}

#trigger-type-controls {
    margin: 10px 0;
}

.trigger-merge-field {
    background-color: #555;
    color: #fff;
    border-radius: 4px;
    display: inline-block;
    padding: 2px 6px;
    font-size: 12px;
    line-height: normal;
}

#trigger-set-controls {
    margin-bottom: 10px;
}
#appt-trigger-sets-wrapper {
    padding-top: 15px;
    clear:both;
}

#tags-refresh-wrapper {
    
}
.refresh-trigger-tags-btn {
    font-size: 14px;
    margin-left: 10px;
    cursor: pointer;
}
#email-service-to-select-wrapper {
    display: block;
    margin: 20px 0;
}
#achievegoal-triggers-wrap {
    background: #f1f1f1;
    padding: 10px;
}
#achievegoal-additional-trigger {
    margin-bottom: 15px;
}

/* org level triggers */
.action-settings #trigger-list {
    float: none;
    margin-top: 0;
}
.action-settings #trigger-form .select2-container {
    width: 260px;
}
.action-settings #trigger-sets-wrapper {
    margin-bottom: 20px;
}
.action-settings #new-set-name {
    display: inline-block;
    width: auto;
}
.action-settings #create-set-wrapper {
    margin-left: 10px;
}
.action-settings .trigger-del-btn {
    margin-left: 10px;
}
.action-settings #trigger-list tr:nth-child(odd) {
    background: #f7f7f7 !important;
}
.action-settings #trigger-list tr:nth-child(even) {
    background: #fff !important;
}
.action-settings #trigger-list.empty-list {
    border: 0px none;
}
.action-settings #trigger-list.empty-list tr {
    background-color: #fff !important;
}
#custom-fields-modal:not(.org-level) .field-scope-group {
    display: none;
}
#from-reply-to-wrapper {
    margin: 0 0 20px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
#from-reply-to-wrapper > div {
    width: 50%;
}
#from-reply-to-wrapper .select2-container {
    width: 100% !important;
}
#from-reply-to-wrapper .trigger-reply-to {
    width: 100%;
    text-align: left;
}
#from-reply-to-wrapper .from-wrap {
    padding-right: 10px;
}
.trigger-from-row {
    display: flex;
    flex-direction: row;
}
.trigger-from-row .trigger-from-item {
    width: 90%;
    flex-grow: 0;
}
.trigger-from-row .trigger-from-info {
    flex-shrink: 0;
}

/* appt form: tags */
.tag-select {
    max-height: 150px;
    overflow: auto;
    border: 1px solid #eee;
    padding: 2px;
}
.tags-selected {
    line-height: 130%;
}
.tags-selected a {
    background: url(../images/x.png) no-repeat right top;
    font-weight: normal;
    line-height: 150%;
    padding: 0 9px 0 0;
}

/* alerts */
.alert {
    background-color: #FCF8E3;
    border: 1px solid #FBEED5;
    border-radius: 4px 4px 4px 4px;
    margin-bottom: 20px;
    padding: 8px 35px 8px 14px;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
}
.alert, .alert h4 {
    color: #C09853;
}
.alert h4 {
    margin: 0;
}
.alert-success {
    background-color: #DFF0D8;
    border-color: #D6E9C6;
    color: #468847;
}
.alert-success h4 {
    color: #468847;
}
.alert-danger, .alert-error {
    background-color: #F2DEDE;
    border-color: #EED3D7;
    color: #B94A48;
}
.alert-danger h4, .alert-error h4 {
    color: #B94A48;
}
.alert-info {
    background-color: #D9EDF7;
    border-color: #BCE8F1;
    color: #3A87AD;
}
.alert-info h4 {
    color: #3A87AD;
}
.alert-block {
    padding-bottom: 14px;
    padding-top: 14px;
}
.alert-block > p, .alert-block > ul {
    margin-bottom: 0;
}
.alert-block p + p {
    margin-top: 5px;
}
.alert-small {
    margin-bottom: 10px;
    padding: 0px 35px 0px 14px;
    font-size: .9em;
}
.close {
    color: #000000;
    float: right;
    font-size: 20px;
    font-weight: bold;
    line-height: 20px;
    opacity: 0.2;
    text-shadow: 0 1px 0 #FFFFFF;
}
.alert a.close {
    text-decoration: none;
}
body.infusionsoft-edition .alert-edition {
    background-color: #DFF0D8;
    border-color: #D6E9C6;
    color: #468847;
}
body.blue-edition .alert-edition {  
    background-color: #D9EDF7;
    border-color: #BCE8F1;
    color: #3A87AD;
}

/* header timezone */
.navbar-timezone {
    padding: 12px 15px;
}
.header_date_time_wrapper {
    vertical-align: top;
    font-size: 18px;
    max-width:540px;
    text-align: right;
}
.booking .header_date_time_wrapper {
    max-width: initial;
}
.header_date_time_wrapper > div  {
    display: block;
    float: right;
    margin-left: 5px;
    line-height: 22px;
    border: 1px solid transparent;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    cursor: pointer;
}
.header_date_time_wrapper #header_date {
    text-align: right;
    line-height: 25px;
}
.header_date_time_wrapper .header_date_days {
    font-size: 18px;
    color: #222;
    font-weight: 300;
}
.header_date_time_wrapper .header_date_time {
    font-size: 20px;
    color: #222;
    font-weight: 300;
}
.header_date_time_wrapper .tz-label {
    font-size: 22px;
    vertical-align: middle;
    color: #000;
}
.header_date_timezone_wrapper > div:hover {
    border-color: #ccc;
}
.header_date_timezone_select_spacer {
    width: 310px;
    height: 1px;
}
.header_date_timezone_wrapper {
    margin-top: 3px;
    font-weight: 300;
    padding: 0 3px 3px 3px;
    border: 1px solid transparent;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    cursor: pointer;
}
.header_date_time_wrapper .header_clock_icon {
    display: inline-block;
    vertical-align: baseline;
    height: 16px;
    width: 16px;
    background: url(../images/clock.png) no-repeat 0 0;
    background-size: auto;
    background-size: 16px auto;
    margin: 0 3px;
    opacity: 0.8;

    margin-top: 7px;
    vertical-align: top;
}

.header_date_timezone_wrapper:hover {
    border-color: #ccc;
}

.header_date_timezone_wrapper2 {
    padding: 0 3px 1px 3px;
    border: 1px solid transparent;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    cursor: pointer;
}

.header_date_timezone_wrapper2 .icon-edit {
    vertical-align:middle;
    padding-bottom: 2px;
    opacity: .6;
}

.header_date_timezone_wrapper2:hover {
    border-color: #ccc;
}

.header_date_timezone_wrapper2:hover .icon-edit {
    opacity: 1;
}

.header_date_timezone {
    font-size: 12px; 
    font-variant: small-caps; 
    color: #000;
    vertical-align: middle;
    padding-bottom: 1px;
}
.header_date_timezone_select_wrapper {
    display:inline-block;
    position: relative;
}
.header_date_time_wrapper .form-control-wrap.TimeZone {
    display: inline-block;
}
.header_date_time_wrapper .timeZoneChange {
    display: inline-block;
    width: 250px;
}
.header_date_time_wrapper .more-timezones-wrapper {
    font-size: 11px;
    position: absolute;
    left: -290px;
    top: 4px;
}
.header_date_time_wrapper .more-timezones-wrapper a {
    text-decoration: underline;
}
.header_date_time_wrapper .more-timezones-wrapper a:hover {
    text-decoration: none;
}

/* header logo */
.navbar-app-logo img.svg-img {
    min-height: 40px;
    min-width: 300px;
}

/* booking pages */
.fc-agendaDay-view .appt, .fc-agendaWeek-view .appt {
    width: 100% !important;
    text-align: center;
}
.fc-agendaDay-view .appt > div {
    max-width: 33% !important;
    display: inline-block;
    text-align: center;
}
@media (max-width: 979px) {
    .fc-agendaDay-view .appt > .time, .fc-agendaDay-view .appt > .info {
        display: none;
    }
    .fc-agendaDay-view .appt > .btn-div {
        display: inline-block;
        max-width: none !important;
    }
}

.view-type-guests {
    min-width: 120px !important;
}

.slotavail-day .button-css3-v2 {
    position: relative;
    top: 30% !important;
}

.slotavail-day.slot-length-120 .button-css3-v2 {
    top: 20% !important;
}
.slotavail-day.slot-60-or-less .button-css3-v2 {
    padding: 0 12px;
    position: relative;
    top: 15% !important;
    height: auto !important;
}
.slotavail-day.slot-60-or-less .time, .slotavail-day.slot-60-or-less .info {
    line-height: 38px !important;
    top:0 !important;
}
.slotavail-day.slot-length-45 .time, .slotavail-day.slot-length-45 .info {
    line-height: 29px !important;
    top:0 !important;
}
.slotavail-day.slot-30-or-less .time, .slotavail-day.slot-30-or-less .info {
    line-height: 18px !important;
    top:0 !important;
    font-size: 12px !important;
}
.slotavail-day.slot-20-or-less .time, .slotavail-day.slot-20-or-less .info {
    line-height: 8px !important;
    top:0 !important;
    font-size: 10px !important;
}
.slotavail-day.slot-30-or-less .button-css3-v2, .slotavail-day.slot-length-45 .button-css3-v2 {
    padding: 0 12px;
    position: relative;
    top: 0%  !important;
    height: auto !important;
}
.slotavail-day.slot-length-45 .button-css3-v2 {
    top: 5% !important;
}

.slotavail-day .button-css3-v2 span {
    font-size: 13px;
}
.slotavail-day.slot-30-or-less .button-css3-v2 span {
    line-height: 13px;
    font-size: 11px;
}
.slotavail-day.slot-60-or-less .button-css3-v2 span:nth-child(2) {
    display: none;
}
.slotavail-day.slot-90-or-less .button-css3-v2 {
    padding: 3px 10px;
    top: 20% !important;
}
.fc-override .fc-agendaDay-view .appt.slot-30-or-less div {
    top: 10%;
}

.slotavail-day.slot-20-or-less .button-css3-v2 {
    display: none;
}

.slotavail-week.slot-20-or-less .time {
    line-height: 8px;
    padding-top: 0;
}

.slot_day .appt .info, .fc-override .fc-agendaDay-view .appt .info
{
    width: 200px;
    font-size: 14px;
    padding: 0;
    float: left;
    text-align: left;
}

.slot_day .appt .time, .fc-override .fc-agendaDay-view .appt .time
{
    font-size: 14px;
    width: 205px;
    text-indent: 25px;
    padding: 0;
    float: left;
    text-align: left;
}

/* ===== input spinner ====== */
.input-spinner {
    display: table;
    border-collapse: separate;
}
.input-spinner .btn-group {
    /*margin: -1px 0 0 -4px;*/
    display: table-cell;
    vertical-align: top;
}
.input-spinner .btn-group button {
    padding: 2px 5px;
}
.input-spinner input {
    /*display: table-cell;*/
    vertical-align: top;
    border-radius: 4px 0px 0px 4px !important;
    border-right: 0px none !important;
}
.input-spinner .btn-group button {
    line-height: 10px;
}
.input-spinner .btn-group button span {
    display: inline-block;
    vertical-align: middle;
    width: 7px;
    height: 4px;
    background: url(../images/triangle.png) 0 0 no-repeat;
}
.input-spinner .btn-group button.btn-up span {
    background-position: 0 -4px;
}
.input-spinner .btn-group .btn-up {
    border-radius: 0px 4px 0px 0px !important;
}
.input-spinner .btn-group .btn-down {
    border-radius: 0px 0px 4px 0px !important;
}


/* appt form */
#userinfo_appt_form .email-msg {
    font-size: 14px;
    font-weight: bold;
    margin: 20px 0 30px 0;
    text-align: center;
}

#ical_export .left {
    padding-top: 20px !important;
}
#ical_export .ical-item {
    float: left;
    width: 48px;
    padding-top: 55px;
    margin: 0 20px 10px 0;
    cursor: pointer;
    text-align: center;
}
#ical_export .ical-item:hover {
    color: #95d167;
}
.ii-ical {
    background: url(../images/icons/ical.png) no-repeat 0 0;
}
.ii-gcal {
    background: url(../images/icons/gcal.png) no-repeat 0 0;
}
.ii-outl {
    background: url(../images/icons/outlook.png) no-repeat 0 0;
}

.fld_mobile_phone .with-phone-codes .phone-codes {
    display: inline-block;
    width: 90px !important;
    margin-right: 3px;
}
.fld_mobile_phone .with-phone-codes .mobile-phone-input {
    display: inline-block;
    width: 43%;
}

.booking .view_type_container {
    position: absolute;
    right: 0;
    top: 0;
    margin: 5px;
}
.booking .header_date_time_wrapper .more-timezones-wrapper {
    position: relative;
    left: initial;
}
.booking-loader {
    position: absolute;
    margin: auto;
}
.booking-loader .loader-spinner {
    position: relative;
    height: 150px;
}
.booking-loader .loader-hdr1,
.booking-loader .loader-hdr2 {
    text-align: center;
}
.booking-loader .loader-hdr1 {
    font-weight: bold;
    font-size: 16px;
}
.booking-loader .loader-hdr2 {
    margin-top:5px;
}
.booking-loader .modal-dialog {
    width:250px;
    margin:10% auto 0 auto;
}
.booking-loader .modal-dialog .modal-body {
    padding-bottom: 30px;
}

.booking.action-form #userinfo_appt_form > .box {
    min-height: 300px;
}

#capacity_adv {
    left:90px;
    top: 2px;
    display: inline-block;
}

.adv-book-settings-wrap {
    padding: 0 0 15px 0;
}
#adv_book_settings_container {
    padding-left: 25px;
}

.appt_groupmax input[name="appt_groupmax"],
.main-appt-form input[name="look_busy_num"] 
{
    display: inline-block !important;
}
.appt_groupmax .ques {
    margin-right: 10px;
}
.in-advance-container .ques,
.in-advance-2-container .ques,
.look-busy-container .ques,
.reschedule-container .ques,
.appt-form-avail-wrapper .ques[rel="availability-info"]
{
    margin: 3px 0 0 15px;
    vertical-align: top;
}
.in-advance-container .form-control,
.in-advance-2-container .form-control,
.look-busy-container .form-control,
.reschedule-container .form-control 
{
    vertical-align: top;
}
.slice-slots-tooltip-wrap .ques, .align-slots-tooltip-wrap .ques {
    margin: 0;
}


/* user calendars */
.user-calendars-grid {
    float: left; 
    margin-left: 20px;
    /*max-height: 775px;*/
    max-width: 699px;
    /*overflow-y: scroll;*/
    white-space: nowrap;
}
.user-calendars-grid .user-name {
    padding: 3px 8px;
    font-weight: bold;    
}
.user-calendars-grid .user-calendar-item {
    width: 172px;
    background: #fff;
    position: relative;
    /*display: inline-block;*/
    float: left;
}
.user-calendars-grid .user-calendar-item.no-time-axis {
    /*width: 130px;*/
}
.fc-override-no-time-axis .fc-agenda-axis.fc-widget-header {
    display: none;
}
.fc-override-no-scroll .fc-scroller {
    overflow-y: hidden !important;
}
#calendar_users .user-calendar-item .fc-widget-content {
    border-right-width: 0px;
}
#calendar_users .user-calendar-item:last-child .fc-widget-content {
    border-right-width: 1px;
}
#my-calendar-users .item {
    margin-bottom: 5px;
    font-size: 12px;
}
#my-calendar-users .checkbox {
    vertical-align: middle;
    margin: 0 3px 0 0;
    display: inline-block;
}

/* calendars sidebar */
#calendars-sidebar {
    margin: 0 10px;
    overflow: hidden;
}
#calendars-sidebar .cal_list {
    margin-bottom: 10px;
    border: 1px solid #ddd;
}
#calendars-sidebar .cal_list h3 {
    padding: 3px;
    font-size: 11px;
    font-weight: bold;
    line-height: 20px;
    background: #ddd;
    color: #555;
}
#calendars-sidebar .cal_list img {
    width: 18px;
    height: 18px;
    padding-right: 3px;
}
#calendars-sidebar .cal_subhead {
    background-image: url(../images/lines-wide.png);
}
#calendars-sidebar .cal_subhead span {
    display: inline-block;
    background-color: #EFEFEF;
    padding: 0 15px;
}
#calendars-sidebar .cal {
    background: #fff;
    white-space: nowrap;
    position: relative;
    cursor: default;
    padding: 0 5px;
}
#calendars-sidebar .cal:hover {
    background: #f3f3f3;
}
#calendars-sidebar .cal .checkbox {
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 1px solid #ccc;
    border-radius: 2px;
    background: #fff;
    vertical-align: middle;
    margin: -1px 2px 0;
    overflow: hidden;
}
#calendars-sidebar .cal .checkbox span {
    width: 100%;
    height: 100%;
    opacity: 0;
}
#calendars-sidebar .cal .checkbox.checked span {
    opacity: 1;
}
#calendars-sidebar .cal .cal-title {
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 190px;
    line-height: 25px;
    vertical-align: middle;
}
#calendars-sidebar a.cal-menu-handle {
    display: none;
    position: absolute;
    top: 5px;
    right: 5px;
    padding: 1px 3px;
    border: 1px solid #ccc;
    background: #ffffff;
    height: 16px;
}
#calendars-sidebar .cal:hover a, #calendars-sidebar .cal.menu-active a {
    display:block;
}
#calendars_loader {
    text-align: center;
}
.calendar-popup-menu {}
.calendar-popup-palatte, .calendar-popup-menu-wrapper {
    margin:0;
    padding: 0;
    list-style: none;
    cursor: default;
}

.calendar-popup-palatte .palette-btn {
    margin: 0 2px 2px 0;
    height: 16px;
    width: 16px;
    border: 1px solid;
    display: inline-block;
    position: relative;
    cursor: pointer;
}

.calendar-popup-palatte .palette-btn:hover {
    border-color: black !important;
}

.calendar-popup-palatte .palette-btn .icon-li {
    position: absolute;
    top: 0;
    left: 0;
}

/* my calendars */
.my-calendar-settings .ques {
    margin-top: 0;
    margin-left: 5px;
}
.mycal-calendar-wrapper > h3 .ques {
    float: right;
    margin: 5px 10px 0 0;
}
#mycal-calendar-alert li {
    margin: 10px 0;
}

.mycal-section-wrapper h2 {
    border-bottom: 1px solid #999;
    font-size: 14px;
    font-weight: 700;
    line-height: 26px;
    margin: 20px 0 10px 0;
}

.mycal-calendar-wrapper {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border: 1px solid #ddd;
}

.mycal-calendar-wrapper h3 {
    display: block;
    position: relative;
    margin:0;
    padding: 3px;
    line-height: 28px;
    background-color: #f3f3f3;
    font-size: 13px;
}

.mycal-calendar-wrapper.appcore h3 {
    padding-left: 10px;    
}

.mycal-calendar-wrapper img {
    width: 28px;
    height: 28px;
    padding: 0 5px;
    display: inline;
}

.mycal-hdr-checkbox-row {
    border-bottom: 1px solid #ddd;
    margin-bottom: 5px;
    padding-bottom: 5px;
}

.mycal-calendar-wrapper .connect-btn {
    margin-top: 10px;
}

.mycal-calendar-wrapper .mycal-calendar-activity {
    position: absolute;
    /* margin: -6px 10px 0 0; */
    right: 40px;
    top: 1px;
    color: #aaa;
}


.mycal-calendar-wrapper .mycal-cal-row:hover {
    background: #f7f7f7;
}

.mycal-calendars {
    margin-top: 10px;
}

.mycal-calendar-wrapper .mycal-title {
    display: block;
    position: relative;
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mycal-calendar-wrapper .mycal-title a {
    margin: 0 3px;
    text-decoration: none !important;
}

.mycal-calendar-wrapper .mycal-title a.edit {
    margin: 0;
    padding: 0 5px 0 0;
    visibility: hidden;
}

.mycal-calendar-wrapper .mycal-cal-row:hover .mycal-title.editable a.edit {
    visibility: visible;
}

.mycal-calendar-wrapper a.delete {
    visibility: hidden;
}

.mycal-calendar-wrapper .mycal-cal-row:hover .action-col.editable a.delete {
    visibility: visible;
}

.mycal-title-input {
    display: none;
    position: absolute;
    top: 0;
    left: 25px;
}


.mycal-title-input input {
    width: 200px;
    font-size: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
    padding: 3px 5px;
    margin-right: 5px;
}

@media (max-width: 768px) {
    a.edit, .mycal-cal-row:not(.root) a.delete {
        visibility: visible !important;
    }
}

.mycal-column-heading {
    text-align: center;
    font-weight: bold;
    font-size: 10px;
}
.mycal-checkbox-wrap {
    text-align: center;
}
.mycal-checkbox {
    display: inline-block !important;
}

#my-tz-wrapper {
    position: relative;
}

#my-tz {
    border: 1px solid #aaa;
    border-radius: 10px 10px 0 0;
    padding: 10px;
}

#my-tz span:not(.ques) {
    display:inline-block;
    padding: 0 10px;
    font-size: 13px;
    font-weight: 700;
    border-right: 1px solid #ccc;
}

#my-tz span.last {
    border-right: none;
}

#my-tz-change {
    display: block;
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 11px;
}

.qtip-my-tz-save-as-default, .qtip-my-tz-save-as-default * {
    font-size: 12px !important;
}

.my-calendar-settings .alert-small {
    padding: 8px 35px 8px 14px;
    margin: 10px 0;
}

.settings-form-saved, .settings-form-loader {
    margin-left: 15px;
    display: inline-block;
}

#tz-match, #tz-mismatch {
    border-radius: 0 0 4px 4px;
    margin: 0 0 10px 0;
}

#tz-chooser-wrapper {
    position:absolute;
    top: 58px;
    left: 0;
    width: 655px;
    z-index: 100;
}

#my-calendar-settings .map-wrap {
    background: url("../images/bg.png") repeat scroll 0 0 #4e7cad;
    /*border-radius: 3px 3px 0 0;*/
    padding: 1px;
    position: relative;
}

#my-calendar-settings .map-inset {
    background: url("../images/world.png") repeat scroll 50% 50% / cover rgba(0, 0, 0, 0);
    /*border-radius: 3px;*/
    padding-bottom: 50%;
    position: relative;
}

.map-inset .map-axis-x {
    border-left: 1px solid rgba(78, 124, 173, 0.5);
    bottom: 0;
    position: absolute;
    top: 0;
    transition: left 50ms ease-out 0s;
    width: 0;
}

.map-inset .map-axis-y {
    border-top: 1px solid rgba(78, 124, 173, 0.5);
    height: 0;
    left: 0;
    position: absolute;
    right: 0;
    transition: top 50ms ease-out 0s;
}

.map-inset span {
    background: none repeat scroll 0 0 #fff;
    border: 1px solid #4e7cad;
    border-radius: 2px;
    height: 3px;
    margin: -2px 0 0 -2px;
    position: absolute;
    width: 3px;
}

@-webkit-keyframes pulse 
  {       
    0% {-webkit-transform: scale(0); opacity: 0;}
    8% {-webkit-transform: scale(0); opacity: 0;}
    15% {-webkit-transform: scale(0.1); opacity: 1;}
    30% {-webkit-transform: scale(0.5); opacity: 1;}
    100% {opacity: 0; -webkit-transform: scale(1);}
  }

  @-moz-keyframes pulse 
  {       
    0% {-moz-transform: scale(0); opacity: 0;}
    8% {-moz-transform: scale(0); opacity: 0;}
    15% {-moz-transform: scale(0.1); opacity: 1;}
    30% {-moz-transform: scale(0.5); opacity: 1;}
    100% {opacity: 0; -moz-transform: scale(1);}
  }

.map-inset span.selected > div.pulse {
    margin: 0 auto;
    border-radius: 100px;
    position: absolute;
    right: -16px;
    top: -16px;
    z-index: 10;
    background-color: transparent;
    opacity: 0.1;
    width: 32px;
    height: 32px;
    border: 2px solid #ff4b4b;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    -o-border-radius: 100px;
    -ms-border-radius: 100px;
    border-radius: 100px;
    /* Giving Animation Function */
    -webkit-animation: pulse 2s linear infinite;
    -moz-animation: pulse 2s linear infinite; 
    border-image: initial;
}

.map-inset span.active {
    background: none repeat scroll 0 0 #fff;
    border: 1px solid #4e7cad;
    border-radius: 2px;
    height: 4px;
    margin: -3px 0 0 -3px;
    position: absolute;
    width: 4px;
}

.map-inset span.selected {
    background: none repeat scroll 0 0 red;
    border: 1px solid #ff4b4b;
    border-radius: 4px;
    height: 4px;
    margin: -3px 0 0 -3px;
    position: absolute;
    width: 4px;
    z-index: 100;
}

.tz-chooser-tz {
    padding: 5px;
    background: #4e7cad;
    font-size: 12px;
    color:  #fff;
    text-align: center;
    border-radius: 0 0 3px 3px;
    border-top: 1px solid #fff;
}

.tz-chooser-tz span {
    display: block;
    float: left;
    text-align: center;
}

.invite-services {
    display: flex;
}
.invite-guests-wrap label {
    cursor: pointer;
}
.invite-service {
    margin-right: 30px;
    width: 220px;
}
.invite-service:last-child {
    margin-right: 0;
}
.invite-service img {
    width: 22px;
    height: auto;
    margin: 0 5px;
}
.invite-service label {
    display: flex;
    align-items: center;
}
.invite-service input[type="radio"] {
    margin: 0;
}
.invite-loader {
    font-size: 12px;
    margin-left: 10px;
    color: #777;    
}
.invite-loader-icon {
    margin-right: 5px;
}
.invite-dropdown {
    width: 400px !important;
}
.invite-dropdown .select2-result-label {
    font-size: 12px;
}

.googlemeet-wrap .googlemeet-service {
    width: 220px;
}

/* feature: Check User Setup Status */
.user-setup-status-controls {
    margin-bottom: 10px;
    text-align: right;
}
.user-setup-status-controls .item {
    display: inline-block;
    margin-left: 10px;
    font-weight: bold;
    text-align: center;
    vertical-align: bottom;
}
.user-setup-status-controls .service-item .service-img.disabled {
    opacity: 0.5;
}
.user-setup-status-controls .user-setup-status-info-item {
    vertical-align: top;
    margin-top: 5px;
    margin-right: 10px;
}
.user-setup-status-controls .infusion-item div {
    width: 80px;
}
.user-setup-status-controls .google-item div {
    width: 60px;
}
.user-setup-status-controls .service-item .service-img {
    cursor: pointer;
}
.service-list.user-status-services > div {
    cursor: pointer;
    margin-top: 2px;
}
.service-list.user-status-services img, .selected-service-wrap img {
    height: 20px;
}
.user-setup-status-controls .selected-service-wrap {
    display: inline-block;
}
.user-setup-status-controls .service-item .img-wrap {
    width:60px;
    display: inline-block;
}
.user-setup-status-controls .service-item .caret-icon {
    font-size: 14px;
    margin-right: 5px;
}
.user .user-setup-status {
    float: right !important;
    display: none;
}
.user .user-setup-status.active {
    display: block;
}
.user:hover .user-setup-status {
    display: none;
}
.user .user-setup-status > span {
    text-align: center; 
}
.user .user-setup-status .infusion-status {
    width: 60px;
}
.user .user-setup-status .google-status {
    width: 115px;
}
.user .user-setup-status .service-status {
    width: 115px;
}
.user .user-setup-status .cals-status {
    width: 45px;
}
.user .user-setup-status > span > i {
    display: none;
}
.user .user-setup-status .ok .ok, .user .user-setup-status .not-ok .not-ok, .user .user-setup-status .loading .loading {
    display: inline-block;
}
.user .user-setup-status .ok {
    color: #79C02C;
}
.user .user-setup-status .not-ok {
    color: #bd0000;
}

/* feature end: Check User Setup Status */

/* feature: customer facing appointment title */
.customer-facing-title-enabled .internal-appt-title {
    font-size: 16px;
    font-weight: bold;
}
/* feature end: customer facing appointment title */

/* tutorial */
#system-tutorial-elm {
    position: fixed;
    bottom: 0;
    right: 100px;
    padding: 15px 20px;
    font-size: 14px;
    background-color: #585858;
    color: #fff;
    /*border:1px solid #ccc;*/
    border-bottom: 0px none;
    -moz-border-radius: 6px 6px 0 0;
    -webkit-border-radius: 6px 6px 0 0;
    border-radius: 6px 6px 0 0;
    z-index: 99999;
    line-height: 150%;
    width:200px;
    text-align: center;
}

#system-tutorial-elm a {
    color: #fff;
}
#system-tutorial-elm a:hover {
    color: #97CC68;
}
#end_tour_btn {
    margin-top:10px;
}


.tutorial-next-elm {
    margin-top: 10px;
    text-align: right;
    padding-right: 10px;
}
/* tutorial end */

#booking_links_powered_by {
    text-align: center;
    padding: 5px 0;
}

.download-appointments-wrapper .download-appointments-title {
    line-height: 34px;
    font-weight: bold;
}
.download-appointments-wrapper .download-appointments-datepicker {
    display: inline-block;
    width: 150px;
    margin: 0 5px;
}
.download-appointments-wrapper input[type="checkbox"] {
    vertical-align: top;
    margin-top: 2px;
}
#download-appointments-filter-switch {
    margin-right: 10px;
    line-height: 30px;
}

#manage-appointments-content .manage-appointments-start-hdr { width: 130px; }
#manage-appointments-content .manage-appointments-attendees-hdr { width: 210px; }
#manage-appointments-content .manage-appointments-user-attendee-hdr { width: 210px; }
#manage-appointments-content .manage-appointments-type-hdr { width: 50px; }
#manage-appointments-content .manage-appointments-type-td { width: 50px; text-align: center; }

#manage-appointments-grid-wrapper {
    position: relative;
}
#manage_appts_loader {
    position: absolute;
    top:15px;
    left:0;
    background-color: #a7a7a7;
    color: #fff;
    padding: 2px 4px;
    font-weight: bold;
}

#manage-appointments-filter {
    margin-bottom: 10px;
}

#manage-appointments-edit-columns-wrap {
    margin-bottom: 10px;
}

.managed-column {
    margin-left: 10px;
}
.managed-column .sort-icon {
    opacity: 0.4;
    margin-right: 5px;
    cursor: move;
}
.managed-column:hover .sort-icon {
    opacity: 0.9;
}
.manage-appts-columns-loader {
    margin-right: 10px;
}
.manage-appts-no-org-settings-found {
    margin: 10px 0;
}


#booking_links_powered_by {
    text-align: right;
    padding-right: 10px;
}
#booking_links_powered_by img {
    max-width: 130px;
}

/* RESCHEDULE */
#reschedule-table {
    width: 100%;
    border-collapse: collapse;
}
#reschedule-table .reschedule-inner {
    width: 100%;
}
#reschedule-table .reschedule-inner tr {
    border: 0px none;
    background: none;
}
.prevent-reschedule {
    text-align: right;
    color: red;
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 5px;
    padding-right: 10px;
}

#reschedule-table tr {
    padding: 10px;
}

.reschedule-date-wrapper {
    padding: 0;
    width: 60px;
    font-variant: small-caps;
    text-align: center;
}

.reschedule-date-day {
    padding: 3px 0;
    font-size: 12px;
}

.reschedule-date-date {
    padding-top: 3px;
    font-size: 22px;
    line-height: 24px;
}

.reschedule-date-month {
    font-size: 12px;
    padding-bottom: 3px;
}

.reschedule-summary-wrapper {
    position: relative;
    padding: 0 15px;
}

.reschedule-summary-overlay-wrapper {
    position: relative;
}

.reschedule-item.cancel .reschedule-summary-detail {
    opacity: .2;
}

.reschedule-summary-cancel-overlay {
    display:none;
    position: absolute;
    top: 0;
    left: 0;
    height: 50px;
    width: 100%;
    text-transform: uppercase;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    z-index: 5;
}

.reschedule-item.cancel .reschedule-summary-cancel-overlay {
    display: block;
}

.reschedule-summary-time {
    font-size: 14px;
    font-weight: bold;
}

.reschedule-summary-summary {
    font-size: 12px;
}

.reschedule-summary-summary a.mailto {
    color: #468847;
}

body.blue-edition .reschedule-summary-summary a.mailto {
    color: #3A87AD;
}

.reschedule-summary-summary a.mailto:hover {
    text-decoration: underline;
}

.reschedule-action-btn {
    width: 100px;
    text-align: center;
}

.reschedule-item.cancel .reschedule-action-btn {
    opacity: .2;
}

.reschedule-cancel-loader {
    width: 20px;
    height: 20px;
}

.trigger-form-number {
    margin: 0 3px;
    padding: 3px;
    background: #f7f7f7;
    background: -moz-linear-gradient(
        top,
        #f7f7f7 0%,
        #fefefe 75%,
        #fefefe);
    background: -webkit-gradient(
        linear, left top, left bottom, 
        from(#f7f7f7),
        color-stop(0.75, #fefefe),
        to(#fefefe));
    border: 1px solid #ddd;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
}


/* multiservice appt */
.multi-appt-summary {
    font-size: 13px;
    padding-left:20px;
}
.multi-appt-edit, .multi-appt-delete {
    width: 29px; 
    text-align: center; 
    vertical-align: middle;
}
.multi-appt-copylink {
    width: 149px; 
    text-align: center; 
    vertical-align: middle;
}

#multi_appt_form .appt-service-item .drag-n-drop-holder {
    font-size: 22px;
    color: #888;
    line-height: 10px;
    letter-spacing: -2px;
    cursor: move;
}

#multi_appt_form .multiservice-buttons {
    text-align: center;
}
#multi_appt_form #add-service-form {
    text-align: left;
    width: 300px;
    margin: 15px auto;    
}
#multi_appt_form .add-service-type-fields {
    margin: 15px 0;
    text-align: left;
}
#multi_appt_form .add-service-type-fields table td {
    padding: 4px;
}
#multi_appt_form .arrow-2 span { background-position: 27px -267px; }
#multi_appt_form .appt-service-item {
    border-top: 1px solid #eee;
    padding: 0 10px;
    border-radius: 3px;
    position: relative;
    background-color: #fff;
}
#multi_appt_form .header-bar {
    padding: 20px 0;
    cursor: pointer;
}
#multi_appt_form .item-body {
    padding-bottom: 20px;
    margin-top: 20px;
}
#multi_appt_form .header-bar:hover {
    background-color: #fafafa;
}
#multi_appt_form .appt-service-item .header-bar:after,
#multi_appt_form .appt-service-item .item-body:after {
    content: " ";
    display: block;
    clear: both;
}
#multi_appt_form .appt-service-item.collapsed .item-body {
    display:none;
}
#multi_appt_form .appt-service-item .expand-icon {
    font-size: 27px;
    vertical-align: top;
    margin-left: 30px;
    line-height: 34px;
    opacity: 0.4;
}
#multi_appt_form .appt-service-item .expand-icon-up,
#multi_appt_form .appt-service-item.collapsed .expand-icon-down {
    display: inline-block;
}
#multi_appt_form .appt-service-item.collapsed .expand-icon-up,
#multi_appt_form .appt-service-item .expand-icon-down {
    display: none;
}

#multi_appt_form .multiservice-buttons {
    text-align: center;
    border-top: 1px solid #eee;
    padding-top: 20px;
}
#multi_appt_form #box_previewcustomize {
    clear: both;
    border-bottom: 1px solid #E2E7EB;
    padding-bottom: 20px;
}
#multi_appt_form #box_previewcustomize:after {
    content: " ";
    display: block;
    clear:both;
}

.appt.multiservice .appt-item:first-child {
    margin-left: 15px;
    width: 50% !important;
}
.appt.multiservice .select-slot {
    float: right;
    margin-right: 20px;
}
.appt.multiservice .appt-item .img {
    float: left;
    margin: 0 15px 15px 0;
    text-indent: 0;
}
.appt.multiservice.with-descr .descr {
    display: block;
    font-size: 12px;
}
.appt.multiservice {
}
.appt.multiservice .multi-item-body {
    float: left;
}
.appt.multiservice .appt-item .descr {
    font-weight: normal;
    text-indent: 0;
}
.appt.multiservice .appt-item .name {
    margin-bottom: 10px;
    font-weight: bold;
    text-indent: 0;
}
.appt.multiservice .appt-item {
    display: flex;
}
.appt.multiservice.with-image .appt-item:first-child, .appt.multiservice.with-descr .appt-item:first-child {
    top:15%;
}
.appt.multiservice.with-image .img {
    display: block;
}
.multiservice-page-heading {
    text-align: center;
    margin: 15px 0;
}

.appt-service-item .progress {
    display: inline-block;
    width: 100px;
    margin: 0px 0 0 10px;
    height: 3px;
}
@media only screen and (max-width : 768px){
    .multiservice .btn_select_slot .txt {
        line-height: normal;
    }
    .multiservice .btn_select_slot .check-bg {
        display: none;
    }
}

.select2-container#s2id_all_links {
    width: 300px !important;
}

.white_block {
    width: 100%;
    height:100%;
    position:fixed;
    top:0px;
    left: 0px;
    background: #fff;
    opacity: 0.8;
    z-index: 10000;
    display:none;
}
#app_preview_container {
    height: 100%;
    /*padding-top: 40px;*/
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    z-index: 10001;
    display:none;
}
#app_preview_container .navbar {
    margin: 0;
}

#app_preview_container #app_preview_head {
    background: #333; 
    position: fixed;
    top:0;
    left: 0;
    width: 100%;
}

#app_preview_container {    
    color: #fff;
}
#app_preview_container #preview_btns {
    float:right;
}
#preview_close_btn {
    color: #fff;
    margin: 0px 20px 0 0;
    text-transform: none;
    font-size: 14px;    
}

#app_preview_container #app_preview_head h2 {
    background: none repeat scroll 0 0 #333;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    padding: 10px 0;
    margin: 10px 0;
    text-align: center;
    text-transform: uppercase;
    line-height: 20px;
}

#app_preview_container #app_preview_content {
    height: 1400px;    
}

#app_preview_container #app_preview_content iframe {
    overflow:hidden;    
}

/* additional infusionsoft options */
.infusionsoft-additional-options {
    margin-bottom: 15px;
}
.infusionsoft-additional-options .infusionsoft-logo {
    width: 110px;
    vertical-align: top;
    margin-top: 4px;    
    margin-right: 10px;
}
.infusionsoft-additional-options input[name="infusionsoft_nomerge"] {
    vertical-align: top;
    margin-top: 3px;    
}

/* outlook additional options */
.outlookoffice-additional-options {
    margin-bottom: 15px;
}
/*
.outlookoffice-additional-options .office365-logo {
    width: 95px;
    vertical-align: top;
    margin-top: 4px;
}
*/
.outlookoffice-additional-options .outlook-logo {
    width: 90px;
    vertical-align: top;
    margin-right: 10px;
    margin-top: 1px;
}

/* custom booking fields */
#form-settings .booking-form-fields-checklist input.custom-field-enabled,
#form-settings .group-field-optional, #form-settings .group-field-enabled,
#form-settings .custom-field-reorder,
#form-settings .ques[rel="trigger_automation_create_order_custom_field_tooltip"]
{
    display: none;
}
#custom-fields-modal .modal-title .ques, #custom-fields-reorder-modal .modal-title .ques {
    vertical-align: initial;
}
#custom-fields-modal .group-field-type .ques {
    margin: 6px 0 0 0;
}
.custom-field-reorder {
    margin-left: 20px;
}
[rel="trigger_automation_add_custom_field_tooltip"], [rel="trigger_automation_create_order_custom_field_tooltip"] {
    margin-left: 5px;
}
.custom-field-dropdown-specific {
    padding-left: 30px;
}
.custom-field-dropdown-options {
    margin-bottom: 15px;
}
.custom-field-dropdown-options {
    max-height: 250px;
    overflow: auto;
    border: 1px solid #e2e7eb;
    padding: 5px;
}
.custom-field-dropdown-opt {
    margin-bottom: 10px;
}
.custom-field-dropdown-opt .opt-num {
    font-weight: bold;
}
.custom-field-dropdown-opt .opt-val {
    margin: 0 7px;
}
.custom-field-dropdown-opt .opt-val input {
    width: auto !important;
    display: inline-block !important;
}
.custom-field-dropdown-opt .opt-drag {
    font-size: 18px;
    cursor: move;
}
.custom-field-dropdown-opt .opt-del {
    font-size: 18px;
    margin-left: 5px;
    cursor: pointer;
}
.custom-field-hidden-variable {
    font-weight: bold;
}

.booking-form-fields-checklist .custom-field-button,
.outcome-fields-checklist .custom-field-button 
{
    cursor: pointer;
}
.booking-form-fields-checklist.disabled .custom-field-button {
    display: none;
}
.main-appt-form .custom-booking-fields {
    margin-top: 15px;
}
.custom-booking-fields-loader {
    vertical-align: -15%;
    display: inline-block;
    margin-left: 10px;    
}
.custom-booking-fields-loader .spin-icon {
    margin-right: 5px;
}

.booking-form-fields-checklist > div,
.outcome-fields-checklist > div {
    width: 50%;
    float: left;
    padding: 10px;
}
.booking-form-fields-checklist > div:nth-child(4n+1),
.booking-form-fields-checklist > div:nth-child(4n+2),
.outcome-fields-checklist > div:nth-child(4n+1),
.outcome-fields-checklist > div:nth-child(4n+2) 
{
    background-color: #f0f3f5;
}
.booking-form-fields-checklist:after,
.outcome-fields-checklist:after
{
    content: " ";
    clear: both;
    display: block;
}
.outcome-fields-checklist .edit-label-btn,
.outcome-fields-checklist .del-field-btn 
{
    display: none;
}

.booking-form-fields-checklist input[type=checkbox],
.outcome-fields-checklist input[type=checkbox]
{
    vertical-align: top;
    margin-top: 3px;
}

.sortable-fields-container .list-group-item.active, 
.sortable-fields-container .list-group-item.active:hover, 
.sortable-fields-container .list-group-item.active:focus 
{
    background-color: #A2A2A2;
    border-color: #A2A2A2;
}

/* prefilling fields */
.booking-prefill-form-field-key {
    margin-bottom: 15px;
}
.prefill-arrow-icon {
    margin-top: 10px;
}
.field-map-delete-btn {
    margin-top: 5px;
    display: inline-block;
}
.prefill-fields-buttons {
    display: flex;
    align-items: center;
    justify-content: center;
}
.prefill-fields-buttons > div {
    margin: 0 10px;
}

/* outcome report */
#outcome-report-dialog .modal-body {
    max-height: 350px;
    overflow: auto;
}
#outcome-report-dialog .required, #outcome-report-dialog .required-legend {
    color: red;
}
#outcome-report-dialog .outcome-save-loader {
    margin-right: 10px;
}

/* fixyourfunnel integration */
.fixyourfunnel-dialog-tutorial, .fixyourfunnel-add-number-link {
    text-decoration: underline;
    color: #04357e;
    font-weight: bold;
    font-size: 11px;
    margin: 9px 0 0 0;
    display: inline-block;    
}
.fixyourfunnel-message {
    margin-right: 5px;
    font-weight: bold;    
}
.fixyourfunnel-message.success {
    color: green;
}
.fixyourfunnel-message.error {
    color: red;
}
.fixyourfunnel-settings .select2-container {
    min-width: 200px;
}
.extension-fixyourfunnel .logo-img img {
    width: 170px;
}
#fixyourfunnel_settings .logo-img img {
    width: 160px;
}
#fixyourfunnel-connected-message {margin-left: 20px;}


/* robovoice pro integration */
.robovoice-warn-price-logo {
    text-align: center;
    margin-bottom: 15px;
}
.robovoice-voice-wrapper .select2-container {
    margin-top: 10px;
    min-width: 150px !important;
}

/* hubspot integration */
#hubspot_owner_select {
    display: inline-block;
    width: auto;
}
.extension-hubspot .switch {
    text-align: center;
}

/* salesforce integration */
#salesforce_owner_select {
    display: inline-block;
    width: auto;
}
.extension-salesforce .switch {
    text-align: center;
}
#copyUsersFromHSModal .users_container {
    max-height: 250px;
    overflow: auto;
    margin-bottom: 10px;
}

/* billing pages */
.billing, .billing .form-control {
    font-size: 14px !important;
}
.billing-loader {
    font-size: 14px;
    margin-left: 15px;    
}
.billing-page-title {
    text-align: center;
}
.billing-page-content {
    padding: 20px 0;
}
.billing .signup-invoice-container,
.billing .update-card-container {
    max-width: 800px;
    margin: 0 auto;
}
.billing .signup-invoice-container h3,
.billing .update-card-container h3 {
    text-align: center;
}
.billing .signup-invoice-container .signup-invoice-thankyou-message {
    text-align: center;
}
.billing input[data-stripe="cvc"] {
    width: 100px;
}
.billing .signup-invoice-loader,
.billing .update-card-loader {
    margin-left:10px;
}
.billing .expiration-controls-wrap select {
    width: auto !important;
    display: inline-block !important;
    margin-right: 10px;
}
.billing .update-card-greeting {
    margin-bottom: 15px;
}
.billing .invoice-agree-link {
    text-decoration: underline;
}
.billing .invoice-agree-link:hover {
    text-decoration: none;
}
.billing .alert.signup-invoice-terms-reminder {
    margin-top:15px;
}
.billing .update-card-thankyou {
    text-align: center;
}
.billing .billing-header-links {
    text-align: center;
    color: #777;
}
.billing .billing-header-links a {
    font-size: 12px;
    color: #777;
}

/* in-app notifications */
.in-app-notification-modal .modal-header {
    border-radius: 3px 3px 0 0;
}
.in-app-notification-modal .modal-header.white-text .modal-title {
    color: white;
}
.in-app-notification-modal .modal-header.white-text .close {
    color: white;
    opacity: 1;
}
.in-app-notification-modal.lockout .close,
.in-app-notification-modal.lockout .modal-footer
{
    display: none;
}

.qtip-in-app-notification {
    min-width: 500px;
    max-width: 600px !important;
}
.qtip-in-app-notification .notification-do-not-show-wrap {
    text-align: right;
}
.qtip-in-app-notification .qtip-titlebar .qtip-close {
    display: none;
}
.qtip-in-app-notification .notification-do-not-show-label,
.qtip-in-app-notification .notification-do-not-show-all-label {
    margin-right: 10px;
}
.qtip-in-app-notification .notification-do-not-show-checkbox,
.qtip-in-app-notification .notification-do-not-show-all-checkbox {
    vertical-align: top;
}
.qtip-in-app-notification .qtip-content {
    padding: 0;
}
.qtip-in-app-notification .notification-body {
    padding: 9px 14px;
    max-height: 300px;
    overflow: auto;
}
.qtip-in-app-notification .notification-body a {
    text-decoration: underline;
}
.qtip-in-app-notification .notification-body a:hover {
    text-decoration: none;
}
.qtip-in-app-notification .notification-footer {
    padding: 9px 14px;
    text-align: right;
    border-top: 1px solid #e5e5e5;
}
.qtip-in-app-notification .notification-footer .notification-summary {
    float: left;
}
.qtip-in-app-notification .notification-footer .notification-summary-txt {
    margin: 0 5px;
}
body.notification-no-scroll {
    overflow: hidden;
}
#qtip-overlay.notification-lockup {
    cursor: default;
}

/* booking links page */
.appts-grid-edit, .appts-grid-delete {
    width: 29px;
    max-width: 29px;
    box-sizing: content-box;
}
.appts-grid-copylink {
    width: 149px;
}

.app-grid .appts-list-users-status-loader {
    margin-left: 10px;
    opacity: 0.7;
}
.appt-list-item .appt-attendee-tag.warning {
    background-color: #ff8080;
    border-color: #d54141;
    box-shadow: none;
    color: #fff;
}
#appts-grid .appts-grid-summary {
    min-width: 200px;
}

/* upsell elements */
.upsell-item-cover {
    position: absolute;
    background: #000;
    opacity: 0.3;
    cursor: pointer;   
}
.upsell-modal .modal-title {
    text-align: center;
}
.upsell-modal .modal-footer {
    text-align: center;
}
.upsell-upgrade-btn {
    text-transform: uppercase;
}
.upsell-modal .feature-benefit {
    margin: 0 0 15px 0;
}
.upsell-modal .feature-benefit-logo img {
    width: 100%;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 4px;
}
.feature-benefit-logo {
    cursor: pointer;
    -webkit-transition: width 100ms;
    -moz-transition: width 100ms;
    -ms-transition: width 100ms;
    -o-transition: width 100ms;
    transition: width 100ms;    
}
.feature-benefit-logo.clicked {
    -webkit-transition: width 400ms;
    -moz-transition: width 400ms;
    -ms-transition: width 400ms;
    -o-transition: width 400ms;
    transition: width 400ms;    
    width: 100% !important;
    margin-bottom: 15px;
    /* update for the option where feature benefit img is on top  */
    margin-top: 10px;
}
.feature-benefit.clicked {
    /* update for the option where feature benefit img is on top  */
    display: flex;
    flex-direction: column-reverse;
}
.upsell-modal .feature-benefit-title {
    font-weight: bold;
    /*
    font-size: 14px;
    */
    margin-bottom: 5px;
}
.upsell-title-logo {
    margin-right: 15px;
}
.upsell-title-logo img {
    max-height: 50px;
    max-width: 200px;
}

/* billing - upgrade */
.upgrade-content {
    padding: 20px;
    text-align: center;
    min-height: 150px;
}

/* pagination */
.pager .page {
    margin: 0 2px;
}
.pager .previous>a, .pager .previous>span {
    float: none;
}

/* appointments */

.appointments-user-select,
.multi-appointments-user-select
{
    min-width: 250px;
}

/* Extensions page */
.extensions-item .switch {
    /*text-align: right;*/
}
.extensions-item .switcher {
    /*float: right;*/
    /*margin-right: 19px;*/
}

/* My Extensions page */
#serviceConnectModal .modal-header {
    background-color: #f1f1f1;
}
.service-connect-description {
    margin: 10px 0 5px 0;
}
.service-connect-body-text {
    margin-bottom: 20px;
}
.service-connect-body-text ol li {
    margin-top: 5px;
}
.service-connect-adv-btn-wrap {
    margin-top: 10px;
}
#service_connect_modal_adv_expand_container {
    margin-top: 10px;
}

#zoomus-org-connection {
    clear: both;
    padding-top: 10px;
}
#zoomus-org-connection-info {
    font-weight: 700;
}
.zoom-user-disconnect-wrap {
    padding: 0px 0 0 5px;
}
#zoomus_user_connect_controls {
    padding: 5px 0 0 5px;
}

/* Zoom data */
.zoom-install, .zoom-keep-data {
    min-height: initial;
}
.zoom-install-logo, .zoom-keep-data-logo {
    text-align: center;
    margin-bottom: 20px;
}
.zoom-install-body, .zoom-keep-data-body {
    width: 700px;
    margin: 0 auto;
    text-align: center;
    font-size: 13px;
}
.zoom-install-body p, .zoom-keep-data p {
    margin-bottom: 10px;
}
.zoom-install-buttons {
    margin-top: 20px;
}
.zoom-install-cancel-info {
    margin-top: 10px;
    font-size: 12px;
    color: gray;
}
.zoom-install-loader {
    margin-top: 20px;
}
.zoom-install-loader .spin-icon {
    font-size: 20px;
}

/* update password page */
.update-password {
    max-width: 350px;
    margin:150px auto 0 auto;
}
.update-password .heading {
    font-weight: bold;
    margin-bottom: 15px;s
}
.update-password .brand {
    text-align: center;
    margin-bottom: 25px;
}
.update-password .tip {
    color: gray;
}
.upd-pass-loader-wrap {
    text-align: center;
}
.upd-pass-loader {
    margin-right: 5px;
}
.update-password .update-btn {
    display: inline-block;
    width: auto;
}
.update-password .form-buttons {
    text-align: center;    
}


/* Quickstart modal */
#quickstartModal {
    position: fixed;
    bottom: 20px;
    right: 20px;
    max-width: 350px;
    background: #fff;
    padding: 0px;
    border-radius: 3px;
    box-shadow: 1px 1px 5px #5555;
    z-index: 10000;
}
#quickstartModal .quickstart-header {
    margin: 0;
    padding: 20px;
}
#quickstartModal .bars-icon {
    margin-right: 10px;
    display: none;
}
#quickstartModal .quickstart-body {
    padding: 20px 20px 0 20px;
    border-bottom: 1px solid #ddd;    
    border-top: 1px solid #ddd;    
}
#quickstartModal .quickstart-footer {
    text-align: right;
    padding: 20px;
}
#quickstartModal .quickstart-list {
    padding-left: 20px;
}

#quickstartModal .quickstart-item-title {
    font-size: 14px;
    font-weight: bold;
}
#quickstartModal .quickstart-list li {
    margin-bottom: 20px;
}
#quickstartModal .quickstart-footer a {
    margin-left: 20px;
}
#quickstartModal .quickstart-book-snippet {
    background-color: #f1f1f1;
    padding: 10px;
    border-radius: 5px;
    margin: 10px auto 10px auto;  
    word-break: break-all;
}
#quickstartModal a {
    text-decoration: underline;
}
#quickstartModal a:hover {
    text-decoration: none;
}
#quickstartModal .quickstart-link-wrap {
    margin-top: 5px;
}
@media (max-width: 767px) {
    #quickstartModal .bars-icon {
        display: inline-block;
    }
    #quickstartModal:not(.expanded) .quickstart-header {
        cursor: pointer;
    }
    #quickstartModal .quickstart-header {
        padding: 10px 20px;
    }
    #quickstartModal .quickstart-body {
        padding: 10px 10px 0 10px;
    }
    #quickstartModal .quickstart-footer {
        padding: 10px;
    }
    #quickstartModal .quickstart-header .close {
        display: none;
    }
    #quickstartModal .quickstart-footer,
    #quickstartModal .quickstart-body {
        display: none;
    }
    #quickstartModal.expanded .quickstart-footer,
    #quickstartModal.expanded .quickstart-body {
        display: block;
    }
}


.appointments-nav, .multi-appointments-nav {
    background: #666; 
    color: #fff; 
    align-items: flex-end;    
    padding: 5px 10px 10px 10px;
    margin: 0;
}
.appt-select-user {
    padding-right: 20px;
}
.appt-create-new {
    padding-left: 20px;
}
.user-select-label, .appt-search-label {
    margin: 0;
}
.appt-find-btn, .multi-appt-find-btn {
    margin-left: 10px;
}

/* tokens */

#tokenList .token .expired {
    color: red;
}

#tokenList table tr.inactive td {
    background-color: #ddd;
}

#tokenList table td {
    vertical-align: middle;
}

.tokens-section-wrapper .appt-search {
    margin: 0 10px;
}

.token-user-select-wrap {
    padding: 0 !important;
}

/* slots-analytics */
.slots-analytics .booking-link-display {
}
.slots-analytics .top-controls{
    padding: 5px 10px;
    background-color: #b9b9b950;
    margin: 10px 0;
}
.slots-analytics .slots-analytics-datepicker{
    width: auto;
}
.slots-analytics .date-filter {
    display: flex;
    align-items: center;
}
.slots-analytics .date-filter > * {
    margin: 0 5px;
    width:  auto;
}
.slots-analytics .slots-view-btn {
    margin-left: 30px;
}
.slots-analytics .user-analytics .name {
    white-space: nowrap;
    /* text-align: right; */
    padding-right: 20px;
}