.booking-modal-root{--booking-bg: #f5f9fc;--booking-surface: rgba(255, 255, 255, .94);--booking-surface-elevated: #ffffff;--booking-border: rgba(151, 164, 186, .34);--booking-border-strong: rgba(47, 123, 255, .72);--booking-text: #071126;--booking-text-muted: #65758d;--booking-text-soft: #31435f;--booking-primary: #2777ff;--booking-primary-hover: #0f62f5;--booking-cyan: #38bdf8;--booking-radius-lg: 28px;--booking-radius-md: 18px;--booking-radius-sm: 12px;--booking-shadow-soft: 0 30px 90px rgba(9, 24, 54, .12);--booking-shadow-glow: 0 0 34px rgba(39, 119, 255, .2);--booking-focus: 0 0 0 3px rgba(56, 189, 248, .18), 0 0 0 1px rgba(77, 145, 255, .82)}.booking-modal-root *{box-sizing:border-box}.booking-modal-root button{font:inherit}.booking-modal-root svg{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.booking-modal-content{background:radial-gradient(circle at 18% 14%,rgba(37,183,255,.18),transparent 32%),radial-gradient(circle at 82% 80%,rgba(39,119,255,.12),transparent 34%),linear-gradient(135deg,#f8fbff,#eef7fb 52%,#f7fbff)}.booking-modal-root.booking-widget{position:relative;display:grid;grid-template-columns:320px 1fr;min-height:580px;overflow:hidden;color:var(--booking-text);background:radial-gradient(circle at 16% 20%,rgba(39,119,255,.12),transparent 28%),radial-gradient(circle at 72% 78%,rgba(56,189,248,.1),transparent 30%),linear-gradient(145deg,#fffffff0,#f7fbfffa 58%);border:1px solid var(--booking-border);border-radius:var(--booking-radius-lg);box-shadow:var(--booking-shadow-soft),var(--booking-shadow-glow);isolation:isolate}.booking-modal-root.booking-widget:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(56,189,248,.1),transparent),linear-gradient(to bottom,rgba(255,255,255,.86),transparent 22%)}.booking-modal-root .booking-panel{position:relative;z-index:1;padding:clamp(1.5rem,2.4vw,2.6rem)}.booking-modal-root .booking-profile-panel,.booking-modal-root .booking-calendar-panel{border-right:1px solid var(--booking-border)}.booking-modal-root .booking-brand-row,.booking-modal-root .booking-calendar-header,.booking-modal-root .booking-times-header,.booking-modal-root .booking-calendar-controls,.booking-modal-root .booking-time-toggle,.booking-modal-root .booking-confirm-strip,.booking-modal-root .booking-confirm-strip span{display:flex;align-items:center}.booking-modal-root .booking-brand-row,.booking-modal-root .booking-calendar-header,.booking-modal-root .booking-times-header,.booking-modal-root .booking-confirm-strip{justify-content:space-between;gap:1rem}.booking-modal-root .booking-logo{width:7.4rem;height:auto}.booking-modal-root .booking-live-pill{display:inline-flex;align-items:center;gap:.42rem;white-space:nowrap;border:1px solid rgba(56,189,248,.24);border-radius:999px;background:#2777ff14;color:var(--booking-primary-hover);font-size:.68rem;font-weight:700;letter-spacing:.08em;padding:.42rem .62rem;text-transform:uppercase}.booking-modal-root .booking-live-pill span{width:.42rem;height:.42rem;border-radius:999px;background:var(--booking-cyan);box-shadow:0 0 14px #38bdf8a6}.booking-modal-root .booking-host-card{margin-top:2rem;padding:1.25rem;text-align:center;border:1px solid rgba(148,163,184,.16);border-radius:var(--booking-radius-md);background:linear-gradient(180deg,#fffffff5,#f5f9fce6);box-shadow:0 12px 34px #0d274a14,inset 0 1px #ffffffe6}.booking-modal-root .booking-avatar-orbit{position:relative;display:grid;place-items:center;width:6.75rem;height:6.75rem;margin:0 auto 1rem}.booking-modal-root .booking-avatar-orbit>span{position:absolute;border:1px solid rgba(56,189,248,.22);border-radius:999px;filter:drop-shadow(0 0 16px rgba(47,123,255,.16))}.booking-modal-root .booking-avatar-orbit>span:nth-child(1){width:3.7rem;height:3.7rem}.booking-modal-root .booking-avatar-orbit>span:nth-child(2){width:5.2rem;height:5.2rem;opacity:.74}.booking-modal-root .booking-avatar-orbit>span:nth-child(3){width:6.7rem;height:6.7rem;opacity:.44}.booking-modal-root .booking-avatar-orbit div{position:relative;display:grid;place-items:center;width:3.55rem;height:3.55rem;border:1px solid rgba(147,197,253,.92);border-radius:999px;background:radial-gradient(circle at 50% 18%,rgba(56,189,248,.94),transparent 44%),linear-gradient(180deg,#2f7bff,#0d4fd4);box-shadow:0 0 0 6px #2f7bff1f,0 0 28px #2f7bff52;color:#fff;font-weight:800}.booking-modal-root .booking-host-card h3,.booking-modal-root .booking-signal-card h3,.booking-modal-root .booking-calendar-header h3,.booking-modal-root .booking-times-header h3,.booking-modal-root .booking-meeting-copy h2{margin:0;color:var(--booking-text);letter-spacing:-.02em}.booking-modal-root .booking-host-card h3{font-size:1.16rem}.booking-modal-root .booking-host-card p,.booking-modal-root .booking-meeting-copy p,.booking-modal-root .booking-times-header p,.booking-modal-root .booking-signal-card p,.booking-modal-root .booking-eyebrow{margin:0;color:var(--booking-text-muted)}.booking-modal-root .booking-meeting-copy>p,.booking-modal-root .booking-times-header p{font-size:.7rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.booking-modal-root .booking-host-card p{margin-top:.36rem;font-size:.9rem}.booking-modal-root .booking-meeting-copy{padding:1.8rem 0 1.5rem}.booking-modal-root .booking-meeting-copy h2{margin-top:.72rem;font-size:clamp(1.72rem,2.2vw,2.35rem);line-height:1}.booking-modal-root .booking-meeting-copy ul{display:grid;gap:.92rem;margin:1.55rem 0 0;padding:0;list-style:none}.booking-modal-root .booking-meeting-copy li{display:flex;align-items:center;gap:.82rem;color:var(--booking-text-soft);font-size:.95rem;font-weight:650}.booking-modal-root .booking-detail-icon,.booking-modal-root .booking-signal-icon,.booking-modal-root .booking-check{display:grid;place-items:center;flex:0 0 auto;border-radius:999px}.booking-modal-root .booking-detail-icon{width:2.18rem;height:2.18rem;border:1px solid rgba(56,189,248,.2);background:#2f7bff1a;color:var(--booking-cyan)}.booking-modal-root .booking-signal-card{margin-top:auto;display:grid;grid-template-columns:2.45rem 1fr;align-items:start;gap:.8rem .9rem;padding:1.15rem;border:1px solid rgba(59,130,246,.26);border-radius:var(--booking-radius-md);background:radial-gradient(circle at 100% 0%,rgba(56,189,248,.16),transparent 42%),linear-gradient(135deg,#fff,#f3f9ff 82%);box-shadow:0 12px 34px #0d274a14}.booking-modal-root .booking-signal-icon{width:2.45rem;height:2.45rem;background:#2f7bff24;color:var(--booking-cyan);box-shadow:inset 0 0 0 1px #38bdf83d}.booking-modal-root .booking-signal-card h3{font-size:.94rem;line-height:1.22}.booking-modal-root .booking-signal-card p{margin-top:.42rem;font-size:.78rem;line-height:1.45}.booking-modal-root .booking-mini-wave{grid-column:2;display:flex;align-items:center;gap:.22rem;height:1.5rem;margin-top:.1rem}.booking-modal-root .booking-mini-wave span{width:100%;max-width:.34rem;border-radius:999px;background:linear-gradient(180deg,var(--booking-cyan),var(--booking-primary));opacity:.86}.booking-modal-root .booking-mini-wave span:nth-child(3n+1){height:42%}.booking-modal-root .booking-mini-wave span:nth-child(3n+2){height:72%}.booking-modal-root .booking-mini-wave span:nth-child(3n){height:100%}.booking-modal-root .booking-calendar-panel{padding-inline:clamp(1.7rem,3vw,3.1rem)}.booking-modal-root .booking-calendar-header h3,.booking-modal-root .booking-times-header h3{font-size:clamp(1.35rem,2vw,1.75rem)}.booking-modal-root .booking-calendar-header h3 span{color:var(--booking-primary-hover)}.booking-modal-root .booking-calendar-controls{gap:.62rem}.booking-modal-root .booking-calendar-controls button{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:1px solid rgba(148,163,184,.16);border-radius:999px;background:#ffffffc7;color:#50627c;cursor:pointer;box-shadow:0 8px 22px #0d274a0f;transition:border-color .16s ease,color .16s ease,transform .16s ease,background .16s ease}.booking-modal-root .booking-calendar-controls button:hover{border-color:#38bdf880;background:#2777ff14;color:var(--booking-primary-hover);transform:translateY(-1px)}.booking-modal-root .booking-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(2.7rem,1fr));gap:.7rem;margin-top:2.2rem}.booking-modal-root .booking-weekday{padding-bottom:.35rem;color:#75869d;font-size:.74rem;font-weight:800;letter-spacing:.11em;text-align:center}.booking-modal-root .booking-date{position:relative;display:grid;place-items:center;min-height:3.25rem;border:1px solid transparent;border-radius:.95rem;background:#ffffff7a;color:#071126db;cursor:pointer;font:inherit;font-size:.98rem;font-weight:700;transition:border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease,background .16s ease}.booking-modal-root .booking-date:hover{border-color:#38bdf870;background:#2777ff14;color:var(--booking-primary-hover);transform:translateY(-1px)}.booking-modal-root .booking-date.is-muted{color:#65758d5c}.booking-modal-root .booking-date.is-weekend{border-color:#94a3b833;background:#dde7f4b3;color:#31435fbf}.booking-modal-root .booking-date.is-disabled{border-color:#94a3b81f;background:#ecf3fb8c;color:#65758d6b;cursor:not-allowed;pointer-events:none}.booking-modal-root .booking-date.is-available,.booking-modal-root .booking-date.is-next-month{border-color:#94a3b833;background:#ffffffe6}.booking-modal-root .booking-date.is-next-month{color:#31435fb8}.booking-modal-root .booking-date span{position:absolute;left:.55rem;top:.34rem;color:var(--booking-primary-hover);font-size:.62rem;font-weight:800;letter-spacing:.08em}.booking-modal-root .booking-date.is-selected{border-color:#93c5fde6;background:linear-gradient(180deg,#5ca8ff 0%,var(--booking-primary) 58%,#1559e8 100%);color:#fff;box-shadow:0 0 0 1px #ffffff1f inset,0 14px 32px #2f7bff57,0 0 28px #2f7bff42}.booking-modal-root .booking-date.has-availability-dot:after{content:"";position:absolute;bottom:.48rem;left:50%;width:.4rem;height:.4rem;border-radius:999px;background:var(--booking-cyan);box-shadow:0 0 16px #38bdf8a6;transform:translate(-50%)}.booking-modal-root .booking-times-panel{background:#f5f9fc6b}.booking-modal-root .booking-times-header{align-items:flex-start;flex-direction:column;margin-bottom:1.25rem}.booking-modal-root .booking-times-header h3{margin-top:.34rem;white-space:nowrap}.booking-modal-root .booking-time-toggle{gap:.16rem;padding:.24rem;border:1px solid rgba(148,163,184,.18);border-radius:.95rem;background:#e5effbd1}.booking-modal-root .booking-time-toggle button{min-width:2.8rem;border:0;border-radius:.72rem;background:transparent;color:var(--booking-text-muted);cursor:pointer;font-size:.86rem;font-weight:800;padding:.52rem .62rem}.booking-modal-root .booking-time-toggle button.is-active{background:#2f7bff2e;color:var(--booking-primary-hover);box-shadow:inset 0 0 0 1px #4d91ff73,0 0 18px #2f7bff29}.booking-modal-root .booking-time-list{display:grid;gap:.7rem;max-height:25rem;overflow-y:auto;padding-right:.25rem;scrollbar-gutter:stable}.booking-modal-root .booking-time-slot{display:flex;align-items:center;justify-content:center;min-height:3.1rem;width:100%;border:1px solid rgba(148,163,184,.34);border-radius:var(--booking-radius-sm);background:#ffffffc7;color:#071126c7;cursor:pointer;font-size:1rem;font-weight:800;box-shadow:0 8px 22px #0d274a0a;transition:border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease,background .16s ease}.booking-modal-root .booking-time-slot:hover{border-color:#38bdf880;background:#eff7ffeb;color:var(--booking-primary-hover);transform:translateY(-1px)}.booking-modal-root .booking-time-slot.is-selected{justify-content:space-between;border-color:var(--booking-border-strong);background:linear-gradient(180deg,#2f7bff33,#2f7bff14),var(--booking-surface-elevated);color:var(--booking-primary-hover);box-shadow:inset 0 0 0 1px #2f7bff47,0 0 26px #2f7bff33;padding-inline:1rem .6rem}.booking-modal-root .booking-check{width:2rem;height:2rem;background:linear-gradient(180deg,var(--booking-cyan),var(--booking-primary));color:#fff;box-shadow:0 0 18px #2f7bff57}.booking-modal-root .booking-confirm-strip{align-items:stretch;flex-direction:column;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--booking-border)}.booking-modal-root .booking-confirm-strip span{justify-content:flex-start;gap:.45rem;color:var(--booking-text-muted);font-size:.82rem;font-weight:700}.booking-modal-root .booking-confirm-strip svg{color:var(--booking-cyan)}.booking-modal-root .booking-confirm-strip button{width:100%;border:1px solid rgba(147,197,253,.35);border-radius:999px;background:#ffffffc7;color:var(--booking-primary-hover);cursor:pointer;font-size:.82rem;font-weight:800;padding:.62rem .95rem;transition:border-color .16s ease,background .16s ease,transform .16s ease}.booking-modal-root .booking-confirm-strip button:hover{border-color:#93c5fdb8;background:#eff7fff5;transform:translateY(-1px)}.booking-modal-root button:focus-visible{outline:none;box-shadow:var(--booking-focus)}.booking-modal-root button:active{transform:translateY(0)}@media(max-width:1320px){.booking-modal-root.booking-widget{grid-template-columns:minmax(0,1fr) minmax(310px,.86fr)}.booking-modal-root .booking-profile-panel{grid-column:1 / -1;display:grid;grid-template-columns:minmax(220px,.78fr) minmax(280px,1fr) minmax(260px,.95fr);gap:1rem;align-items:stretch;border-right:0;border-bottom:1px solid var(--booking-border)}.booking-modal-root .booking-brand-row{grid-column:1 / -1}.booking-modal-root .booking-host-card,.booking-modal-root .booking-meeting-copy,.booking-modal-root .booking-signal-card{margin:0}.booking-modal-root .booking-meeting-copy{padding:1.2rem;border:1px solid rgba(148,163,184,.16);border-radius:var(--booking-radius-md);background:#ffffffb8}.booking-modal-root .booking-calendar-panel{grid-column:1 / -1;border-right:1px solid var(--booking-border)}}@media(max-width:820px){.booking-modal-root.booking-widget{grid-template-columns:1fr;min-height:0;border-radius:1.55rem}.booking-modal-root .booking-profile-panel,.booking-modal-root .booking-calendar-panel{grid-column:auto;display:block;border-right:0;border-bottom:1px solid var(--booking-border)}.booking-modal-root .booking-host-card{margin-top:1.25rem}.booking-modal-root .booking-meeting-copy,.booking-modal-root .booking-signal-card{margin-top:1rem}.booking-modal-root .booking-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem}.booking-modal-root .booking-date{min-height:2.65rem;border-radius:.76rem;font-size:.86rem}}@media(max-width:520px){.booking-modal-root .booking-panel{padding:1.15rem}.booking-modal-root .booking-brand-row,.booking-modal-root .booking-calendar-header,.booking-modal-root .booking-times-header,.booking-modal-root .booking-confirm-strip{align-items:flex-start;flex-direction:column}.booking-modal-root .booking-calendar-controls,.booking-modal-root .booking-time-toggle{align-self:stretch}.booking-modal-root .booking-calendar-controls button,.booking-modal-root .booking-time-toggle button{flex:1}.booking-modal-root .booking-calendar-grid{gap:.32rem;margin-top:1.4rem}.booking-modal-root .booking-weekday{font-size:.62rem;letter-spacing:.05em}.booking-modal-root .booking-date{min-height:2.25rem;font-size:.78rem}.booking-modal-root .booking-date span{display:none}.booking-modal-root .booking-time-slot{min-height:3.2rem}}
