:root{color-scheme:light;--bs-bg-0: #fbf6f2;--bs-bg-1: #f7eeea;--bs-bg-2: #f3e5e2;--bs-bg-3: #eedad8;--bs-accent: #990c2a;--bs-accent-dim: #7a0a22;--bs-accent-glow: rgba(153, 12, 42, .3);--bs-on-accent: #fff;--bs-text: #2a0a12;--bs-text-soft: rgba(42, 10, 18, .82);--bs-accent-text: #990c2a;--bs-muted: #7a5d63;--bs-faint: #b49ca1;--bs-line: #ecdfdb;--bs-line-strong: #dcc6c1;--bs-card: #ffffff;--bs-card-strong: #fff7f5;--bs-tint: rgba(153, 12, 42, .09);--bs-tint-soft: rgba(153, 12, 42, .02);--bs-glow: rgba(242, 190, 202, .85);--bs-bar: rgba(251, 246, 242, .94);--bs-scrim: rgba(42, 10, 18, .32);--bs-sheet-shadow: 0 -20px 60px rgba(42, 10, 18, .16);--bs-backdrop: radial-gradient(75% 45% at 100% 0%, rgba(240, 168, 190, .5) 0%, transparent 70%), radial-gradient(65% 40% at 0% 38%, rgba(250, 212, 188, .55) 0%, transparent 70%), radial-gradient(70% 45% at 100% 72%, rgba(220, 198, 240, .45) 0%, transparent 70%), radial-gradient(70% 40% at 5% 105%, rgba(244, 178, 198, .45) 0%, transparent 70%), var(--bs-bg-0);--bs-sheen: radial-gradient(40% 30% at 30% 25%, rgba(255, 255, 255, .75) 0%, transparent 70%), radial-gradient(35% 25% at 75% 55%, rgba(246, 196, 214, .45) 0%, transparent 70%), radial-gradient(35% 25% at 25% 80%, rgba(228, 210, 246, .45) 0%, transparent 70%);--bs-grain: .08;--bs-radius: 0px;--bs-radius-soft: 2px;--bs-tabs-h: 64px;--bs-top-h: 56px;--bs-safe-top: 12px;--bs-safe-bottom: 16px;--bs-font-display: "Playfair Display", "Times New Roman", serif;--bs-font-body: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}:is(.bs-topbar,.bs-tabs,.bs-summary,.bs-welcome){color-scheme:dark;color:var(--bs-text);--bs-bg-0: #3d0c1b;--bs-bg-1: #4d1123;--bs-accent: #d42a52;--bs-accent-dim: #a3163a;--bs-accent-glow: rgba(212, 42, 82, .45);--bs-text: #fff4ef;--bs-text-soft: rgba(255, 244, 239, .9);--bs-accent-text: #ffc6d2;--bs-muted: rgba(255, 244, 239, .78);--bs-faint: rgba(255, 244, 239, .5);--bs-line: rgba(255, 244, 239, .16);--bs-line-strong: rgba(255, 244, 239, .3);--bs-backdrop: radial-gradient(110% 70% at 85% 0%, rgba(232, 70, 105, .35) 0%, transparent 55%), radial-gradient(140% 100% at 50% 40%, #741c38 0%, var(--bs-bg-1) 50%, var(--bs-bg-0) 95%);--bs-chrome: linear-gradient(115deg, #4a1022 0%, #6c1834 48%, #7d1f3d 56%, #521226 100%);--bs-shine: linear-gradient(90deg, transparent 0%, rgba(255, 198, 210, .9) 50%, transparent 100%);--bs-welcome-glow: radial-gradient(60% 60% at 50% 55%, rgba(232, 70, 105, .6) 0%, rgba(160, 22, 58, .35) 35%, transparent 65%);--bs-welcome-shimmer: linear-gradient(180deg, transparent 60%, var(--bs-bg-0) 100%);--bs-cherry-filter: drop-shadow(0 26px 40px rgba(30, 0, 8, .5)) drop-shadow(0 0 30px rgba(232, 70, 105, .35));--bs-script-fill: linear-gradient(180deg, #ffffff 0%, #ffd9e1 55%, #ff8aa5 100%);--bs-script-glow: rgba(212, 42, 82, .5);--bs-sparkle: rgba(255, 247, 218, .55);--bs-sparkle-glow: 0 0 4px rgba(255, 230, 180, .5), 0 0 10px rgba(212, 42, 82, .35)}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:var(--bs-font-body);color:var(--bs-text);background:var(--bs-bg-0);-webkit-font-smoothing:antialiased}#root{height:100%}.bs-app{position:relative;width:100%;min-height:100dvh;background:var(--bs-bg-0);color:var(--bs-text);font-family:var(--bs-font-body);font-size:15px;overflow:hidden;isolation:isolate;display:flex;flex-direction:column}.bs-backdrop{position:fixed;inset:0;z-index:0;pointer-events:none;background:var(--bs-backdrop)}.bs-backdrop:before{content:"";position:absolute;inset:-15%;background:var(--bs-sheen);animation:bsSheen 22s ease-in-out infinite alternate}@keyframes bsSheen{0%{transform:translate3d(-4%,-2%,0) rotate(0)}to{transform:translate3d(4%,3%,0) rotate(6deg)}}.bs-backdrop:after{content:"";position:absolute;inset:0;opacity:var(--bs-grain);mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.5 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}.bs-backdrop-cherry{position:fixed;right:-150px;top:calc(var(--bs-top-h) + var(--bs-safe-top) - 30px);width:min(380px,46vh);opacity:.16;pointer-events:none;z-index:0;animation:bsCherryFloat 9s ease-in-out infinite}.bs-backdrop-cherry img{display:block;width:100%;height:auto;filter:saturate(.6)}@keyframes bsCherryFloat{0%,to{transform:rotate(14deg) translateY(0)}50%{transform:rotate(17deg) translateY(-8px)}}@media(prefers-reduced-motion:reduce){.bs-backdrop:before,.bs-backdrop-cherry{animation:none}.bs-backdrop-cherry{transform:rotate(14deg)}}.bs-topbar{position:relative;z-index:5;height:calc(var(--bs-top-h) + var(--bs-safe-top));padding-top:var(--bs-safe-top);display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding-left:12px;padding-right:12px;background:var(--bs-chrome);flex:none}.bs-topbar:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--bs-shine)}.bs-topbar-back{width:44px;height:44px;background:transparent;border:0;color:var(--bs-text);font-size:24px;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:color .15s,transform .15s;cursor:pointer}.bs-topbar-back:hover{color:var(--bs-accent)}.bs-topbar-back:active{transform:translate(-2px)}.bs-topbar-back.is-hidden{visibility:hidden}.bs-topbar-title{text-align:center;min-width:0}.bs-topbar-title h1{margin:0;font-family:var(--bs-font-display);font-weight:600;font-size:21px;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bs-topbar-title p{margin:0 0 2px;font-size:11.5px;color:var(--bs-muted);text-transform:uppercase;letter-spacing:.14em}.bs-topbar-mark{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center}.bs-viewport{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;min-height:0}.bs-content{position:relative;flex:1;overflow-y:auto;overflow-x:hidden;padding-bottom:calc(var(--bs-tabs-h) + var(--bs-safe-bottom) + 16px);scrollbar-width:none}.bs-content.has-summary{padding-bottom:calc(var(--bs-tabs-h) + var(--bs-safe-bottom) + 76px)}.bs-content::-webkit-scrollbar{display:none}.bs-screen-anim{animation:bsFadeIn .42s cubic-bezier(.2,.8,.2,1) both}@keyframes bsFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.bs-screen{display:flex;flex-direction:column;gap:16px}.bs-pad{padding:16px 18px 24px}.bs-section-head{padding:6px 2px 4px;display:flex;flex-direction:column;gap:6px}.bs-eyebrow{margin:0;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--bs-accent);font-weight:600}.bs-title{margin:0;font-family:var(--bs-font-display);font-weight:600;font-size:32px;line-height:1.05;letter-spacing:.005em;text-wrap:pretty}.bs-stack{display:flex;flex-direction:column;gap:10px}.bs-welcome{position:fixed;inset:0;padding-top:var(--bs-safe-top);padding-bottom:var(--bs-safe-bottom);display:flex;flex-direction:column;z-index:50;background:var(--bs-bg-0)}.bs-welcome-art{position:relative;height:56%;flex:none;overflow:hidden;display:flex;align-items:center;justify-content:center}.bs-welcome-glow{position:absolute;inset:-10%;background:var(--bs-welcome-glow);filter:blur(10px);animation:bsPulse 5s ease-in-out infinite}@keyframes bsPulse{0%,to{transform:scale(1);opacity:.95}50%{transform:scale(1.06);opacity:1}}.bs-welcome-cherry{position:relative;width:78%;max-width:320px;height:auto;filter:var(--bs-cherry-filter);animation:bsFloat 7s ease-in-out infinite}@keyframes bsFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.bs-welcome-shimmer{position:absolute;inset:0;background:var(--bs-welcome-shimmer);pointer-events:none}.bs-welcome-copy{flex:1;padding:4px 28px 28px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}@media(max-height:700px){.bs-welcome-art{height:48%}}.bs-welcome-copy .bs-eyebrow{letter-spacing:.42em;color:var(--bs-accent-text);font-size:12.5px}.bs-script-wrap{position:relative;display:inline-block;padding:14px 20px}.bs-script-text{position:relative;z-index:2;background:var(--bs-script-fill);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 24px var(--bs-script-glow))}.bs-sparkle{position:absolute;color:var(--bs-sparkle);font-size:7px;line-height:1;text-shadow:var(--bs-sparkle-glow);opacity:0;pointer-events:none;z-index:3;animation:bsTwinkle 3.4s ease-in-out infinite}.bs-sparkle-1{top:4%;left:6%;font-size:9px;animation-delay:0s}.bs-sparkle-2{top:18%;right:4%;font-size:6px;animation-delay:.6s}.bs-sparkle-3{top:54%;left:-4px;font-size:7px;animation-delay:1.4s}.bs-sparkle-4{bottom:6%;right:8%;font-size:8px;animation-delay:2.1s}.bs-sparkle-5{bottom:20%;left:22%;font-size:5px;animation-delay:2.7s}.bs-sparkle-6{top:30%;right:22%;font-size:5px;animation-delay:1s}@keyframes bsTwinkle{0%,to{opacity:0;transform:scale(.4) rotate(0)}35%{opacity:.55;transform:scale(1) rotate(45deg)}60%{opacity:.45;transform:scale(.9) rotate(90deg)}80%{opacity:0;transform:scale(.4) rotate(120deg)}}.bs-script{margin:6px 0 4px;font-family:var(--bs-font-display);font-style:italic;font-weight:500;font-size:54px;line-height:1;letter-spacing:-.01em;color:var(--bs-accent-text);text-shadow:0 2px 24px var(--bs-script-glow)}.bs-welcome-sub{margin:0 0 12px;font-family:var(--bs-font-display);font-weight:400;font-size:19px;color:var(--bs-text);line-height:1.35}.bs-welcome-cta{margin-top:auto;width:100%}.bs-welcome-foot{margin:14px 0 0;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--bs-muted)}.bs-btn{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 20px;border:0;font-family:var(--bs-font-body);font-size:14px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:transform .15s,background .2s,color .2s,box-shadow .2s;border-radius:var(--bs-radius)}.bs-btn-primary{color:var(--bs-on-accent);background:linear-gradient(180deg,var(--bs-accent) 0%,var(--bs-accent-dim) 100%);box-shadow:0 14px 30px -10px var(--bs-accent-glow),inset 0 1px #ffffff2e}.bs-btn-primary:hover{transform:translateY(-1px)}.bs-btn-primary:active{transform:translateY(1px);box-shadow:0 6px 18px -8px var(--bs-accent-glow)}.bs-btn-primary:disabled{opacity:.45;cursor:not-allowed;transform:none}.bs-btn-ghost{background:transparent;border:1px solid var(--bs-line-strong);color:var(--bs-text)}.bs-btn-ghost:hover{border-color:var(--bs-accent);color:var(--bs-accent-text)}.bs-card{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:72px;padding:14px 16px;background:var(--bs-card);border:1px solid var(--bs-line);color:var(--bs-text);text-align:left;cursor:pointer;border-radius:var(--bs-radius);overflow:hidden;transition:background .2s,border-color .2s,transform .15s;animation:bsRowIn .42s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i, 0) * 50ms + 80ms);font-family:inherit;font-size:inherit}@keyframes bsRowIn{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}.bs-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--bs-accent);transform:scaleY(0);transform-origin:50% 50%;transition:transform .25s ease}.bs-card:hover{background:var(--bs-card-strong);border-color:var(--bs-line-strong)}.bs-card:hover:before{transform:scaleY(.55)}.bs-card:active{transform:translateY(1px)}.bs-card.is-selected{background:linear-gradient(180deg,var(--bs-tint),var(--bs-tint-soft));border-color:var(--bs-accent)}.bs-card.is-selected:before{transform:scaleY(1)}.bs-bigchoice{padding-left:18px}.bs-ornament{font-family:var(--bs-font-display);font-size:30px;font-style:italic;font-weight:400;color:var(--bs-accent);min-width:38px;flex:none;opacity:1}.bs-bigchoice-text{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.bs-bigchoice-text strong{font-family:var(--bs-font-display);font-weight:600;font-size:23px;letter-spacing:.005em}.bs-bigchoice-text span{font-size:14px;color:var(--bs-muted);line-height:1.4}.bs-chev{font-size:24px;color:var(--bs-faint);transition:color .2s,transform .2s}.bs-card:hover .bs-chev,.bs-card.is-selected .bs-chev{color:var(--bs-accent);transform:translate(2px)}.bs-service{gap:14px}.bs-service-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.bs-service-main strong{font-family:var(--bs-font-display);font-weight:600;font-size:20px}.bs-service-main span{font-size:13.5px;color:var(--bs-muted);letter-spacing:.04em}.bs-service-side{display:flex;align-items:center;gap:10px}.bs-price{font-family:var(--bs-font-display);font-style:italic;font-size:19px;color:var(--bs-accent-text);white-space:nowrap;font-weight:600}.bs-info-btn{width:32px;height:32px;flex:none;background:transparent;border:1px solid var(--bs-line-strong);color:var(--bs-accent-text);font-family:var(--bs-font-display);font-style:italic;font-size:16px;cursor:pointer;transition:background .2s,border-color .2s,color .2s;display:inline-flex;align-items:center;justify-content:center;border-radius:0}.bs-info-btn:hover{background:var(--bs-card-strong);border-color:var(--bs-accent);color:var(--bs-accent)}.bs-sheet-backdrop{position:fixed;inset:0;z-index:80;background:var(--bs-scrim);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:flex-end;justify-content:center;animation:bsFadeIn .25s ease-out both}.bs-sheet{position:relative;width:100%;max-width:480px;height:calc(100% - var(--bs-safe-top) - 8px);overflow-y:auto;padding:18px 22px calc(var(--bs-safe-bottom) + 16px);background:linear-gradient(180deg,var(--bs-tint-soft),transparent 30%),var(--bs-bg-1);border-top:1px solid var(--bs-line-strong);box-shadow:var(--bs-sheet-shadow);animation:bsSheetIn .42s cubic-bezier(.2,.8,.2,1) both;scrollbar-width:none}.bs-sheet::-webkit-scrollbar{display:none}@keyframes bsSheetIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}.bs-sheet-handle{width:36px;height:3px;background:var(--bs-line-strong);margin:2px auto 14px}.bs-sheet-close{position:absolute;top:16px;right:14px;width:32px;height:32px;background:transparent;border:1px solid var(--bs-line);color:var(--bs-muted);font-size:20px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color .2s,border-color .2s}.bs-sheet-close:hover{color:var(--bs-accent);border-color:var(--bs-accent)}.bs-sheet-title{margin:6px 0 8px;font-family:var(--bs-font-display);font-weight:600;font-size:28px;line-height:1.15;text-wrap:pretty}.bs-sheet-meta{display:flex;align-items:center;gap:8px;font-family:var(--bs-font-display);font-style:italic;font-size:16px;color:var(--bs-accent-text);margin-bottom:16px}.bs-sheet-meta .dotsep{opacity:.4}.bs-sheet-desc{margin:0 0 18px;font-size:14px;line-height:1.55;color:var(--bs-text-soft)}.bs-sheet-label{margin:0 0 10px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--bs-accent);font-weight:600}.bs-sheet-list{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-direction:column;gap:10px}.bs-sheet-list li{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.45;color:var(--bs-text)}.bs-sheet-list .bs-tip-dot{width:6px;height:6px;margin-top:8px;background:var(--bs-accent);flex:none}.bs-sheet-cta{width:100%}.bs-spec{gap:14px}.bs-spec-avatar{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--bs-font-display);font-weight:500;font-size:18px;color:var(--bs-on-accent);border-radius:0;flex:none;position:relative;box-shadow:inset 0 0 0 1px #ffffff26;background:linear-gradient(135deg,var(--bs-accent),var(--bs-accent-dim))}.bs-spec-avatar:after{content:"";position:absolute;inset:4px;border:1px solid rgba(255,255,255,.18)}.bs-spec-text{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.bs-spec-text strong{font-family:var(--bs-font-display);font-weight:600;font-size:20px}.bs-spec-text span{font-size:13.5px;color:var(--bs-muted)}.bs-tip{margin-top:12px;padding:14px;display:flex;gap:10px;border:1px solid var(--bs-line);background:var(--bs-card);border-radius:var(--bs-radius)}.bs-tip-dot{width:8px;height:8px;background:var(--bs-accent);margin-top:6px;flex:none;box-shadow:0 0 12px var(--bs-accent-glow)}.bs-tip p{margin:0;font-size:14px;line-height:1.5;color:var(--bs-muted)}.bs-cal{background:var(--bs-card);border:1px solid var(--bs-line);padding:10px 10px 14px}.bs-cal-head{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding:4px 0 10px}.bs-cal-nav{width:44px;height:44px;background:transparent;border:0;color:var(--bs-text);font-size:22px;line-height:1;cursor:pointer;transition:color .2s}.bs-cal-nav:hover{color:var(--bs-accent)}.bs-cal-nav:disabled{color:var(--bs-faint);opacity:.5;cursor:not-allowed}.bs-cal-month{text-align:center;font-family:var(--bs-font-display);font-weight:600;font-size:20px}.bs-cal-month span{color:var(--bs-muted);margin-left:4px}.bs-cal-weekdays,.bs-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.bs-cal-weekdays{padding:0 2px}.bs-cal-weekdays div{text-align:center;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--bs-faint);padding:4px 0}.bs-cal-grid{margin-top:6px;padding:0 2px}.bs-cal-cell{position:relative;aspect-ratio:1;background:transparent;border:1px solid transparent;color:var(--bs-faint);font-size:15px;font-family:var(--bs-font-body);cursor:not-allowed;display:flex;align-items:center;justify-content:center;border-radius:0;transition:background .2s,color .2s,border-color .2s}.bs-cal-cell.bs-cal-blank{background:transparent;border:0}.bs-cal-cell.is-available{color:var(--bs-text);border-color:var(--bs-line);background:var(--bs-card);cursor:pointer}.bs-cal-cell.is-available:hover{border-color:var(--bs-accent);color:var(--bs-accent-text)}.bs-cal-cell.is-today{border-color:var(--bs-accent-dim)}.bs-cal-cell.is-selected{background:linear-gradient(180deg,var(--bs-accent),var(--bs-accent-dim));color:var(--bs-on-accent);border-color:var(--bs-accent);font-weight:600;box-shadow:0 4px 14px -4px var(--bs-accent-glow)}.bs-cal-dot{position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:4px;height:4px;background:var(--bs-accent)}.bs-cal-cell.is-selected .bs-cal-dot{background:var(--bs-on-accent)}.bs-cal-legend{display:flex;gap:16px;padding:12px 4px 4px;font-size:12px;color:var(--bs-muted);letter-spacing:.06em}.bs-cal-legend span{display:inline-flex;align-items:center;gap:6px}.bs-cal-legend .dot{width:8px;height:8px;display:inline-block}.bs-cal-legend .dot-avail{background:var(--bs-accent)}.bs-cal-legend .dot-sel{background:var(--bs-accent-text)}.bs-cal-legend .dot-off{background:var(--bs-faint)}.bs-time-group{display:flex;flex-direction:column;gap:10px}.bs-time-label{margin:6px 0 0;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--bs-accent);font-weight:600}.bs-time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.bs-time-cell{height:48px;background:var(--bs-card);border:1px solid var(--bs-line);color:var(--bs-text);font-family:var(--bs-font-body);font-size:15px;font-weight:500;letter-spacing:.04em;cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .15s;border-radius:0}.bs-time-cell:hover{background:var(--bs-card-strong);border-color:var(--bs-line-strong)}.bs-time-cell:active{transform:scale(.97)}.bs-time-cell.is-selected{background:linear-gradient(180deg,var(--bs-accent),var(--bs-accent-dim));border-color:var(--bs-accent);color:var(--bs-on-accent);font-weight:600;box-shadow:0 8px 20px -8px var(--bs-accent-glow)}.bs-confirm{display:flex;flex-direction:column;gap:14px}.bs-confirm-hero{position:relative;padding:22px 20px 24px;background:linear-gradient(180deg,var(--bs-tint),var(--bs-tint-soft)),var(--bs-card);border:1px solid var(--bs-line-strong);overflow:hidden}.bs-confirm-hero:after{content:"";position:absolute;top:-40px;right:-40px;width:160px;height:160px;background:radial-gradient(circle,var(--bs-glow),transparent 70%);filter:blur(8px);pointer-events:none}.bs-confirm-eyebrow{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--bs-accent);font-weight:600}.bs-confirm-hero h3{margin:6px 0;font-family:var(--bs-font-display);font-weight:600;font-size:27px;line-height:1.15}.bs-confirm-meta{display:flex;gap:8px;align-items:center;font-family:var(--bs-font-display);font-style:italic;font-size:17px;color:var(--bs-accent-text)}.bs-confirm-meta .dotsep{opacity:.5}.bs-confirm-rows{background:var(--bs-card);border:1px solid var(--bs-line);padding:4px 16px}.bs-confirm-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--bs-line)}.bs-confirm-row:last-child{border-bottom:0}.bs-confirm-label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--bs-muted)}.bs-confirm-value{font-family:var(--bs-font-display);font-weight:600;font-size:18px;color:var(--bs-text);text-align:right}.bs-confirm-note{display:flex;gap:10px;padding:12px 14px;border:1px dashed var(--bs-line-strong);background:var(--bs-card)}.bs-confirm-note p{margin:0;font-size:12px;color:var(--bs-muted);line-height:1.5;font-size:13.5px}.bs-visit{display:flex;align-items:center;gap:14px;padding:14px 14px 14px 0;background:var(--bs-card);border:1px solid var(--bs-line);animation:bsRowIn .42s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i, 0) * 60ms)}.bs-visit-date{width:64px;flex:none;text-align:center;display:flex;flex-direction:column;padding:10px 6px;border-right:1px solid var(--bs-line);color:var(--bs-text)}.bs-visit-date strong{font-family:var(--bs-font-display);font-weight:600;font-size:30px;line-height:1;color:var(--bs-accent-text)}.bs-visit-date span{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--bs-muted);margin-top:4px}.bs-visit-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.bs-visit-main strong{font-family:var(--bs-font-display);font-weight:600;font-size:19px}.bs-visit-main span{font-size:13.5px;color:var(--bs-muted)}.bs-visit-time{color:var(--bs-accent-text)!important;font-weight:500;letter-spacing:.04em}.bs-visit-cancel{flex:none;padding:0 12px;height:34px;background:transparent;border:1px solid var(--bs-line-strong);color:var(--bs-muted);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:0;transition:all .2s;font-family:inherit}.bs-visit-cancel:hover{color:var(--bs-accent);border-color:var(--bs-accent)}.bs-empty{text-align:center;align-items:center;padding-top:40px}.bs-empty-art{width:140px;height:140px;margin:0 auto 8px;position:relative;display:flex;align-items:center;justify-content:center}.bs-empty-art:before{content:"";position:absolute;inset:10%;background:radial-gradient(circle,var(--bs-glow),transparent 70%);filter:blur(8px)}.bs-empty-art img{position:relative;width:100%;height:100%;object-fit:contain;opacity:.85}.bs-empty-title{margin:8px 0 6px;font-family:var(--bs-font-display);font-weight:600;font-size:26px}.bs-empty-sub{margin:0 0 20px;font-size:14px;color:var(--bs-muted);max-width:260px}.bs-chat-screen{position:absolute;inset:calc(var(--bs-top-h) + var(--bs-safe-top)) 0 calc(var(--bs-tabs-h) + var(--bs-safe-bottom)) 0;display:flex;flex-direction:column;gap:0;padding:0}.bs-chat-header{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--bs-line)}.bs-chat-avatar{width:40px;height:40px;background:linear-gradient(135deg,var(--bs-accent),var(--bs-accent-dim));display:inline-flex;align-items:center;justify-content:center;font-family:var(--bs-font-display);font-weight:500;font-size:14px;color:var(--bs-on-accent);letter-spacing:.04em;flex:none;box-shadow:inset 0 0 0 1px #ffffff2e}.bs-chat-header div{display:flex;flex-direction:column;gap:2px}.bs-chat-header strong{font-family:var(--bs-font-display);font-weight:600;font-size:18px}.bs-chat-header span{font-size:12px;letter-spacing:.06em;color:var(--bs-muted)}.bs-chat-list{flex:1;overflow-y:auto;padding:16px 16px 8px;display:flex;flex-direction:column;gap:10px;scrollbar-width:none}.bs-chat-list::-webkit-scrollbar{display:none}.bs-bubble{max-width:78%;padding:10px 14px 8px;font-size:15px;line-height:1.4;border-radius:0;position:relative;animation:bsBubbleIn .36s cubic-bezier(.2,.8,.2,1) both}@keyframes bsBubbleIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.bs-bubble p{margin:0}.bs-bubble span{display:block;margin-top:4px;font-size:10px;letter-spacing:.08em;opacity:.6;text-align:right}.bs-bubble-admin{align-self:flex-start;background:var(--bs-card);border:1px solid var(--bs-line);color:var(--bs-text)}.bs-bubble-me{align-self:flex-end;background:linear-gradient(180deg,var(--bs-accent),var(--bs-accent-dim));color:var(--bs-on-accent);box-shadow:0 8px 22px -10px var(--bs-accent-glow)}.bs-chat-input{display:flex;gap:8px;padding:12px 14px 14px;border-top:1px solid var(--bs-line);background:var(--bs-bar);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.bs-chat-input input{flex:1;height:46px;background:var(--bs-card);border:1px solid var(--bs-line);color:var(--bs-text);padding:0 14px;font-family:var(--bs-font-body);font-size:14px;outline:none;border-radius:0}.bs-chat-input input::placeholder{color:var(--bs-faint)}.bs-chat-input input:focus{border-color:var(--bs-accent)}.bs-send{width:46px;height:46px;background:linear-gradient(180deg,var(--bs-accent),var(--bs-accent-dim));border:0;color:var(--bs-on-accent);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex:none;box-shadow:0 8px 22px -10px var(--bs-accent-glow);transition:transform .15s}.bs-send:hover{transform:translateY(-1px)}.bs-send:active{transform:translateY(1px)}.bs-summary{position:fixed;left:0;right:0;bottom:calc(var(--bs-tabs-h) + var(--bs-safe-bottom));z-index:4;padding:12px 16px;display:flex;align-items:center;gap:10px;background:var(--bs-chrome);border-top:1px solid var(--bs-line);animation:bsSummaryIn .35s cubic-bezier(.2,.8,.2,1) both}@keyframes bsSummaryIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}.bs-summary-text{flex:1;font-size:13px;color:var(--bs-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35;margin:0}.bs-summary-text b{color:var(--bs-text);font-weight:500}.bs-summary .bs-btn{height:46px;padding:0 18px;font-size:12px}.bs-tabs{position:fixed;left:0;right:0;bottom:0;z-index:5;height:calc(var(--bs-tabs-h) + var(--bs-safe-bottom));padding-bottom:var(--bs-safe-bottom);display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--bs-line);background:var(--bs-chrome)}.bs-tab{background:transparent;border:0;color:var(--bs-faint);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;padding:0;transition:color .2s;position:relative;font-family:inherit}.bs-tab svg{width:22px;height:22px;stroke:currentColor;fill:none}.bs-tab.is-active{color:var(--bs-accent-text)}.bs-tab.is-active:before{content:"";position:absolute;top:0;left:30%;right:30%;height:2px;background:var(--bs-accent);box-shadow:0 0 12px var(--bs-accent-glow)}.bs-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:100dvh;gap:16px;text-align:center;padding:24px;position:relative;z-index:1}.bs-state h1{margin:0;font-family:var(--bs-font-display);font-weight:600;font-size:32px;color:var(--bs-text)}.bs-state p{margin:0;color:var(--bs-muted);max-width:320px;line-height:1.5}.bs-phone{display:flex;flex-direction:column;gap:18px}.bs-phone-copy{display:flex;flex-direction:column;gap:8px;padding:6px 2px 4px}.bs-phone-title{margin:0;font-family:var(--bs-font-display);font-weight:600;font-size:30px;line-height:1.1}.bs-phone-sub{margin:0;color:var(--bs-muted);font-size:14px;line-height:1.5}.bs-phone-field{display:flex;flex-direction:column;gap:6px}.bs-phone-field>span{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--bs-accent)}.bs-phone-field input{height:52px;padding:0 16px;background:var(--bs-card);border:1px solid var(--bs-line);color:var(--bs-text);font-family:var(--bs-font-body);font-size:16px;letter-spacing:.04em;border-radius:var(--bs-radius);outline:none;transition:border-color .2s}.bs-phone-field input:focus{border-color:var(--bs-accent)}.bs-phone-consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--bs-muted);line-height:1.45;cursor:pointer}.bs-phone-consent input{margin-top:2px;accent-color:var(--bs-accent);width:16px;height:16px;flex:none}.bs-phone-error{margin:0;color:var(--bs-accent);font-size:13px}.bs-phone-cta{width:100%;margin-top:auto}
