.appointment-manage-modal{--appointment-manage-link-hover:#465d73;width:min(640px,100%);display:flex;flex-direction:column;padding:0;gap:0;overflow:hidden;border-radius:22px;max-height:min(92dvh,860px)}.appointment-manage-summary-card{--summary-ribbon:var(--primary);position:relative;overflow:hidden;border-radius:18px;background:linear-gradient(180deg,#f7faff,#fbfcff);padding:22px 22px 22px 26px}.appointment-manage-summary-card-danger{--summary-ribbon:var(--danger);background:linear-gradient(180deg,#fff1f2,#fff8f8)}.appointment-manage-summary-card-warning{--summary-ribbon:#b36b00;background:linear-gradient(180deg,#fff6e9,#fffaf2)}.modal-panel-ribbon{position:absolute;inset:0 auto 0 0;width:4px;background:var(--summary-ribbon)}.appointment-manage-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:24px 26px;gap:24px 26px;align-items:start}.appointment-manage-info-column{display:grid;grid-gap:24px;gap:24px;align-content:start}.appointment-manage-info-block{display:grid;grid-gap:8px;gap:8px;align-content:start;align-items:start}.appointment-manage-info-block-wide{grid-column:1/-1}.appointment-manage-info-label{font-size:11px;line-height:1;letter-spacing:.06em;text-transform:uppercase;color:#7f8d98;font-weight:700}.appointment-manage-info-label-rich{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.appointment-manage-info-label-rich em{font-style:italic;letter-spacing:.02em;text-transform:none}.appointment-manage-detail-row,.appointment-manage-profile,.appointment-manage-service-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.appointment-manage-avatar{width:38px;height:38px;border-radius:999px;background:linear-gradient(180deg,#cdeee3,#b9e2d6);color:#325e55;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}.appointment-manage-primary-value{font-size:28px;line-height:1.05;letter-spacing:-.03em;font-weight:700;color:#1f2d3d}.appointment-manage-service{font-size:24px;line-height:1.05;letter-spacing:-.03em;font-weight:700;color:var(--primary-strong)}.appointment-manage-chip-button{width:auto;border:0;border-radius:999px;background:rgb(15 140 121/12%);color:var(--primary-strong);display:inline-flex;align-items:center;gap:6px;padding:6px 10px;font-size:10px;line-height:1;letter-spacing:.08em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:background-color .18s ease,transform .18s ease}.appointment-manage-chip-button:focus-visible,.appointment-manage-chip-button:hover{background:rgb(15 140 121/18%)}.appointment-manage-chip-button:disabled{opacity:.6;cursor:not-allowed}.appointment-manage-detail-row{color:#43515c;font-size:15px;line-height:1.45;font-weight:500}.appointment-manage-detail-row-between{justify-content:flex-start;gap:14px}.appointment-manage-detail-row-compact{gap:8px;flex-wrap:nowrap}.appointment-manage-detail-row svg{color:#647482}.appointment-manage-detail-stack{display:grid;grid-gap:8px;gap:8px}.appointment-manage-secondary-actions{display:flex;align-items:center;gap:8px}.appointment-manage-inline-editor{display:grid;grid-gap:10px;gap:10px;max-width:320px}.appointment-manage-inline-editor-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.appointment-manage-inline-editor select{flex:1 1 180px;min-height:44px;border:1px solid rgb(184 197 217/44%);border-radius:14px;background:#fff;color:#243341;padding:0 14px;font:inherit}.appointment-manage-inline-editor select:focus,.appointment-manage-inline-editor select:focus-visible{outline:none;border-color:rgb(15 140 121/70%);box-shadow:0 0 0 3px rgb(15 140 121/12%)}.appointment-manage-note-card{width:100%;display:grid;grid-gap:12px;gap:12px;padding:14px 16px;border-radius:16px;background:rgb(255 255 255/78%);border:1px solid rgb(184 197 217/36%)}.appointment-manage-note-card-muted{background:rgb(248 250 252/88%)}.appointment-manage-note-disclosures{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;align-items:start}.appointment-manage-note-disclosure{display:grid;grid-gap:10px;gap:10px;width:100%;justify-items:stretch;align-self:start}.appointment-manage-disclosure-chip{width:100%;min-height:40px;border:1px solid rgb(184 197 217/42%);border-radius:999px;background:rgb(255 255 255/82%);color:#243341;display:inline-flex;align-items:center;justify-content:space-between;gap:14px;padding:0 14px;font:inherit;font-size:13px;font-weight:700;line-height:1;cursor:pointer;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease}.appointment-manage-disclosure-chip:focus-visible,.appointment-manage-disclosure-chip:hover{border-color:rgb(15 140 121/50%);background:rgb(255 255 255/96%);box-shadow:0 0 0 3px rgb(15 140 121/10%)}.appointment-manage-disclosure-chip-static{cursor:default}.appointment-manage-disclosure-chip-static:focus-visible,.appointment-manage-disclosure-chip-static:hover{border-color:rgb(184 197 217/42%);background:rgb(255 255 255/82%);box-shadow:none}.appointment-manage-disclosure-meta{color:#748390;font-size:11px;font-weight:600;letter-spacing:.02em}.appointment-manage-disclosure-trailing{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto;flex-shrink:0}.appointment-manage-disclosure-meta-available{color:#12805f;font-weight:700}.appointment-manage-disclosure-icon{display:inline-flex;align-items:center;color:#7a8994;transition:transform .18s ease}.appointment-manage-disclosure-icon svg{width:15px;height:15px}.appointment-manage-disclosure-icon-open{transform:rotate(180deg)}.appointment-manage-note-input{width:100%;min-height:108px;resize:vertical;border:0;background:transparent;color:#243341;font:inherit;line-height:1.5;padding:0}.appointment-manage-note-input:focus,.appointment-manage-note-input:focus-visible{outline:none}.appointment-manage-note-input[readonly]{cursor:default}.appointment-manage-note-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.appointment-manage-note-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.appointment-manage-note-empty,.appointment-manage-note-hint{color:#748390;font-size:12px;line-height:1.45}.appointment-manage-note-preview{margin:0;color:#2a3947;font-size:14px;line-height:1.6;white-space:pre-wrap}.appointment-manage-detail-subrow{display:flex;align-items:center;gap:9px;color:#5b6a76;font-size:13px;line-height:1.45}.appointment-manage-detail-subrow svg{width:15px;height:15px;color:#7a8994;flex-shrink:0}.appointment-manage-detail-subrow-meta{gap:8px;padding-left:25px}.appointment-manage-detail-subrow-action{padding-left:25px}.appointment-manage-detail-meta-label{color:#7f8d98;font-weight:600}.appointment-manage-reminder-section{display:grid;grid-gap:6px;gap:6px}.appointment-manage-payment-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.appointment-manage-payment-row-inline{justify-content:flex-start;margin-left:4px}.appointment-manage-payment-badge{display:inline-flex;align-items:center}@media (max-width:720px){.appointment-manage-info-grid,.appointment-manage-note-disclosures{grid-template-columns:minmax(0,1fr)}}.appointment-manage-reminder-row{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.appointment-manage-reminder-hint{color:#748390;font-size:12px;line-height:1.4}.appointment-manage-reminder-link{width:-moz-fit-content;width:fit-content;border:0;background:transparent;padding:0;color:#5d6c79;font:inherit;font-size:12px;line-height:1.4;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.appointment-manage-reminder-link:focus-visible,.appointment-manage-reminder-link:hover{background:transparent;border-color:transparent;box-shadow:none;color:var(--appointment-manage-link-hover)}.appointment-manage-reminder-link:disabled{opacity:.7;cursor:not-allowed}.appointment-manage-reminder-link:disabled:hover{background:transparent}.appointment-manage-reminder-editor{display:grid;grid-gap:6px;gap:6px;max-width:220px}.appointment-manage-reminder-select{width:100%;min-height:46px;border:1px solid rgb(184 197 217/44%);border-radius:14px;background:#fff;color:#243341;padding:0 14px;font:inherit}.appointment-manage-reminder-select:focus,.appointment-manage-reminder-select:focus-visible{outline:none;border-color:rgb(15 140 121/70%);box-shadow:0 0 0 3px rgb(15 140 121/12%)}.appointment-manage-choice-grid,.appointment-manage-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.appointment-manage-choice-card{border:1px solid rgb(184 197 217/38%);border-radius:16px;background:#fff;padding:16px;display:grid;grid-gap:8px;gap:8px;text-align:left;cursor:pointer;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease}.appointment-manage-choice-card:active,.appointment-manage-choice-card:focus-visible,.appointment-manage-choice-card:hover{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}.appointment-manage-choice-head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:15px;line-height:1.3;font-weight:700;color:#203040}.appointment-manage-choice-icon{color:var(--appointment-manage-link-hover);opacity:0;transform:scale(.88);transition:opacity .18s ease,transform .18s ease}.appointment-manage-choice-icon.is-visible{opacity:1;transform:scale(1)}.appointment-manage-chip-button svg,.appointment-manage-choice-icon svg,.appointment-manage-detail-row svg,.appointment-manage-field-chevron svg,.appointment-manage-field-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{display:grid;grid-gap:8px;gap:8px}.appointment-manage-field-label{font-size:14px;line-height:1.3;font-weight:600;color:#42515e}.appointment-manage-field-shell{position:relative;border-radius:14px;background:#fff;border:1px solid rgb(184 197 217/32%);box-shadow:inset 0 1px 0 rgb(255 255 255/65%)}.appointment-manage-field-shell:focus-within{border-color:rgb(15 140 121/70%);box-shadow:0 0 0 3px rgb(15 140 121/12%),inset 0 1px 0 rgb(255 255 255/72%)}.appointment-manage-field-shell select{width:100%;border:0;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:14px 40px 14px 42px;font-size:15px;line-height:1.3;color:#1f2d3d;font-weight:600}.appointment-manage-field-shell select:focus,.appointment-manage-field-shell select:focus-visible{outline:none;box-shadow:none}.appointment-manage-field-shell select:disabled{color:#8b97a2;cursor:not-allowed}.appointment-manage-field-chevron,.appointment-manage-field-icon{position:absolute;top:50%;transform:translateY(-50%);color:#738392;display:inline-flex;align-items:center;justify-content:center;pointer-events:none}.appointment-manage-field-icon{left:14px}.appointment-manage-field-chevron{right:14px}.appointment-form-availability-stack{display:grid;grid-gap:12px;gap:12px}.appointment-manage-toggle-card{display:flex;align-items:flex-start;gap:12px;border-radius:16px;background:linear-gradient(180deg,rgb(238 248 245/95%),rgb(245 251 248/100%));padding:15px 16px;cursor:pointer}.appointment-manage-toggle-control{padding-top:1px}.appointment-manage-toggle-control input{width:18px;height:18px;margin:0;accent-color:var(--primary)}.appointment-manage-toggle-copy{display:grid;grid-gap:4px;gap:4px}.appointment-manage-toggle-title{font-size:14px;line-height:1.3;font-weight:700;color:#243443}.appointment-manage-toggle-description{font-size:12px;line-height:1.45;color:#7a8894}.appointment-manage-alert-content{display:grid;grid-gap:12px;gap:12px}.appointment-manage-reason-field{display:grid;grid-gap:6px;gap:6px}.appointment-manage-reason-field label{font-size:13px;line-height:1.3;font-weight:600;color:#42515e}.appointment-manage-reason-field input{width:100%;border-radius:14px;border:1px solid rgb(184 197 217/36%);background:rgb(255 255 255/88%);padding:12px 14px}.appointment-manage-inline-note{font-size:12px;line-height:1.5;color:#7a8894}.appointment-manage-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}@supports (height:100svh){.appointment-manage-modal{max-height:min(92svh,860px)}}:root[data-theme=dark]{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:#ffffff;--button-secondary-bg:#212121;--button-secondary-hover:#2b2b2b;--button-secondary-text:#f4f4f4;--interactive-surface-hover-border:rgb(120 141 161/34%);--interactive-surface-hover-bg:rgb(24 32 37/96%);--interactive-surface-hover-shadow:0 10px 22px rgb(0 0 0/18%);--interactive-surface-selected-border:rgb(120 141 161/42%);--interactive-surface-selected-bg-top:rgb(120 141 161/12%);--interactive-surface-selected-bg-bottom:rgb(120 141 161/6%);--interactive-surface-selected-shadow:rgb(120 141 161/12%);--shadow-soft:0 14px 34px rgb(0 0 0/34%);--overlay-backdrop:rgb(0 0 0/62%);--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:#ffffff}:root[data-theme=dark] .auth-shell{--auth-bg:radial-gradient(circle at 14% 12%,rgb(15 140 121/18%),transparent 26%),radial-gradient(circle at 88% 16%,rgb(71 85 105/18%),transparent 30%),linear-gradient(180deg,#0b1118,#0f1721 52%,#121d29);--auth-intro-title-color:#f8fafc;--auth-intro-description-color:rgb(203 213 225/84%);--auth-brand-name-color:#57d2bc;--auth-brand-tag-color:rgb(203 213 225/62%);--auth-panel-title-color:#f8fafc;--auth-panel-description-color:rgb(203 213 225/84%);--auth-orb-left-bg:radial-gradient(circle,rgb(15 140 121/22%) 0%,transparent 70%);--auth-orb-right-bg:radial-gradient(circle,rgb(51 65 85/48%) 0%,transparent 74%);--auth-beam-bg:linear-gradient(145deg,rgb(28 38 52/0.86),rgb(28 38 52/0.34));--auth-beam-highlight:inset 0 1px 0 rgb(255 255 255/7%);--auth-panel-bg:rgb(18 23 31/0.82);--auth-panel-border:rgb(255 255 255/0.08);--auth-panel-shadow:0 30px 80px rgb(0 0 0/38%),0 12px 30px rgb(0 0 0/18%);--auth-input-bg:rgb(15 23 32/0.74);--auth-input-border:rgb(148 163 184/18%);--auth-input-shadow:inset 0 1px 0 rgb(255 255 255/4%);--auth-input-placeholder:#7c8aa0;--auth-note-bg:rgb(20 27 37/0.78);--auth-note-border:rgb(255 255 255/0.06);--auth-note-shadow:0 18px 40px rgb(0 0 0/24%);--auth-footer-text:rgb(203 213 225/72%)}: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:rgb(203 213 225/84%)}:root[data-theme=dark] .auth-brand-mark{filter:drop-shadow(0 10px 24px rgb(15 140 121/18%))}:root[data-theme=dark] .auth-field-shell:focus-within{background:rgb(15 23 32/.94%);box-shadow:0 0 0 4px rgb(87 210 188/12%),inset 0 1px 0 rgb(255 255 255/4%)}: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:rgb(203 213 225/74%)}:root[data-theme=dark] .auth-input-action:focus-visible,:root[data-theme=dark] .auth-input-action:hover{color:#57d2bc;background:rgb(87 210 188/12%)}:root[data-theme=dark] .auth-secondary-button{border-color:rgb(148 163 184/18%);background:rgb(15 23 32/.74);color:#e2e8f0}:root[data-theme=dark] .auth-secondary-button:hover{background:rgb(20 30 42/.92)}:root[data-theme=dark] .auth-text-link{color:#6ae0cb}:root[data-theme=dark] .auth-security-badge{border-color:rgb(255 255 255/.08);background:rgb(15 23 32/.7);box-shadow:0 14px 32px rgb(0 0 0/20%)}:root[data-theme=dark] .dashboard-content,:root[data-theme=dark] .dashboard-content main,:root[data-theme=dark] .dashboard-content-inner,:root[data-theme=dark] .dashboard-shell,:root[data-theme=dark] body{background:var(--bg)}:root[data-theme=dark] .modal-card-elevated{background:rgb(24 29 32/88%);border-color:rgb(104 124 140/22%);box-shadow:0 18px 42px rgb(0 0 0/34%)}:root[data-theme=dark] .modal-shell-header{border-bottom-color:rgb(104 124 140/20%)}:root[data-theme=dark] .appointment-manage-primary-value,: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] .modal-shell-title,:root[data-theme=dark] .public-booking-modal .modal-head h2,:root[data-theme=dark] .public-booking-modal .modal-head h3{color:#f3f8f6}:root[data-theme=dark] .modal-shell-badge{background:linear-gradient(180deg,rgb(15 140 121/26%),rgb(15 140 121/14%));color:#92e0d0}:root[data-theme=dark] .modal-card-create-appointment .modal-close,:root[data-theme=dark] .modal-shell-close,:root[data-theme=dark] .public-booking-modal .modal-close{color:#b7c5c0}:root[data-theme=dark] .modal-card-create-appointment .modal-close:focus-visible,:root[data-theme=dark] .modal-card-create-appointment .modal-close:hover,:root[data-theme=dark] .modal-shell-close:focus-visible,:root[data-theme=dark] .modal-shell-close:hover,:root[data-theme=dark] .public-booking-modal .modal-close:focus-visible,:root[data-theme=dark] .public-booking-modal .modal-close:hover{background:rgb(255 255 255/8%);color:#f3f8f6}:root[data-theme=dark] .modal-shell-footer{background:linear-gradient(180deg,rgb(21 28 31/82%),rgb(18 24 27/94%));border-top-color:rgb(104 124 140/18%)}:root[data-theme=dark] .modal-section-heading{color:#8fa49f}:root[data-theme=dark] .modal-section-divider{background:linear-gradient(90deg,rgb(104 124 140/22%),transparent)}:root[data-theme=dark] .modal-card-create-appointment .modal-head,:root[data-theme=dark] .public-booking-modal .modal-head{background:rgb(20 25 28/84%);border-bottom-color:rgb(104 124 140/20%)}:root[data-theme=dark] .appointment-form-context-line,:root[data-theme=dark] .appointment-form-slot-summary{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(180deg,rgb(17 22 25/0),rgb(18 24 27/92%) 24%,rgb(17 22 25/98%))}:root[data-theme=dark] .appointment-form-context-card,:root[data-theme=dark] .appointment-manage-summary-card{background:linear-gradient(180deg,rgb(24 33 36/94%),rgb(19 27 30/98%));box-shadow:inset 0 1px 0 rgb(255 255 255/3%)}:root[data-theme=dark] .monthly-availability-picker-calendar-card,:root[data-theme=dark] .monthly-availability-picker-slots-card{background:linear-gradient(180deg,rgb(20 28 31/96%),rgb(16 23 26/100%));border-color:rgb(104 124 140/22%);box-shadow:0 18px 36px rgb(0 0 0/24%),inset 0 1px 0 rgb(255 255 255/2%)}:root[data-theme=dark] .appointment-manage-summary-card-danger{background:linear-gradient(180deg,rgb(55 27 31/94%),rgb(39 21 24/98%))}:root[data-theme=dark] .appointment-manage-summary-card-warning{background:linear-gradient(180deg,rgb(55 40 19/94%),rgb(40 28 13/98%))}:root[data-theme=dark] .appointment-form-checkbox-title,:root[data-theme=dark] .appointment-form-field-label,:root[data-theme=dark] .appointment-form-section-title,:root[data-theme=dark] .appointment-form-toggle-title,:root[data-theme=dark] .appointment-manage-field-label,:root[data-theme=dark] .appointment-manage-info-label,:root[data-theme=dark] .appointment-manage-reason-field label,:root[data-theme=dark] .appointment-manage-toggle-title,:root[data-theme=dark] .modal-alert-copy strong{color:#c0d0cb}:root[data-theme=dark] .appointment-form-checkbox-description,:root[data-theme=dark] .appointment-form-field-description,:root[data-theme=dark] .appointment-form-field-label-hint,:root[data-theme=dark] .appointment-form-inline-note,:root[data-theme=dark] .appointment-form-toggle-description,:root[data-theme=dark] .appointment-manage-choice-description,:root[data-theme=dark] .appointment-manage-field-description,:root[data-theme=dark] .appointment-manage-inline-note,:root[data-theme=dark] .appointment-manage-toggle-description,:root[data-theme=dark] .modal-alert-body p,:root[data-theme=dark] .modal-alert-copy p,:root[data-theme=dark] .monthly-availability-picker-eyebrow,:root[data-theme=dark] .monthly-availability-picker-status{color:#8ea09c}:root[data-theme=dark] .appointment-manage-detail-subrow{color:#a9bbb6}:root[data-theme=dark] .appointment-manage-detail-meta-label,:root[data-theme=dark] .appointment-manage-detail-subrow svg{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:rgb(13 18 20/92%);border-color:rgb(104 124 140/22%);box-shadow:inset 0 1px 0 rgb(255 255 255/2%),0 1px 2px rgb(0 0 0/16%)}:root[data-theme=dark] .appointment-form-field-shell:focus-within,:root[data-theme=dark] .appointment-manage-field-shell:focus-within{background:rgb(16 22 24/96%);border-color:rgb(64 194 170/50%);box-shadow:0 0 0 3px rgb(64 194 170/14%),0 14px 30px rgb(0 0 0/20%)}: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-form-control:disabled,:root[data-theme=dark] .appointment-form-control[readonly],:root[data-theme=dark] .appointment-manage-field-shell select:disabled{color:#829490;-webkit-text-fill-color:#829490}:root[data-theme=dark] .appointment-form-control:disabled,:root[data-theme=dark] .appointment-form-control[readonly]{background:rgb(13 18 20/92%)}:root[data-theme=dark] .appointment-form-field-chevron,:root[data-theme=dark] .appointment-form-field-icon,:root[data-theme=dark] .appointment-manage-detail-row svg,:root[data-theme=dark] .appointment-manage-field-chevron,:root[data-theme=dark] .appointment-manage-field-icon,:root[data-theme=dark] .modal-alert-icon{color:#8fa39e}:root[data-theme=dark] .appointment-form-chip,:root[data-theme=dark] .appointment-manage-chip-button{background:rgb(15 140 121/14%);color:#bfe6dc}:root[data-theme=dark] .appointment-form-chip:active,:root[data-theme=dark] .appointment-form-chip:focus-within,:root[data-theme=dark] .appointment-form-chip:hover,:root[data-theme=dark] .appointment-manage-chip-button:focus-visible,:root[data-theme=dark] .appointment-manage-chip-button:hover{background:var(--interactive-surface-hover-bg)}:root[data-theme=dark] .appointment-form-chip.is-active{color:#e8eef3;box-shadow:0 10px 18px rgb(0 0 0/24%)}: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-form-toggle-card,:root[data-theme=dark] .appointment-manage-toggle-card{background:linear-gradient(180deg,rgb(21 29 32/96%),rgb(17 24 27/100%))}:root[data-theme=dark] .appointment-form-switch-track{background:rgb(143 163 158/18%)}:root[data-theme=dark] .appointment-form-switch-thumb{background:#f3f8f6;box-shadow:0 4px 10px rgb(0 0 0/28%)}:root[data-theme=dark] .appointment-form-segment-option,:root[data-theme=dark] .appointment-manage-choice-head,:root[data-theme=dark] .appointment-manage-detail-row,:root[data-theme=dark] .monthly-availability-picker-slot-time,:root[data-theme=dark] .monthly-availability-picker-title{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{background:rgb(13 18 20/92%);border-color:rgb(104 124 140/22%);color:#d7e3df}:root[data-theme=dark] .monthly-availability-picker .fc .fc-button:focus-visible,:root[data-theme=dark] .monthly-availability-picker .fc .fc-button:hover{background:rgb(20 28 31/96%);color:#edf5f2}:root[data-theme=dark] .monthly-availability-picker .fc .fc-scrollgrid,:root[data-theme=dark] .monthly-availability-picker .fc .fc-theme-standard td,:root[data-theme=dark] .monthly-availability-picker .fc .fc-theme-standard th{border-color:rgb(104 124 140/18%)}: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(180deg,rgb(21 28 31/96%),rgb(18 24 27/100%))}:root[data-theme=dark] .monthly-availability-picker .fc .monthly-availability-day-cell.has-availability{background:linear-gradient(180deg,rgb(19 42 37/94%),rgb(18 28 26/100%))}: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{background:rgb(16 23 26/94%);color:#d7e3df}:root[data-theme=dark] .monthly-availability-picker-feedback.is-error{background:rgb(55 27 31/94%);color:#ffb8b8}:root[data-theme=dark] .monthly-availability-picker-slot-button{background:rgb(13 18 20/92%);border-color:rgb(104 124 140/22%)}:root[data-theme=dark] .monthly-availability-picker-slot-button:focus-visible,:root[data-theme=dark] .monthly-availability-picker-slot-button:hover{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 rgb(0 0 0/24%),inset 0 0 0 1px var(--interactive-surface-selected-shadow)}:root[data-theme=dark] .appointment-form-segment-option.is-active{background:rgb(255 255 255/8%);color:#7de0c8;box-shadow:0 10px 20px rgb(0 0 0/18%)}:root[data-theme=dark] .appointment-form-autocomplete-list{background:rgb(16 22 24/98%);box-shadow:0 18px 36px rgb(0 0 0/34%)}:root[data-theme=dark] .appointment-form-autocomplete-item{color:#dce8e4}:root[data-theme=dark] .appointment-form-autocomplete-item:focus-visible,:root[data-theme=dark] .appointment-form-autocomplete-item:hover{background:rgb(15 140 121/16%)}:root[data-theme=dark] .appointment-manage-avatar{background:linear-gradient(180deg,rgb(24 115 101/96%),rgb(17 93 81/100%));color:#e8f6f1}:root[data-theme=dark] .appointment-manage-choice-icon,:root[data-theme=dark] .appointment-manage-service{color:#78dcc5}:root[data-theme=dark] .appointment-manage-choice-card{background:rgb(17 23 26/92%);border-color:rgb(104 124 140/18%)}:root[data-theme=dark] .appointment-manage-choice-card:active,:root[data-theme=dark] .appointment-manage-choice-card:focus-visible,:root[data-theme=dark] .appointment-manage-choice-card:hover{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-reminder-link:focus-visible,:root[data-theme=dark] .appointment-manage-reminder-link:hover{background:transparent;color:#aab9c7}:root[data-theme=dark] .modal-alert-info{background:linear-gradient(180deg,rgb(28 38 52/92%),rgb(21 29 40/98%))}:root[data-theme=dark] .modal-alert-warning{background:linear-gradient(180deg,rgb(53 39 18/94%),rgb(41 29 13/98%))}:root[data-theme=dark] .modal-alert-danger{background:linear-gradient(180deg,rgb(58 27 31/94%),rgb(42 20 23/98%))}:root[data-theme=dark] .modal-alert-success{background:linear-gradient(180deg,rgb(20 44 38/94%),rgb(14 31 27/98%))}:root[data-theme=dark] .modal-alert-warning .modal-alert-icon{color:#f3c46d}:root[data-theme=dark] .modal-ghost-button{color:#d6e3de;background:rgb(255 255 255/8%)}:root[data-theme=dark] .portal-surface{border-color:rgb(104 124 140/18%);background:linear-gradient(180deg,rgb(21 28 31/96%),rgb(17 23 26/100%)),var(--surface);box-shadow:inset 0 1px 0 rgb(255 255 255/3%),0 18px 38px rgb(0 0 0/22%)}:root[data-theme=dark] .portal-consent-title,:root[data-theme=dark] .portal-section-head h2,:root[data-theme=dark] .portal-tenant-brand h1{color:#edf5f2}:root[data-theme=dark] .portal-appointments-table__date-cell .muted,:root[data-theme=dark] .portal-consent-collapsed .muted,:root[data-theme=dark] .portal-consent-copy .muted,:root[data-theme=dark] .portal-section-head .muted,:root[data-theme=dark] .portal-tenant-meta .muted{color:#96aaa4}:root[data-theme=dark] .portal-consent-copy,:root[data-theme=dark] .portal-consent-section,:root[data-theme=dark] .portal-selector-surface{border-color:rgb(104 124 140/18%);background:linear-gradient(180deg,rgb(24 32 36/96%),rgb(19 27 30/100%));box-shadow:inset 0 1px 0 rgb(255 255 255/3%)}:root[data-theme=dark] .portal-consent-section legend{color:#a9bbb6}:root[data-theme=dark] .portal-profile-chip{border-color:rgb(104 124 140/18%);background:rgb(17 23 26/88%);color:#d7e3df}:root[data-theme=dark] .portal-profile-chip:focus-visible,:root[data-theme=dark] .portal-profile-chip:hover{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:rgb(104 124 140/14%)}:root[data-theme=dark] .portal-appointments-table td,:root[data-theme=dark] .portal-appointments-table th{border-color:rgb(104 124 140/14%)}: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,:root[data-theme=dark] .portal-consent-feedback.success{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:focus-visible,:root[data-theme=dark] .modal-ghost-button:hover{background:rgb(255 255 255/12%)}:root[data-theme=dark] .appointment-manage-inline-link{color:#7de0c8}:root[data-theme=dark] .appointment-manage-inline-link:focus-visible,:root[data-theme=dark] .appointment-manage-inline-link:hover{color:#9ce8d6}:root[data-theme=dark] .appointment-manage-danger-link{color:#ff8d86}:root[data-theme=dark] .appointment-manage-danger-link:focus-visible,:root[data-theme=dark] .appointment-manage-danger-link:hover{color:#ffb2ac}:root[data-theme=dark] input:-webkit-autofill,:root[data-theme=dark] input:-webkit-autofill:focus,:root[data-theme=dark] input:-webkit-autofill:hover,:root[data-theme=dark] select:-webkit-autofill,:root[data-theme=dark] select:-webkit-autofill:focus,:root[data-theme=dark] select:-webkit-autofill:hover,:root[data-theme=dark] textarea:-webkit-autofill,:root[data-theme=dark] textarea:-webkit-autofill:focus,:root[data-theme=dark] textarea:-webkit-autofill:hover{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0 1000px var(--surface) inset;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}.cancel-reason-field{display:grid;grid-gap:6px;gap:6px}.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{margin:0;white-space:pre-wrap;word-break:break-word}.radio-row{display:flex;flex-wrap:wrap;gap:10px}.radio-row label{display:inline-flex;align-items:center;gap:5px;font-weight:500}.radio-row input{width:auto}.calendar{display:grid;grid-gap:10px;gap:10px}.calendar-header{display:flex;justify-content:center;align-items:center}@media (max-width:760px){.appointment-manage-modal{width:min(100%,100%);border-radius:20px}.modal-card-create-appointment,.public-booking-modal{border-radius:20px}.appointment-form-slot-summary,.modal-card-create-appointment .appointment-form,.modal-card-create-appointment .modal-head,.public-booking-modal .appointment-form,.public-booking-modal .modal-head{padding-left:18px;padding-right:18px}.appointment-form-grid-2{grid-template-columns:minmax(0,1fr)}.appointment-form-checkbox-card,.appointment-form-toggle-card{align-items:flex-start}.appointment-form-checkbox-description,.appointment-form-context-line,.appointment-form-field-description,.appointment-form-inline-note,.appointment-form-slot-summary,.appointment-form-toggle-description{font-size:13px}.appointment-form-checkbox-title,.appointment-form-field-label,.appointment-form-section-title,.appointment-form-toggle-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-body,.modal-shell-footer,.modal-shell-header{padding-left:18px;padding-right:18px}.appointment-manage-choice-grid,.appointment-manage-field-grid,.appointment-manage-info-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}.appointment-manage-danger-link,.modal-primary-button-wide{width:100%;justify-content:center}}.calendar-title-wrap{display:inline-flex;align-items:center;gap:6px;max-width:100%}.calendar-title{margin:0;min-width:0;padding:0 2px;text-align:center;text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-arrow-button{width:30px;min-width:30px;height:30px;padding:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;line-height:1}.calendar-table{width:100%;border-collapse:collapse;table-layout:fixed}.calendar-table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.calendar-table td,.calendar-table th{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 th{padding:7px;text-align:center;background:var(--surface)}.calendar-cell{min-height:120px;padding:7px}.calendar-cell.is-today{box-shadow:inset 0 0 0 2px var(--calendar-today-border-strong)}.calendar-empty{background:var(--surface-soft)}.calendar-day{font-size:var(--fs-2xs);color:var(--muted);margin-bottom:5px}.calendar-day.is-today{font-weight:700}.calendar-items{display:grid;grid-gap:3px;gap:3px}.calendar-item{border-radius:5px}.calendar-item,.calendar-item-button{font-size:var(--fs-2xs);border:1px solid var(--border);background:var(--surface-soft);padding:3px 4px}.calendar-item-button{width:100%;min-width:0;display:flex;align-items:center;gap:5px;text-align:left;color:var(--text);font-weight:500;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{flex:none;font-size:var(--fs-2xs)}.calendar-item-text{display:block;flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-item-empty{background:rgb(26 140 82/16%);border-color:rgb(26 140 82/42%);color:#1b6f42}.calendar-item-empty:hover{border-color:rgb(26 140 82/65%)}.calendar-item-out-of-office{display:flex;align-items:center;gap:5px;background:rgb(184 44 44/13%);border-color:rgb(184 44 44/35%);color:#8f2222;font-weight:600}.calendar-item-out-of-office:hover{border-color:rgb(184 44 44/60%);background:rgb(184 44 44/18%)}.slot-action-buttons,.slot-action-time-editor{display:grid;grid-gap:8px;gap:8px}.slot-action-time-editor{margin:12px 0 16px}.slot-action-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;align-items:end}.slot-action-time-field{display:grid;grid-gap:6px;gap:6px;min-width:0}.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{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;grid-gap:7px;gap:7px;align-items:end}.availability-panel{max-width:560px;width:min(100%,560px);margin:0;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.schedule-settings-stack{width:min(100%,560px);display:grid;grid-gap:10px;gap:10px}.schedule-inline-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;align-items:end}.schedule-apply-scope{width:min(100%,560px)}.schedule-actions{display:flex}.schedule-actions button{width:auto;min-width:220px}.availability-day-list{display:grid;grid-gap:8px;gap:8px}.availability-day-row{display:grid;grid-template-columns:44px auto;grid-gap:6px;gap:6px;align-items:start}.availability-day-label{font-weight:700;padding-top:7px}.availability-day-body{display:grid;grid-gap:6px;gap:6px;width:-moz-fit-content;width:fit-content}.availability-empty-row{display:inline-flex;align-items:center;gap:6px}.availability-interval-row{display:grid;grid-template-columns:minmax(0,110px) auto minmax(0,110px) auto auto auto;grid-gap:6px;gap:6px;align-items:center}.availability-interval-row input{padding:7px 8px}.availability-dash{font-weight:700;text-align:center}.availability-icon-button{width:32px;min-width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-sm);line-height:1;border-radius:999px}.availability-icon-button:hover{border-color:var(--primary);background:var(--surface-soft)}.planning-option{display:grid;grid-gap:6px;gap:6px;border:1px solid var(--border);border-radius:9px;padding:9px;background:var(--surface)}.planning-option-head{display:flex;justify-content:space-between;align-items:flex-start;gap:7px}.planning-option-label{display:inline-flex;align-items:flex-start;gap:7px;font-weight:600;margin:0}.planning-option-label input{width:auto;margin-top:2px}.planning-option-controls{display:inline-flex;align-items:center;justify-content:flex-start;gap:7px;width:-moz-fit-content;width:fit-content;flex-wrap:nowrap}.planning-option-controls-label{margin:0;font-weight:500;white-space:nowrap}.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{display:grid;grid-gap:8px;gap:8px}.planning-option-subtitle{margin:0;font-size:var(--fs-sm);font-weight:500}.planning-option-weekdays{display:grid;grid-gap:6px;gap:6px}.planning-option-weekday-list{display:flex;flex-wrap:wrap;gap:6px}.planning-option-weekday-button{width:34px;min-width:34px;height:34px;border-radius:999px;border:1px solid var(--border);background:var(--surface-soft);color:var(--primary-strong);font-size:var(--fs-xs);font-weight:600;padding:0}.planning-option-weekday-button.active{border-color:var(--primary);background:var(--primary);color:#fff}.planning-option-monthly{display:grid;grid-gap:5px;gap:5px;max-width:440px}.planning-option-ends{display:grid;grid-gap:6px;gap:6px;border:1px solid var(--border);border-radius:8px;padding:6px 8px;width:min(100%,560px)}.planning-option-ends legend{font-size:var(--fs-sm);font-weight:600;padding:0 4px}.planning-option-end-row{display:grid;grid-template-columns:minmax(136px,220px) minmax(140px,300px) auto;align-items:center;grid-gap:8px;gap:8px}.planning-option-end-choice{display:inline-flex;align-items:center;gap:8px;margin:0;font-weight:500}.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{width:100%;flex-wrap:wrap}.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{position:static;justify-self:end}.portal-link-output-row{grid-template-columns:minmax(0,1fr)}.auth-shell{padding:20px 16px 18px}.auth-stage{width:min(100%,100%);gap:22px}.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{font-size:.74rem;letter-spacing:.01em}.auth-intro-title{font-size:clamp(1.9rem,9vw,2.45rem)}.auth-intro-description{font-size:.96rem}.auth-panel{padding:24px 20px 22px;border-radius:24px}.auth-input-control,.auth-primary-button,.auth-primary-button-link,.auth-secondary-button{font-size:16px}.auth-footer{margin-top:20px;flex-direction:column;align-items:flex-start}.auth-footer-links{gap:12px}.auth-security-badge{letter-spacing:.14em}}.recurring-editor-list{display:grid;grid-gap:8px;gap:8px}.recurring-editor-row{border:1px solid var(--border);border-radius:9px;padding:9px;background:var(--surface);display:grid;grid-gap:7px;gap:7px;grid-template-columns:minmax(88px,auto) minmax(0,1fr) minmax(0,1fr);align-items:end}.recurring-editor-row-meta{display:grid;grid-gap:5px;gap:5px;align-content:start}@media (max-width:720px){.recurring-editor-row{grid-template-columns:minmax(0,1fr)}}.tooltip-wrap{position:relative;display:inline-flex}.tooltip-trigger{min-width:28px;border-radius:999px}.tooltip-content{position:absolute;top:calc(100% + 5px);right:0;width:-moz-fit-content;width:fit-content;max-width:min(420px,90vw);z-index:40;background:var(--surface-strong);color:var(--text);border-radius:9px;padding:7px 9px;font-size:var(--fs-2xs);line-height:1.4;white-space:normal;opacity:0;visibility:hidden;transform:translateY(2px);transition:opacity .16s ease,transform .16s ease}.tooltip-wrap:focus-within .tooltip-content,.tooltip-wrap:hover .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 button,.form-compact input,.form-compact select,.form-compact textarea{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{margin-bottom:10px;gap:8px}.public-booking-shell .fc .fc-toolbar-title{font-size:clamp(var(--fs-2xl),2vw,var(--fs-6xl));font-weight:700;color:var(--text)}.public-booking-shell .fc .fc-button{width:auto;min-width:0;border-radius:999px;border:1px solid var(--border);background:var(--surface-soft);color:var(--text);padding:6px 12px;font-size:var(--fs-sm);font-weight:600;line-height:1;box-shadow:none}.public-booking-shell .fc .fc-button:focus-visible,.public-booking-shell .fc .fc-button:hover{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{display:inline-flex;gap:6px}.public-booking-shell .fc .fc-button-group>.fc-button{margin:0!important}.public-booking-shell .fc .fc-next-button,.public-booking-shell .fc .fc-prev-button{width:34px;height:34px;padding:0;display:inline-flex;align-items:center;justify-content:center}.public-booking-shell .monthly-availability-picker .fc .fc-header-toolbar{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;grid-gap:10px;gap:10px;flex-wrap:nowrap}.public-booking-shell .monthly-availability-picker .fc .fc-toolbar-chunk{min-width:0;width:auto;display:inline-flex;align-items:center}.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-next-button,.public-booking-shell .monthly-availability-picker .fc .fc-prev-button{width:38px;min-width:38px;height:38px;padding:0}.public-booking-shell .fc .fc-icon{font-family:fcicons!important;font-size:var(--fs-xl);line-height:1}.public-booking-shell .fc .fc-icon:before{font-family:fcicons!important}.public-booking-shell .fc .fc-col-header-cell-cushion{padding:6px 2px;font-size:var(--fs-lg);opacity:1}.public-booking-shell .fc .fc-col-header-cell-cushion,.public-booking-shell .fc .fc-timegrid-axis-cushion,.public-booking-shell .fc .fc-timegrid-slot-label-cushion{color:var(--text)!important}.public-booking-shell .fc .fc-timegrid-axis-cushion{font-size:var(--fs-sm);font-weight:600;opacity:1}.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-scrollgrid,.public-booking-shell .fc .fc-theme-standard td,.public-booking-shell .fc .fc-theme-standard th{border-color:var(--border)}.public-booking-shell .fc .fc-timegrid-col-frame,.public-booking-shell .fc .fc-timegrid-slot-label-frame{background:var(--surface)}.public-booking-shell .fc .booking-available-slot{transition:transform .15s ease,filter .15s ease}.public-booking-shell .fc .booking-available-slot,.public-booking-shell .fc .booking-available-slot .fc-event-main{cursor:pointer;-webkit-user-select:none;-moz-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{display:grid;grid-gap:8px;gap:8px}.availability-indicator-dot{width:8px;height:8px;border-radius:999px;background:#4f8de8;display:inline-block;vertical-align:middle}.public-booking-calendar-card{display:grid;grid-gap:16px;gap:16px}.public-booking-calendar-card .monthly-availability-picker{gap:16px;align-items:start}.public-booking-calendar-stage{position:relative}.public-booking-calendar-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:20;display:inline-grid;gap:3px;width:-moz-fit-content;width:fit-content;max-width:calc(100% - 16px);padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:var(--surface);box-shadow:0 4px 16px rgb(17 36 63/8%);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:none;justify-items:center;text-align:center}.public-booking-calendar-overlay.is-loading{border-color:var(--border)}.public-booking-calendar-overlay-line{margin:0;font-size:var(--fs-sm);line-height:1.35;color:var(--text)}.public-booking-calendar-overlay-line.is-muted{color:var(--muted)}.public-booking-calendar-loader{display:grid;place-items:center;width:100%;min-height:100%;border:1px dashed var(--border);border-radius:10px;background:var(--surface-soft)}.public-booking-calendar-loader p{margin:0}.public-booking-calendar-meta{display:grid;grid-gap:4px;gap:4px}.public-booking-calendar-meta-line{margin:0;min-height:20px}.public-booking-feedback-status{min-height:20px}.public-booking-feedback-status .error,.public-booking-feedback-status .success{margin:0}.public-booking-persona-fieldset{margin:0;padding:0;border: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{margin-bottom:8px;font-size:var(--fs-sm);font-weight:600}.segmented-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.segmented-choice__item{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--text);font-weight:600;cursor:pointer}.segmented-choice__item.is-active{border-color:var(--primary);background:var(--primary);color:var(--button-text)}.segmented-choice__item input{position:absolute;opacity:0;pointer-events:none}.public-booking-legal-note{display:grid;grid-gap:6px;gap:6px;justify-items:center;text-align:center}.public-booking-legal-note-text{margin:0;max-width:72ch;font-size:var(--fs-xs);line-height:1.5}.inline-link-button{width:auto;min-width:auto;padding:0;border:0;border-radius:0;background:transparent;color:var(--primary-strong);font-size:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px;display:inline}.inline-link-button:focus-visible,.inline-link-button:hover{background:transparent;color:var(--primary-strong)}.inline-link-button.is-read{color:var(--muted)}.modal-status-undo-link{font-weight:700}.public-booking-modal{width:min(620px,100%);max-height:calc(100dvh - 20px);overflow-y:auto;overflow-x:hidden;padding:0;gap:0;border-radius:24px}.legal-document-modal{width:min(760px,100%)}.legal-document-version{margin:0}.legal-document-actions{display:grid;grid-gap:8px;gap:8px}.public-booking-shell.is-embedded{background:transparent;height:auto;overflow-y:hidden}.embed-booking .card{border-radius:9px;padding:10px}.public-booking-shell.is-embedded .card{background:transparent;border-color:rgb(216 227 242/55%)}.public-booking-shell.is-embedded .fc .fc-timegrid-slot-lane{background:rgb(255 255 255/48%)}html.is-embedded-iframe{overflow-y:hidden!important;scrollbar-gutter:auto!important;scrollbar-width:none!important;-ms-overflow-style:none!important}html.is-embedded-iframe .theme-toggle{display:none!important}html.is-embedded-iframe::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}html.is-embedded-iframe body{overflow-y:hidden!important;background:transparent!important}.embed-booking-inline-form{display:grid;grid-gap:0;gap:0;padding:0;border-radius:16px}.embed-booking-inline-form .appointment-form-shell,.embed-booking-inline-form .form-shell{width:100%;max-width:100%}.embed-booking-inline-form .appointment-form{padding:0 20px 20px;min-width:0;max-width:100%}.embed-booking-inline-form .appointment-form-slot-summary{padding:0 20px}.embed-booking-inline-header{display:grid;grid-gap:8px;gap:8px;padding:18px 20px 14px;border-bottom:1px solid rgb(191 204 224/12%)}.embed-booking-inline-title{margin:0;color:var(--primary-strong);font-size:clamp(22px,2vw,28px);font-weight:700;line-height:1.15;letter-spacing:-.03em}.embed-booking-back-button{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;gap:4px;padding:0;border:0;background:transparent!important;color:var(--primary);font-size:var(--fs-sm);font-weight:600;cursor:pointer;justify-self:start;transition:opacity .15s ease}.embed-booking-back-button:focus-visible,.embed-booking-back-button:hover{background:transparent!important;opacity:.6}.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)}}.dashboard-theme-toggle{margin-bottom:4px}.dashboard-theme-toggle.is-collapsed{display:flex;justify-content:center}.theme-toggle{width:auto;min-width:auto}.theme-toggle-floating{position:fixed;right:14px;bottom:14px;z-index:1200;border:0;padding:0;background:transparent;box-shadow:none}.theme-toggle-floating:hover,.theme-toggle-inline{background:transparent}.theme-toggle-inline{border:0;padding:0;box-shadow:none}.theme-toggle-inline:hover{background:transparent}.theme-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.theme-toggle-switch{position:relative;width:70px;height:36px;border-radius:999px;border:1px solid var(--border);background:var(--surface-soft);display:flex;align-items:center;justify-content:space-between;padding:0 10px;overflow:hidden}.theme-toggle-icon{color:var(--muted);display:inline-flex;align-items:center;justify-content:center;z-index:1}.theme-toggle.is-dark .theme-toggle-icon-moon,.theme-toggle:not(.is-dark) .theme-toggle-icon-sun{color:var(--text)}.theme-toggle-thumb{position:absolute;top:3px;left:3px;width:28px;height:28px;border-radius:999px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-soft);transition:transform .2s ease}.theme-toggle.is-dark .theme-toggle-switch{background:var(--surface-strong)}.theme-toggle.is-dark .theme-toggle-thumb{transform:translateX(34px)}.fc,.fc .fc-col-header-cell-cushion,.fc .fc-event-main,.fc .fc-list-event-time,.fc .fc-list-event-title,.fc .fc-timegrid-axis-cushion,.fc .fc-timegrid-slot-label-cushion,.fc .fc-toolbar-title{font-family:Satoshi,Segoe UI,Noto Sans,Helvetica Neue,sans-serif!important}.link-list{display:grid;grid-gap:7px;gap:7px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:7px;flex-wrap:wrap}.toolbar a{text-decoration:none;color:var(--primary-strong);font-weight:600}.toolbar-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.toolbar-actions a{text-decoration:none;color:var(--primary-strong);font-weight:600}.client-detail-shell{gap:12px}.client-detail-header{display:grid;grid-gap:6px;gap:6px}.client-detail-header h1{min-width:0;margin:0}.client-detail-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px}.client-detail-title-row .toolbar-actions{margin-left:auto;flex-wrap:nowrap}.client-detail-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.client-detail-breadcrumb a{text-decoration:none;color:var(--primary-strong);font-weight:600;font-size:var(--fs-sm)}.client-detail-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,180px));grid-gap:10px;gap:10px;justify-content:start}.client-detail-content{display:grid;grid-gap:12px;gap:12px;min-width:0;max-width:760px}.client-session-metric-card{padding:10px 12px}.client-session-metric-card h2{margin:0;font-size:var(--fs-sm);line-height:1.3}.client-session-metric-value{margin:6px 0 0;font-size:var(--fs-4xl);font-weight:700;line-height:1.2}.sessions-shell{gap:14px}.sessions-main,.sessions-top{display:grid;grid-gap:12px;gap:12px}.sessions-main{min-width:0}.profile-shell{gap:14px}.profile-main,.profile-top{display:grid;grid-gap:12px;gap:12px}.profile-main{min-width:0}.client-profile-summary{display:grid;grid-gap:10px;gap:10px}.client-profile-summary-item{display:grid;grid-gap:2px;gap:2px;padding-bottom:8px;border-bottom:1px solid var(--border)}.client-profile-summary-item:last-child{padding-bottom:0;border-bottom:0}.client-profile-summary-label,.client-profile-summary-value{margin:0}.client-profile-summary-label{font-size:var(--fs-xs);color:var(--muted)}.client-profile-summary-value{font-size:var(--fs-sm);font-weight:500;color:var(--text);line-height:1.4}.client-profile-edit-section{padding-top:4px;border-top:1px solid var(--border)}.client-profile-edit-section h3{margin:0;font-size:var(--fs-md)}.client-portal-link-trigger{width:auto;min-width:180px}.portal-link-output{display:grid;grid-gap:6px;gap:6px}.portal-link-output-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:6px;gap:6px;align-items:center}.portal-link-output-row button{width:auto;min-width:auto}.stat-card h2{margin:0;font-size:var(--fs-lg)}.stat-value{margin:10px 0 0;font-size:var(--fs-8xl);font-weight:700}.sessions-next-countdown{margin:0;font-size:13px;line-height:1.45}.sessions-next-countdown-value{font-size:16px;font-weight:700;color:var(--text)}.filter-grid{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.filter-grid-constrained{--filter-constrained-width:min(100%,560px)}.filter-grid-constrained>.filter-row-constrained{width:var(--filter-constrained-width);max-width:100%;justify-self:start}.sessions-filter-grid{grid-template-columns:minmax(0,1fr);gap:10px}.sessions-filter-date-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;align-items:start}.sessions-filter-date-row>.sessions-filter-field{width:100%;min-width:0}.sessions-filter-client-row{display:grid}.sessions-filter-field{min-width:0}.sessions-filter-field input,.sessions-filter-field select{width:100%;min-width:0}.sessions-filter-actions-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.sessions-filter-actions-row .filter-reset,.sessions-filter-actions-row button{width:auto;min-width:160px}.filter-actions{display:grid;align-content:end;grid-gap:7px;gap:7px}.filter-actions-row{grid-column:1/-1;display:flex;align-items:center;gap:8px}.filter-actions-row .filter-reset,.filter-actions-row button{width:auto;min-width:160px}.clients-filter-grid{grid-template-columns:minmax(0,560px)}.clients-filter-field{width:100%}.clients-filter-actions{grid-column:auto;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;grid-gap:8px;gap:8px}.clients-filter-actions .filter-reset,.clients-filter-actions button{width:100%;min-width:0}.clients-filter-actions .filter-reset{display:inline-flex;align-items:center;justify-content:center}.clients-table-scroll{--table-scroll-min-width:0}.integration-panel-shell{min-width:0}.integration-panel{min-width:0;width:100%}.integration-tab-bar{gap:8px}.integration-tab-button{min-width:0}.integration-domain-row input{width:100%}.integration-domain-list{gap:8px}.integration-domain-item{align-items:flex-start}.integration-domain-item>span{min-width:0}.integration-domain-item .btn-sm,.integration-domain-item .button-sm{flex-shrink:0}.integration-source-text{margin:0}.integration-source-code{display:inline;white-space:normal}.integration-textarea{width:100%;min-width:0;max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.integration-link-textarea{min-height:72px}.integration-code-textarea{min-height:168px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;line-height:1.4}.google-calendar-meta-list{display:grid;grid-gap:8px;gap:8px}.google-calendar-meta-item{margin:0}.google-calendar-status-line{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0}.google-calendar-meta-item{display:grid;grid-template-columns:minmax(0,168px) minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start;line-height:1.35}.google-calendar-diagnostics{display:grid;grid-gap:6px;gap:6px}.google-calendar-hint{margin:0}.google-calendar-unsynced-list{display:grid;grid-gap:6px;gap:6px}.google-calendar-unsynced-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.google-calendar-toggle-list{display:grid;grid-gap:12px;gap:12px}.google-calendar-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.google-calendar-toggle-row input{flex-shrink:0;inline-size:16px;block-size:16px}.google-calendar-toggle-copy{display:grid;grid-gap:4px;gap:4px}@media (max-width:720px){.google-calendar-meta-item{grid-template-columns:minmax(0,1fr);gap:2px}.google-calendar-toggle-row{align-items:flex-start}.google-calendar-unsynced-item{align-items:flex-start;flex-direction:column;gap:2px}}.filter-reset{text-align:center;border:1px solid var(--border);border-radius:9px;padding:9px 10px;background:var(--surface);text-decoration:none}.list-clean{list-style:none;margin:0;padding:0;display:grid;grid-gap:7px;gap:7px}.list-row{display:flex;align-items:center;justify-content:space-between;gap:7px;border:1px solid var(--border);border-radius:7px;padding:7px 9px;background:var(--surface)}.notification-header-actions{display:flex;align-items:center;gap:6px;position:relative;z-index:5}.notification-status-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.notification-status-text{margin:0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-icon-action{width:42px!important;min-width:42px!important;height:42px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;position:relative;overflow:visible}.notification-icon-action:disabled{opacity:.55}.notification-action-tooltip{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%) translateY(4px);background:var(--surface-strong);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:3px 8px;font-size:var(--fs-xs);font-weight:600;white-space:nowrap;opacity:0;pointer-events:none;z-index:20;transition:opacity .14s ease,transform .14s ease}.notification-icon-action:focus-visible .notification-action-tooltip{opacity:1;transform:translateX(-50%) translateY(0)}@media (hover:hover){.notification-icon-action:hover .notification-action-tooltip{opacity:1;transform:translateX(-50%) translateY(0)}}.notification-feedback-stack,.notification-list{display:grid;grid-gap:8px;gap:8px}.notification-feedback-item,.notification-loading-state{margin:0}.notification-loading-state{border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--surface-soft)}.notification-footer-surface{border-top:1px solid var(--border);padding-top:12px}.notification-item{border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:10px;display:grid;grid-gap:6px;gap:6px}.notification-item.unread{border-color:var(--notification-unread-border);background:var(--notification-unread-bg);box-shadow:inset 3px 0 0 var(--notification-unread-accent)}.notification-item-head{display:flex;align-items:center;justify-content:space-between;gap:9px}.notification-item-title-wrap{display:inline-flex;align-items:baseline;gap:6px;flex-wrap:wrap}.notification-item-title-note{font-size:var(--fs-sm);font-style:italic;color:var(--muted)}.notification-item-head-actions{position:relative;display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.notification-item-time{font-size:12px;line-height:1.3;white-space:nowrap}.notification-item-menu-trigger{width:30px!important;min-width:30px!important;height:30px;padding:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center}.notification-item-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:50;min-width:196px;padding:6px;display:grid;grid-gap:2px;gap:2px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow-soft)}.notification-item-menu.is-single-action{min-width:0;width:auto}.notification-item-menu-action{width:100%;min-width:0;border:0;border-radius:8px;padding:8px 9px;background:transparent;color:var(--text);text-align:left;font-size:var(--fs-sm);font-weight:500;display:inline-flex;align-items:center;justify-content:flex-start;gap:8px}.notification-item-menu.is-single-action .notification-item-menu-action{width:auto}.notification-item-menu-action:hover{background:var(--surface-soft)}.notification-item-menu-action:disabled{opacity:.6}.notification-item-menu-action-icon{flex-shrink:0}.notification-item-menu-action-delete{color:var(--danger)}.notification-item-meta{margin:0}.notification-client-link{text-decoration:underline;text-underline-offset:2px;font-weight:600}.notification-inline-note-button{line-height:inherit;vertical-align:baseline}.notification-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.notification-empty-state{min-height:340px;border:1px solid var(--border);border-radius:12px;background:var(--surface);display:grid;justify-items:center;align-content:center;text-align:center;grid-gap:10px;gap:10px;padding:24px 16px}.notification-empty-illustration{display:grid;place-items:center;width:min(100%,320px);line-height:0;padding:8px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.notification-empty-asset{display:block;width:184px;max-width:100%;height:auto}.notification-empty-title{margin:0;font-size:var(--fs-8xl);font-weight:700;line-height:1.1;letter-spacing:-.01em}.notification-empty-copy{margin:0;max-width:460px;font-size:var(--fs-2xl);line-height:1.45}@media (max-width:640px){.client-detail-title-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.client-detail-title-row .toolbar-actions{width:auto;margin-left:auto;justify-content:flex-end}.client-detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.client-detail-content{max-width:100%}.client-detail-content>.tab-bar-scroll,.client-detail-content>.table-card{width:100%;max-width:100%;min-width:0}.client-detail-content>.table-card{justify-self:stretch}.client-detail-content>.table-card .sessions-table-scroll,.client-detail-content>.table-card .table-scroll{width:100%;max-width:100%;min-width:0}.client-portal-link-trigger{min-width:0}.action-row-inline{grid-template-columns:repeat(2,minmax(0,1fr))}.action-row-inline>.filter-reset,.action-row-inline>button{width:100%;min-width:0}.notification-header-actions{width:auto;margin-left:0;justify-content:flex-end;flex-shrink:0}.notification-icon-action{width:38px!important;min-width:38px!important;height:38px}.notification-item-menu-trigger{width:28px!important;min-width:28px!important;height:28px}.notification-item-menu{min-width:172px}.notification-empty-state{min-height:280px;padding:18px 12px;gap:8px}.notification-empty-asset{width:136px}.notification-empty-title{font-size:var(--fs-5xl)}.notification-empty-copy{font-size:var(--fs-lg)}}.checkbox-line{display:flex;align-items:flex-start;gap:7px;font-weight:500}.checkbox-line input{width:auto;margin-top:3px}.subaccount-permissions{display:grid;grid-gap:4px;gap:4px}.subaccount-permissions-title{margin:0;font-weight:700;font-size:var(--fs-sm)}.subaccount-permission-line{margin-bottom:0;gap:4px;font-weight:500}.subaccount-permission-line input{margin-top:2px}.embed-booking{gap:10px}@media (max-width:768px){body,html{overflow-x:clip}.table-card-mobile-fluid{width:100%;min-width:0;justify-self:stretch}.form-actions,.form-grid-2{grid-template-columns:minmax(0,1fr)}.form-actions{display:grid}.button-row button,.form-actions>*,a.btn.btn-mobile-full,button.btn.btn-mobile-full{width:100%;min-width:0}.btn-group{display:grid;grid-template-columns:minmax(0,1fr)}.portal-appointments-table td,.portal-appointments-table th{padding:8px 6px}.portal-profile-chip{min-height:38px;padding-inline:10px;font-size:var(--fs-xs)}.portal-appointments-table__status-col{width:78px}.portal-appointments-table__action-col{width:70px}.portal-appointments-table__date-cell{font-size:var(--fs-sm)}.btn-group>*{width:100%;min-width:0}.dashboard-shell{--dashboard-mobile-topbar-offset:calc(env(safe-area-inset-top) + 64px);--dashboard-mobile-menu-gap:12px}.theme-toggle-floating{right:10px;bottom:10px}.public-booking-shell{gap:10px}.public-booking-shell .card{padding:10px;border-radius:10px}.public-booking-shell .fc .fc-header-toolbar{display:grid;grid-template-columns:minmax(0,1fr);margin-bottom:8px;grid-row-gap:8px;row-gap:8px}.public-booking-shell .fc .fc-toolbar-title{font-size:var(--fs-4xl)}.public-booking-shell .fc .fc-toolbar-chunk{min-width:0}.public-booking-shell .fc .fc-toolbar-chunk:last-child{width:100%;display:flex;gap:8px;align-items:center;min-width:0}.public-booking-shell .fc .fc-toolbar-chunk:last-child .fc-today-button{flex:1 1;width:auto;min-width:0;margin:0;height:40px}.public-booking-shell .fc .fc-toolbar-chunk:last-child .fc-button-group{flex:1 1;display:flex;gap:8px;min-width:0}.public-booking-shell .fc .fc-toolbar-chunk:last-child .fc-button-group .fc-button{flex:1 1;width:auto;min-width:0;height:40px;margin:0!important}.public-booking-shell .monthly-availability-picker .fc .fc-header-toolbar{grid-template-columns:40px minmax(0,1fr) 40px;margin-bottom:12px;row-gap:0;column-gap:8px}.public-booking-shell .monthly-availability-picker .fc .fc-toolbar-chunk{min-width:0;width:auto}.public-booking-shell .monthly-availability-picker .fc .fc-toolbar-chunk:last-child{width:auto;display:inline-flex;gap:0;align-items:center}.public-booking-shell .monthly-availability-picker .fc .fc-button{min-width:40px;width:40px;height:40px;padding:0}.public-booking-shell .fc .fc-col-header-cell-cushion{font-size:var(--fs-sm)}.public-booking-shell .fc .fc-timegrid-axis-cushion{font-size:var(--fs-xs)}.public-booking-shell .fc .fc-button{padding:6px 10px}.public-booking-calendar-overlay{padding:7px 9px;max-width:calc(100% - 12px)}.public-booking-modal{max-height:calc(100dvh - 12px)}.sessions-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sessions-summary-grid .stat-card{min-width:0;padding:10px 8px}.sessions-summary-grid .stat-card h2{font-size:var(--fs-xs);line-height:1.25}.sessions-summary-grid .stat-value{margin-top:6px;font-size:var(--fs-3xl);line-height:1.05;letter-spacing:-.01em}.sessions-tab-bar{gap:6px;padding:5px}.sessions-tab-bar .sessions-tab-button{flex:1 1;justify-content:center;padding:7px 5px;min-height:44px;font-size:var(--fs-tab);line-height:1.2;white-space:normal}.sessions-filter-date-row{gap:6px}.clients-filter-actions,.sessions-filter-actions-row{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:6px;gap:6px}.clients-filter-actions .filter-reset,.clients-filter-actions button,.sessions-filter-actions-row .filter-reset,.sessions-filter-actions-row button{width:100%;min-width:0}.calendar-table{min-width:760px}.clients-table-scroll,.sessions-table-scroll{max-height:clamp(280px,54dvh,560px)}.calendar-table-scroll{max-height:clamp(320px,58dvh,620px)}.calendar-cell{min-height:106px;padding:6px}.calendar-item,.calendar-item-button{font-size:var(--fs-3xs);padding:2px 3px}.calendar-item-button strong{font-size:var(--fs-3xs)}.dashboard-shell{flex-direction:column}.dashboard-sidebar,.dashboard-sidebar.collapsed{position:relative;top:auto;left:auto;bottom:auto;width:100%;height:auto;border-right:0;border-bottom:0;background:transparent}.dashboard-sidebar-inner{display:none}.dashboard-mobile-topbar{display:flex;align-items:center;gap:10px;position:fixed;top:0;left:0;right:0;z-index:1302;min-height:var(--dashboard-mobile-topbar-offset);padding:calc(env(safe-area-inset-top) + 8px) 12px 8px;background:var(--surface);border-bottom:1px solid var(--border);transition:transform .2s ease,opacity .2s ease;will-change:transform}.dashboard-mobile-topbar.is-hidden{transform:translateY(calc(-100% - 2px));opacity:0;pointer-events:none}.dashboard-mobile-brand-logo{flex-shrink:0}.mobile-topbar-icon-button,.sidebar-notification-shortcut{width:40px;min-width:40px}.dashboard-mobile-menu{top:calc(var(--dashboard-mobile-topbar-offset) + var(--dashboard-mobile-menu-gap));left:8px;right:8px;border:1px solid var(--border);border-radius:14px;transform:translateY(calc(-100% - var(--dashboard-mobile-topbar-offset) - var(--dashboard-mobile-menu-gap) - 12px))}.dashboard-mobile-menu.open{transform:translateY(0)}.dashboard-mobile-menu,.dashboard-mobile-menu-backdrop{display:block}.dashboard-mobile-menu-backdrop{top:var(--dashboard-mobile-topbar-offset);border-radius:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.dashboard-nav-mobile .dashboard-link{min-height:48px;border-radius:11px;padding:11px 12px}.dashboard-nav-mobile .dashboard-link-short{width:28px;min-width:28px;height:28px}.dashboard-nav-mobile .dashboard-menu-icon{width:22px;height:22px}.dashboard-mobile-menu .dashboard-sidebar-foot .button,.dashboard-mobile-menu .dashboard-sidebar-foot button{min-height:44px}.dashboard-content{max-width:100%;overflow-x:clip;padding:calc(var(--dashboard-mobile-topbar-offset) + 12px) 12px 12px}.dashboard-content,.dashboard-sidebar+.dashboard-content,.dashboard-sidebar.collapsed+.dashboard-content{width:100%;margin-left:0}.appointment-form,.appointment-form-admin,.appointment-form-admin-section,.appointment-form-admin-stack,.appointment-form-grid,.appointment-form-grid-2,.appointment-form-section-body,.appointment-form-shell,.card-narrow,.dashboard-content main,.dashboard-content-inner{width:100%;min-width:0;max-width:100%;overflow-x:clip}.appointment-form-grid-2,.form-grid-2,.form-grid-3{grid-template-columns:minmax(0,1fr)}.card-narrow{justify-self:stretch}.dashboard-content .tab-bar-scroll,.dashboard-content main .tab-bar-scroll{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;touch-action:pan-x}.dashboard-content .calendar-table-scroll,.dashboard-content .clients-table-scroll,.dashboard-content .sessions-table-scroll,.dashboard-content .table-scroll,.dashboard-content main .calendar-table-scroll,.dashboard-content main .clients-table-scroll,.dashboard-content main .sessions-table-scroll,.dashboard-content main .table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}main{padding:12px}.availability-day-row{grid-template-columns:1fr}.availability-day-label,.availability-empty-row{padding-top:0}.availability-interval-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto auto auto}}