.booking-calendar{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;overflow:hidden}.calendar-toolbar,.calendar-controls,.calendar-summary{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.25rem}.calendar-toolbar{border-bottom:1px solid #e2e8f0}.calendar-toolbar h2{font-size:1.25rem;font-weight:650;margin:0}.calendar-toolbar p,.calendar-summary{color:#64748b;font-size:.875rem;margin:.25rem 0 0}.calendar-actions,.calendar-controls,.calendar-view-buttons{display:flex;align-items:end;flex-wrap:wrap;gap:.5rem}.calendar-actions button,.calendar-controls button,.calendar-controls select,.calendar-controls input,.calendar-view-buttons button,.booking-dialog button,.staff-header a,.staff-header button,.staff-invite-account button{min-height:2.5rem;border:1px solid #cbd5e1;border-radius:.55rem;background:#fff;color:#334155;padding:.5rem .75rem;font-size:.875rem}.calendar-controls{justify-content:flex-start;background:#f8fafc;border-bottom:1px solid #e2e8f0}.calendar-controls label,.staff-invitation label,.staff-business-selector{display:grid;gap:.25rem;color:#475569;font-size:.8rem}.calendar-controls label input,.calendar-controls label select{min-width:9rem}.calendar-view-buttons button[aria-pressed=true]{background:#0f172a;border-color:#0f172a;color:#fff}.calendar-summary{border-bottom:1px solid #e2e8f0}.calendar-summary span{font-size:.75rem}.calendar-grid-scroll{max-width:100%;overflow-x:auto}.calendar-month-grid{display:grid;grid-template-columns:repeat(7,minmax(6rem,1fr));min-width:44rem}.calendar-weekday{background:#f8fafc;color:#64748b;font-size:.75rem;font-weight:650;padding:.65rem;text-align:center;text-transform:uppercase}.calendar-day-cell{border-top:1px solid #e2e8f0;border-right:1px solid #e2e8f0;min-height:8.5rem;padding:.5rem}.calendar-day-cell:nth-child(7n){border-right:0}.calendar-other-month{background:#f8fafc}.calendar-day-number{align-items:center;background:transparent;border:0;border-radius:999px;color:#334155;display:inline-flex;font-size:.8rem;height:1.75rem;justify-content:center;margin-bottom:.35rem;width:1.75rem}.calendar-day-number[aria-current=date]{background:#0f172a;color:#fff;font-weight:700}.booking-event{border:0;border-left:3px solid #94a3b8;border-radius:.35rem;cursor:pointer;display:grid;font-size:.75rem;gap:.1rem;margin:.25rem 0;overflow:hidden;padding:.38rem .45rem;text-align:left;width:100%}.booking-event span,.booking-event strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-event strong{color:#0f172a;font-size:.875rem}.calendar-agenda .booking-event{font-size:.875rem;padding:.75rem}.calendar-agenda .booking-event strong{font-size:1rem}.booking-event-time,.booking-event-status{color:#475569}.booking-pending{background:#fffbeb;border-color:#f59e0b;color:#92400e}.booking-confirmed{background:#eff6ff;border-color:#2563eb;color:#1e40af}.booking-completed{background:#ecfdf5;border-color:#10b981;color:#065f46}.booking-cancelled,.booking-rejected,.booking-no_show{background:#f8fafc;border-color:#94a3b8;color:#64748b}.calendar-more{background:transparent;border:0;color:#475569;font-size:.75rem;padding:.35rem}.calendar-week-grid{display:grid;grid-template-columns:repeat(7,minmax(8rem,1fr));overflow-x:auto}.calendar-week-grid .calendar-agenda-day{border-right:1px solid #e2e8f0;min-width:8rem}.calendar-agenda-day{padding:.75rem}.calendar-agenda-day+.calendar-agenda-day{border-top:1px solid #e2e8f0}.calendar-agenda-day h3{align-items:center;color:#334155;display:flex;font-size:.875rem;gap:.5rem;margin:0 0 .6rem}.calendar-agenda-day h3 span{background:#0f172a;border-radius:999px;color:#fff;font-size:.65rem;padding:.15rem .45rem;text-transform:uppercase}.calendar-empty-day,.calendar-empty-message{color:#94a3b8;font-size:.8rem;margin:.75rem 0}.calendar-empty-message,.calendar-loading,.calendar-error{padding:1.25rem;text-align:center}.calendar-error{background:#fef2f2;color:#b91c1c}.calendar-error button{border:1px solid #fecaca;border-radius:.5rem;margin-top:.5rem;padding:.5rem .75rem}.booking-dialog{border:0;border-radius:1rem;box-shadow:0 24px 64px #0f172a47;max-width:34rem;padding:1.4rem;width:calc(100% - 2rem)}.booking-dialog::backdrop{background:#0f172a94}.booking-dialog-heading{align-items:center;display:flex;justify-content:space-between}.booking-dialog h2{font-size:1.2rem;font-weight:650}.booking-dialog h3{font-size:1.05rem;font-weight:650;margin-top:1.2rem}.booking-status{border-radius:999px;display:inline-block;font-size:.75rem;margin:.5rem 0 1rem;padding:.3rem .55rem;text-transform:capitalize}.booking-dialog dl{display:grid;grid-template-columns:6rem 1fr;gap:.5rem 1rem;font-size:.875rem}.booking-dialog dt{color:#64748b}.booking-dialog dd{color:#0f172a;margin:0;overflow-wrap:anywhere}.booking-note{white-space:pre-wrap}.calendar-primary{background:#0f172a!important;border-color:#0f172a!important;color:#fff!important;margin-top:1.25rem}.calendar-readonly{color:#64748b;font-size:.8rem;margin-top:.75rem}.staff-workspace{background:#f8fafc;min-height:100vh;padding:2rem 1rem}.staff-workspace>*{margin-left:auto;margin-right:auto;max-width:80rem}.staff-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.staff-brand{color:#0f172a;font-weight:700}.staff-header h1{font-size:1.5rem;font-weight:650;margin:.2rem 0}.staff-header p{color:#64748b;font-size:.875rem;margin:.15rem 0}.staff-header nav{display:flex;flex-wrap:wrap;gap:.5rem}.staff-business-selector{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;margin-bottom:1rem;max-width:20rem;padding:.75rem}.staff-business-selector select,.staff-invitation input{border:1px solid #cbd5e1;border-radius:.5rem;font-size:1rem;min-height:2.65rem;padding:.5rem .7rem}.staff-invitation{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;margin:3rem auto;max-width:30rem;padding:2rem}.staff-invitation h1{font-size:1.5rem;font-weight:650;margin:1.25rem 0 .6rem}.staff-invitation>p,.staff-invite-account p{color:#64748b;font-size:.9rem;line-height:1.55}.staff-invitation form{display:grid;gap:1rem;margin-top:1rem}.staff-invitation form button{border:1px solid;border-radius:.5rem;min-height:2.75rem;padding:.5rem}.staff-invitation .calendar-view-buttons{margin-top:1.25rem}.staff-invitation,.staff-invitation *{box-sizing:border-box}.staff-invitation{width:calc(100% - 2rem);overflow-wrap:anywhere}.staff-invitation input{min-width:0;width:100%}.staff-invitation .calendar-primary{margin-top:0}.staff-invitation .auth-help{color:#64748b;font-size:.875rem;line-height:1.5;margin:.75rem 0}.staff-auth-options{display:grid;gap:.6rem;margin-top:1.25rem}.staff-auth-options button{background:#fff;border:1px solid #cbd5e1;border-radius:.65rem;color:#0f172a;cursor:pointer;display:grid;font-family:inherit;font-size:.95rem;font-weight:650;gap:.15rem;padding:.7rem .8rem;text-align:left}.staff-auth-options button span{color:#64748b;font-size:.8rem;font-weight:400;line-height:1.4}.staff-auth-options button[aria-selected=true]{background:#eff6ff;border-color:#2563eb;box-shadow:0 0 0 1px #2563eb;color:#1d4ed8}.auth-text-link{background:transparent;border:0;color:#1d4ed8;cursor:pointer;display:block;font-size:.875rem;line-height:1.5;margin-top:1rem;padding:.25rem 0;text-align:left;text-decoration:underline;text-underline-offset:.2rem}.auth-primary-link{background:#0f172a;border-radius:.5rem;color:#fff;display:block;font-size:.875rem;margin-top:1rem;padding:.8rem;text-align:center}.staff-success{background:#ecfdf5;border-radius:.5rem;color:#047857!important;padding:.75rem}.staff-invite-account{display:grid;gap:.6rem;margin-top:1rem}.access-notice{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;margin:4rem auto;max-width:34rem;padding:2rem}.access-notice h1{font-size:1.25rem;font-weight:650}.access-notice p{color:#64748b;margin:.7rem 0 1.2rem}.access-notice a,.access-notice button{border:1px solid #cbd5e1;border-radius:.5rem;display:inline-block;margin:.25rem;padding:.55rem .75rem}.booking-calendar :focus-visible,.staff-invitation :focus-visible,.staff-workspace :focus-visible{outline:3px solid #2563eb;outline-offset:2px}.booking-calendar button:disabled,.staff-invitation button:disabled{cursor:wait;opacity:.55}@media (max-width: 700px){.calendar-toolbar,.staff-header{align-items:stretch;flex-direction:column}.calendar-actions{display:grid;grid-template-columns:repeat(3,1fr)}.calendar-controls{align-items:stretch;display:grid;grid-template-columns:1fr 1fr}.calendar-controls>label{grid-column:span 1}.calendar-view-buttons{grid-column:1 / -1}.calendar-summary{align-items:flex-start;flex-direction:column}.booking-dialog dl{grid-template-columns:1fr;gap:.15rem}.booking-dialog dd{margin-bottom:.6rem}.staff-workspace{padding:1rem .65rem}}html{scroll-behavior:smooth}body{margin:0;color:#0f172a;background:#f8fafc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.cms-rich-text{line-height:1.75;overflow-wrap:anywhere}.cms-rich-text h1,.cms-rich-text h2,.cms-rich-text h3,.cms-rich-text h4{color:#0f172a;font-weight:700;line-height:1.25;margin:1.5em 0 .55em}.cms-rich-text h1{font-size:2rem}.cms-rich-text h2{font-size:1.5rem}.cms-rich-text h3{font-size:1.2rem}.cms-rich-text p{margin:.8em 0}.cms-rich-text ul,.cms-rich-text ol{margin:.8em 0;padding-left:1.6rem}.cms-rich-text ul{list-style:disc}.cms-rich-text ol{list-style:decimal}.cms-rich-text li{margin:.3em 0}.cms-rich-text blockquote{border-left:4px solid #cbd5e1;color:#475569;margin:1.2em 0;padding:.25rem 0 .25rem 1rem}.cms-rich-text a{color:#2563eb;text-decoration:underline;text-underline-offset:2px}.cms-rich-text img{border-radius:.75rem;display:block;height:auto;margin:1.25rem 0;max-width:100%}.cms-rich-text hr{border:0;border-top:1px solid #e2e8f0;margin:2rem 0}.cms-rich-text table{border-collapse:collapse;display:block;margin:1rem 0;max-width:100%;overflow-x:auto;width:max-content}.cms-rich-text th,.cms-rich-text td{border:1px solid #cbd5e1;padding:.55rem .75rem;text-align:left}.cms-rich-text th{background:#f1f5f9;font-weight:600}.cms-editor:empty:before{color:#94a3b8;content:attr(data-placeholder);pointer-events:none}.cms-public-content>:first-child{margin-top:0}.cms-public-content>:last-child{margin-bottom:0}.cms-public-content section{margin:2.75rem 0}.cms-public-content .content-lead{margin-top:0}.cms-public-content .content-intro{color:#475569;font-size:1.08rem;line-height:1.8;max-width:48rem}.cms-public-content .content-grid{display:grid;gap:1rem;margin:1.5rem 0}.cms-public-content .content-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.85rem;padding:1.25rem}.cms-public-content .content-card h3{font-size:1rem;margin-top:0}.cms-public-content .content-card p:last-child{margin-bottom:0}.cms-public-content .content-callout{background:#0f172a;border-radius:1rem;color:#cbd5e1;padding:1.5rem}.cms-public-content .content-callout h2{color:#fff;margin-top:0}.cms-public-content .content-button{background:#fff;border:1px solid white;border-radius:.45rem;color:#0f172a;display:inline-block;font-size:.875rem;font-weight:600;margin:.5rem .4rem 0 0;padding:.65rem 1rem;text-decoration:none}.cms-public-content .content-button-secondary{background:transparent;color:#fff}.form-control{border:1px solid #cbd5e1;border-radius:.45rem;color:#0f172a;display:block;font-size:.875rem;margin-top:.35rem;min-height:2.75rem;outline:none;padding:.65rem .75rem;width:100%}.form-control:focus{border-color:#0f172a;box-shadow:0 0 0 2px #0f172a1f}.contact-cms-content section{margin:0 0 1.5rem}.contact-cms-content h2,.contact-cms-content h3{color:#fff}.contact-cms-content h2{font-size:1.5rem;line-height:1.3}.contact-cms-content .content-intro,.contact-cms-content p{color:#cbd5e1;font-size:.875rem;line-height:1.65}.cms-public-content.contact-cms-content .content-grid,.cms-public-content.contact-cms-content .content-grid-2{grid-template-columns:1fr;margin-bottom:0}.contact-cms-content .content-card{background:#ffffff0f;border-color:#334155;padding:1rem}@media (min-width: 640px){.cms-public-content .content-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.cms-public-content .content-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cms-public-content .content-callout{padding:2rem}}
