/* BEGIN EPIC COMMUNITY MEMBER CUSTOM CSS */
/* Epic recommends any additional CSS be placed below this line. Avoid adding CSS above because it makes it difficult to determine which are your changes and which are Epic's. */

/* BEGIN CS LoginWidget.css */
.embedded {
  min-width: 320px;
  min-height: 350px; }
  .embedded #main {
    padding: 0.25rem; }
  .embedded .ghostInput label + input {
    width: 100%; }
  .embedded #submit {
    margin: 0.5rem auto;
    display: block;
    width: 100%; }
  .embedded .recovery, .embedded .header {
    text-align: left;
    }
  .embedded #footer {
    margin-top: 0.5rem !important;
    text-align: center;
    font-size: 0.9rem; }
  .embedded .signup {
    text-align: center; }
    .embedded .signup h2 {
      margin: 1rem 0 0; }
    .embedded .signup .button {
      display: inline-block;
      margin-top: 0; }
.embedded #submit {
    background-color: #dc1e34;
â€ƒâ€ƒbox-shadow: none;
    margin: 10px 0;
    border-radius: 50px;
}

.embedded a {
    color: #dc1e34;
}

body.embedded.isPrelogin.ready .signup .button {

     border: 2px solid #dc1e34;
     background: none;
     color: #dc1e34;
    margin: 10px 0;
    border-radius: 50px;
    padding: 8px 25px;
    font-weight: 500;
    font-style: normal;
    position: relative;
    text-decoration: none;
    line-height:25px
}

.embedded .signup h2 {
    color: #dc1e34;
}


.embedded input#Login {
    margin-bottom: 15px;
    border-radius: 7px;
}

body.embedded.isPrelogin.ready .signup .button:hover {
    color: #fff;
    background: #dc1e34;
}

.embedded input#Password {
    border-top: 1px solid #dbdbdb;
    margin-bottom: 15px;
    border-radius: 7px;
}

.embedded .copyright {
    display: none;
}
/* END CS LoginWidget.css */



body #extPmtPageFrame {
height: 68rem;
}

body #guestPay-content #extPmtPageFrame {
height: 68rem;
overflow-y: visible;
}
body #guestPay-content .formbuttons {
margin-bottom: 5rem;
}

.embedded .section.questionsContainer .question .answers {
  margin: 0;
}

/* External Payments - Apple/Google Pay - DC */

.essCategoryTags {
Ã‚  Ã‚  visibility: hidden;
    display: none;
}

/* Hide Estimates Category Tags SLG 5246827 - DC */


/* ada overrides */
.formbuttons.multiStep
    .button:not(.hidden, [disabled], [aria-disabled="true"], .disabled):first-child.positive {
    color: #ffffff;
    background-color: #191919;
    text-decoration: none;
}

.formbuttons.multiStep
    .button:not(.hidden, [disabled], [aria-disabled="true"], .disabled):first-child.positive:hover,
.formbuttons.multiStep
    .button:not(.hidden, [disabled], [aria-disabled="true"], .disabled):first-child.positive:focus {
    color: #fff;
    background: #dc1f34;
    border-color: #dc1f34;
}

.embedded h2,
.embedded .header {
    color: #191919;
}

.list.hoverable:not(.collapsible) a:not(.button):hover,
.list.hoverable:not(.collapsible) a:not(.button):focus {
    background: #f7f7f5;
}

.section.questionsContainer .question .question-prompt-header {
    color: #191919;
    font-weight: 700;
}

.summary_navbar .summary-back {
    color: #191919;
}

.summary_navbar .summary-back:hover,
.summary_navbar .summary-back:focus {
    color: #dc1f34;
}

.section.questionsContainer .question .answers .tbContainer label[for],
.button.secondary.neutral {
    color: #191919;
    border: 2px solid #191919;
    box-shadow: unset;
    text-decoration: none;
}

.button.secondary.neutral:hover,
.button.secondary.neutral:focus {
    color: #fff;
    background: #dc1f34;
    border-color: #dc1f34;
}


/*RYAN A* 2/11/25 */
.filtersContainer input.buttoncheck + label.buttoncheck,
.filtersContainer label.togglebutton[for],
.tbContainer input.togglebutton:checked + label.togglebutton[for] {
    border-width: 2px;
}

.tbContainer input.togglebutton:checked + label.togglebutton[for] {
    color: #191919;
    background: #eaebf0;
    border-color: #191919;
}â€ƒâ€ƒ

.section.questionsContainer .question .answers .tbContainer label[for]:hover,
input + label.togglebutton[for]:hover,
input:focus + label.togglebutton[for] {
    color: #fff !important;
    background: #dc1f34 !important;
    border-color: #dc1f34 !important;
}

/* Ryan A - 04-06-25 - updated this selector to use the dark red background and white text for selected state */

.section.questionsContainer .question .answers .tbContainer input:checked + label.togglebutton[for] {
background-color: #dc1f34;
border-color: #dc1f34;
color: #FFFFFF;
}

.embedded .calendar table tbody td.hi a,
.embedded .button.scheduleaction,
.embedded .button.nextstep,
.embedded .button.completeworkflow {
    color: #ffffff;
    background-color: #191919;
}

.embedded .button.nextstep:hover,
.embedded .button.nextstep:focus {
    background-color: #dc1f34;
}

h1,
h2,
h3,
h4,
.header,
.heading,
.hover a.header:focus,
.hover a.header:hover,
.hover a.heading:focus,
.hover a.heading:hover,
.titlebar,
.sectionheader,
table thead tr {
    color: #191919;
}

.subtle,
.subtlecolor {
    color: #6d7083;
}

p a, /* Ryan A - 04-06-25 - add the 'p a' a selector to this rule to for text links in paragraphs to be underlined */
.embedded a {
    color: #191919;
    text-decoration: underline;
}

p a:hover, /* Ryan A - 04-06-25 - add the 'p a:hover and p a:focus' to check text to red */
p a:focus, /* Ryan A - 04-06-25 - add the 'p a:hover and p a:focus' to check text to red */
.embedded a:hover,
.embedded a:focus {
    color: #dc1f34;
}

#reset-lqf,
.edit-link-inline {
    text-decoration: underline;
}

.clear-link-inline.linktextdecoration {
    color: #191919;
    text-decoration: underline;
}

#reset-lqf:hover,
#reset-lqf:focus,
.edit-link-inline:hover,
.clear-link-inline.linktextdecoration:hover,
.edit-link-inline:focus,
.clear-link-inline.linktextdecoration:focus {
    color: #dc1f34;
}

.slotsstep .jumpArrow {
    fill: #191919 !important;
}

input.buttoncheck:checked + label.buttoncheck {
    background: #fff;
}

input.buttoncheck:checked + label.buttoncheck:before {
    background-color: #191919;
    border-color: #191919;
}

.button.tertiary.neutral {
    color: #191919;
}

.button.tertiary.neutral:hover,
.button.tertiary.neutral:focus {
    color: #dc1f34;
}

.slotsstep .cleartimefiltersbutton {
    text-decoration: underline;
}

.slotsstep .cleartimefiltersbutton:focus,
.slotsstep .cleartimefiltersbutton:hover {
    color: #dc1f34;
}

.linkcolor,
.subtle.linkcolor {
    color: #191919;
    text-decoration: underline;
}

.linkcolor:hover,
.linkcolor:focus,
.subtle.linkcolor:hover,
.subtle.linkcolor:focus {
    color: #dc1f34;
}

.confirmation-info-row svg {
    fill: #191919 !important;
}

.section .content .label {
    color: #191919;
}

.reservationstep .step-content button {
    text-decoration: underline;
}

.slotsstep .providerBioLink {
    text-decoration: underline;
}

.slotsstep .providerBioLink:hover,
.slotsstep .providerBioLink:focus {
    color: #dc1f34;
}

input:checked + label.togglebutton[for] {
    background: #eaebf0;
}

.confirmation .stickybanner.floatingButtonContainer.static .button {
    text-decoration: none;
}

.confirmation .stickybanner.floatingButtonContainer.static .button:hover,
.confirmation .stickybanner.floatingButtonContainer.static .button:focus {
    color: #fff;
    background: #dc1f34;
}

.button.primary.positive:hover,
.button.primary.positive:active {
    color: #fff;
    background: #dc1f34;
}

._link.primary.positive:hover,
._link.primary.positive:active,
._command.primary.positive:hover,
._command.primary.positive:active {
    color: #fff;
    background: #dc1f34;
}

.embedded .hdr,
.calendar table td#calcancel button {
    color: #191919 !important;
    background-color: #fff !important;
}

.calendar table td#calcancel button:hover {
    color: #dc1f34 !important;
}

.calendar table tbody td.hi button {
    background-color: #191919 !important;
}

.tbContainer input.buttoncheck:not(:disabled) + label.buttoncheck:hover,
.button.buttoncheck input.buttoncheck:not(:disabled) + label.buttoncheck:hover {
    background-color: #fff;
    border: 2px solid #191919;
}

.tbContainer input.buttoncheck:checked + label.buttoncheck,
.button.buttoncheck input.buttoncheck:checked + label.buttoncheck {
    background-color: #fff;
    border: 2px solid #191919;
}

input.buttoncheck:focus + label.buttoncheck {
    border: 2px solid #191919;
}

html:not(.tvmode) .tbContainer:focus-within:has(:focus-visible) label.buttoncheck,
html:not(.tvmode) .button.buttoncheck:focus-within:has(:focus-visible) label.buttoncheck {
    outline: none;
}

/*RYAN A 2/11/25 */
.verticalDate,
.Visits .date div, .visitdetails .date div {
    color: #191919;
}

/* /* STEVE H */
.loginPage #main {
  background: rgba(248, 248, 248, 0.7);
  padding: 48px 0 0 52px;
}

.loginPage #mainFooter {
  background: rgba(248, 248, 248, 0.7);
}

a.logo {
  margin: 0;
  padding-bottom: 32px;
  width: 215px;
}

.mainLoginContentBody {
  display: flex;
  flex-direction: column;
  gap: 32px;

    @media (max-width: 767px) {
        align-items: center;
    }
}

/* base styles (keep your existing rules above) */
.mainLoginContentBody {
  display: flex;
  flex-direction: column;
  gap: 32px;
}


/* Mobile tweaks */
@media (max-width: 767px) {
  .mainLoginContent.afterLoginFields
    .mainLoginContentBody > div > div:first-child > div
  {
    margin-top: 24px;
  }

    .mainLoginContentBody .container {
        display: flex;
        justify-content: space-between;
        gap: 32px;
    }
}

@media (max-width: 768px) {
.mainLoginContentBody > div {
    display: flex;
    flex-direction: column;
    gap: 32px;
    width: 432px;
    padding-bottom: 8px;
  }
}

@media (min-width: 768px) {
  .mainLoginContentBody > div {
    display: flex;
    flex-direction: column;
    gap: 32px;
    width: 432px;
    padding-bottom: 8px;
  }
}

#main .mainLoginContentBody > div > div:first-child > div {
  font-size: 18px;
}

.mainLoginContentBody .container {
  display: flex;
  justify-content: space-between;
  gap: 32px;
}

.mainLoginContentBody .container img {
  width: 138px;
  height: 78px;
}

.appDownloadSection a {
  color: #000;
  text-decoration: underline;
}

.appDownloadSection ul {
  list-style-type: disc;
  padding-left: 1.5em
}

/* desktop only: prevent line breaks inside the list */
@media (min-width: 768px) {
  .appDownloadSection ul {
    white-space: nowrap;
  }
}

.appDownloadSection p {
  margin-bottom: 24px;
}

.badges.sm-alignCenter {
    display: none;
}

#mainFooter .fullLinks {
  margin-left: auto;
}


@media screen and (max-width: 1300px) {
  .mainLoginContent {
    margin: auto;
    background: white;      
  }

  .mainLoginContent.afterLoginFields .mainLoginContentBody .container {
    justify-content: space-evenly;
  }
    
  #content.hasSidebar {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  #content.hasSidebar #main {
    display: contents;
  }

  #content.hasSidebar #main > a.logo {
    order: 1;
    align-self: flex-start;
    margin: 0 0 0 24px;
    padding-bottom: 16px;
  }

  #content.hasSidebar #sidebar {
    order: 2;
  }

  #content.hasSidebar #main > :not(a.logo) {
    order: 3;
    padding: 0 24px;
  }

  #content.hasSidebar #footer {
    order: 4;
    background: white;      
  }

  #mainFooter .fullLinks {
    margin-left: 0;
    width: 100%;
    text-align: center;
  }

  .fullLinks a {
    display: block;
    text-align: center;
    padding: 4px 0;
    margin: 0;
  }
}