:root{--dash-bp-mobile:640px;--dash-bp-tablet:1024px;--dash-hit-area:44px;--dash-content-padding-mobile:16px;--dash-content-padding-desktop:32px;--dash-sidebar-width:240px;--dash-sidebar-mobile-width:min(85vw,320px);--dash-header-height:56px;--dash-z-backdrop:49;--dash-z-sidebar:50;--dash-z-drawer-backdrop:100;--dash-z-drawer:101}.dash-shell{display:flex;min-height:100vh;min-height:100dvh}.dash-main{flex:1 1;min-width:0;display:flex;flex-direction:column}.dash-content{width:100%;max-width:1200px;margin:0 auto;padding:var(--dash-content-padding-mobile);box-sizing:border-box}@media (min-width:1024px){.dash-content{padding:var(--dash-content-padding-desktop)}}.dash-calendar-tab{padding:12px 12px 16px}@media (min-width:1024px){.dash-calendar-tab{padding:16px 32px 24px}}@media (max-width:640px){.dash-calendar-page-title{display:none}}.dash-sidebar{width:var(--dash-sidebar-width);flex-shrink:0;height:100vh;height:100dvh;position:-webkit-sticky;position:sticky;top:0}@media (max-width:1023px){.dash-sidebar{position:fixed;inset:0 auto 0 0;width:var(--dash-sidebar-mobile-width);z-index:var(--dash-z-sidebar);transform:translateX(-100%);transition:transform .22s cubic-bezier(.32,.72,0,1);box-shadow:8px 0 24px rgba(0,0,0,.08)}.dash-sidebar[data-mobile-open=true]{transform:translateX(0)}}.dash-sidebar-close{display:none}@media (max-width:1023px){.dash-sidebar-close{display:inline-flex;align-items:center;justify-content:center;width:var(--dash-hit-area);height:var(--dash-hit-area);background:transparent;border:none;border-radius:8px;cursor:pointer;color:inherit;flex-shrink:0;margin-left:auto}.dash-sidebar-close:focus-visible,.dash-sidebar-close:hover{background:rgba(28,25,23,.06);outline:none}}.dash-backdrop{display:none}@media (max-width:1023px){.dash-backdrop{display:block;position:fixed;inset:0;background:rgba(15,23,42,.4);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:var(--dash-z-backdrop);opacity:0;pointer-events:none;transition:opacity .22s}.dash-backdrop[data-mobile-open=true]{opacity:1;pointer-events:auto}}.dash-page-header{display:flex;align-items:center;gap:12px;height:var(--dash-header-height);padding:0 16px;box-sizing:border-box;position:-webkit-sticky;position:sticky;top:0;z-index:10}@media (min-width:1024px){.dash-page-header{padding:0 32px}}.dash-mobile-only{display:none}@media (max-width:1023px){.dash-mobile-only{display:inline-flex}.dash-desktop-only{display:none!important}}.dash-hamburger{width:var(--dash-hit-area);height:var(--dash-hit-area);align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;color:inherit;flex-shrink:0;padding:0}.dash-hamburger:focus-visible,.dash-hamburger:hover{background:rgba(28,25,23,.06);outline:none}.dash-tappable{min-height:var(--dash-hit-area);-webkit-tap-highlight-color:transparent}.dash-calendar-toolbar{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.dash-calendar-toolbar__period{font-size:16px;font-weight:600}.dash-calendar-toolbar__controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center}@media (min-width:768px){.dash-calendar-toolbar{flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap}}.dash-calendar-nav-buttons{display:flex;gap:6px;flex-wrap:wrap}.dash-calendar-toolbar--mobile{display:none}@media (max-width:640px){.dash-calendar-toolbar--mobile{display:flex;flex-direction:column;gap:0;margin-bottom:12px;position:relative}.dash-calendar-pract-filter--desktop,.dash-calendar-toolbar--desktop{display:none}}.dash-day-list-mobile-only{display:none}@media (max-width:640px){.dash-day-list-mobile-only{display:block}.dash-day-grid-tablet-up{display:none!important}}.dash-calendar-fab{display:none}@media (max-width:640px){.dash-calendar-fab{display:grid;place-items:center;position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));width:56px;height:56px;border:none;border-radius:50%;font-size:28px;font-weight:400;line-height:1;cursor:pointer;box-shadow:0 4px 14px rgba(28,25,23,.2),0 1px 3px rgba(28,25,23,.12);z-index:40;transition:transform .12s ease}.dash-calendar-fab:active{transform:scale(.94)}.dash-calendar-fab:focus-visible{outline:3px solid rgba(255,255,255,.6);outline-offset:2px}}.dash-week-hint{display:none}@media (max-width:640px){.dash-week-hint{display:block;font-size:12px;color:rgba(28,25,23,.5);text-align:center;padding:4px 0 8px}}.dash-month-cell-bookings{display:flex}.dash-month-cell-counter--mobile{display:none}@media (max-width:640px){.dash-month-cell-bookings{display:none}.dash-month-cell-counter--mobile{display:inline-flex}.dash-month-grid{grid-template-rows:repeat(6,minmax(60px,1fr))!important}}.dash-drawer-backdrop{position:fixed;inset:0;background:rgba(15,31,43,.4);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:var(--dash-z-drawer-backdrop)}.dash-drawer{position:fixed;z-index:var(--dash-z-drawer);display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box}@media (max-width:640px){.dash-drawer{inset:0;padding:16px;animation:dash-drawer-up .24s cubic-bezier(.32,.72,0,1)}}@media (min-width:641px){.dash-drawer{right:0;top:0;bottom:0;width:min(100%,440px);padding:32px;box-shadow:-8px 0 32px rgba(0,0,0,.1);animation:dash-drawer-in .22s cubic-bezier(.32,.72,0,1)}}@keyframes dash-drawer-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes dash-drawer-in{0%{transform:translateX(100%)}to{transform:translateX(0)}}.dash-drawer-close{position:absolute;top:16px;right:16px;width:var(--dash-hit-area);height:var(--dash-hit-area);border-radius:8px;background:transparent;border:none;cursor:pointer;display:grid;place-items:center;font-size:24px;color:rgba(28,25,23,.5)}.dash-drawer-close:focus-visible,.dash-drawer-close:hover{background:rgba(28,25,23,.06);outline:none}.dash-drawer-actions{display:flex;flex-direction:column;gap:8px;margin-top:auto}@media (max-width:640px){.dash-drawer-actions{position:-webkit-sticky;position:sticky;bottom:0;background:white;margin:0 -16px -16px;padding:12px 16px max(12px,env(safe-area-inset-bottom));border-top:1px solid rgba(28,25,23,.06)}}@media (min-width:641px){.dash-drawer-actions{padding-top:32px}}@media (max-width:640px){.dash-table-wrapper{background:transparent!important;border:none!important;border-radius:0!important;overflow:visible!important}.dash-table{display:block;width:100%;border:none!important}.dash-table thead{display:none}.dash-table tbody{display:flex;flex-direction:column;gap:8px}.dash-table tr{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:6px;gap:6px;padding:14px;border:1px solid rgba(28,25,23,.1);border-radius:10px;background:white}.dash-table td{display:block;border-bottom:none!important;padding:0!important;font-size:13px}.dash-table td[data-mobile-hide=true]{display:none}.dash-table td[data-mobile-priority=header]{font-size:15px;font-weight:600;padding-bottom:6px!important;border-bottom:1px solid rgba(28,25,23,.06)!important;margin-bottom:4px}.dash-table td[data-label]:before{content:attr(data-label);display:block;color:rgba(28,25,23,.55);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.dash-table td[data-mobile-priority=header][data-label]:before{display:none}}.dash-modal-backdrop{position:fixed;inset:0;background:rgba(15,31,43,.5);z-index:var(--dash-z-drawer-backdrop);display:grid;place-items:center;padding:16px;box-sizing:border-box}.dash-modal{position:relative;z-index:var(--dash-z-drawer);background:white;border-radius:12px;width:100%;max-width:480px;max-height:calc(100dvh - 32px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 48px rgba(0,0,0,.18)}@media (max-width:640px){.dash-modal{max-width:none;max-height:100dvh;border-radius:14px 14px 0 0;align-self:end;width:100%}.dash-modal-backdrop{align-items:flex-end;padding:0}}.dash-form-grid-2{grid-template-columns:1fr}@media (min-width:480px){.dash-form-grid-2{grid-template-columns:1fr 1fr}}.dash-login-card{padding:32px 24px}@media (min-width:480px){.dash-login-card{padding:48px 40px}}.dash-toast{position:fixed;z-index:300;bottom:max(16px,env(safe-area-inset-bottom));left:16px;right:16px;max-width:none}@media (min-width:641px){.dash-toast{bottom:24px;right:24px;left:auto;max-width:360px}}.dash-scroll-locked{overflow:hidden}