/* jQuery UI 1.13.2 compat — PROVIDER (structural/markup fixes only, colors handled by waystar.css) */

/* Stock 1.13.2 references icon sprites (444444, 555555) that don't exist; redirect to 222222 */
.ui-icon,
.ui-widget-content .ui-icon,
.ui-widget-header .ui-icon {
    background-image: url("images/ui-icons_222222_256x240.png");
}

/* 1.13.2 changed .ui-icon to display:inline-block with vertical-align/margin-top/position:relative;
   restore 1.11.4 display:block so float:right on .ui-multiselect .ui-icon aligns correctly */
.ui-icon {
    display: block;
    vertical-align: baseline;
    margin-top: 0;
    position: static;
}

/* Restore absolute positioning for resizable handles — the generic .ui-icon
   position:static above must not pull resize grips into normal flow */
.ui-resizable-handle.ui-icon {
    position: absolute;
}

/* Restore 1.11.4 base font-size (stock 1.13.2 uses 1em) — scoped to exclude Vue dialogs */
.ui-widget:not(.v-dialog):not(.v-card) {
    font-size: 1em;
}

.ui-dialog.ui-widget:not(.v-dialog):not(.v-card) {
    font-size: 1.1em;
}
.ui-dialog .ui-dialog-buttonpane {
    font-size: 1em;
}

/* Menu items: 1.13.2 changed <a class="ui-state-focus"> to <div class="ui-menu-item-wrapper ui-state-active"> */
.ui-menu .ui-menu-item-wrapper {
    background-color: #FFFFFF;
    background-image: none;
    border-color: #FFFFFF;
}

.ui-menu .ui-menu-item-wrapper.ui-state-active {
    background-color: #F5F5F5;
    background-image: none;
    border: 0;
    color: #5B625C;
}

/* Dialog close button: 1.13.2 changed <a> to <button class="ui-button-icon-only"> */
.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close {
    background: none;
    border: none;
    padding: 0;
    width: 20px;
    height: 20px;
    text-indent: -9999px;
    overflow: hidden;
    white-space: nowrap;
}
.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close:hover,
.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close:focus {
    background: none;
    border: none;
    border-left: 1px solid #BDBDBD;
}
.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close .ui-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -8px;
    margin-left: -8px;
    width: 16px;
    height: 16px;
    display: block;
    text-indent: 0;
    background-image: url("images/ui-icons_ffffff_256x240.png");
}
.ui-dialog .ui-dialog-titlebar-close .ui-button-icon-space {
    display: none;
}

/* Dialog buttonset: 1.13.2 dropped .ui-button-text-only, target .ui-button instead */
.waystar .ui-dialog-buttonset .ui-button.disabled,
.waystar .ui-dialog-buttonset .ui-button.disabled:focus,
.waystar .ui-dialog-buttonset .ui-button.disabled:hover {
    color: #BBBBBB !important;
    background-image: linear-gradient(#F8F8F8, #CFCFCF);
    border: 1px solid #E3E3E3;
    cursor: not-allowed;
}
.waystar .ui-dialog-buttonset .ui-button {
    background: linear-gradient(#F6F6F6, #DBDBDB);
    color: #555555;
    font-size: 12px;
    padding: calc(.4em + 2px) calc(1em + 6px) !important;
    border: 1px solid #BDBDBD;
    border-radius: 3px;
}

/*.main-content-flat h1, .main-content-flat h2, .main-content-flat h3, .main-content-flat h4, .main-content-flat a, .main-content-flat p, .main-content-flat .content {*/
/*    font-weight: 400;*/
/*}*/

.waystar .ui-dialog-buttonset .ui-button:focus:not(.disabled),
.waystar .ui-dialog-buttonset .ui-button:hover:not(.disabled) {
    background-image: linear-gradient(#FFFFFF, #DBDBDB);
}

/* Controlgroup / Checkboxradio compat */
.ui-checkboxradio-icon,
.ui-checkboxradio-icon-space {
    display: none !important;
}

/* 1.13.2 controlgroup sets display:inline-block; restore block to match old buttonset */
.flat form.new-form .ui-controlgroup {
    display: block;
}

/* Match old .flat form.new-form .ui-buttonset label rule (class changed in 1.13.2) */
.flat form.new-form .ui-controlgroup label {
    text-align: center;
}

/* Buttonset → Controlgroup: 1.13.2 changed .ui-buttonset to .ui-controlgroup */
.waystar .ui-controlgroup .ui-button {
    padding: calc(.4em + 2px) 0 !important;
    font-size: 12px !important;
    border: 1px solid #D0D0D0 !important;
    border-radius: 0px !important;
    background: #F9F9F9 !important;
    color: #555555 !important;
    background-image: none !important;
    text-align: center !important;
    box-sizing: border-box !important;
}
.waystar .ui-controlgroup .ui-button.ui-state-active {
    color: #0082B4 !important;
    background: #FFFFFF !important;
    border: 1px solid #0082B4 !important;
    border-top-width: 2px !important;
    padding-top: calc(.4em + 1px) !important;
    box-shadow: none !important;
    outline: none !important;
}
.waystar .ui-controlgroup .ui-button:hover:not(.ui-state-active) {
    background: #FFFFFF !important;
    color: #555555 !important;
    border-color: #D0D0D0 !important;
}

.waystar .gray.ui-controlgroup:not(.buttonset) .ui-button {
    padding-left: 1em !important;
    padding-right: 1em !important;
}

/* .gray buttonset labels (fallback for non-.waystar contexts) */
.gray label.ui-button {
    border: 1px solid #959595 !important;
    background: white !important;
    color: #959595 !important;
    font-weight: normal !important;
    padding: .4em 1em !important;
    font-size: 12px !important;
    text-align: center !important;
    box-sizing: border-box !important;
}
.gray label.ui-button.ui-state-active,
.gray label.ui-button.ui-checkboxradio-checked {
    background: #959595 !important;
    color: white !important;
    border-color: #959595 !important;
}
.gray label.ui-button:hover {
    background: #818181 !important;
    border-color: #818181 !important;
    color: white !important;
}

.ui-tabs .ui-tabs-nav li a {
    padding: .5em 1em;
    font-size: 12px;
}
.ui-tabs .ui-tabs-panel {
    padding: 1em 1.4em;
}

.waystar .flat-button.disabled:not(.secondary):hover {
    cursor: not-allowed;
    background-image: linear-gradient(#F8F8F8, #CFCFCF) !important;
    color: #BBBBBB !important;
}

/* Payment-type tabs: match staging buttonset box model exactly */
.payment-type-options .ui-checkboxradio-icon-space,
.payment-type-options .ui-checkboxradio-icon {
    display: none !important;
}
.payment-type-options.ui-controlgroup {
    display: flex !important;
    flex-wrap: nowrap !important;
    margin-top: 4px !important;
}
.payment-type-options.ui-controlgroup .ui-controlgroup-item {
    margin: 0 !important;
    flex: 0 1 auto !important;
    float: none !important;
    display: block !important;
}
.payment-type-options.ui-controlgroup .ui-button {
    padding: 5.72px 14.3px !important;
    border: 1px solid #D0D0D0 !important;
    border-radius: 0 !important;
    font-size: inherit !important;
    margin-right: -1px !important;
    position: relative !important;
}
.payment-type-options.ui-controlgroup .ui-button:last-of-type {
    margin-right: 0 !important;
}
.payment-type-options.ui-controlgroup .ui-button.ui-state-active {
    border: 1px solid #0082B4 !important;
    border-top-width: 2px !important;
    padding-top: 4.72px !important;
}

.ui-controlgroup {
    margin-right: 7px;
}

#actionItemVisibility h2 {
    font-weight: 400;
}

/* hover-dialog border: 1.13.2 .ui-widget-content border (#c5c5c5) overrides .patientco .hover-dialog; restore correct color */
.patientco .ui-widget-content.hover-dialog {
    border-color: rgb(102, 102, 102);
}

.receipt-tooltip.ui-tooltip.ui-widget-content {
    background: #FFFFFF !important;
    color: #333333 !important;
    border: 2px solid #AAAAAA !important;
    box-shadow: 0 0 5px #AAAAAA !important;
    -webkit-box-shadow: 0 0 5px #AAAAAA !important;
    font-size: 14px;
    max-width: 350px;
    padding: 8px;
    white-space: nowrap;
    opacity: 1 !important;
}
