@font-face{font-family: 'Inter';font-style: normal;font-weight: 400;font-display: swap;src: url('fonts/inter-cyrillic-400.woff2') format('woff2');unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family: 'Inter';font-style: normal;font-weight: 400;font-display: swap;src: url('fonts/inter-latin-400.woff2') format('woff2')}@font-face{font-family: 'Inter';font-style: normal;font-weight: 500;font-display: swap;src: url('fonts/inter-cyrillic-500.woff2') format('woff2');unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family: 'Inter';font-style: normal;font-weight: 500;font-display: swap;src: url('fonts/inter-latin-500.woff2') format('woff2')}@font-face{font-family: 'Inter';font-style: normal;font-weight: 600;font-display: swap;src: url('fonts/inter-cyrillic-600.woff2') format('woff2');unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family: 'Inter';font-style: normal;font-weight: 600;font-display: swap;src: url('fonts/inter-latin-600.woff2') format('woff2')}@font-face{font-family: 'Inter';font-style: normal;font-weight: 700;font-display: swap;src: url('fonts/inter-cyrillic-700.woff2') format('woff2');unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family: 'Inter';font-style: normal;font-weight: 700;font-display: swap;src: url('fonts/inter-latin-700.woff2') format('woff2')}html{--lumo-primary-color: #2563eb;--lumo-primary-contrast-color: #ffffff;--lumo-primary-text-color: #1d4ed8;--lumo-primary-color-10pct: rgba(37,99,235,0.1);--lumo-primary-color-50pct: rgba(37,99,235,0.5);--lumo-error-color: #ef4444;--lumo-error-text-color: #b91c1c;--lumo-error-color-10pct: rgba(239,68,68,0.12);--lumo-success-color: #0d9488;--lumo-success-text-color: #0f766e;--lumo-success-color-10pct: rgba(13,148,136,0.12);--lumo-warning-color: #f97918;--lumo-warning-color-10pct: rgba(249,121,24,0.1);--lumo-base-color: #ffffff;--lumo-body-text-color: #0f172a;--lumo-header-text-color: #0f172a;--lumo-secondary-text-color: #64748b;--lumo-contrast-5pct: #f8fafc;--lumo-contrast-10pct: #f1f5f9;--lumo-contrast-20pct: #e2e8f0;--lumo-contrast-30pct: #cbd5e1;--lumo-contrast-50pct: #64748b;--bookfast-page-bg: #e8eef4;--lumo-border-radius-s: 4px;--lumo-border-radius-m: 8px;--lumo-font-family: Inter,system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;--bookfast-weekend-bg: var(--lumo-warning-color-10pct);--bookfast-status-no-show-accent: #8e44ad;--bookfast-status-no-show-bg: color-mix(in srgb,var(--bookfast-status-no-show-accent) 12%,var(--lumo-base-color))}vaadin-text-field[focused]::part(input-field),vaadin-text-area[focused]::part(input-field),vaadin-date-picker[focused]::part(input-field),vaadin-time-picker[focused]::part(input-field),vaadin-date-time-picker[focused]::part(input-field),vaadin-select[focused]::part(input-field),vaadin-combo-box[focused]::part(input-field),vaadin-number-field[focused]::part(input-field),vaadin-email-field[focused]::part(input-field),vaadin-password-field[focused]::part(input-field),vaadin-integer-field[focused]::part(input-field),vaadin-big-decimal-field[focused]::part(input-field){box-shadow: inset 0 0 0 2px var(--lumo-primary-color-50pct)}vaadin-text-field[focused][invalid]::part(input-field),vaadin-text-area[focused][invalid]::part(input-field),vaadin-date-picker[focused][invalid]::part(input-field),vaadin-time-picker[focused][invalid]::part(input-field),vaadin-date-time-picker[focused][invalid]::part(input-field),vaadin-select[focused][invalid]::part(input-field),vaadin-combo-box[focused][invalid]::part(input-field),vaadin-number-field[focused][invalid]::part(input-field),vaadin-email-field[focused][invalid]::part(input-field),vaadin-password-field[focused][invalid]::part(input-field),vaadin-integer-field[focused][invalid]::part(input-field),vaadin-big-decimal-field[focused][invalid]::part(input-field){box-shadow: inset 0 0 0 2px var(--lumo-error-color-50pct)}vaadin-text-field[invalid]::part(input-field),vaadin-text-area[invalid]::part(input-field),vaadin-date-picker[invalid]::part(input-field),vaadin-time-picker[invalid]::part(input-field),vaadin-date-time-picker[invalid]::part(input-field),vaadin-select[invalid]::part(input-field),vaadin-combo-box[invalid]::part(input-field),vaadin-number-field[invalid]::part(input-field),vaadin-email-field[invalid]::part(input-field),vaadin-password-field[invalid]::part(input-field),vaadin-integer-field[invalid]::part(input-field),vaadin-big-decimal-field[invalid]::part(input-field){box-shadow: inset 0 0 0 1px var(--lumo-error-color)}vaadin-text-field[focused],vaadin-text-area[focused],vaadin-date-picker[focused],vaadin-time-picker[focused],vaadin-date-time-picker[focused],vaadin-select[focused],vaadin-combo-box[focused],vaadin-number-field[focused],vaadin-email-field[focused],vaadin-password-field[focused],vaadin-integer-field[focused],vaadin-big-decimal-field[focused]{outline: none}vaadin-text-field::part(input-field),vaadin-text-area::part(input-field),vaadin-date-picker::part(input-field),vaadin-time-picker::part(input-field),vaadin-date-time-picker::part(input-field),vaadin-select::part(input-field),vaadin-combo-box::part(input-field),vaadin-number-field::part(input-field),vaadin-email-field::part(input-field),vaadin-password-field::part(input-field),vaadin-integer-field::part(input-field),vaadin-big-decimal-field::part(input-field){background: var(--lumo-contrast-10pct);border-radius: 10px;box-shadow: inset 0 0 0 1px var(--lumo-contrast-20pct)}.auth-page{display: flex;align-items: center;justify-content: center;width: 100%;box-sizing: border-box}.auth-page.auth-login-rich{position: relative;min-height: 100vh;width: 100%;padding: var(--lumo-space-l);box-sizing: border-box;overflow: hidden}.auth-login-hero{position: absolute;inset: 0;z-index: 0;pointer-events: none}.auth-login-hero-image{display: block;width: 100%;height: 100%;object-fit: cover}.auth-page.auth-login-rich .auth-page-panel{position: relative;z-index: 1;max-width: var(--vaadin-login-form-width,360px);margin: 0 auto;padding: var(--lumo-space-m);background: var(--lumo-base-color);border-radius: var(--lumo-border-radius-l);box-shadow: var(--lumo-box-shadow-m)}.auth-page.auth-login-rich .auth-page-panel.auth-register-panel{max-width: 360px}.auth-page.auth-login-rich .auth-page-locale{z-index: 2}.auth-page.auth-login-rich .auth-page-panel vaadin-login-form{display: flex;width: 100%;max-width: 100%;--vaadin-login-form-width: 100%;background: transparent}.auth-page.auth-login-rich .auth-page-panel vaadin-login-form::part(form){justify-content: center}.auth-page-panel{width: 100%;max-width: 360px;box-sizing: border-box}.auth-page-panel vaadin-login-form{width: 100%;max-width: 100%;--vaadin-login-form-width: 100%}.auth-page-panel vaadin-login-form.auth-login-pending{--vaadin-login-form-error-color: var(--lumo-warning-contrast-color)}.auth-page-panel vaadin-login-form.auth-login-pending::part(error-message){background: var(--lumo-warning-color-10pct);border: 1px solid var(--lumo-warning-color-50pct);border-radius: var(--lumo-border-radius-m)}.auth-page-panel vaadin-button.auth-compact-button{align-self: center;width: auto;max-width: 100%}.auth-page-panel.auth-register-panel{--vaadin-login-form-width: 100%;width: 100%;max-width: 360px;align-items: stretch}.auth-page-panel.auth-register-panel .auth-register-form{display: flex;flex-direction: column;align-self: stretch;width: var(--vaadin-login-form-width,360px);max-width: calc(var(--lumo-size-m) * 10);box-sizing: border-box;gap: var(--vaadin-login-form-gap,var(--vaadin-gap-l));padding: var(--vaadin-login-form-padding,var(--vaadin-padding-l));background: var(--vaadin-login-form-background,transparent);border-radius: var(--vaadin-login-form-border-radius,0)}.auth-register-honeypot-host{position: fixed;left: -100vw;top: -100vh;width: 0;height: 0;overflow: hidden;clip: rect(0,0,0,0);clip-path: inset(50%);border: 0;padding: 0;margin: 0;opacity: 0;visibility: hidden;pointer-events: none;z-index: -1}.auth-register-honeypot-host vaadin-text-field.auth-register-honeypot{visibility: hidden !important;width: 0 !important;height: 0 !important;min-width: 0 !important;min-height: 0 !important;max-width: 0 !important;max-height: 0 !important;margin: 0 !important;padding: 0 !important;border: 0 !important;opacity: 0 !important;pointer-events: none !important}.auth-page-panel.auth-register-panel .auth-register-fields{display: flex;flex-direction: column;gap: var(--vaadin-login-form-gap,var(--vaadin-gap-m))}.auth-page-panel.auth-register-panel .auth-register-title{display: block;font-size: var(--vaadin-login-form-title-font-size,var(--lumo-font-size-l));font-weight: var(--vaadin-login-form-title-font-weight,500);line-height: var(--vaadin-login-form-title-line-height,var(--lumo-line-height-xs));color: var(--vaadin-login-form-title-color,var(--lumo-header-text-color));margin: 0;padding: 0;width: 100%}.auth-page-panel.auth-register-panel .auth-register-fields vaadin-email-field,.auth-page-panel.auth-register-panel .auth-register-fields vaadin-password-field{width: 100%;max-width: 100%;align-self: stretch;box-sizing: border-box}.auth-page-panel.auth-register-panel .auth-register-form vaadin-button:not(.auth-compact-button){width: 100%;max-width: 100%;box-sizing: border-box}.auth-page-locale{position: fixed;bottom: var(--lumo-space-m);left: var(--lumo-space-m);min-width: 10rem;z-index: 1}vaadin-app-layout.app-shell-layout{--vaadin-app-layout-drawer-width: max-content}vaadin-app-layout::part(navbar){width: 100%;box-sizing: border-box;display: flex;align-items: center}vaadin-app-layout::part(drawer){overflow-x: hidden;overflow-y: auto}.app-drawer-root{overflow-x: hidden;overflow-y: auto;box-sizing: border-box;min-height: 0}.app-drawer-root vaadin-side-nav{overflow: visible}.app-drawer-root vaadin-side-nav-item::part(content){min-height: 2.75rem;display: flex;align-items: center;box-sizing: border-box}.app-drawer-root vaadin-side-nav-item::part(link){line-height: var(--lumo-line-height-m,1.4);padding-block: var(--lumo-space-xs,0.25rem);box-sizing: border-box}.app-drawer-lang{overflow: hidden;flex-shrink: 0}.app-drawer-footer{margin-top: auto;flex-shrink: 0}.app-drawer-settings-nav{margin-top: auto;flex-shrink: 0}vaadin-app-layout::part(navbar){background: var(--lumo-base-color);border-bottom: 1px solid var(--lumo-contrast-20pct)}vaadin-app-layout::part(drawer){background: var(--lumo-contrast-5pct)}.app-drawer-root vaadin-side-nav-item[current]::part(content),.app-drawer-root vaadin-side-nav-item[current]::part(link){color: var(--lumo-primary-color);font-weight: 600}.app-drawer-root vaadin-side-nav-item vaadin-icon{color: var(--lumo-secondary-text-color);width: var(--lumo-icon-size-s,1.25rem);height: var(--lumo-icon-size-s,1.25rem);flex-shrink: 0}.app-drawer-root vaadin-side-nav-item[current] vaadin-icon{color: var(--lumo-primary-color)}.app-drawer-root vaadin-side-nav-item[current]::part(content){box-shadow: inset 3px 0 0 0 var(--lumo-primary-color);background: var(--lumo-primary-color-10pct)}.app-logo-emblem{height: 2.75rem;width: auto;display: block;object-fit: contain;border-radius: 0.5rem}.auth-emblem{display: block;width: min(165px,56%);height: auto;margin: 0 auto var(--lumo-space-m);object-fit: contain;border-radius: 16px}vaadin-grid::part(row):hover,.clickable-row:hover{background: var(--lumo-contrast-10pct)}vaadin-grid::part(selected-row){background: var(--lumo-primary-color-10pct);box-shadow: inset 2px 0 0 0 var(--lumo-primary-color)}vaadin-button[disabled]{opacity: 1;cursor: not-allowed;--vaadin-button-text-color: #64748b;--vaadin-button-background: #f1f5f9;--vaadin-button-background-hover: #f1f5f9;--vaadin-button-background-active: #f1f5f9;color: #64748b;background: #f1f5f9;border-color: #e2e8f0}vaadin-button[disabled]::part(label){color: #64748b;opacity: 1}:not(vaadin-button)[disabled]{opacity: 0.72;cursor: not-allowed}.app-navbar{width: 100%;box-sizing: border-box;align-items: center}vaadin-horizontal-layout.app-navbar,vaadin-horizontal-layout.app-navbar-left,vaadin-horizontal-layout.app-tab-strip,vaadin-horizontal-layout.app-tab-strip-host{align-items: center}.app-name{white-space: nowrap;line-height: var(--lumo-line-height-m,1.4)}vaadin-badge.early-access-badge{cursor: pointer;flex-shrink: 0;background: linear-gradient(135deg,#f0c429 0%,#ffdf5a 45%,#e8b40a 100%);color: #1a1408;font-weight: 600;border: 1px solid #c9a016;box-shadow: 0 1px 2px rgba(0,0,0,0.12)}.early-access-popover{font-size: var(--lumo-font-size-s)}.early-access-popover h4{margin: 0;font-size: var(--lumo-font-size-m)}.early-access-popover p{margin: 0}.early-access-popover ul{margin: 0;padding-inline-start: 1.25rem}vaadin-horizontal-layout.app-navbar-logout{gap: var(--lumo-space-xs)}.bookfast-help-button,.bookfast-section-hint-btn{flex-shrink: 0;color: var(--lumo-primary-color);--vaadin-button-text-color: var(--lumo-primary-color);cursor: pointer}.bookfast-help-button:hover,.bookfast-section-hint-btn:hover{color: var(--lumo-primary-text-color);--vaadin-button-text-color: var(--lumo-primary-text-color);background: var(--lumo-primary-color-10pct)}vaadin-app-layout[drawer-opened] .app-navbar-left{width: var(--vaadin-app-layout-drawer-width,max-content);max-width: 100%;box-sizing: border-box;justify-content: flex-start}vaadin-app-layout:not([drawer-opened]) .app-navbar-left{width: auto;min-width: 0}.app-tab-strip-host{justify-content: center;box-sizing: border-box;flex: 1 1 0;min-width: 0}.app-tab-strip{justify-content: center;flex-shrink: 0;box-sizing: border-box}.app-tab-chip vaadin-button{margin: 0;align-self: center}.app-tab-chip{flex-shrink: 0;align-items: center;gap: 0.125rem;padding: 0.2rem 0.25rem 0.2rem 0.5rem;border-radius: var(--vaadin-radius-m,0.25rem);border: 1px solid transparent;white-space: nowrap}.app-tab-chip.active{border-color: transparent;border-bottom: 2px solid var(--lumo-primary-color);border-radius: 0;background: transparent}.app-tab-chip.active .app-tab-chip-label{color: var(--lumo-primary-color);font-weight: 600}.app-tab-chip-label{user-select: none}@media (max-width: 768px){vaadin-app-layout.app-shell-layout{--vaadin-app-layout-drawer-width: min(88vw,20rem)}vaadin-app-layout[drawer-opened] .app-navbar-left{width: auto;max-width: 100%}vaadin-horizontal-layout.app-navbar{flex-wrap: wrap;row-gap: var(--lumo-space-xs);align-items: center}.app-navbar-left{min-width: 0;flex: 1 1 auto;max-width: calc(100% - 5.5rem)}.app-name{display: none}vaadin-horizontal-layout.app-tab-strip-host{flex-basis: 100%;width: 100%;order: 2;justify-content: flex-start !important}vaadin-horizontal-layout.app-tab-strip{justify-content: flex-start !important}vaadin-horizontal-layout.app-navbar-logout{order: 1;margin-inline-start: auto;flex-shrink: 0;align-self: center}vaadin-button.app-navbar-logout-button::part(label){display: none}vaadin-button.app-navbar-logout-button{min-width: var(--lumo-size-m);width: var(--lumo-size-m);height: var(--lumo-size-m);padding: 0;margin: 0}vaadin-badge.early-access-badge{max-width: min(42vw,9rem);overflow: hidden;text-overflow: ellipsis}.schedule-status-filter-trigger::part(label){display: none}vaadin-button.schedule-status-filter-trigger{min-width: var(--lumo-size-m);padding-inline: var(--lumo-space-s)}.schedule-toolbar-nav-controls .schedule-status-filter-trigger-host{max-width: none}vaadin-app-layout::part(content){min-width: 0;overflow: auto}vaadin-app-layout.app-shell-layout.app-shell-has-tabs{--vaadin-app-layout-navbar-offset-size: max( var(--vaadin-app-layout-navbar-offset-size,0px),calc(2.75rem + 2.5rem + var(--lumo-space-m,1rem)) )}vaadin-app-layout.app-shell-layout.app-shell-has-tabs::part(content){scroll-padding-top: var(--lumo-space-xs,0.25rem)}vaadin-app-layout vaadin-grid{min-width: 0}}@media (min-width: 769px) and (max-width: 1024px){vaadin-horizontal-layout.app-navbar-logout{margin-inline-start: auto;flex-shrink: 0}}.masters-mobile-list{box-sizing: border-box}vaadin-details.masters-mobile-details{width: 100%;box-sizing: border-box;border: 1px solid var(--lumo-contrast-10pct);border-radius: var(--lumo-border-radius-m,0.25rem);background: var(--lumo-base-color)}.masters-mobile-details-content{box-sizing: border-box;width: 100%}.masters-mobile-card-phone{overflow-wrap: anywhere}.masters-mobile-card-status{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-s,0.875rem)}.masters-mobile-empty{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-s,0.875rem)}.client-card-health-summary-panel{width: 100%;min-width: 0;box-sizing: border-box;padding: var(--lumo-space-s);border: 1px solid var(--lumo-contrast-10pct);border-radius: var(--lumo-border-radius-m);background: var(--lumo-base-color);overflow: visible}.client-card-health-summary-title{margin: 0 0 var(--lumo-space-xs) 0 !important;font-size: var(--lumo-font-size-m)}.client-summary-line{display: flex;flex-direction: column;align-items: stretch;gap: var(--lumo-space-xs);width: 100%;min-width: 0;max-width: 100%;box-sizing: border-box;padding: var(--lumo-space-xs) var(--lumo-space-s);border-radius: var(--lumo-border-radius-s);font-size: var(--lumo-font-size-s);overflow: visible}.client-summary-line-label{display: block;width: 100%;min-width: 0;font-weight: 600;white-space: normal;overflow: visible;text-overflow: unset}.client-summary-line-details{display: block;width: 100%;min-width: 0;max-width: 100%;box-sizing: border-box;color: var(--lumo-body-text-color);white-space: normal;overflow: visible;text-overflow: unset;word-break: break-word;overflow-wrap: break-word}.client-summary-allergy{background: color-mix(in srgb,#f97918 18%,var(--lumo-base-color));border-left: 4px solid #f97918}.client-summary-drug-allergy{background: color-mix(in srgb,var(--lumo-error-color) 22%,var(--lumo-base-color));border-left: 4px solid var(--lumo-error-color)}.client-summary-flags,.client-summary-notes,.client-summary-empty{background: var(--lumo-contrast-10pct);border-left: 4px solid var(--lumo-contrast-20pct)}.client-summary-notes .client-summary-line-details{white-space: pre-wrap}.client-summary-empty{color: var(--lumo-body-text-color);font-size: var(--lumo-font-size-s);font-weight: 500}.bookfast-dialog-header{width: 100%;overflow: visible;min-height: 0;height: auto;pointer-events: none;user-select: none;-webkit-user-select: none}.bookfast-dialog-header .bookfast-dialog-close,.bookfast-dialog-header .bookfast-help-button{pointer-events: auto}.bookfast-dialog-title{margin: 0;font-size: var(--lumo-font-size-l);line-height: 1.2}.bookfast-dialog-close{color: var(--lumo-error-color) !important;flex-shrink: 0}.bookfast-dialog-close:hover{background: var(--lumo-error-color-10pct)}.visit-form-dialog-title{font-weight: 600;font-size: var(--lumo-font-size-l);line-height: 1.2;color: var(--lumo-header-text-color);display: block}.visit-dialog-header-stacked,vaadin-vertical-layout.visit-dialog-header-stacked{overflow: visible;min-height: 0;height: auto}.visit-dialog-header-stacked .visit-form-dialog-title,.visit-dialog-header-stacked .visit-form-dialog-client-name{overflow-x: hidden;overflow-y: visible;line-height: var(--lumo-line-height-m,1.4)}.visit-dialog-header-stacked .visit-form-dialog-client-name{display: block;width: 100%;max-width: 100%;box-sizing: border-box;font-weight: 600;font-size: var(--lumo-font-size-l);color: var(--lumo-primary-color);text-align: left;white-space: nowrap;text-overflow: ellipsis;margin: 0;padding: 0}@media (max-width: 640px){.visit-dialog-header-stacked .visit-form-dialog-client-name{font-size: var(--lumo-font-size-m)}.visit-dialog-header-stacked .visit-form-dialog-title{font-size: var(--lumo-font-size-m)}}.visit-form-client-info{margin-top: calc(-1 * var(--lumo-space-m));margin-bottom: var(--lumo-space-xs);padding: 0}.visit-form-client-ucid{display: block;margin: 0;padding: 0;font-size: var(--lumo-font-size-s);line-height: 1.25;color: var(--lumo-secondary-text-color)}.visit-form-empty-procedures{color: var(--lumo-error-text-color)}.dashboard-under-development{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-m);max-width: 32rem}.bookfast-form-field-label-row{margin-bottom: calc(var(--lumo-space-xs) * 0.5)}.bookfast-form-field-label{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-s);font-weight: 500}.visit-form-dialog-body{row-gap: var(--lumo-space-s)}.visit-form-total-amount::part(input-field){text-align: center}.visit-form-total-amount input{text-align: center}.visit-form-total-row{align-items: center}.visit-form-total-currency{flex-shrink: 0;--vaadin-combo-box-overlay-width: min(20rem,calc(100vw - 2rem))}.currency-select-item-label{white-space: normal;line-height: 1.3}.visit-form-material-group{width: 100%}.visit-form-material-group:not(:first-child){border-top: 1px solid var(--lumo-contrast-10pct);margin-top: var(--lumo-space-xs);padding-top: var(--lumo-space-s)}.visit-form-material-group-title{margin: 0;font-size: var(--lumo-font-size-s);font-weight: 600;color: var(--lumo-secondary-text-color)}.visit-form-material-label{font-size: var(--lumo-font-size-s)}.visit-history-dialog-body>.visit-form-client-info{margin-bottom: var(--lumo-space-m)}.visit-history-entry{flex: 1;min-width: 0}.visit-history-procedure{display: block;padding-left: var(--lumo-space-s);color: var(--lumo-body-text-color);font-size: var(--lumo-font-size-s)}.visit-history-line{font-size: var(--lumo-font-size-s)}.visit-history-select-hint{margin: 0 0 var(--lumo-space-s) 0;font-size: var(--lumo-font-size-m);font-weight: 600;line-height: var(--lumo-line-height-m)}.visit-history-list{display: flex;flex-direction: column;gap: var(--lumo-space-m);width: 100%}.visit-history-card{width: 100%;box-sizing: border-box;padding: var(--lumo-space-m);border: 1px solid var(--lumo-contrast-10pct);border-radius: var(--lumo-border-radius-m);background: var(--lumo-base-color);box-shadow: var(--lumo-box-shadow-s);transition: border-color 160ms ease,background 160ms ease,box-shadow 160ms ease}.visit-history-card--selected{border-color: var(--lumo-primary-color);background: var(--lumo-primary-color-10pct);box-shadow: 0 0 0 1px var(--lumo-primary-color-50pct)}.visit-history-card-header{gap: var(--lumo-space-s)}.visit-history-card-radio{flex-shrink: 0;width: 1rem;height: 1rem;border: 2px solid var(--lumo-contrast-40pct);border-radius: 50%;box-sizing: border-box;cursor: pointer;background: var(--lumo-base-color);transition: border-color 160ms ease,box-shadow 160ms ease}.visit-history-card-radio:hover{border-color: var(--lumo-primary-color)}.visit-history-card-radio--selected{border-color: var(--lumo-primary-color);background: radial-gradient( circle,var(--lumo-primary-color) 0 35%,var(--lumo-base-color) 36% 100% )}.visit-history-card .visit-history-entry{padding-left: calc(1rem + var(--lumo-space-s))}.visit-history-date{display: block;margin: 0;font-size: var(--lumo-font-size-s);font-weight: normal;line-height: var(--lumo-line-height-s);color: var(--lumo-body-text-color)}.visit-history-photo-row{flex-wrap: wrap}.visit-history-photo-thumb-wrap{cursor: pointer;border-radius: var(--lumo-border-radius-m);overflow: hidden;line-height: 0}.visit-history-photo-thumb{width: 3rem;height: 3rem;object-fit: cover;display: block}.visit-history-photo-more{min-width: 3rem;height: 3rem;padding: 0;font-size: var(--lumo-font-size-s);color: var(--lumo-primary-text-color)}.visit-photo-section{margin-top: var(--lumo-space-s);padding-top: var(--lumo-space-s);border-top: 1px solid var(--lumo-contrast-10pct)}.visit-photo-gallery{display: flex;flex-wrap: wrap;gap: var(--lumo-space-s)}.visit-photo-thumb-wrap{position: relative;line-height: 0}.visit-photo-thumb{width: 5rem;height: 5rem;object-fit: cover;border-radius: var(--lumo-border-radius-m);cursor: pointer;display: block}.visit-photo-thumb-remove{position: absolute;top: 0;right: 0;min-width: unset;width: 1.5rem;height: 1.5rem;padding: 0;margin: 0;border-radius: 0 var(--lumo-border-radius-m) 0 var(--lumo-border-radius-s)}.visit-photo-hint{font-size: var(--lumo-font-size-xs);color: var(--lumo-secondary-text-color)}.visit-photo-upload::part(drop-label),.visit-photo-upload::part(file-list),.care-manual-photo-upload::part(drop-label),.care-manual-photo-upload::part(file-list){display: none}.visit-photo-upload,.care-manual-photo-upload{width: 100%}vaadin-context-menu-item.client-context-menu-delete{color: var(--lumo-error-text-color,var(--lumo-error-color))}vaadin-dialog.bookfast-resizable-dialog::part(overlay),vaadin-dialog.bookfast-confirm-dialog::part(overlay){box-sizing: border-box;max-width: 100vw;max-height: 100vh}vaadin-dialog.bookfast-resizable-dialog::part(header),vaadin-dialog.bookfast-confirm-dialog::part(header){box-sizing: border-box;height: auto;min-height: 0;overflow: visible;padding-inline: var(--lumo-space-m);padding-top: var(--lumo-space-s);padding-bottom: var(--lumo-space-s);background: linear-gradient( 180deg,var(--lumo-primary-color-10pct) 0%,var(--lumo-base-color) 100% );border-bottom: 1px solid var(--lumo-contrast-10pct)}vaadin-dialog.bookfast-resizable-dialog:has(.visit-dialog-header-stacked)::part(header){padding-bottom: var(--lumo-space-s)}@media (min-width: 1025px){vaadin-dialog.bookfast-resizable-dialog::part(header){cursor: grab}vaadin-dialog.bookfast-resizable-dialog::part(header):active{cursor: grabbing}}vaadin-dialog.bookfast-resizable-dialog::part(content),vaadin-dialog.bookfast-confirm-dialog::part(content){box-sizing: border-box;width: 100%;min-width: 0;max-width: 100%;overflow: auto;overflow-x: hidden;padding: var(--lumo-space-m)}vaadin-dialog.bookfast-resizable-dialog::part(footer),vaadin-dialog.bookfast-confirm-dialog::part(footer){box-sizing: border-box;padding-inline: var(--lumo-space-m)}vaadin-dialog.bookfast-resizable-dialog.bookfast-dialog-compact::part(overlay){width: auto !important;max-width: min(20rem,92vw) !important;height: auto !important;max-height: min(85dvh,100dvh) !important}vaadin-dialog.bookfast-resizable-dialog.bookfast-dialog-compact::part(content){flex: 0 0 auto !important;padding: var(--lumo-space-s) var(--lumo-space-m)}vaadin-dialog.bookfast-resizable-dialog.bookfast-dialog-compact::part(footer){flex-shrink: 0;padding-top: var(--lumo-space-xs);padding-bottom: var(--lumo-space-s)}.schedule-status-filter-dialog-body{width: auto;min-width: 0}.bookfast-resizable-dialog-host{width: 100%;min-width: 0;max-width: 100%;box-sizing: border-box}.bookfast-tab-page-hidden{display: none !important}.client-card-dialog-pages{width: 100%;max-width: 100%;min-height: 0;min-width: 0;overflow-y: auto;overflow-x: visible;box-sizing: border-box}.client-card-dialog-body vaadin-vertical-layout,.client-card-dialog-pages>vaadin-vertical-layout{width: 100%;max-width: 100%;min-width: 0;box-sizing: border-box}.client-card-dialog-body{width: 100%;min-width: 0;box-sizing: border-box}.client-card-personal-form{width: 100%;min-width: 0;max-width: 100%;box-sizing: border-box}.client-card-personal-form>*{width: 100%;max-width: 100%;min-width: 0;box-sizing: border-box}.bookfast-resizable-dialog-host vaadin-text-field,.bookfast-resizable-dialog-host vaadin-text-area,.bookfast-resizable-dialog-host vaadin-date-picker,.bookfast-resizable-dialog-host vaadin-select,.bookfast-resizable-dialog-host vaadin-combo-box,.bookfast-resizable-dialog-host vaadin-multi-select-combo-box,.bookfast-resizable-dialog-host vaadin-number-field,.bookfast-resizable-dialog-host vaadin-checkbox-group,.client-card-dialog-body vaadin-text-field,.client-card-dialog-body vaadin-text-area,.client-card-dialog-body vaadin-date-picker,.client-card-dialog-body vaadin-select,.client-card-dialog-body vaadin-checkbox-group{width: 100%;max-width: 100%;min-width: 0;flex-shrink: 1;box-sizing: border-box;--vaadin-field-default-width: 100%}.bookfast-resizable-dialog-host vaadin-text-field::part(input-field),.bookfast-resizable-dialog-host vaadin-text-area::part(input-field),.bookfast-resizable-dialog-host vaadin-date-picker::part(input-field),.bookfast-resizable-dialog-host vaadin-select::part(input-field),.bookfast-resizable-dialog-host vaadin-combo-box::part(input-field),.bookfast-resizable-dialog-host vaadin-multi-select-combo-box::part(input-field),.bookfast-resizable-dialog-host vaadin-number-field::part(input-field),.client-card-dialog-body vaadin-text-field::part(input-field),.client-card-dialog-body vaadin-text-area::part(input-field),.client-card-dialog-body vaadin-date-picker::part(input-field),.client-card-dialog-body vaadin-select::part(input-field){width: 100%;max-width: 100%;min-width: 0;box-sizing: border-box}.clients-view-toolbar-actions vaadin-button{flex-shrink: 0}.clients-search-clear-suffix{display: none !important;margin: 0;min-width: 0;padding: var(--lumo-space-xs)}@media (max-width: 1024px){.clients-toolbar-clear-button{display: none !important}.clients-search-clear-suffix:not([hidden]){display: inline-flex !important}}@media (max-width: 640px){.clients-toolbar-find-button{display: none !important}.clients-view-toolbar-actions{flex-direction: row;flex-wrap: nowrap;align-items: stretch;width: 100%;min-width: 0;gap: var(--lumo-space-s)}.clients-view-toolbar-actions vaadin-button{flex: 1 1 0;min-width: 0;width: auto;max-width: none;margin: 0;box-sizing: border-box}}.avatar-photo-section{width: 100%;align-items: flex-start;gap: var(--lumo-space-m);justify-content: flex-start}.avatar-photo-block{width: auto;padding: var(--lumo-space-s);border: 1px dashed var(--lumo-contrast-20pct);border-radius: var(--lumo-border-radius-m,0.25rem);background: var(--lumo-contrast-5pct);overflow: visible}.avatar-photo-frame-wrap{position: relative;display: inline-block;width: 9rem;height: 9rem;flex-shrink: 0;overflow: visible}.avatar-photo-placeholder{width: 9rem;height: 9rem;min-width: 9rem;border-radius: 999px;background: var(--lumo-base-color);border: 1px solid var(--lumo-contrast-20pct);display: flex;align-items: center;justify-content: center;box-sizing: border-box}.avatar-photo-placeholder--clickable{cursor: zoom-in}.avatar-photo-placeholder--clickable:hover{border-color: var(--lumo-primary-color-50pct)}.avatar-photo-frame-wrap--zoomable{cursor: zoom-in}.avatar-photo-frame-wrap--zoomable .avatar-photo-zoom-hint{position: absolute;right: -0.15rem;bottom: -0.15rem;z-index: 2;display: flex;align-items: center;justify-content: center;width: 1.75rem;height: 1.75rem;padding: 0.2rem;box-sizing: border-box;border-radius: 999px;background: var(--lumo-base-color);color: var(--lumo-primary-color);border: 2px solid var(--lumo-primary-color);box-shadow: var(--lumo-box-shadow-s);font-size: 0.8rem;cursor: zoom-in;pointer-events: auto}.avatar-photo-placeholder-icon{font-size: 3rem;color: var(--lumo-secondary-text-color)}vaadin-dialog.avatar-photo-lightbox{--avatar-photo-lightbox-gutter: var(--lumo-space-m);--avatar-photo-lightbox-header: 3.25rem;--vaadin-overlay-viewport-inset: var(--avatar-photo-lightbox-gutter)}vaadin-dialog-overlay.avatar-photo-lightbox{position: absolute;inset: 0;width: 100%;height: 100%;max-width: 100%;margin: 0;transform: none;box-sizing: border-box;display: flex;align-items: center;justify-content: center;padding: var(--avatar-photo-lightbox-gutter);overflow: hidden}vaadin-dialog-overlay.avatar-photo-lightbox::part(overlay){display: flex;flex-direction: column;flex: 0 1 auto;width: auto;max-width: 100%;height: auto;min-height: 0;max-height: 100%;margin: 0 auto;padding: 0;overflow: hidden;box-sizing: border-box;background: var(--lumo-base-color)}vaadin-dialog-overlay.avatar-photo-lightbox::part(header){flex: 0 0 auto;width: 100%;min-width: 0;box-sizing: border-box}vaadin-dialog-overlay.avatar-photo-lightbox::part(content){flex: 0 0 auto;width: 100%;min-width: 0;height: auto;min-height: 0;margin: 0;padding: 0;overflow: hidden;box-sizing: border-box;background: var(--lumo-base-color)}.avatar-photo-lightbox-body{display: block;width: 100%;max-width: 100%;height: auto;overflow: hidden;background: var(--lumo-base-color);box-sizing: border-box}.avatar-photo-lightbox-stage{position: relative;display: flex;flex-direction: column;align-items: center;width: 100%;max-width: 100%;min-width: 0;touch-action: pan-y pinch-zoom}.avatar-photo-lightbox-frame{display: flex;flex-direction: column;align-items: center;flex: 1 1 auto;min-width: 0;max-width: 100%;line-height: 0;font-size: 0}.avatar-photo-lightbox-counter{display: block;margin-top: var(--lumo-space-s);font-size: var(--lumo-font-size-s);line-height: var(--lumo-line-height-s);color: var(--lumo-secondary-text-color);text-align: center;position: relative;z-index: 1}.avatar-photo-lightbox-nav-button{position: absolute;top: 50%;transform: translateY(-50%);z-index: 2;width: 3.25rem;height: 3.25rem;min-width: 3.25rem;min-height: 3.25rem;padding: 0;margin: 0;border-radius: 50%;cursor: pointer;--vaadin-button-background: color-mix(in srgb,var(--lumo-shade) 55%,transparent);--vaadin-button-background-hover: color-mix(in srgb,var(--lumo-shade) 72%,transparent);--vaadin-button-background-active: color-mix(in srgb,var(--lumo-shade) 82%,transparent);--vaadin-button-text-color: var(--lumo-primary-contrast-color);--vaadin-button-border-width: 0;box-shadow: var(--lumo-box-shadow-m);transition: opacity 160ms ease,transform 160ms ease}.avatar-photo-lightbox-nav-button:active{transform: translateY(-50%) scale(0.96)}.avatar-photo-lightbox-nav-button:disabled{opacity: 0.35;cursor: default;pointer-events: none}.avatar-photo-lightbox-nav-button--prev{left: var(--lumo-space-s)}.avatar-photo-lightbox-nav-button--next{right: var(--lumo-space-s)}.avatar-photo-lightbox-nav-icon{width: 1.35rem;height: 1.35rem;color: var(--lumo-primary-contrast-color)}.avatar-photo-lightbox-image{display: block;width: auto;height: auto;max-width: 100%;max-height: min( calc(100svh - 2 * var(--avatar-photo-lightbox-gutter) - var(--avatar-photo-lightbox-header) - 2.5rem),100% );margin: 0 auto;vertical-align: top;position: relative;z-index: 0;user-select: none;-webkit-user-drag: none}@media (max-width: 600px){.avatar-photo-lightbox-nav-button{width: 3.5rem;height: 3.5rem;min-width: 3.5rem;min-height: 3.5rem}.avatar-photo-lightbox-nav-icon{width: 1.5rem;height: 1.5rem}.avatar-photo-lightbox-nav-button--prev{left: var(--lumo-space-xs)}.avatar-photo-lightbox-nav-button--next{right: var(--lumo-space-xs)}}@media (min-width: 1025px){vaadin-dialog-overlay.avatar-photo-lightbox::part(overlay){max-width: min(100%,48rem)}}.avatar-photo-preview{width: 100%;height: 100%;display: block;object-fit: cover;border-radius: 999px}.avatar-photo-placeholder:has(.avatar-photo-preview){padding: 0;overflow: hidden}.avatar-photo-status{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-s,0.875rem)}.avatar-photo-meta{row-gap: var(--lumo-space-xs,0.25rem)}.avatar-photo-title{font-weight: 600;color: var(--lumo-header-text-color)}.avatar-photo-hint{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-s,0.875rem)}.avatar-photo-actions{width: 14rem;min-width: 14rem;align-self: flex-start;margin-top: 0;padding-top: 0;row-gap: var(--lumo-space-s)}.avatar-photo-action-buttons{width: 100%;display: flex;flex-direction: column;align-items: stretch;gap: var(--lumo-space-s)}.avatar-photo-action-buttons vaadin-button{width: 100%}.avatar-photo-upload::part(drop-label),.avatar-photo-upload::part(file-list){display: none}.avatar-photo-upload{width: 100%;--vaadin-upload-border-width: 0;--vaadin-upload-padding: 0;background: transparent;border: none}.bookfast-action-button{--vaadin-button-border-radius: var(--lumo-border-radius-m,0.25rem);line-height: normal;--vaadin-button-line-height: normal}vaadin-button{line-height: normal;--vaadin-button-line-height: normal}.client-card-dialog-footer,.care-plan-dialog-footer,.avatar-photo-action-buttons{line-height: normal}vaadin-button::part(label){overflow: visible;text-align: center}.bookfast-action-button-secondary{--vaadin-button-background: #ffffff;--vaadin-button-background-hover: #dbeafe;--vaadin-button-background-active: #bfdbfe;--vaadin-button-text-color: var(--lumo-primary-text-color,#1d4ed8);--vaadin-button-border-width: 1px;color: var(--lumo-primary-text-color,#1d4ed8);border: 1px solid var(--lumo-contrast-20pct,#e2e8f0);background: #ffffff;transition: background-color 0.12s ease,border-color 0.12s ease,box-shadow 0.12s ease}.bookfast-action-button-secondary:hover:not([disabled]),.bookfast-action-button-secondary[focus-ring]:not([disabled]){--vaadin-button-background: #dbeafe;background: #dbeafe;border-color: var(--lumo-primary-color,#2563eb);box-shadow: 0 0 0 1px color-mix(in srgb,var(--lumo-primary-color,#2563eb) 35%,transparent)}.bookfast-action-button-secondary:active:not([disabled]){--vaadin-button-background: #bfdbfe;background: #bfdbfe;border-color: var(--lumo-primary-color,#2563eb)}.bookfast-action-button-accent{--vaadin-button-background: #ffedd5;--vaadin-button-background-hover: #fed7aa;--vaadin-button-background-active: #fdba74;--vaadin-button-text-color: #ea580c;--vaadin-button-border-width: 1px;color: #ea580c;border: 1px solid #fb923c;background: #ffedd5;transition: background-color 0.12s ease,border-color 0.12s ease,box-shadow 0.12s ease}.bookfast-action-button-accent:hover:not([disabled]),.bookfast-action-button-accent[focus-ring]:not([disabled]){--vaadin-button-background: #fed7aa;background: #fed7aa;border-color: #f97316;box-shadow: 0 0 0 1px color-mix(in srgb,#f97316 40%,transparent)}.bookfast-action-button-accent:active:not([disabled]){--vaadin-button-background: #fdba74;background: #fdba74;border-color: #f97316}.bookfast-action-button-primary:hover:not([disabled]),vaadin-button[theme~="primary"].bookfast-action-button:hover:not([disabled]){filter: brightness(1.06);box-shadow: 0 0 0 1px color-mix(in srgb,var(--lumo-primary-color,#2563eb) 35%,transparent)}.bookfast-action-button-success-subtle,.bookfast-action-button-danger-subtle{--vaadin-button-border-width: 1px;--vaadin-button-border-radius: var(--lumo-border-radius-m,0.25rem);--vaadin-button-background: #ffffff;border: 1px solid var(--lumo-contrast-20pct);background: #ffffff;transition: background-color 0.12s ease,border-color 0.12s ease,box-shadow 0.12s ease}.bookfast-action-button-success-subtle:hover:not([disabled]),.bookfast-action-button-success-subtle[focus-ring]:not([disabled]){--vaadin-button-background: color-mix(in srgb,var(--lumo-success-color) 16%,#ffffff);background: color-mix(in srgb,var(--lumo-success-color) 16%,#ffffff);border-color: var(--lumo-success-color);box-shadow: 0 0 0 1px color-mix(in srgb,var(--lumo-success-color) 35%,transparent)}.bookfast-action-button-success-subtle:active:not([disabled]){--vaadin-button-background: color-mix(in srgb,var(--lumo-success-color) 24%,#ffffff);background: color-mix(in srgb,var(--lumo-success-color) 24%,#ffffff)}.bookfast-action-button-danger-subtle:hover:not([disabled]),.bookfast-action-button-danger-subtle[focus-ring]:not([disabled]){--vaadin-button-background: color-mix(in srgb,var(--lumo-error-color) 16%,#ffffff);background: color-mix(in srgb,var(--lumo-error-color) 16%,#ffffff);border-color: var(--lumo-error-color);box-shadow: 0 0 0 1px color-mix(in srgb,var(--lumo-error-color) 35%,transparent)}.bookfast-action-button-danger-subtle:active:not([disabled]){--vaadin-button-background: color-mix(in srgb,var(--lumo-error-color) 24%,#ffffff);background: color-mix(in srgb,var(--lumo-error-color) 24%,#ffffff)}.bookfast-action-button-success-subtle{--vaadin-button-text-color: var(--lumo-success-text-color)}.bookfast-action-button-danger-subtle{--vaadin-button-text-color: var(--lumo-error-text-color)}.avatar-photo-actions-hint{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-s,0.875rem)}.client-medical-flags-grid{width: 100%;display: grid;grid-template-columns: minmax(0,1fr);row-gap: var(--lumo-space-s);column-gap: var(--lumo-space-m)}.client-medical-allergy-block{row-gap: var(--lumo-space-xs)}.client-medical-allergy-block + .client-medical-allergy-block{margin-top: var(--lumo-space-m)}.client-card-dialog-footer{width: 100%;box-sizing: border-box;flex-wrap: wrap;row-gap: var(--lumo-space-s)}@media (max-width: 640px){.avatar-photo-section{flex-direction: column;align-items: stretch;gap: var(--lumo-space-s);width: 100%;min-width: 0;box-sizing: border-box}.avatar-photo-block{width: 100%;display: flex;align-items: center;justify-content: center;box-sizing: border-box}.avatar-photo-actions{width: 100%;min-width: 0;max-width: 100%;box-sizing: border-box}.avatar-photo-actions-hint{word-break: break-word}.avatar-photo-action-buttons{width: 100%;min-width: 0;max-width: 100%;display: flex;flex-direction: column;align-items: stretch;gap: var(--lumo-space-s);box-sizing: border-box}.avatar-photo-action-buttons vaadin-upload,.avatar-photo-action-buttons vaadin-button{width: 100%;min-width: 0;max-width: 100%;flex: none;box-sizing: border-box}.avatar-photo-upload{width: 100%;min-width: 0;display: block}vaadin-dialog.bookfast-resizable-dialog::part(overlay){width: 100vw !important;max-width: 100vw !important;height: 100dvh !important;max-height: 100dvh !important;display: flex;flex-direction: column;box-sizing: border-box}vaadin-dialog.bookfast-resizable-dialog::part(header),vaadin-dialog.bookfast-resizable-dialog::part(footer){flex-shrink: 0}vaadin-dialog.bookfast-resizable-dialog::part(content){flex: 1 1 auto;min-height: 0;overflow: auto;overflow-x: hidden;padding: var(--lumo-space-m)}vaadin-dialog.bookfast-resizable-dialog::part(footer){padding-inline: var(--lumo-space-m);padding-bottom: max(var(--lumo-space-m),env(safe-area-inset-bottom,0px))}.client-card-dialog-footer{flex-direction: column;align-items: stretch;flex-wrap: nowrap}.client-card-dialog-footer-spacer{display: none !important}.client-card-dialog-footer vaadin-button{width: 100%;max-width: 100%;flex: 0 0 auto;margin: 0}.care-plan-dialog-footer{flex-direction: column;align-items: stretch;flex-wrap: nowrap}.care-plan-dialog-footer-spacer{display: none !important}.care-plan-dialog-footer vaadin-button{width: 100%;max-width: 100%;flex: 0 0 auto;margin: 0}.clients-view .clients-view-detail-bar{padding-inline: 0;border-radius: var(--lumo-border-radius-s)}.clients-view-detail-info{width: 100%;max-width: 100%;align-self: stretch}.clients-view-detail-primary,.clients-view-detail-care{width: 100%;max-width: 100%}.clients-view-detail-actions{flex-direction: column;align-items: stretch;flex-wrap: nowrap;width: 100%;max-width: 100%;min-width: 0}.clients-view-detail-actions vaadin-button{width: 100%;max-width: 100%;min-width: 0;flex: 0 0 auto;margin: 0;box-sizing: border-box}.care-link-bar-actions{flex-direction: column;align-items: stretch}.care-link-bar-actions vaadin-button{width: 100%;max-width: 100%;flex: 0 0 auto}.care-plan-segment-column{width: 100%}.care-plan-segment-columns{flex-direction: column}}@media (min-width: 641px) and (max-width: 1024px){vaadin-dialog.bookfast-resizable-dialog::part(overlay){width: min(92vw,52rem);max-width: 92vw;max-height: 96dvh}vaadin-dialog.bookfast-resizable-dialog::part(content){padding: var(--lumo-space-m)}vaadin-dialog.bookfast-resizable-dialog::part(footer){padding-inline: var(--lumo-space-m);padding-bottom: max(var(--lumo-space-s),env(safe-area-inset-bottom,0px))}.client-card-dialog-footer{flex-direction: row;align-items: center;flex-wrap: wrap}.client-card-dialog-footer-spacer{display: block}.care-plan-dialog-footer{flex-wrap: wrap;align-items: center}.care-plan-dialog-footer-spacer{display: none !important}.care-plan-dialog-footer vaadin-button{flex: 1 1 calc(50% - var(--lumo-space-s));min-width: 9rem;max-width: 100%}.clients-view .clients-view-detail-bar{padding-inline: 0}.clients-view-detail-info{width: 100%;max-width: 100%;align-self: stretch}.clients-view-detail-primary,.clients-view-detail-care{width: 100%;max-width: 100%}.clients-view-detail-actions{width: 100%;max-width: 100%;min-width: 0;align-items: stretch}.clients-view-detail-actions vaadin-button{flex: 1 1 0;min-width: 0;max-width: 100%;box-sizing: border-box}.care-link-bar-actions vaadin-button{flex: 1 1 calc(33.333% - var(--lumo-space-s));min-width: 7rem}}@media (min-width: 1025px){.client-medical-flags-grid{grid-template-columns: repeat(2,minmax(0,1fr))}vaadin-dialog.bookfast-resizable-dialog::part(overlay){width: min(72vw,64rem);max-width: 72vw;max-height: 92vh}vaadin-dialog.bookfast-resizable-dialog::part(content){padding: var(--lumo-space-l)}vaadin-dialog.bookfast-resizable-dialog::part(footer){padding-inline: var(--lumo-space-l)}}.irreversible-confirm-dialog-warning{flex-shrink: 0;margin-top: 0.1rem;--vaadin-icon-color: var(--lumo-error-color)}.irreversible-confirm-dialog-message{line-height: var(--lumo-line-height-m);white-space: pre-wrap;overflow-wrap: anywhere}.clients-view{width: 100%;min-width: 0;box-sizing: border-box}.clients-view-grid{width: 100%;max-width: 100%;min-width: 0;box-sizing: border-box}.clients-view-detail-bar{width: 100%;max-width: 100%;min-width: 0;box-sizing: border-box;margin-top: var(--lumo-space-s);padding: var(--lumo-space-m);background: var(--lumo-base-color);border: 1px solid var(--lumo-contrast-20pct);border-radius: var(--lumo-border-radius-m);box-shadow: 0 1px 2px rgb(15 23 42 / 0.04)}.clients-view-detail-bar>vaadin-vertical-layout{width: 100%;max-width: 100%;min-width: 0;box-sizing: border-box}.clients-view-detail-info{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-s);width: 100%;min-width: 0}.clients-view-detail-primary{display: block;width: 100%;max-width: 100%;min-width: 0;box-sizing: border-box;color: var(--lumo-body-text-color);font-size: var(--lumo-font-size-m);word-break: break-word;overflow-wrap: anywhere}.clients-view-detail-care{display: block;width: 100%;max-width: 100%;min-width: 0}.clients-view-detail-actions{width: 100%;min-width: 0;box-sizing: border-box;flex-wrap: wrap;row-gap: var(--lumo-space-s)}.care-plan-dialog-footer{width: 100%;min-width: 0;box-sizing: border-box;flex-wrap: wrap;row-gap: var(--lumo-space-s)}.care-plan-dialog-footer-spacer{flex: 1 1 auto;min-width: 0}.care-link-bar-actions{width: 100%;min-width: 0;box-sizing: border-box;flex-wrap: wrap;row-gap: var(--lumo-space-s);align-items: stretch}.care-link-bar-actions vaadin-button{flex: 1 1 0;min-width: min(100%,6.5rem);min-height: var(--lumo-size-m,2.25rem);box-sizing: border-box;margin: 0}.care-link-bar-actions vaadin-button.bookfast-action-button-primary{--vaadin-button-border-width: 1px;--vaadin-button-border-color: transparent}.care-link-bar-actions vaadin-button.bookfast-action-button-secondary,.care-link-bar-actions vaadin-button.bookfast-action-button-danger-subtle{--vaadin-button-border-width: 1px}.care-plan-dialog-body{min-height: 0}.care-plan-dialog-subtitle{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-s)}.care-plan-dialog-status{font-size: var(--lumo-font-size-s);font-weight: 600}.care-plan-dialog-hint{margin-top: var(--lumo-space-xs);padding: var(--lumo-space-s) var(--lumo-space-m);font-size: var(--lumo-font-size-s);line-height: var(--lumo-line-height-s);color: var(--lumo-body-text-color);background: var(--lumo-contrast-5pct);border: 1px solid var(--lumo-contrast-10pct);border-radius: var(--lumo-border-radius-m)}.care-plan-category-title{font-size: var(--lumo-font-size-m);font-weight: 700;line-height: var(--lumo-line-height-xs);color: var(--lumo-header-text-color)}.care-plan-accordion{display: flex;flex-direction: column;gap: var(--lumo-space-xs)}.care-plan-accordion vaadin-accordion-panel{border: 1px solid transparent;border-radius: var(--lumo-border-radius-m);box-sizing: border-box;overflow: hidden}.care-plan-accordion vaadin-accordion-panel[opened]{border-color: var(--lumo-contrast-20pct);background: var(--lumo-base-color)}.care-plan-accordion vaadin-accordion-panel[opened]::part(content){padding-inline: var(--lumo-space-m);padding-bottom: var(--lumo-space-m)}.care-plan-segment-column{flex: 1;min-width: 0}.care-plan-segment-header{width: 100%;min-width: 0;flex-direction: row;flex-wrap: nowrap;align-items: center}.care-plan-segment-title{margin: 0;flex: 1 1 auto;min-width: 0;font-size: var(--lumo-font-size-s);font-weight: 500;line-height: var(--lumo-line-height-xs);color: var(--lumo-header-text-color)}.care-plan-add-product{flex-shrink: 0;white-space: nowrap}.care-plan-product-card{padding: var(--lumo-space-xs);background: var(--lumo-contrast-5pct);border-radius: var(--lumo-border-radius-s);flex-direction: row;flex-wrap: nowrap;align-items: center}.care-plan-product-name{flex: 1 1 auto;min-width: 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.care-plan-product-actions{flex-direction: row;flex-wrap: nowrap;flex-shrink: 0;align-items: center}.care-plan-product-card vaadin-button,.care-plan-product-actions vaadin-button{flex: 0 0 auto;width: auto;min-width: 0;align-self: center}.care-plan-product-preview{flex-shrink: 0;border-radius: var(--lumo-border-radius-s);object-fit: cover;display: block}.care-plan-product-preview-wrap{flex-shrink: 0;line-height: 0}.care-plan-product-preview-wrap--clickable{cursor: pointer}.care-manual-photo-preview{object-fit: cover;border-radius: var(--lumo-border-radius-m);border: 1px solid var(--lumo-contrast-10pct)}.care-manual-photo-hint{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-s)}.care-link-bar vaadin-text-field{width: 100%}vaadin-date-picker.bookfast-date-picker,vaadin-date-time-picker.bookfast-date-picker{--vaadin-date-picker-week-divider-color: var(--lumo-contrast-30pct)}.schedule-period-label{--vaadin-field-default-width: auto;width: auto;min-width: min(16rem,100%);max-width: min(24rem,100%);flex: 0 0 auto}.schedule-toolbar{min-width: 0;max-width: 100%;overflow: hidden}.schedule-toolbar vaadin-tabs{max-width: 100%;overflow-x: auto}.schedule-period-label::part(input-field){font-weight: 600;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.schedule-toolbar-dates,.schedule-toolbar-action-row{--schedule-toolbar-gap: var(--lumo-space-s);gap: var(--schedule-toolbar-gap);max-width: 100%;box-sizing: border-box}.schedule-toolbar-dates{flex-wrap: wrap}.schedule-toolbar-dates>*,.schedule-toolbar-action-row>*{margin: 0;flex-shrink: 0}.schedule-toolbar-period-controls vaadin-date-picker,.schedule-toolbar-period-controls .schedule-period-label{flex-shrink: 1;min-width: 0}@media (max-width: 1024px){.schedule-toolbar-dates{flex-direction: column;align-items: stretch}.schedule-toolbar-dates>.schedule-toolbar-nav-controls,.schedule-toolbar-dates>.schedule-toolbar-period-controls{flex-shrink: 1;min-width: 0;max-width: 100%}.schedule-toolbar-nav-controls,.schedule-toolbar-period-controls{display: flex;flex-direction: row;align-items: center;gap: var(--schedule-toolbar-gap);width: 100%;box-sizing: border-box;min-width: 0;overflow: visible}.schedule-toolbar-period-controls .schedule-period-label{flex: 1 1 auto;min-width: 0;max-width: none;width: auto}.schedule-toolbar-period-controls vaadin-date-picker{flex: 0 0 auto;--vaadin-field-default-width: min(9.5rem,42vw);max-width: 42vw}.schedule-period-label{min-width: 0}.schedule-toolbar-nav-controls .schedule-status-filter-trigger-host{margin-left: auto;flex-shrink: 0;max-width: min(12rem,48vw)}.schedule-status-filter-trigger::part(label){overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.schedule-toolbar-today,.schedule-toolbar-prev,.schedule-toolbar-next,.schedule-toolbar-dates vaadin-date-picker,.schedule-toolbar-dates .schedule-period-label,.schedule-toolbar-dates .schedule-status-filter-trigger-host{order: unset}.schedule-toolbar-action-row{flex-wrap: wrap}.schedule-toolbar-action-row vaadin-combo-box{flex: 1 1 12rem;min-width: 0;max-width: 100%}.schedule-calendar-host{overflow-x: auto;overflow-y: hidden;-webkit-overflow-scrolling: touch}.schedule-week-grid{grid-template-columns: repeat(7,minmax(0,1fr));width: 100%;min-width: 0;max-width: 100%;gap: 2px}.schedule-week-column{min-width: 0}.schedule-week-column-header{padding: var(--lumo-space-xs) 1px;font-size: 0.625rem;line-height: 1.15;text-align: center}.schedule-week-column-body{padding: var(--lumo-space-xs)}}@media (min-width: 1025px){.schedule-toolbar-dates{display: flex;flex-wrap: wrap;align-items: center}.schedule-toolbar-nav-controls,.schedule-toolbar-period-controls{display: contents}.schedule-toolbar-today{order: 1}.schedule-toolbar-prev{order: 2}.schedule-toolbar-next{order: 3}.schedule-toolbar-dates vaadin-date-picker{order: 4}.schedule-toolbar-dates .schedule-period-label{order: 5}.schedule-toolbar-dates .schedule-status-filter-trigger-host{order: 6}}.schedule-status-filter-trigger-host{display: inline-flex;align-items: center;gap: var(--lumo-space-xs);flex-shrink: 0}.schedule-status-filter-trigger-wrap{position: relative;display: inline-flex;flex-shrink: 0}.schedule-status-filter-help{flex-shrink: 0;margin: 0;padding: 0}.schedule-status-filter-badge{position: absolute;top: 0;right: 0;min-width: 1.125rem;height: 1.125rem;padding: 0 0.2rem;border-radius: 999px;background: var(--lumo-primary-color);color: var(--lumo-primary-contrast-color);font-size: 0.625rem;font-weight: 700;line-height: 1.125rem;text-align: center;pointer-events: none;box-sizing: border-box;transform: translate(25%,-25%)}.schedule-toolbar-action-row vaadin-combo-box{min-width: min(14rem,70vw)}.schedule-calendar-host{flex: 1;overflow: auto;touch-action: pan-y pinch-zoom;--schedule-day-header-bg: var(--lumo-primary-color-10pct);--schedule-day-body-bg: var(--lumo-contrast-5pct);--schedule-weekend-body-bg: var(--bookfast-weekend-bg)}.schedule-day-grid{display: flex;flex-direction: column;gap: var(--lumo-space-xs)}.schedule-day-slot{display: grid;grid-template-columns: 4rem 1fr;gap: var(--lumo-space-s);padding: var(--lumo-space-xs);border-radius: var(--lumo-border-radius-m)}.schedule-day-slot-time{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-s);cursor: pointer;border-radius: var(--lumo-border-radius-s)}.schedule-day-slot-events--empty{cursor: pointer;min-height: 1.5rem;border-radius: var(--lumo-border-radius-s)}.schedule-day-slot-events{display: flex;flex-direction: column;gap: var(--lumo-space-xs)}.schedule-week-grid{display: grid;grid-template-columns: repeat(7,minmax(0,1fr));gap: var(--lumo-space-s);min-height: 20rem}.schedule-week-column{border: 1px solid var(--lumo-contrast-10pct);border-radius: var(--lumo-border-radius-m);display: flex;flex-direction: column;min-height: 16rem;overflow: hidden;background: var(--lumo-base-color)}.schedule-week-column.schedule-day-cell--today,.schedule-month-cell.schedule-day-cell--today{border: 2px solid var(--lumo-primary-color);box-shadow: 0 0 0 1px color-mix(in srgb,var(--lumo-primary-color) 40%,transparent)}.schedule-day-cell--today .schedule-week-column-header,.schedule-day-cell--today .schedule-month-cell-header{font-weight: 700;color: var(--lumo-primary-text-color)}.schedule-day-header,.schedule-week-column-header,.schedule-month-cell-header{background: var(--schedule-day-header-bg)}.schedule-week-column-header{font-weight: 600;padding: var(--lumo-space-s);border-bottom: 1px solid var(--lumo-contrast-10pct)}.schedule-week-column-header--nav,.schedule-month-cell-header--nav{cursor: pointer}.schedule-week-column-body{padding: var(--lumo-space-s);display: flex;flex-direction: column;gap: var(--lumo-space-xs);flex: 1;background: var(--schedule-day-body-bg)}.schedule-day-cell--weekend .schedule-week-column-body,.schedule-day-cell--weekend .schedule-month-cell-previews{background: var(--schedule-weekend-body-bg)}.schedule-cell-bookable{cursor: pointer}.schedule-week-column.schedule-cell-bookable:active,.schedule-month-cell.schedule-cell-bookable:active{filter: brightness(0.98)}.schedule-month-grid{display: grid;grid-template-columns: repeat(7,minmax(0,1fr));gap: var(--lumo-space-xs)}.schedule-month-cell{min-height: 6.5rem;border: 1px solid var(--lumo-contrast-10pct);border-radius: var(--lumo-border-radius-m);display: flex;flex-direction: column;gap: 0;overflow: hidden;background: var(--lumo-base-color)}.schedule-month-cell-header{display: flex;align-items: center;justify-content: flex-start;gap: 2px;width: 100%;min-width: 0;box-sizing: border-box;padding: 2px 4px;border-bottom: 1px solid var(--lumo-contrast-10pct)}.schedule-month-cell--outside{opacity: 0.55}.schedule-month-cell-day{font-weight: 600;font-size: var(--lumo-font-size-m);line-height: 1.2;flex: 0 0 auto}.schedule-month-cell-count{flex: 0 0 auto;margin-left: auto;font-size: 0.625rem;font-weight: 600;color: var(--lumo-secondary-text-color);background: var(--lumo-contrast-5pct);border-radius: var(--lumo-border-radius-s);padding: 1px 3px;line-height: 1.3;white-space: nowrap;letter-spacing: -0.02em}.schedule-month-cell-previews{display: flex;flex-direction: column;gap: 2px;flex: 1;padding: var(--lumo-space-xs) var(--lumo-space-s);font-size: var(--lumo-font-size-xs);background: var(--schedule-day-body-bg)}.schedule-month-preview-line .schedule-appointment-chip-time{flex-shrink: 0}.schedule-month-preview-line .schedule-appointment-chip-client{flex: 1 1 auto;min-width: 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.schedule-month-preview-overflow{display: block;text-align: center;color: var(--lumo-secondary-text-color);font-weight: 600;font-size: var(--lumo-font-size-xs);line-height: 1.2;white-space: nowrap;padding: 0.05rem 0;cursor: default;user-select: none}.schedule-weekend-date{color: var(--lumo-error-color)}.schedule-appointment-chip,.schedule-month-preview-line{display: flex;align-items: baseline;gap: 0.35rem;--schedule-chip-accent: var(--lumo-primary-color);--schedule-chip-bg: var(--lumo-primary-color-10pct);box-sizing: border-box;border: 1px solid transparent;border-left: 3px solid var(--schedule-chip-accent);border-radius: var(--lumo-border-radius-s)}.schedule-appointment-chip{flex-wrap: nowrap;align-items: center;background: var(--schedule-chip-bg);padding: var(--lumo-space-xs);font-size: var(--lumo-font-size-s);cursor: pointer;width: 100%;box-sizing: border-box;user-select: none;-webkit-user-select: none;-webkit-touch-callout: none;touch-action: manipulation}.schedule-appointment-chip--interactive,.schedule-appointment-chip--interactive *{user-select: none;-webkit-user-select: none;-webkit-touch-callout: none}.schedule-appointment-chip-content{flex: 1 1 auto;min-width: 0;display: flex;flex-wrap: wrap;align-items: baseline;gap: 0.35rem}.schedule-month-preview-line{flex-wrap: nowrap;min-width: 0;width: 100%;overflow: hidden;cursor: pointer;background: var(--schedule-chip-bg);user-select: none;-webkit-user-select: none;-webkit-touch-callout: none;touch-action: manipulation}.schedule-appointment-chip-time{color: var(--lumo-secondary-text-color);font-variant-numeric: tabular-nums;flex-shrink: 0}.schedule-appointment-chip-client{font-weight: 600;min-width: 0}.schedule-appointment-chip-separator{color: var(--lumo-contrast-30pct);flex-shrink: 0;user-select: none}.schedule-appointment-chip-master{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-xs);min-width: 0}.schedule-appointment-chip--status-scheduled,.schedule-month-preview-line.schedule-appointment-chip--status-scheduled{--schedule-chip-accent: var(--lumo-primary-color);--schedule-chip-bg: var(--lumo-primary-color-10pct)}.schedule-appointment-chip--overdue,.schedule-month-preview-line.schedule-appointment-chip--overdue{--schedule-chip-accent: var(--lumo-warning-color);--schedule-chip-bg: var(--lumo-warning-color-10pct)}.schedule-month-preview-line.schedule-appointment-chip--overdue{padding: var(--lumo-space-xs)}.schedule-appointment-chip--status-cancelled,.schedule-month-preview-line.schedule-appointment-chip--status-cancelled{--schedule-chip-accent: var(--lumo-contrast-50pct);--schedule-chip-bg: var(--lumo-contrast-10pct);opacity: 0.9}.schedule-appointment-chip--status-no-show,.schedule-month-preview-line.schedule-appointment-chip--status-no-show{--schedule-chip-accent: var(--bookfast-status-no-show-accent);--schedule-chip-bg: var(--bookfast-status-no-show-bg);opacity: 0.92}.schedule-appointment-chip-conflict-badge{flex-shrink: 0;align-self: center;margin-left: auto;min-width: 1.1rem;padding: 0 0.3rem;font-size: var(--lumo-font-size-xs);font-weight: 700;line-height: 1.25;text-align: center;color: var(--lumo-error-contrast-color);background: var(--lumo-error-color);border-radius: var(--lumo-border-radius-s)}.schedule-appointment-chip-conflict-dot{position: absolute;top: 2px;right: 2px;width: 4px;height: 4px;border-radius: 50%;background: var(--lumo-error-color);pointer-events: none;flex-shrink: 0}.schedule-appointment-chip--has-conflict-compact{position: relative;border-left: 4px solid var(--lumo-error-color)}.schedule-appointment-chip--conflict-outside.schedule-appointment-chip--has-conflict-compact{border-left: 4px dashed var(--lumo-error-color)}.schedule-day-grid .schedule-appointment-chip--has-conflict-compact-day{flex-wrap: wrap;align-items: flex-start}.schedule-day-grid .schedule-appointment-chip--has-conflict-compact-day .schedule-appointment-chip-conflict-reason{flex: 0 0 100%;width: 100%;margin-top: 0.15rem;font-size: var(--lumo-font-size-xs);line-height: 1.2;font-weight: 600;color: var(--lumo-error-color)}.schedule-appointment-chip--status-completed,.schedule-month-preview-line.schedule-appointment-chip--status-completed{--schedule-chip-accent: var(--lumo-success-color);--schedule-chip-bg: var(--lumo-success-color-10pct)}vaadin-checkbox.schedule-filter-status--scheduled::part(label){color: var(--lumo-primary-color)}vaadin-checkbox.schedule-filter-status--cancelled::part(label){color: var(--lumo-contrast-70pct)}vaadin-checkbox.schedule-filter-status--no-show::part(label){color: var(--bookfast-status-no-show-accent)}vaadin-checkbox.schedule-filter-status--completed::part(label){color: var(--lumo-success-color)}vaadin-checkbox.schedule-filter-status--conflicts::part(label){color: var(--lumo-error-color)}.schedule-month-preview-line.schedule-appointment-chip--status-cancelled,.schedule-month-preview-line.schedule-appointment-chip--status-no-show,.schedule-month-preview-line.schedule-appointment-chip--status-completed{padding: var(--lumo-space-xs)}@media (hover: hover) and (pointer: fine){.schedule-day-slot-time:hover,.schedule-day-slot-events--empty:hover{background: var(--lumo-contrast-5pct)}.schedule-week-column.schedule-cell-bookable:hover,.schedule-month-cell.schedule-cell-bookable:hover{outline: 2px solid var(--lumo-primary-color-50pct);outline-offset: -2px}.schedule-appointment-chip:hover,.schedule-month-preview-line:hover{background: transparent;border: 1px solid var(--schedule-chip-accent);border-left: 3px solid var(--schedule-chip-accent)}}@media (max-width: 1024px){.schedule-week-grid .schedule-appointment-chip-client,.schedule-week-grid .schedule-appointment-chip-separator,.schedule-week-grid .schedule-appointment-chip-master,.schedule-month-grid .schedule-appointment-chip-client,.schedule-month-grid .schedule-appointment-chip-separator,.schedule-month-grid .schedule-appointment-chip-master{display: none !important}.schedule-week-grid .schedule-appointment-chip,.schedule-month-grid .schedule-month-preview-line{display: block;text-align: center;white-space: nowrap;overflow: hidden;gap: 0;flex-wrap: nowrap;padding: 0.2rem 0.15rem;line-height: 1.2}.schedule-week-grid .schedule-appointment-chip-content,.schedule-month-grid .schedule-appointment-chip-content{display: block}.schedule-week-grid .schedule-appointment-chip--has-conflict-compact,.schedule-month-grid .schedule-appointment-chip--has-conflict-compact{padding-right: 0.45rem}.schedule-week-grid .schedule-appointment-chip--has-conflict .schedule-appointment-chip-conflict-badge,.schedule-month-grid .schedule-appointment-chip--has-conflict .schedule-appointment-chip-conflict-badge,.schedule-month-grid .schedule-month-preview-line.schedule-appointment-chip--has-conflict .schedule-appointment-chip-conflict-badge{display: none !important}.schedule-week-grid .schedule-appointment-chip--has-conflict,.schedule-month-grid .schedule-appointment-chip--has-conflict,.schedule-month-grid .schedule-month-preview-line.schedule-appointment-chip--has-conflict{position: relative}.schedule-week-grid .schedule-appointment-chip--has-conflict:not(:has(.schedule-appointment-chip-conflict-dot))::after,.schedule-month-grid .schedule-appointment-chip--has-conflict:not(:has(.schedule-appointment-chip-conflict-dot))::after,.schedule-month-grid .schedule-month-preview-line.schedule-appointment-chip--has-conflict:not(:has(.schedule-appointment-chip-conflict-dot))::after{content: "";position: absolute;top: 2px;right: 2px;width: 4px;height: 4px;border-radius: 50%;background: var(--lumo-error-color);pointer-events: none}.schedule-week-grid .schedule-appointment-chip-time,.schedule-month-grid .schedule-appointment-chip-time{display: block;font-weight: 600;color: var(--lumo-body-text-color);font-size: 0.625rem}.schedule-week-grid .schedule-appointment-chip--overdue .schedule-appointment-chip-time,.schedule-month-grid .schedule-appointment-chip--overdue .schedule-appointment-chip-time{color: var(--lumo-warning-color)}.schedule-week-grid .schedule-appointment-chip--interactive,.schedule-week-grid .schedule-appointment-chip--interactive *,.schedule-month-grid .schedule-appointment-chip--interactive,.schedule-month-grid .schedule-appointment-chip--interactive *,.schedule-month-grid .schedule-month-preview-line.schedule-appointment-chip--interactive,.schedule-month-grid .schedule-month-preview-line.schedule-appointment-chip--interactive *{user-select: none !important;-webkit-user-select: none !important;-webkit-touch-callout: none !important}}.schedule-card-info-row{line-height: var(--lumo-line-height-m)}.schedule-card-dialog-body{width: fit-content;max-width: 100%;min-width: 0;box-sizing: border-box}@media (min-width: 1025px){vaadin-dialog.schedule-card-dialog::part(overlay){width: fit-content !important;max-width: 92vw !important;height: auto !important}vaadin-dialog.schedule-card-dialog::part(content){flex: 0 0 auto !important;width: auto}vaadin-dialog.schedule-card-dialog::part(footer){flex: 0 0 auto !important;width: auto}.schedule-card-dialog-footer{flex-wrap: nowrap}}.schedule-card-info-label{color: var(--lumo-secondary-text-color)}.schedule-card-conflict-value{color: var(--lumo-error-color);font-weight: 600}.schedule-card-dialog-footer{display: flex;flex-wrap: wrap;align-items: center;gap: var(--lumo-space-s);width: fit-content;max-width: 100%;box-sizing: border-box}@media (max-width: 1024px){.schedule-card-dialog-footer vaadin-button{flex: 1 1 calc(50% - var(--lumo-space-s));min-width: 0;max-width: 100%;margin: 0}}.search-match-row{display: inline-flex;flex-wrap: wrap;align-items: baseline;gap: 0.2rem;line-height: var(--lumo-line-height-s);width: 100%;max-width: 100%;min-width: 0}.search-match-text{font-weight: 400}.search-match-separator{color: var(--lumo-contrast-40pct)}.search-match-phone{color: var(--lumo-secondary-text-color);font-size: var(--lumo-font-size-s)}.search-match-highlight{font-weight: 700;font-synthesis: weight;color: var(--lumo-primary-text-color);background: var(--lumo-primary-color-15pct);border-radius: 2px}vaadin-combo-box-overlay.search-match-overlay .search-match-highlight,.search-match-overlay .search-match-highlight,vaadin-grid .search-match-highlight{font-weight: 700 !important;font-synthesis: weight !important;color: var(--lumo-primary-text-color) !important;background: var(--lumo-primary-color-15pct) !important}.dashboard-today-appointments{margin-top: var(--lumo-space-m)}.dashboard-appointment-line{padding: var(--lumo-space-xs) 0;border-bottom: 1px solid var(--lumo-contrast-10pct)}.schedule-booking-timeline-title{font-weight: 600;font-size: var(--lumo-font-size-s);color: var(--lumo-secondary-text-color)}.schedule-booking-procedures-details{width: 100%}.schedule-booking-procedures-list{max-height: 14rem;overflow-y: auto}.schedule-booking-client-block{width: 100%}.schedule-booking-client-label-row{margin-bottom: calc(var(--lumo-space-xs) * 0.5)}.schedule-booking-client-label::after{content: var(--lumo-required-field-indicator,"\2022");color: var(--lumo-required-field-indicator-color,var(--lumo-error-color));margin-inline-start: var(--lumo-space-xs);font-weight: 600}.schedule-booking-client-row{align-items: flex-start}.schedule-booking-client-row vaadin-combo-box{position: relative}.schedule-booking-client-row vaadin-combo-box::part(error-message){position: absolute;left: 0;right: 0;top: 100%;margin-top: calc(var(--lumo-space-xs) * 0.5)}.schedule-booking-client-row vaadin-combo-box[invalid]{margin-bottom: calc(var(--lumo-font-size-xs) * var(--lumo-line-height-xs) + var(--lumo-space-s))}.schedule-booking-new-client-button{flex-shrink: 0;align-self: flex-start}.booking-day-timeline{display: flex;flex-direction: column;gap: var(--lumo-space-xs);width: 100%}.booking-day-timeline-axis{display: flex;justify-content: space-between;font-size: var(--lumo-font-size-xs);color: var(--lumo-secondary-text-color)}.booking-day-timeline-track{position: relative;height: 1.75rem;border: 1px solid var(--lumo-contrast-20pct);border-radius: var(--lumo-border-radius-m);background: var(--lumo-contrast-5pct);cursor: crosshair;overflow: hidden}.booking-day-timeline-track--dragging{cursor: grabbing}.booking-day-timeline-work{position: absolute;top: 0;bottom: 0;background: var(--lumo-contrast-10pct);border-radius: 2px;pointer-events: none}.booking-day-timeline-busy{position: absolute;top: 0.35rem;bottom: 0.35rem;background: var(--lumo-primary-color-50pct);border: 1px solid var(--lumo-primary-color);border-radius: var(--lumo-border-radius-s);pointer-events: none;min-width: 2px}.booking-day-timeline-selection{position: absolute;top: 0.2rem;bottom: 0.2rem;border-radius: var(--lumo-border-radius-s);min-width: 2px;box-sizing: border-box;cursor: crosshair;pointer-events: auto;touch-action: none;z-index: 3}.booking-day-timeline-selection--dragging{cursor: grabbing;z-index: 4}.booking-day-timeline-selection--ok{background: color-mix(in srgb,var(--lumo-success-color) 35%,transparent);border: 2px solid var(--lumo-success-color)}.booking-day-timeline-selection--invalid{background: color-mix(in srgb,var(--lumo-error-color) 28%,transparent);border: 2px solid var(--lumo-error-color)}.booking-day-timeline-empty-hint{font-size: var(--lumo-font-size-xs);color: var(--lumo-secondary-text-color)}.booking-free-interval-panel{width: 100%}.booking-free-interval-chips{display: grid;grid-template-columns: repeat( auto-fill,minmax(min(100%,var(--booking-free-interval-chip-width,12rem)),var(--booking-free-interval-chip-width,12rem)) );gap: 0.5rem;width: 100%}.booking-free-interval-chip{padding: 0.45rem 0.65rem;border-radius: var(--lumo-border-radius-m);border: 2px solid var(--lumo-primary-color);background: var(--lumo-primary-color-10pct);color: var(--lumo-primary-text-color);font-size: var(--lumo-font-size-s);cursor: pointer;user-select: none;line-height: 1.3;width: 100%;min-width: 0;max-width: 100%;box-sizing: border-box;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.booking-free-interval-chips--full-width{grid-template-columns: 1fr}.booking-free-interval-chips--full-width .booking-free-interval-chip{white-space: normal;overflow: visible;text-overflow: unset;word-break: break-word}.booking-free-interval-chips--measure{display: block}.booking-free-interval-chips--measure .booking-free-interval-chip{display: inline-block;width: max-content;max-width: none;margin-bottom: 0.5rem;margin-right: 0.5rem}.booking-free-interval-chip:hover{background: var(--lumo-primary-color-50pct)}.booking-free-interval-chip--short{border-style: dashed;border-color: var(--lumo-warning-color);background: var(--lumo-warning-color-10pct);opacity: 1}.booking-free-interval-chip--short:hover{background: var(--lumo-warning-color-50pct)}.booking-free-interval-empty{font-size: var(--lumo-font-size-s);color: var(--lumo-secondary-text-color)}html,body{background: var(--bookfast-page-bg,#e8eef4)}vaadin-app-layout.app-shell-layout,vaadin-app-layout.app-shell-layout::part(content),vaadin-app-layout::part(content){background: var(--bookfast-page-bg,#e8eef4) !important}.bookfast-content-view,.clients-view{background: var(--bookfast-page-bg,#e8eef4) !important}.bookfast-content-view{padding: var(--lumo-space-m);box-sizing: border-box;gap: var(--lumo-space-m);min-width: 0;max-width: 100%}.bookfast-section-toolbar,.clients-view-toolbar,.bookfast-content-view>vaadin-grid,.clients-view vaadin-grid,.clients-view-grid,.clients-view-detail-bar,.schedule-calendar-host,.dashboard-today-appointments{background: var(--lumo-base-color) !important;border: 1px solid var(--lumo-contrast-20pct);border-radius: 12px;box-shadow: 0 1px 3px rgb(15 23 42 / 0.06)}.bookfast-section-toolbar,.clients-view-toolbar{padding: var(--lumo-space-m);box-sizing: border-box;width: 100%}.bookfast-content-view>vaadin-grid,.clients-view vaadin-grid,.schedule-calendar-host{overflow: hidden}@media (max-width: 1024px){.bookfast-content-view .schedule-calendar-host{overflow-x: auto !important;overflow-y: hidden}}vaadin-dialog-overlay::part(overlay){border-radius: 12px;border: 1px solid var(--lumo-contrast-20pct);box-shadow: 0 10px 30px -8px rgba(15,23,42,0.18);overflow: hidden}vaadin-dialog-overlay::part(content){background: var(--lumo-base-color)}.client-card-dialog-body vaadin-text-field::part(label),.client-card-dialog-body vaadin-text-area::part(label),.client-card-dialog-body vaadin-date-picker::part(label),.client-card-dialog-body vaadin-select::part(label),.client-card-dialog-body vaadin-combo-box::part(label),.client-card-personal-form vaadin-text-field::part(label),.client-card-personal-form vaadin-text-area::part(label),.client-card-personal-form vaadin-date-picker::part(label){color: var(--lumo-secondary-text-color);font-size: 0.75rem;font-weight: 500;letter-spacing: 0.04em;text-transform: uppercase}.client-card-dialog-body vaadin-text-field::part(input-field),.client-card-dialog-body vaadin-text-area::part(input-field),.client-card-dialog-body vaadin-date-picker::part(input-field),.client-card-dialog-body vaadin-select::part(input-field),.client-card-personal-form vaadin-text-field::part(input-field),.client-card-personal-form vaadin-text-area::part(input-field),.client-card-personal-form vaadin-date-picker::part(input-field){background: var(--lumo-contrast-10pct);border-radius: 10px;box-shadow: none;min-height: 2.75rem}.client-card-dialog-body vaadin-text-field[focused]::part(input-field),.client-card-dialog-body vaadin-text-area[focused]::part(input-field),.client-card-dialog-body vaadin-date-picker[focused]::part(input-field),.client-card-personal-form vaadin-text-field[focused]::part(input-field),.client-card-personal-form vaadin-text-area[focused]::part(input-field),.client-card-personal-form vaadin-date-picker[focused]::part(input-field){box-shadow: inset 0 0 0 2px var(--lumo-primary-color-50pct);background: var(--lumo-base-color)}.client-card-dialog-body vaadin-text-field[invalid]::part(input-field),.client-card-dialog-body vaadin-text-area[invalid]::part(input-field),.client-card-dialog-body vaadin-date-picker[invalid]::part(input-field),.client-card-dialog-body vaadin-select[invalid]::part(input-field),.client-card-dialog-body vaadin-combo-box[invalid]::part(input-field),.client-card-dialog-body vaadin-number-field[invalid]::part(input-field),.client-card-dialog-body vaadin-integer-field[invalid]::part(input-field),.client-card-personal-form vaadin-text-field[invalid]::part(input-field),.client-card-personal-form vaadin-text-area[invalid]::part(input-field),.client-card-personal-form vaadin-date-picker[invalid]::part(input-field){box-shadow: inset 0 0 0 1px var(--lumo-error-color)}.client-card-dialog-body vaadin-text-field[focused][invalid]::part(input-field),.client-card-dialog-body vaadin-text-area[focused][invalid]::part(input-field),.client-card-dialog-body vaadin-date-picker[focused][invalid]::part(input-field),.client-card-dialog-body vaadin-select[focused][invalid]::part(input-field),.client-card-dialog-body vaadin-combo-box[focused][invalid]::part(input-field),.client-card-dialog-body vaadin-number-field[focused][invalid]::part(input-field),.client-card-dialog-body vaadin-integer-field[focused][invalid]::part(input-field),.client-card-personal-form vaadin-text-field[focused][invalid]::part(input-field),.client-card-personal-form vaadin-text-area[focused][invalid]::part(input-field),.client-card-personal-form vaadin-date-picker[focused][invalid]::part(input-field){box-shadow: inset 0 0 0 2px var(--lumo-error-color-50pct);background: var(--lumo-base-color)}.client-card-dialog-body vaadin-tabs,vaadin-dialog-overlay vaadin-tabs{--lumo-primary-color: #2563eb}.client-card-dialog-body vaadin-tab[selected],vaadin-dialog-overlay vaadin-tab[selected]{color: var(--lumo-primary-color);font-weight: 600}.client-card-health-summary-panel{background: var(--lumo-base-color);border: 1px solid var(--lumo-contrast-20pct);border-left: 4px solid var(--lumo-contrast-20pct);border-radius: 12px;padding: var(--lumo-space-m)}.client-card-health-summary-title{color: var(--lumo-body-text-color);font-size: 0.75rem;font-weight: 600;letter-spacing: 0.04em;text-transform: uppercase}.client-summary-empty{color: var(--lumo-success-text-color);font-weight: 600;font-size: var(--lumo-font-size-m)}.client-summary-allergy,.client-summary-drug-allergy,.client-summary-flags,.client-summary-notes,.client-summary-empty{border-radius: 8px}.avatar-photo-block{border: none;background: transparent;padding: 0}.avatar-photo-placeholder{border-radius: 16px;background: var(--lumo-primary-color-10pct);border: none}.avatar-photo-placeholder-icon{color: var(--lumo-primary-color);opacity: 0.55}.avatar-photo-frame-wrap--zoomable .avatar-photo-zoom-hint{background: var(--lumo-primary-color);color: var(--lumo-primary-contrast-color);border-color: var(--lumo-primary-color)}.client-card-dialog-body .bookfast-form-field-label-row{gap: var(--lumo-space-s);margin-bottom: var(--lumo-space-s)}.client-card-dialog-body .bookfast-form-field-label{display: inline-flex;align-items: center;gap: var(--lumo-space-s);font-weight: 600;font-size: var(--lumo-font-size-l);color: var(--lumo-body-text-color)}.client-card-dialog-body .bookfast-form-field-label::before{content: "";display: inline-block;width: 4px;height: 1.1em;border-radius: 2px;background: var(--lumo-primary-color);flex-shrink: 0}.client-summary-drug-allergy .client-summary-line-label{color: var(--lumo-error-text-color)}.client-summary-allergy .client-summary-line-label{color: #c2410c}.client-summary-notes .client-summary-line-label{color: var(--lumo-primary-text-color)}