@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Manrope:wght@600;700;800&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#17211b;--muted:#69766e;--paper:#fffaf0;--panel:#fffdf5eb;--line:#ded3bf;--sage:#6f8f72;--sage-dark:#344f3c;--clay:#c36b42;--clay-dark:#8b3e27;--cream:#f7ecd6;--gold:#e4b95f;--blue:#4b738a;--shadow:0 24px 70px #332a1d24;font-family:Georgia,Times New Roman,serif}.booking-page{--navy:#061a3d;--blue:#1378f2;--purple:#7b4cf4;--teal:#12b99b;--yellow:#f8bd11;--orange:#ff8a3d;--card-shadow:0 22px 54px #2e3a6e1f;--radius-lg:28px}.booking-page .booking-topbar{background:#fffffff0;border-bottom:1px solid #dee6f2e6;grid-template-columns:minmax(180px,230px) minmax(0,1fr) minmax(130px,auto);min-height:94px;box-shadow:0 10px 32px #28365d0d}.booking-page .booking-logo span{background:linear-gradient(145deg,#1687ff,#1069e8);border-radius:14px;width:54px;height:54px}.booking-page .booking-logo strong{color:var(--navy);font-size:1.45rem}.booking-page .progress-step{color:#34415a;font-size:.95rem}.booking-page .progress-step span{width:36px;height:36px}.booking-page .booking-landing{background:radial-gradient(circle at 8% 22%,#7c5cf614,#0000 18rem),radial-gradient(circle at 92% 23%,#ff76ae1a,#0000 20rem),linear-gradient(#fbfdff 0%,#fff 62%);gap:44px;min-height:calc(100vh - 94px);padding:44px 24px 72px}.booking-page .booking-landing:before{display:none}.booking-page .booking-landing:after{border-top:3px dashed #7c5cf638;height:70px;top:285px;left:62%;right:13%;transform:rotate(-10deg)}.booking-page .booking-hero-panel{gap:26px;width:min(1180px,100%);min-height:435px;margin:0 auto;padding:96px 0 4px}.booking-page .booking-hero-panel h1{max-width:780px;color:var(--navy);font-size:clamp(2.75rem,4.85vw,4.35rem);font-weight:850;line-height:1.09}.booking-page .booking-hero-panel h1 span:after{border-bottom:6px solid #f6c11feb;border-image:;border-radius:0 0 50% 50%;height:14px;bottom:-7px;left:12%;right:10%;transform:rotate(-1.2deg)}.booking-page .booking-hero-panel:before{opacity:.72;width:34px;height:25px;top:248px;right:max(200px,50% - 500px)}.booking-page .booking-hero-panel:after{opacity:.72;top:142px;right:max(235px,50% - 405px);transform:rotate(22deg)scale(.66)}.booking-page .booking-hero-art{opacity:.76}.booking-page .booking-hero-art-left{width:420px;height:210px;bottom:-28px;left:max(-76px,50% - 790px)}.booking-page .booking-hero-art-right{opacity:.68;width:430px;height:225px;bottom:-32px;right:max(-98px,50% - 820px)}.booking-page .hero-hill-a{width:460px;left:-92px}.booking-page .hero-hill-c{width:480px;right:-118px}.booking-page .hero-hill-b,.booking-page .hero-hill-d{display:none}.booking-page .hero-pin{opacity:.9;width:94px;height:94px;bottom:62px;left:170px}.booking-page .hero-pin:after{opacity:.38;bottom:-84px;left:-130px;transform:rotate(45deg)scale(.72)}.booking-page .hero-house{opacity:.82;width:102px;height:98px;bottom:48px;right:132px}.booking-page .hero-roof{width:126px;height:58px}.booking-page .hero-house:after{opacity:.48;transform-origin:bottom;transform:scale(.78)}.booking-page .hero-dot-b{opacity:.72;width:145px;height:145px;top:17%;right:4%}.booking-page .postcode-row{grid-template-columns:minmax(260px,1fr) 170px;gap:14px;width:min(620px,100%);margin-top:2px}.booking-page .postcode-row input{border-radius:999px;min-height:62px;padding-left:66px;box-shadow:0 20px 48px #27365924}.booking-page .postcode-row button{background:linear-gradient(135deg,#8053f3 0%,#156ff0 100%);border-radius:999px;min-height:62px;box-shadow:0 20px 40px #156ff042}.booking-page .account-actions{gap:16px;margin-top:6px}.booking-page .outline-action{color:#5530c7;background:#fffffff5;border-color:#7c5cf638;justify-content:center;min-width:150px;min-height:54px;box-shadow:0 12px 30px #362a6f14}.booking-page .how-it-works{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,4.6vw,64px);width:min(1180px,100% - 64px);margin-top:6px}.booking-page .how-it-works:before,.booking-page .how-it-works:after{opacity:.46;max-width:70px;display:block;top:94px}.booking-page .how-it-works article{border-radius:var(--radius-lg);grid-template-rows:108px auto auto;min-height:265px;padding:26px 28px 28px;transition:transform .18s,box-shadow .18s;box-shadow:0 18px 46px #2e3a6e1a}.booking-page .how-it-works article:hover{transform:translateY(-3px);box-shadow:0 24px 58px #2e3a6e24}.booking-page .how-it-works article>span{width:52px;height:52px;font-size:1.05rem;top:24px;left:24px}.booking-page .how-card-illustration{width:162px;height:104px;margin:0}.booking-page .how-it-works strong{color:var(--navy);align-self:end;margin-top:0;font-size:1.36rem;font-weight:850;line-height:1.16}.booking-page .how-it-works small{max-width:245px;margin-top:-2px;font-size:.95rem;line-height:1.48}.booking-page .how-card-treatment{--card-accent:var(--purple);background:linear-gradient(#fbf8ff 0%,#fff 100%)}.booking-page .how-card-time{--card-accent:var(--teal);background:linear-gradient(#f3fffb 0%,#fff 100%)}.booking-page .how-card-home{--card-accent:var(--yellow);background:linear-gradient(#fffaf0 0%,#fff 100%)}.booking-page .how-card-treatment:before,.booking-page .how-card-time:before,.booking-page .how-card-home:before{opacity:.38;top:68px}.booking-page .calendar-illustration:before{transform-origin:50%;top:20px;left:24px;transform:scale(.86)}.booking-page .clock-illustration:before{inset:8px 32px;transform:scale(.86)}.booking-page .lounge-illustration:before{top:42px;left:40px;transform:scale(.86)}.booking-page .lounge-illustration:after{transform-origin:50%;top:12px;left:28px;transform:scale(.86)}@media (width<=980px){.booking-page .booking-hero-art-left,.booking-page .booking-hero-art-right{opacity:.4}.booking-page .booking-hero-panel{min-height:auto;padding-top:48px}.booking-page .postcode-row{grid-template-columns:1fr}.booking-page .how-it-works{grid-template-columns:1fr;width:min(440px,100% - 32px)}.booking-page .how-it-works:before,.booking-page .how-it-works:after{display:none}}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--ink);background:radial-gradient(circle at 12% 18%,#e4b95f47,#0000 28rem),radial-gradient(circle at 82% 4%,#6f8f7247,#0000 24rem),linear-gradient(135deg,#f9efd9 0%,#efe2ca 42%,#e2d5bf 100%);margin:0}button,input,select{font:inherit}button{color:#fffaf0;background:var(--sage-dark);cursor:pointer;border:0;border-radius:999px;padding:.75rem 1rem;transition:transform .18s,box-shadow .18s,background .18s;box-shadow:0 10px 24px #344f3c2e}button:hover{background:#263b2d;transform:translateY(-1px)}button:disabled{opacity:.55;cursor:not-allowed;transform:none}input,select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fffdf7;border-radius:16px;padding:.75rem .85rem}input:disabled,select:disabled{color:#9a9285;cursor:not-allowed;background:#eee5d5}label{color:var(--muted);gap:.45rem;font-size:.9rem;display:grid}.app-shell{width:min(1480px,100% - 32px);margin:0 auto;padding:36px 0 56px}.hero{grid-template-columns:1fr minmax(240px,320px);align-items:stretch;gap:24px;margin-bottom:24px;display:grid}.hero h1{letter-spacing:-.065em;max-width:860px;margin:0;font-size:clamp(2.3rem,5vw,5.8rem);line-height:.92}.hero-copy{max-width:650px;color:var(--muted);font-size:1.1rem;line-height:1.6}.eyebrow{color:var(--clay-dark);letter-spacing:.17em;text-transform:uppercase;margin:0 0 .35rem;font-family:Trebuchet MS,Verdana,sans-serif;font-size:.72rem;font-weight:800}.mode-card,.panel{background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid #755f402e;border-radius:30px}.mode-card{background:linear-gradient(145deg,#fffaf0eb,#e9dabee0),repeating-linear-gradient(135deg,#6f8f721c 0 10px,#0000 10px 20px);align-content:center;gap:.35rem;padding:28px;display:grid}.mode-card span,.mode-card small{color:var(--muted)}.mode-card strong{font-size:2rem;line-height:1}.view-switcher{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.view-button{color:var(--sage-dark);box-shadow:none;background:#fffdf7bd;border:1px solid #344f3c2e}.view-button:hover,.active-view{color:#fffaf0;background:var(--sage-dark)}.dashboard-grid{grid-template-columns:280px minmax(280px,1fr) 360px;align-items:start;gap:18px;display:grid}.panel{padding:22px}.client-booking-shell{grid-template-columns:minmax(260px,.95fr) minmax(300px,1.2fr) minmax(280px,.95fr);align-items:start;gap:18px;display:grid}.client-card{box-shadow:var(--shadow);background:#fffdf5eb;border:1px solid #755f402e;border-radius:30px;padding:24px}.client-intro-card{color:#fffaf0;background:linear-gradient(145deg,#344f3ce6,#6f8f72c7),radial-gradient(circle at 100% 0,#e4b95f66,#0000 18rem);align-content:center;min-height:260px;display:grid}.client-intro-card .eyebrow,.client-intro-card p{color:#fffaf0c7}.client-intro-card h2{letter-spacing:-.055em;margin:0;font-size:clamp(2rem,4vw,4rem);line-height:.96}.client-controls-card,.client-slots-card,.client-confirm-card,.client-offers-card{gap:16px;display:grid}.client-day-list{gap:8px;display:grid}.client-day-list>span{color:var(--muted);font-size:.9rem}.client-day-list div,.client-slot-list{gap:10px;display:grid}.client-hint,.client-alert{border-radius:16px;margin:0;padding:12px;font-weight:800}.client-hint{color:var(--blue);background:#4b738a14;border:1px solid #4b738a3d}.client-alert{color:var(--clay-dark);background:#c36b4214;border:1px solid #8b3e273d}.client-day-list div{grid-template-columns:repeat(7,minmax(44px,1fr))}.client-day-button{color:var(--sage-dark);box-shadow:none;background:#fffdf7c7;border:1px solid #344f3c29;padding:.7rem .45rem}.client-day-button:hover,.active-client-day{color:#fffaf0;background:var(--sage-dark)}.client-slots-card{grid-row:span 2}.client-slot-button{width:100%;color:var(--ink);border:1px solid var(--line);box-shadow:none;text-align:left;background:#fffdf7d1;border-radius:22px;justify-items:start;gap:4px;padding:16px;display:grid}.client-slot-button strong{color:var(--sage-dark);font-size:1.65rem}.client-slot-button span,.client-slot-button small{color:var(--muted)}.client-slot-button:hover,.selected-client-slot{color:#fffaf0;background:linear-gradient(135deg, var(--sage-dark), var(--sage))}.client-slot-button:hover strong,.client-slot-button:hover span,.client-slot-button:hover small,.selected-client-slot strong,.selected-client-slot span,.selected-client-slot small{color:#fffaf0}.client-confirm-summary{gap:10px;display:grid}.waitlist-form,.client-offer-list{gap:12px;display:grid}.waitlist-form{background:#6f8f7214;border:1px solid #344f3c29;border-radius:22px;padding:16px}.client-offer-card{border:1px solid var(--line);background:#fffdf7c7;border-radius:18px;gap:6px;padding:14px;display:grid}.client-offer-card span,.client-offer-card small{color:var(--muted)}.client-confirm-summary div,.no-slot-card{border:1px solid var(--line);background:#fffdf7bd;border-radius:18px;gap:5px;padding:13px;display:grid}.time-waitlist-card{background:linear-gradient(135deg,#7f52ff14,#13b59914),#ffffffd1;border:1px solid #7f52ff29;border-radius:20px;justify-content:space-between;align-items:center;gap:18px;margin-top:18px;padding:16px 18px;display:flex;box-shadow:0 10px 30px #505a8c0f}.time-waitlist-card div{gap:4px;display:grid}.time-waitlist-card strong{color:var(--booking-ink);font-size:1rem}.time-waitlist-card span{color:var(--booking-muted);line-height:1.45}.client-confirm-summary span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-family:Trebuchet MS,Verdana,sans-serif;font-size:.7rem;font-weight:800}.controls-panel,.request-panel,.services-panel{gap:14px;display:grid}.services-panel{grid-column:span 1}.week-panel{grid-column:1/4}.timeline-panel{grid-column:2/4}.flow-panel{grid-column:1/2}.bookings-panel{grid-column:2/4}.waitlist-panel{grid-column:1/4}.section-heading h2{letter-spacing:-.035em;margin:0;font-size:1.55rem}.row-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.service-list,.booking-list,.slot-list,.waitlist-admin-list{gap:12px;display:grid}.waitlist-group{gap:12px;margin-top:18px;display:grid}.waitlist-group h3{color:var(--sage-dark);margin:0;font-size:1.2rem}.list-label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin:4px 0 0;font-family:Trebuchet MS,Verdana,sans-serif;font-size:.76rem;font-weight:800}.week-strip{grid-template-columns:repeat(7,minmax(110px,1fr));gap:10px;margin-top:16px;display:grid;overflow-x:auto}.day-pill{min-width:110px;color:var(--ink);box-shadow:none;text-align:left;background:#fffdf7c7;border:1px solid #344f3c24;border-radius:20px;justify-items:start;gap:5px;padding:14px;display:grid}.day-pill:hover,.active-day{color:#fffaf0;background:linear-gradient(135deg, var(--sage-dark), var(--sage))}.day-pill span,.day-pill small{color:var(--muted)}.day-pill:hover span,.day-pill:hover small,.active-day span,.active-day small{color:#fffaf0c7}.toggle-row{color:var(--ink);border:1px solid var(--line);background:#fffdf7b8;border-radius:18px;align-items:center;gap:10px;padding:12px;display:flex}.toggle-row input{width:auto;accent-color:var(--sage-dark)}.setting-toggle{justify-content:flex-start}.button-row,.manual-add{flex-wrap:wrap;gap:10px;display:flex}.ghost-button{color:var(--sage-dark);box-shadow:none;background:#fffdf7b8;border:1px solid #344f3c2e}.ghost-button:hover{color:#fffaf0}.danger-button{background:var(--clay-dark);box-shadow:0 10px 24px #8b3e2729}.request-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.request-summary div,.add-booking-summary,.anchor-state-card{border:1px solid var(--line);background:#fffdf7bd;border-radius:18px;gap:4px;padding:12px;display:grid}.request-summary span,.anchor-state-card span,.anchor-state-card small,.add-booking-summary span,.add-booking-summary small{color:var(--muted)}.request-summary strong,.anchor-state-card strong{font-size:1.4rem}.timeline-shell{gap:10px;padding-top:16px;display:grid;overflow-x:auto}.time-ruler,.timeline-track{min-width:760px;position:relative}.time-ruler{height:28px;color:var(--muted);font-family:Trebuchet MS,Verdana,sans-serif;font-size:.75rem}.time-ruler span{position:absolute;transform:translate(-50%)}.timeline-track{border:1px solid var(--line);background:repeating-linear-gradient(90deg,#69766e1c 0 1px,#0000 1px 11.1111%),linear-gradient(#fffdf7,#f6ead5);border-radius:24px;height:230px;overflow:hidden}.flow-highlight{z-index:0;color:#4b738ad6;letter-spacing:.08em;text-transform:uppercase;background:#4b738a14;border:2px solid #4b738a80;border-radius:24px;align-items:end;min-width:3%;padding:10px;font-family:Trebuchet MS,Verdana,sans-serif;font-size:.74rem;font-weight:800;display:grid;position:absolute;top:8px;bottom:8px}.booking-block,.buffer-block,.preview-block{z-index:2;align-content:center;gap:3px;min-width:3%;padding:12px;display:grid;position:absolute;overflow:hidden}.booking-block{color:#fffaf0;background:linear-gradient(135deg, var(--sage-dark), var(--sage));border-radius:18px;height:92px;top:30px;box-shadow:0 14px 30px #344f3c38}.booking-block strong,.booking-block span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.buffer-block{height:58px;color:var(--sage-dark);background:repeating-linear-gradient(135deg,#6f8f722e 0 9px,#6f8f7212 9px 18px);border:1px dashed #344f3c7a;border-radius:16px;font-family:Trebuchet MS,Verdana,sans-serif;font-size:.8rem;font-weight:800;top:132px}.preview-block{z-index:1;height:202px;color:var(--blue);text-transform:uppercase;pointer-events:none;background:#4b738a14;border:2px solid #4b738a6b;border-radius:22px;font-family:Trebuchet MS,Verdana,sans-serif;font-weight:800;top:14px}.flow-stats{grid-template-columns:1fr 1fr;gap:10px;margin:14px 0;display:grid}.current-flow-line{color:var(--blue);background:#4b738a14;border:1px solid #4b738a3d;border-radius:18px;margin:12px 0 0;padding:12px;font-weight:800}.flow-stats div,.slot-card,.booking-editor{border:1px solid var(--line);background:#fffdf7bd;border-radius:22px}.flow-stats div{gap:4px;padding:14px;display:grid}.flow-stats span,.slot-card span,.slot-card small,.muted-copy{color:var(--muted)}.flow-stats strong{font-size:1.7rem}.slot-card{gap:8px;padding:16px;display:grid}.slot-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.slot-card-top b{color:#fffaf0;background:var(--blue);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:.32rem .58rem;font-family:Trebuchet MS,Verdana,sans-serif;font-size:.72rem}.slot-card strong{font-size:1.35rem}.slot-detail-grid{grid-template-columns:1fr;gap:8px;margin:4px 0;display:grid}.slot-detail-grid div{background:#f7ecd69e;border-radius:14px;gap:2px;padding:9px;display:grid}.slot-detail-grid dt,.slot-detail-grid dd{margin:0}.slot-detail-grid dt{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-family:Trebuchet MS,Verdana,sans-serif;font-size:.68rem;font-weight:800}.slot-detail-grid dd{color:var(--ink);font-size:.92rem}.invalid-slot-card{background:#c36b4214;border-color:#8b3e2757}.invalid-slot-card .slot-card-top b{background:var(--clay-dark)}.booking-editor{grid-template-columns:1fr 1.2fr .75fr .85fr .8fr auto;align-items:end;gap:12px;padding:14px;display:grid}.booking-editor-title,.booking-actions,.waitlist-offer-actions{gap:7px;display:grid}.matching-offer{background:#4b738a14;border:1px solid #4b738a38;border-radius:16px;gap:6px;padding:10px;display:grid}.matching-offer span{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;font-family:Trebuchet MS,Verdana,sans-serif;font-size:.72rem;font-weight:800}.waitlist-admin-card{border:1px solid var(--line);background:#fffdf7bd;border-radius:22px;grid-template-columns:minmax(220px,1fr) minmax(220px,1.4fr) auto;align-items:start;gap:14px;padding:14px;display:grid}.waitlist-admin-main{gap:5px;display:grid}.waitlist-admin-main span,.waitlist-admin-main small{color:var(--muted)}.waitlist-admin-main b{color:#fffaf0;background:var(--blue);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;width:fit-content;padding:.28rem .58rem;font-family:Trebuchet MS,Verdana,sans-serif;font-size:.72rem}.waitlist-closed-note{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;background:#344f3c14;border-radius:999px;place-self:center end;padding:.45rem .7rem;font-family:Trebuchet MS,Verdana,sans-serif;font-size:.76rem;font-weight:800}.booking-editor-title span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-family:Trebuchet MS,Verdana,sans-serif;font-size:.72rem;font-weight:800}.booking-editor-title strong{font-size:1.1rem}.compact-button{padding:.48rem .7rem;font-size:.82rem}.manual-add{background:#6f8f7214;border:1px solid #344f3c24;border-radius:24px;align-items:end;margin:14px 0;padding:14px}.manual-add label{min-width:150px}.manual-add input{max-width:170px}@media (width<=1120px){.dashboard-grid,.client-booking-shell,.hero{grid-template-columns:1fr}.timeline-panel,.flow-panel,.bookings-panel,.services-panel,.week-panel,.waitlist-panel{grid-column:auto}.booking-editor,.waitlist-admin-card{grid-template-columns:1fr 1fr}}@media (width<=640px){.app-shell{width:min(100% - 20px,1480px);padding-top:20px}.panel,.mode-card{border-radius:22px;padding:18px}.hero h1{font-size:2.55rem}.booking-editor,.flow-stats,.request-summary,.waitlist-admin-card{grid-template-columns:1fr}.button-row,.manual-add,.view-switcher,.row-heading{flex-direction:column;align-items:stretch}.manual-add input{max-width:none}}.client-app-shell{width:100%;margin:0;padding:0}.booking-page{--booking-blue:#0d77d8;--booking-blue-dark:#095da9;--booking-ink:#071a3f;--booking-muted:#65707c;--booking-line:#e4e8ee;--booking-soft:#f7f9fc;--booking-violet:#7547f5;--booking-pink:#f65cb6;--booking-teal:#10b996;--booking-gold:#f8bd11;min-height:100vh;color:var(--booking-ink);background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}.booking-page button,.booking-page input,.booking-page select{font-family:inherit}.booking-page button{box-shadow:none;letter-spacing:0;border-radius:6px}.booking-page button:hover{transform:none}.booking-topbar{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe6;border-bottom:1px solid #d8e2f0d1;grid-template-columns:210px 1fr auto;align-items:center;gap:18px;min-height:96px;padding:0 36px;display:grid;position:sticky;top:0}.booking-logo{width:fit-content;color:var(--booking-ink);background:0 0;justify-content:flex-start;align-items:center;gap:14px;padding:0;display:inline-flex}.booking-logo span{color:#fff;background:linear-gradient(145deg,#1184ff,#1267e8);border-radius:14px;place-items:center;width:54px;height:54px;font-size:1.05rem;font-weight:900;display:grid;box-shadow:0 14px 30px #1267e83d}.booking-logo strong{letter-spacing:0;text-transform:uppercase;font-size:1.35rem}.booking-progress{justify-content:center;gap:clamp(14px,2vw,30px);display:flex}.progress-step{color:#34415a;background:0 0;align-items:center;gap:10px;padding:0;font-size:.92rem;font-weight:800;display:inline-flex}.progress-step span{color:#18233a;background:linear-gradient(#fff,#f7f9ff);border:1px solid #dfe7f2;border-radius:50%;place-items:center;width:36px;height:36px;font-size:.95rem;font-weight:900;display:grid;box-shadow:0 8px 20px #25375a14}.active-progress-step,.active-progress-step span{color:var(--booking-blue)}.active-progress-step span{color:#fff;background:linear-gradient(145deg,#1685ff,#1267e8);border-color:#0000;box-shadow:0 12px 28px #1267e847}.admin-link-button,.outline-action,.secondary-button{color:var(--booking-blue);border:1px solid var(--booking-line);background:#fff}.admin-link-button{padding:.55rem .8rem}.booking-status{width:min(820px,100% - 40px);color:var(--booking-blue-dark);background:#eef7ffeb;border:1px solid #0d77d829;border-radius:14px;align-items:center;gap:12px;margin:22px auto 0;padding:14px 18px;font-weight:800;display:flex;box-shadow:0 18px 44px #1752921a}.booking-status-icon{background:linear-gradient(145deg,#1685ff,#1267e8);border-radius:50%;flex:none;place-items:center;width:40px;height:40px;display:inline-grid;position:relative}.booking-status-icon:before{content:"";border:2px solid #fff;border-top-width:3px;border-radius:3px;width:16px;height:11px}.booking-status-icon:after{content:"";border-top:2px solid #fff;width:14px;height:8px;position:absolute;top:17px;transform:rotate(-28deg)}.booking-validation-message{color:#8f2d22;background:#fff4f2;border:1px solid #b9453733;border-radius:6px;margin:10px 0 0;padding:10px 12px;font-weight:800}.booking-hold-message{color:#1f6c49;background:#effaf4;border:1px solid #237d542e;border-radius:6px;margin:10px 0 0;padding:10px 12px;font-weight:800}.booking-landing{background:radial-gradient(circle at 7% 25%,#7f5bf62e,#0000 20rem),radial-gradient(circle at 95% 22%,#ff84ad38,#0000 21rem),linear-gradient(#f8fbff 0%,#fff 50%);align-content:start;gap:34px;min-height:calc(100vh - 92px);padding:26px 24px 72px;display:grid;position:relative;overflow:hidden}.booking-landing:before{z-index:0;pointer-events:none;content:"";background:radial-gradient(at 12% 85%,#27d1be6b 0 18%,#0000 19%),radial-gradient(at 18% 92%,#85e1677a 0 20%,#0000 21%),radial-gradient(at 88% 86%,#27d1be6b 0 19%,#0000 20%),radial-gradient(at 80% 94%,#85e1677a 0 18%,#0000 19%);height:150px;position:absolute;top:318px;left:0;right:0}.booking-landing:after{z-index:0;pointer-events:none;content:"";border-top:4px dashed #8465db6b;border-radius:50%;height:92px;position:absolute;top:235px;left:49%;right:13%;transform:rotate(-12deg)}.booking-hero-panel{justify-items:center;gap:24px;min-height:455px;padding:86px 0 18px;display:grid;position:relative}.booking-hero-panel:before{z-index:2;clip-path:polygon(0 46%,100% 0,66% 100%,46% 58%);filter:drop-shadow(0 10px 18px #ff6cc438);content:"";background:linear-gradient(145deg,#ff6cc4,#ff9c40);width:46px;height:34px;position:absolute;top:182px;right:max(210px,50% - 520px);transform:rotate(-18deg)}.booking-hero-panel:after{z-index:2;content:"";background:linear-gradient(#f8bd11,#f8bd11) 50% 0/6px 22px no-repeat,linear-gradient(#f8bd11,#f8bd11) 17px 12px/6px 24px no-repeat,linear-gradient(#f8bd11,#f8bd11) 35px 12px/6px 24px no-repeat;border-radius:999px;width:54px;height:38px;position:absolute;top:106px;right:max(320px,50% - 375px);transform:rotate(20deg)}.booking-hero-panel h1{z-index:2;color:#071a3f;text-align:center;letter-spacing:0;max-width:760px;margin:0;font-size:clamp(3rem,5.2vw,4.7rem);line-height:1.03;position:relative}.booking-hero-panel h1 span{color:#0000;background:linear-gradient(90deg,#6d45f4 0%,#f55ab7 55%,#ff8b38 100%);-webkit-background-clip:text;background-clip:text;display:inline-block;position:relative}.booking-hero-panel h1 span:after{content:"";border-bottom:8px solid #0000;border-image:linear-gradient(90deg,#f8cb35,#f77b4f) 1;border-radius:50%;height:18px;display:block;position:absolute;bottom:-9px;left:9%;right:8%;transform:rotate(-1.5deg)}.postcode-row{z-index:2;border-radius:999px;grid-template-columns:minmax(260px,1fr) auto;gap:12px;width:min(620px,100%);padding:0;display:grid;position:relative}.postcode-location-icon{z-index:3;pointer-events:none;border:2px solid #18233a;border-radius:50% 50% 50% 0;width:18px;height:18px;position:absolute;top:50%;left:28px;transform:translateY(-58%)rotate(-45deg)}.postcode-location-icon:after{content:"";background:#18233a;border-radius:50%;position:absolute;inset:4px}.booking-page input,.booking-page select{border:1px solid var(--booking-line);min-height:54px;color:var(--booking-ink);background:#fff;border-radius:12px;padding:.78rem 1rem}.postcode-row input{border:0;border-radius:999px;padding-left:64px;box-shadow:0 18px 44px #2736591f}.postcode-row button,.booking-footer-actions button:last-child,.pay-button,.booking-modal button:not(.secondary-button):not(.modal-close){color:#fff;background:linear-gradient(135deg,#7c4df6 0%,#126df1 100%);box-shadow:0 18px 34px #126df147}.postcode-row button{border-radius:999px;min-height:54px;padding:0 28px;font-weight:900}.postcode-row button:hover,.booking-footer-actions button:last-child:hover,.pay-button:hover,.booking-modal button:not(.secondary-button):not(.modal-close):hover{background:var(--booking-blue-dark)}.postcode-coverage-note{z-index:2;color:#8f2d22;background:#fff4f2eb;border:1px solid #b945372e;border-radius:16px;width:min(620px,100%);margin:-14px auto 0;padding:12px 14px;font-weight:800;line-height:1.45;position:relative}.postcode-coverage-preapproval{color:#8a5b00;background:#fff7e0eb;border-color:#c781103d}.booking-modal .postcode-coverage-note{width:100%;margin:0}.area-picker-subtitle{z-index:2;color:#5d6b82;text-align:center;max-width:560px;margin:-12px auto 0;font-size:1.05rem;line-height:1.5;position:relative}.client-area-picker{z-index:2;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffbd;border:1px solid #b4cdecad;border-radius:26px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:min(760px,100%);margin:0 auto;padding:14px;display:grid;position:relative;box-shadow:0 20px 54px #3748701a}.client-area-option{color:#10244b;background:linear-gradient(145deg,#fffffff5,#f6faffe6);border:1px solid #d9e5f2;border-radius:16px;min-height:54px;padding:.72rem .85rem;font-weight:850;line-height:1.15;transition:transform .16s,box-shadow .16s,border-color .16s,background .16s;box-shadow:0 8px 22px #3248700f}.client-area-option:hover{border-color:#147eec66;transform:translateY(-1px);box-shadow:0 14px 30px #147eec1f}.client-area-empty{color:#8a5b00;text-align:center;background:#fff7e0d6;border:1px solid #c781102e;border-radius:16px;grid-column:1/-1;margin:0;padding:14px;font-weight:800;line-height:1.45}.selected-client-area{color:#063b82;background:linear-gradient(145deg,#eaf6ff,#f5fbff);border-color:#147eecb8;box-shadow:0 16px 34px #147eec29}.client-area-helper{z-index:2;color:#5f6e83;text-align:center;max-width:720px;margin:-4px auto 0;font-size:.92rem;line-height:1.55;position:relative}.area-continue-row{justify-content:center;width:min(320px,100%);display:flex}.area-continue-row button{width:100%}.account-actions{z-index:2;flex-wrap:wrap;justify-content:center;gap:16px;display:flex;position:relative}.client-account-options,.client-account-state{width:min(100%,460px);color:var(--navy,#102449)}.client-account-options{justify-items:center;gap:10px;display:grid}.client-account-options>p,.client-account-loading{color:#667085;text-align:center;margin:0;font-size:.88rem;line-height:1.5}.google-login-button{color:#17233d;width:100%;min-height:54px;font:inherit;background:#fffffff0;border:1px solid #374c702e;border-radius:16px;justify-content:center;align-items:center;gap:12px;font-weight:700;display:inline-flex;box-shadow:0 10px 28px #22345214}.google-login-button:hover{border-color:#374c704d;transform:translateY(-1px);box-shadow:0 14px 34px #2234521f}.google-login-button:focus-visible{outline-offset:3px;outline:3px solid #1c7ee840}.google-mark{color:#4285f4;background:#fff;border:1px solid #374c7029;border-radius:50%;place-items:center;width:28px;height:28px;font-weight:800;display:grid}.client-account-state{background:#ffffffe0;border:1px solid #374c7024;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex;box-shadow:0 10px 28px #22345212}.client-account-state>div{text-align:left;gap:2px;min-width:0;display:grid}.client-account-state span{color:#667085;text-transform:uppercase;font-size:.75rem;font-weight:700}.client-account-state strong,.client-account-state small{overflow-wrap:anywhere}.client-account-state small{color:#667085}.client-account-state .secondary-button{flex:none;min-height:46px}.client-account-error{color:#b42318;text-align:center;width:100%;margin:0;font-size:.86rem;line-height:1.45}.book-again-panel{z-index:3;text-align:left;background:#fffdf8f0;border:1px solid #6f927f38;border-radius:24px;gap:14px;width:min(100%,720px);padding:16px;display:grid;position:relative;box-shadow:0 18px 44px #25322c1a}.book-again-welcome{border-bottom:1px solid #6f927f29;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:10px;display:flex}.book-again-welcome p,.book-again-welcome span{margin:0}.book-again-welcome span{color:#66746c;font-size:.84rem}.returning-shortcut-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.returning-shortcut-grid button{color:#304d3d;text-align:left;background:#f8faf6e6;border:1px solid #6f927f33;border-radius:16px;gap:3px;min-width:0;min-height:56px;padding:10px 12px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.returning-shortcut-grid button:hover,.returning-shortcut-grid button:focus-visible{background:#fff;border-color:#4b6f5b70;transform:translateY(-1px);box-shadow:0 10px 24px #25322c14}.returning-shortcut-grid span{font-weight:800}.returning-shortcut-grid small{color:#6b766f;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.book-again-primary{justify-content:space-between;align-items:center;gap:18px;display:flex}.book-again-primary>div{min-width:0}.book-again-primary .boutique-kicker{margin:0 0 4px}.book-again-primary h2{color:var(--wellness-navy,#13243f);margin:0;font-size:1.25rem;line-height:1.25}.book-again-details{color:#657166;flex-wrap:wrap;gap:4px 10px;margin-top:8px;font-size:.9rem;display:flex}.book-again-details strong{color:#304d3d;overflow-wrap:anywhere;flex-basis:100%}.book-again-primary>button{color:#fff;background:linear-gradient(135deg,#4b6f5b,#71927f);border:0;border-radius:999px;flex:none;min-height:48px;padding:0 20px;font-weight:800;box-shadow:0 12px 28px #4b6f5b38}.recent-treatment-list{border-top:1px solid #9fb1a533;gap:8px;padding-top:12px;display:grid}.recent-treatment-list>span{color:#667085;text-transform:uppercase;font-size:.75rem;font-weight:800}.recent-treatment-list>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.recent-treatment-list button{color:#304d3d;text-align:left;background:#f7f9f5f0;border:1px solid #9fb1a53d;border-radius:14px;gap:3px;min-height:60px;padding:10px 12px;display:grid}.recent-treatment-list button strong,.recent-treatment-list button small{overflow-wrap:anywhere}.recent-treatment-list button small,.book-again-loading{color:#667085}.book-again-loading{z-index:3;margin:0;position:relative}@media (width<=640px){.client-account-options,.client-account-state{width:100%}.client-account-state{flex-direction:column;align-items:stretch}.client-account-state .secondary-button{justify-content:center;width:100%}.book-again-panel{border-radius:20px;width:min(100%,360px);padding:14px}.book-again-welcome{flex-direction:column;align-items:flex-start;gap:2px}.returning-shortcut-grid{grid-template-columns:1fr}.book-again-primary{flex-direction:column;align-items:stretch}.book-again-primary>button{width:100%}.recent-treatment-list>div{grid-template-columns:1fr}}.outline-action,.secondary-button{color:#5831c5;background:#ffffffe0;border-radius:999px;align-items:center;gap:10px;min-height:58px;padding:.72rem 1.7rem;display:inline-flex;box-shadow:0 14px 34px #362a6f1a}.action-person-icon,.action-plus-icon{width:20px;height:20px;display:inline-block;position:relative}.action-person-icon:before{content:"";border:2px solid;border-radius:50%;width:8px;height:8px;position:absolute;top:1px;left:6px}.action-person-icon:after{content:"";border:2px solid;border-radius:999px 999px 0 0;width:16px;height:9px;position:absolute;bottom:1px;left:2px}.action-plus-icon{border:2px solid;border-radius:50%}.action-plus-icon:before,.action-plus-icon:after{content:"";background:currentColor;border-radius:999px;height:2px;position:absolute;inset:8px 4px auto}.action-plus-icon:after{transform:rotate(90deg)}.booking-hero-art{z-index:1;pointer-events:none;position:absolute}.booking-hero-art-left{width:410px;height:278px;bottom:0;left:max(-26px,50% - 790px)}.booking-hero-art-right{width:430px;height:280px;bottom:-2px;right:max(-32px,50% - 790px)}.hero-hill{border-radius:999px 999px 0 0;position:absolute;bottom:0}.hero-hill-a{background:linear-gradient(135deg,#2edcc7,#87dd65);width:430px;height:98px;left:-54px;transform:rotate(10deg)}.hero-hill-b{background:linear-gradient(135deg,#a8e771,#f3ca43);width:390px;height:66px;left:52px;transform:rotate(-9deg)}.hero-hill-c{background:linear-gradient(135deg,#22c5bb,#77dc63);width:430px;height:88px;right:-54px;transform:rotate(-8deg)}.hero-hill-d{background:linear-gradient(135deg,#9ae66f,#f8c642);width:330px;height:54px;right:72px;transform:rotate(8deg)}.hero-pin{background:linear-gradient(145deg,#854ef9,#5524d9);border-radius:50% 50% 50% 0;width:124px;height:124px;position:absolute;bottom:78px;left:170px;transform:rotate(-45deg);box-shadow:0 18px 34px #5524d947}.hero-pin:before{content:"";background:#fff;border-radius:50%;position:absolute;inset:28px;box-shadow:inset 0 0 0 6px #5524d91a}.hero-house{background:linear-gradient(#fff,#eef7ff);border-radius:16px 16px 12px 12px;width:132px;height:124px;position:absolute;bottom:64px;right:102px;box-shadow:0 16px 34px #394d882e}.hero-roof{clip-path:polygon(50% 0,100% 58%,92% 100%,8% 100%,0 58%);background:linear-gradient(145deg,#7663ff,#3f74ff);border-radius:18px 18px 8px 8px;width:160px;height:72px;position:absolute;top:-30px;left:-14px}.hero-door{background:linear-gradient(#5d7cff,#3464e8);border-radius:16px 16px 0 0;width:30px;height:56px;position:absolute;bottom:0;left:22px}.hero-window{background:#ffd561;border:4px solid #fff;border-radius:12px 12px 4px 4px;width:24px;height:32px;position:absolute;box-shadow:inset 0 0 0 2px #ffa7404d}.hero-window-a{top:38px;right:18px}.hero-window-b{bottom:12px;right:18px}.hero-dot{z-index:0;background:#0d77d824;border-radius:50%;position:absolute}.hero-dot-a{width:18px;height:18px;top:13%;left:7%}.hero-dot-b{background:radial-gradient(circle,#ff86a94d,#ff86a90f 65%,#0000 66%);width:190px;height:190px;top:10%;right:4%}.hero-pin:after{opacity:.95;content:"";background:radial-gradient(circle at 40% 36%,#ff7bc1 0 32px,#0000 33px),linear-gradient(90deg,#0000 43px,#50428a29 44px 46px,#0000 47px),linear-gradient(#fff 0 0) 78px 76px/44px 66px no-repeat,linear-gradient(#bfe5ff 0 0) 88px 90px/12px 18px no-repeat,linear-gradient(#bfe5ff 0 0) 106px 90px/12px 18px no-repeat;border-radius:50%;width:180px;height:180px;position:absolute;bottom:-80px;left:-88px;transform:rotate(45deg)}.hero-house:after{content:"";background:linear-gradient(90deg,#0000 34px,#1870502e 35px 38px,#0000 39px),radial-gradient(circle at 50% 22%,#77dc63 0 32px,#0000 33px),linear-gradient(#2ac4ad,#2ac4ad) bottom/100% 68px no-repeat;border-radius:999px 999px 18px 18px;width:78px;height:122px;position:absolute;bottom:-4px;right:-56px}.how-it-works{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,5vw,76px);width:min(1250px,100% - 76px);margin:0 auto;display:grid;position:relative}.how-it-works:before,.how-it-works:after{z-index:0;content:"";border-top:4px dashed;width:calc(50% - 1.5*min(31vw,340px) + 42px);min-width:46px;max-width:92px;height:4px;position:absolute;top:103px}.how-it-works:before{color:#7b4cf4;left:calc(33.333% - 42px)}.how-it-works:after{color:#f4b70d;right:calc(33.333% - 42px)}.how-it-works article{z-index:1;text-align:center;background:#fff;border:1px solid #d8e2f0b3;border-radius:28px;grid-template-rows:auto 126px auto auto;align-content:start;justify-items:center;gap:10px;min-height:330px;padding:34px 32px 32px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 56px #3c436e1c}.how-it-works article:after{content:"";background:currentColor;height:7px;position:absolute;bottom:0;left:0;right:0}.how-card-treatment{--card-accent:#7b4cf4;color:var(--card-accent);background:linear-gradient(#f6f1fff2,#fff)}.how-card-time{--card-accent:#10b996;color:var(--card-accent);background:linear-gradient(#edfffaf2,#fff)}.how-card-home{--card-accent:#f4b70d;color:var(--card-accent);background:linear-gradient(#fff8e8f2,#fff)}.how-it-works span{color:#fff;background:var(--card-accent);border:0;border-radius:50%;place-items:center;width:56px;height:56px;font-size:1.2rem;font-weight:900;display:grid;position:absolute;top:26px;left:28px;box-shadow:0 12px 26px #2a366124}.how-it-works strong{z-index:2;color:#071a3f;font-size:1.42rem;line-height:1.2;position:relative}.how-it-works small,.booking-main-panel p,.summary-line span{color:var(--booking-muted)}.how-it-works small{z-index:2;max-width:245px;font-size:1rem;line-height:1.55;position:relative}.how-card-illustration{z-index:1;width:190px;height:126px;margin:0 0 6px;position:relative}.calendar-illustration:before{content:"";background:radial-gradient(circle at 28px 44px,#ece6ff 0 8px,#0000 9px),radial-gradient(circle at 58px 44px,#ece6ff 0 8px,#0000 9px),radial-gradient(circle at 88px 44px,#ece6ff 0 8px,#0000 9px),radial-gradient(circle at 28px 68px,#ece6ff 0 8px,#0000 9px),radial-gradient(circle at 58px 68px,#ece6ff 0 8px,#0000 9px),radial-gradient(circle at 91px 66px,#f55ab7 0 14px,#0000 15px),linear-gradient(#7d51f5 0 24px,#fff 24px);border-radius:14px;width:116px;height:82px;position:absolute;top:24px;left:36px;box-shadow:0 16px 28px #7d51f52e}.calendar-illustration:after{content:"";border:7px solid #7d51f5;border-bottom:0;border-radius:16px 16px 0 0;width:66px;height:28px;position:absolute;top:12px;left:60px}.clock-illustration:before{content:"";background:#fff;border:10px solid #2fcab1;border-radius:50%;position:absolute;inset:10px 42px;box-shadow:0 18px 32px #10b99633}.clock-illustration:after{transform-origin:bottom;content:"";background:#2e8796;border-radius:999px;width:4px;height:38px;position:absolute;top:38px;left:92px;box-shadow:17px 28px 0 -1px #2e8796}.lounge-illustration:before{content:"";background:linear-gradient(145deg,#ffc73d,#ff9f2e);border-radius:28px 28px 18px 18px;width:92px;height:46px;position:absolute;top:54px;left:56px;box-shadow:0 18px 32px #f4b70d33}.lounge-illustration:after{content:"";background:#6754e8;border-radius:999px;width:12px;height:86px;position:absolute;top:22px;left:42px;box-shadow:0 -8px 0 13px #ffd962,105px 58px 0 16px #9de176,80px 42px 0 12px #ff75bd}.how-card-treatment:before,.how-card-time:before,.how-card-home:before{width:18px;height:18px;color:var(--card-accent);opacity:.7;content:"";background:linear-gradient(currentColor,currentColor) 50%/100% 3px no-repeat,linear-gradient(currentColor,currentColor) 50%/3px 100% no-repeat;position:absolute;top:68px;right:56px;transform:rotate(45deg)}.how-card-time:before{right:78px}.how-card-home:before{right:48px}.booking-page .how-it-works{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(30px,4.8vw,72px);width:min(1210px,100% - 80px);margin-top:18px}.booking-page .how-it-works:before,.booking-page .how-it-works:after{opacity:.42;filter:saturate(.9);border-top-width:4px;width:clamp(44px,5vw,74px);height:0;top:112px}.booking-page .how-it-works article{border:1px solid #e1e8f5db;border-radius:28px;grid-template-rows:142px auto 1fr;gap:12px;min-height:328px;padding:28px 34px 30px;transition:transform .22s,box-shadow .22s,border-color .22s;overflow:hidden;box-shadow:0 28px 64px #2a335f1c,inset 0 1px #ffffffdb}.booking-page .how-it-works article:hover{border-color:#b8cdebe6;transform:translateY(-6px);box-shadow:0 34px 78px #2a335f29,inset 0 0 0 1px #ffffffbd}.booking-page .how-card-treatment{--card-accent:#7d4cf4;--card-accent-soft:#7d4cf41f;background:radial-gradient(circle at 82% 18%,#9c6fff24,#0000 30%),linear-gradient(#fbf8ff 0%,#fff 78%)}.booking-page .how-card-time{--card-accent:#12b99a;--card-accent-soft:#12b99a1f;background:radial-gradient(circle at 82% 18%,#39d6b929,#0000 31%),linear-gradient(#f1fffb 0%,#fff 78%)}.booking-page .how-card-home{--card-accent:#f4b20d;--card-accent-soft:#f4b20d24;background:radial-gradient(circle at 82% 18%,#ffcf4c33,#0000 31%),linear-gradient(#fff9ec 0%,#fff 78%)}.booking-page .how-it-works article:after{opacity:.95;border-radius:999px 999px 0 0;height:6px}.booking-page .how-it-works article>span{z-index:4;background:radial-gradient(circle at 30% 24%, #ffffff70, transparent 32%), linear-gradient(145deg, color-mix(in srgb, var(--card-accent), white 14%), var(--card-accent));width:54px;height:54px;box-shadow:0 16px 30px color-mix(in srgb, var(--card-accent), transparent 74%);letter-spacing:0;font-size:1.08rem;font-weight:850;top:28px;left:28px}.booking-page .how-it-works strong{color:var(--navy);letter-spacing:0;margin-top:2px;font-size:clamp(1.32rem,2vw,1.48rem);font-weight:850}.booking-page .how-it-works small{color:#516079;align-self:start;max-width:258px;font-size:.98rem;line-height:1.48}.booking-page .how-card-illustration{width:210px;height:136px;margin:0 auto 4px;position:relative;transform:translateY(2px)}.booking-page .how-card-illustration:before,.booking-page .how-card-illustration:after{content:none}.booking-page .how-card-illustration i{pointer-events:none;display:block;position:absolute}.booking-page .illustration-shadow{filter:blur(2px);opacity:.72;background:radial-gradient(#2a335f2e,#0000 72%);border-radius:50%;height:18px;bottom:7px;left:42px;right:42px}.booking-page .illustration-sparkle{width:16px;height:16px;color:var(--card-accent);opacity:.62}.booking-page .illustration-sparkle:before,.booking-page .illustration-sparkle:after{content:"";background:currentColor;border-radius:999px;margin:auto;position:absolute;inset:0}.booking-page .illustration-sparkle:before{width:100%;height:3px}.booking-page .illustration-sparkle:after{width:3px;height:100%}.booking-page .calendar-page{background:radial-gradient(circle at 31px 43px,#eee8ff 0 8px,#0000 9px),radial-gradient(circle at 59px 43px,#eee8ff 0 8px,#0000 9px),radial-gradient(circle at 87px 43px,#eee8ff 0 8px,#0000 9px),radial-gradient(circle at 31px 66px,#eee8ff 0 8px,#0000 9px),radial-gradient(circle at 59px 66px,#eee8ff 0 8px,#0000 9px),radial-gradient(circle at 90px 65px,#fa5fb5 0 15px,#0000 16px),linear-gradient(#8b58f7 0 25px,#fff 25px 100%);border:1px solid #7c53f51a;border-radius:17px;width:118px;height:84px;top:30px;left:50%;transform:translate(-50%)perspective(300px)rotateX(2deg);box-shadow:0 20px 36px #7d4cf42e,inset 0 1px #ffffffd9}.booking-page .calendar-rings{filter:drop-shadow(0 5px 7px #5736ae2e);background:linear-gradient(#6f42ee,#915cff) 4px 9px/10px 25px no-repeat,linear-gradient(#6f42ee,#915cff) 46px 9px/10px 25px no-repeat,radial-gradient(circle at 9px 9px,#f9f5ff 0 8px,#0000 9px),radial-gradient(circle at 51px 9px,#f9f5ff 0 8px,#0000 9px);width:60px;height:32px;top:18px;left:75px}.booking-page .calendar-check{border-bottom:3px solid #fff;border-left:3px solid #fff;border-radius:2px;width:18px;height:10px;bottom:39px;right:55px;transform:rotate(-45deg)}.booking-page .clock-leaf{opacity:.92;background:linear-gradient(145deg,#55d7ad,#13ae91);border-radius:70% 8% 70% 18%;width:52px;height:74px;bottom:18px;box-shadow:inset 10px -14px 20px #ffffff38}.booking-page .leaf-left{left:42px;transform:rotate(-35deg)}.booking-page .leaf-right{background:linear-gradient(145deg,#74df89,#19b997);right:40px;transform:rotate(35deg)scaleX(-1)}.booking-page .clock-face{background:radial-gradient(circle,#28c9ae 0 5px,#0000 6px),linear-gradient(#28c9ae,#28c9ae) 50% 14px/3px 10px no-repeat,linear-gradient(#28c9ae,#28c9ae) 50% calc(100% - 14px)/3px 10px no-repeat,linear-gradient(90deg,#28c9ae,#28c9ae) 14px/10px 3px no-repeat,linear-gradient(90deg,#28c9ae,#28c9ae) calc(100% - 14px)/10px 3px no-repeat,linear-gradient(160deg,#fff,#f8fffd);border:10px solid #28c9ae;border-radius:50%;width:100px;height:100px;top:23px;left:50%;transform:translate(-50%);box-shadow:0 20px 38px #12b99a2e,inset 0 0 0 5px #ffffff9e}.booking-page .clock-hands{transform-origin:bottom;background:#277f93;border-radius:999px;width:4px;height:40px;top:56px;left:104px;box-shadow:18px 28px 0 -1px #277f93}.booking-page .floor-lamp{filter:drop-shadow(0 10px 14px #f4b20d29);background:linear-gradient(#315bb6,#315bb6) 20px 38px/3px 62px no-repeat,linear-gradient(90deg,#0000 10px,#315bb6 10px 32px,#0000 32px) 0 99px/42px 4px no-repeat,linear-gradient(115deg,#ffe889,#ffc943) 3px 0/36px 31px no-repeat;width:42px;height:104px;top:20px;left:42px}.booking-page .lounge-cushion{background:linear-gradient(145deg,#ff83c5,#f055ad);border-radius:8px 12px;width:30px;height:28px;top:55px;right:54px;transform:rotate(-10deg);box-shadow:0 10px 18px #f055ad2e}.booking-page .lounge-plant{filter:drop-shadow(0 10px 12px #2d57aa1f);background:radial-gradient(at 37% 23%,#58d886 0 12px,#0000 13px),radial-gradient(at 68% 38%,#74df89 0 12px,#0000 13px),radial-gradient(at 34% 47%,#1fbd9d 0 12px,#0000 13px),linear-gradient(#7199f8,#557ce3) 8px 38px/22px 20px no-repeat;border-radius:0 0 12px 12px;width:34px;height:60px;bottom:26px;right:25px}.booking-page .booking-landing{background:radial-gradient(circle at 8% 23%,#7c5cf60e,#0000 18rem),radial-gradient(circle at 92% 24%,#ff76ae12,#0000 20rem),linear-gradient(#fbfdff 0%,#fff 64%);gap:58px;padding-top:54px}.booking-page .booking-landing:after{opacity:.46;filter:blur(.15px)}.booking-page .booking-hero-panel{gap:32px;min-height:455px;padding-top:108px}.booking-page .booking-hero-panel h1{max-width:760px;font-size:clamp(2.55rem,4.25vw,3.95rem);font-weight:780;line-height:1.12}.booking-page .booking-hero-panel h1 span:after{opacity:.9;border-bottom-width:5px;height:12px;bottom:-9px}.booking-page .postcode-row{margin-top:8px}.booking-page .account-actions{margin-top:12px}.booking-page .booking-hero-art{opacity:.5;filter:saturate(.86)}.booking-page .booking-hero-art-left{bottom:-48px}.booking-page .booking-hero-art-right{opacity:.5;bottom:-50px;right:max(-126px,50% - 840px)}.booking-page .hero-hill-a,.booking-page .hero-hill-c{opacity:.32;filter:blur(.7px)saturate(.74);height:58px;bottom:-34px}.booking-page .hero-pin{opacity:.72}.booking-page .hero-house{opacity:.66;bottom:36px;right:108px;transform:scale(.94)}.booking-page .hero-dot-a{opacity:.48}.booking-page .hero-dot-b{opacity:.4}.booking-page .how-it-works{gap:clamp(32px,4.8vw,72px);margin-top:34px}.booking-page .how-it-works:before,.booking-page .how-it-works:after{opacity:.3;top:122px}.booking-page .how-it-works article{grid-template-rows:160px auto auto;gap:7px;min-height:322px;padding:26px 32px 24px;transition:transform .24s,box-shadow .24s,border-color .24s,filter .24s;box-shadow:0 10px 30px #505a8c14}.booking-page .how-it-works article:hover{box-shadow:0 18px 42px #505a8c1f, 0 0 34px color-mix(in srgb, var(--card-accent), transparent 90%);filter:saturate(1.03);border-color:#becfecd1;transform:translateY(-5px)}.booking-page .how-card-treatment:before,.booking-page .how-card-time:before,.booking-page .how-card-home:before{display:none}.booking-page .how-card-treatment{background:radial-gradient(circle at 74% 20%,#9c6fff13,#0000 34%),linear-gradient(#fbf8ff 0%,#fff 78%)}.booking-page .how-card-time{background:radial-gradient(circle at 74% 20%,#39d6b916,#0000 34%),linear-gradient(#f2fffb 0%,#fff 78%)}.booking-page .how-card-home{background:radial-gradient(circle at 72% 20%,#ffcf4c1f,#0000 34%),linear-gradient(#fff9ed 0%,#fff 78%)}.booking-page .how-it-works article>span{width:52px;height:52px;box-shadow:0 12px 24px color-mix(in srgb, var(--card-accent), transparent 78%)}.booking-page .how-card-illustration{width:clamp(218px,21vw,252px);height:clamp(146px,13.7vw,166px);margin-bottom:-4px;transform:translateY(11px)}.booking-page .how-it-works strong{margin-top:-2px;font-size:clamp(1.42rem,2.08vw,1.58rem);line-height:1.12}.booking-page .how-it-works small{max-width:270px;font-size:.98rem;line-height:1.62}.booking-page .illustration-shadow{opacity:.54;filter:blur(3px);height:20px;bottom:10px;left:36px;right:36px}.booking-page .illustration-sparkle{opacity:.36;transform-origin:50%}.booking-page .sparkle-a{top:34px;right:18px;transform:rotate(45deg)scale(.66)}.booking-page .sparkle-b{opacity:.24;bottom:38px;left:22px;transform:rotate(45deg)scale(.42)}.booking-page .calendar-page{background:radial-gradient(circle at 35px 49px,#eee8ff 0 8px,#0000 9px),radial-gradient(circle at 66px 49px,#eee8ff 0 8px,#0000 9px),radial-gradient(circle at 97px 49px,#eee8ff 0 8px,#0000 9px),radial-gradient(circle at 35px 74px,#eee8ff 0 8px,#0000 9px),radial-gradient(circle at 66px 74px,#eee8ff 0 8px,#0000 9px),radial-gradient(circle at 101px 73px,#fa5fb5 0 15px,#0000 16px),linear-gradient(#8b58f7 0 28px,#fff 28px 100%);border-radius:19px;width:134px;height:94px;top:38px}.booking-page .calendar-rings{top:24px;left:calc(50% - 36px);transform:scale(1.08)}.booking-page .calendar-check{bottom:43px;right:calc(50% - 58px)}.booking-page .clock-leaf{width:60px;height:82px;bottom:24px}.booking-page .leaf-left{left:42px}.booking-page .leaf-right{right:42px}.booking-page .clock-face{background:radial-gradient(circle,#248596 0 5px,#0000 6px),radial-gradient(circle,#fff 0 58%,#0000 59%),repeating-conic-gradient(#277f93b8 0deg 1.5deg,#0000 1.5deg 30deg),linear-gradient(145deg,#fff 0%,#f4fffc 100%);border:9px solid #25c3ad;width:112px;height:112px;top:30px;box-shadow:0 22px 38px #12b99a33,inset 0 0 0 5px #ffffffb8,inset 0 -8px 18px #12b99a14}.booking-page .clock-face:before{content:"";background:linear-gradient(#28c9ae,#28c9ae) 50% 0/3px 9px no-repeat,linear-gradient(#28c9ae,#28c9ae) 50% 100%/3px 9px no-repeat,linear-gradient(90deg,#28c9ae,#28c9ae) 0/9px 3px no-repeat,linear-gradient(90deg,#28c9ae,#28c9ae) 100%/9px 3px no-repeat;border-radius:50%;position:absolute;inset:13px}.booking-page .clock-face:after{opacity:.65;content:"";background:radial-gradient(circle at 34% 26%,#fffffff2,#0000 30%);border-radius:50%;position:absolute;inset:24px}.booking-page .clock-hands{z-index:3;background:#248596;border-radius:50%;width:10px;height:10px;top:84px;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #2485961f}.booking-page .clock-hands:before,.booking-page .clock-hands:after{transform-origin:50% 100%;content:"";background:#248596;border-radius:999px;position:absolute;bottom:50%;left:50%}.booking-page .clock-hands:before{width:4px;height:34px;transform:translate(-50%)rotate(0)}.booking-page .clock-hands:after{background:#176f82;width:4px;height:27px;transform:translate(-50%)rotate(48deg)}.booking-page .clock-hands{height:10px;top:86px;left:50%}.booking-page .floor-lamp{opacity:.92;background:linear-gradient(#315bb6,#315bb6) 28px 48px/4px 72px no-repeat,linear-gradient(90deg,#0000 9px,#315bb6 9px 50px,#0000 50px) 0 119px/58px 5px no-repeat,linear-gradient(115deg,#fff0a7,#ffc642) 5px 0/48px 39px no-repeat;width:58px;height:126px;top:24px;left:24px}.booking-page .lounge-chair{background:linear-gradient(#b46c1d,#b46c1d) 20px 68px/8px 20px no-repeat,linear-gradient(#b46c1d,#b46c1d) 84px 68px/8px 20px no-repeat,radial-gradient(circle at 22px 31px,#ffd04b 0 30px,#0000 31px),radial-gradient(circle at 96px 31px,#ffd04b 0 30px,#0000 31px),linear-gradient(145deg,#ffd75a,#f3a723);border-radius:34px 38px 24px 24px;width:116px;height:78px;top:58px;left:74px;box-shadow:0 20px 34px #c4841129,inset 0 13px 22px #ffffff57}.booking-page .lounge-cushion{border-radius:11px 15px;width:38px;height:34px;top:63px;right:48px}.booking-page .lounge-plant{opacity:.94;width:42px;height:68px;bottom:30px;right:16px}@media (width<=1180px){.booking-hero-art-left{left:-132px}.booking-hero-art-right{right:-148px}.how-it-works{gap:34px;width:min(1080px,100% - 80px)}.how-it-works:before,.how-it-works:after{display:none}.how-it-works article{padding-inline:26px}.how-card-illustration{width:170px}}@media (width<=980px){.booking-hero-panel{min-height:420px}.booking-hero-art-left,.booking-hero-art-right{opacity:.78;transform:scale(.86)}.booking-hero-art-left{left:-170px}.booking-hero-art-right{right:-190px}.how-it-works{grid-template-columns:1fr;width:min(460px,100% - 36px)}}.booking-workspace{grid-template-columns:minmax(0,1fr) 340px;gap:44px;width:min(1120px,100% - 44px);margin:0 auto;padding:42px 0 70px;display:grid}.booking-main-panel{align-content:start;gap:24px;min-height:540px;display:grid}.booking-main-panel h2{letter-spacing:0;margin:0;font-size:clamp(1.45rem,2.2vw,2.2rem)}.treatment-layout{grid-template-columns:minmax(300px,1fr) 210px;align-items:start;gap:36px;display:grid}.treatment-list,.duration-list,.duration-adjuster-list,.enhancement-list,.payment-form,.contact-form-grid{gap:12px;display:grid}.treatment-card,.duration-pill,.date-card,.time-slot-card{border:1px solid var(--booking-line);color:var(--booking-ink);text-align:left;background:#fff}.treatment-card{cursor:pointer;gap:6px;min-height:82px;padding:16px;display:grid}.treatment-card-main{width:100%;color:inherit;box-shadow:none;text-align:left;cursor:pointer;background:0 0;gap:6px;padding:0;display:grid}.treatment-card-main:hover{background:0 0}.treatment-card span,.treatment-card small,.duration-pill span,.time-slot-card span,.enhancement-card small{color:var(--booking-muted)}.treatment-card small{width:fit-content;color:var(--booking-blue);background:#eaf4ff;border-radius:999px;padding:3px 8px;font-size:.78rem;font-weight:800}.full-description-button{width:fit-content;color:var(--booking-blue);background:#fff;border:1px solid #0d77d838;padding:.48rem .7rem;font-size:.82rem}.selected-treatment-card,.selected-duration-pill,.selected-date-card,.selected-time-slot{border-color:var(--booking-blue);background:#eef7ff}.duration-list{grid-template-columns:1fr 1fr}.duration-adjuster-list{gap:16px}.duration-adjuster-row{grid-template-columns:34px 98px 34px;justify-content:center;align-items:center;gap:12px;display:grid}.duration-adjust-button{width:34px;height:34px;color:var(--booking-ink);background:0 0;place-items:center;padding:0;font-size:1.65rem;line-height:1;display:grid}.duration-adjust-button:disabled{color:#bdc5cf;background:0 0}.duration-pill{text-align:center;justify-items:center;min-height:82px;padding:16px 10px;display:grid}.duration-builder-hint{color:var(--booking-muted);margin:-6px 0 0;font-size:.92rem}.booking-date-strip,.time-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.booking-date-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;max-width:100%}.date-card,.time-slot-card{gap:4px;min-height:64px;padding:10px;display:grid}.date-card{--day-accent:#1685ff;background:linear-gradient(#ffffffe6,#f8fbfff0),linear-gradient(135deg,#1685ff2e,#7d4cf414);border-color:#d8e2f0cc;position:relative;overflow:hidden}.date-card:nth-child(2){--day-accent:#7b4cf4;background:linear-gradient(#ffffffe6,#faf7fff5),linear-gradient(135deg,#7b4cf42e,#f65cb614)}.date-card:nth-child(3){--day-accent:#10b996;background:linear-gradient(#ffffffe6,#f0fffaf5),linear-gradient(135deg,#10b9962e,#2edcc714)}.date-card:nth-child(4){--day-accent:#f4b70d;background:linear-gradient(#ffffffe6,#fffaebf5),linear-gradient(135deg,#f4b70d33,#ff7c4614)}.date-card:nth-child(5){--day-accent:#f65cb6;background:linear-gradient(#ffffffe6,#fff6fcf5),linear-gradient(135deg,#f65cb62e,#ff7c4614)}.date-card:nth-child(6),.date-card:nth-child(7){--day-accent:#ff8b38;background:linear-gradient(#ffffffe6,#fff9f0f5),linear-gradient(135deg,#ff8b382e,#f8bd111a)}.date-card:after{background:var(--day-accent);opacity:.12;content:"";border-radius:50%;width:62px;height:62px;position:absolute;top:-24px;right:-18px}.date-card span{color:color-mix(in srgb, var(--day-accent) 52%, #34415a);font-size:.76rem;font-weight:800}.date-card strong{color:#071a3f;font-size:.92rem}.time-slot-card strong{font-size:1.12rem}.time-slot-card span{font-size:.88rem;line-height:1.3}.time-calendar-controls{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:9px;max-width:100%;display:grid}.time-calendar-controls button,.time-calendar-controls label{min-height:66px;color:var(--booking-ink);cursor:pointer;text-align:center;background:linear-gradient(#ffffffe6,#f8fbfff0),linear-gradient(135deg,#1685ff24,#7d4cf414);border:1px solid #d8e2f0d6;border-radius:14px;place-items:center;padding:.65rem .75rem;font-weight:800;line-height:1.15;transition:border-color .16s,box-shadow .16s,transform .16s,background .16s;display:grid;box-shadow:0 10px 24px #505a8c0d}.time-calendar-controls button:hover,.time-calendar-controls label:hover{border-color:#0d77d861;transform:translateY(-1px);box-shadow:0 18px 42px #3c436e1f}.time-calendar-controls label{color:var(--booking-ink)}.time-calendar-controls input{width:100%;color:var(--booking-ink);font:inherit;text-align:center;cursor:pointer;background:0 0;border:0;padding:0;font-weight:900}.booking-footer-actions{justify-content:space-between;gap:12px;margin-top:auto;padding-top:20px;display:flex}.booking-summary-panel{border:1px solid var(--booking-line);background:#fff;align-self:start;position:sticky;top:96px}.booking-summary-panel img{aspect-ratio:4/2.35;object-fit:cover;width:100%;display:block}.booking-summary-body{gap:12px;padding:18px;display:grid}.booking-summary-body h3{margin:0 0 4px;font-size:1.2rem}.summary-services{border-bottom:1px solid var(--booking-line);gap:8px;padding-bottom:12px;display:grid}.summary-services>span,.summary-services small{color:var(--booking-muted)}.summary-services div{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;display:grid}.summary-remove-service{color:#b42318;width:24px;min-width:24px;height:24px;box-shadow:none;font:900 .82rem/1 var(--font-sans);cursor:pointer;background:#d92d201a;border:0;border-radius:999px;place-items:center;padding:0;transition:background .16s,color .16s,transform .16s;display:grid}.summary-remove-service span{display:block;transform:translateY(-.5px)}.summary-remove-service:hover,.summary-remove-service:focus-visible{color:#9f1d13;background:#d92d2029;transform:translateY(-1px)}.summary-services strong{overflow-wrap:anywhere;min-width:0}.summary-services div span{color:var(--booking-ink);white-space:nowrap}.summary-services .summary-enhancement-line strong{color:var(--booking-muted);font-weight:700}.summary-services .summary-enhancement-line span{color:var(--booking-blue)}.summary-line,.summary-total{border-top:1px solid var(--booking-line);justify-content:space-between;gap:14px;padding-top:10px;display:flex}.summary-needed-value{appearance:none;color:#d92323;cursor:pointer;font:inherit;letter-spacing:0;text-align:right;text-transform:uppercase;background:0 0;border:0;padding:0;font-size:1.08rem;font-weight:950}.summary-needed-value:hover,.summary-needed-value:focus-visible{text-underline-offset:3px;text-decoration:underline}.summary-total{color:var(--booking-ink);font-weight:900}.summary-appointment-stack{gap:10px;display:grid}.summary-appointment-card,.summary-current-draft{background:linear-gradient(145deg,#fff,#f4f9ff);border:1px solid #147eec29;border-radius:16px;padding:12px;box-shadow:0 10px 24px #1f33520a}.summary-appointment-heading,.summary-appointment-services div{justify-content:space-between;align-items:center;gap:10px;display:flex}.summary-appointment-heading span{color:var(--booking-blue);letter-spacing:0;text-transform:uppercase;font-size:.78rem;font-weight:950}.summary-appointment-heading strong{color:var(--booking-ink)}.summary-appointment-meta{color:var(--booking-muted);gap:4px;margin-top:8px;font-size:.86rem;line-height:1.35;display:grid}.summary-appointment-services{border-top:1px solid #147eec1f;gap:6px;margin-top:10px;padding-top:10px;display:grid}.summary-appointment-services strong,.summary-current-draft strong{min-width:0;color:var(--booking-ink);overflow-wrap:anywhere;font-size:.88rem}.summary-appointment-services span,.summary-current-draft span{color:var(--booking-muted);white-space:nowrap;font-size:.82rem;font-weight:800}.summary-current-draft{background:#fffaf0;border-color:#f59e0b38;gap:4px;display:grid}.summary-grand-total{background:linear-gradient(90deg,#eef7ff,#fffaf1);border-top:0;border-radius:999px;padding:12px 14px}.summary-accordion{border-top:1px solid var(--booking-line)}.summary-accordion button{border-bottom:1px solid var(--booking-line);width:100%;color:var(--booking-ink);background:#fff;justify-content:space-between;padding:14px 18px;display:flex}.enhancement-card{border:1px solid var(--booking-line);color:var(--booking-ink);background:#fff;border-radius:6px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px}.enhancement-card input,.consent-row input{width:auto;min-height:auto}.enhancement-card span{gap:4px;display:grid}.contact-form-grid,.payment-form{grid-template-columns:1fr 1fr}.wide-field{grid-column:1/-1}.consent-row{grid-template-columns:auto 1fr;align-items:center;gap:10px;width:fit-content}.telegram-consent-row{margin-top:10px}.telegram-helper-note{max-width:620px;color:var(--booking-muted);background:#eff6ffc7;border:1px solid #1d4ed829;border-radius:16px;margin:6px 0 14px;padding:12px 14px;font-size:.92rem;line-height:1.45}.telegram-helper-note a{color:var(--booking-blue);font-weight:800;text-decoration:none}.telegram-helper-note a:hover{text-decoration:underline}.payment-tabs{border-bottom:1px solid var(--booking-line);display:flex}.payment-tabs button{color:var(--booking-muted);background:#fff;border-radius:0;padding:12px 18px}.payment-tabs .active-payment-tab{color:var(--booking-blue);border-bottom:3px solid var(--booking-blue)}.payment-note{color:var(--booking-ink);background:#e8f4ffb8;border:1px solid #1979d82e;border-radius:16px;margin:0;padding:14px 16px;font-weight:700;line-height:1.5}.pay-button{width:min(320px,100%);padding:.9rem 1rem;font-weight:900}.checkout-appointment-list{gap:12px;display:grid}.checkout-appointment-card{background:linear-gradient(145deg,#fffffffa,#f6fafff0);border:1px solid #bbcfe8db;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:16px;display:grid;box-shadow:0 10px 30px #505a8c14}.checkout-appointment-card span{color:#596981;font-size:.9rem;font-weight:800}.checkout-appointment-card strong{color:var(--booking-ink);margin-top:4px;font-size:1.08rem;display:block}.checkout-appointment-card p,.checkout-appointment-card small{color:#526278;margin:6px 0 0;line-height:1.45;display:block}.checkout-appointment-card b{color:var(--booking-ink);font-size:1.05rem}.checkout-card-actions{flex-wrap:wrap;grid-column:1/-1;gap:10px;display:flex}.checkout-card-actions button{color:#0d5fb8;background:#f2f8ff;border:1px solid #cfe0f3;border-radius:999px;min-height:38px;padding:.45rem 1rem;font-weight:850}.checkout-card-actions button:last-child{color:#b42318;background:#fff4f2;border-color:#b423182e}.checkout-total-panel{color:var(--booking-ink);background:linear-gradient(90deg,#eef7ff,#fff8e7);border-radius:18px;justify-content:space-between;align-items:center;padding:16px 18px;font-size:1.08rem;font-weight:900;display:flex}.confirmed-appointment-card{grid-template-columns:1fr}.booking-workspace{isolation:isolate;padding:42px 0 72px;position:relative}.booking-workspace:before{z-index:-1;content:"";background:radial-gradient(circle at 8% 18%,#7d4cf421,#0000 18rem),radial-gradient(circle at 88% 10%,#ff6cc424,#0000 20rem),linear-gradient(#f8fbff 0%,#fff0 100%);height:420px;position:absolute;inset:0 -8vw auto}.booking-main-panel{background:#ffffffe6;border:1px solid #d8e2f0c2;border-radius:28px;padding:clamp(22px,3vw,34px);position:relative;overflow:hidden;box-shadow:0 26px 64px #3c436e1a}.booking-main-panel:before{content:"";background:radial-gradient(circle,#ff84ad2e,#0000 68%);border-radius:50%;width:220px;height:220px;position:absolute;top:-96px;right:-72px}.booking-main-panel h2{color:#071a3f;max-width:780px;font-size:clamp(1.85rem,3.2vw,3rem);line-height:1.05;position:relative}.booking-main-panel h2:after{content:"";background:linear-gradient(90deg,#f8bd11,#ff7c46);border-radius:999px;width:112px;height:6px;margin-top:12px;display:block}.treatment-card,.duration-pill,.date-card,.time-slot-card,.enhancement-card,.booking-page .payment-form input,.booking-page .contact-form-grid input,.booking-page .contact-form-grid textarea{background:#fffffff5;border-color:#d8e2f0eb;border-radius:18px;box-shadow:0 14px 34px #3c436e12}.treatment-card,.date-card,.time-slot-card,.enhancement-card{transition:border-color .16s,box-shadow .16s,transform .16s,background .16s}.treatment-card:hover,.date-card:hover,.time-slot-card:hover,.enhancement-card:hover{border-color:#0d77d861;transform:translateY(-1px);box-shadow:0 18px 42px #3c436e1f}.selected-treatment-card,.selected-date-card,.selected-time-slot{background:linear-gradient(#eef7ff,#fff);border-color:#1685ff;box-shadow:0 20px 48px #1267e824}.duration-pill{min-height:58px;padding-inline:18px}.duration-pill strong,.time-slot-card strong{color:#071a3f}.booking-date-strip,.time-slot-grid{gap:8px}.time-slot-card{min-height:76px;padding:11px 12px}.enhancement-card{padding:18px}.enhancement-card input,.consent-row input{accent-color:#1685ff}.contact-form-grid label,.payment-form label{color:#34415a;font-weight:800}.payment-tabs{background:#f3f7fc;border-bottom:0;border-radius:999px;gap:8px;padding:6px}.payment-tabs button{background:0 0;border:0;border-radius:999px;flex:1}.payment-tabs .active-payment-tab{color:#fff;background:linear-gradient(135deg,#7c4df6,#126df1);border-bottom:0;box-shadow:0 12px 28px #126df138}.booking-footer-actions button,.pay-button{border-radius:16px;min-height:54px;padding-inline:22px;font-weight:900}.booking-footer-actions button:first-child{color:#5831c5;background:#ffffffe6;border:1px solid #7d4cf42e;box-shadow:0 12px 30px #362a6f14}.booking-summary-panel{background:#fffffff0;border-color:#d8e2f0d1;border-radius:24px;overflow:hidden;box-shadow:0 26px 64px #3c436e1f}.booking-summary-panel img{border-bottom:1px solid #d8e2f0d1}.booking-summary-body{background:radial-gradient(circle at 100% 0,#ff84ad1a,#0000 9rem),linear-gradient(#f8fbffe6,#fff)}.summary-services{background:#f8fbff;border-radius:18px;padding:12px}.summary-line,.summary-total{border-color:#d8e2f0db}.summary-total{background:linear-gradient(90deg,#eef7fff2,#fff8e8d9);border-radius:16px;padding-inline:12px}.booking-modal-backdrop{z-index:40;background:#1118278c;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.booking-modal{background:#fff;border-radius:6px;gap:14px;width:min(380px,100%);padding:28px;display:grid;position:relative;box-shadow:0 24px 80px #00000038}.service-description-modal{width:min(520px,100%)}.service-description-modal img{aspect-ratio:16/9;object-fit:cover;border-radius:6px;width:100%}.booking-modal h2,.booking-modal p{margin:0}.modal-close{color:var(--booking-muted);background:0 0;padding:.35rem .55rem;position:absolute;top:8px;right:8px}.compact-waitlist-form{grid-template-columns:1fr 1fr auto;align-items:end}.booking-page .client-offers-card{width:min(1120px,100% - 44px);box-shadow:none;border-radius:6px;margin:0 auto 24px;font-family:inherit}@media (width<=900px){.booking-topbar{grid-template-columns:1fr auto;padding:14px 18px}.booking-progress{grid-column:1/-1;justify-content:flex-start;gap:10px;padding-bottom:4px;overflow-x:auto}.progress-step{white-space:nowrap}.booking-workspace,.treatment-layout{grid-template-columns:1fr}.time-calendar-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.time-calendar-controls button,.time-calendar-controls label{min-height:62px;padding-inline:.55rem;font-size:.9rem}.booking-summary-panel{position:static}.time-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-date-strip{scrollbar-width:none;gap:8px;padding-bottom:6px;display:flex;overflow-x:auto}.booking-date-strip::-webkit-scrollbar{display:none}.date-card{text-align:center;flex:0 0 72px;min-height:62px;padding:9px 10px}.date-card span{font-size:.74rem}.date-card strong{font-size:.92rem}.how-it-works{grid-template-columns:1fr}.client-area-picker,.admin-service-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.booking-landing{padding:46px 14px 50px}.postcode-row,.contact-form-grid,.payment-form,.compact-waitlist-form{grid-template-columns:1fr}.time-waitlist-card{flex-direction:column;align-items:stretch}.time-waitlist-card .outline-action{width:100%}.booking-workspace{width:min(100% - 24px,1120px);padding-top:24px}.duration-list,.time-slot-grid{grid-template-columns:1fr}.booking-footer-actions{flex-direction:column-reverse}.booking-footer-actions button,.pay-button{width:100%}}@media (width<=640px){.admin-coverage-grid,.admin-enhancement-card,.personal-event-grid{grid-template-columns:1fr}body{overflow-x:hidden}button,input,select,textarea{font-size:16px}.booking-topbar{grid-template-columns:1fr auto;gap:10px;min-height:auto;padding:12px 14px;position:sticky}.booking-logo{min-height:42px}.booking-top-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.booking-top-actions button{width:100%;min-height:42px}.booking-progress{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;display:grid;overflow:visible}.progress-step{border:1px solid var(--booking-line);white-space:nowrap;background:#fff;border-radius:999px;justify-content:center;gap:4px;min-width:0;padding:.34rem .32rem;font-size:.68rem;line-height:1}.progress-step span{width:18px;height:18px;font-size:.62rem}.active-progress-step{background:#eef7ff;border-color:#0d77d85c}.booking-workspace{width:100%;padding:14px 12px 28px}.booking-main-panel{gap:16px;min-height:auto}.booking-main-panel h2{font-size:1.38rem}.treatment-layout{gap:14px}.duration-adjuster-list{border:1px solid var(--booking-line);background:#f7f9fc;border-radius:14px;order:-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:8px;display:grid}.duration-adjuster-list .duration-adjuster-row:nth-child(n+4){display:none}.duration-adjuster-row{background:#fff;border:1px solid #dfe7f0;border-radius:12px;grid-template-columns:24px minmax(0,1fr) 24px;justify-content:stretch;gap:2px;min-width:0;padding:5px 4px}.duration-adjust-button{width:24px;height:30px;color:var(--booking-blue);background:#eef7ff;border-radius:8px;font-size:.96rem;line-height:1}.duration-pill{background:0 0;border:0;min-width:0;min-height:30px;padding:2px 1px}.duration-pill strong{font-size:.88rem;line-height:1}.duration-pill span{white-space:nowrap;font-size:.56rem;line-height:1.1}.treatment-list{gap:8px}.treatment-card{border-radius:12px;grid-template-columns:1fr auto;gap:4px 8px;min-height:0;padding:10px 12px}.treatment-card-main{grid-column:1;gap:0}.treatment-card-main strong{font-size:.96rem}.treatment-card-main span{display:none}.treatment-card small{grid-column:1;padding:2px 7px;font-size:.7rem}.full-description-button{white-space:nowrap;grid-area:1/2/span 2;align-self:center;padding:.42rem .56rem;font-size:.7rem}.duration-builder-hint{background:#f7f9fc;border-radius:12px;margin:-4px 0 0;padding:9px 10px;font-size:.78rem;line-height:1.35}.booking-page .client-card,.booking-panel,.booking-summary-panel,.client-card{border-radius:16px;padding:16px}.service-option-card,.duration-option,.enhancement-card,.slot-card{border-radius:12px}.booking-summary-panel{max-height:none}.booking-summary-panel img{display:none}.booking-summary-body{gap:8px;padding:12px}.booking-summary-body h3{margin:0;font-size:1rem}.summary-services{gap:5px;padding-bottom:8px}.summary-services>span,.summary-services small,.summary-services strong,.summary-services div span,.summary-line,.summary-total{font-size:.78rem}.summary-line,.summary-total{padding-top:7px}.summary-services div{grid-template-columns:22px minmax(0,1fr) auto;gap:6px}.summary-remove-service{border-radius:7px;width:22px;height:22px}.booking-date-strip{margin-inline:-4px;padding-inline:4px}.date-card{border-radius:10px;flex-basis:72px}.time-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.time-slot-card{border-radius:10px;min-height:58px;padding:9px 10px}.time-slot-card strong{font-size:1.02rem}.time-slot-card span{font-size:.76rem}.checkout-appointment-card{grid-template-columns:1fr;padding:14px}.checkout-card-actions button{flex:120px}.booking-modal{border-radius:18px;width:min(100% - 24px,460px);max-height:calc(100vh - 32px);overflow-y:auto}}@media (width>=901px){.booking-progress{justify-self:center;max-width:calc(100% - 148px);transform:translate(-74px)}}@media (width<=760px){.mobile-preview-trigger{display:none}}@media (width<=640px){.booking-topbar{grid-template-columns:1fr auto;align-items:start}.booking-logo span{width:48px;height:48px}.booking-logo strong{font-size:1.2rem}.booking-progress{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.progress-step{justify-content:flex-start;min-height:48px;padding:.45rem .6rem;font-size:.75rem;overflow:hidden}.progress-step span{flex:none;width:30px;height:30px;font-size:.78rem}.booking-page .booking-landing{gap:34px;width:100%;padding:48px 16px 52px;overflow:hidden}.booking-page .booking-hero-panel{gap:22px;width:100%;min-width:0;min-height:auto;padding:70px 0 32px}.booking-page .booking-hero-panel h1{width:min(100%,350px);max-width:350px;font-size:clamp(2rem,10vw,2.65rem);line-height:1.08}.booking-page .booking-hero-panel h1 span:after{border-bottom-width:4px;height:10px;bottom:-7px}.booking-page .postcode-row{grid-template-columns:1fr;gap:10px;width:min(100%,350px)}.client-area-picker{border-radius:20px;grid-template-columns:1fr;width:min(100%,350px);padding:10px}.client-area-option{min-height:48px}.area-picker-subtitle,.client-area-helper{width:min(100%,350px)}.postcode-row input{min-height:58px}.postcode-row button{width:100%;min-height:58px}.account-actions{gap:10px;width:min(100%,350px)}.account-actions .outline-action{white-space:nowrap;flex:1 1 0;justify-content:center;min-height:54px;padding-inline:.8rem;font-size:.9rem}.booking-page .booking-hero-art-left,.booking-page .booking-hero-art-right{opacity:.34;transform:scale(.78)}.booking-page .booking-hero-art-left{left:-190px}.booking-page .booking-hero-art-right{right:-220px}.booking-page .how-it-works{gap:18px;width:min(100%,360px);margin-top:8px}.booking-page .how-it-works article{min-height:292px;padding:22px 24px 24px}.admin-service-area-grid{grid-template-columns:1fr}}.admin-root{color:#172033;background:#f6f8fb;width:100%;min-height:100vh;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.admin-auth-panel{background:#fff;border:1px solid #dde5ef;border-radius:18px;gap:18px;width:min(460px,100% - 32px);margin:48px auto;padding:24px;display:grid;box-shadow:0 18px 48px #1528441f}.admin-auth-panel-inline{width:min(1220px,100% - 24px);box-shadow:none;border-radius:14px;grid-template-columns:1fr auto;align-items:center;margin:12px auto 0;padding:14px 18px}.admin-auth-panel h1,.admin-auth-panel p{margin:0}.admin-auth-panel h1{letter-spacing:0;font-size:1.6rem}.admin-auth-panel p:not(.eyebrow){color:#647084}.admin-login-form{gap:14px;display:grid}.admin-login-form label{color:#647084;gap:6px;font-weight:700;display:grid}.admin-login-form input{color:#172033;min-height:46px;font:inherit;border:1px solid #dde5ef;border-radius:12px;padding:0 12px}.admin-auth-actions{flex-wrap:wrap;gap:10px;display:flex}.admin-auth-actions button{color:#fff;background:#3178c6;border:1px solid #1a65ae3d;border-radius:12px;min-height:44px;padding:0 18px;font-weight:800}.admin-auth-actions .ghost-button{color:#3178c6;background:#fff}.admin-forgot-password-link{color:#3178c6;font:inherit;text-underline-offset:3px;background:0 0;border:0;justify-self:start;padding:0;font-size:.88rem;font-weight:800;text-decoration:underline}.admin-forgot-password-link:disabled{opacity:.55}.admin-auth-error{color:#b42318;font-weight:700}.admin-auth-success{color:#207044;font-weight:700}.admin-auth-status{font-weight:700}.top-action-cluster{justify-content:flex-end;display:flex}.square-green-action,.mobile-preview-trigger{color:#fff;text-align:center;background:linear-gradient(135deg,#16bb91,#0aa672);border:1px solid #2a704938;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:128px;height:54px;padding:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.98rem;font-weight:900;line-height:1;display:inline-flex;box-shadow:0 16px 34px #0aa6723d}.topbar-icon{flex:none;width:18px;height:18px;display:inline-block;position:relative}.topbar-user-icon:before{content:"";border:2px solid;border-radius:50%;width:8px;height:8px;position:absolute;top:1px;left:5px}.topbar-user-icon:after{content:"";border:2px solid;border-radius:999px 999px 0 0;width:16px;height:8px;position:absolute;bottom:0;left:1px}.square-green-action:hover,.mobile-preview-trigger:hover{background:linear-gradient(135deg,#10a77f,#07895f);transform:translateY(-1px)}.mobile-preview-trigger{z-index:90;color:#0c8b69;background:#eafbf6eb;border-color:#0aa67229;position:fixed;top:22px;right:168px;box-shadow:0 12px 30px #265b4c1f}.mobile-preview-trigger:hover{color:#fff}.mobile-preview-trigger:before{content:"";border:2px solid;border-radius:4px;width:14px;height:22px;box-shadow:inset 0 -4px #0aa67229}.mobile-preview-backdrop{z-index:100;background:#0f172a85;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.mobile-preview-panel{background:#f4f7fb;border:1px solid #ffffff2e;border-radius:28px;grid-template-rows:auto 1fr;gap:16px;max-height:calc(100vh - 44px);padding:16px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:grid;box-shadow:0 32px 90px #050f235c}.mobile-preview-panel header{justify-content:space-between;align-items:center;gap:18px;display:flex}.mobile-preview-panel header p,.mobile-preview-panel header h2{letter-spacing:0;margin:0}.mobile-preview-panel header p{color:#647084;text-transform:uppercase;font-size:.74rem;font-weight:900}.mobile-preview-panel header h2{color:#172033;font-size:1.15rem}.mobile-preview-panel header button{color:#172033;box-shadow:none;background:#fff;border:1px solid #d7e0eb;border-radius:12px}.mobile-device-frame{background:#fff;border:10px solid #111827;border-radius:38px;width:min(390px,100vw - 52px);height:min(844px,100vh - 150px);min-height:560px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff29,0 24px 70px #00000047}.mobile-device-frame:before{content:"";z-index:2;background:#111827;border-radius:999px;width:92px;height:22px;position:absolute;top:8px;left:50%;transform:translate(-50%)}.mobile-device-frame iframe{background:#fff;border:0;width:100%;height:100%}.admin-app-shell{--admin-blue:#3178c6;--admin-green:#5ca986;--admin-peach:#e8a46d;--admin-lavender:#a894df;--admin-red:#de7777;--admin-ink:#172033;--admin-muted:#647084;--admin-line:#dde5ef;--admin-card:#fff;min-height:100vh;padding:18px 18px 96px;position:relative}.admin-app-shell button,.admin-app-shell input,.admin-app-shell select{font-family:inherit}.admin-app-shell button{box-shadow:none;border-radius:12px}.admin-topbar{grid-template-columns:auto 1fr auto;align-items:center;gap:14px;max-width:1220px;margin:0 auto;display:grid}.admin-menu-button,.admin-client-link,.admin-screen-heading button,.admin-secondary-action{border:1px solid var(--admin-line);color:var(--admin-ink);background:#fff}.admin-menu-button{place-content:center;gap:4px;width:44px;height:44px;padding:0;display:grid}.admin-menu-button span{background:var(--admin-ink);border-radius:999px;width:18px;height:2px;display:block}.admin-topbar p,.admin-screen-heading p{color:var(--admin-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:800}.admin-topbar h1,.admin-screen-heading h2{letter-spacing:0;margin:2px 0 0}.admin-client-link{padding:0}.admin-date-strip{gap:10px;max-width:1220px;margin:18px auto;padding-bottom:4px;display:flex;overflow-x:auto}.admin-date-pill{border:1px solid var(--admin-line);min-width:92px;color:var(--admin-ink);text-align:left;background:#fff;gap:3px;padding:10px 12px;display:grid}.admin-date-pill span{color:var(--admin-muted);font-size:.78rem}.active-admin-date{background:#eaf3ff;border-color:#3178c657}.today-admin-date,.active-admin-date.today-admin-date{color:#6f1f1b;background:#ffecec;border-color:#d6504b6b}.today-admin-date span,.active-admin-date.today-admin-date span{color:#9b3b35}.admin-main-surface{max-width:1220px;margin:0 auto}.admin-action-message{color:var(--admin-blue);background:#eaf3ff;border:1px solid #3178c63d;border-radius:18px;margin:0 0 14px;padding:12px 14px;font-weight:800;line-height:1.45}.admin-screen{border:1px solid var(--admin-line);background:var(--admin-card);border-radius:22px;gap:18px;padding:20px;display:grid}.admin-screen .waitlist-panel{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0}.admin-screen-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.admin-heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.admin-screen-heading button,.admin-secondary-action{padding:.72rem .95rem}.admin-primary-action{border:1px solid var(--admin-blue);color:#fff;background:var(--admin-blue);padding:.72rem 1.1rem}.admin-search{border:1px solid var(--admin-line);width:100%;color:var(--admin-ink);background:#f9fbfd;border-radius:14px;padding:.86rem 1rem}.admin-agenda-list,.customer-list,.admin-service-grid,.working-rules-grid{gap:12px;display:grid}.admin-settings-section{border-top:1px solid var(--admin-line);gap:16px;margin-top:26px;padding-top:24px;display:grid}.compact-settings-heading h2{font-size:1.5rem}.admin-enhancement-list{gap:12px;display:grid}.admin-enhancement-card{border:1px solid var(--admin-line);background:#fbfcfe;border-radius:18px;grid-template-columns:minmax(150px,1fr) 92px 110px minmax(220px,1.5fr) auto auto;align-items:end;gap:12px;padding:14px;display:grid}.admin-enhancement-card label{color:var(--admin-muted);gap:6px;font-size:.84rem;font-weight:800;display:grid}.admin-enhancement-card input{border:1px solid var(--admin-line);width:100%;color:var(--admin-ink);font:inherit;background:#fff;border-radius:12px;padding:.72rem .82rem}.admin-enhancement-card .admin-toggle-row{align-self:center}.admin-enhancement-card .admin-danger-option{color:#b42318;background:#fff4f2;border:1px solid #b4231833;align-self:center}.admin-coverage-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.admin-coverage-card{border:1px solid var(--admin-line);background:#fbfcfe;border-radius:18px;gap:10px;padding:16px;display:grid}.admin-coverage-card>span{color:#fff;border-radius:999px;width:fit-content;padding:.28rem .62rem;font-size:.76rem;font-weight:900}.usual-zone-card>span{background:#16875f}.preapproval-zone-card>span{background:#c77913}.admin-coverage-card strong{color:var(--admin-ink);font-size:1.1rem}.admin-coverage-card textarea{border:1px solid var(--admin-line);min-height:120px;color:var(--admin-ink);font:inherit;resize:vertical;background:#fff;border-radius:14px;padding:.85rem;line-height:1.55}.admin-coverage-card small{color:var(--admin-muted);line-height:1.45}.admin-muted-note{color:var(--admin-muted);margin:-6px 0 0;line-height:1.5}.telegram-settings-section{border-top-color:#26a69a38}.telegram-test-status{border-radius:16px;margin:0;padding:.85rem 1rem;font-weight:800}.telegram-test-status.info{color:#1d5f9f;background:#eef6ff}.telegram-test-status.success{color:#1f6f42;background:#edf9f2}.telegram-test-status.error{color:#b42318;background:#fff1ef}.admin-service-area-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.admin-service-area-card{border:1px solid var(--admin-line);background:#fff;border-radius:16px;grid-template-columns:1fr auto;align-items:center;gap:10px 12px;padding:14px;display:grid;box-shadow:0 10px 24px #1f33520a}.admin-service-area-toggle{color:var(--admin-muted);grid-column:1/-1;align-items:center;gap:10px;font-size:.86rem;font-weight:800;display:flex}.admin-service-area-toggle input{width:18px;height:18px}.admin-service-area-name{gap:6px;display:grid}.admin-service-area-name span{color:var(--admin-muted);font-size:.78rem;font-weight:900}.admin-service-area-name input{border:1px solid var(--admin-line);width:100%;color:var(--admin-ink);font:inherit;background:#fff;border-radius:12px;padding:.72rem .82rem;font-weight:900}.service-area-delete-button{align-self:end;min-height:43px}.active-admin-service-area{background:linear-gradient(145deg,#fff,#f1f8ff);border-color:#147eec47}.admin-agenda-day{gap:10px;display:grid}.admin-agenda-day h3{color:var(--admin-muted);margin:8px 0 0;font-size:.96rem}.admin-agenda-day p{color:var(--admin-muted);margin:0}.admin-event-card{border:1px solid var(--admin-line);background:#fbfcfe;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px;display:grid}.admin-booking-box{border:1px solid var(--admin-line);border-left:5px solid var(--admin-green);background:#fbfcfe;border-radius:16px;gap:10px;padding:14px 44px 14px 14px;display:grid;position:relative}.personal-admin-booking-box{background:linear-gradient(#fbf8ff,#fff);border-left-color:#9a67f5}.booking-delete-corner{color:#b42318;background:#fff4f2;border:1px solid #b4231838;border-radius:9px;place-items:center;width:28px;height:28px;padding:0;font-size:1.05rem;font-weight:950;line-height:1;display:grid;position:absolute;bottom:10px;right:10px}.booking-delete-corner span{border:0;border-radius:0;width:auto;height:auto;position:static}.booking-delete-corner span:before,.booking-delete-corner span:after{content:none}.admin-booking-title-row,.admin-booking-meta,.admin-booking-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-booking-title-row span,.admin-booking-meta,.admin-booking-services{color:var(--admin-muted)}.admin-booking-services{gap:4px;font-size:.88rem;display:grid}.admin-order-note{color:#6f5400;background:#fff5cf;border-radius:999px;width:fit-content;padding:.28rem .58rem;font-size:.78rem;font-weight:850}.admin-booking-actions{flex-wrap:wrap;justify-content:flex-start}.admin-booking-actions a,.admin-booking-actions button{color:var(--admin-blue);background:#eaf3ff;border:1px solid #3178c647;border-radius:10px;padding:.52rem .7rem;font-size:.84rem;font-weight:800;text-decoration:none}.admin-booking-actions .disabled-map-link{opacity:.45;pointer-events:none}.compact-admin-booking-box{border:0;border-left:4px solid var(--admin-blue);background:0 0;border-radius:10px;gap:4px;height:100%;padding:7px 32px 7px 7px}.compact-admin-booking-box .booking-delete-corner{border-radius:7px;width:22px;height:22px;bottom:5px;right:5px}.compact-admin-booking-box .admin-booking-title-row,.compact-admin-booking-box .admin-booking-meta,.compact-admin-booking-box .admin-booking-actions{gap:3px;display:grid}.compact-admin-booking-box .admin-booking-actions{grid-template-columns:1fr 1fr}.compact-admin-booking-box .admin-booking-actions a,.compact-admin-booking-box .admin-booking-actions button{padding:.28rem .34rem;font-size:.68rem}.admin-appointment-backdrop{z-index:80;background:#0f172a47;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.admin-appointment-modal{color:#111;background:#fff;border-radius:28px;grid-template-rows:auto 1fr;width:min(760px,100%);max-height:min(860px,100vh - 36px);display:grid;overflow:hidden;box-shadow:0 28px 80px #0f172a47}.personal-event-modal{width:min(620px,100%)}.admin-appointment-header{border-bottom:1px solid #eee;grid-template-columns:84px 1fr 112px;align-items:center;gap:10px;padding:18px 22px;display:grid}.admin-appointment-header h2{letter-spacing:0;text-align:center;margin:0;font-size:clamp(1.35rem,3vw,2rem)}.admin-appointment-header>button{box-shadow:none}.admin-appointment-header>button:first-child{color:#111;background:0 0;justify-self:start;width:44px;height:44px;padding:0;font-size:1.6rem}.appointment-next-button,.appointment-create-button{background:#111;border-radius:999px;justify-self:end;min-width:96px}.appointment-step{padding:24px;overflow:auto}.personal-event-form{gap:18px;padding:24px;display:grid;overflow:auto}.personal-event-form label{color:#34415a;gap:8px;font-weight:800;display:grid}.personal-event-form input{color:#061a3d;font:inherit;background:#f9fbfd;border:1px solid #dce5f2;border-radius:14px;padding:.86rem 1rem}.personal-event-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.personal-event-help{color:#41516b;background:#f5f8fc;border-radius:16px;margin:0;padding:14px 16px}.appointment-summary-strip{background:#f4f6f8;border-radius:18px;gap:10px;padding:14px 16px;display:grid}.appointment-summary-empty{color:#111;font-size:1rem}.appointment-summary-lines{gap:8px;display:grid}.appointment-summary-line{grid-template-columns:1fr auto auto auto;align-items:center;gap:10px;display:grid}.appointment-summary-line span,.appointment-summary-total span{color:#6a6a6a}.appointment-summary-line button{color:#111;width:28px;height:28px;box-shadow:none;background:#fff;padding:0}.appointment-summary-total{border-top:1px solid #e2e2e2;justify-content:space-between;gap:14px;padding-top:10px;display:flex}.appointment-warning{color:#8a5b00;margin:14px 0 0;font-weight:800}.appointment-service-list{gap:12px;margin-top:18px;display:grid}.appointment-service-card{background:#fff;border:1px solid #e2e2e2;border-radius:18px;overflow:hidden}.appointment-service-card.selected{border-color:#111;box-shadow:0 12px 30px #11111114}.appointment-service-main{color:#111;width:100%;box-shadow:none;text-align:left;background:0 0;border-radius:0;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:16px;display:grid}.appointment-service-main>span{border-radius:999px;width:16px;height:16px}.appointment-service-main div{gap:4px;display:grid}.appointment-service-main small,.appointment-month-row span,.appointment-review-grid span,.appointment-review-row small,.appointment-review-service small{color:#6a6a6a}.appointment-duration-controls{background:#fafafa;border-top:1px solid #eee;justify-content:center;align-items:center;gap:12px;padding:12px 16px;display:flex}.appointment-duration-controls button{color:#111;box-shadow:none;background:#fff;border:1px solid #d9d9d9;border-radius:10px;padding:.52rem .72rem;font-size:1rem}.appointment-month-row{justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:18px;display:flex}.appointment-month-row strong{font-size:clamp(1.8rem,5vw,3rem)}.appointment-date-row{grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:18px;display:grid}.appointment-date-cell{color:#111;box-shadow:none;background:#fff;border-radius:14px;place-items:center;gap:10px;display:grid}.appointment-date-cell span{color:#8b96a5}.appointment-date-cell strong{border-radius:12px;place-items:center;width:42px;height:42px;font-size:1.35rem;display:grid}.appointment-date-cell.active strong{color:#fff;background:#111}.appointment-slot-grid{grid-template-columns:repeat(4,minmax(120px,1fr));gap:12px;display:grid}.appointment-slot{color:#111;min-height:84px;box-shadow:none;background:#fff;border:1px solid #dedede;border-radius:14px;place-items:center;gap:8px;display:grid}.appointment-slot span{font-size:1.28rem}.appointment-slot b{background:#111;border-radius:999px;width:9px;height:9px}.appointment-slot.active{color:#fff;background:#111}.appointment-slot.active b{background:#fff}.appointment-search{background:#f3f3f4;border:0;border-radius:20px;padding:1rem 1.2rem;font-size:1.25rem}.appointment-add-customer{color:#666;box-shadow:none;background:0 0;justify-self:start;margin:22px 0;font-size:1.08rem}.appointment-add-customer:hover{color:#111;background:#f4f6f8}.appointment-new-customer-form{background:linear-gradient(145deg,#fff,#f8fbff);border:1px solid #cdd9e8db;border-radius:22px;gap:12px;margin:0 0 18px;padding:14px;display:grid}.appointment-new-customer-form label{color:#66758d;gap:6px;font-size:.82rem;font-weight:850;display:grid}.appointment-new-customer-form input{color:#111827;min-height:48px;font:inherit;background:#fff;border:1px solid #cdd9e8e6;border-radius:15px;padding:0 12px}.appointment-new-customer-form button{color:#fff;background:#111;border-radius:16px;min-height:50px}.appointment-empty-state{color:#66758d;background:#f4f6f8;border-radius:16px;margin:0;padding:14px}.appointment-customer-list{gap:10px;display:grid}.appointment-customer-row{color:#111;width:100%;box-shadow:none;text-align:left;background:0 0;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;display:grid}.appointment-customer-row>span{background:#e8e8e8;border-radius:999px;place-items:center;width:58px;height:58px;font-weight:800;display:grid}.appointment-customer-row strong{font-size:1.22rem}.appointment-customer-row b{color:#777;font-size:1.4rem}.appointment-customer-row.selected{background:#f4f6f8;border-radius:18px}.appointment-review-step{gap:24px;display:grid}.appointment-review-service,.appointment-review-row{grid-template-columns:72px 1fr;align-items:center;gap:18px;display:grid}.appointment-review-service>span{border-radius:999px;justify-self:center;width:24px;height:24px}.appointment-review-service div,.appointment-review-row div{gap:4px;display:grid}.appointment-review-service strong,.appointment-review-row strong{font-size:1.35rem;font-weight:500}.appointment-review-service b{font-size:1.2rem}.appointment-review-grid{grid-template-columns:repeat(3,minmax(120px,1fr));gap:18px;padding-left:90px;display:grid}.appointment-review-grid div{gap:6px;display:grid}.appointment-review-grid strong{font-size:1.3rem}.appointment-review-row>span{color:#929292;text-align:center;font-weight:800}.appointment-leave-backdrop{z-index:3;background:#11111194;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.appointment-leave-dialog{color:#111;background:#fff;border-radius:24px;gap:18px;width:min(520px,100%);padding:32px;display:grid;box-shadow:0 24px 72px #00000042}.appointment-leave-dialog h3{letter-spacing:0;margin:0;font-size:clamp(1.7rem,5vw,2.35rem);font-weight:500}.appointment-leave-dialog p{color:#6a6a6a;margin:0;font-size:clamp(1.2rem,4vw,1.7rem);line-height:1.25}.appointment-leave-dialog div{justify-items:end;gap:18px;margin-top:20px;display:grid}.appointment-leave-dialog button{color:#111;box-shadow:none;background:0 0;font-size:clamp(1.2rem,4vw,1.65rem);font-weight:500}.event-dot{background:var(--admin-green);border-radius:999px;width:12px;height:36px}.admin-event-card div{gap:3px;display:grid}.admin-event-card span,.admin-event-card b{color:var(--admin-muted)}.admin-day-grid,.admin-three-day-grid{grid-template-columns:72px 1fr;gap:0;display:grid;overflow-x:auto}.admin-three-day-grid{grid-template-columns:72px repeat(3,minmax(220px,1fr))}.admin-grid-times{color:var(--admin-muted);border-right:1px solid #9aa9b8;grid-template-rows:repeat(24,72px);padding-top:38px;font-size:.74rem;display:grid}.admin-grid-times span{justify-content:flex-end;padding-right:10px;display:flex;position:relative;transform:translateY(-.55em)}.admin-grid-times span:after,.admin-grid-times span:before{content:"";border-top:1px solid #8c9bab;width:18px;position:absolute;right:-1px}.admin-grid-times span:after{top:0}.admin-grid-times span:before{border-color:#c0cad4;width:10px;top:36px}.admin-grid-day{gap:8px;display:grid}.admin-grid-day h3{margin:0;font-size:.92rem}.admin-grid-column{border:1px solid var(--admin-line);background:repeating-linear-gradient(#0000 0 35px,#f0f4f8 35px 36px,#0000 36px 71px,#dde6ef 71px 72px),#fbfcfe;border-left:0;border-radius:0 18px 18px 0;min-height:1728px;position:relative;overflow:hidden}.grid-hour-line{height:72px;display:block}.admin-grid-event{color:#18304d;border-left:4px solid var(--admin-blue);z-index:1;background:#dbeeff;border-radius:14px;padding:4px;display:block;position:absolute;left:0;right:10px;overflow:hidden}.admin-grid-event span{color:#37536f;font-size:.78rem}.full-admin-grid-event{box-shadow:none;background:0 0;border-left:0;border-radius:0;padding:0;left:0;right:0}.day-timeline-booking-box{border:1px solid #3178c642;border-left:4px solid var(--admin-blue);background:#ffffffe6;border-radius:0 10px 10px 0;align-content:start;gap:8px;height:100%;padding:10px 46px 10px 14px;display:grid;position:relative;overflow:hidden}.personal-timeline-booking-box{background:linear-gradient(#f8f2ff,#fff);border-color:#7a58d459 #7a58d459 #7a58d459 #8a63d2}.day-timeline-booking-box>:not(.day-timeline-buffer-band):not(.day-timeline-service-band):not(.booking-delete-corner){z-index:1;position:relative}.day-timeline-booking-box .booking-delete-corner{z-index:2;bottom:10px;right:10px}.day-timeline-service-band{pointer-events:none;position:absolute;left:0;right:0}.service-band-0{background:#d6813c24}.service-band-1{background:#4b917024}.service-band-2{background:#5589c41f}.service-band-3{background:#8f69c61f}.service-band-4{background:#c45c5c1f}.day-timeline-buffer-band{height:var(--buffer-percent,0%);pointer-events:none;background:#3178c614;border-top:1px dashed #3178c638;position:absolute;bottom:0;left:0;right:0}.day-timeline-booking-main{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.day-timeline-booking-main strong{font-size:1rem;font-weight:600}.day-timeline-booking-main span{color:#18304d;background:#eef6ff;border-radius:999px;padding:.24rem .52rem;font-size:.84rem;font-weight:600}.day-timeline-booking-box small{color:#37536f;font-weight:500}.timeline-client-name{color:#102947;font-size:1.04em;font-weight:650}.full-admin-grid-event .admin-booking-actions a,.full-admin-grid-event .admin-booking-actions button{padding:.42rem .64rem}.customer-directory-layout{grid-template-columns:minmax(220px,.8fr) minmax(280px,1.2fr);gap:16px;display:grid}.customer-row{border:1px solid var(--admin-line);color:var(--admin-ink);text-align:left;background:#fff;gap:4px;padding:13px;display:grid}.customer-row span,.customer-profile p{color:var(--admin-muted)}.active-customer-row{background:#eaf3ff;border-color:#3178c666}.customer-profile{border:1px solid var(--admin-line);background:#fbfcfe;border-radius:18px;gap:12px;padding:18px;display:grid}.customer-profile h3{margin:0}.quick-action-row{gap:10px;display:flex}.quick-action-row button{color:#fff;background:var(--admin-blue);width:72px;padding:.62rem .7rem}.customer-profile details{border-top:1px solid var(--admin-line);padding-top:10px}.customer-profile summary{cursor:pointer;font-weight:800}.working-rules-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}.working-rules-grid label{color:var(--admin-muted)}.working-rules-grid input,.working-rules-grid select{border:1px solid var(--admin-line);color:var(--admin-ink);background:#fff;border-radius:12px;padding:.74rem .85rem}.working-rules-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.working-rules-actions span{color:var(--admin-muted);font-size:.88rem;font-weight:800}.admin-toggle-row{align-items:center;gap:10px;display:flex}.admin-toggle-row input{width:auto;accent-color:var(--admin-blue)}.admin-service-grid{grid-template-columns:repeat(3,minmax(220px,1fr))}.admin-service-card{border:1px solid var(--admin-line);background:#fff;border-radius:18px;gap:10px;padding:16px;display:grid}.admin-service-card>span{color:#fff;border-radius:999px;width:fit-content;padding:.28rem .58rem;font-size:.76rem;font-weight:900}.admin-service-card h3,.admin-service-card p{margin:0}.admin-service-card p{color:var(--admin-muted)}.admin-service-card strong{font-size:1.25rem}.admin-service-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-service-card button{color:var(--admin-blue);background:#eaf3ff;border:1px solid #3178c647}.admin-service-editor{border-top:1px solid var(--admin-line);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:12px;display:grid}.admin-service-editor label{color:var(--admin-muted);gap:6px;font-size:.82rem;display:grid}.admin-service-editor label:first-child,.admin-service-editor label:nth-child(2),.admin-service-editor label:nth-child(3),.admin-service-editor label:nth-child(4){grid-column:1/-1}.admin-service-editor input,.admin-service-editor textarea{border:1px solid var(--admin-line);width:100%;color:var(--admin-ink);background:#fbfcfe;border-radius:10px;padding:.62rem .7rem}.admin-service-editor textarea{resize:vertical;min-height:96px}.admin-menu-backdrop{z-index:50;background:#0f172a59;position:fixed;inset:0}.admin-side-menu{border-right:1px solid var(--admin-line);background:#fff;align-content:start;gap:24px;width:min(360px,100% - 32px);height:100%;padding:22px;display:grid;overflow-y:auto}.admin-menu-heading{justify-content:space-between;align-items:center;display:flex}.admin-menu-heading h2,.admin-side-menu h3{margin:0}.admin-side-menu section{gap:10px;display:grid}.admin-menu-row{border:1px solid var(--admin-line);width:100%;color:var(--admin-ink);text-align:left;background:#fff;padding:.8rem .9rem}.active-menu-row{background:#eaf3ff;border-color:#3178c65c}.admin-bottom-nav{z-index:30;border:1px solid var(--admin-line);background:#fffffff5;border-radius:22px;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:6px;width:min(720px,100% - 32px);padding:8px;display:grid;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 18px 46px #14203024}.admin-bottom-nav button{color:var(--admin-muted);background:0 0;padding:.75rem .55rem;font-weight:800}.admin-bottom-nav .active-admin-tab{color:#fff;background:var(--admin-blue)}.admin-fab{z-index:31;color:#fff;background:var(--admin-blue);border-radius:50%;place-items:center;width:58px;height:58px;padding:0;font-size:2rem;display:grid;position:fixed;bottom:96px;right:24px;box-shadow:0 16px 40px #3178c652}.admin-overview-backdrop{z-index:60;background:#0f172a6b;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.admin-overview-modal{background:#fff;border-radius:22px;gap:16px;width:min(620px,100%);max-height:calc(100vh - 44px);padding:22px;display:grid;overflow-y:auto;box-shadow:0 24px 70px #14203038}.admin-overview-heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.admin-overview-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:start;gap:8px;display:flex}.admin-more-menu-shell{position:relative}.admin-more-menu{z-index:2;border:1px solid var(--admin-line);background:#fff;border-radius:14px;gap:6px;min-width:220px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 18px 44px #1420302e}.admin-more-menu button{text-align:left;width:100%}.admin-more-menu .admin-danger-option{color:#b42318;background:#fff4f2;border-color:#b4231838}.admin-overview-heading p{color:var(--admin-muted);text-transform:uppercase;margin:0;font-size:.78rem;font-weight:900}.admin-overview-heading h2{margin:2px 0 0}.admin-overview-heading button,.admin-overview-tabs button{border:1px solid var(--admin-line);color:var(--admin-ink);background:#fff}.admin-overview-tabs{border-bottom:1px solid var(--admin-line);gap:8px;padding-bottom:10px;display:flex}.admin-overview-tabs .active-overview-tab{color:#fff;background:var(--admin-blue)}.admin-overview-content{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-overview-content div{border:1px solid var(--admin-line);background:#fbfcfe;border-radius:14px;gap:5px;padding:12px;display:grid}.admin-overview-content input{border:1px solid var(--admin-line);width:100%;color:var(--admin-ink);background:#fff;border-radius:10px;padding:.62rem .7rem}.admin-overview-content span{color:var(--admin-muted);text-transform:uppercase;font-size:.78rem;font-weight:900}.admin-overview-content .overview-wide{grid-column:1/-1}@media (width<=820px){.admin-app-shell{padding:12px 10px 96px}.admin-main-surface,.admin-topbar,.admin-date-strip{width:100%;max-width:none}.admin-topbar{gap:10px}.admin-topbar h1{font-size:1.55rem}.admin-menu-button{width:42px;height:42px}.admin-date-strip{scrollbar-width:none;margin:12px 0;padding:0 0 8px}.admin-date-pill{min-width:86px;padding:9px 10px}.admin-screen{border-radius:16px;gap:14px;padding:14px;overflow:hidden}.admin-screen-heading{flex-direction:column;align-items:stretch}.admin-screen-heading button{width:100%;min-height:44px}.customer-directory-layout,.working-rules-grid,.admin-service-grid,.admin-service-editor,.admin-overview-content{grid-template-columns:1fr}.admin-day-grid{grid-template-columns:38px minmax(0,1fr);padding-bottom:8px;overflow-x:visible}.admin-three-day-grid{grid-template-columns:58px repeat(3,minmax(210px,1fr))}.admin-grid-times{padding-top:32px;font-size:.64rem}.admin-grid-times span{padding-right:5px}.admin-grid-times span:after{width:9px}.admin-grid-times span:before{width:5px}.admin-grid-event{right:0}.day-timeline-booking-box{gap:6px;padding:9px 34px 9px 9px}.day-timeline-booking-main{gap:4px}.day-timeline-booking-main strong{font-size:.84rem}.day-timeline-booking-main span{padding:.18rem .38rem;font-size:.68rem}.day-timeline-booking-box small{font-size:.72rem}.timeline-client-name{font-size:1.12em}.full-admin-grid-event .admin-booking-actions a,.full-admin-grid-event .admin-booking-actions button{padding:.28rem .38rem;font-size:.66rem}.admin-agenda-list,.customer-list,.admin-service-grid,.working-rules-grid{gap:10px}.admin-topbar{grid-template-columns:auto 1fr auto}.admin-client-link{grid-column:auto;width:76px}.admin-bottom-nav{border-radius:18px;width:calc(100% - 20px);padding:6px;font-size:.72rem;bottom:10px}.admin-bottom-nav button{white-space:normal;min-width:0;padding:.62rem .32rem}.admin-fab{width:54px;height:54px;bottom:82px;right:14px}.admin-appointment-backdrop{padding:0}.admin-appointment-modal{border-radius:0;width:100%;height:100vh;max-height:none}.admin-appointment-header{grid-template-columns:54px 1fr 88px;padding:14px 16px}.admin-appointment-header h2{font-size:1.45rem}.appointment-next-button,.appointment-create-button{min-width:78px;padding:.72rem .8rem}.appointment-step{padding:18px}.appointment-summary-line{grid-template-columns:1fr auto}.appointment-summary-line b,.appointment-summary-line button{justify-self:end}.appointment-summary-total,.appointment-month-row{flex-direction:column;align-items:stretch}.appointment-service-main{grid-template-columns:auto 1fr}.appointment-service-main b{grid-column:2}.appointment-duration-controls{justify-content:flex-start;overflow-x:auto}.appointment-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-slot{min-height:74px}.appointment-review-grid{grid-template-columns:1fr;padding-left:0}.appointment-review-grid div:last-child{grid-column:auto}.appointment-review-service,.appointment-review-row{grid-template-columns:48px 1fr}.appointment-review-service strong,.appointment-review-row strong{font-size:1.02rem}.appointment-customer-row{grid-template-columns:auto 1fr auto;gap:12px;padding:.7rem .5rem}.appointment-customer-row>span{width:46px;height:46px}.admin-side-menu{width:min(340px,92vw)}.admin-overview-backdrop{padding:0}.admin-overview-modal{border-radius:0;width:100%;height:100vh;max-height:none;overflow-y:auto}}@media (width<=420px){.booking-date-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-inline:0;padding-inline:0;display:grid;overflow:visible}.date-card{min-width:0;min-height:52px;padding:7px 3px}.date-card span{font-size:.66rem}.date-card strong{font-size:.72rem}.time-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-bottom-nav{font-size:.66rem}.admin-bottom-nav button{padding-inline:.2rem}.appointment-slot-grid,.appointment-date-row{gap:7px}.appointment-date-cell strong{width:36px;height:36px;font-size:1.05rem}.appointment-slot span{font-size:1rem}.quick-action-row{grid-template-columns:repeat(3,1fr);display:grid}.quick-action-row button{width:auto}}@media (width>=901px){.booking-progress{justify-self:center;max-width:calc(100% - 148px);transform:translate(-74px)}}@media (width<=760px){.mobile-preview-trigger{display:none}}@media (width<=640px){html,body,#root,.booking-page{width:100%;max-width:100vw;overflow-x:hidden}.booking-page .booking-topbar{grid-template-columns:1fr;gap:10px;width:100%;max-width:100vw;min-height:auto;padding:12px 14px}.booking-page .booking-logo{justify-self:start}.booking-page .top-action-cluster{grid-column:1;justify-content:center;width:100%}.booking-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-page .booking-progress{grid-column:1;grid-template-columns:repeat(2,minmax(0,1fr));justify-self:start;gap:8px;width:calc(100vw - 28px);min-width:0;max-width:calc(100vw - 28px);display:grid;overflow:visible;transform:none}.booking-page .progress-step{border:1px solid var(--booking-line);white-space:nowrap;background:#fff;border-radius:10px;justify-content:flex-start;gap:6px;min-width:0;min-height:48px;padding:.48rem .62rem;font-size:.75rem;line-height:1.1;overflow:hidden}.booking-page .progress-step span{flex:none;width:30px;height:30px;font-size:.78rem}.booking-page .active-progress-step{background:#eef7ff}.booking-page .booking-landing{width:100%;max-width:100%;padding-left:16px;padding-right:16px;overflow:hidden}.booking-page .booking-hero-panel{justify-self:start;width:calc(100vw - 32px);max-width:calc(100vw - 32px);margin:0}.booking-page .booking-hero-panel h1{width:min(100%,300px);max-width:300px;font-size:clamp(1.86rem,8.9vw,2.28rem);line-height:1.1}.booking-page .postcode-row,.account-actions{width:min(100%,300px)}.booking-page .account-actions{flex-direction:column;align-items:stretch}.booking-page .account-actions .outline-action{width:100%;min-width:0}}:root{--ux-panel-shadow:0 22px 58px #1f335217;--ux-soft-shadow:0 10px 30px #505a8c14;--ux-focus-ring:0 0 0 4px #1685ff21}.booking-page .booking-topbar{box-shadow:0 10px 34px #1f33520e}.booking-page .progress-step{min-height:44px;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s}.booking-page .progress-step:hover{transform:translateY(-1px)}.mobile-progress-toggle{display:none}.booking-workspace{grid-template-columns:minmax(0,1fr) minmax(300px,340px);gap:clamp(24px,3.5vw,42px);width:min(1160px,100% - 44px)}.booking-main-panel{min-height:auto;box-shadow:var(--ux-panel-shadow);border-color:#bed3eeb8;gap:20px}.booking-main-panel h2{max-width:660px;font-size:clamp(1.7rem,2.7vw,2.55rem)}.booking-main-panel h2:after{width:104px;height:5px;margin-top:10px}.booking-main-panel>.booking-validation-message,.booking-main-panel>.client-alert,.booking-main-panel>.booking-hold-message{order:50}.treatment-layout{grid-template-columns:minmax(280px,1fr) minmax(168px,190px);gap:clamp(20px,3vw,32px)}.treatment-card{min-height:0;padding:15px 16px}.treatment-card strong,.checkout-appointment-card strong,.summary-appointment-services strong{letter-spacing:0}.full-description-button{border-radius:10px}.duration-adjuster-list{gap:12px;position:sticky;top:110px}.duration-adjuster-row{grid-template-columns:30px 92px 30px;gap:9px}.duration-adjust-button{border-radius:12px;font-size:1.35rem}.duration-adjust-button:not(:disabled):hover{color:var(--booking-blue);background:#1685ff14}.duration-pill{border-radius:18px;min-height:68px}.duration-pill strong{font-size:1.25rem}.duration-pill span{font-size:.82rem}.duration-builder-hint,.client-area-helper,.checkout-intro-copy{color:#596981;max-width:680px;line-height:1.55}.time-calendar-controls{grid-template-columns:minmax(92px,.72fr) minmax(92px,.72fr) minmax(142px,1.15fr);gap:8px}.time-calendar-controls button,.time-calendar-controls label{border-radius:16px;align-content:center;gap:2px;min-height:58px;padding:.68rem .72rem}.time-calendar-controls span,.time-calendar-controls label span{color:#6a7890;font-size:.75rem;font-weight:850}.time-calendar-controls strong,.time-calendar-controls input{color:#071a3f;font-size:.92rem;font-weight:950}.time-month-control{position:relative}.booking-date-strip{scroll-snap-type:x proximity;gap:8px;padding:2px 2px 8px;display:flex;overflow-x:auto}.booking-date-strip::-webkit-scrollbar{height:6px}.booking-date-strip::-webkit-scrollbar-thumb{background:#6b7c9438;border-radius:999px}.date-card{scroll-snap-align:start;flex:0 0 76px;min-height:66px;padding:9px 8px}.selected-date-card{box-shadow:0 14px 34px #1685ff2e}.time-slot-grid{grid-template-columns:repeat(auto-fit,minmax(122px,1fr))}.time-slot-card{min-height:74px}.no-slot-card,.time-waitlist-card{box-shadow:var(--ux-soft-shadow);background:#fffc;border:1px solid #bed3eec7;border-radius:20px}.time-waitlist-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;display:grid}.time-waitlist-card strong{color:#071a3f;display:block}.time-waitlist-card span{color:#596981;margin-top:4px;line-height:1.45;display:block}.booking-footer-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;margin-top:4px;padding-top:14px}.booking-footer-actions .secondary-button,.booking-footer-actions button.secondary-button{color:#5330ce;background:#fff;border:1px solid #7b4cf42e}.booking-footer-actions button:first-child{margin-right:auto}.booking-footer-actions button:not(.secondary-button):last-child,.pay-button{box-shadow:0 16px 36px #1669e633}.booking-validation-message,.client-alert{color:#7a271a;background:#fff7f5;border:1px solid #e0524338;border-radius:14px;padding:12px 14px;font-weight:800;line-height:1.45}.booking-hold-message{color:#0d5fb8;background:#eef7ff;border:1px solid #1685ff33;border-radius:14px;padding:12px 14px;font-weight:800}.booking-summary-panel{border-color:#bed3eeb8;border-radius:24px;overflow:hidden;box-shadow:0 24px 58px #1f33521c}.booking-summary-body{gap:14px;padding:18px 18px 20px}.booking-summary-body h3{color:#071a3f;font-size:1.12rem;line-height:1.2}.summary-services{background:linear-gradient(145deg,#f5fafff5,#fffffff5);border:0;border-radius:18px;padding:14px}.summary-line,.summary-total{border-top-color:#d8e2f0db;align-items:center}.summary-line span{color:#66758d}.summary-line strong{text-align:right}.summary-needed-value{border-radius:9px;padding:3px 5px}.summary-needed-value:hover,.summary-needed-value:focus-visible{box-shadow:var(--ux-focus-ring);background:#fff1f0;text-decoration:none}.summary-appointment-card{background:linear-gradient(145deg,#fffffffa,#f1f8fff5);border-color:#1685ff24}.summary-current-draft{background:linear-gradient(145deg,#fffaf0,#fff)}.checkout-intro-copy{margin:-8px 0 0}.checkout-appointment-card{border-color:#bed3eecc;position:relative;overflow:hidden}.checkout-appointment-card:before{content:"";background:linear-gradient(#1685ff,#10b996);width:5px;position:absolute;inset:0 auto 0 0}.checkout-appointment-card>*{position:relative}.checkout-card-actions button{min-height:40px}.checkout-total-panel{z-index:4;border:1px solid #f8bd1138;position:sticky;bottom:14px;box-shadow:0 18px 44px #1f33521f}.payment-form{background:#ffffffb8;border:1px solid #d8e2f0b8;border-radius:20px;padding:16px}.admin-screen{max-width:1160px;margin-inline:auto}.admin-settings-section{box-shadow:var(--ux-soft-shadow);background:linear-gradient(145deg,#fffffffa,#f7fbfff0);border-radius:24px;padding:22px}.admin-enhancement-card,.admin-service-area-card{background:#ffffffdb;border-radius:18px}.admin-service-area-grid{gap:12px}.admin-muted-note{max-width:760px;line-height:1.55}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible{box-shadow:var(--ux-focus-ring);outline:none}@media (width<=900px){.booking-page .booking-topbar{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:12px 14px}.booking-page .booking-logo{min-width:0}.mobile-progress-toggle{color:#071a3f;text-align:left;background:linear-gradient(145deg,#fff,#f3f9ff);border:1px solid #bed3eedb;border-radius:16px;justify-self:stretch;min-height:48px;padding:.45rem .75rem;display:grid;box-shadow:0 10px 26px #1f335214}.mobile-progress-toggle:after{color:#1685ff;content:"Show";justify-self:end;margin-top:-22px;font-size:.8rem}.mobile-progress-open .mobile-progress-toggle:after{content:"Hide"}.mobile-progress-toggle span{color:#66758d;letter-spacing:.02em;text-transform:uppercase;font-size:.72rem;font-weight:850}.mobile-progress-toggle strong{font-size:1rem;font-weight:950}.booking-page .booking-progress,.booking-page .top-action-cluster{display:none}.booking-page .mobile-progress-open .booking-progress{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;max-width:none;display:grid;transform:none}.booking-page .mobile-progress-open .top-action-cluster{grid-column:1/-1;justify-content:center;width:100%;display:flex}.booking-page .mobile-progress-open .progress-step{white-space:nowrap;background:#ffffffeb;border:1px solid #d8e2f0eb;border-radius:14px;justify-content:flex-start;gap:8px;min-width:0;min-height:46px;padding:.48rem .62rem;font-size:.78rem;overflow:hidden}.booking-page .mobile-progress-open .progress-step span{flex:none;width:30px;height:30px;font-size:.78rem}.booking-page .mobile-progress-open .active-progress-step{background:#eef7ff}.booking-workspace{grid-template-columns:1fr;gap:18px;width:min(640px,100% - 28px);padding-top:24px}.booking-summary-panel{order:-1;position:static}.booking-summary-panel img{display:none}.treatment-layout{grid-template-columns:1fr}.duration-adjuster-list{gap:8px;padding-bottom:6px;display:flex;position:static;overflow-x:auto}.duration-adjuster-row{flex:none;grid-template-columns:28px 82px 28px;gap:6px}.time-calendar-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.time-calendar-controls button,.time-calendar-controls label{min-height:56px;padding-inline:.5rem}.time-calendar-controls span,.time-calendar-controls label span{font-size:.68rem}.time-calendar-controls strong,.time-calendar-controls input{font-size:.78rem}.time-waitlist-card{grid-template-columns:1fr}}@media (width<=640px){.booking-main-panel{border-radius:24px;padding:20px 16px}.booking-main-panel h2{font-size:clamp(1.6rem,7vw,2rem)}.booking-footer-actions{grid-template-columns:1fr;display:grid}.booking-footer-actions button,.booking-footer-actions .secondary-button,.pay-button{width:100%}.booking-footer-actions button:first-child{order:10;margin-right:0}.date-card{flex-basis:68px}.time-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.time-slot-card{min-height:70px;padding:10px}.checkout-appointment-card{grid-template-columns:1fr}.checkout-appointment-card b{justify-self:start}.checkout-total-panel{bottom:8px}.payment-form,.contact-form-grid{grid-template-columns:1fr}.admin-settings-section{padding:18px 14px}}:root{--wellness-bg:#fbf7ef;--wellness-surface:#fffdf8eb;--wellness-card:#fffdf8;--wellness-ink:#18231f;--wellness-muted:#65736c;--wellness-line:#9fb1a538;--wellness-sage:#7f9f8a;--wellness-sage-dark:#365947;--wellness-teal:#4fa99a;--wellness-gold:#d8a948;--wellness-navy:#10233f;--wellness-radius:24px;--wellness-shadow:0 18px 50px #25322c1a;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body,button,input,textarea,select{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}h1,h2,h3,.booking-logo strong,.booking-main-panel h2,.booking-hero-panel h1,.how-it-works strong,.premium-service-card strong{letter-spacing:-.01em;font-family:Manrope,Inter,system-ui,sans-serif}.booking-page{--booking-ink:var(--wellness-navy);--booking-muted:var(--wellness-muted);--booking-line:var(--wellness-line);background:var(--wellness-bg);color:var(--wellness-ink)}.booking-page .booking-topbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffdf8e0;border-bottom-color:#9fb1a52e}.booking-page .booking-logo span{background:linear-gradient(145deg,#395bca,#1c73e8)}.booking-page .progress-step,.mobile-progress-toggle{background:#fffdf8cc;border-color:#9fb1a538}.booking-page .active-progress-step,.booking-page .mobile-progress-open .active-progress-step{background:linear-gradient(145deg,#7f9f8a29,#fffdf8f0)}.booking-page .active-progress-step span{background:var(--wellness-sage-dark)}.booking-page .booking-landing,.booking-workspace:before{background:radial-gradient(circle at 10% 16%,#7f9f8a24,#0000 20rem),radial-gradient(circle at 92% 18%,#d8a94821,#0000 21rem),linear-gradient(#fbf7ef 0%,#fffdf8 56%,#fbf7ef 100%)}.booking-page .booking-hero-panel h1,.booking-main-panel h2{color:var(--wellness-navy);font-weight:800}.booking-page .booking-hero-panel h1 span{background:linear-gradient(90deg,#496dd6 0%,#9b6fd2 48%,#c98243 100%);-webkit-background-clip:text;background-clip:text}.booking-page .booking-hero-panel h1 span:after,.booking-main-panel h2:after{background:linear-gradient(90deg, var(--wellness-gold), #d88958)}.client-area-option,.treatment-card,.premium-service-card,.duration-pill,.date-card,.time-slot-card,.enhancement-card,.booking-summary-panel,.checkout-appointment-card,.admin-settings-section,.admin-service-area-card,.admin-enhancement-card{border-radius:var(--wellness-radius);background:var(--wellness-card);border-color:#9fb1a538;box-shadow:0 10px 30px #25322c12}.booking-main-panel,.booking-summary-panel{box-shadow:var(--wellness-shadow);background:#fffdf8e6}.booking-footer-actions button:not(.secondary-button):last-child,.postcode-row button,.pay-button,.ds-primary-button{color:#fff;background:linear-gradient(135deg, var(--wellness-sage-dark), #2f7f73);border:0;box-shadow:0 16px 36px #36594738}.booking-footer-actions button:not(.secondary-button):last-child:hover,.postcode-row button:hover,.pay-button:hover,.ds-primary-button:hover{background:linear-gradient(135deg,#2d4e3d,#267468);transform:translateY(-1px)}.booking-footer-actions .secondary-button,.booking-footer-actions button.secondary-button,.outline-action,.ds-secondary-button{color:var(--wellness-sage-dark);background:#fffdf8cc;border-color:#7f9f8a47}.ds-button{border-radius:999px;min-height:48px;padding:.75rem 1.1rem;font-weight:850}.ds-page-header,.ds-section-card{border:1px solid var(--wellness-line);border-radius:var(--wellness-radius);background:var(--wellness-card);box-shadow:var(--wellness-shadow)}.ds-page-header{padding:24px}.ds-page-header p,.ds-status-badge,.summary-appointment-heading span{letter-spacing:.04em;text-transform:uppercase}.ds-status-badge{border-radius:999px;align-items:center;width:fit-content;padding:.25rem .55rem;font-size:.75rem;font-weight:850;display:inline-flex}.ds-status-success{color:#266448;background:#7f9f8a2b}.ds-status-neutral{color:var(--wellness-muted);background:#65736c1a}.ds-empty-state{border-radius:var(--wellness-radius);color:var(--wellness-muted);text-align:center;border:1px dashed #7f9f8a59;justify-items:center;gap:8px;padding:28px;display:grid}.ds-step-indicator{gap:8px;display:flex;overflow-x:auto}.ds-step-indicator span{border:1px solid var(--wellness-line);color:var(--wellness-muted);background:var(--wellness-card);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:.5rem .8rem;display:inline-flex}.ds-step-indicator i{background:#7f9f8a24;border-radius:50%;place-items:center;width:24px;height:24px;font-style:normal;font-weight:850;display:grid}.ds-step-indicator .active-ds-step{color:var(--wellness-sage-dark);border-color:#7f9f8a61}.premium-service-card{cursor:pointer;gap:14px;padding:18px;transition:border-color .18s,box-shadow .18s,transform .18s,background .18s;display:grid}.premium-service-card:hover{border-color:#7f9f8a70;transform:translateY(-2px);box-shadow:0 18px 45px #25322c1f}.selected-premium-service-card{background:linear-gradient(145deg,#fafffafa,#fffdf8f5);border-color:#36594794;box-shadow:0 18px 48px #36594729}.premium-service-main{width:100%;color:inherit;box-shadow:none;text-align:left;background:0 0;border:0;grid-template-columns:48px 1fr;gap:14px;padding:0;display:grid}.premium-service-main:hover{background:0 0}.premium-service-icon{width:48px;height:48px;color:var(--wellness-sage-dark);background:linear-gradient(145deg,#7f9f8a2e,#d8a9481f);border-radius:16px;place-items:center;display:grid}.premium-service-copy{gap:6px;display:grid}.premium-service-copy strong{color:var(--wellness-navy);font-size:1.08rem;line-height:1.2}.premium-service-copy small{color:var(--wellness-muted);font-size:.94rem;line-height:1.45}.premium-service-meta{border-top:1px solid #9fb1a52e;justify-content:space-between;align-items:center;gap:12px;padding-top:13px;display:flex}.premium-service-meta span{color:var(--wellness-muted);align-items:center;gap:6px;font-size:.86rem;font-weight:750;display:inline-flex}.premium-service-meta b{color:var(--wellness-sage-dark);white-space:nowrap;font-weight:900}.premium-service-description{color:var(--wellness-sage-dark);box-shadow:none;background:#fffdf8bf;border:1px solid #7f9f8a38;border-radius:999px;justify-self:start;padding:.45rem .78rem;font-size:.83rem;font-weight:800}.duration-builder-hint{background:#fffdf8b8;border:1px solid #9fb1a52e;border-radius:18px;padding:12px 14px}.duration-builder-hint strong{color:var(--wellness-sage-dark)}.time-slot-card strong,.date-card strong{color:var(--wellness-navy)}.selected-time-slot,.selected-date-card,.selected-client-area,.selected-duration-pill{background:linear-gradient(145deg,#eef8f0fa,#fffdf8f2);border-color:#3659478a}.time-waitlist-card{background:linear-gradient(145deg,#fffdf8f0,#f4f9f6f0)}.summary-services,.summary-appointment-card,.checkout-appointment-card{background:linear-gradient(145deg,#fffdf8fa,#f6faf7eb)}.checkout-total-panel,.summary-grand-total{background:linear-gradient(90deg,#eef8f0fa,#fff8e7fa)}.booking-validation-message,.client-alert{color:#7a351c;background:#fff6ef}.booking-hold-message{color:var(--wellness-sage-dark);background:#eef8f0eb}@media (width<=760px){.booking-main-panel{background:#fffdf8f0}.premium-service-card{padding:16px}.premium-service-main{grid-template-columns:44px 1fr;gap:12px}.premium-service-icon{border-radius:14px;width:44px;height:44px}.premium-service-meta{flex-direction:column;align-items:flex-start;gap:8px}}:root{--boutique-ink:#071b3a;--boutique-muted:#5d6d83;--boutique-cream:#fffdf8;--boutique-blush:#fff4f2;--boutique-mist:#f4f8fb;--boutique-gold:#d9a441;--boutique-sage:#6f927f;--boutique-shadow:0 18px 58px #1c2a441a}.booking-page{color:var(--boutique-ink)}.booking-logo{letter-spacing:.01em}.booking-logo span{background:linear-gradient(145deg,#0f73e8,#3b8df5)}.booking-logo strong{text-transform:none}.boutique-kicker{color:var(--boutique-sage);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:850}.booking-hero-panel{background:radial-gradient(circle at 12% 12%,#6f927f14,#0000 28%),radial-gradient(circle at 88% 18%,#d9a4411a,#0000 25%),linear-gradient(#fffdf8fa,#faf7f4e6)}.booking-hero-panel h1{max-width:760px;color:var(--boutique-ink);letter-spacing:-.01em;margin-inline:auto;font-weight:780}.booking-hero-panel h1 span{background:linear-gradient(90deg,#6f4be8 0%,#c75aa8 48%,#ef8b3d 100%);-webkit-background-clip:text;background-clip:text}.area-picker-subtitle,.client-area-helper{color:var(--boutique-muted)}.client-area-option{background:#fffdf8d1;box-shadow:0 12px 34px #1c2a440f}.selected-client-area{background:linear-gradient(145deg,#f4f8fbfa,#fff8eefa)}.area-continue-row button,.booking-footer-actions button:not(.secondary-button){background:linear-gradient(135deg,#6f4be8,#0f73e8);box-shadow:0 18px 42px #405cc138}.outline-action,.secondary-button{background:#fffdf8e0}.therapist-profile-section{width:min(1120px,100% - 48px);box-shadow:var(--boutique-shadow);background:linear-gradient(145deg,#fffdf8f5,#f6faf7eb),radial-gradient(circle at 95% 10%,#d9a4411f,#0000 28%);border:1px solid #c7d5dfcc;border-radius:34px;grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(24px,5vw,54px);margin:30px auto 42px;padding:clamp(22px,4vw,38px);display:grid}.therapist-profile-image{background:var(--boutique-mist);border-radius:28px;min-height:310px;position:relative;overflow:hidden;box-shadow:0 20px 50px #1c2a441f}.therapist-profile-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 45%,#071b3a47);position:absolute;inset:0}.therapist-profile-image img{object-fit:cover;width:100%;height:100%;min-height:310px;transform:scale(1.03)}.therapist-profile-copy{gap:16px;display:grid}.therapist-profile-copy h2{color:var(--boutique-ink);letter-spacing:-.01em;margin:0;font-size:clamp(2rem,4vw,3.2rem);line-height:1.02}.therapist-profile-copy>p:not(.boutique-kicker){max-width:620px;color:var(--boutique-muted);margin:0;font-size:1.04rem;line-height:1.75}.therapist-credentials{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:10px;display:grid}.therapist-credentials span{background:#ffffffad;border:1px solid #c7d5dfc7;border-radius:20px;gap:6px;padding:15px;display:grid}.therapist-credentials strong{color:var(--boutique-ink);font-size:.94rem}.therapist-credentials small{color:var(--boutique-muted);font-size:.84rem;line-height:1.5}.how-it-works{margin-top:16px}.how-it-works article{background:linear-gradient(#fffdf8fa,#faf7f4f0);overflow:hidden;box-shadow:0 16px 46px #1c2a4417}.how-it-works article strong{color:var(--boutique-ink)}.how-it-works article small{color:var(--boutique-muted)}.booking-main-panel,.booking-summary-panel,.summary-appointment-card,.summary-current-draft{box-shadow:0 16px 52px #1c2a4414}.booking-main-panel h2{color:var(--boutique-ink);letter-spacing:-.01em;font-weight:780}.duration-builder-hint,.time-waitlist-card,.no-slot-card{color:var(--boutique-muted)}.booking-summary-body h3,.summary-line strong,.summary-services strong,.summary-appointment-services strong{color:var(--boutique-ink)}.summary-services>span,.summary-line span,.summary-appointment-meta,.summary-current-draft span{color:var(--boutique-muted)}@media (width<=900px){.therapist-profile-section{grid-template-columns:1fr;width:min(680px,100% - 32px)}.therapist-credentials{grid-template-columns:1fr}}@media (width<=760px){.booking-hero-panel h1{font-size:clamp(2rem,12vw,3.1rem)}.therapist-profile-section{border-radius:26px;margin:22px auto 30px;padding:18px}.therapist-profile-image,.therapist-profile-image img{min-height:220px}.therapist-profile-copy h2{font-size:2rem}html{scroll-padding-top:76px}body{background:linear-gradient(#fbfdff 0%,#fffdf8 46%,#f8fbf9 100%)}.booking-page{min-height:100svh;padding-bottom:calc(96px + env(safe-area-inset-bottom));overflow-x:hidden}.booking-page .booking-topbar{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf8f0;border-bottom:1px solid #c7d5dfb8;grid-template-columns:1fr auto;align-items:center;gap:10px;min-height:68px;padding:10px 14px;display:grid;position:sticky;top:0;box-shadow:0 10px 30px #1c2a4412}.booking-logo{gap:10px;min-width:0;display:inline-flex}.booking-logo span{border-radius:14px;width:44px;height:44px;font-size:.9rem}.booking-logo strong{text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-size:1.08rem;overflow:hidden}.mobile-progress-toggle{background:linear-gradient(145deg,#f4f8fbfa,#fff8eef5);border-radius:16px;min-height:48px;padding:8px 40px 8px 12px}.booking-page .mobile-progress-open .booking-progress{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:8px;max-height:none;margin-top:6px;display:grid}.booking-page .booking-progress{display:none}.booking-page .mobile-progress-open .booking-progress{display:grid}.booking-page .mobile-progress-open .progress-step{border-radius:16px;min-height:48px;padding:8px 10px;font-size:.86rem}.booking-page .mobile-progress-open .top-action-cluster{grid-column:1/-1;justify-content:stretch}.booking-page .mobile-progress-open .admin-link-button{width:100%;min-height:48px}.booking-status{z-index:35;border-radius:18px;width:calc(100% - 28px);margin:10px auto;padding:12px 14px;font-size:.92rem;line-height:1.35;position:sticky;top:76px;box-shadow:0 12px 30px #1c2a4414}.booking-landing{padding-top:0}.booking-hero-panel{border-radius:0 0 30px 30px;min-height:auto;padding:30px 18px 26px}.booking-hero-panel .boutique-kicker{font-size:.7rem}.booking-hero-panel h1{max-width:360px;margin-top:10px;font-size:clamp(2.1rem,11vw,3rem);line-height:1.04}.area-picker-subtitle{max-width:320px;margin-inline:auto;font-size:.98rem;line-height:1.48}.booking-hero-art{display:none}.booking-hero-art-left{bottom:-96px;left:-220px}.booking-hero-art-right{bottom:-92px;right:-220px}.client-area-picker{grid-template-columns:1fr 1fr;gap:10px;width:min(100%,380px);margin:18px auto 0}.client-area-option{border-radius:16px;min-height:54px;padding:10px 12px;font-size:.96rem;line-height:1.15}.client-area-helper{max-width:360px;margin:14px auto 0;font-size:.9rem;line-height:1.52}.area-continue-row{width:min(100%,380px);margin:18px auto 0;display:grid}.area-continue-row button,.account-actions button,.outline-action{border-radius:16px;min-height:50px}.account-actions{grid-template-columns:1fr 1fr;width:min(100%,380px);margin:12px auto 0;display:grid}.therapist-profile-section{gap:16px;width:calc(100% - 28px);margin:18px auto 24px;padding:16px}.therapist-profile-copy{gap:12px}.therapist-profile-copy h2{font-size:clamp(1.65rem,8vw,2rem);line-height:1.08}.therapist-profile-copy>p:not(.boutique-kicker){font-size:.96rem;line-height:1.58}.therapist-credentials{gap:9px}.therapist-credentials span{border-radius:16px;padding:12px}.how-it-works{gap:14px;width:calc(100% - 28px);margin:18px auto 28px}.booking-page .how-it-works article{border-radius:24px;grid-template-rows:118px auto auto;min-height:258px;padding:20px 18px 18px}.booking-page .how-card-illustration{width:min(158px,58vw);height:118px;transform:translateY(4px)}.booking-page .how-card-illustration,.booking-page .how-card-illustration *{max-width:100%}.booking-page .lounge-illustration{transform-origin:50%;transform:translate(-8px)translateY(4px)scale(.92)}.booking-page .how-it-works article>span{width:44px;height:44px;font-size:.95rem}.booking-page .how-it-works strong{font-size:1.2rem}.booking-page .how-it-works small{font-size:.92rem;line-height:1.45}.booking-workspace{width:100%;padding:14px 14px calc(110px + env(safe-area-inset-bottom));grid-template-columns:1fr;gap:14px;display:grid}.booking-main-panel,.booking-summary-panel{border-radius:24px;width:100%}.booking-main-panel{gap:16px;min-height:auto;padding:18px}.booking-main-panel h2{font-size:clamp(1.7rem,8vw,2.15rem);line-height:1.08}.treatment-layout{grid-template-columns:1fr;gap:14px}.treatment-list{gap:10px}.premium-service-card{border-radius:20px;min-height:96px;padding:14px}.premium-service-main{grid-template-columns:42px 1fr}.premium-service-copy strong{font-size:1rem}.premium-service-copy small{font-size:.88rem;line-height:1.35}.premium-service-description{min-height:44px;padding:.55rem .78rem}.duration-adjuster-list{scroll-snap-type:x proximity;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-bottom:3px;display:grid;overflow-x:visible}.duration-adjuster-row{scroll-snap-align:start;background:#fffdf8eb;border:1px solid #c7d5dfb8;border-radius:18px;grid-template-columns:44px minmax(0,1fr) 44px;gap:3px;min-width:0;padding:6px;display:grid}.duration-adjust-button{border-radius:12px;width:44px;min-width:44px;height:44px;min-height:44px;font-size:1.25rem}.duration-pill{background:0 0;border:0;min-height:44px;padding:5px 2px}.duration-pill strong{font-size:1.05rem}.duration-pill span{font-size:.68rem}.duration-builder-hint{font-size:.9rem;line-height:1.45}.time-calendar-controls{grid-template-columns:1fr 1fr 1.12fr;gap:8px;display:grid}.time-calendar-controls button,.time-month-control{border-radius:16px;min-height:58px;padding:9px 8px}.booking-date-strip{scroll-snap-type:x mandatory;gap:8px;margin-inline:-18px;padding:0 18px 4px;display:flex;overflow-x:auto}.date-card{scroll-snap-align:start;border-radius:16px;flex:0 0 72px;min-height:68px;padding:9px 8px}.date-card span{font-size:.75rem}.date-card strong{font-size:.95rem}.time-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.time-slot-card{border-radius:18px;min-height:78px;padding:14px}.time-slot-card strong{font-size:1.22rem}.time-waitlist-card{gap:12px;padding:14px;display:grid}.time-waitlist-card .outline-action{width:100%}.enhancement-card{border-radius:18px;min-height:72px;padding:13px}.enhancement-card input,.consent-row input{width:22px;height:22px}.contact-form-grid{grid-template-columns:1fr;gap:12px}.contact-form-grid label,.contact-form-grid .wide-field{grid-column:auto}.contact-form-grid input,.contact-form-grid textarea,.waitlist-form input{border-radius:16px;min-height:52px;font-size:1rem}.consent-row{align-items:center;min-height:48px;padding:6px 0}.booking-footer-actions{bottom:calc(10px + env(safe-area-inset-bottom));z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf8f0;border:1px solid #c7d5dfb8;border-radius:22px;grid-template-columns:1fr;gap:8px;margin:4px -4px -4px;padding:10px;display:grid;position:sticky;box-shadow:0 18px 44px #1c2a442e}.booking-footer-actions button,.booking-footer-actions .secondary-button{border-radius:16px;width:100%;min-height:50px;font-size:.98rem}.booking-footer-actions button:not(.secondary-button):last-child{min-height:54px;font-size:1rem}.booking-footer-actions:has(button:nth-child(3)){grid-template-columns:1fr 1fr}.booking-footer-actions:has(button:nth-child(3)) button:last-child{grid-column:1/-1}.booking-validation-message,.client-alert,.booking-hold-message{border-radius:16px;padding:12px 14px;font-size:.92rem;line-height:1.4}.booking-summary-panel{order:2;overflow:hidden}.booking-summary-panel img{height:120px}.booking-summary-body{padding:16px}.booking-summary-body h3{font-size:1.05rem}.summary-services,.summary-appointment-card,.summary-current-draft{border-radius:18px;padding:12px}.summary-line{min-height:42px}.summary-needed-value{border-radius:14px;min-height:44px;padding:0 10px}.checkout-appointment-card{border-radius:20px;padding:14px}.checkout-card-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.checkout-card-actions button{min-height:44px}}@media (width<=390px){.client-area-picker,.time-slot-grid,.account-actions,.time-calendar-controls{grid-template-columns:1fr}.duration-adjuster-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.booking-page .booking-topbar{border-bottom-color:#e1d6c4d1;grid-template-columns:minmax(0,1fr) minmax(132px,auto)}.booking-page .booking-logo{min-width:0}.booking-page .booking-logo span{border-radius:13px;width:40px;height:40px}.booking-page .booking-logo strong{max-width:118px;font-size:1rem}.mobile-progress-toggle{background:linear-gradient(145deg,#fffffffa,#fff9eef5);border-color:#d3c4acb8;align-content:center;min-height:46px;display:grid}.booking-page .booking-progress,.booking-page .top-action-cluster{display:none}.booking-page .mobile-progress-open .booking-progress{grid-template-columns:1fr;gap:7px;max-height:260px;padding:4px 2px 2px;display:grid;overflow-y:auto}.booking-page .mobile-progress-open .progress-step{min-height:44px;box-shadow:none;background:#ffffffe6;border-radius:14px}.booking-page .mobile-progress-open .active-progress-step{background:linear-gradient(145deg,#fff8ed,#eef7ff);border-color:#ad875b57}.booking-page .mobile-progress-open .top-action-cluster{grid-column:1/-1;margin-top:2px;display:grid}.booking-page .mobile-progress-open .admin-link-button{border-radius:15px;justify-content:center;min-height:46px}.booking-page .booking-workspace{padding-top:16px}.booking-main-panel,.booking-summary-panel{border-color:#ded3c2c7;box-shadow:0 16px 42px #1f335213}.booking-footer-actions{grid-template-columns:1fr}.booking-footer-actions:has(button:nth-child(3)){grid-template-columns:1fr}.booking-footer-actions:has(button:nth-child(3)) button:last-child{grid-column:auto}}.analytics-dashboard{gap:18px;display:grid}.analytics-hero-heading{background:radial-gradient(circle at 100% 0,#ffe2b26b,#0000 34%),linear-gradient(145deg,#fffffffa,#fffaf1f0);border:1px solid #dacfbeb8;border-radius:28px;align-items:stretch;padding:20px;box-shadow:0 18px 46px #1f335214}.analytics-hero-heading span{color:#617089;max-width:620px;line-height:1.5;display:block}.analytics-export-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.analytics-export-actions button,.analytics-segmented-control button{color:#12335c;background:#ffffffdb;border:1px solid #cdd9e8db;border-radius:14px;min-height:42px;padding:0 14px;font-weight:850}.analytics-export-actions button:hover,.analytics-segmented-control button:hover{transform:translateY(-1px);box-shadow:0 10px 24px #1f335214}.analytics-card-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.operations-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.analytics-metric-card,.analytics-panel{background:#ffffffeb;border:1px solid #d9e2eed1;border-radius:24px;box-shadow:0 10px 30px #505a8c14}.analytics-metric-card{gap:8px;min-height:132px;padding:18px;display:grid}.analytics-metric-card span,.analytics-panel-heading p,.analytics-table-row span,.booking-health-grid span,.client-analytics-grid span,.tax-estimate-list dt{color:#64738b;letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:900}.analytics-metric-card strong{color:#071a3f;font-size:clamp(1.4rem,2.2vw,2rem);line-height:1}.analytics-metric-card small{color:#66758d;line-height:1.35}.positive-trend{color:#0b8f65!important}.negative-trend{color:#c53030!important}.analytics-two-column{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;display:grid}.analytics-panel{padding:18px}.analytics-panel-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.analytics-panel-heading h3{color:#071a3f;margin:2px 0 0;font-size:1.28rem}.analytics-panel-heading select{color:#12335c;background:#fff;border:1px solid #cdd9e8db;border-radius:14px;min-height:42px;padding:0 12px;font-weight:800}.booking-health-grid,.client-analytics-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.client-analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-health-grid div,.client-analytics-grid div{background:linear-gradient(145deg,#f8fbfff5,#fffaf2d1);border-radius:18px;gap:6px;padding:14px;display:grid}.booking-health-grid strong,.client-analytics-grid strong{color:#071a3f;font-size:1.5rem}.rate-strip{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.rate-strip span{color:#53647b;background:#f5f8fb;border-radius:999px;padding:8px 11px;font-size:.86rem}.rate-strip b{color:#071a3f}.health-score-panel{background:radial-gradient(circle at 100%,#19b98d29,#0000 42%),linear-gradient(145deg,#fff,#fff8ed);grid-template-columns:1fr auto;align-items:center;display:grid;overflow:hidden}.health-score-panel p{color:#64738b;letter-spacing:.04em;text-transform:uppercase;margin:0;font-weight:900}.health-score-panel strong{color:#071a3f;margin-top:8px;font-size:3rem;line-height:1;display:block}.health-score-panel span{color:#0b8f65;font-weight:900}.health-score-ring{aspect-ratio:1;background:radial-gradient(circle, white 54%, transparent 56%), conic-gradient(#19b98d var(--score), #e8edf3 0);border-radius:999px;width:108px;box-shadow:inset 0 0 0 1px #cdd9e8db}.analytics-segmented-control{flex-wrap:wrap;gap:8px;display:flex}.analytics-segmented-control .active-analytics-filter{color:#1165c7;background:#eaf4ff;border-color:#1470dc80}.revenue-bar-chart{gap:10px;display:grid}.revenue-bar-row{grid-template-columns:84px minmax(0,1fr) 88px;align-items:center;gap:10px;display:grid}.revenue-bar-row span,.revenue-bar-row strong{color:#12335c;font-size:.9rem;font-weight:850}.revenue-bar-row div{background:#edf2f7;border-radius:999px;height:14px;overflow:hidden}.revenue-bar-row i{border-radius:inherit;background:linear-gradient(90deg,#3a7bff,#19b98d,#f2bf42);height:100%;display:block}.analytics-table{gap:10px;display:grid}.analytics-table-row{background:#f8fbffc7;border:1px solid #d9e2eeb8;border-radius:18px;grid-template-columns:minmax(0,1.4fr) auto auto auto;align-items:center;gap:10px;padding:12px;display:grid}.compact-client-table .analytics-table-row{grid-template-columns:minmax(0,1.5fr) auto auto}.analytics-table-row strong{color:#071a3f;text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.analytics-table-row b{color:#071a3f}.analytics-table-row small{color:#617089;font-weight:800}.new-returning-chart{background:#edf2f7;border-radius:999px;min-height:42px;margin-top:14px;display:flex;overflow:hidden}.new-returning-chart span,.new-returning-chart b{color:#071a3f;place-items:center;min-width:58px;font-size:.82rem;font-weight:900;display:grid}.new-returning-chart span{background:#dbeafe}.new-returning-chart b{background:#c8f3df}.utilisation-green{color:#0b8f65!important}.utilisation-amber{color:#b7791f!important}.utilisation-red{color:#c53030!important}.tax-estimate-list{gap:10px;margin:0;display:grid}.tax-estimate-list div{border-bottom:1px solid #d9e2eeb8;justify-content:space-between;gap:12px;padding-bottom:8px;display:flex}.tax-estimate-list dd{color:#071a3f;margin:0;font-weight:900}.tax-panel p{color:#7a5b22;margin:12px 0 0;font-size:.9rem}.insight-list,.future-feature-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.insight-list article,.future-feature-list span{color:#12335c;background:linear-gradient(145deg,#f8fbff,#fffaf0);border-radius:18px;padding:14px;font-weight:800;line-height:1.45}@media (width<=980px){.analytics-card-grid,.operations-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-two-column{grid-template-columns:1fr}}@media (width<=640px){.admin-bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.analytics-dashboard{gap:14px}.analytics-hero-heading,.analytics-panel,.analytics-metric-card{border-radius:22px}.analytics-export-actions{justify-content:stretch}.analytics-export-actions button{flex:100%}.analytics-card-grid,.operations-card-grid,.booking-health-grid,.client-analytics-grid,.insight-list,.future-feature-list{grid-template-columns:1fr}.analytics-panel-heading{display:grid}.analytics-segmented-control{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.revenue-bar-row{grid-template-columns:72px minmax(0,1fr)}.revenue-bar-row strong{grid-column:2}.analytics-table-row,.compact-client-table .analytics-table-row{grid-template-columns:1fr auto}.analytics-table-row span,.analytics-table-row small{grid-column:1/-1}}.admin-settings-dashboard{gap:24px;padding:0;display:grid}.admin-settings-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:16px;display:grid}.admin-settings-card{text-align:left;cursor:pointer;background:#fffffff2;border:1px solid #ded3bf99;border-radius:20px;flex-direction:column;align-items:flex-start;gap:12px;min-height:140px;padding:24px;transition:all .2s;display:flex;position:relative}.admin-settings-card:hover{border-color:var(--sage);background:#fff;transform:translateY(-2px);box-shadow:0 8px 32px #6f8f7226}.admin-settings-card:active{transform:translateY(0)}.admin-settings-icon{margin-bottom:4px;font-size:2rem;line-height:1}.admin-settings-card h3{color:var(--ink);margin:0;font-size:1.1rem;font-weight:600;line-height:1.3}.admin-settings-card p{color:var(--muted);flex-grow:1;margin:0;font-size:.9rem;line-height:1.4}.admin-settings-arrow{color:var(--muted);font-size:1.2rem;font-weight:600;transition:all .2s;position:absolute;top:24px;right:24px}.admin-settings-card:hover .admin-settings-arrow{color:var(--sage);transform:translate(4px)}.admin-back-button{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:12px;margin-bottom:8px;padding:8px 16px;font-size:.9rem;font-weight:500;transition:all .2s}.admin-back-button:hover{border-color:var(--sage);color:var(--sage);background:#6f8f721a}.admin-settings-content{margin-top:24px}.admin-nav{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.admin-nav-tabs{gap:8px;display:flex}.admin-nav-tab{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:16px;align-items:center;gap:8px;padding:12px 20px;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.admin-nav-tab:hover{color:var(--sage);background:#6f8f721a}.active-admin-tab{border-color:var(--sage-dark);background:var(--sage)!important;color:#fff!important}.admin-tab-icon{font-size:1.1rem;line-height:1}.admin-workspace{background:var(--paper);min-height:100vh}@media (width<=768px){.admin-settings-grid{grid-template-columns:1fr;gap:16px}.admin-settings-card{min-height:120px;padding:20px}.admin-nav{padding:12px 16px}.admin-nav-tabs{gap:4px}.admin-nav-tab{padding:10px 16px;font-size:.9rem}.admin-tab-icon{display:none}}@media (width<=480px){.admin-settings-grid{grid-template-columns:1fr;gap:12px}.admin-settings-card{min-height:100px;padding:16px}.admin-settings-card h3{font-size:1rem}.admin-settings-card p{font-size:.85rem}.admin-nav{flex-direction:column;align-items:stretch;gap:12px}.admin-nav-tabs{flex-wrap:wrap;justify-content:center}.admin-nav-tab{flex:1;justify-content:center;min-width:0}}
