/* Multi Calendar Booking Bridge 0.3.1 - LFH v4.28 semantic visual system.
   All colours follow the global LFH tokens; Site Theme Toggle controls light/dark.
   Only generated shortcode layout is owned here. Cornerstone owns section dimensions. */
.mcb-team--lfh {
  --mcb-lfh-ink: var(--lfh-public-text,#f1f5fa);
  --mcb-lfh-muted: var(--lfh-public-text-muted,#aab8c8);
  --mcb-lfh-accent: var(--lfh-support-accent,#fccd1f);
  --mcb-lfh-panel: var(--lfh-support-card-bg,rgba(3,18,31,.58));
  --mcb-lfh-panel-border: var(--lfh-support-card-border,rgba(196,214,230,.20));
  --mcb-lfh-card: var(--lfh-event-card-bg,#f7f7f8);
  --mcb-lfh-card-text: var(--lfh-event-card-text,#293a55);
  --mcb-lfh-card-muted: var(--lfh-event-card-muted,#65738a);
  --mcb-lfh-rule: var(--lfh-event-card-rule,#dde2e8);
  color:var(--mcb-lfh-ink);
  font-family:Inter,"Helvetica Neue",Arial,sans-serif;
  max-width:none;
  width:100%;
}
.mcb-team--lfh *{box-sizing:border-box}
.mcb-team--lfh [hidden]{display:none!important}
.mcb-team--lfh .mcb-team__header{margin-bottom:1.35rem}
.mcb-team--lfh .mcb-team__eyebrow{display:block;margin-bottom:.45rem;font-size:.7rem;line-height:1.35;letter-spacing:.09em;font-weight:800;color:var(--mcb-lfh-accent)}
.mcb-team--lfh .mcb-team__title{margin:0 0 .4rem;color:var(--mcb-lfh-ink);font-size:clamp(1.85rem,3vw,2.6rem);font-weight:780;line-height:1.1;letter-spacing:-.035em}
.mcb-team--lfh .mcb-team__intro{margin:0;max-width:42rem;color:var(--lfh-public-text-soft,#d7dfe8);font-size:1rem;line-height:1.55}
.mcb-team--lfh .mcb-team__modes{display:inline-flex;flex-wrap:wrap;gap:.3rem;padding:.28rem;margin:0 0 1.3rem;background:var(--mcb-lfh-panel);border:1px solid var(--mcb-lfh-panel-border);border-radius:var(--lfh-radius,0.875rem)}
.mcb-team--lfh .mcb-team__mode{min-height:2.625rem;cursor:pointer;border:1px solid transparent;border-radius:var(--lfh-radius-sm,.5rem);padding:.55rem .95rem;color:var(--mcb-lfh-ink);background:transparent;font:700 .86rem/1.3 Inter,Arial,sans-serif;white-space:normal}
.mcb-team--lfh .mcb-team__mode.is-selected{color:#fff;background:var(--lfh-brand-blue,#1d55b3);border-color:var(--lfh-brand-blue,#1d55b3)}
.mcb-team--lfh .mcb-team__mode:hover:not(.is-selected){background:color-mix(in srgb,var(--mcb-lfh-ink) 9%,transparent)}
.mcb-team--lfh .mcb-team__users{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,235px),1fr));align-items:stretch;gap:.9rem;margin:0 0 1.3rem}
.mcb-team--lfh .mcb-team__person{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid var(--mcb-lfh-panel-border);border-radius:var(--lfh-radius,.875rem);background:var(--mcb-lfh-panel);box-shadow:none;transition:border-color .15s ease,background .15s ease}
.mcb-team--lfh .mcb-team__person:hover,.mcb-team--lfh .mcb-team__person:focus-within{border-color:var(--lfh-support-accent,#fccd1f);box-shadow:none}
.mcb-team--lfh .mcb-team__person.is-selected{border:1px solid var(--lfh-brand-blue-bright,#2d67c8);background:color-mix(in srgb,var(--mcb-lfh-panel) 85%,var(--lfh-brand-blue,#1d55b3))}
.mcb-team--lfh .mcb-team__user,.mcb-team--lfh .mcb-team__user.is-selected{display:flex;align-items:flex-start;flex:1;flex-direction:column;justify-content:flex-start;width:100%;min-height:0;gap:.65rem;padding:1.25rem;background:transparent!important;border:0!important;border-radius:0!important;color:var(--mcb-lfh-ink)!important;text-align:left;text-decoration:none!important}
.mcb-team--lfh .mcb-team__avatar{width:52px;height:52px;border:1px solid var(--mcb-lfh-panel-border);border-radius:50%;object-fit:cover}
.mcb-team--lfh .mcb-team__details{display:flex;flex:1;flex-direction:column;gap:.25rem}
.mcb-team--lfh .mcb-team__name{color:var(--mcb-lfh-ink);font-size:1.08rem;font-weight:780;line-height:1.25}
.mcb-team--lfh .mcb-team__role{color:var(--lfh-support-accent,#fccd1f);font-size:.875rem;font-weight:740;opacity:1}
.mcb-team--lfh .mcb-team__bio{color:var(--lfh-support-text-soft,#d7dfe8);font-size:.87rem;font-weight:400;opacity:1;line-height:1.5}
.mcb-team--lfh .mcb-team__select{margin-top:.5rem;display:inline-flex;align-items:center;gap:.4rem;min-height:2.25rem;padding:.5rem .78rem;background:var(--lfh-yellow,#fccd1f)!important;border:1px solid var(--lfh-yellow,#fccd1f)!important;border-radius:var(--lfh-radius-sm,.5rem);color:var(--lfh-yellow-ink,#071525)!important;font-size:.8rem;font-weight:800;line-height:1.2}
.mcb-team--lfh .mcb-team__person.is-selected .mcb-team__select{color:var(--lfh-yellow-ink,#071525)!important;background:var(--lfh-yellow,#fccd1f)!important;border-color:var(--lfh-yellow,#fccd1f)!important}
.mcb-team--lfh .mcb-team__user:hover .mcb-team__select{background:var(--lfh-yellow-hover,#f7c20a)!important}
.mcb-team--lfh .mcb-team__profile{margin:0 1.25rem 1.1rem;color:var(--lfh-support-link,#fccd1f);font-size:.79rem;font-weight:700;text-decoration:none}
.mcb-team--lfh .mcb-team__profile:hover{text-decoration:underline;color:var(--lfh-support-link-hover,#ffe16a)}
.mcb-team--lfh .mcb-team__prompt{margin:0 0 .9rem;color:var(--mcb-lfh-ink);font-weight:720}
.mcb-team--lfh .mcb-team__role-options{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:1.3rem}
.mcb-team--lfh .mcb-team__role-choice{display:inline-flex;align-items:center;min-height:2.625rem;padding:.55rem .9rem;border:1px solid var(--mcb-lfh-panel-border);border-radius:var(--lfh-radius-sm,.5rem);color:var(--mcb-lfh-ink)!important;background:var(--mcb-lfh-panel);font-size:.85rem;font-weight:730;text-decoration:none!important}
.mcb-team--lfh .mcb-team__role-choice:hover,.mcb-team--lfh .mcb-team__role-choice:focus-visible,.mcb-team--lfh .mcb-team__role-choice.is-selected{color:#fff!important;background:var(--lfh-brand-blue,#1d55b3);border-color:var(--lfh-brand-blue,#1d55b3)}
/* Role-first directory retains the same LFH cards as the team-member view. */
.mcb-team--lfh .mcb-team__role-results{margin-top:1.35rem}
.mcb-team--lfh .mcb-team__results-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:.35rem 1rem;margin:0 0 1rem;padding-bottom:.8rem;border-bottom:1px solid var(--mcb-lfh-panel-border)}
.mcb-team--lfh .mcb-team__results-heading h3{margin:0;color:var(--mcb-lfh-ink);font-size:clamp(1.3rem,2vw,1.55rem);font-weight:780;line-height:1.2}
.mcb-team--lfh .mcb-team__results-heading p{margin:0;color:var(--mcb-lfh-muted);font-size:.86rem;line-height:1.5}
.mcb-team--lfh .mcb-team__booking{margin-top:1.6rem;scroll-margin-top:2rem}
.mcb-team--lfh .mcb-team__booking-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.8rem;margin-bottom:1rem;border-bottom:1px solid var(--lfh-public-rule,rgba(197,213,228,.2));padding-bottom:.9rem}
.mcb-team--lfh .mcb-team__booking-header h3{margin:0;color:var(--mcb-lfh-ink);font-size:clamp(1.4rem,2vw,1.8rem);font-weight:780;letter-spacing:-.02em}
.mcb-team--lfh .mcb-team__close{min-height:2.625rem;padding:.5rem .85rem;cursor:pointer;border:1px solid var(--mcb-lfh-panel-border);border-radius:var(--lfh-radius-sm,.5rem);color:var(--mcb-lfh-ink);background:var(--mcb-lfh-panel);font-size:.83rem;font-weight:750}
.mcb-team--lfh .mcb-team__status{margin:1rem 0;color:var(--mcb-lfh-muted);font-size:.88rem}
/* Native diary remains a bright, readable LFH event card over the public shell. */
.mcb-booking.mcb-lfh{color:var(--lfh-event-card-text,#293a55);font-family:Inter,Arial,sans-serif}
.mcb-booking.mcb-lfh .mcb-native__panel{box-shadow:var(--lfh-public-shadow,0 .6rem 1.6rem rgba(0,0,0,.12));border-radius:var(--lfh-radius,.875rem)}
.mcb-booking.mcb-lfh .mcb-native__step-title strong{color:var(--lfh-event-card-heading,#233754)}
.mcb-booking.mcb-lfh .mcb-native__service{box-shadow:none}
.mcb-booking.mcb-lfh .mcb-native__service.is-selected{box-shadow:0 0 0 1px var(--lfh-brand-blue,#1d55b3)}
.mcb-booking.mcb-lfh .mcb-native__form label{color:var(--lfh-event-card-heading,#233754)}
.mcb-booking.mcb-lfh .mcb-native__form button.mcb-native__confirm,
.mcb-booking.mcb-lfh .mcb-native__form button.mcb-native__confirm:is(:hover,:focus,:focus-visible,:active,:disabled){background:var(--lfh-yellow,#fccd1f)!important;border-color:var(--lfh-yellow,#fccd1f)!important;border-radius:var(--lfh-radius-sm,.5rem)!important;color:var(--lfh-yellow-ink,#071525)!important;font-weight:800!important;box-shadow:none!important}
.mcb-booking.mcb-lfh .mcb-native__form button.mcb-native__confirm:not(:disabled):is(:hover,:focus-visible){background:var(--lfh-yellow-hover,#f7c20a)!important;border-color:var(--lfh-yellow-hover,#f7c20a)!important}
.mcb-booking.mcb-lfh .mcb-native__step-title>span{background:var(--lfh-brand-blue,#1d55b3);color:#fff}
.mcb-team--lfh :is(a,button):focus-visible,.mcb-booking.mcb-lfh :is(a,button):focus-visible{outline:2px solid var(--lfh-accent,#1b98e0);outline-offset:3px}
@media(max-width:672px){
  .mcb-team--lfh .mcb-team__users{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:.7rem}
  .mcb-team--lfh .mcb-team__user{padding:1rem}
}
@media(max-width:470px){
  .mcb-team--lfh .mcb-team__users{grid-template-columns:1fr}
  .mcb-team--lfh .mcb-team__modes{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .mcb-team--lfh .mcb-team__modes:has(> :only-child){grid-template-columns:1fr}
  .mcb-team--lfh .mcb-team__mode{padding:.65rem .5rem}
  .mcb-team--lfh .mcb-team__booking-header{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){.mcb-team--lfh *{scroll-behavior:auto;transition:none}}

/* Public member identity above standalone booking calendar. */
.mcb-booking.mcb-lfh .mcb-provider-heading{color:var(--lfh-public-text,#f1f5fa);border-color:var(--lfh-public-rule,rgba(197,213,228,.2))}
.mcb-booking.mcb-lfh .mcb-provider-heading__name{color:var(--lfh-public-text,#f1f5fa)}
.mcb-booking.mcb-lfh .mcb-provider-heading__role{color:var(--lfh-support-accent,#fccd1f);opacity:1}
.mcb-bp-book-link{border-radius:var(--lfh-radius-sm,.5rem);color:var(--lfh-support-link,var(--lfh-blue,#006494));border-color:var(--lfh-public-panel-border,rgba(196,214,230,.2));font-size:.83rem;font-weight:750;text-decoration:none}
.mcb-bp-book-link:hover,.mcb-bp-book-link:focus-visible{background:var(--lfh-brand-blue,#1d55b3);border-color:var(--lfh-brand-blue,#1d55b3);color:#fff;text-decoration:none}
.mcb-bp-job-role{color:var(--lfh-support-accent,var(--lfh-blue,#006494));font-weight:720;opacity:1}
