/*
	Custom CSS
	Please make sure your CSS rules are 
	more particular / have higher priority
	then other page styles
*/
 #events h3   {
	/* add your css rule here */
}


 #events p.duration, #events div.duration   {
	/* add your css rule here */
}


 #events p.description, #events div.description   {
	/* add your css rule here */
}


 #events .selectedEvent   {
	/* add your css rule here */
}


 #events input.reserve_time_btn   {
	/* add your css rule here */
}


 #events input.select_another_btn   {
	/* add your css rule here */
}


 #eventForm #start_date-block-container h3, #eventForm #timeline-container h3   {
	/* add your css rule here */
}


 #eventForm #save_button   {
	/* add your css rule here */
}


 div.ui-widget-content   {
	/* add your css rule here */
}


 div.ui-widget-header   {
	/* add your css rule here */
}


 #timeline-container table.timeline   {
	/* add your css rule here */
}


 .timeline td.not_worked_time   {
	/* add your css rule here */
}


 .timeline td.free_time   {
	/* add your css rule here */
}


 .timeline td.selected_time   {
	/* add your css rule here */
}


 .timeline td.reserved_time   {
	/* add your css rule here */
}


 div#loading   {
	/* add your css rule here */
}


 #start_date-block-container .zend_form dt, start_date-block-container .zend_form dt b, start_date-block-container .zend_form dd label   {
	/* add your css rule here */
}


/* Keep legacy booking links available; show only the two current consultation categories. */
#sb_category_step_container .category-item:has(a[href^="#book/category/1/"]) {
  display: none !important;
}

/* Hide the optional marketing consent row; preserve required registration terms. */
#main .promotions-letter-flag {
  display: none !important;
}

/* BEGIN SIUDIKAS_COMPACT_CARDS_V2 — 2026-10-14 */
/* Hide only generic card icons; leave the main photo and uploaded images alone. */
#sb_category_step_container .excerpt-info > .preloader.__default-svg-icon,
#sb_service_step_container .excerpt-info > .preloader.__default-svg-icon {
  display: none !important;
}

#sb_category_step_container .item .tab-col,
#sb_service_step_container .item .tab-col,
#sb_category_step_container .excerpt-info,
#sb_service_step_container .excerpt-info {
  height: auto !important;
  min-height: 0 !important;
}

#sb_category_step_container .excerpt-info > .tab-pd,
#sb_service_step_container .excerpt-info > .tab-pd {
  padding: 20px 20px 24px !important;
}

#sb_category_step_container .excerpt-info > .tab-pd > .content,
#sb_service_step_container .excerpt-info > .tab-pd > .content {
  height: auto !important;
  min-height: 0 !important;
  flex-grow: 0 !important;
  margin: 0 0 12px !important;
}

#sb_category_step_container .excerpt-info .cap.short,
#sb_service_step_container .excerpt-info .cap.short {
  margin-bottom: 4px !important;
}

#sb_category_step_container .excerpt-info .txt.short,
#sb_service_step_container .excerpt-info .txt.short {
  margin: 0 !important;
  height: auto !important;
  min-height: 44px !important;
  max-height: none !important;
}

#sb_category_step_container .excerpt-info .read-more,
#sb_service_step_container .excerpt-info .read-more {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
}

#sb_service_step_container .excerpt-info .bar-service {
  margin: 0 !important;
}

/* 60 min. is already in this service title. Keep future price fields available. */
#sb_service_step_container .service-item:has(a[href*="/service/5/"]) .excerpt-info .bar-service .time {
  display: none !important;
}

#sb_category_step_container .excerpt-info .btn.select a,
#sb_service_step_container .excerpt-info .btn.select a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
}

@media (min-width: 768px) {
  #sb_category_step_container .excerpt-info .cap.short,
  #sb_service_step_container .excerpt-info .cap.short {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 46px !important;
  }

  #sb_category_step_container .excerpt-info > .tab-pd > .content,
  #sb_service_step_container .excerpt-info > .tab-pd > .content {
    min-height: 94px !important;
  }
}
/* END SIUDIKAS_COMPACT_CARDS_V2 */


/* BEGIN SIUDIKAS_MONTH_CALENDAR_V1 — 2026-10-14 */
/* Apply only to the one-day time-slot calendar. */
#sb_datetime_step_container:has(#sb_time_slots_container) #sb_dateview_container .weeks-date .date {
  width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
}
#sb_datetime_step_container:has(#sb_time_slots_container) #sb_dateview_container .weeks-date .date > a,
#sb_datetime_step_container:has(#sb_time_slots_container) #sb_dateview_container .weeks-date .date > span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 44px !important;
  line-height: normal !important;
}
#sb_datetime_step_container #sb_time_slots_container:has(> .slot) {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
#sb_datetime_step_container #sb_time_slots_container > .slot {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
#sb_datetime_step_container #sb_time_slots_container > .slot > a.sb-cell {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 48px !important;
  height: auto !important;
  box-sizing: border-box;
  font-size: 16px !important;
}
@media (min-width: 768px) {
  #sb_datetime_step_container:has(#sb_time_slots_container) #sb_dateview_container,
  #sb_datetime_step_container:has(#sb_time_slots_container) #sb_timeview_container {
    max-width: 560px;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  #sb_datetime_step_container:has(#sb_time_slots_container) #sb_dateview_container .weeks-name > div:first-child,
  #sb_datetime_step_container:has(#sb_time_slots_container) #sb_dateview_container .weeks-date > div {
    width: 100% !important;
    float: none !important;
  }
  #sb_datetime_step_container:has(#sb_time_slots_container) #sb_dateview_container .weeks-name > div:not(:first-child) {
    display: none !important;
  }
}
/* END SIUDIKAS_MONTH_CALENDAR_V1 */


/* BEGIN SIUDIKAS_BOOKING_WORDING_V1 — 2026-10-14 */
#steps-nav .title-small,
#sb_category_step_container .read-more,
#sb_service_step_container .read-more,
#sb_sidebar_container .read-more,
.control-label:not([for="sb_remember"]),
a.cs_registration {
  text-transform: none !important;
}
/* A static company-time note on desktop and mobile. Booking timezone is unchanged. */
#sb_booking_company_time > * {
  display: none !important;
}
#sb_booking_company_time {
  display: block !important;
  position: static !important;
  float: none !important;
  inset: auto !important;
  transform: none !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box;
  margin: 0 0 12px !important;
  white-space: normal !important;
  text-align: right;
}
#sb_booking_company_time::before {
  content: "Laikai nurodyti Lietuvos laiku.";
  display: block;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 400;
}
@media (max-width: 767px) {
  #main #sb_booking_company_time::before {
    content: "Laikai nurodyti\A Lietuvos laiku.";
    white-space: pre-line !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
  }
}
/* END SIUDIKAS_BOOKING_WORDING_V1 */

/* SIUDIKAS_CLIENT_LOGIN_V1: clearer native account choices; booking rules unchanged. */
#client-login { max-width: 560px; margin: 0 auto !important; }
#client-login > .tab-pd { padding: 8px 0 16px !important; }
#client-login #cs_register_or_login_tabs { margin: 0 !important; }
#client-login .cs_nav { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 0 !important; margin: 0 !important; }
#client-login .cs_nav_item { display: block !important; min-width: 0; margin: 0 !important; padding: 0 !important; list-style: none; }
#client-login .cs_nav_item > a { display: flex !important; flex-direction: column; justify-content: center; align-items: center; gap: 5px; box-sizing: border-box; min-height: 82px; height: 100%; padding: 12px 8px !important; border: 1px solid #d6d0cb; border-radius: 12px; background: #fff; color: #49423d !important; font-size: 17px !important; font-weight: 600; line-height: 1.3 !important; text-align: center; text-transform: none !important; text-decoration: none !important; }
#client-login .cs_nav_item > a::before { display: block; font-size: 13px; line-height: 1.35; font-weight: 400; }
#client-login a.cs_registration::before { content: "Dar neturiu paskyros"; }
#client-login a.cs_login::before { content: "Jau turiu paskyrą"; }
#client-login .cs_nav_item.active > a { border-color: #bd795c; box-shadow: inset 0 0 0 1px #bd795c; background: #fff4ed; }
#client-login .cs_nav_item > a:focus-visible { outline: 3px solid #985f43; outline-offset: 3px; }
#client-login .section_top::after { content: "Paskyroje galėsite peržiūrėti savo susitikimus, juos perkelti arba atšaukti pagal galiojančias sąlygas."; display: block; margin: 12px 0 16px; color: #56504b; font-size: 14px; line-height: 1.5; text-align: left; }
#client-login .client-login-bar { box-sizing: border-box; width: 100% !important; max-width: 100% !important; margin: 0 0 18px !important; padding: 0 0 16px !important; border-bottom: 1px solid #e7e1dc; }
#client-login .client-login-bar .social { display: flex !important; flex-direction: column; align-items: stretch; gap: 10px; }
#client-login .client-login-bar .social > .txt { width: 100% !important; margin: 0 !important; font-size: 14px; line-height: 1.5; text-align: left; }
#client-login .client-login-bar .buttons { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
#client-login .btn-bar__social-links { display: flex !important; gap: 10px; justify-content: center; flex-wrap: wrap; }
#client-login .btn-bar__social-links > a { display: inline-flex !important; align-items: center; justify-content: center; gap: 8px; flex: 1 1 0; box-sizing: border-box; width: auto !important; min-width: 0; min-height: 44px; height: auto !important; margin: 0 !important; padding: 8px 12px !important; border: 1px solid #d6d0cb; border-radius: 10px; background: #fff !important; color: #49423d !important; }
#client-login .btn-bar__social-links .btn--txt { display: inline !important; font-size: 15px; line-height: 1.4; }
#client-login .btn-bar__social-links .icon { display: inline-flex; align-items: center; justify-content: center; }
#client-login .btn-bar__social-links svg { width: 22px; height: 22px; }
#client-login .custom-form { width: 100% !important; max-width: 100% !important; margin: 0 !important; }
#client-login #cs_login::before { content: "Jei paskyrą jau turite, naudokite tą patį el. pašto adresą. Pamiršę slaptažodį, galite jį atkurti."; display: block; margin: 0 0 14px; color: #56504b; font-size: 14px; line-height: 1.5; text-align: left; }
#client-login #cs_registration::before { content: "Sukūrę paskyrą galėsite užbaigti susitikimo rezervaciją."; display: block; margin: 0 0 14px; color: #56504b; font-size: 14px; line-height: 1.5; text-align: left; }
#client-login .form-group { margin-left: 0 !important; margin-right: 0 !important; margin-bottom: 12px !important; }
#client-login .form-group > .col-sm-12 { padding-left: 0 !important; padding-right: 0 !important; }
#client-login .form-group > label.control-label { width: 100%; max-width: 100%; padding: 0 0 5px !important; font-size: 14px; line-height: 1.5; text-align: left !important; text-transform: none !important; }
#client-login input.form-control:not(#sb_sign_up_phone) { min-height: 48px; font-size: 16px !important; }
#client-login .remind-pass { display: flex; align-items: center; justify-content: center; min-height: 44px; margin: 0; color: #985f43 !important; font-size: 15px; text-decoration: underline; text-underline-offset: 3px; text-transform: none !important; }
#client-login .remember-me { align-items: center; min-height: 44px; }
#client-login .remember-me .control-label { text-transform: none !important; }
#client-login .sign_button_wrap > .btn { width: 100%; min-height: 48px; height: auto; padding: 12px 14px; font-size: 16px; line-height: 1.5; text-transform: none !important; }
#client-login #sb_sign_in_btn::after,
#client-login #sb_sign_up_btn::after { content: " ir tęsti"; }
#client-login .client-login-footer { font-size: 14px; line-height: 1.5; }
#header #sb_client_info button.avatar:has(.logged-out) { display: inline-flex !important; align-items: center; justify-content: center; box-sizing: border-box; width: auto !important; min-width: 108px; height: 44px !important; padding: 0 12px !important; border: 1px solid #d6d0cb; border-radius: 10px; background: #fff; color: #49423d; }
#header #sb_client_info button.avatar .logged-out { display: flex; align-items: center; justify-content: center; gap: 6px; }
#header #sb_client_info button.avatar .logged-out::after { content: "Prisijungti"; font-family: inherit; font-size: 14px; font-weight: 600; line-height: 1.4; }
@media (max-width: 767px) {
 #client-login .cs_nav_item > a { font-size: 16px !important; }
 #client-login .cs_nav_item > a::before { font-size: 12px; }
 #client-login > .tab-pd { padding-top: 4px !important; }
}

/* Match the existing theme's flex fields and social icon implementation. */
#client-login .form-group:not(.remember-me) { flex-direction: column; align-items: stretch; }
#client-login .form-group > label.control-label { flex: 0 0 auto; }
#client-login .form-group > .col-sm-12 { flex: 0 0 auto !important; width: 100% !important; max-width: 100% !important; min-width: 0; }
#client-login .btn-bar__social-links > a { flex-direction: row !important; }
#client-login .btn-bar__social-links > a::after { display: none !important; }
#client-login .btn-bar__social-links .icon { display: inline-flex !important; flex: 0 0 22px; width: 22px; height: 22px; position: static !important; }
#client-login .btn-bar__social-links .btn--txt { position: static !important; }
#client-login input.form-control:not(#sb_sign_up_phone) { box-sizing: border-box; height: 48px !important; }
#client-login .form-group > .col-sm-12 { padding-top: 0 !important; padding-bottom: 0 !important; }
#client-login .help-block:empty { display: none; }
#client-login .remember-me > label.control-label { flex: 1 1 0; width: auto !important; min-width: 0; max-width: none; padding: 0 !important; }
#header #sb_client_info button.avatar:has(.logged-out) { border-radius: 10px !important; }
@media (max-width: 767px) {
 .nav-wrapper.menu-in #sb_client_info.nav-item:has(.logged-out) { position: absolute; top: 16px; right: 16px; left: auto; bottom: auto; width: auto; margin: 0; }
}
@media (max-width: 767px) {
 .nav-wrapper.menu-in #sb_client_info.nav-item:has(.logged-out) { width: 128px !important; height: 44px; }
 .nav-wrapper.menu-in #sb_client_info.nav-item:has(.logged-out) > .login-container { width: 100% !important; }
 .nav-wrapper.menu-in #sb_client_info.nav-item button.avatar:has(.logged-out) { width: 100% !important; min-width: 0; float: none !important; }
}

/* The existing header login panel uses the same clear fields and action labels. */
#header #sb_client_info .full-info--client-info { box-sizing: border-box; padding: 16px !important; border: 1px solid #e7e1dc; border-radius: 14px; background: #fff !important; color: #49423d !important; box-shadow: 0 8px 24px rgba(60,40,25,.12); }
#header #sb_client_info .full-info--client-info .tab-pd { padding: 0 !important; }
#header #sb_client_info .full-info--client-info .row { margin: 0 !important; }
#header #sb_client_info .full-info--client-info .col-sm-12 { padding: 0 !important; }
#header #sb_client_info .full-info--client-info .inputs > div { display: flex; flex-direction: column; position: relative; margin-bottom: 12px; }
#header #sb_client_info .full-info--client-info .inputs .control-label { box-sizing: border-box; width: 100% !important; padding: 0 0 5px !important; margin: 0; font-size: 14px; line-height: 1.5; text-align: left !important; text-transform: none !important; }
#header #sb_client_info .full-info--client-info input.form-control { box-sizing: border-box; width: 100% !important; height: 48px !important; min-height: 48px; font-size: 16px !important; }
#header #sb_client_info .full-info--client-info .password-toggler { position: absolute; right: 10px; top: auto; bottom: 14px; }
#header #sb_client_info .full-info--client-info .bar,
#header #sb_client_info .full-info--client-info .bar > .txt { float: none !important; width: 100% !important; }
#header #sb_client_info .full-info--client-info .remind-pass { display: flex; align-items: center; justify-content: center; min-height: 44px; color: #985f43 !important; font-size: 15px; line-height: 1.4; text-decoration: underline; text-underline-offset: 3px; }
#header #sb_client_info .full-info--client-info .remember-me { display: flex; align-items: center; gap: 8px; min-height: 44px; margin: 4px 0 10px; }
#header #sb_client_info .full-info--client-info .remember-me .custom-checkbox { flex: 0 0 20px; width: 20px; height: 20px; margin: 0; position: relative; }
#header #sb_client_info .full-info--client-info .remember-me label.control-label { flex: 1 1 0; width: auto !important; min-width: 0; max-width: none; margin: 0; padding: 0 !important; font-size: 14px; line-height: 1.4; text-transform: none !important; }
#header #sb_client_info .full-info--client-info .social { display: flex; flex-direction: column; align-items: stretch; }
#header #sb_client_info .full-info--client-info .social > .txt { display: none; }
#header #sb_client_info .full-info--client-info .social .buttons { width: 100%; margin: 0; padding: 0; }
#header #sb_client_info .full-info--client-info .btn-bar__social-links { display: flex; gap: 8px; width: 100%; }
#header #sb_client_info .full-info--client-info .btn-bar__social-links > a { display: inline-flex !important; flex: 1 1 0; flex-direction: row !important; align-items: center; justify-content: center; gap: 6px; box-sizing: border-box; width: auto !important; min-width: 0; height: auto !important; min-height: 44px; margin: 0; padding: 8px !important; border: 1px solid #d6d0cb; border-radius: 10px; background: #fff !important; color: #49423d !important; }
#header #sb_client_info .full-info--client-info .btn-bar__social-links > a::after { display: none !important; }
#header #sb_client_info .full-info--client-info .btn-bar__social-links .icon { display: inline-flex !important; flex: 0 0 22px; position: static !important; width: 22px; height: 22px; }
#header #sb_client_info .full-info--client-info .btn-bar__social-links svg { width: 22px; height: 22px; }
#header #sb_client_info .full-info--client-info .btn--txt { display: inline !important; position: static !important; font-size: 14px; line-height: 1.4; }
#header #sb_client_info .full-info--client-info .btn-bar--row { display: flex; flex-direction: column; gap: 10px; width: 100%; margin-top: 12px; }
#header #sb_client_info .full-info--client-info .btn-bar--row > .btn { display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 100% !important; min-height: 48px; height: auto; margin: 0; padding: 10px 12px; border-radius: 10px; font-size: 16px; line-height: 1.5; text-transform: none; }
#header #sb_client_info .full-info--client-info .btn-bar--row > button.btn { background: linear-gradient(100deg,#ffab27,#ff4a20) !important; color: #fff !important; }
#header #sb_client_info .full-info--client-info .btn-bar--row > a.btn { border: 1px solid #bd795c; background: #fff !important; color: #49423d !important; text-decoration: none; }
@media (max-width: 767px) {
 #header #sb_client_info .full-info--client-info { left: 12px !important; right: 12px !important; width: auto !important; height: auto !important; max-height: calc(100vh - 191px); overflow-y: auto; }
}

#header #sb_client_info .full-info--client-info::before,
#header #sb_client_info .full-info--client-info::after { display: none !important; }
#header #sb_client_info .full-info--client-info .inputs > div { flex-direction: column !important; align-items: stretch; }
#header #sb_client_info .full-info--client-info .inputs input.form-control { flex: 0 0 auto !important; }
#header #sb_client_info .full-info--client-info .btn-bar--row > a.btn { text-decoration: none !important; }
@media (max-width: 767px) {
 #header #sb_client_info .full-info--client-info { min-width: 0 !important; max-width: calc(100vw - 24px) !important; }
}

#header #sb_client_info.nav-item .full-info.full-info--client-info { width: 360px !important; min-width: 0 !important; max-width: calc(100vw - 24px) !important; border-radius: 14px !important; max-height: calc(100vh - 110px); overflow-y: auto; }
#header #sb_client_info #sb_login_form #sb_sign_in_form input.form-control { width: 100% !important; min-width: 100% !important; max-width: 100% !important; flex: none !important; align-self: stretch; }
@media (max-width: 767px) {
 #header #sb_client_info.nav-item .full-info.full-info--client-info { width: auto !important; left: 12px !important; right: 12px !important; max-height: calc(100vh - 191px); }
}

/* The theme also uses its slide-out menu on narrower desktop windows. */
#header .nav-wrapper.menu-in #sb_client_info.nav-item:has(.logged-out) { position: absolute; top: 16px; right: 16px; left: auto; bottom: auto; width: 128px !important; height: 44px; margin: 0; }
#header .nav-wrapper.menu-in #sb_client_info.nav-item:has(.logged-out) > .login-container { width: 100% !important; }
#header .nav-wrapper.menu-in #sb_client_info.nav-item button.avatar:has(.logged-out) { width: 100% !important; min-width: 0; float: none !important; }
#header .nav-wrapper.menu-in #sb_client_info.nav-item .full-info.full-info--client-info { position: fixed !important; top: 155px !important; right: 16px !important; left: auto !important; bottom: auto !important; width: 360px !important; min-width: 0 !important; max-width: calc(100vw - 32px) !important; min-height: 0 !important; max-height: calc(100vh - 171px) !important; overflow-y: auto !important; }

#header .nav-wrapper.menu-in #sb_client_info.nav-item .full-info.full-info--client-info { width: calc(100% - 32px) !important; max-width: 360px !important; top: 200px !important; max-height: calc(100vh - 216px) !important; }
@media (max-width: 767px) {
 #header .nav-wrapper.menu-in #sb_client_info.nav-item .full-info.full-info--client-info { top: 155px !important; max-height: calc(100vh - 171px) !important; }
}
/* END SIUDIKAS_CLIENT_LOGIN_V1 */

/* BEGIN SIUDIKAS_PRIVACY_V1 — 2026-10-14 */
/* Informational notice only; preserve fields, accounts, booking rules and schedules. */
#client-login .client-login-bar::before { content: "Konsultacijos yra konfidencialios. Duomenų apie Jūsų psichoterapijos susitikimus į e. sveikatą neteikiu."; display: block; box-sizing: border-box; margin: 0 0 14px; padding: 14px 16px; border: 1px solid #e1d9d0; border-radius: 12px; background: #faf7f3; color: #49423d; font-size: 14px; font-weight: 500; line-height: 1.55; text-align: left; }
#client-login #sb_sign_up_form .form-group:has(#sb_sign_up_name)::after { content: "Vardas ir kontaktai reikalingi registracijai bei susisiekimui dėl susitikimo."; display: block; margin-top: 6px; color: #56504b; font-size: 13px; line-height: 1.45; text-align: left; }
#main details.siudikas-privacy-details { margin: 20px 0; padding: 12px 16px; border: 1px solid #e1d9d0; border-radius: 12px; background: #faf7f3; color: #49423d; overflow-wrap: anywhere; }
#main details.siudikas-privacy-details > summary { cursor: pointer; display: list-item; min-height: 44px; padding: 10px 0; box-sizing: border-box; color: #855339; line-height: 1.5; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
#main details.siudikas-privacy-details > summary:focus-visible { outline: 2px solid #985f43; outline-offset: 3px; }
#main details.siudikas-privacy-details[open] > summary { margin-bottom: 10px; }
/* END SIUDIKAS_PRIVACY_V1 */

/* BEGIN SIUDIKAS_BOOKING_CLARITY_V1 — 2026-10-15 */
/* Reveal native selected service and date only while the account form is visible. */
#sb-timeline:has(#client-login) #steps-nav .booking-info > ul {
  display: flex !important; flex-direction: column; gap: 0;
}
#sb-timeline:has(#client-login) #steps-nav .step_info_item:not(.passed) { order: -1; }
#sb-timeline:has(#client-login) #steps-nav .step_info_item.passed:nth-last-child(3),
#sb-timeline:has(#client-login) #steps-nav .step_info_item.passed:nth-last-child(2) {
  display: block !important; float: none !important; width: 100% !important;
  max-width: 560px; margin: 0 auto !important; padding: 0 !important;
  border: 1px solid #e1d9d0; background: #faf7f3; box-sizing: border-box;
}
#sb-timeline:has(#client-login) #steps-nav .step_info_item.passed:nth-last-child(3) {
  border-radius: 12px 12px 0 0; border-bottom: 0; margin-top: 18px !important;
}
#sb-timeline:has(#client-login) #steps-nav .step_info_item.passed:nth-last-child(2) {
  border-radius: 0 0 12px 12px; border-top: 0; margin-bottom: 12px !important;
}
#sb-timeline:has(#client-login) #steps-nav .step_info_item.passed > a {
  display: block !important; height: auto !important; min-height: 0 !important;
  padding: 12px 16px !important; background: transparent !important;
  border: 0 !important; color: #49423d !important; text-decoration: none !important;
}
#sb-timeline:has(#client-login) #steps-nav .step_info_item.passed > a::before,
#sb-timeline:has(#client-login) #steps-nav .step_info_item.passed > a::after,
#sb-timeline:has(#client-login) #steps-nav .step_info_item.passed .title-small { display: none !important; }
#sb-timeline:has(#client-login) #steps-nav .step_info_item.passed .content { padding: 0 !important; margin: 0 !important; }
#sb-timeline:has(#client-login) #steps-nav .step_info_item.passed .title-sub {
  display: block !important; position: static !important; height: auto !important;
  max-height: none !important; overflow: visible !important; white-space: normal !important;
  font-size: 16px !important; line-height: 1.5 !important; text-transform: none !important;
  color: #49423d !important; text-align: left !important;
}
#sb-timeline:has(#client-login) #steps-nav .step_info_item.passed:nth-last-child(3) .title-sub { font-weight: 600; }
/* Individual service title already includes 50 min.; no duplicate duration suffix. */
#sb-timeline:has(#client-login) #steps-nav .step_info_item.passed:nth-last-child(2) .title-sub::after {
  content: " · Lietuvos laiku"; font-weight: 400;
}
#sb-timeline:has(#client-login) #steps-nav .step_info_item.passed > a:focus-visible { outline: 3px solid #985f43; outline-offset: 2px; }

/* The chosen date comes from the calendar's own current-day accessibility label. */
#sb_datetime_step_container #sb_dateview_container:has(.date.selected > a[aria-current="date"]) {
  position: relative !important; padding-bottom: 52px !important;
}
#sb_datetime_step_container #sb_dateview_container .weeks-date > div { position: static !important; }
#sb_datetime_step_container #sb_dateview_container .date.selected > a[aria-current="date"]::after {
  content: "Pasirinkta data: " attr(aria-label);
  display: block; position: absolute; left: 12px; right: 12px; bottom: 4px;
  height: auto; box-sizing: border-box; padding: 10px 12px;
  border-radius: 10px; background: #faf7f3; color: #49423d;
  font-family: inherit; font-size: 16px; font-weight: 600; line-height: 1.5;
  text-align: left; white-space: normal; pointer-events: none;
}
#main #steps > #time-settings { position: static !important; inset: auto !important; width: 100% !important; max-width: 100% !important; height: auto !important; margin: 0 0 16px !important; float: none !important; }
#main #time-settings > .container-fluid { box-sizing: border-box; width: 100% !important; padding-left: 12px !important; padding-right: 12px !important; }
#main #time-settings > .container-fluid > .row { margin: 0 !important; }
#sb-timeline:has(#client-login) #steps-nav { margin-bottom: 20px !important; }
@media (max-width: 767px) { #main #sb_booking_company_time::before { content: "Laikai nurodyti Lietuvos laiku."; white-space: normal !important; } }
/* Public contact note: only general location, never room or entrance directions. */
#sb_booking_company_time::after,
#sb_booking_content:has(#sb_datetime_step_container, #sb_category_step_container, #sb_service_step_container)::after {
  content: "Vilnius, NCBC verslo centras, Kareivių g. 6.\A Pagalba registruojantis: +370 688 57816.";
  display: block; max-width: 560px; box-sizing: border-box;
  margin: 12px auto 8px; padding: 12px 16px; border: 1px solid #e7e1dc;
  border-radius: 12px; background: #faf7f3; color: #49423d;
  font-size: 14px; font-weight: 400; line-height: 1.6; text-align: left; white-space: pre-line;
}
#main #steps #sb_back_button { position: static !important; inset: auto !important; float: none !important; width: auto !important; margin: 0 12.5px 12px !important; }
#main #steps #sb_back_button > a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; }
#sb_datetime_step_container .alert--no-slots-btn-bar { box-sizing: border-box; width: 100% !important; max-width: 100% !important; }
#sb_datetime_step_container .alert--no-slots-btn-bar > a.btn { display: inline-flex !important; align-items: center; justify-content: center; box-sizing: border-box; width: 100% !important; max-width: 100% !important; min-width: 0 !important; min-height: 48px; height: auto !important; padding: 12px !important; font-size: 16px !important; line-height: 1.5 !important; white-space: normal !important; overflow-wrap: anywhere; text-transform: none !important; }
/* END SIUDIKAS_BOOKING_CLARITY_V1 */

/* BEGIN SIUDIKAS_MOBILE_POLISH_V1 — 2026-10-15 */
#steps:has(#sb_category_step_container, #sb_service_step_container) #time-settings { display: none !important; }
#sb_category_step_container .read-more, #sb_service_step_container .read-more { color: #855339 !important; font-weight: 500 !important; text-underline-offset: 3px; }
#sb_datetime_step_container:has(#sb_time_slots_container) .time-legend { display: none !important; }
@media (max-width: 767px) {
 #sb-timeline #steps-nav { margin-bottom: 24px !important; }
 #sb_category_step_container .excerpt-info > .tab-pd, #sb_service_step_container .excerpt-info > .tab-pd { padding: 16px 16px 20px !important; }
 #sb_booking_content:has(#sb_datetime_step_container, #sb_category_step_container, #sb_service_step_container)::after { font-size: 14px; margin-top: 20px; }
 #client-login .terms-and-conditions .custom-checkbox { flex-shrink: 0; }
}
/* END SIUDIKAS_MOBILE_POLISH_V1 */

/* BEGIN SIUDIKAS_PWA_SAFETY_FIX_V1 — 2026-10-15 */
/* Keep time slots visible; the PWA uses different selected-day markup. */
#sb_booking_company_time::after { display: none !important; }
.promotions-letter-flag { display: none !important; }
#sb_booking_content:has(#client-login)::after { content: "Vilnius, NCBC verslo centras, Kareivių g. 6.\A Pagalba registruojantis: +370 688 57816."; display: block; clear: both; box-sizing: border-box; max-width: 560px; margin: 24px auto 8px; padding: 12px 16px; border: 1px solid #e7e1dc; border-radius: 12px; background: #faf7f3; color: #49423d; font-size: 14px; line-height: 1.6; white-space: pre-line; text-align: left; }
#sb_booking_content:has(#sb_datetime_step_container, #sb_category_step_container, #sb_service_step_container)::after { clear: both; margin-top: 24px; }
body:has(#sb_category_step_container, #sb_service_step_container) #sb_booking_company_time { display: none !important; }
/* END SIUDIKAS_PWA_SAFETY_FIX_V1 */

/* BEGIN SIUDIKAS_PWA_MATCH_V1 — 2026-10-15 */
body.pwa__body { --mdc-theme-primary: #985f43; --mdc-theme-secondary: #985f43; --mdc-theme-on-primary: #fff; }
.pwa__body #app-bar { background-color: #985f43 !important; color: #fff; }
.pwa__body .mdc-button, .pwa__body .mdc-button__label { text-transform: none !important; }
.pwa__body .mdc-text-field__input { font-size: 16px !important; }
/* Hide only the optional marketing row, leaving required agreements visible. */
.pwa__body .input-container:has(#sb_promotion_letters_flag) { display: none !important; }
/* Notice directly before a new client's personal details. */
.pwa__body #sb_sign_up_form .sb-built-in-fields::before { content: "Konsultacijos yra konfidencialios. Duomenų apie Jūsų psichoterapijos susitikimus į e. sveikatą neteikiu."; display: block; box-sizing: border-box; margin: 0 0 16px; padding: 14px 16px; border: 1px solid #e1d9d0; border-radius: 12px; background: #faf7f3; color: #49423d; font-size: 14px; font-weight: 500; line-height: 1.55; text-align: left; }
.pwa__body .terms-and-conditions-block .one-row--checkbox { align-items: flex-start; }
.pwa__body .terms-and-conditions-block .control-label__chekbox { white-space: normal; font-size: 14px; line-height: 1.5; }
.pwa__body .terms-and-conditions-block .mdc-touch-target-wrapper { flex-shrink: 0; }
/* Use the PWA's own selected date attribute; never hide its slots. */
.pwa__body #sb_dateview_container:has(.date.selected > a[data-date]) { position: relative !important; padding-bottom: 52px !important; }
.pwa__body #sb_dateview_container .date.selected > a[data-date] { position: static !important; border-radius: 50% !important; background-color: #985f43 !important; color: #fff !important; }
.pwa__body #sb_dateview_container .date.selected > a[data-date]::before { display: none !important; }
.pwa__body #sb_dateview_container .date.selected > a[data-date]::after { content: "Pasirinkta data: " attr(data-date); display: block; position: absolute; left: 12px; right: 12px; bottom: 4px; box-sizing: border-box; height: auto; width: auto; padding: 10px 12px; border-radius: 10px; background: #faf7f3; color: #49423d; font-size: 16px; font-weight: 600; line-height: 1.5; text-align: left; white-space: normal; pointer-events: none; transform: none; opacity: 1; }
.pwa__body #sb_timeview_container::before { content: "Laisvi laikai"; display: block; margin: 0 0 12px; color: #49423d; font-size: 20px; line-height: 1.4; font-weight: 600; }
/* The same compact title / read-more / choose-time hierarchy as the website. */
.pwa__body #sb_category_step_container .item, .pwa__body #sb_service_step_container .item { box-sizing: border-box; margin: 0 0 14px; padding: 16px; border: 1px solid #e7e1dc; border-radius: 16px; background: #fff; box-shadow: 0 3px 12px rgba(60,40,25,.06); }
.pwa__body #sb_category_step_container .item__tab, .pwa__body #sb_service_step_container .item__tab { display: flex; flex-direction: column; gap: 12px; height: auto !important; min-height: 0 !important; padding: 0 !important; }
.pwa__body #sb_category_step_container .item__picture-wrapper:has(.item__picture--default), .pwa__body #sb_service_step_container .item__picture-wrapper:has(.item__picture--default), .pwa__body .item__popup .item__picture--empty { display: none !important; }
.pwa__body #sb_category_step_container .item__tab > .item__content, .pwa__body #sb_service_step_container .item__tab > .item__content { box-sizing: border-box; width: 100% !important; max-width: 100% !important; min-width: 0; margin: 0 !important; padding: 0 !important; text-align: center; }
.pwa__body #sb_category_step_container .item__tab > .item__content h4, .pwa__body #sb_service_step_container .item__tab > .item__content h4 { margin: 0; font-size: 18px; font-weight: 500; line-height: 1.4; }
.pwa__body #sb_category_step_container .item__action-bar, .pwa__body #sb_service_step_container .item__action-bar { display: flex; width: 100%; gap: 10px; justify-content: center; }
.pwa__body #sb_category_step_container .item__action-bar > .mdc-touch-target-wrapper, .pwa__body #sb_service_step_container .item__action-bar > .mdc-touch-target-wrapper { flex: 1 1 0; min-width: 0; }
.pwa__body #sb_category_step_container .item__action-bar .mdc-button, .pwa__body #sb_service_step_container .item__action-bar .mdc-button { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; width: 100%; min-height: 48px; height: auto; padding: 10px 8px; white-space: normal; font-size: 14px; line-height: 1.4; }
.pwa__body #sb_category_step_container .item__action-bar .mdc-button svg, .pwa__body #sb_service_step_container .item__action-bar .mdc-button svg { display: none; }
.pwa__body #sb_category_step_container .item__action-bar .mdc-button__read-more, .pwa__body #sb_service_step_container .item__action-bar .mdc-button__read-more { color: #855339; background: #fff; border: 1px solid #d6d0cb; border-radius: 10px; }
.pwa__body #sb_category_step_container .item__action-bar .mdc-button__read-more::after, .pwa__body #sb_service_step_container .item__action-bar .mdc-button__read-more::after { content: "Skaityti daugiau"; position: static; opacity: 1; transform: none; }
.pwa__body #sb_category_step_container .item__action-bar a.mdc-button, .pwa__body #sb_service_step_container .item__action-bar a.mdc-button { background: #985f43; color: #fff; border-radius: 10px; }
.pwa__body #sb_category_step_container .item__action-bar a.mdc-button::after, .pwa__body #sb_service_step_container .item__action-bar a.mdc-button::after { content: "Rinktis laiką"; position: static; opacity: 1; transform: none; }
/* Social sign-in stays native, with visible names and comfortable targets. */
.pwa__body .client-login-bar .social-links { display: flex; gap: 10px; width: 100%; justify-content: center; }
.pwa__body .client-login-bar .social-links > a { display: inline-flex; align-items: center; justify-content: center; gap: 8px; box-sizing: border-box; flex: 1 1 0; min-width: 0; min-height: 48px; height: auto; padding: 10px; border: 1px solid #d6d0cb; border-radius: 10px; background: #fff !important; color: #49423d !important; }
.pwa__body .client-login-bar .social-links > a svg { width: 22px; height: 22px; }
.pwa__body .client-login-bar .social-links > a.gl::after { content: "Google"; position: static; opacity: 1; transform: none; }
.pwa__body .client-login-bar .social-links > a.fb::after { content: "Facebook"; position: static; opacity: 1; transform: none; }
/* END SIUDIKAS_PWA_MATCH_V1 */

/* BEGIN SIUDIKAS_PWA_POLISH_V1 — 2026-10-15 */
.pwa__body #sb_category_step_container .item__tab, .pwa__body #sb_service_step_container .item__tab { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 10px; }
.pwa__body #sb_category_step_container .item__tab > .item__content, .pwa__body #sb_service_step_container .item__tab > .item__content { grid-column: 1 / -1; }
.pwa__body #sb_category_step_container .item__tab > .item__picture-wrapper, .pwa__body #sb_service_step_container .item__tab > .item__picture-wrapper { grid-column: 1 / -1; }
.pwa__body #sb_category_step_container .item__footer, .pwa__body #sb_service_step_container .item__footer { box-sizing: border-box; width: 100%; margin: 0; padding: 0; }
.pwa__body #sb_category_step_container .item__footer > .mdc-touch-target-wrapper, .pwa__body #sb_service_step_container .item__footer > .mdc-touch-target-wrapper { width: 100%; }
.pwa__body #sb_category_step_container .item__footer a.mdc-button, .pwa__body #sb_service_step_container .item__footer a.mdc-button { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; width: 100%; min-height: 48px; height: auto; padding: 10px 8px; border-radius: 10px; background: #985f43; color: #fff; white-space: normal; font-size: 14px; line-height: 1.4; }
.pwa__body #sb_category_step_container .item__footer a.mdc-button svg, .pwa__body #sb_service_step_container .item__footer a.mdc-button svg { display: none; }
.pwa__body #sb_category_step_container .item__footer a.mdc-button::after, .pwa__body #sb_service_step_container .item__footer a.mdc-button::after { content: "Rinktis laiką"; position: static; opacity: 1; transform: none; }
.pwa__body #sb_booking_info { width: calc(100% - 140px) !important; max-width: 600px !important; }
.pwa__body #sb_booking_info .title { font-size: 18px !important; line-height: 1.25 !important; white-space: normal !important; text-overflow: clip !important; }
/* Booking takes priority; optional push settings remain available on the app home screen. */
.pwa__body.page__booking #sb_pwa_push_notifications, .pwa__body.page__booking .pwa-app__float-button { display: none !important; }
/* END SIUDIKAS_PWA_POLISH_V1 */

/* BEGIN SIUDIKAS_PWA_DATE_HEADER_V1 — 2026-10-15 */
/* Material buttons clip pseudo-elements; use the native chosen-date text in the sticky header. */
.pwa__body #sb_dateview_container:has(.date.selected > a[data-date]) { padding-bottom: 0 !important; }
.pwa__body #sb_dateview_container .date.selected > a[data-date] { position: relative !important; }
.pwa__body #sb_dateview_container .date.selected > a[data-date]::after { content: none !important; display: none !important; }
.pwa__body:has(#sb_datetime_step_container) .pwa-app__step-count { display: none !important; }
.pwa__body:has(#sb_datetime_step_container) #sb_booking_info .active .title-sub { display: block !important; color: #fff; font-size: 14px; font-weight: 400; line-height: 1.35; }
.pwa__body:has(#sb_datetime_step_container) #sb_booking_info .active .title-sub::before { content: "Data: "; }
.pwa__body #sb_category_step_container, .pwa__body #sb_service_step_container, .pwa__body #sb_datetime_step_container { max-width: 560px; margin-left: auto !important; margin-right: auto !important; }
.pwa__body .detail-step__registration-form-wrapper { max-width: 560px; margin-left: auto; margin-right: auto; }
.pwa__body #sb_dateview_container .weeks-name, .pwa__body #sb_dateview_container .weeks-name * { color: #56504b !important; font-size: 13px !important; }
/* Also keep the website's chosen date visible while browsing other months. */
#sb-timeline:has(#sb_datetime_step_container) #steps-nav .step_info_item.active > a { height: auto !important; }
#sb-timeline:has(#sb_datetime_step_container) #steps-nav .step_info_item.active .title-sub { display: block !important; margin-top: 4px; color: #49423d; font-size: 14px; line-height: 1.4; }
#sb-timeline:has(#sb_datetime_step_container) #steps-nav .step_info_item.active .title-sub::before { content: "Pasirinkta data: "; }
/* END SIUDIKAS_PWA_DATE_HEADER_V1 */

/* BEGIN SIUDIKAS_PWA_FINAL_POLISH_V1 — 2026-10-15 */
/* The 60-minute title already supplies the duration; preserve descriptions and future prices. */
.pwa__body #sb_service_step_container .service-item:has(a[href*="/service/5/"]) .item__tab > .item__content > .item__info-bar > .time { display: none !important; }
.pwa__body #sb_timeview_container::before { display: none; }
.pwa__body #sb_timeview_container:has(#sb_time_slots_container a.sb-cell.free)::before { display: block; }
/* END SIUDIKAS_PWA_FINAL_POLISH_V1 */

/* BEGIN SIUDIKAS_PWA_NARROW_V1 — 2026-10-15 */
.pwa__body #sb_category_step_container .item__tab > .item__content h4,
.pwa__body #sb_service_step_container .item__tab > .item__content h4 { white-space: normal !important; overflow: visible !important; max-height: none !important; height: auto !important; text-overflow: clip !important; }
@media (max-width: 360px) {
  .pwa__body #sb_category_step_container .item__action-bar .mdc-button,
  .pwa__body #sb_service_step_container .item__action-bar .mdc-button,
  .pwa__body #sb_category_step_container .item__footer a.mdc-button,
  .pwa__body #sb_service_step_container .item__footer a.mdc-button { min-height: 56px !important; padding: 8px !important; font-size: 13px !important; }
}
/* END SIUDIKAS_PWA_NARROW_V1 */

/* BEGIN SIUDIKAS_PWA_LOGIN_POLISH_V1 — 2026-10-15 */
/* Reuse the existing website image on the default app login banner. */
.pwa__body .clients-reg__company-card--banner.default-bg.medical { background-image: url("https://www.registracija.siudikas.lt/uploads/siudikas/image_files/background/b33aed932c23f9d16d7b30adebab580e.png") !important; background-position: center !important; }
.pwa__body main #sb_sign_in_form.detail-step__item-sign-in { position: relative; padding-top: 76px; }
.pwa__body main #sb_sign_in_form.detail-step__item-sign-in::before { content: "Jau turite paskyrą? Prisijunkite tuo pačiu el. paštu."; display: block; margin: 0 0 16px; color: #56504b; font-size: 14px; line-height: 1.5; }
.pwa__body main #sb_sign_in_form .detail-step--switcher-reg { position: absolute; top: 0; left: 0; width: 100%; min-height: 56px; height: auto; white-space: normal; border: 1px solid #d6d0cb; border-radius: 10px; background: #faf7f3; color: #855339; }
.pwa__body main #sb_sign_in_form .detail-step--switcher-reg::before { content: "Pirmą kartą? "; position: static; opacity: 1; transform: none; margin-right: 5px; }
.pwa__body #sb_terms_and_conditions .control-label__chekbox a { color: #855339; text-decoration: underline; text-underline-offset: 3px; }
/* Avoid unrelated demo images on the installation page; custom previews remain supported. */
.pwa-app--preview-carousel:has(img[src^="/v2/images/pwa/screenshot_"]) { display: none !important; }
/* END SIUDIKAS_PWA_LOGIN_POLISH_V1 */

.pwa__body main #sb_sign_in_form .button-wrapper { position: static !important; }

.pwa__body main #sb_sign_in_form .button-wrapper { padding-top: 0 !important; }
.pwa__body main #sb_sign_in_form .remind-pass { position: static !important; inset: auto !important; display: flex !important; align-items: center; justify-content: flex-end; width: 100%; min-height: 44px; margin: 0 0 8px; color: #855339; text-decoration: underline; text-underline-offset: 3px; }

/* Website: show the date once above the slots; retain a header reminder when browsing another month. */
#sb-timeline:has(#sb_datetime_step_container) #steps-nav .step_info_item.active .title-sub { display: none !important; }
#sb-timeline:has(#sb_datetime_step_container):not(:has(#sb_dateview_container .date.selected > a[aria-current="date"])) #steps-nav .step_info_item.active .title-sub { display: block !important; }

/* PWA: use the available header width so stage titles never truncate. */
.pwa__body #sb_booking_info .booking-steps-nav--item.active > a,
.pwa__body #sb_booking_info .booking-steps-nav--item.active .content { width: 100% !important; max-width: 100% !important; overflow: visible !important; white-space: normal !important; }
.pwa__body #sb_booking_info .booking-steps-nav--item.active .title { width: 100% !important; max-height: none !important; height: auto !important; overflow: visible !important; }

/* BEGIN SIUDIKAS_CONTRAST_V1 — 2026-10-15 */
/* Text and button colors only; booking structure and schedules stay native. */
#steps-nav .title-small { color: #985f43 !important; font-weight: 600 !important; }
#footer #sb_gdpr_show_form_btn { color: #855339 !important; }
#main .btn.book.custom,
#client-login .sign_button_wrap > .btn,
#header #sb_client_info .full-info--client-info .btn-bar--row > button.btn,
#sb_category_step_container .btn.select.custom,
#sb_service_step_container .btn.select.custom { background: linear-gradient(to right, #a95a19, #b54124, #b54124) !important; color: #fff !important; }
#sb_category_step_container .btn.select.custom a,
#sb_service_step_container .btn.select.custom a { color: #fff !important; }
/* END SIUDIKAS_CONTRAST_V1 */

/* BEGIN SIUDIKAS_RESCHEDULE_CONTACT_V1 — 2026-10-15 */
/* The native reschedule page nests two booking-content containers. Keep the inner footer only. */
#sb_booking_content.reschedule--row::after { content: none !important; display: none !important; }
/* END SIUDIKAS_RESCHEDULE_CONTACT_V1 */
