.appointment-manage-modal{--appointment-manage-link-hover:#465d73;border-radius:22px;flex-direction:column;gap:0;width:min(640px,100%);max-height:min(92dvh,860px);padding:0;display:flex;overflow:hidden}.appointment-manage-summary-card{--summary-ribbon:var(--primary);--appointment-manage-divider:#bfcce042;background:linear-gradient(#f7faff 0%,#fbfcff 100%);border-radius:18px;padding:22px 22px 22px 26px;position:relative;overflow:hidden}.appointment-manage-summary-card-danger{--summary-ribbon:var(--danger);background:linear-gradient(#fff1f2 0%,#fff8f8 100%)}.appointment-manage-summary-card-warning{--summary-ribbon:#b36b00;background:linear-gradient(#fff6e9 0%,#fffaf2 100%)}.appointment-manage-title-line{flex-wrap:wrap;align-items:baseline;gap:9px;min-width:0;display:inline-flex}.appointment-manage-title-separator,.appointment-manage-title-status{letter-spacing:.06em;text-transform:uppercase;color:#7f8d98;font-size:11px;font-weight:700;line-height:1}.modal-panel-ribbon{background:var(--summary-ribbon);width:4px;position:absolute;inset:0 auto 0 0}.appointment-manage-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px 26px;display:grid;position:relative}.appointment-manage-info-grid:before{content:"";background:linear-gradient(180deg, transparent 0%, var(--appointment-manage-divider) 14%, var(--appointment-manage-divider) 86%, transparent 100%);pointer-events:none;width:1px;position:absolute;inset:0 auto 0 50%;transform:translate(-.5px)}.appointment-manage-info-column{align-content:start;gap:24px;display:grid}.appointment-manage-info-block{align-content:start;align-items:start;gap:8px;display:grid;position:relative}.appointment-manage-info-block+.appointment-manage-info-block:before{content:"";background:linear-gradient(90deg, var(--appointment-manage-divider), transparent 100%);pointer-events:none;height:1px;position:absolute;top:-12px;left:0;right:0}.appointment-manage-info-label{letter-spacing:.06em;text-transform:uppercase;color:#7f8d98;font-size:11px;font-weight:700;line-height:1}.appointment-manage-info-label-rich{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.appointment-manage-info-label-rich em{letter-spacing:.02em;text-transform:none;font-style:italic}.appointment-manage-info-label-row{align-items:center;gap:8px;min-height:24px;display:inline-flex}.appointment-manage-icon-action{border:1px solid color-mix(in srgb, var(--primary) 16%, var(--border));background:color-mix(in srgb, var(--primary) 6%, var(--surface));width:24px;min-width:24px;height:24px;color:color-mix(in srgb, var(--primary) 72%, var(--text));cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:0;transition:background .16s,border-color .16s,color .16s,box-shadow .16s;display:inline-flex;box-shadow:inset 0 1px #ffffffb3}.appointment-manage-icon-action:hover,.appointment-manage-icon-action:focus-visible,.appointment-manage-icon-action.is-active{border-color:color-mix(in srgb, var(--primary) 34%, var(--border));background:color-mix(in srgb, var(--primary) 12%, var(--surface));color:var(--primary);box-shadow:inset 0 1px 0 #ffffffb3, 0 0 0 3px color-mix(in srgb, var(--primary) 12%, transparent);outline:none}.appointment-manage-icon-action:disabled{opacity:.58;cursor:not-allowed;box-shadow:inset 0 1px #ffffffb3}.appointment-manage-icon-action svg{width:15px;height:15px}.appointment-manage-profile,.appointment-manage-service-row,.appointment-manage-detail-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.appointment-manage-avatar{color:#325e55;background:linear-gradient(#cdeee3 0%,#b9e2d6 100%);border-radius:999px;justify-content:center;align-items:center;width:38px;height:38px;font-size:13px;font-weight:700;display:inline-flex}.appointment-manage-primary-value{letter-spacing:-.03em;color:#1f2d3d;font-size:28px;font-weight:700;line-height:1.05}.appointment-manage-service{letter-spacing:-.03em;color:var(--primary-strong);font-size:24px;font-weight:700;line-height:1.05}.appointment-manage-chip-button{background:var(--surface);width:auto;color:var(--primary-strong);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:10px;font-weight:700;line-height:1;transition:border-color .18s,background-color .18s,box-shadow .18s,transform .18s;display:inline-flex}.appointment-manage-chip-button:hover,.appointment-manage-chip-button:focus-visible{border-color:var(--interactive-surface-hover-border);background:var(--interactive-surface-hover-bg);box-shadow:var(--interactive-surface-hover-shadow)}.appointment-manage-chip-button:disabled{opacity:.6;cursor:not-allowed}.appointment-manage-detail-row{color:#43515c;font-size:15px;font-weight:500;line-height:1.45}.appointment-manage-detail-row-between{justify-content:flex-start;gap:14px}.appointment-manage-detail-row-compact{flex-wrap:nowrap;gap:8px}.appointment-manage-detail-row svg{color:#647482}.appointment-manage-date-display{color:#43515c;width:fit-content;padding:4px 0}.appointment-manage-date-time-text{flex-wrap:wrap;align-items:baseline;gap:4px;display:inline-flex}.appointment-manage-date-time-emphasis{color:#1f2d3d;letter-spacing:0;font-size:calc(1em + 10px);font-weight:800;line-height:1}.appointment-manage-meet-connect-button{border:1px solid color-mix(in srgb, var(--primary) 22%, var(--border));background:color-mix(in srgb, var(--primary) 7%, var(--surface));width:fit-content;min-height:34px;color:var(--primary-strong);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:7px 12px 7px 10px;font-size:13px;font-weight:800;line-height:1;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s;display:inline-flex}.appointment-manage-meet-connect-button:hover,.appointment-manage-meet-connect-button:focus-visible{border-color:color-mix(in srgb, var(--primary) 38%, var(--border));background:color-mix(in srgb, var(--primary) 12%, var(--surface));box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 12%, transparent);outline:none}.appointment-manage-meet-connect-button svg.google-meet-logo{flex-shrink:0;width:18px;height:15px}.appointment-manage-meet-connect-button svg.google-meet-logo *{stroke:none}.appointment-manage-detail-stack{gap:8px;display:grid}.appointment-manage-secondary-actions{align-items:center;gap:8px;display:flex}.appointment-manage-inline-editor{gap:10px;max-width:320px;display:grid}.appointment-manage-inline-editor-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.appointment-manage-inline-select-shell{background:#fff;border:1px solid #b8c5d952;border-radius:14px;flex:220px;position:relative;box-shadow:inset 0 1px #ffffffa6}.appointment-manage-inline-select-shell:focus-within{border-color:#0f8c79b3;box-shadow:0 0 0 3px #0f8c791f,inset 0 1px #ffffffb8}.appointment-manage-inline-select-shell select{appearance:none;color:#1f2d3d;background:0 0;border:0;width:100%;min-height:48px;padding:14px 40px 14px 14px;font-size:15px;font-weight:600;line-height:1.3}.appointment-manage-inline-select-shell select:focus,.appointment-manage-inline-select-shell select:focus-visible{box-shadow:none;outline:none}.appointment-manage-inline-select-shell select:disabled{color:#8b97a2;cursor:not-allowed}.appointment-manage-inline-editor>select{color:#243341;min-height:44px;font:inherit;background:#fff;border:1px solid #b8c5d970;border-radius:14px;flex:180px;padding:0 14px}.appointment-manage-inline-editor>select:focus,.appointment-manage-inline-editor>select:focus-visible{border-color:#0f8c79b3;outline:none;box-shadow:0 0 0 3px #0f8c791f}.appointment-manage-note-card{background:#ffffffc7;border:1px solid #b8c5d95c;border-radius:16px;gap:12px;width:100%;padding:14px 16px;display:grid}.appointment-manage-note-card-muted{background:#f8fafce0}.appointment-manage-note-disclosures{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;width:100%;display:grid}.appointment-manage-note-disclosure{align-self:start;justify-items:stretch;gap:10px;width:100%;display:grid}.appointment-manage-disclosure-chip{color:#243341;width:100%;min-height:40px;font:inherit;cursor:pointer;background:#ffffffd1;border:1px solid #b8c5d96b;border-radius:999px;justify-content:space-between;align-items:center;gap:14px;padding:0 14px;font-size:13px;font-weight:700;line-height:1;transition:border-color .18s,background-color .18s,box-shadow .18s,transform .18s;display:inline-flex}.appointment-manage-disclosure-chip:hover,.appointment-manage-disclosure-chip:focus-visible{background:#fffffff5;border-color:#0f8c7980;box-shadow:0 0 0 3px #0f8c791a}.appointment-manage-disclosure-chip-static{cursor:default}.appointment-manage-disclosure-chip-static:hover,.appointment-manage-disclosure-chip-static:focus-visible{box-shadow:none;background:#ffffffd1;border-color:#b8c5d96b}.appointment-manage-disclosure-meta{color:#748390;letter-spacing:.02em;font-size:11px;font-weight:600}.appointment-manage-disclosure-trailing{flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:inline-flex}.appointment-manage-disclosure-meta-available{color:#12805f;font-weight:700}.appointment-manage-disclosure-icon{color:#7a8994;align-items:center;transition:transform .18s;display:inline-flex}.appointment-manage-disclosure-icon svg{width:15px;height:15px}.appointment-manage-disclosure-icon-open{transform:rotate(180deg)}.appointment-manage-note-input{resize:vertical;color:#243341;width:100%;min-height:108px;font:inherit;background:0 0;border:0;padding:0;line-height:1.5}.appointment-manage-note-input:focus,.appointment-manage-note-input:focus-visible{outline:none}.appointment-manage-note-input[readonly]{cursor:default}.appointment-manage-note-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.appointment-manage-note-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.appointment-manage-note-hint,.appointment-manage-note-empty{color:#748390;font-size:12px;line-height:1.45}.appointment-manage-note-preview{color:#2a3947;white-space:pre-wrap;margin:0;font-size:14px;line-height:1.6}.appointment-manage-detail-subrow{color:#5b6a76;align-items:center;gap:9px;font-size:13px;line-height:1.45;display:flex}.appointment-manage-detail-subrow svg{color:#7a8994;flex-shrink:0;width:15px;height:15px}.appointment-manage-detail-subrow-meta{gap:8px;padding-left:25px}.appointment-manage-detail-subrow-action{padding-left:0}.appointment-manage-detail-meta-label{color:#7f8d98;font-weight:600}.appointment-manage-reminder-section{gap:6px;display:grid}.appointment-manage-payment-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.appointment-manage-modal .appointment-manage-status-chip{flex:none;font-weight:500}.appointment-manage-modal .appointment-manage-status-chip.badge:not(.badge-canceled):not(.badge-noshow){color:#4d4d4d}.appointment-manage-modal .appointment-manage-status-chip.badge-canceled{color:#9d2337}.appointment-manage-modal .appointment-manage-status-chip.badge-noshow{color:#c43200}.appointment-manage-modal .appointment-manage-note-icon-row{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.appointment-manage-modal .appointment-manage-note-icon-row .session-notes-trigger{appearance:none;min-height:34px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.appointment-manage-modal .appointment-manage-note-icon-row .session-notes-trigger:disabled{cursor:not-allowed;opacity:.58}.appointment-manage-modal .appointment-manage-note-icon-row .session-type-icon{border:1px solid color-mix(in srgb, var(--primary) 16%, var(--border));background:color-mix(in srgb, var(--surface) 94%, var(--primary));width:24px;height:24px;color:color-mix(in srgb, var(--primary) 72%, var(--text));border-radius:999px;justify-content:center;align-items:center;transition:background .16s,border-color .16s,color .16s,box-shadow .16s;display:inline-flex;box-shadow:inset 0 1px #ffffffb3}.appointment-manage-modal .appointment-manage-note-icon-row .session-type-icon-in-person{background:color-mix(in srgb, #10b981 8%, var(--surface));border-color:color-mix(in srgb, #10b981 20%, var(--border));color:color-mix(in srgb, #047857 72%, var(--text))}.appointment-manage-modal .appointment-manage-note-icon-row .session-type-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:15px;height:15px}.appointment-manage-modal .appointment-manage-note-icon-row .session-notes-trigger:not(:disabled):hover .session-notes-trigger-icon,.appointment-manage-modal .appointment-manage-note-icon-row .session-notes-trigger:not(:disabled):focus-visible .session-notes-trigger-icon{background:var(--interactive-surface-hover-bg);border-color:var(--interactive-surface-hover-border);color:#047857;box-shadow:var(--interactive-surface-hover-shadow)}.appointment-manage-modal .appointment-manage-note-icon-row .session-notes-trigger:focus-visible{outline:none}.appointment-manage-modal .appointment-manage-note-icon-row .session-notes-trigger:focus-visible .session-notes-trigger-icon{outline:2px solid color-mix(in srgb, var(--primary) 32%, transparent);outline-offset:2px}.appointment-manage-modal .appointment-manage-note-icon-row .session-notes-trigger-label{color:color-mix(in srgb, var(--text) 84%, var(--primary));font-size:var(--fs-xs);white-space:nowrap;font-weight:800;line-height:1}.appointment-manage-modal .appointment-manage-payment-panel,.appointment-manage-modal .appointment-manage-notes-panel{gap:16px}.appointment-manage-payment-badge{align-items:center;display:inline-flex}.appointment-manage-payment-row .payment-chip{cursor:default}.appointment-manage-modal .appointment-manage-action-panel{gap:12px;margin-top:14px;display:grid}.appointment-manage-modal .appointment-manage-action-panel-surface,.appointment-manage-modal .appointment-manage-panel-feedback{background:#ffffffc7;border:1px solid #b8c5d95c;border-radius:16px}.appointment-manage-modal .appointment-manage-action-panel-surface{padding:14px 16px}.appointment-manage-modal .appointment-manage-action-panel-head{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;display:grid}.appointment-manage-modal .appointment-manage-action-panel-content{gap:14px;margin-top:14px;display:grid}.appointment-manage-modal .appointment-manage-action-panel-form,.appointment-manage-modal .appointment-manage-action-panel-block{gap:14px;display:grid}.appointment-manage-modal .appointment-manage-action-panel-block{border-top:1px solid #b8c5d93d;padding-top:14px}.appointment-manage-modal .appointment-manage-action-panel-block:first-child{border-top:0;padding-top:0}.appointment-manage-modal .appointment-manage-action-panel-block-heading{gap:3px;display:grid}.appointment-manage-modal .appointment-manage-action-panel-block-heading strong{color:#243341;font-size:13px;line-height:1.3}.appointment-manage-modal .appointment-manage-action-panel-block-heading span{color:#748390;font-size:12px;line-height:1.45}.appointment-manage-modal .appointment-manage-action-panel-actions{justify-content:flex-start;padding-top:2px;display:flex}.appointment-manage-modal .appointment-manage-status-current{align-items:center;display:flex}.appointment-manage-modal .appointment-manage-status-action-list{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.appointment-manage-modal .appointment-manage-status-confirmation{gap:14px;display:grid}.appointment-manage-modal .modal-ghost-button{border:1px solid #b8c5d95c}.appointment-manage-modal .modal-ghost-button:hover,.appointment-manage-modal .modal-ghost-button:focus-visible{border-color:var(--interactive-surface-hover-border)}.appointment-manage-modal .appointment-manage-action-panel-head strong,.appointment-manage-modal .appointment-manage-action-panel-head p{margin:0}.appointment-manage-modal .appointment-manage-action-panel-head strong{color:#243341;font-size:14px;line-height:1.3}.appointment-manage-modal .appointment-manage-action-panel-head p{color:#748390;font-size:12px;line-height:1.45}.appointment-manage-modal .appointment-manage-action-panel-icon{background:color-mix(in srgb, var(--primary) 8%, var(--surface));width:32px;height:32px;color:var(--primary-strong);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.appointment-manage-modal .appointment-manage-action-panel-icon svg{width:17px;height:17px}.appointment-manage-modal .appointment-manage-panel-feedback{padding:10px 12px;font-size:13px;font-weight:700;line-height:1.4}.appointment-manage-modal .appointment-manage-panel-feedback-success{color:#126b50;background:#ecfdf5d1;border-color:#12805f3d}.appointment-manage-modal .appointment-manage-panel-feedback-info{color:var(--primary-strong);background:#eef8f5d6;border-color:#0f8c7933}.appointment-manage-modal .appointment-manage-panel-feedback-error{color:#9d2337;background:#fff1f2d6;border-color:#d92d203d}@media (max-width:720px){.appointment-manage-info-grid,.appointment-manage-note-disclosures{grid-template-columns:minmax(0,1fr)}.appointment-manage-info-grid:before{display:none}.appointment-manage-info-column+.appointment-manage-info-column{position:relative}.appointment-manage-info-column+.appointment-manage-info-column:before{content:"";background:linear-gradient(90deg, var(--appointment-manage-divider), transparent 100%);pointer-events:none;height:1px;position:absolute;top:-12px;left:0;right:0}}.appointment-manage-reminder-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.appointment-manage-reminder-hint{color:#748390;font-size:12px;line-height:1.4}.appointment-manage-reminder-link{color:#5d6c79;width:fit-content;font:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;line-height:1.4;text-decoration:underline}.appointment-manage-reminder-link:hover,.appointment-manage-reminder-link:focus-visible{box-shadow:none;color:var(--appointment-manage-link-hover);background:0 0;border-color:#0000}.appointment-manage-reminder-link:disabled{opacity:.7;cursor:not-allowed}.appointment-manage-reminder-link:disabled:hover{background:0 0}.appointment-manage-reminder-editor{gap:6px;max-width:220px;display:grid}.appointment-manage-reminder-select{color:#243341;width:100%;min-height:46px;font:inherit;background:#fff;border:1px solid #b8c5d970;border-radius:14px;padding:0 14px}.appointment-manage-reminder-select:focus,.appointment-manage-reminder-select:focus-visible{border-color:#0f8c79b3;outline:none;box-shadow:0 0 0 3px #0f8c791f}.appointment-manage-choice-grid,.appointment-manage-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.appointment-manage-choice-card{text-align:left;cursor:pointer;background:#fff;border:1px solid #b8c5d961;border-radius:16px;gap:8px;padding:16px;transition:border-color .18s,background-color .18s,box-shadow .18s,transform .18s;display:grid}.appointment-manage-choice-card:hover,.appointment-manage-choice-card:focus-visible,.appointment-manage-choice-card:active{border-color:var(--interactive-surface-hover-border);background:var(--interactive-surface-hover-bg);box-shadow:var(--interactive-surface-hover-shadow)}.appointment-manage-choice-card.is-selected{border-color:var(--interactive-surface-selected-border);background:linear-gradient(180deg, var(--interactive-surface-selected-bg-top), var(--interactive-surface-selected-bg-bottom));box-shadow:inset 0 0 0 1px var(--interactive-surface-selected-shadow)}.appointment-manage-choice-card:disabled{opacity:.6;cursor:not-allowed}.modal-section.is-heading-highlighted .modal-section-heading>span{animation:1.1s ease-in-out appointment-manage-heading-flash}@keyframes appointment-manage-heading-flash{0%,to{color:inherit;text-shadow:none}36%,68%{color:var(--primary-strong);text-shadow:0 0 18px color-mix(in srgb, var(--primary) 34%, transparent)}}.appointment-manage-choice-head{color:#203040;justify-content:space-between;align-items:center;gap:12px;font-size:15px;font-weight:700;line-height:1.3;display:flex}.appointment-manage-choice-icon{color:var(--appointment-manage-link-hover);opacity:0;transition:opacity .18s,transform .18s;transform:scale(.88)}.appointment-manage-choice-icon.is-visible{opacity:1;transform:scale(1)}.appointment-manage-chip-button svg,.appointment-manage-detail-row svg,.appointment-manage-field-icon svg,.appointment-manage-field-chevron svg,.appointment-manage-choice-icon svg{width:18px;height:18px}.appointment-manage-choice-description,.appointment-manage-field-description{color:#748390;font-size:12px;line-height:1.45}.appointment-manage-field-card{gap:8px;display:grid}.appointment-manage-field-label{color:#42515e;font-size:14px;font-weight:600;line-height:1.3}.appointment-manage-field-shell{background:#fff;border:1px solid #b8c5d952;border-radius:14px;position:relative;box-shadow:inset 0 1px #ffffffa6}.appointment-manage-field-shell:focus-within{border-color:#0f8c79b3;box-shadow:0 0 0 3px #0f8c791f,inset 0 1px #ffffffb8}.appointment-manage-field-shell select{appearance:none;color:#1f2d3d;background:0 0;border:0;width:100%;padding:14px 40px 14px 42px;font-size:15px;font-weight:600;line-height:1.3}.appointment-manage-field-shell select:focus,.appointment-manage-field-shell select:focus-visible{box-shadow:none;outline:none}.appointment-manage-field-shell select:disabled{color:#8b97a2;cursor:not-allowed}.appointment-manage-field-icon,.appointment-manage-field-chevron{color:#738392;pointer-events:none;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.appointment-manage-field-icon{left:14px}.appointment-manage-field-chevron{right:14px}.appointment-form-availability-stack{gap:12px;display:grid}.appointment-manage-toggle-card{cursor:pointer;background:linear-gradient(#eef8f5f2,#f5fbf8);border-radius:16px;align-items:flex-start;gap:12px;padding:15px 16px;display:flex}.appointment-manage-toggle-control{padding-top:1px}.appointment-manage-toggle-control input{width:18px;height:18px;accent-color:var(--primary);margin:0}.appointment-manage-toggle-copy{gap:4px;display:grid}.appointment-manage-toggle-title{color:#243443;font-size:14px;font-weight:700;line-height:1.3}.appointment-manage-toggle-description{color:#7a8894;font-size:12px;line-height:1.45}.appointment-manage-alert-content{gap:12px;display:grid}.appointment-manage-reason-field{gap:6px;display:grid}.appointment-manage-reason-field label{color:#42515e;font-size:13px;font-weight:600;line-height:1.3}.appointment-manage-reason-field input{background:#ffffffe0;border:1px solid #b8c5d95c;border-radius:14px;width:100%;padding:12px 14px}.appointment-manage-inline-note{color:#7a8894;font-size:12px;line-height:1.5}.appointment-timeline-heading{align-items:center}.appointment-timeline-toggle{color:#263747;width:fit-content;max-width:100%;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex:none;align-self:center;align-items:center;gap:8px;padding:6px 8px;font-size:14px;font-weight:700;transition:border-color .18s,background-color .18s,box-shadow .18s,color .18s;display:inline-flex}.appointment-timeline-toggle:hover,.appointment-timeline-toggle:focus-visible{border-color:var(--interactive-surface-hover-border);background:var(--interactive-surface-hover-bg);box-shadow:var(--interactive-surface-hover-shadow);color:#263747}.appointment-timeline-toggle:disabled{cursor:not-allowed;opacity:.6}.appointment-timeline-toggle-icon,.appointment-timeline-toggle-chevron{color:#708090;flex:none;justify-content:center;align-items:center;display:inline-flex}.appointment-timeline-toggle-icon{width:16px;height:16px}.appointment-timeline-toggle-chevron{width:14px;height:14px;margin-left:1px;transition:transform .18s}.appointment-timeline-toggle-icon svg,.appointment-timeline-toggle-chevron svg{width:100%;height:100%;display:block}.appointment-timeline-toggle-label{align-items:center;gap:4px;display:inline-flex}.appointment-timeline-toggle[aria-expanded=true] .appointment-timeline-toggle-chevron{transform:rotate(180deg)}.appointment-timeline-content{gap:12px;display:grid}.appointment-timeline-error{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.appointment-timeline-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.appointment-timeline-item{grid-template-columns:14px minmax(0,1fr);align-items:start;gap:10px;display:grid}.appointment-timeline-marker{background:var(--primary);border-radius:999px;width:10px;height:10px;margin-top:9px;box-shadow:0 0 0 4px #1f8a701f}.appointment-timeline-card{background:#ffffffd1;border:1px solid #b8c5d957;border-radius:12px;gap:6px;padding:10px 12px;display:grid}.appointment-timeline-item-head,.appointment-timeline-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.appointment-timeline-item-head strong{color:#263747;font-size:13px;line-height:1.35}.appointment-timeline-item-head time,.appointment-timeline-meta{color:#6f7f8d;font-size:12px;line-height:1.4}.appointment-timeline-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:2px;display:grid}.appointment-timeline-values div{background:#f6f9fbe0;border-radius:10px;gap:3px;padding:8px 10px;display:grid}.appointment-timeline-values span{color:#7a8894;font-size:11px;line-height:1.3}.appointment-timeline-values strong{color:#344554;font-size:12px;line-height:1.35}.appointment-manage-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}@supports (height:100svh){.appointment-manage-modal{max-height:min(92svh,860px)}}@media (prefers-reduced-motion:reduce){.modal-section.is-heading-highlighted .modal-section-heading>span{color:var(--primary-strong);animation:none}}
:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#101010;--surface:#171717;--surface-soft:#212121;--surface-strong:#2b2b2b;--text:#f4f4f4;--muted:#b8b8b8;--primary:#0f8c79;--primary-strong:#0b7464;--danger:#ff7b72;--danger-strong:#ff5f54;--border:#303030;--button-bg:var(--primary);--button-bg-hover:var(--primary-strong);--button-text:#fff;--button-secondary-bg:#212121;--button-secondary-hover:#2b2b2b;--button-secondary-text:#f4f4f4;--interactive-surface-hover-border:#788da157;--interactive-surface-hover-bg:#182025f5;--interactive-surface-hover-shadow:0 10px 22px #0000002e;--interactive-surface-selected-border:#788da16b;--interactive-surface-selected-bg-top:#788da11f;--interactive-surface-selected-bg-bottom:#788da10f;--interactive-surface-selected-shadow:#788da11f;--shadow-soft:0 14px 34px #00000057;--overlay-backdrop:#0000008f;--overlay-background-filter:blur(10px) saturate(90%);--scrollbar-track:#232323;--scrollbar-thumb:#5f5f5f;--scrollbar-thumb-hover:#7a7a7a;--notification-unread-border:#6d3a42;--notification-unread-bg:#261a1d;--notification-unread-accent:#ff7b72;--danger-soft-border:#6d3a42;--danger-soft-bg:#2b1d20;--calendar-today-border-strong:#fff}:root[data-theme=dark] .calendar{--calendar-past-day-bg:#1d211f;--calendar-outside-month-bg:#232323;--calendar-available-bg:#127d513d;--calendar-available-border:#30bf7670;--calendar-available-border-hover:#48da9394;--calendar-available-text:#4fd08a;--calendar-canceled-bg:#7a222457;--calendar-canceled-bg-hover:#962a2d6b;--calendar-canceled-border:#ec585861;--calendar-canceled-border-hover:#ff787885;--calendar-canceled-text:#ff9c9c;--calendar-out-of-office-bg:rgb(var(--calendar-out-of-office-rgb) / 30%);--calendar-out-of-office-bg-hover:rgb(var(--calendar-out-of-office-rgb) / 40%);--calendar-out-of-office-border:rgb(var(--calendar-out-of-office-rgb) / 58%);--calendar-out-of-office-border-hover:rgb(var(--calendar-out-of-office-rgb) / 74%);--calendar-out-of-office-text:#d6def8}:root[data-theme=dark] .calendar-cell.is-outside-current-month .calendar-day{color:#f4f4f475;opacity:1}:root[data-theme=dark] .calendar-item.calendar-item-noshow,:root[data-theme=dark] .calendar-item-button.calendar-item-noshow{color:#ffbf7a;background:#a8591057;border-color:#ff9f4375}:root[data-theme=dark] .calendar-item-noshow.calendar-item-button:hover,:root[data-theme=dark] .calendar-item-noshow.calendar-item-button:focus-visible{color:#ffd1a0;background:#be66126b;border-color:#ffb45e94}:root[data-theme=dark] .badge-canceled{color:#ffaaa5;background:#7f1d1d47;border-color:#f8717157}:root[data-theme=dark] .badge-noshow{color:#ffbd7a;background:#9a561447;border-color:#fb923c5c}:root[data-theme=dark] .clinical-table tbody tr.session-row-canceled,:root[data-theme=dark] .clinical-table tbody tr.session-row-canceled:hover{background:#5c1c203d}:root[data-theme=dark] .clinical-table tbody tr.session-row-noshow,:root[data-theme=dark] .clinical-table tbody tr.session-row-noshow:hover{background:#5c38163d}:root[data-theme=dark] .clinical-table tbody tr.session-row-canceled td:first-child>div:first-child{color:#ffb8b3}:root[data-theme=dark] .clinical-table tbody tr.session-row-noshow td:first-child>div:first-child{color:#ffc58f}:root[data-theme=dark] .clinical-table .session-status-chip.badge:not(.badge-canceled):not(.badge-noshow),:root[data-theme=dark] .clinical-table .session-status-action-trigger.badge:not(.badge-canceled):not(.badge-noshow){color:#dfe6e3;background:#ffffff12;border-color:#ffffff21}:root[data-theme=dark] .clinical-table .session-status-action-trigger.badge:not(.badge-canceled):not(.badge-noshow):hover,:root[data-theme=dark] .clinical-table .session-status-action-trigger.badge:not(.badge-canceled):not(.badge-noshow):focus-visible{color:#f4f4f4;background:#ffffff1a;border-color:#57d2bc4d}:root[data-theme=dark] .session-status-chip-icon{box-shadow:inset 0 1px #ffffff1a}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-status-chip.badge:not(.badge-canceled):not(.badge-noshow){color:#dfe6e3;background:#ffffff12;border-color:#ffffff21}:root[data-theme=dark] .appointment-manage-modal .badge-paid{color:#a7f3d0;background:#12805f3d;border-color:#5eeabb47}:root[data-theme=dark] .appointment-manage-modal .badge-partial{color:#fde68a;background:#9260143d;border-color:#fbbf244d}:root[data-theme=dark] .appointment-manage-modal .badge-unpaid{color:#fecaca;background:#7f1d1d3d;border-color:#f871714d}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-status-chip.badge-canceled{color:#ffaaa5}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-status-chip.badge-noshow{color:#ffbd7a}:root[data-theme=dark] .auth-shell{--auth-bg:radial-gradient(circle at 14% 12%, #0f8c792e, transparent 26%), radial-gradient(circle at 88% 16%, #4755692e, transparent 30%), linear-gradient(180deg, #0b1118 0%, #0f1721 52%, #121d29 100%);--auth-intro-title-color:#f8fafc;--auth-intro-description-color:#cbd5e1d6;--auth-brand-name-color:#57d2bc;--auth-brand-tag-color:#cbd5e19e;--auth-panel-title-color:#f8fafc;--auth-panel-description-color:#cbd5e1d6;--auth-orb-left-bg:radial-gradient(circle, #0f8c7938 0%, transparent 70%);--auth-orb-right-bg:radial-gradient(circle, #3341557a 0%, transparent 74%);--auth-beam-bg:linear-gradient(145deg, #1c2634db 0%, #1c263457 100%);--auth-beam-highlight:inset 0 1px 0 #ffffff12;--auth-panel-bg:#12171fd1;--auth-panel-border:#ffffff14;--auth-panel-shadow:0 30px 80px #00000061, 0 12px 30px #0000002e;--auth-input-bg:#0f1720bd;--auth-input-border:#94a3b82e;--auth-input-shadow:inset 0 1px 0 #ffffff0a;--auth-input-placeholder:#7c8aa0;--auth-note-bg:#141b25c7;--auth-note-border:#ffffff0f;--auth-note-shadow:0 18px 40px #0000003d;--auth-footer-text:#cbd5e1b8}:root[data-theme=dark] .auth-field-label,:root[data-theme=dark] .auth-field-meta,:root[data-theme=dark] .auth-field-support,:root[data-theme=dark] .auth-security-badge{color:#cbd5e1d6}:root[data-theme=dark] .auth-brand-mark{filter:drop-shadow(0 10px 24px #0f8c792e)}:root[data-theme=dark] .auth-field-shell:focus-within{background:#0f172002;box-shadow:0 0 0 4px #57d2bc1f,inset 0 1px #ffffff0a}:root[data-theme=dark] .auth-field-error{color:#ff9b93}:root[data-theme=dark] .auth-input-control{color:#f8fafc}:root[data-theme=dark] .auth-input-action{color:#cbd5e1bd}:root[data-theme=dark] .auth-input-action:hover,:root[data-theme=dark] .auth-input-action:focus-visible{color:#57d2bc;background:#57d2bc1f}:root[data-theme=dark] .auth-secondary-button{color:#e2e8f0;background:#0f1720bd;border-color:#94a3b82e}:root[data-theme=dark] .auth-secondary-button:hover{background:#141e2aeb}:root[data-theme=dark] .auth-text-link{color:#6ae0cb}:root[data-theme=dark] .auth-security-badge{background:#0f1720b3;border-color:#ffffff14;box-shadow:0 14px 32px #0003}:root[data-theme=dark] body,:root[data-theme=dark] .dashboard-shell,:root[data-theme=dark] .dashboard-content,:root[data-theme=dark] .dashboard-content-inner,:root[data-theme=dark] .dashboard-content main{background:var(--bg)}:root[data-theme=dark] .modal-card-elevated{background:#181d20e0;border-color:#687c8c38;box-shadow:0 18px 42px #00000057}:root[data-theme=dark] .modal-shell-header{border-bottom-color:#687c8c33}:root[data-theme=dark] .modal-shell-title,:root[data-theme=dark] .modal-card-create-appointment .modal-head h2,:root[data-theme=dark] .modal-card-create-appointment .modal-head h3,:root[data-theme=dark] .public-booking-modal .modal-head h2,:root[data-theme=dark] .public-booking-modal .modal-head h3,:root[data-theme=dark] .appointment-manage-primary-value{color:#f3f8f6}:root[data-theme=dark] .appointment-manage-title-separator,:root[data-theme=dark] .appointment-manage-title-status{color:#c0d0cb}:root[data-theme=dark] .modal-shell-badge{color:#92e0d0;background:linear-gradient(#0f8c7942,#0f8c7924)}:root[data-theme=dark] .modal-shell-close,:root[data-theme=dark] .modal-card-create-appointment .modal-close,:root[data-theme=dark] .public-booking-modal .modal-close{color:#b7c5c0}:root[data-theme=dark] .modal-shell-close:hover,:root[data-theme=dark] .modal-shell-close:focus-visible,:root[data-theme=dark] .modal-card-create-appointment .modal-close:hover,:root[data-theme=dark] .modal-card-create-appointment .modal-close:focus-visible,:root[data-theme=dark] .public-booking-modal .modal-close:hover,:root[data-theme=dark] .public-booking-modal .modal-close:focus-visible{color:#f3f8f6;background:#ffffff14}:root[data-theme=dark] .modal-shell-footer{background:linear-gradient(#151c1fd1,#12181bf0);border-top-color:#687c8c2e}:root[data-theme=dark] .modal-section-heading{color:#8fa49f}:root[data-theme=dark] .modal-section-divider{background:linear-gradient(90deg,#687c8c38,#0000)}:root[data-theme=dark] .modal-card-create-appointment .modal-head,:root[data-theme=dark] .public-booking-modal .modal-head{background:#14191cd6;border-bottom-color:#687c8c33}:root[data-theme=dark] .appointment-form-slot-summary,:root[data-theme=dark] .appointment-form-context-line{color:#a8bbb6}:root[data-theme=dark] .modal-card-create-appointment .appointment-form-actions,:root[data-theme=dark] .public-booking-modal .appointment-form-actions{background:linear-gradient(#11161900 0%,#12181beb 24%,#111619fa 100%)}:root[data-theme=dark] .appointment-form-context-card,:root[data-theme=dark] .appointment-manage-summary-card{--appointment-manage-divider:#687c8c3d;background:linear-gradient(#182124f0,#131b1efa);box-shadow:inset 0 1px #ffffff08}:root[data-theme=dark] .monthly-availability-picker-calendar-card,:root[data-theme=dark] .monthly-availability-picker-slots-card{background:linear-gradient(#141c1ff5,#10171a);border-color:#687c8c38;box-shadow:0 18px 36px #0000003d,inset 0 1px #ffffff05}:root[data-theme=dark] .appointment-manage-summary-card-danger{background:linear-gradient(#371b1ff0,#271518fa)}:root[data-theme=dark] .appointment-manage-summary-card-warning{background:linear-gradient(#372813f0,#281c0dfa)}:root[data-theme=dark] .appointment-form-section-title,:root[data-theme=dark] .appointment-form-field-label,:root[data-theme=dark] .appointment-form-online-link-title,:root[data-theme=dark] .appointment-form-toggle-title,:root[data-theme=dark] .appointment-form-checkbox-title,:root[data-theme=dark] .appointment-manage-info-label,:root[data-theme=dark] .appointment-manage-field-label,:root[data-theme=dark] .appointment-manage-toggle-title,:root[data-theme=dark] .appointment-manage-reason-field label,:root[data-theme=dark] .modal-alert-copy strong{color:#c0d0cb}:root[data-theme=dark] .appointment-form-field-label-hint,:root[data-theme=dark] .appointment-form-field-description,:root[data-theme=dark] .appointment-form-inline-note,:root[data-theme=dark] .appointment-form-toggle-description,:root[data-theme=dark] .appointment-form-checkbox-description,:root[data-theme=dark] .monthly-availability-picker-eyebrow,:root[data-theme=dark] .monthly-availability-picker-status,:root[data-theme=dark] .appointment-manage-choice-description,:root[data-theme=dark] .appointment-manage-field-description,:root[data-theme=dark] .appointment-manage-toggle-description,:root[data-theme=dark] .appointment-manage-inline-note,:root[data-theme=dark] .modal-alert-copy p,:root[data-theme=dark] .modal-alert-body p{color:#8ea09c}:root[data-theme=dark] .appointment-manage-detail-subrow{color:#a9bbb6}:root[data-theme=dark] .appointment-manage-detail-subrow svg,:root[data-theme=dark] .appointment-manage-detail-meta-label{color:#8ea09c}:root[data-theme=dark] .appointment-form-field-shell,:root[data-theme=dark] .appointment-manage-field-shell,:root[data-theme=dark] .appointment-manage-reason-field input{background:#0d1214eb;border-color:#687c8c38;box-shadow:inset 0 1px #ffffff05,0 1px 2px #00000029}:root[data-theme=dark] .appointment-form-field-shell:focus-within,:root[data-theme=dark] .appointment-manage-field-shell:focus-within{background:#101618f5;border-color:#40c2aa80;box-shadow:0 0 0 3px #40c2aa24,0 14px 30px #0003}:root[data-theme=dark] .appointment-form-control,:root[data-theme=dark] .appointment-manage-field-shell select,:root[data-theme=dark] .appointment-manage-reason-field input{color:#edf5f2}:root[data-theme=dark] .appointment-form-control::placeholder,:root[data-theme=dark] .appointment-manage-field-shell select:disabled,:root[data-theme=dark] .appointment-form-control:disabled,:root[data-theme=dark] .appointment-form-control[readonly]{color:#829490;-webkit-text-fill-color:#829490}:root[data-theme=dark] .appointment-form-control:disabled,:root[data-theme=dark] .appointment-form-control[readonly]{background:#0d1214eb}:root[data-theme=dark] .appointment-form-field-icon,:root[data-theme=dark] .appointment-form-field-chevron,:root[data-theme=dark] .appointment-manage-field-icon,:root[data-theme=dark] .appointment-manage-field-chevron,:root[data-theme=dark] .appointment-manage-detail-row svg,:root[data-theme=dark] .modal-alert-icon{color:#8fa39e}:root[data-theme=dark] .appointment-form-chip,:root[data-theme=dark] .appointment-manage-chip-button{color:#bfe6dc;background:#0f8c7924}:root[data-theme=dark] .appointment-form-chip:hover,:root[data-theme=dark] .appointment-form-chip:focus-within,:root[data-theme=dark] .appointment-form-chip:active,:root[data-theme=dark] .appointment-manage-chip-button:hover,:root[data-theme=dark] .appointment-manage-chip-button:focus-visible{background:var(--interactive-surface-hover-bg)}:root[data-theme=dark] .appointment-form-chip.is-active{color:#e8eef3;box-shadow:0 10px 18px #0000003d}:root[data-theme=dark] .appointment-form-toggle-card,:root[data-theme=dark] .appointment-form-checkbox-card,:root[data-theme=dark] .appointment-form-recurring-card,:root[data-theme=dark] .appointment-form-segmented,:root[data-theme=dark] .appointment-manage-toggle-card{background:linear-gradient(#151d20f5,#11181b)}:root[data-theme=dark] .appointment-form-switch-track{background:#8fa39e2e}:root[data-theme=dark] .appointment-form-switch-thumb{background:#f3f8f6;box-shadow:0 4px 10px #00000047}:root[data-theme=dark] .appointment-form-segment-option,:root[data-theme=dark] .monthly-availability-picker-title,:root[data-theme=dark] .monthly-availability-picker-slot-time,:root[data-theme=dark] .appointment-manage-choice-head,:root[data-theme=dark] .appointment-manage-detail-row{color:#d7e3df}:root[data-theme=dark] .monthly-availability-picker .fc .fc-col-header-cell-cushion,:root[data-theme=dark] .monthly-availability-picker .fc .fc-day-other .fc-daygrid-day-number{color:#8ea09c}:root[data-theme=dark] .monthly-availability-picker .fc .fc-button{color:#d7e3df;background:#0d1214eb;border-color:#687c8c38}:root[data-theme=dark] .monthly-availability-picker .fc .fc-button:hover,:root[data-theme=dark] .monthly-availability-picker .fc .fc-button:focus-visible{color:#edf5f2;background:#141c1ff5}:root[data-theme=dark] .monthly-availability-picker .fc .fc-theme-standard td,:root[data-theme=dark] .monthly-availability-picker .fc .fc-theme-standard th,:root[data-theme=dark] .monthly-availability-picker .fc .fc-scrollgrid{border-color:#687c8c2e}:root[data-theme=dark] .monthly-availability-picker .fc .fc-daygrid-day-number{color:#d7e3df}:root[data-theme=dark] .monthly-availability-picker .fc .monthly-availability-day-cell{background:linear-gradient(#151c1ff5,#12181b)}:root[data-theme=dark] .monthly-availability-picker .fc .monthly-availability-day-cell.has-availability{background:linear-gradient(#132a25f0,#121c1a)}:root[data-theme=dark] .monthly-availability-picker .fc .monthly-availability-day-cell.is-selected{box-shadow:inset 0 0 0 2px var(--interactive-surface-selected-border)}:root[data-theme=dark] .monthly-availability-picker .fc .monthly-availability-day-cell.is-selected .fc-daygrid-day-number{background:var(--interactive-surface-selected-bg-top);color:#e8eef3}:root[data-theme=dark] .monthly-availability-picker .fc .monthly-availability-calendar-event .fc-event-main{color:#8ee4d1}:root[data-theme=dark] .monthly-availability-picker-feedback{color:#d7e3df;background:#10171af0}:root[data-theme=dark] .monthly-availability-picker-feedback.is-error{color:#ffb8b8;background:#371b1ff0}:root[data-theme=dark] .monthly-availability-picker-slot-button{background:#0d1214eb;border-color:#687c8c38}:root[data-theme=dark] .monthly-availability-picker-slot-button:hover,:root[data-theme=dark] .monthly-availability-picker-slot-button:focus-visible{background:var(--interactive-surface-hover-bg);border-color:var(--interactive-surface-hover-border);box-shadow:var(--interactive-surface-hover-shadow)}:root[data-theme=dark] .monthly-availability-picker-slot-button.is-selected{background:linear-gradient(180deg, var(--interactive-surface-selected-bg-top), var(--interactive-surface-selected-bg-bottom));border-color:var(--interactive-surface-selected-border);color:#e8eef3;box-shadow:0 12px 22px #0000003d, inset 0 0 0 1px var(--interactive-surface-selected-shadow)}:root[data-theme=dark] .appointment-form-segment-option.is-active{color:#7de0c8;background:#ffffff14;box-shadow:0 10px 20px #0000002e}:root[data-theme=dark] .appointment-form-autocomplete-list{background:#101618fa;box-shadow:0 18px 36px #00000057}:root[data-theme=dark] .appointment-form-autocomplete-item{color:#dce8e4}:root[data-theme=dark] .appointment-form-autocomplete-item:hover,:root[data-theme=dark] .appointment-form-autocomplete-item:focus-visible{background:#0f8c7929}:root[data-theme=dark] .appointment-manage-avatar{color:#e8f6f1;background:linear-gradient(#187365f5,#115d51)}:root[data-theme=dark] .appointment-manage-service,:root[data-theme=dark] .appointment-manage-choice-icon{color:#78dcc5}:root[data-theme=dark] .appointment-manage-choice-card{background:#11171aeb;border-color:#687c8c2e}:root[data-theme=dark] .appointment-manage-choice-card:hover,:root[data-theme=dark] .appointment-manage-choice-card:focus-visible,:root[data-theme=dark] .appointment-manage-choice-card:active{background:var(--interactive-surface-hover-bg);border-color:var(--interactive-surface-hover-border);box-shadow:var(--interactive-surface-hover-shadow)}:root[data-theme=dark] .appointment-manage-choice-card.is-selected{border-color:var(--interactive-surface-selected-border);background:linear-gradient(180deg, var(--interactive-surface-selected-bg-top), var(--interactive-surface-selected-bg-bottom));box-shadow:inset 0 0 0 1px var(--interactive-surface-selected-shadow)}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-action-panel-surface,:root[data-theme=dark] .appointment-manage-modal .appointment-manage-note-card{background:linear-gradient(#141c1ff5,#10171a);border-color:#687c8c3d;box-shadow:0 18px 36px #00000038,inset 0 1px #ffffff08}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-note-card-muted,:root[data-theme=dark] .appointment-manage-modal .session-notes-readonly-card,:root[data-theme=dark] .appointment-manage-modal .session-notes-note-card,:root[data-theme=dark] .appointment-manage-modal .payment-status-scope-row label{background:#0d1214c7;border-color:#687c8c2e}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-action-panel-block{border-top-color:#687c8c2e}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-action-panel-head strong,:root[data-theme=dark] .appointment-manage-modal .appointment-manage-action-panel-block-heading strong,:root[data-theme=dark] .appointment-manage-modal .session-notes-note-head>span,:root[data-theme=dark] .appointment-manage-modal .payment-field-head label{color:#d7e3df}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-action-panel-head p,:root[data-theme=dark] .appointment-manage-modal .appointment-manage-action-panel-block-heading span,:root[data-theme=dark] .appointment-manage-modal .session-notes-description,:root[data-theme=dark] .appointment-manage-modal .session-notes-note-helper{color:#8ea09c}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-action-panel-icon{color:#7de0c8;background:#0f8c792e}:root[data-theme=dark] .appointment-manage-modal .modal-ghost-button{border:1px solid #687c8c3d}:root[data-theme=dark] .appointment-manage-modal .modal-ghost-button:hover,:root[data-theme=dark] .appointment-manage-modal .modal-ghost-button:focus-visible{border-color:var(--interactive-surface-hover-border)}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-inline-editor>select,:root[data-theme=dark] .appointment-manage-modal .appointment-manage-inline-select-shell,:root[data-theme=dark] .appointment-manage-modal .appointment-manage-reminder-select,:root[data-theme=dark] .appointment-manage-modal .session-notes-note-editor textarea,:root[data-theme=dark] .appointment-manage-modal .payment-status-collection-grid input,:root[data-theme=dark] .appointment-manage-modal .payment-status-collection-grid select,:root[data-theme=dark] .appointment-manage-modal .payment-status-collection-grid textarea,:root[data-theme=dark] .appointment-manage-modal .modal-section-content>div>input,:root[data-theme=dark] .appointment-manage-modal .modal-section-content>div>textarea{color:#edf5f2;background:#0d1214eb;border-color:#687c8c3d}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-inline-select-shell select{color:#edf5f2}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-inline-editor>select:focus,:root[data-theme=dark] .appointment-manage-modal .appointment-manage-inline-editor>select:focus-visible,:root[data-theme=dark] .appointment-manage-modal .appointment-manage-inline-select-shell:focus-within,:root[data-theme=dark] .appointment-manage-modal .appointment-manage-reminder-select:focus,:root[data-theme=dark] .appointment-manage-modal .appointment-manage-reminder-select:focus-visible,:root[data-theme=dark] .appointment-manage-modal .session-notes-note-editor textarea:focus,:root[data-theme=dark] .appointment-manage-modal .session-notes-note-editor textarea:focus-visible{border-color:#40c2aa80;box-shadow:0 0 0 3px #40c2aa24}:root[data-theme=dark] .appointment-manage-modal .payment-input-readonly{color:#d7e3df;background:#12181beb;border-color:#687c8c2e}:root[data-theme=dark] .appointment-manage-modal .payment-input-inactive{color:#829490;background:#0d12149e;border-color:#687c8c24}:root[data-theme=dark] .appointment-manage-modal .session-notes-note-icon-button{color:#b7c5c0;background:#12181beb;border-color:#687c8c3d;box-shadow:inset 0 1px #ffffff0f}:root[data-theme=dark] .appointment-manage-modal .session-notes-note-icon-button:hover,:root[data-theme=dark] .appointment-manage-modal .session-notes-note-icon-button:focus-visible{background:var(--interactive-surface-hover-bg);border-color:var(--interactive-surface-hover-border);color:#7de0c8;box-shadow:var(--interactive-surface-hover-shadow)}:root[data-theme=dark] .appointment-manage-modal .session-notes-note-card p,:root[data-theme=dark] .appointment-manage-modal .session-notes-readonly-card p,:root[data-theme=dark] .appointment-manage-modal .appointment-manage-note-input{color:#edf5f2}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-panel-feedback-success{color:#a7f3d0;background:#12533f70;border-color:#5eeabb3d}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-panel-feedback-info{color:#a5f3fc;background:#1449536b;border-color:#67e8f933}:root[data-theme=dark] .appointment-manage-modal .appointment-manage-panel-feedback-error{color:#fecaca;background:#5c1c2070;border-color:#f871713d}:root[data-theme=dark] .appointment-manage-reminder-link:hover,:root[data-theme=dark] .appointment-manage-reminder-link:focus-visible{color:#aab9c7;background:0 0}:root[data-theme=dark] .modal-alert-info{background:linear-gradient(#1c2634eb,#151d28fa)}:root[data-theme=dark] .modal-alert-warning{background:linear-gradient(#352712f0,#291d0dfa)}:root[data-theme=dark] .modal-alert-danger{background:linear-gradient(#3a1b1ff0,#2a1417fa)}:root[data-theme=dark] .modal-alert-success{background:linear-gradient(#142c26f0,#0e1f1bfa)}:root[data-theme=dark] .modal-alert-warning .modal-alert-icon{color:#f3c46d}:root[data-theme=dark] .modal-ghost-button{color:#d6e3de;background:#ffffff14}:root[data-theme=dark] .portal-surface{background:linear-gradient(180deg, #151c1ff5, #11171a), var(--surface);border-color:#687c8c2e;box-shadow:inset 0 1px #ffffff08,0 18px 38px #00000038}:root[data-theme=dark] .portal-section-head h2,:root[data-theme=dark] .portal-tenant-brand h1,:root[data-theme=dark] .portal-consent-title{color:#edf5f2}:root[data-theme=dark] .portal-tenant-meta .muted,:root[data-theme=dark] .portal-section-head .muted,:root[data-theme=dark] .portal-consent-collapsed .muted,:root[data-theme=dark] .portal-appointments-table__date-cell .muted,:root[data-theme=dark] .portal-consent-copy .muted{color:#96aaa4}:root[data-theme=dark] .portal-selector-surface,:root[data-theme=dark] .portal-consent-copy,:root[data-theme=dark] .portal-consent-section{background:linear-gradient(#182024f5,#131b1e);border-color:#687c8c2e;box-shadow:inset 0 1px #ffffff08}:root[data-theme=dark] .portal-consent-section legend{color:#a9bbb6}:root[data-theme=dark] .portal-profile-chip{color:#d7e3df;background:#11171ae0;border-color:#687c8c2e}:root[data-theme=dark] .portal-profile-chip:hover,:root[data-theme=dark] .portal-profile-chip:focus-visible{background:var(--interactive-surface-hover-bg);border-color:var(--interactive-surface-hover-border);box-shadow:var(--interactive-surface-hover-shadow)}:root[data-theme=dark] .portal-profile-chip.is-active{border-color:var(--interactive-surface-selected-border);background:linear-gradient(180deg, var(--interactive-surface-selected-bg-top), var(--interactive-surface-selected-bg-bottom));color:#edf5f2;box-shadow:inset 0 0 0 1px var(--interactive-surface-selected-shadow)}:root[data-theme=dark] .portal-action-row,:root[data-theme=dark] .portal-consent-footer{border-top-color:#687c8c24}:root[data-theme=dark] .portal-appointments-table th,:root[data-theme=dark] .portal-appointments-table td{border-color:#687c8c24}:root[data-theme=dark] .portal-appointments-table th{color:#c8d7d2}:root[data-theme=dark] .portal-appointments-table td{color:#dfe9e6}:root[data-theme=dark] .portal-consent-collapsed .success,:root[data-theme=dark] .portal-consent-feedback.success,:root[data-theme=dark] .portal-consent-feedback{color:#8fd9ca}:root[data-theme=dark] .portal-consent-collapsed .error,:root[data-theme=dark] .portal-consent-feedback.error{color:#ffb8b8}:root[data-theme=dark] .modal-ghost-button:hover,:root[data-theme=dark] .modal-ghost-button:focus-visible{background:#ffffff1f}:root[data-theme=dark] .appointment-manage-inline-link{color:#7de0c8}:root[data-theme=dark] .appointment-manage-inline-link:hover,:root[data-theme=dark] .appointment-manage-inline-link:focus-visible{color:#9ce8d6}:root[data-theme=dark] .appointment-manage-icon-action,:root[data-theme=dark] .appointment-manage-meet-connect-button{color:#bfe6dc;background:#0f8c7924;border-color:#7de0c838;box-shadow:inset 0 1px #ffffff14}:root[data-theme=dark] .appointment-manage-icon-action:hover,:root[data-theme=dark] .appointment-manage-icon-action:focus-visible,:root[data-theme=dark] .appointment-manage-icon-action.is-active,:root[data-theme=dark] .appointment-manage-meet-connect-button:hover,:root[data-theme=dark] .appointment-manage-meet-connect-button:focus-visible{color:#9ce8d6;background:#0f8c7938;border-color:#7de0c857}:root[data-theme=dark] .appointment-manage-date-time-emphasis{color:#edf5f2}:root[data-theme=dark] .appointment-manage-date-jump:disabled{color:#c4d3cf}:root[data-theme=dark] .appointment-manage-danger-link{color:#ff8d86}:root[data-theme=dark] .appointment-manage-danger-link:hover,:root[data-theme=dark] .appointment-manage-danger-link:focus-visible{color:#ffb2ac}:root[data-theme=dark] input:-webkit-autofill{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0px 1000px var(--surface) inset;transition:background-color 5000s ease-in-out}:root[data-theme=dark] input:-webkit-autofill:hover{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0px 1000px var(--surface) inset;transition:background-color 5000s ease-in-out}:root[data-theme=dark] input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0px 1000px var(--surface) inset;transition:background-color 5000s ease-in-out}:root[data-theme=dark] textarea:-webkit-autofill{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0px 1000px var(--surface) inset;transition:background-color 5000s ease-in-out}:root[data-theme=dark] textarea:-webkit-autofill:hover{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0px 1000px var(--surface) inset;transition:background-color 5000s ease-in-out}:root[data-theme=dark] textarea:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0px 1000px var(--surface) inset;transition:background-color 5000s ease-in-out}:root[data-theme=dark] select:-webkit-autofill{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0px 1000px var(--surface) inset;transition:background-color 5000s ease-in-out}:root[data-theme=dark] select:-webkit-autofill:hover{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0px 1000px var(--surface) inset;transition:background-color 5000s ease-in-out}:root[data-theme=dark] select:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0px 1000px var(--surface) inset;transition:background-color 5000s ease-in-out}
.cancel-reason-field{gap:6px;display:grid}.appointment-cancellation-reason-trigger{font-weight:700}.appointment-cancellation-reason-trigger.badge-canceled{border-width:2px;padding:2px 8px}.appointment-cancellation-reason-modal{width:min(420px,100%)}.appointment-cancellation-reason-text{white-space:pre-wrap;word-break:break-word;margin:0}.radio-row{flex-wrap:wrap;gap:10px;display:flex}.radio-row label{align-items:center;gap:5px;font-weight:500;display:inline-flex}.radio-row input{width:auto}.calendar{--calendar-past-day-bg:#f8f8f8;--calendar-outside-month-bg:#f1f1f1;--calendar-available-bg:#1a8c5229;--calendar-available-border:#1a8c526b;--calendar-available-border-hover:#1a8c52a6;--calendar-available-text:#1b6f42;--calendar-canceled-bg:#b82c2c21;--calendar-canceled-bg-hover:#b82c2c2e;--calendar-canceled-border:#b82c2c59;--calendar-canceled-border-hover:#b82c2c99;--calendar-canceled-text:#8f2222;--calendar-out-of-office-rgb:63 94 161;--calendar-out-of-office-bg:rgb(var(--calendar-out-of-office-rgb) / 12%);--calendar-out-of-office-bg-hover:rgb(var(--calendar-out-of-office-rgb) / 18%);--calendar-out-of-office-border:rgb(var(--calendar-out-of-office-rgb) / 32%);--calendar-out-of-office-border-hover:rgb(var(--calendar-out-of-office-rgb) / 52%);--calendar-out-of-office-text:#3f5ea1;gap:10px;display:grid}.calendar-view-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.calendar-heading-controls{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;display:inline-flex}.calendar-section-title{min-width:0;margin:0}.calendar-view-switcher{width:fit-content;position:relative}button.calendar-view-switcher-trigger{border-color:color-mix(in srgb, var(--primary) 12%, var(--border));background:color-mix(in srgb, var(--surface) 94%, var(--primary) 6%);width:auto;min-width:92px;height:38px;color:var(--text);font-size:var(--fs-base);border-radius:999px;justify-content:space-between;align-items:center;gap:10px;padding:7px 11px 7px 14px;font-weight:700;transition:background-color .18s,border-color .18s,box-shadow .18s;display:inline-flex;box-shadow:0 10px 24px #0f8c7914}button.calendar-view-switcher-trigger:hover,button.calendar-view-switcher-trigger:focus-visible,button.calendar-view-switcher-trigger[aria-expanded=true]{border-color:color-mix(in srgb, var(--primary) 45%, var(--border));background:color-mix(in srgb, var(--surface) 82%, var(--primary) 18%);outline:none;box-shadow:0 12px 28px #0f8c7924}.calendar-view-switcher-menu{z-index:55;border:1px solid color-mix(in srgb, var(--primary) 10%, var(--border));background:color-mix(in srgb, var(--surface) 97%, var(--primary) 3%);border-radius:13px;width:168px;padding:6px;position:absolute;top:calc(100% + 8px);left:0;overflow:hidden;box-shadow:0 18px 42px #17171721}button.calendar-view-switcher-option{width:100%;color:var(--text);text-align:left;font-size:var(--fs-base);background:0 0;border:0;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;font-weight:700;transition:background-color .18s,color .18s;display:flex}button.calendar-view-switcher-option:hover,button.calendar-view-switcher-option:focus-visible{background:color-mix(in srgb, var(--primary) 10%, transparent);outline:none}button.calendar-view-switcher-option.is-selected{background:color-mix(in srgb, var(--primary) 11%, var(--surface));color:var(--primary-strong)}.calendar-view-switcher-check,.calendar-control-icon{flex:none}.calendar-today-button{border-radius:9px;width:auto;min-width:74px;height:34px;padding:7px 12px}@media (max-width:768px){.calendar-view-toolbar{grid-template-columns:auto minmax(0,1fr);justify-content:stretch;align-items:stretch;display:grid}.calendar-heading-controls{display:contents}.calendar-heading-controls .calendar-view-switcher{grid-area:2/1}.calendar-section-title{grid-area:1/1/auto/-1}.calendar-period-controls{grid-area:2/2;justify-content:flex-end;min-width:0;margin-left:0}.calendar-period-title{font-size:14px}.appointment-manage-modal{border-radius:20px;width:100%}.modal-card-create-appointment,.public-booking-modal{border-radius:20px}.modal-card-create-appointment .modal-head,.public-booking-modal .modal-head,.modal-card-create-appointment .appointment-form,.public-booking-modal .appointment-form,.appointment-form-slot-summary{padding-left:18px;padding-right:18px}.appointment-form-grid-2{grid-template-columns:minmax(0,1fr)}.appointment-form-toggle-card,.appointment-form-checkbox-card{align-items:flex-start}.appointment-form-slot-summary,.appointment-form-context-line,.appointment-form-field-description,.appointment-form-inline-note,.appointment-form-toggle-description,.appointment-form-checkbox-description{font-size:13px}.appointment-form-section-title,.appointment-form-field-label,.appointment-form-toggle-title,.appointment-form-checkbox-title{font-size:14px}.appointment-form-field-label-hint{font-size:12px}.appointment-form-chip,.appointment-form-segment-option{font-size:15px}.appointment-form-control{font-size:16px}main{padding:16px}.card-narrow{width:100%}.modal-shell-header,.modal-shell-body,.modal-shell-footer{padding-left:18px;padding-right:18px}.appointment-manage-info-grid,.appointment-manage-choice-grid,.appointment-manage-field-grid{grid-template-columns:minmax(0,1fr)}.monthly-availability-picker-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.monthly-availability-picker-calendar-card,.monthly-availability-picker-slots-card{padding:14px}.monthly-availability-picker-slot-button{padding:12px}.monthly-availability-picker-slot-time{font-size:15px}.monthly-availability-picker .fc .monthly-availability-day-cell.is-unavailable .fc-daygrid-day-frame{min-height:24px}.monthly-availability-picker .fc .monthly-availability-day-cell.has-availability .fc-daygrid-day-frame{min-height:76px}.monthly-availability-picker .fc .monthly-availability-day-cell.has-availability .fc-daygrid-day-events{min-height:18px}.monthly-availability-picker .fc .fc-header-toolbar{grid-template-columns:40px minmax(0,1fr) 40px;gap:8px}.monthly-availability-picker .fc .fc-toolbar-title{font-size:18px}.appointment-manage-primary-value,.appointment-manage-service{font-size:22px}.appointment-manage-footer{align-items:stretch}.modal-primary-button-wide,.appointment-manage-danger-link{justify-content:center;width:100%}}.calendar-period-controls{align-items:center;gap:6px;min-width:0;max-width:100%;margin-left:auto;display:inline-flex}.calendar-period-title{text-align:center;text-transform:capitalize;white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;margin:0;padding:0 2px;overflow:hidden}.calendar-arrow-button{width:34px;min-width:34px;height:34px;color:var(--text);border-color:color-mix(in srgb, var(--primary) 12%, var(--border));background:color-mix(in srgb, var(--surface) 94%, var(--primary) 6%);border-radius:999px;justify-content:center;align-items:center;padding:0;font-weight:700;line-height:1;transition:background-color .18s,border-color .18s,color .18s;display:inline-flex}.calendar-arrow-button:hover,.calendar-arrow-button:focus-visible{color:var(--primary-strong);border-color:color-mix(in srgb, var(--primary) 45%, var(--border));background:color-mix(in srgb, var(--surface) 82%, var(--primary) 18%);outline:none}.calendar-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%}.calendar-table-scroll{-webkit-overflow-scrolling:touch;border-radius:12px;width:100%;overflow-x:auto;box-shadow:0 12px 30px #1717170d}.calendar-table th,.calendar-table td{border-right:1px solid var(--border);border-bottom:1px solid var(--border);vertical-align:top}.calendar-table tr>:first-child{border-left:1px solid var(--border)}.calendar-table thead tr:first-child>*{border-top:1px solid var(--border)}.calendar-table thead tr:first-child>:first-child{border-top-left-radius:12px}.calendar-table thead tr:first-child>:last-child{border-top-right-radius:12px}.calendar-table tbody tr:last-child>:first-child{border-bottom-left-radius:12px}.calendar-table tbody tr:last-child>:last-child{border-bottom-right-radius:12px}.calendar-table th{text-align:center;background:color-mix(in srgb, var(--primary) 8%, var(--surface));color:var(--text);padding:10px 7px;font-weight:700;position:relative}.calendar-table th.is-current-weekday{background:color-mix(in srgb, var(--primary) 12%, var(--surface));color:var(--primary-strong)}.calendar-table th.is-current-weekday:after{content:"";background:var(--primary);border-radius:999px;width:22px;height:2px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.calendar-cell{background:var(--surface);min-height:120px;padding:7px}.calendar-cell.is-today{box-shadow:inset 0 0 0 2px var(--calendar-today-border-strong);background:color-mix(in srgb, var(--primary) 5%, var(--surface))}.calendar-cell.is-past-day{background:var(--calendar-past-day-bg)}.calendar-cell.is-outside-current-month{background:var(--calendar-outside-month-bg)}.calendar-empty{background:var(--surface-soft)}.calendar-day{width:fit-content;min-width:24px;height:24px;font-size:var(--fs-xs);color:var(--text);border-radius:999px;justify-content:center;align-items:center;margin-bottom:5px;padding:0 6px;font-weight:600;display:inline-flex}.calendar-cell.is-outside-current-month .calendar-day{color:var(--muted);opacity:.48}.calendar-day.is-today{background:var(--button-bg);color:var(--button-text);font-weight:700;box-shadow:0 8px 18px #0f8c7938}.calendar-items{gap:3px;display:grid}.calendar-item-tooltip-wrap{min-width:0}.calendar-item-tooltip-wrap>.calendar-item{width:100%}.calendar-item{font-size:var(--fs-2xs);border:1px solid var(--border);background:var(--surface-soft);color:var(--text);border-radius:5px;padding:3px 4px}.calendar-item-button{text-align:left;width:100%;min-width:0;color:var(--text);background:var(--surface-soft);border:1px solid var(--border);font-weight:500;font-size:var(--fs-2xs);align-items:center;gap:5px;padding:3px 4px;display:flex;overflow:hidden}.calendar-item-button:hover{background:var(--surface-soft);color:var(--text);border-color:var(--primary)}.calendar-item-button:focus-visible{background:var(--surface-soft);color:var(--text)}.calendar-item-button strong{font-size:var(--fs-2xs);flex:none}.calendar-item-text{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;display:block;overflow:hidden}.calendar-item-empty{background:var(--calendar-available-bg);border-color:var(--calendar-available-border);color:var(--calendar-available-text)}.calendar-item-empty:hover{border-color:var(--calendar-available-border-hover)}.calendar-item-out-of-office{background:var(--calendar-out-of-office-bg);border-color:var(--calendar-out-of-office-border);color:var(--calendar-out-of-office-text);align-items:center;gap:5px;font-weight:600;display:flex}.calendar-item-out-of-office strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:58%;overflow:hidden}.calendar-item-out-of-office:hover{border-color:var(--calendar-out-of-office-border-hover);background:var(--calendar-out-of-office-bg-hover)}.calendar-item-more{background:var(--surface-soft);border-color:var(--border);color:var(--muted);white-space:nowrap;justify-content:center;gap:0;font-weight:700}.calendar-item-more:hover,.calendar-item-more:focus-visible{background:var(--surface-soft);border-color:var(--primary);color:var(--text)}.calendar-item-more .calendar-item-text{text-align:center;flex:0 auto}.calendar-item-canceled{background:var(--calendar-canceled-bg);border-color:var(--calendar-canceled-border);color:var(--calendar-canceled-text);font-weight:600}.calendar-item-canceled.calendar-item-button:hover,.calendar-item-canceled.calendar-item-button:focus-visible{border-color:var(--calendar-canceled-border-hover);background:var(--calendar-canceled-bg-hover);color:var(--calendar-canceled-text)}.calendar-item-next-upcoming{background:var(--surface-soft);border-color:var(--border);color:var(--text);box-shadow:inset 3px 0 #475f96}.calendar-item-next-upcoming.calendar-item-button:hover,.calendar-item-next-upcoming.calendar-item-button:focus-visible{background:var(--surface-soft);color:var(--text)}.calendar-floating-tooltip{z-index:4000;border:1px solid var(--border);background:var(--surface);max-width:min(420px,100vw - 16px);color:var(--text);box-shadow:var(--shadow-soft);font-size:var(--fs-xs);white-space:nowrap;pointer-events:none;border-radius:7px;padding:5px 8px;line-height:1.2;animation:.16s both calendar-tooltip-enter;position:fixed}.calendar-floating-tooltip:before{content:"";left:var(--tooltip-arrow-left,50%);background:var(--surface);pointer-events:none;width:6px;height:6px;position:absolute;transform:translate(-50%)}.calendar-floating-tooltip[data-placement=bottom]:before{border-top:1px solid var(--border);border-left:1px solid var(--border);top:-4px}.calendar-floating-tooltip[data-placement=top]:before{border-right:1px solid var(--border);border-bottom:1px solid var(--border);bottom:-4px}@keyframes calendar-tooltip-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.calendar-legend{color:var(--muted);font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.calendar-legend-item{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.calendar-legend-dot{width:9px;height:9px;box-shadow:0 0 0 2px var(--surface);border-radius:999px;flex:0 0 9px}.calendar-legend-dot-available{background:#1a8c52b3}.calendar-legend-dot-noshow{background:#ff8c00}.calendar-legend-dot-canceled{background:#b82c2cc7}.calendar-legend-dot-upcoming{border:1px solid var(--border);background:var(--surface-soft);border-radius:4px;flex-basis:16px;width:16px;height:10px;box-shadow:inset 3px 0 #475f96}.calendar-legend-dot-out-of-office{background:rgb(var(--calendar-out-of-office-rgb))}.slot-action-buttons{gap:8px;display:grid}.slot-action-time-editor{gap:8px;margin:12px 0 16px;display:grid}.slot-action-time-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;display:grid}.slot-action-time-field{gap:6px;min-width:0;display:grid}.slot-action-time-field input[type=time]{width:100%}.slot-action-duration{margin:-2px 0 0}.slot-action-updated-duration strong{font-weight:700}.working-interval-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:7px;display:grid}.availability-panel{border:1px solid var(--border);background:var(--surface-soft);border-radius:12px;width:min(100%,560px);max-width:560px;margin:0;padding:12px}.quota-card-channel{border:1px solid var(--border);background:var(--surface);border-radius:8px;gap:8px;padding:10px;display:grid}.quota-card-channel-muted{background:0 0}.quota-card-channel-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.quota-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.quota-card-grid span{min-width:0;color:var(--muted);font-size:var(--fs-xs);gap:3px;display:grid}.quota-card-grid strong{color:var(--text);font-size:var(--fs-sm)}.status-pill{border:1px solid var(--border);background:var(--surface-soft);min-height:24px;color:var(--muted);font-size:var(--fs-xs);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:2px 8px;font-weight:700;display:inline-flex}.status-pill-ok{color:var(--primary-strong)}.status-pill-low{color:#936600}.status-pill-exhausted{color:var(--danger)}.status-pill-inactive{color:var(--muted)}.notification-preference-section{border:1px solid var(--border);background:var(--surface);border-radius:8px;gap:8px;min-width:0;margin:0;padding:10px;display:grid}.notification-preference-section legend{padding:0 4px;font-weight:750}.notification-preference-options{gap:7px;display:grid}.notification-preference-option{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;align-items:flex-start;gap:8px;min-width:0;padding:8px;display:flex}.notification-preference-option span{gap:2px;min-width:0;display:grid}.notification-preference-option small{color:var(--muted);font-size:var(--fs-xs)}.notification-preference-option.is-disabled{opacity:.72}.schedule-settings-stack{gap:10px;width:min(100%,560px);display:grid}.schedule-inline-inputs{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px;display:grid}.schedule-apply-scope{width:min(100%,560px)}.schedule-actions{display:flex}.schedule-actions button{width:auto;min-width:220px}.availability-day-list{gap:8px;display:grid}.availability-day-row{grid-template-columns:44px auto;align-items:start;gap:6px;display:grid}.availability-day-label{padding-top:7px;font-weight:700}.availability-day-body{gap:6px;width:fit-content;display:grid}.availability-empty-row{align-items:center;gap:6px;display:inline-flex}.availability-interval-row{grid-template-columns:minmax(0,110px) auto minmax(0,110px) auto auto auto;align-items:center;gap:6px;display:grid}.availability-interval-row input{padding:7px 8px}.availability-dash{text-align:center;font-weight:700}.availability-icon-button{width:32px;min-width:32px;height:32px;font-size:var(--fs-sm);border-radius:999px;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.availability-icon-button:hover{border-color:var(--primary);background:var(--surface-soft)}.planning-option{border:1px solid var(--border);background:var(--surface);border-radius:9px;gap:6px;padding:9px;display:grid}.planning-option-head{justify-content:space-between;align-items:flex-start;gap:7px;display:flex}.planning-option-label{align-items:flex-start;gap:7px;margin:0;font-weight:600;display:inline-flex}.planning-option-label input{width:auto;margin-top:2px}.planning-option-controls{flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:7px;width:fit-content;display:inline-flex}.planning-option-controls-label{white-space:nowrap;margin:0;font-weight:500}.planning-option-controls select{width:auto;min-width:112px}.planning-option-controls input[type=number]{width:auto;min-width:72px;max-width:84px}.planning-option-controls span{font-size:var(--fs-xs)}.planning-option-stack{gap:8px;display:grid}.planning-option-subtitle{font-size:var(--fs-sm);margin:0;font-weight:500}.planning-option-weekdays{gap:6px;display:grid}.planning-option-weekday-list{flex-wrap:wrap;gap:6px;display:flex}.planning-option-weekday-button{border:1px solid var(--border);background:var(--surface-soft);width:34px;min-width:34px;height:34px;color:var(--primary-strong);font-size:var(--fs-xs);border-radius:999px;padding:0;font-weight:600}.planning-option-weekday-button.active{border-color:var(--primary);background:var(--primary);color:#fff}.planning-option-monthly{gap:5px;max-width:440px;display:grid}.planning-option-ends{border:1px solid var(--border);border-radius:8px;gap:6px;width:min(100%,560px);padding:6px 8px;display:grid}.planning-option-ends legend{font-size:var(--fs-sm);padding:0 4px;font-weight:600}.planning-option-end-row{grid-template-columns:minmax(136px,220px) minmax(140px,300px) auto;align-items:center;gap:8px;display:grid}.planning-option-end-choice{align-items:center;gap:8px;margin:0;font-weight:500;display:inline-flex}.planning-option-end-choice input[type=radio]{width:auto}.planning-option-end-row input[type=date],.planning-option-end-row input[type=number]{width:100%;min-width:0}.planning-option-end-suffix{white-space:nowrap;font-weight:600}.planning-option-end-note{font-size:var(--fs-xs);line-height:1.3}@media (max-width:920px){.auth-screen{justify-items:center}}@media (max-width:860px){.schedule-inline-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.schedule-inline-inputs{grid-template-columns:minmax(0,1fr)}.planning-option-controls{flex-wrap:wrap;width:100%}.planning-option-end-row{grid-template-columns:minmax(0,1fr)}.planning-option-end-suffix{margin-top:-4px}.consent-field-grid{grid-template-columns:minmax(0,1fr)}.consent-panel-title{padding-right:0}.consent-collapse-button{justify-self:end;position:static}.portal-link-output-row{grid-template-columns:minmax(0,1fr)}.auth-shell{padding:20px 16px 18px}.auth-stage{gap:22px;width:100%}.auth-intro{gap:18px}.auth-brand{gap:12px}.auth-brand-mark{width:50px;height:46px}.auth-brand-name{font-size:1.72rem}.auth-brand-tag{letter-spacing:.01em;font-size:.74rem}.auth-intro-title{font-size:clamp(1.9rem,9vw,2.45rem)}.auth-intro-description{font-size:.96rem}.auth-panel{border-radius:24px;padding:24px 20px 22px}.auth-input-control,.auth-primary-button,.auth-primary-button-link,.auth-secondary-button{font-size:16px}.auth-footer{flex-direction:column;align-items:flex-start;margin-top:20px}.auth-footer-links{gap:12px}.auth-security-badge{letter-spacing:.14em}}.recurring-editor-list{gap:8px;display:grid}.recurring-editor-row{border:1px solid var(--border);background:var(--surface);border-radius:9px;grid-template-columns:minmax(88px,auto) minmax(0,1fr) minmax(0,1fr);align-items:end;gap:7px;padding:9px;display:grid}.recurring-editor-row-meta{align-content:start;gap:5px;display:grid}@media (max-width:720px){.recurring-editor-row{grid-template-columns:minmax(0,1fr)}}.tooltip-wrap{display:inline-flex;position:relative}.tooltip-trigger{border-radius:999px;min-width:28px}.tooltip-content{z-index:40;background:var(--surface-strong);width:fit-content;max-width:min(420px,90vw);color:var(--text);font-size:var(--fs-2xs);white-space:normal;opacity:0;visibility:hidden;border-radius:9px;padding:7px 9px;line-height:1.4;transition:opacity .16s,transform .16s;position:absolute;top:calc(100% + 5px);right:0;transform:translateY(2px)}.tooltip-wrap:hover .tooltip-content,.tooltip-wrap:focus-within .tooltip-content{opacity:1;visibility:visible;transform:translateY(0)}.form-compact label,.form-compact legend,.form-compact p{font-size:var(--fs-2xs)}.form-compact input,.form-compact select,.form-compact textarea,.form-compact button{font-size:var(--fs-2xs);padding:7px 8px}.form-compact textarea{min-height:72px}.form-compact fieldset{padding:9px}.fc .booking-available-slot .fc-event-main{font-size:var(--fs-2xs);font-weight:600}
.public-booking-shell .fc .fc-header-toolbar{gap:8px;margin-bottom:10px}.public-booking-shell .fc .fc-toolbar-title{font-size:clamp(var(--fs-2xl), 2vw, var(--fs-6xl));color:var(--text);font-weight:700}.public-booking-shell .fc .fc-button{border:1px solid var(--border);background:var(--surface-soft);width:auto;min-width:0;color:var(--text);font-size:var(--fs-sm);box-shadow:none;border-radius:999px;padding:6px 12px;font-weight:600;line-height:1}.public-booking-shell .fc .fc-button:hover,.public-booking-shell .fc .fc-button:focus-visible{background:var(--surface-strong);border-color:var(--border);color:var(--text)}.public-booking-shell .fc .fc-button-primary:not(:disabled).fc-button-active,.public-booking-shell .fc .fc-button-primary:not(:disabled):active{background:var(--button-bg);border-color:var(--button-bg);color:var(--button-text)}.public-booking-shell .fc .fc-button-group{gap:6px;display:inline-flex}.public-booking-shell .fc .fc-button-group>.fc-button{margin:0!important}.public-booking-shell .fc .fc-prev-button,.public-booking-shell .fc .fc-next-button{justify-content:center;align-items:center;width:34px;height:34px;padding:0;display:inline-flex}.public-booking-shell .monthly-availability-picker .fc .fc-header-toolbar{flex-wrap:nowrap;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:10px;display:grid}.public-booking-shell .monthly-availability-picker .fc .fc-toolbar-chunk{align-items:center;width:auto;min-width:0;display:inline-flex}.public-booking-shell .monthly-availability-picker .fc .fc-toolbar-chunk:first-child{justify-self:start}.public-booking-shell .monthly-availability-picker .fc .fc-toolbar-chunk:nth-child(2){justify-self:center}.public-booking-shell .monthly-availability-picker .fc .fc-toolbar-chunk:last-child{justify-self:end}.public-booking-shell .monthly-availability-picker .fc .fc-prev-button,.public-booking-shell .monthly-availability-picker .fc .fc-next-button{width:38px;min-width:38px;height:38px;padding:0}.public-booking-shell .fc .fc-icon{font-size:var(--fs-xl);line-height:1;font-family:fcicons!important}.public-booking-shell .fc .fc-icon:before{font-family:fcicons!important}.public-booking-shell .fc .fc-col-header-cell-cushion{font-size:var(--fs-lg);opacity:1;padding:6px 2px}.public-booking-shell .fc .fc-timegrid-axis-cushion,.public-booking-shell .fc .fc-timegrid-slot-label-cushion,.public-booking-shell .fc .fc-col-header-cell-cushion{color:var(--text)!important}.public-booking-shell .fc .fc-timegrid-axis-cushion{font-size:var(--fs-sm);opacity:1;font-weight:600}.public-booking-shell .fc .fc-timegrid-slot-lane{background:var(--surface)}.public-booking-shell .fc .fc-col-header-cell,.public-booking-shell .fc .fc-timegrid-axis,.public-booking-shell .fc .fc-timegrid-col{background:var(--surface-soft)}.public-booking-shell .fc .fc-theme-standard td,.public-booking-shell .fc .fc-theme-standard th,.public-booking-shell .fc .fc-scrollgrid{border-color:var(--border)}.public-booking-shell .fc .fc-timegrid-slot-label-frame,.public-booking-shell .fc .fc-timegrid-col-frame{background:var(--surface)}.public-booking-shell .fc .booking-available-slot{cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .15s,filter .15s}.public-booking-shell .fc .booking-available-slot .fc-event-main{cursor:pointer;-webkit-user-select:none;user-select:none}.public-booking-shell .fc .booking-available-slot:hover{filter:brightness(.96);transform:translateY(-1px)}.public-booking-shell .fc .booking-selected-slot{background:#0f7669!important;border-color:#0f7669!important}.public-booking-shell .fc .booking-selected-slot .fc-event-main{color:#fff!important}.public-booking-feedback{gap:8px;display:grid}.availability-indicator-dot{vertical-align:middle;background:#4f8de8;border-radius:999px;width:8px;height:8px;display:inline-block}.public-booking-calendar-card{gap:16px;display:grid}.public-booking-calendar-card .monthly-availability-picker{align-items:start;gap:16px}.public-booking-calendar-stage{position:relative}.public-booking-calendar-overlay{z-index:20;border:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:none;text-align:center;border-radius:10px;justify-items:center;gap:3px;width:fit-content;max-width:calc(100% - 16px);padding:8px 10px;display:inline-grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 16px #11243f14}.public-booking-calendar-overlay.is-loading{border-color:var(--border)}.public-booking-calendar-overlay-line{font-size:var(--fs-sm);color:var(--text);margin:0;line-height:1.35}.public-booking-calendar-overlay-line.is-muted{color:var(--muted)}.public-booking-calendar-loader{border:1px dashed var(--border);background:var(--surface-soft);border-radius:10px;place-items:center;width:100%;min-height:100%;display:grid}.public-booking-calendar-loader p{margin:0}.public-booking-calendar-meta{gap:4px;display:grid}.public-booking-calendar-meta-line{min-height:20px;margin:0}.public-booking-feedback-status{min-height:20px}.public-booking-feedback-status .success,.public-booking-feedback-status .error{margin:0}.public-booking-persona-fieldset{border:0;margin:0;padding:0}@media (min-width:960px){.public-booking-calendar-card .monthly-availability-picker{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:start}}.public-booking-persona-fieldset legend{font-size:var(--fs-sm);margin-bottom:8px;font-weight:600}.segmented-choice{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.segmented-choice__item{border:1px solid var(--border);background:var(--surface-soft);min-height:44px;color:var(--text);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-weight:600;display:inline-flex}.segmented-choice__item.is-active{border-color:var(--primary);background:var(--primary);color:var(--button-text)}.segmented-choice__item input{opacity:0;pointer-events:none;position:absolute}.public-booking-legal-note{text-align:center;justify-items:center;gap:6px;display:grid}.public-booking-legal-note-text{max-width:72ch;font-size:var(--fs-xs);margin:0;line-height:1.5}.inline-link-button{width:auto;min-width:auto;color:var(--primary-strong);font-size:inherit;text-underline-offset:2px;background:0 0;border:0;border-radius:0;padding:0;font-weight:600;text-decoration:underline;display:inline}.inline-link-button:hover,.inline-link-button:focus-visible{color:var(--primary-strong);background:0 0}.inline-link-button.is-read{color:var(--muted)}.modal-status-undo-link{font-weight:700}.public-booking-modal{border-radius:24px;gap:0;width:min(620px,100%);max-height:calc(100dvh - 20px);padding:0;overflow:hidden auto}.legal-document-modal{width:min(760px,100%)}.legal-document-version{margin:0}.legal-document-actions{gap:8px;display:grid}.public-booking-shell.is-embedded{background:0 0;height:auto;overflow-y:hidden}.embed-booking .card{border-radius:9px;padding:10px}.public-booking-shell.is-embedded .card{background:0 0;border-color:#d8e3f28c}.public-booking-shell.is-embedded .fc .fc-timegrid-slot-lane{background:#ffffff7a}html.is-embedded-iframe{scrollbar-gutter:auto!important;scrollbar-width:none!important;-ms-overflow-style:none!important;overflow-y:hidden!important}html.is-embedded-iframe .theme-toggle{display:none!important}html.is-embedded-iframe::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}html.is-embedded-iframe body{background:0 0!important;overflow-y:hidden!important}.embed-booking-inline-form{border-radius:16px;gap:0;padding:0;display:grid}.embed-booking-inline-form .form-shell,.embed-booking-inline-form .appointment-form-shell{width:100%;max-width:100%}.embed-booking-inline-form .appointment-form{min-width:0;max-width:100%;padding:0 20px 20px}.embed-booking-inline-form .appointment-form-slot-summary{padding:0 20px}.embed-booking-inline-header{border-bottom:1px solid #bfcce01f;gap:8px;padding:18px 20px 14px;display:grid}.embed-booking-inline-title{color:var(--primary-strong);letter-spacing:-.03em;margin:0;font-size:clamp(22px,2vw,28px);font-weight:700;line-height:1.15}.embed-booking-back-button{width:fit-content;color:var(--primary);font-size:var(--fs-sm);cursor:pointer;border:0;justify-self:start;align-items:center;gap:4px;padding:0;font-weight:600;transition:opacity .15s;display:inline-flex;background:0 0!important}.embed-booking-back-button:hover,.embed-booking-back-button:focus-visible{opacity:.6;background:0 0!important}.embed-booking-back-button:disabled{opacity:.4;cursor:not-allowed}@media (max-width:760px){.embed-booking-inline-form .appointment-form,.embed-booking-inline-form .appointment-form-slot-summary,.embed-booking-inline-header{padding-left:14px;padding-right:14px}.embed-booking-inline-form .appointment-form-grid-2{grid-template-columns:minmax(0,1fr)}}
.public-group-shell{background:var(--bg);min-height:100vh;color:var(--text)}.public-group-hero{border-bottom:1px solid var(--border);background:var(--surface);padding:48px 20px 28px}.public-group-hero-content{gap:18px;width:min(1080px,100%);margin:0 auto;display:grid}.public-group-eyebrow,.public-group-meta{flex-wrap:wrap;gap:8px;display:flex}.public-group-eyebrow span,.public-group-meta span,.public-group-pill{border:1px solid var(--border);background:var(--surface-soft);width:fit-content;min-height:30px;color:var(--muted);font-size:var(--fs-sm);border-radius:999px;align-items:center;padding:6px 10px;font-weight:700;display:inline-flex}.public-group-hero h1{font-size:var(--fs-6xl);letter-spacing:0;max-width:820px;margin:0;line-height:1.05}.public-group-hero p{max-width:760px;color:var(--muted);font-size:var(--fs-lg);margin:0;line-height:1.6}.public-group-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:24px;width:min(1080px,100% - 40px);margin:0 auto;padding:28px 0 56px;display:grid}.public-group-main,.public-group-cohorts,.public-group-schedule,.public-group-facilitators,.public-group-side-panel,.public-group-registration-card,.public-group-state-card,.public-group-loading{gap:16px;display:grid}.public-group-alert,.public-group-empty,.public-group-state-card,.public-group-loading{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:16px}.public-group-alert{gap:4px;display:grid}.public-group-alert strong,.public-group-empty strong,.public-group-state-card h1{color:var(--text)}.public-group-alert span,.public-group-empty span,.public-group-state-card p,.public-group-side-panel p,.public-group-muted{color:var(--muted)}.public-group-alert-danger{border-color:color-mix(in srgb, var(--danger) 45%, var(--border))}.public-group-section-heading{gap:4px;display:grid}.public-group-section-heading h2,.public-group-side-panel h2,.public-group-cohort-card h3{margin:0}.public-group-section-heading p,.public-group-cohort-card p{color:var(--muted);margin:0}.public-group-cohort-card,.public-group-facilitators,.public-group-side-panel,.public-group-registration-card{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:18px}.public-group-facilitator-list{flex-wrap:wrap;gap:10px;display:flex}.public-group-facilitator{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;align-items:center;gap:8px;max-width:100%;min-height:36px;padding:8px 10px;display:inline-flex}.public-group-facilitator strong,.public-group-facilitator span{min-width:0}.public-group-facilitator strong{overflow-wrap:anywhere}.public-group-facilitator span{color:var(--muted);font-size:var(--fs-sm);font-weight:700}.public-group-cohort-header{justify-content:space-between;align-items:start;gap:16px;display:flex}.public-group-pill.is-muted{opacity:.72}.public-group-session-row{border-top:1px solid var(--border);grid-template-columns:36px minmax(0,1fr);gap:12px;padding:14px 0;display:grid}.public-group-session-row:first-child{border-top:0}.public-group-session-index{background:var(--surface-soft);width:32px;height:32px;color:var(--text);border-radius:999px;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.public-group-session-row strong,.public-group-session-row span,.public-group-session-row small{display:block}.public-group-session-row span,.public-group-session-row small{color:var(--muted);line-height:1.5}.public-group-side-panel{position:sticky;top:20px}.public-group-side-panel dl{gap:10px;margin:0;display:grid}.public-group-side-panel dl div{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding-bottom:10px;display:flex}.public-group-side-panel dt{color:var(--muted)}.public-group-side-panel dd{text-align:right;margin:0;font-weight:700}.public-group-registration-card{margin-top:4px}.public-group-registration-card h2{margin:0}.public-group-registration-card label{color:var(--text);font-size:var(--fs-sm);gap:6px;font-weight:700;display:grid}.public-group-registration-card input,.public-group-registration-card select,.public-group-registration-card textarea{border:1px solid var(--border);background:var(--surface-soft);width:100%;min-height:42px;color:var(--text);font:inherit;border-radius:8px;padding:10px 12px}.public-group-registration-card textarea{resize:vertical;min-height:86px}.public-group-registration-card input:disabled,.public-group-registration-card select:disabled,.public-group-registration-card textarea:disabled{opacity:.7;cursor:not-allowed}.public-group-consent{color:var(--muted);grid-template-columns:18px minmax(0,1fr);align-items:start;font-weight:600}.public-group-consent input{width:18px;min-height:18px;margin-top:2px;padding:0}.public-group-submit-action{border:1px solid var(--border);background:var(--text);width:100%;min-height:44px;color:var(--bg);cursor:pointer;border-radius:8px;padding:10px 14px;font-weight:800}.public-group-submit-action:disabled{background:var(--surface-soft);color:var(--muted);cursor:not-allowed}.public-group-form-error{color:var(--danger);font-size:var(--fs-sm);margin:0;line-height:1.5}.public-group-state-card,.public-group-loading{width:min(680px,100% - 40px);margin:80px auto}@media (max-width:820px){.public-group-layout{grid-template-columns:1fr}.public-group-side-panel{position:static}.public-group-hero h1{font-size:var(--fs-4xl)}}
