:root{--mhc-navy-900: #00152f;--mhc-blue-800: #023282;--mhc-blue-700: #0147a1;--mhc-blue-200: #96ccff;--mhc-white: #ffffff;--c-bg: #eef3fa;--c-bg-page: #e4ecf6;--c-surface: #ffffff;--c-surface-alt: #f1f5fb;--c-text: #0f2340;--c-text-muted: #5a6b83;--c-text-faint: #8493a8;--c-primary: var(--mhc-blue-700);--c-primary-strong: var(--mhc-blue-800);--c-on-primary: #ffffff;--c-accent: var(--mhc-blue-200);--c-border: #dbe4f0;--c-border-strong: #c3d1e4;--c-danger: #b3261e;--c-danger-bg: #fbeceb;--c-success: #1c7c54;--c-success-bg: #e7f4ee;--c-warn: #8a5a00;--c-warn-bg: #fbf1e0;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", Verdana, sans-serif;--fs-eyebrow: .6875rem;--fs-caption: .8125rem;--fs-body: .9375rem;--fs-lead: 1.0625rem;--fs-title: 1.375rem;--fs-display: 1.75rem;--lh-tight: 1.2;--lh-normal: 1.45;--tracking-eyebrow: .11em;--radius-sm: 10px;--radius-md: 16px;--radius-lg: 22px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--shadow-card: 0 1px 2px rgba(2, 21, 47, .04), 0 6px 16px rgba(2, 21, 47, .07);--shadow-nav: 0 -2px 16px rgba(2, 21, 47, .08);--focus-ring: 0 0 0 3px rgba(1, 71, 161, .35);--nav-height: 60px;--app-max: 560px}*{box-sizing:border-box}* :focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:6px}html,body,#root{height:100%}body{margin:0;font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-normal);background:var(--c-bg-page);color:var(--c-text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overscroll-behavior-y:none;overflow-x:hidden}button{font-family:inherit}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}.mhc-shell{min-height:100%;display:flex;flex-direction:column;max-width:var(--app-max);margin:0 auto;background:var(--c-bg);box-shadow:0 0 40px #02152f0f}.mhc-topbar{background:linear-gradient(155deg,var(--mhc-navy-900),var(--mhc-blue-800));color:#fff;padding:calc(env(safe-area-inset-top) + var(--space-5)) var(--space-4) var(--space-5);border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}.mhc-topbar__eyebrow{margin:0 0 var(--space-1);font-size:var(--fs-eyebrow);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--mhc-blue-200)}.mhc-topbar__title{margin:0;font-size:var(--fs-title);font-weight:700;line-height:var(--lh-tight);color:#fff;overflow-wrap:anywhere}.mhc-topbar__subtitle{margin:var(--space-1) 0 0;font-size:var(--fs-caption);color:#cfe1f6}.mhc-topbar__subtitle:first-letter{text-transform:uppercase}.mhc-main{flex:1;padding:var(--space-4);padding-bottom:calc(var(--nav-height) + env(safe-area-inset-bottom) + var(--space-5));display:flex;flex-direction:column;gap:var(--space-4)}.mhc-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:var(--space-4)}.mhc-card__label{margin:0 0 var(--space-3);font-size:var(--fs-eyebrow);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--c-text-muted)}.appt{display:flex;flex-direction:column;gap:var(--space-1)}.appt+.appt{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--c-border)}.appt__when{font-size:var(--fs-lead);font-weight:700;color:var(--c-primary-strong)}.appt__who{margin:0;font-size:var(--fs-body);font-weight:600;overflow-wrap:anywhere}.appt__meta{margin:0;font-size:var(--fs-caption);color:var(--c-text-muted);overflow-wrap:anywhere}.appt__tags{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-1)}.pill{display:inline-block;padding:3px 10px;border-radius:var(--radius-pill);font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.02em;background:var(--c-surface-alt);color:var(--c-primary-strong);border:1px solid var(--c-border)}.pill--online{background:var(--mhc-blue-200);border-color:transparent;color:var(--mhc-navy-900)}.pill--ok{background:var(--c-success-bg);color:var(--c-success);border-color:transparent}.pill--muted{background:var(--c-surface-alt);color:var(--c-text-muted)}.pill--cancel{background:var(--c-danger-bg);color:var(--c-danger);border-color:transparent}.mhc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.mhc-list__row{display:grid;grid-template-columns:52px minmax(0,1fr);gap:var(--space-3);align-items:start}.mhc-list__time{font-weight:700;color:var(--c-primary-strong);font-variant-numeric:tabular-nums}.mhc-list__body{min-width:0}.mhc-list__body .appt__who{font-weight:600}.client-row{display:flex;flex-direction:column;gap:2px}.client-row+.client-row{border-top:1px solid var(--c-border);padding-top:var(--space-3)}.mhc-role-tag{display:inline-block;margin:var(--space-3) 0 0;padding:3px 10px;border-radius:var(--radius-pill);font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.04em;background:var(--c-surface-alt);color:var(--c-primary-strong)}.day-head{display:flex;align-items:baseline;gap:var(--space-2);margin:var(--space-2) 0 0}.day-head__date{font-size:var(--fs-body);font-weight:700;color:var(--c-text)}.day-head__date:first-letter{text-transform:uppercase}.day-head__count{font-size:var(--fs-caption);color:var(--c-text-faint)}.seg{display:flex;background:var(--c-surface-alt);border:1px solid var(--c-border);border-radius:var(--radius-pill);padding:3px;gap:3px}.seg__btn{flex:1;border:0;background:none;padding:10px;border-radius:var(--radius-pill);font-size:var(--fs-caption);font-weight:600;color:var(--c-text-muted);cursor:pointer;min-height:44px}.seg__btn[aria-selected=true]{background:var(--c-surface);color:var(--c-primary-strong);box-shadow:var(--shadow-card)}.mhc-empty{text-align:center;color:var(--c-text-muted);padding:var(--space-6) var(--space-4);font-size:var(--fs-body)}.mhc-center{flex:1;display:grid;place-items:center;padding:var(--space-6);color:var(--c-text-muted)}.mhc-error{color:var(--c-danger);font-size:var(--fs-body);margin:0 0 var(--space-3)}.skeleton{background:linear-gradient(90deg,#e9eef6 25%,#f4f7fb 37%,#e9eef6 63%);background-size:400% 100%;animation:sk 1.3s ease-in-out infinite;border-radius:8px}@keyframes sk{0%{background-position:100% 0}to{background-position:0 0}}.mhc-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--app-max);height:calc(var(--nav-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--c-surface);border-top:1px solid var(--c-border);box-shadow:var(--shadow-nav);display:flex}.mhc-nav__item{flex:1;border:0;background:none;color:var(--c-text-faint);font-size:10px;font-weight:600;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;min-height:44px}.mhc-nav__item[aria-current=page]{color:var(--c-primary)}.mhc-nav__dot{width:18px;height:18px;border-radius:6px;background:currentColor;opacity:.9}.mhc-nav__item[aria-current=page] .mhc-nav__dot{border-radius:8px}.mhc-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:var(--radius-sm);padding:14px 16px;font-size:var(--fs-lead);font-weight:700;background:var(--c-primary);color:var(--c-on-primary);cursor:pointer;width:100%;min-height:48px;display:block;box-sizing:border-box;text-align:center;text-decoration:none}.mhc-btn:disabled{opacity:.55;cursor:default}.mhc-btn--ghost{background:var(--c-surface);color:var(--c-primary-strong);border:1px solid var(--c-border-strong)}.mhc-btn--danger{background:var(--c-danger)}.mhc-btn__icon-row{display:inline-flex;align-items:center;justify-content:center;gap:8px}.mhc-field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-4)}.mhc-field label{font-size:var(--fs-caption);color:var(--c-text-muted)}.mhc-field input{padding:13px 14px;border:1px solid var(--c-border-strong);border-radius:var(--radius-sm);font-size:var(--fs-lead);background:#fff;color:var(--c-text);min-height:48px}.mhc-login{min-height:100%;display:flex;flex-direction:column;justify-content:center;padding:var(--space-5);max-width:420px;margin:0 auto}.mhc-login__brand{text-align:center;margin-bottom:var(--space-6)}.mhc-login__brand h1{color:var(--mhc-navy-900);letter-spacing:.02em;margin:0;font-size:var(--fs-title);font-weight:700;line-height:var(--lh-tight)}.mhc-login__brand p{color:var(--c-text-muted);margin:var(--space-2) 0 0;font-size:var(--fs-caption)}.mhc-login__hint{margin-top:var(--space-4);font-size:12px;color:var(--c-text-faint);text-align:center}.mhc-login__providers{display:flex;flex-direction:column;gap:var(--space-3)}.mhc-login__divider{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-5) 0 var(--space-4);color:var(--c-text-muted);font-size:var(--fs-caption)}.mhc-login__divider:before,.mhc-login__divider:after{content:"";flex:1;height:1px;background:var(--c-border-strong)}.mhc-btn--link{background:transparent;color:var(--c-text-muted);font-weight:600;min-height:40px}.mhc-ext-wait{display:flex;flex-direction:column;gap:var(--space-3);text-align:center}.mhc-ext-wait__title{font-size:var(--fs-lead);font-weight:700;margin:0}.mhc-ext-wait__code{margin:var(--space-2) 0;font-size:var(--fs-lead)}.mhc-ext-wait__code strong{letter-spacing:.08em;font-size:var(--fs-title);display:block;margin-top:var(--space-2)}.mhc-install{margin-top:var(--space-5);border-top:1px solid var(--c-border-strong);padding-top:var(--space-4);color:var(--c-text-muted);font-size:var(--fs-caption)}.mhc-install summary{cursor:pointer;text-align:center;color:var(--c-primary-strong);font-weight:700;list-style-position:inside}.mhc-install__content{margin-top:var(--space-3);line-height:1.5}.mhc-install__content p{margin:0 0 var(--space-3)}.mhc-install__content ol{margin:0;padding-left:22px}.mhc-install__content li+li{margin-top:var(--space-2)}.mhc-install__button{margin-top:var(--space-3)}.mhc-install__hint{text-align:center;margin-top:var(--space-2)!important;color:var(--c-text-faint)}.mhc-lock{min-height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:var(--space-5);max-width:420px;margin:0 auto}.mhc-lock__brand h1{color:var(--mhc-navy-900);letter-spacing:.02em;margin:0;font-size:var(--fs-title);font-weight:700}.mhc-lock__title{color:var(--c-text-muted);margin:var(--space-3) 0 var(--space-5);font-size:var(--fs-body)}.mhc-lock__actions{width:100%;display:flex;flex-direction:column;gap:var(--space-2)}.pay{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px dashed var(--c-border);display:flex;flex-direction:column;gap:4px}.pay__badge{align-self:flex-start;padding:3px 10px;border-radius:var(--radius-pill);font-size:var(--fs-eyebrow);font-weight:700}.pay__badge--ok{background:var(--c-success-bg);color:var(--c-success)}.pay__badge--unpaid{background:var(--c-warn-bg);color:var(--c-warn)}.pay__badge--overdue{background:var(--c-danger-bg);color:var(--c-danger)}.pay__amount{margin:2px 0 0;font-weight:700;color:var(--c-text)}.pay__deadline,.pay__note{margin:0;font-size:var(--fs-caption);color:var(--c-text-muted)}.pay__btn{margin-top:var(--space-2)}.thread{max-height:52vh;overflow-y:auto;-webkit-overflow-scrolling:touch;margin-bottom:var(--space-3)}.thread__hint{color:var(--c-text-muted);font-size:var(--fs-caption);margin:0 0 var(--space-2)}.thread__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.thread__msg{display:flex;flex-direction:column;gap:2px;max-width:82%;padding:var(--space-3);border-radius:var(--radius-md);font-size:var(--fs-body)}.thread__msg--them{align-self:flex-start;background:var(--c-surface-alt)}.thread__msg--mine{align-self:flex-end;background:var(--mhc-blue-200);color:var(--mhc-navy-900)}.thread__author{font-size:var(--fs-eyebrow);font-weight:700;opacity:.7}.thread__text{white-space:pre-wrap;overflow-wrap:anywhere}.thread__time{font-size:10px;opacity:.6}.composer{display:flex;align-items:flex-end;gap:var(--space-2);padding-bottom:env(safe-area-inset-bottom)}.composer__input{flex:1;min-width:0;padding:10px 14px;border:1px solid var(--c-border-strong);border-radius:20px;font:inherit;font-size:var(--fs-body);line-height:1.35;resize:none;min-height:40px;max-height:120px;overflow-y:auto}.composer__icon-btn{flex:0 0 auto;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:50%;background:transparent;color:var(--c-text-muted);cursor:pointer}.composer__icon-btn:disabled{opacity:.4;cursor:default}.composer__send{background:var(--c-primary);color:var(--c-on-primary)}.composer__send:disabled{background:var(--c-surface-alt);color:var(--c-text-faint)}.composer__spinner{width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:sk-spin .7s linear infinite}@keyframes sk-spin{to{transform:rotate(360deg)}}.composer-chips{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-wrap:wrap;gap:6px}.composer-chip{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:4px 6px 4px 8px;border-radius:var(--radius-pill);background:var(--c-surface-alt);border:1px solid var(--c-border);font-size:var(--fs-caption)}.composer-chip__icon{flex:0 0 auto}.composer-chip__name{min-width:0;max-width:40vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-chip__x{flex:0 0 auto;width:24px;height:24px;border:0;background:transparent;font:inherit;font-size:16px;line-height:1;cursor:pointer;color:var(--c-text-muted)}.composer-chip__x:disabled{opacity:.4;cursor:default}.thread__atts{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.thread__att{display:flex;align-items:center;gap:var(--space-2);padding:6px 8px;border-radius:var(--radius-sm);background:#0000000f;font-size:var(--fs-caption)}.thread__att-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thread__att-size{opacity:.6;flex-shrink:0}.thread__att-action{flex-shrink:0;font-weight:700;text-decoration:underline}.thread__file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.ws-back{border:0;background:#ffffff26;color:#fff;font-size:var(--fs-caption);font-weight:600;padding:6px 12px;border-radius:var(--radius-pill);cursor:pointer;margin-bottom:var(--space-3);min-height:36px}.ws-row{width:100%;text-align:left;border:0;background:none;padding:var(--space-2) 0;cursor:pointer;display:flex;flex-direction:column;gap:2px;min-height:44px}.ws-link{border:0;background:none;color:var(--c-primary);font-weight:600;font-size:var(--fs-caption);padding:0 0 var(--space-3);cursor:pointer}.ws-saved{color:var(--c-success);font-weight:700;margin:0 0 var(--space-2)}.protocol-picker{list-style:none;margin:var(--space-2) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.protocol-picker__item{width:100%;text-align:left;padding:14px 16px;border:1px solid var(--c-border-strong);border-radius:var(--radius-sm);background:#fff;color:var(--c-text);font:inherit;font-weight:600;cursor:pointer;min-height:48px}.protocol-picker__item:disabled{opacity:.6;cursor:default}.protocol-history__empty{margin:0;color:var(--c-text-muted);font-size:var(--fs-caption)}.protocol-history{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.protocol-history__item{width:100%;text-align:left;display:flex;flex-direction:column;gap:2px;padding:12px 14px;border:1px solid var(--c-border);border-radius:var(--radius-sm);background:#fff;font:inherit;cursor:pointer}.protocol-history__date{font-weight:600}.protocol-history__meta{font-size:var(--fs-caption);color:var(--c-text-muted)}.mhc-field select,.mhc-field textarea{padding:12px 14px;border:1px solid var(--c-border-strong);border-radius:var(--radius-sm);font:inherit;font-size:var(--fs-body);background:#fff;color:var(--c-text);min-height:48px;width:100%}.mhc-field textarea{resize:vertical}.qa{margin:0;display:flex;flex-direction:column;gap:var(--space-3)}.qa__row{display:flex;flex-direction:column;gap:2px}.qa__q{font-weight:600;font-size:var(--fs-caption);color:var(--c-text-muted)}.qa__a{margin:0;overflow-wrap:anywhere}.mhc-field__hint{font-size:12px;color:var(--c-text-faint)}.mhc-field select:disabled{background:var(--c-surface-alt);color:var(--c-text-muted);cursor:not-allowed}.client-row--tappable{width:100%;border:0;background:none;padding:var(--space-3) 0;cursor:pointer;display:flex;align-items:center;gap:var(--space-3);text-align:left;min-height:44px}.mhc-list li+li .client-row--tappable{border-top:1px solid var(--c-border)}.client-row__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.client-row__chevron{font-size:22px;line-height:1;color:var(--c-text-faint);flex:none}.ws-request{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--fs-body)}.doc-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0}.doc-row__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.doc-row__title{font-weight:600;overflow-wrap:anywhere}.doc-row__meta{font-size:var(--fs-caption);color:var(--c-text-muted)}.doc-row__action{flex-shrink:0;font-weight:700}.mhc-list li+li .doc-row{border-top:1px solid var(--c-border)}.doc-badge{align-self:flex-start;display:inline-block;padding:2px 8px;border-radius:var(--radius-pill);font-size:var(--fs-eyebrow);font-weight:700}.doc-badge--ok{background:var(--c-success-bg);color:var(--c-success)}.doc-badge--wait{background:var(--c-warn-bg);color:var(--c-warn)}.doc-help{margin:0 0 var(--space-3);font-size:var(--fs-caption);color:var(--c-text-muted)}.doc-list-head{margin:var(--space-4) 0 var(--space-2);font-size:var(--fs-eyebrow);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--c-text-muted)}.composer__pick{flex:1;min-width:0;display:flex;align-items:center;gap:var(--space-2);height:40px;padding:0 14px;border:1px solid var(--c-border-strong);border-radius:20px;background:transparent;font:inherit;font-size:var(--fs-body);color:var(--c-text-muted);cursor:pointer;text-align:left}.composer__pick:disabled{opacity:.4;cursor:default}.composer__pick-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sigpad{display:flex;flex-direction:column;gap:var(--space-2)}.sigpad__hint{margin:0;font-size:var(--fs-caption);color:var(--c-text-muted)}.sigpad__canvas{width:100%;height:180px;border:1px solid var(--c-border-strong);border-radius:var(--radius-sm);background:#fff;touch-action:none}.sigpad__actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.sigpad__actions .mhc-btn{flex:1}.booking-cta{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.booking-cta__text{flex:1;min-width:0}.booking-cta__title{margin:0;font-weight:600}.booking-cta__hint{margin:2px 0 0;font-size:var(--fs-caption);color:var(--c-text-muted)}.booking-cta__btn{flex:0 0 auto;padding:10px 18px}.booking-cta--lead{flex-direction:column;align-items:stretch;text-align:center}.booking-cta--lead .booking-cta__btn{width:100%}.contact-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.contact-btn{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border:1px solid var(--c-border-strong);border-radius:var(--radius-pill);font-size:var(--fs-caption);font-weight:600;color:var(--c-primary-strong);text-decoration:none;background:transparent}.contact-btn svg{flex:0 0 auto}.appt-focus{border-radius:var(--radius-md);animation:appt-pulse 1.6s ease-out 1}@keyframes appt-pulse{0%{box-shadow:0 0 #0060d059}to{box-shadow:0 0 0 12px #0060d000}}.mhc-nav__badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:999px;font-size:11px;font-weight:700;line-height:1;background:#4c5bd4;color:#fff}
