@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;font-stretch:75% 100%;src:url(/assets/bricolage-grotesque-vietnamese-wdth-normal-BKE08zty.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;font-stretch:75% 100%;src:url(/assets/bricolage-grotesque-latin-ext-wdth-normal-DoS1gVTC.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;font-stretch:75% 100%;src:url(/assets/bricolage-grotesque-latin-wdth-normal-Dtb2a5nO.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#f5f2f8;--paper-2:#e9e3ef;--surface:#fbfafd;--ink:#22112b;--ink-soft:#5a4866;--lacquer:#c81e68;--lacquer-deep:#9e1252;--glass:#cde7e0;--glass-deep:#1d6b5e;--line:color-mix(in oklab, var(--ink) 20%, transparent);--font:"Bricolage Grotesque Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--step--1:clamp(.8125rem, .79rem + .1vw, .875rem);--step-0:clamp(1rem, .98rem + .1vw, 1.0625rem);--step-1:clamp(1.25rem, 1.15rem + .5vw, 1.5rem);--step-2:clamp(1.625rem, 1.4rem + 1.1vw, 2.25rem);--step-3:clamp(2.25rem, 1.8rem + 2.2vw, 3.5rem);--step-4:clamp(3.25rem, 2rem + 6vw, 7rem);--gutter:clamp(1rem, 4vw, 2.5rem);--max:76rem;--measure:62ch;--radius-s:8px;--radius-m:14px;--radius-pill:999px}*,:before,:after{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--paper);color:var(--ink);font-family:var(--font);font-size:var(--step-0);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-weight:420;font-stretch:100%;line-height:1.55}h1,h2,h3{letter-spacing:-.01em;text-wrap:balance;margin:0;font-weight:800;font-stretch:75%;line-height:.98}h1{font-size:var(--step-4)}h2{font-size:var(--step-3)}h3{font-size:var(--step-1);line-height:1.1}p{max-width:var(--measure);text-wrap:pretty;margin:0}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:.08em}ul,ol{margin:0;padding:0;list-style:none}dl,dd{margin:0}button,input{font:inherit}:focus-visible{outline:3px solid var(--lacquer);outline-offset:3px;border-radius:2px}main:focus{outline:none}.skip-link{z-index:100;border-radius:var(--radius-pill);background:var(--ink);color:var(--paper);padding:.6rem 1rem;transition:top .15s;position:absolute;top:-4rem;left:1rem}.skip-link:focus{top:1rem}.container{width:min(100% - 2 * var(--gutter), var(--max));margin-inline:auto}.button{border:2px solid var(--ink);border-radius:var(--radius-pill);min-height:2.875rem;color:var(--ink);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1.4rem;font-weight:650;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.button:hover{background:var(--ink);color:var(--paper)}.button--primary{border-color:var(--lacquer);background:var(--lacquer);color:#fff}.button--primary:hover{border-color:var(--lacquer-deep);background:var(--lacquer-deep);color:#fff}.button--small{min-height:2.5rem;font-size:var(--step--1);padding:.35rem 1.1rem}.button:disabled{opacity:.45;cursor:not-allowed}.button:disabled:hover{color:var(--ink);background:0 0}.button--primary:disabled:hover{border-color:var(--lacquer);background:var(--lacquer);color:#fff}.link-button{color:inherit;text-underline-offset:.2em;cursor:pointer;background:0 0;border:0;justify-self:start;padding:.5rem 0;font-weight:560;text-decoration:underline}.lead{max-width:38ch;color:var(--ink-soft);font-size:var(--step-1);line-height:1.4}.demo-note{border-left:3px solid var(--glass-deep);color:var(--ink-soft);font-size:var(--step--1);margin-block:1rem;padding-left:.8rem}.empty{color:var(--ink-soft);padding-block:1.5rem}.notice{border-left:4px solid var(--glass-deep);border-radius:0 var(--radius-s) var(--radius-s) 0;background:var(--glass);margin-block:1rem;padding:.9rem 1.1rem}.notice--error{border-left-color:var(--lacquer-deep);background:#fbe4ec}.notice__title{font-weight:700}.form{gap:1.25rem;max-width:26rem;display:grid}.field{gap:.4rem;display:grid}.field label{font-weight:600}.field input{border:1.5px solid var(--ink-soft);border-radius:var(--radius-s);background:var(--surface);min-height:2.875rem;color:inherit;padding:.6rem .9rem}.field input[aria-invalid=true]{border-color:var(--lacquer-deep);border-width:2px}.field__error{color:var(--lacquer-deep);font-size:var(--step--1);font-weight:560}.choice{border:0;min-width:0;margin:0 0 1.5rem;padding:0}.choice legend{margin-bottom:.5rem;padding:0;font-weight:650}.choice__hint{color:var(--ink-soft);font-size:var(--step--1);margin-bottom:.75rem}.choice__options{gap:.5rem;display:grid}.choice--chips .choice__options{flex-wrap:wrap;display:flex}.choice__option{display:block;position:relative}.choice__option input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.choice__face{border:1.5px solid var(--line);background:var(--surface);gap:.15rem;transition:background-color .15s,color .15s;display:grid}.choice--rows .choice__face{border-radius:var(--radius-m);padding:.85rem 1.1rem}.choice--chips .choice__face{border-radius:var(--radius-pill);padding:.45rem 1rem;font-weight:560}.choice__face span{color:var(--ink-soft);font-size:var(--step--1)}.choice__option input:checked+.choice__face{border-color:var(--ink);background:var(--ink);color:var(--paper)}.choice__option input:checked+.choice__face span{color:var(--paper-2)}.choice__option input:focus-visible+.choice__face{outline:3px solid var(--lacquer);outline-offset:3px}.choice__option input:disabled+.choice__face{opacity:.45}.assistant__sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.assistant__toggle{right:max(1rem, env(safe-area-inset-right));bottom:max(1rem, env(safe-area-inset-bottom));z-index:60;border-radius:var(--radius-pill);background:var(--lacquer);color:#fff;min-height:48px;font:inherit;box-shadow:0 8px 24px color-mix(in oklab, var(--ink) 30%, transparent);cursor:pointer;border:0;align-items:center;gap:.5rem;padding:.7rem 1.1rem;font-weight:700;display:inline-flex;position:fixed}.assistant__toggle:hover{background:var(--lacquer-deep)}.assistant__toggle:focus-visible,.assistant__chip:focus-visible,.assistant__close:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.assistant__panel{right:max(1rem, env(safe-area-inset-right));bottom:calc(max(1rem, env(safe-area-inset-bottom)) + 64px);z-index:61;border:1px solid var(--line);border-radius:var(--radius-m);background:var(--surface);width:min(390px,100vw - 2rem);height:min(620px,100dvh - 7rem);color:var(--ink);box-shadow:0 18px 48px color-mix(in oklab, var(--ink) 30%, transparent);flex-direction:column;display:flex;position:fixed;overflow:hidden}.assistant__header{background:var(--ink);color:#fff;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.assistant__header h2{font-size:var(--step-0);margin:0}.assistant__close{min-width:44px;min-height:44px;color:inherit;cursor:pointer;background:0 0;border:0;font-size:1.75rem;line-height:1}.assistant__log{overscroll-behavior:contain;flex:1;margin:0;padding:1rem;list-style:none;overflow-y:auto}.assistant__turn{border-radius:var(--radius-s);background:var(--paper);max-width:92%;font-size:var(--step--1);overflow-wrap:anywhere;margin:0 0 .75rem;padding:.7rem .85rem}.assistant__turn p{margin:0 0 .4rem}.assistant__turn p:last-child{margin-bottom:0}.assistant__turn--user{background:var(--glass);margin-left:auto}.assistant__turn--busy{color:var(--ink-soft)}.assistant__cards,.assistant__links{gap:.4rem;margin:.5rem 0 0;padding:0;list-style:none;display:grid}.assistant__cards li{border-radius:var(--radius-s);background:var(--surface);gap:.1rem;padding:.5rem .6rem;display:grid}.assistant__links a{color:var(--lacquer-deep);font-weight:600}.assistant__options{border-top:1px solid var(--line);flex-wrap:wrap;gap:.4rem;max-height:34%;padding:.5rem 1rem;display:flex;overflow-y:auto}.assistant__chip{border:1px solid var(--lacquer);border-radius:var(--radius-pill);background:var(--surface);min-height:40px;color:var(--lacquer-deep);font:inherit;font-size:var(--step--1);cursor:pointer;padding:.4rem .8rem}.assistant__chip:disabled{opacity:.5;cursor:wait}.assistant__error{color:var(--lacquer-deep);font-size:var(--step--1);margin:0;padding:.4rem 1rem}.assistant__form{border-top:1px solid var(--line);gap:.5rem;padding:.6rem 1rem .3rem;display:flex}.assistant__form input{border:1px solid var(--line);border-radius:var(--radius-s);min-width:0;min-height:44px;font:inherit;font-size:max(16px, var(--step-0));flex:1;padding:.5rem .75rem}.assistant__privacy{color:var(--ink-soft);margin:0;padding:0 1rem .6rem;font-size:.75rem}@media (max-width:600px){.assistant__panel{width:100%;height:100dvh;padding-bottom:env(safe-area-inset-bottom);border:0;border-radius:0;inset:0}.assistant__panel~.assistant__toggle{display:none}}@media (prefers-reduced-motion:no-preference){.assistant__panel{animation:.16s ease-out assistant-in}@keyframes assistant-in{0%{opacity:0;transform:translateY(8px)}}}.site-header{z-index:20;border-bottom:1px solid var(--line);background:color-mix(in oklab, var(--paper) 94%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0}.site-header__bar{align-items:center;gap:1rem;min-height:4.25rem;display:flex;position:relative}.wordmark{color:var(--ink);align-items:baseline;gap:.35rem;margin-right:auto;text-decoration:none;display:inline-flex}.wordmark__main{letter-spacing:-.02em;font-size:1.75rem;font-weight:800;font-stretch:75%;line-height:1}.wordmark__sub{letter-spacing:.02em;font-size:1rem;font-weight:300}.site-nav{padding:1rem var(--gutter) 1.5rem;border-bottom:1px solid var(--line);background:var(--paper);display:none;position:absolute;inset:100% 0 auto}.site-nav[data-open=true]{display:block}.site-nav ul{gap:.25rem;display:grid}.site-nav a:not(.button){padding:.65rem 0;font-weight:560;text-decoration:none;display:block}.site-nav a[aria-current=page]{color:var(--lacquer-deep);text-underline-offset:.35em;text-decoration:underline;text-decoration-thickness:.15em}.site-nav__cta{margin-top:.75rem}.cart-link{align-items:center;gap:.5rem;font-weight:560;text-decoration:none;display:inline-flex}.cart-link__count{border-radius:var(--radius-pill);background:var(--ink);min-width:1.5rem;height:1.5rem;color:var(--paper);font-size:var(--step--1);place-items:center;padding-inline:.35rem;font-weight:700;display:inline-grid}.menu-toggle{border:2px solid var(--ink);border-radius:var(--radius-pill);min-height:2.5rem;color:var(--ink);cursor:pointer;background:0 0;padding:.3rem 1rem;font-weight:650}@media (min-width:56rem){.menu-toggle{display:none}.site-nav{background:0 0;border:0;padding:0;display:block;position:static}.site-nav ul{align-items:center;gap:1.5rem;display:flex}.site-nav a:not(.button){padding:.4rem 0}.site-nav__cta{margin:0 0 0 .5rem}}.site-footer{background:var(--ink);color:var(--paper);margin-top:clamp(3rem,8vw,6rem);padding-top:clamp(2.5rem,5vw,4rem)}.site-footer__inner{gap:2rem;display:grid}@media (min-width:48rem){.site-footer__inner{grid-template-columns:1.4fr 1fr 1fr}}.site-footer h2{font-size:var(--step-1);margin-bottom:.75rem}.site-footer ul{gap:.4rem;display:grid}.wordmark--footer{color:var(--paper);margin-bottom:.75rem}.site-footer__legal{max-width:none;color:color-mix(in oklab, var(--paper) 72%, transparent);font-size:var(--step--1);padding-block:2rem}.page-intro{gap:1rem;padding-block:clamp(2rem,5vw,4rem) clamp(.5rem,2vw,1rem);display:grid}.page-intro h1{font-size:clamp(2.75rem,1.8rem + 4vw,5rem)}.section{padding-block:clamp(2.5rem,6vw,5rem)}.section__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1.5rem;margin-bottom:1.5rem;display:flex}.section__head h2,.section>h2{font-size:var(--step-3)}.section>h2{margin-bottom:1.5rem}.tress__hair,.person__swatch,.product__swatch{background:linear-gradient(to bottom, #ffffff38, #fff0 30%, #00000024), repeating-linear-gradient(90deg, #ffffff1a 0 1px, transparent 1px 5px), var(--tone);color:var(--on-tone)}.hero{align-items:end;gap:2.5rem;padding-block:clamp(2rem,6vw,5rem);display:grid}@media (min-width:56rem){.hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,5vw,5rem)}}.hero__copy{align-content:end;gap:1.5rem;display:grid}.hero__actions{flex-wrap:wrap;gap:.75rem;display:flex}.tresses{align-items:flex-start;gap:clamp(.3rem,1vw,.7rem);height:clamp(17rem,48vw,31rem);padding-top:1.1rem;display:flex;position:relative;overflow:hidden}.tresses:before{content:"";border-radius:var(--radius-pill);background:var(--ink);height:.35rem;position:absolute;inset:.35rem 0 auto}.tress{min-width:0;height:calc(var(--len) * 1%);flex-direction:column;flex:1 1 0;display:flex}.tress__code{background:var(--ink);height:1.7rem;color:var(--paper);font-size:var(--step--1);text-align:center;border-radius:.3rem .3rem 0 0;font-weight:700;font-stretch:75%;line-height:1.7rem;display:block}.tress__hair{border-radius:0 0 999px 999px/0 0 1.4rem 1.4rem;flex:1;justify-content:center;align-items:flex-end;padding:.6rem .15rem .9rem;display:flex}.tress__name{max-height:100%;font-size:var(--step--1);text-overflow:ellipsis;white-space:nowrap;writing-mode:vertical-rl;font-weight:560;overflow:hidden;transform:rotate(180deg)}@media (prefers-reduced-motion:no-preference){.tress{animation:.9s cubic-bezier(.2,.8,.2,1) both tress-reveal;animation-delay:calc(var(--i) * 70ms)}}@keyframes tress-reveal{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}.jump-links ul{flex-wrap:wrap;gap:.5rem;display:flex}.jump-links a{border:1.5px solid var(--line);border-radius:var(--radius-pill);padding:.4rem 1rem;font-weight:560;text-decoration:none;display:inline-block}.jump-links a:hover{border-color:var(--ink)}.menu-section{margin-top:clamp(2.5rem,6vw,4rem);scroll-margin-top:5.5rem}.menu-section h2{margin-bottom:1rem}.menu{border-top:2px solid var(--ink)}.menu-row{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:.25rem 1rem;padding-block:1.1rem;display:grid}.menu-row__main{grid-column:1/-1}.menu-row h3{font-stretch:85%}.menu-row__main p,.menu-row__duration{color:var(--ink-soft);font-size:var(--step--1)}.menu-row__price{font-size:var(--step-1);justify-self:end;font-weight:750;font-stretch:85%}.menu-row .button{grid-column:1/-1;justify-self:start;margin-top:.5rem}@media (min-width:44rem){.menu-row{grid-template-columns:minmax(0,1fr) 6rem 7.5rem auto;gap:1rem 1.5rem}.menu-row__main{grid-column:auto}.menu-row .button{grid-column:auto;margin-top:0}}.home-locations{gap:2rem;display:grid}.home-locations li{border-top:2px solid var(--ink);align-content:start;gap:.5rem;padding-top:1rem;display:grid}@media (min-width:44rem){.home-locations{grid-template-columns:1fr 1fr}}.band{background:var(--glass)}.band__inner{justify-items:start;gap:1rem;padding-block:clamp(2.5rem,6vw,4.5rem);display:grid}.people{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:2.5rem 1.5rem;display:grid}.person{align-content:start;justify-items:start;gap:.35rem;display:grid}.person__swatch{aspect-ratio:4/5;border-radius:.5rem .5rem 50% 50%/.5rem .5rem 22% 22%;justify-self:stretch;align-items:flex-end;margin-bottom:.5rem;padding:1rem;font-size:clamp(3.5rem,8vw,5.5rem);font-weight:800;font-stretch:75%;line-height:.9;display:flex}.person h2{font-size:var(--step-1);font-stretch:85%}.person__role{font-weight:650}.person__places{color:var(--ink-soft);font-size:var(--step--1);margin-bottom:.5rem}.locations{gap:3rem;display:grid}.location{border-top:2px solid var(--ink);align-content:start;justify-items:start;gap:1rem;padding-top:1.25rem;display:grid}@media (min-width:52rem){.locations{grid-template-columns:1fr 1fr;gap:3rem 4rem}}.hours{justify-self:stretch;gap:.25rem;max-width:24rem;display:grid}.hours__row{border-bottom:1px solid var(--line);justify-content:space-between;gap:1rem;padding-block:.4rem;display:flex}.hours__row dd{font-weight:650}.shop-tools{gap:1rem;margin-top:1.5rem;display:grid}@media (min-width:48rem){.shop-tools{grid-template-columns:minmax(0,22rem) 1fr;align-items:end;gap:2rem}.shop-tools .choice{margin-bottom:0}}.shop-status,.shop-added{color:var(--ink-soft);font-size:var(--step--1);margin-bottom:.75rem}.shop-added{color:var(--ink);font-weight:560}.products{grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));gap:2.25rem 1.25rem;display:grid}.product{flex-direction:column;align-items:flex-start;gap:.4rem;display:flex}.product__swatch{aspect-ratio:1;border-radius:1.4rem 1.4rem .5rem .5rem;place-self:stretch stretch;align-items:flex-end;margin-bottom:.4rem;padding:1rem;font-size:clamp(1.75rem,3vw,2.25rem);font-weight:800;font-stretch:75%;line-height:.95;display:flex}.product h2{font-size:var(--step-0);font-weight:650;font-stretch:100%;line-height:1.25}.product p{color:var(--ink-soft);font-size:var(--step--1)}.product .product__price{color:var(--ink);font-size:var(--step-0);font-weight:750}.product .button{margin-top:auto}.product .product__price{margin-bottom:.4rem}.product__image{aspect-ratio:1;background:var(--paper-2);object-fit:cover;border-radius:1.4rem 1.4rem .5rem .5rem;align-self:stretch;margin-bottom:.4rem}.product h2 a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}.product-detail{align-items:start;gap:1.5rem 3rem;display:grid}.product-detail .product__swatch,.product-detail .product__image{max-width:28rem}.product-detail__info{flex-direction:column;align-items:flex-start;gap:1rem;display:flex}.product-detail .product__price{font-size:var(--step-1);font-weight:750}@media (min-width:48rem){.product-detail{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.cart{align-items:start;gap:2rem;display:grid}@media (min-width:56rem){.cart{grid-template-columns:minmax(0,1fr) 22rem;gap:3rem}}.cart__lines{border-top:2px solid var(--ink)}.cart-line{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:.5rem 1rem;padding-block:1rem;display:grid}.cart-line__info{grid-column:1/-1}.cart-line h2{font-size:var(--step-0);font-weight:650;font-stretch:100%;line-height:1.25}.cart-line__info p{color:var(--ink-soft);font-size:var(--step--1)}.cart-line__subtotal{justify-self:end;font-weight:750}.cart-line .link-button{grid-column:1/-1}@media (min-width:44rem){.cart-line{grid-template-columns:minmax(0,1fr) auto 7rem auto;gap:1rem 1.5rem}.cart-line__info,.cart-line .link-button{grid-column:auto}}.quantity{border:1.5px solid var(--ink);border-radius:var(--radius-pill);justify-self:start;align-items:center;display:inline-flex}.quantity__button{border-radius:var(--radius-pill);width:2.75rem;height:2.75rem;color:var(--ink);cursor:pointer;background:0 0;border:0;font-size:1.25rem}.quantity__button:hover:not(:disabled){background:var(--paper-2)}.quantity__button:disabled{opacity:.4;cursor:not-allowed}.quantity__value{text-align:center;min-width:2rem;font-weight:700}.cart__summary{border-radius:var(--radius-m);background:var(--paper-2);gap:1rem;padding:1.5rem;display:grid}.cart__row{font-size:var(--step-1);justify-content:space-between;gap:1rem;display:flex}.cart__note{color:var(--ink-soft);font-size:var(--step--1)}.login{gap:1.5rem;max-width:26rem;display:grid}.booking{grid-template-columns:minmax(0,1fr);gap:2rem;margin-top:1.5rem;display:grid}.booking__main{min-width:0}@media (min-width:60rem){.booking{grid-template-columns:minmax(0,1fr) 20rem;align-items:start;gap:3rem}}.stepper{gap:.35rem;margin-bottom:1.5rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.stepper__item{border:1.5px solid var(--line);border-radius:var(--radius-pill);min-height:2.5rem;color:var(--ink);white-space:nowrap;cursor:pointer;background:0 0;align-items:center;gap:.5rem;padding:.3rem .9rem .3rem .4rem;font-weight:560;display:inline-flex}.stepper__item[aria-current=step]{border-color:var(--ink);background:var(--ink);color:var(--paper)}.stepper__item:disabled{opacity:.5;cursor:not-allowed}.stepper__num{background:var(--paper-2);width:1.75rem;height:1.75rem;color:var(--ink);font-size:var(--step--1);border-radius:50%;place-items:center;font-weight:700;display:inline-grid}.booking__panel h2{font-size:var(--step-2);margin-bottom:1.25rem}.booking__nav{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.booking__summary{border-radius:var(--radius-m);background:var(--paper-2);padding:1.5rem}@media (min-width:60rem){.booking__summary{position:sticky;top:5.5rem}}.booking__summary h2{font-size:var(--step-2);margin-bottom:1rem}.booking__summary dl{gap:.85rem;display:grid}.booking__summary dt{color:var(--ink-soft);font-size:var(--step--1)}.booking__summary dd{font-weight:600}.booking__summary .booking__total{border-top:2px solid var(--ink);padding-top:.85rem}.booking__summary .booking__total dd{font-size:var(--step-2);font-weight:800;font-stretch:75%}.booking__month{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.booking__hold{border:1px solid;border-radius:.5rem;margin:0 0 1rem;padding:.75rem 1rem}.booking__captcha{max-width:100%;margin:1rem 0 0;overflow-x:auto}.booking__facts{gap:.5rem;margin:1rem 0;display:grid}.booking__facts div{flex-wrap:wrap;gap:.25rem 1rem;display:flex}.booking__facts dt{min-width:8rem;font-weight:600}.booking__facts dd{margin:0}.payment-box{border:1.5px solid var(--line);border-radius:1rem;flex-direction:column;align-items:flex-start;gap:1rem;margin-block:1.5rem;padding:1.25rem;display:flex}.payment-history{font-size:var(--step--1);margin-top:.5rem;padding-left:1.25rem}.delivery-address{border:0;gap:.75rem;margin:0;padding:0;display:grid}.delivery-address legend{margin-bottom:.5rem;font-weight:650}.cart__row--promotion strong,.price-promotion dd{color:var(--glass-deep)}.field select{border:1.5px solid var(--ink-soft);border-radius:var(--radius-s);background:var(--surface);min-height:2.875rem;color:inherit;padding:.6rem .9rem}fieldset.field{border:0;min-width:0;margin:0;padding:0}fieldset.field legend{margin-bottom:.4rem;padding:0;font-weight:600}.field__hint,.muted{color:var(--ink-soft);font-size:var(--step--1)}.check{align-items:center;gap:.6rem;min-height:2.25rem;display:flex}.check input{width:1.25rem;height:1.25rem;accent-color:var(--lacquer-deep)}.login__alt{margin:0}.staff-nav{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding-block:.75rem;display:flex}.staff-nav ul{flex-wrap:wrap;gap:1.25rem;margin:0;padding:0;list-style:none;display:flex}.staff-nav a{padding-block:.4rem;font-weight:600}.staff-nav a[aria-current=page]{text-underline-offset:.4rem;text-decoration:underline;text-decoration-thickness:3px}.staff-grid{grid-template-columns:minmax(0,1fr);gap:2.5rem;padding-bottom:3rem;display:grid}@media (min-width:60rem){.staff-grid{grid-template-columns:minmax(0,24rem) minmax(0,1fr);align-items:start}}.staff-panel{min-width:0}.staff-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.staff-list li{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding-block:.9rem;display:flex}.staff-list li>div:first-child{overflow-wrap:anywhere;min-width:0}.staff-list p{margin:.15rem 0 0}.staff-actions{flex-wrap:wrap;gap:.5rem;display:flex}.staff-facts{gap:.75rem;margin:0;display:grid}.staff-facts dt{color:var(--ink-soft);font-size:var(--step--1)}.staff-facts dd{overflow-wrap:anywhere;margin:0}.tag{border-radius:var(--radius-pill);background:var(--glass);font-size:var(--step--1);margin-left:.4rem;padding:.1rem .6rem;font-weight:600;display:inline-block}.tag--off{background:var(--paper-2);color:var(--ink-soft)}.staff-panel h2{font-size:var(--step-2);margin:0 0 1rem}.staff-panel .form{max-width:none}.staff-panel .notice{margin-block:0 1rem}.staff-filters{flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;display:flex}.staff-inline{margin-top:.75rem}.staff-stack{gap:1.5rem;display:grid}.checks{border:0;flex-wrap:wrap;gap:.5rem 1.25rem;margin:0 0 1rem;padding:0;display:flex}.checks legend{margin-bottom:.4rem;font-weight:600}.checks label{align-items:center;gap:.4rem;display:inline-flex}.hours-editor{gap:.6rem;margin-bottom:1rem;display:grid}.hours-editor__day{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding-block:.4rem;display:flex}.hours-editor__day>strong{min-width:6rem}.hours-editor__range{align-items:center;gap:.4rem;display:inline-flex}.hours-editor input[type=time]{min-height:2.4rem}.chart{--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;margin:0}.chart__title{margin-bottom:.5rem;font-weight:700}.chart__legend{color:var(--ink-soft);font-size:var(--step--1);flex-wrap:wrap;gap:.4rem 1rem;margin:0 0 .5rem;padding:0;list-style:none;display:flex}.chart__legend li{align-items:center;gap:.4rem;display:inline-flex}.chart__swatch{border-radius:3px;width:10px;height:10px;display:inline-block}.chart__plot{position:relative;overflow:hidden}.chart__plot svg{max-width:100%;display:block}.chart__grid{stroke:var(--line);stroke-width:1px}.chart__baseline{stroke:var(--ink-soft);stroke-width:1px}.chart__tick{fill:var(--ink-soft);font-size:11px}.chart__plot rect[tabindex]:focus-visible{stroke:var(--ink);stroke-width:2px;outline:none}.chart__tooltip{border:1px solid var(--line);border-radius:var(--radius-s);background:var(--surface);min-width:160px;box-shadow:0 6px 18px color-mix(in oklab, var(--ink) 18%, transparent);font-size:var(--step--1);pointer-events:none;gap:.15rem;padding:.5rem .65rem;display:grid;position:absolute;top:.25rem;transform:translate(-50%)}.chart__table summary{cursor:pointer;color:var(--ink-soft);font-size:var(--step--1);margin-top:.5rem}.report-tabs{flex-wrap:wrap;gap:.4rem;display:flex}.report-tab{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);min-height:40px;color:var(--ink);font:inherit;cursor:pointer;padding:.45rem .95rem}.report-tab--active{border-color:var(--ink);background:var(--ink);color:#fff}.kpi-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.kpi{border:1px solid var(--line);border-radius:var(--radius-m);background:var(--surface);align-content:start;gap:.25rem;padding:.9rem 1rem;display:grid}.kpi__label{color:var(--ink-soft);font-size:var(--step--1)}.kpi__value{font-size:var(--step-2);font-variant-numeric:tabular-nums;line-height:1.1}.kpi__value--na{font-size:var(--step-0);color:var(--ink-soft)}.kpi__note{color:var(--ink-soft);font-size:.75rem}.report-table__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.report-table__head h3{margin:0}.report-table__scroll{overflow-x:auto}.report-table table,.chart__table table{border-collapse:collapse;width:100%;font-size:var(--step--1)}.report-table th,.report-table td,.chart__table th,.chart__table td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:.45rem .6rem}.report-table .num,.chart__table td{text-align:right;font-variant-numeric:tabular-nums}.report-table tfoot td{border-top:2px solid var(--ink-soft);font-weight:700}.report-table__pages{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.75rem;display:flex}.report-notes{color:var(--ink-soft);font-size:var(--step--1);margin:0;padding-left:1.2rem}.kpi .tag{justify-self:start}.staff-details summary{cursor:pointer;font-weight:600}.history-panel h4{margin:1rem 0 .4rem}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.admin{--sidebar-w:16.5rem;--sidebar-w-collapsed:4.5rem;--admin-shadow:0 1px 2px color-mix(in oklab, var(--ink) 8%, transparent), 0 4px 16px color-mix(in oklab, var(--ink) 5%, transparent);--admin-line:color-mix(in oklab, var(--ink) 12%, transparent);--on-ink:var(--paper);--on-ink-soft:color-mix(in oklab, var(--paper) 68%, var(--ink));grid-template-columns:var(--sidebar-w) minmax(0, 1fr);background:linear-gradient(to right, var(--ink) var(--sidebar-w), var(--paper) 0);min-height:100dvh;display:grid}.admin--collapsed{grid-template-columns:var(--sidebar-w-collapsed) minmax(0, 1fr);background:linear-gradient(to right, var(--ink) var(--sidebar-w-collapsed), var(--paper) 0)}.admin-loading{padding:2rem var(--gutter)}.admin-sidebar{overscroll-behavior:contain;background:var(--ink);height:100dvh;color:var(--on-ink);scrollbar-width:thin;flex-direction:column;display:flex;position:sticky;top:0;overflow-y:auto}.admin-sidebar__brand{border-bottom:1px solid color-mix(in oklab, var(--paper) 12%, transparent);justify-content:space-between;align-items:center;gap:.5rem;padding:1.15rem 1.1rem 1rem;display:flex}.admin-sidebar__logo{color:var(--on-ink);line-height:1;text-decoration:none;display:grid}.admin-sidebar__wordmark{letter-spacing:-.01em;font-size:1.55rem;font-weight:800;font-stretch:75%}.admin-sidebar__sub{color:var(--on-ink-soft);letter-spacing:.04em;text-transform:uppercase;margin-top:.3rem;font-size:.75rem}.admin-nav{flex-direction:column;flex:1;gap:.35rem;padding:.75rem .6rem 1rem;display:flex}.admin-nav__list{gap:.15rem;display:grid}.admin-nav__group{margin-top:.35rem}.admin-nav__heading{border-radius:var(--radius-s);width:100%;color:var(--on-ink-soft);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:.45rem .65rem;font-size:.72rem;font-weight:700;display:flex}.admin-nav__heading .icon{transition:transform .15s}.admin-nav__heading[aria-expanded=true] .icon{transform:rotate(90deg)}.admin-nav__heading:hover{color:var(--on-ink)}.admin-nav__link{border-radius:var(--radius-s);width:100%;min-height:2.6rem;color:var(--on-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.75rem;padding:.45rem .7rem;font-size:.95rem;font-weight:520;text-decoration:none;display:flex}.admin-nav__link .icon{color:var(--on-ink-soft);flex:none}.admin-nav__link:hover{background:color-mix(in oklab, var(--paper) 9%, var(--ink))}.admin-nav__link[aria-current=page]{background:color-mix(in oklab, var(--lacquer) 30%, var(--ink));box-shadow:inset 3px 0 0 var(--lacquer);font-weight:650}.admin-nav__link[aria-current=page] .icon{color:var(--on-ink)}.admin-sidebar :focus-visible{outline:2px solid var(--glass);outline-offset:2px}.admin-nav__footer{border-top:1px solid color-mix(in oklab, var(--paper) 12%, transparent);margin-top:auto;padding-top:.75rem}.admin-nav__logout{margin-top:.15rem}.admin--collapsed .admin-nav__label,.admin--collapsed .admin-sidebar__sub{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.admin--collapsed .admin-nav__heading{justify-content:center;padding-inline:0}.admin--collapsed .admin-nav__heading span{display:none}.admin--collapsed .admin-nav__link{justify-content:center;padding-inline:0}.admin--collapsed .admin-sidebar__brand{justify-content:center;padding-inline:.5rem}.admin--collapsed .admin-sidebar__wordmark{font-size:1rem}.admin .admin-sidebar__close,.admin .admin-topbar__menu,.admin-overlay{display:none}.admin-body{flex-direction:column;min-width:0;display:flex}.admin-topbar{z-index:20;border-bottom:1px solid var(--admin-line);background:color-mix(in oklab, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;gap:.75rem;min-height:4rem;padding:.6rem clamp(1rem,3vw,2rem);display:flex;position:sticky;top:0}.admin-icon-button{border:1px solid var(--admin-line);border-radius:var(--radius-s);background:var(--surface);width:2.5rem;height:2.5rem;color:var(--ink);cursor:pointer;flex:none;place-items:center;display:inline-grid}.admin-icon-button:hover{border-color:var(--ink-soft)}.admin-topbar__crumb{min-width:0;max-width:none;line-height:1.2;display:grid}.admin-topbar__area{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:600}.admin-topbar__section{text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;font-weight:700;overflow:hidden}.admin-topbar__tools{align-items:center;gap:.75rem;margin-left:auto;display:flex}.admin-topbar__site{border-radius:var(--radius-pill);color:var(--ink-soft);font-size:var(--step--1);align-items:center;gap:.35rem;padding:.4rem .7rem;font-weight:600;text-decoration:none;display:inline-flex}.admin-topbar__site:hover{background:var(--paper-2);color:var(--ink)}.admin-user{border-radius:var(--radius-pill);color:inherit;align-items:center;gap:.6rem;padding:.25rem .6rem .25rem .25rem;text-decoration:none;display:flex}.admin-user:hover{background:var(--paper-2)}.admin-user__avatar{background:var(--lacquer);color:#fff;border-radius:50%;flex:none;place-items:center;width:2.25rem;height:2.25rem;font-size:.85rem;font-weight:700;display:grid}.admin-user__text{min-width:0;line-height:1.2;display:grid}.admin-user__name{font-size:.9rem;font-weight:650}.admin-user__role{max-width:18rem;color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.admin-main{flex:1;min-width:0;padding:clamp(1.25rem,3vw,2rem) clamp(1rem,3vw,2rem) 3rem}.admin-main .container{width:100%;max-width:82rem;margin-inline:auto}.admin .page-intro{gap:.35rem;padding:0 0 1.25rem;display:grid}.admin .page-intro h1{font-size:var(--step-2);line-height:1.05}.admin .page-intro .lead{max-width:72ch;font-size:var(--step-0)}.admin h2{font-size:var(--step-1);line-height:1.1}.admin h3{font-size:1.1rem}.admin .staff-stack,.admin .staff-grid{gap:1.25rem;padding-bottom:0}.admin .staff-panel{border:1px solid var(--admin-line);border-radius:var(--radius-m);background:var(--surface);box-shadow:var(--admin-shadow);padding:clamp(1rem,2.5vw,1.5rem)}.admin .staff-panel h2{font-size:var(--step-1);margin:0 0 1rem}.admin .panel-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:1rem;display:flex}.admin .panel-head h2{margin:0}.admin .panel-head__link{color:var(--lacquer-deep);font-size:var(--step--1);font-weight:650}.admin .staff-stack>.staff-filters,.admin .staff-stack>.staff-list,.admin .container>.staff-list{border:1px solid var(--admin-line);border-radius:var(--radius-m);background:var(--surface);box-shadow:var(--admin-shadow);margin:0}.admin .staff-stack>.staff-filters{padding:1rem 1.25rem}.admin .staff-stack>.staff-list,.admin .container>.staff-list{padding:.25rem 1.25rem}.admin .staff-list li{border-top:1px solid var(--admin-line);padding:.85rem .25rem}.admin .staff-list li:first-child{border-top:0}.admin .staff-list li:hover{background:color-mix(in oklab, var(--paper) 55%, var(--surface))}.admin .staff-filters{gap:.75rem 1rem;margin-bottom:1.25rem}.admin .staff-filters .field{min-width:min(100%,11rem)}.admin .form{gap:1rem;max-width:34rem}.admin .field label,.admin fieldset.field legend,.admin .checks legend{font-size:.9rem;font-weight:650}.admin .field input:not([type=checkbox],[type=radio]),.admin .field select,.admin .field textarea{border:1px solid color-mix(in oklab, var(--ink) 28%, transparent);border-radius:var(--radius-s);background:var(--surface);width:100%;min-height:2.6rem;color:inherit;font:inherit;padding:.5rem .75rem;font-size:.95rem}.admin .field textarea{resize:vertical}.admin .field input:not([type=checkbox],[type=radio]):focus-visible,.admin .field select:focus-visible,.admin .field textarea:focus-visible{outline:2px solid var(--lacquer);outline-offset:1px;border-color:var(--lacquer)}.admin .field input[aria-invalid=true]{border-color:var(--lacquer-deep)}.admin .button{border-width:1.5px;min-height:2.5rem;padding:.4rem 1.15rem;font-size:.92rem}.admin .button--small{min-height:2.15rem;padding:.25rem .9rem;font-size:.85rem}.admin .tag{border-radius:var(--radius-pill);background:var(--glass);color:var(--glass-deep);vertical-align:middle;margin-left:.35rem;padding:.12rem .6rem;font-size:.75rem;font-weight:700}.admin .tag--off{background:var(--paper-2);color:var(--ink-soft)}.admin .tag--warn{background:color-mix(in oklab, var(--lacquer) 14%, var(--surface));color:var(--lacquer-deep)}.admin .notice{border-radius:var(--radius-s);box-shadow:none;margin-block:0 1rem}.admin .staff-inline{border:1px solid var(--admin-line);border-left:4px solid var(--lacquer);border-radius:var(--radius-s);background:var(--paper);margin-top:.75rem;padding:1rem 1.1rem}.admin .empty{border:1px dashed color-mix(in oklab, var(--ink) 22%, transparent);border-radius:var(--radius-s);text-align:center;padding:1.25rem}.admin .empty--ok{border-style:solid;border-color:var(--glass);background:color-mix(in oklab, var(--glass) 35%, var(--surface));color:var(--glass-deep);justify-content:center;align-items:center;gap:.5rem;display:flex}.admin .report-table table th{color:var(--ink-soft);letter-spacing:.03em;text-transform:uppercase;font-size:.78rem;font-weight:700}.admin .report-table tbody tr:hover{background:color-mix(in oklab, var(--paper) 55%, var(--surface))}.admin .kpi{border-color:var(--admin-line);box-shadow:var(--admin-shadow)}.admin .report-tabs{border:1px solid var(--admin-line);border-radius:var(--radius-pill);background:var(--surface);width:-moz-fit-content;width:fit-content;max-width:100%;padding:.3rem}.admin .report-tab{border-color:#0000}.dashboard-tiles{grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr))}@media (max-width:40rem){.dashboard-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.dashboard-tile{padding:.75rem}.dashboard-tile .kpi__value{font-size:var(--step-1)}}.dashboard-tile{padding-top:1rem;position:relative}.dashboard-tile__icon{border-radius:var(--radius-s);background:color-mix(in oklab, var(--lacquer) 12%, var(--surface));width:2.25rem;height:2.25rem;color:var(--lacquer-deep);place-items:center;margin-bottom:.25rem;display:inline-grid}.dashboard-tile__link{color:var(--lacquer-deep);margin-top:.35rem;font-size:.82rem;font-weight:650}.dashboard-columns{grid-template-columns:minmax(0,1fr);gap:1.25rem;display:grid}@media (min-width:70rem){.dashboard-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}.alert-list,.appointment-list{gap:.6rem;display:grid}.alert-item{border:1px solid var(--admin-line);border-radius:var(--radius-s);background:var(--surface);border-left-width:4px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.75rem .85rem;display:grid}.alert-item--critical{border-left-color:var(--lacquer-deep)}.alert-item--warning{border-left-color:var(--lacquer)}.alert-item--info{border-left-color:var(--glass-deep)}.alert-item__icon{background:color-mix(in oklab, var(--lacquer) 12%, var(--surface));width:2.1rem;height:2.1rem;color:var(--lacquer-deep);border-radius:50%;place-items:center;display:inline-grid}.alert-item--info .alert-item__icon{background:color-mix(in oklab, var(--glass) 60%, var(--surface));color:var(--glass-deep)}.alert-item__title{font-weight:700}.alert-item__count{border-radius:var(--radius-pill);background:var(--ink);min-width:1.6rem;color:var(--paper);text-align:center;margin-left:.25rem;padding:0 .45rem;font-size:.78rem;display:inline-block}.appointment{border-top:1px solid var(--admin-line);grid-template-columns:4.5rem minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.6rem .25rem;display:grid}.appointment:first-child{border-top:0}.appointment__time{line-height:1.15;display:grid}.appointment__time strong{font-variant-numeric:tabular-nums;font-size:1.15rem}.appointment__day{color:var(--ink-soft);text-transform:capitalize;font-size:.75rem}.appointment__title{font-weight:650}@media (max-width:63.99rem){.admin,.admin--collapsed{background:var(--paper);grid-template-columns:minmax(0,1fr)}.admin-sidebar{z-index:60;visibility:hidden;width:min(18rem,86vw);transition:transform .2s,visibility .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.admin--drawer-open .admin-sidebar{visibility:visible;transform:none}.admin-overlay{z-index:55;background:color-mix(in oklab, var(--ink) 50%, transparent);opacity:0;pointer-events:none;transition:opacity .2s;display:block;position:fixed;inset:0}.admin--drawer-open .admin-overlay{opacity:1;pointer-events:auto}.admin .admin-sidebar__close,.admin .admin-topbar__menu{display:inline-grid}.admin-topbar__collapse{display:none}.admin--collapsed .admin-nav__label,.admin--collapsed .admin-sidebar__sub{clip:auto;width:auto;height:auto;position:static;overflow:visible}.admin--collapsed .admin-nav__heading span{display:inline}.admin--collapsed .admin-nav__link{justify-content:flex-start;padding-inline:.7rem}}@media (max-width:40rem){.admin-topbar__site span,.admin-user__text{display:none}.admin-topbar__site{padding:.5rem}.admin .staff-list li>.staff-actions,.admin .staff-list li>.button{width:100%}.alert-item{grid-template-columns:auto minmax(0,1fr)}.alert-item>.button{grid-column:1/-1;justify-self:start}.appointment{grid-template-columns:4rem minmax(0,1fr)}.appointment>.tag{grid-column:2;justify-self:start;margin-left:0}}@media (prefers-reduced-motion:reduce){.admin-sidebar,.admin-overlay,.admin-nav__heading .icon{transition:none}}.admin .staff-fieldset{border:1px solid var(--admin-line);border-radius:var(--radius-s);min-width:0;margin:.75rem 0 0;padding:.6rem 1rem .9rem}.admin .staff-fieldset legend{padding:0 .35rem;font-weight:650}.admin .bookings-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.admin .segmented{border:1px solid var(--admin-line);border-radius:var(--radius-pill);background:var(--surface);padding:.2rem;display:inline-flex}.admin .segmented button{border-radius:var(--radius-pill);min-height:2.25rem;color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:0;padding:.3rem 1rem;font-weight:650}.admin .segmented button[aria-pressed=true]{background:var(--lacquer);color:var(--surface)}.admin .calendar{grid-template-columns:minmax(0,1fr);gap:1.25rem;display:grid}.admin .calendar-card{border:1px solid var(--admin-line);border-radius:var(--radius-m);background:var(--surface);box-shadow:var(--admin-shadow);padding:1.1rem 1.25rem}.admin .calendar-card__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem;margin-bottom:.9rem;display:flex}.admin .calendar-card h2,.admin .calendar-agenda h2{font-size:var(--step-1);align-items:center;gap:.5rem;margin:0;display:inline-flex}.admin .calendar-card h2 svg,.admin .calendar-agenda h2 svg{color:var(--lacquer)}.admin .calendar-location{align-items:center;gap:.5rem;margin:0;display:flex}.admin .calendar-location label{margin:0}.admin .calendar-location__single{border-radius:var(--radius-pill);background:var(--paper);align-items:center;gap:.35rem;margin:0;padding:.3rem .85rem;font-weight:650;display:inline-flex}.admin .calendar-team__list{grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr));gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.admin .calendar-person{border-radius:var(--radius-m);background:var(--paper);width:100%;min-height:3.6rem;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border:1px solid #0000;align-items:center;gap:.65rem;padding:.55rem .7rem;display:flex}.admin .calendar-person:hover{border-color:color-mix(in oklab, var(--lacquer) 35%, transparent)}.admin .calendar-person:disabled{cursor:default}.admin .calendar-person[aria-pressed=true]{border-color:var(--lacquer-deep);background:var(--lacquer);color:var(--surface);box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--lacquer)}.admin .calendar-person__avatar{background:color-mix(in oklab, var(--lacquer) 16%, var(--surface));width:2.5rem;height:2.5rem;color:var(--lacquer-deep);border-radius:50%;flex:none;place-items:center;font-size:.85rem;font-weight:750;display:inline-grid}.admin .calendar-person[aria-pressed=true] .calendar-person__avatar{background:var(--surface)}.admin .calendar-person__avatar--team{background:var(--paper-2);color:var(--ink)}.admin .calendar-person__avatar--small{width:2rem;height:2rem;font-size:.75rem}.admin .calendar-person__text{min-width:0;display:grid}.admin .calendar-person__text strong,.admin .calendar-person__text span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin .calendar-person__text span{opacity:.85;font-size:.8rem}.admin .calendar-month__name:first-letter{text-transform:uppercase}.admin .calendar-month__nav{align-items:center;gap:.35rem;display:inline-flex}.admin .calendar-nav,.admin .agenda-card__call{border:1px solid var(--admin-line);background:var(--surface);width:2.25rem;height:2.25rem;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;display:inline-grid}.admin .calendar-nav:not(.calendar-nav--next) svg{transform:rotate(180deg)}.admin .calendar-legend{color:var(--ink-soft);flex-wrap:wrap;gap:.35rem 1rem;margin:0;padding:0;font-size:.8rem;list-style:none;display:flex}.admin .calendar-legend li{align-items:center;gap:.35rem;display:inline-flex}.admin .calendar-legend__dot{border-radius:50%;width:.6rem;height:.6rem}.admin .calendar-legend__dot--bookings{background:var(--lacquer)}.admin .calendar-legend__dot--occupancy{background:var(--glass-deep)}.admin .calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.admin .calendar-grid--head{border-radius:var(--radius-s);background:var(--paper);color:var(--ink-soft);text-align:center;margin-bottom:.45rem;padding:.35rem 0;font-size:.8rem;font-weight:700}.admin .calendar-weekday--short{display:none}.admin .calendar-day{background:var(--paper);width:100%;min-height:4.75rem;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border:1px solid #0000;border-radius:12px;flex-direction:column;justify-content:space-between;padding:.5rem .6rem;display:flex}.admin .calendar-day:hover{border-color:color-mix(in oklab, var(--lacquer) 35%, transparent)}.admin .calendar-day--blank{background:0 0;min-height:0}.admin .calendar-day--off{background:color-mix(in oklab, var(--paper) 55%, var(--surface));color:var(--ink-soft)}.admin .calendar-day[aria-current=date] .calendar-day__num{background:var(--ink);min-width:1.6rem;height:1.6rem;color:var(--surface);border-radius:50%;place-items:center;display:inline-grid}.admin .calendar-day[aria-pressed=true]{border-color:var(--lacquer-deep);background:var(--lacquer);color:var(--surface);box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--lacquer)}.admin .calendar-day[aria-pressed=true][aria-current=date] .calendar-day__num{background:var(--surface);color:var(--lacquer-deep)}.admin .calendar-day__top,.admin .calendar-day__bottom{justify-content:space-between;align-items:center;gap:.25rem;display:flex}.admin .calendar-day__bottom{justify-content:flex-end}.admin .calendar-day__num{font-weight:750}.admin .calendar-day__count{color:var(--lacquer-deep);font-size:.78rem;font-weight:700}.admin .calendar-day__pct{border-radius:var(--radius-pill);background:var(--glass);color:var(--glass-deep);padding:.05rem .45rem;font-size:.78rem;font-weight:750}.admin .calendar-day__note{font-size:.75rem}.admin .calendar-day[aria-pressed=true] .calendar-day__count{color:var(--surface)}.admin .calendar-summary__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.admin .calendar-eyebrow{color:var(--lacquer-deep);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:750}.admin .calendar-summary h2{margin:.15rem 0 0}.admin .calendar-summary h2:first-letter{text-transform:uppercase}.admin .calendar-summary .muted{margin:.15rem 0 0}.admin .calendar-stats{flex-wrap:wrap;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.admin .calendar-stats li{border-radius:var(--radius-m);background:var(--paper);align-items:center;gap:.55rem;padding:.5rem .85rem;font-size:.85rem;display:inline-flex}.admin .calendar-stats svg{color:var(--lacquer)}.admin .calendar-stats strong{font-size:1.05rem}.admin .calendar-progress{border-top:1px solid var(--admin-line);margin-top:1rem;padding-top:.85rem}.admin .calendar-progress p{justify-content:space-between;margin:0 0 .4rem;font-size:.85rem;display:flex}.admin .calendar-progress__bar{border-radius:var(--radius-pill);background:var(--glass);height:.6rem;overflow:hidden}.admin .calendar-progress__bar span{border-radius:var(--radius-pill);background:var(--lacquer);height:100%;display:block}.admin .calendar-agenda{gap:.85rem;display:grid}.admin .calendar-agenda__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.admin .calendar-agenda__list{grid-template-columns:repeat(auto-fill,minmax(min(100%,21rem),1fr));gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.admin .agenda-card{border:1px solid var(--admin-line);border-left:4px solid var(--lacquer);border-radius:var(--radius-m);background:var(--surface);box-shadow:var(--admin-shadow);flex-direction:column;gap:.45rem;padding:1rem;display:flex}.admin .agenda-card h3{margin:0;font-size:1.05rem}.admin .agenda-card p{margin:0}.admin .agenda-card__head{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.admin .agenda-card__head .tag{margin-left:0}.admin .agenda-card__time{font-weight:750}.admin .agenda-card__price{color:var(--lacquer-deep);margin-left:auto}.admin .agenda-card__client{border-radius:var(--radius-m);background:var(--paper);align-items:center;gap:.6rem;padding:.5rem .6rem;display:flex}.admin .agenda-card__client>span:nth-child(2){flex:1;min-width:0;display:grid}.admin .agenda-card__client .muted{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.admin .agenda-card .staff-actions{border-top:1px solid var(--admin-line);justify-content:flex-start;margin-top:auto;padding-top:.6rem}.admin .agenda-card .staff-actions:empty{display:none}.admin .agenda-card--closed{border-left-color:var(--paper-2);opacity:.85}.admin .agenda-card--off{border-left-color:var(--ink-soft);background:repeating-linear-gradient(135deg, var(--surface) 0 10px, var(--paper) 10px 12px)}.admin .agenda-card--free{border-color:color-mix(in oklab, var(--glass-deep) 30%, transparent);border-left-color:var(--glass-deep);background:color-mix(in oklab, var(--glass) 40%, var(--surface));box-shadow:none}.admin .agenda-card--free .muted{color:var(--ink)}.admin .tag--free{border:1px solid color-mix(in oklab, var(--glass-deep) 40%, transparent);background:var(--surface);color:var(--glass-deep);font-weight:700}.admin .agenda-card--free h3{color:var(--glass-deep)}.admin .agenda-card--free .button{background:var(--surface);align-self:flex-start}@media (max-width:40rem){.admin .calendar-card{padding:.9rem}.admin .calendar-team__list{scroll-snap-type:x mandatory;padding-bottom:.25rem;display:flex;overflow-x:auto}.admin .calendar-team__list li{scroll-snap-align:start;flex:0 0 13rem}.admin .calendar-legend__occupancy,.admin .calendar-weekday--long,.admin .calendar-day__count-word,.admin .calendar-day__note{display:none}.admin .calendar-weekday--short{display:inline}.admin .calendar-grid{gap:.25rem}.admin .calendar-day{border-radius:var(--radius-s);justify-content:flex-start;min-width:0;min-height:3.1rem;padding:.3rem .2rem}.admin .calendar-day__top{flex-direction:column;align-items:center;gap:.2rem}.admin .calendar-day__bottom{display:none}.admin .calendar-day__count{border-radius:var(--radius-pill);background:color-mix(in oklab, var(--lacquer) 14%, var(--surface));text-align:center;min-width:1.15rem;padding:0 .3rem;font-size:.7rem;line-height:1.15rem}.admin .calendar-day[aria-pressed=true] .calendar-day__count{background:var(--surface);color:var(--lacquer-deep)}.admin .calendar-day[aria-pressed=true]{box-shadow:0 0 0 2px var(--surface), 0 0 0 3px var(--lacquer)}.admin .calendar-agenda__head .segmented{width:100%}.admin .calendar-agenda__head .segmented button{flex:1;padding-inline:.5rem}.admin .calendar-stats li{flex:8rem}.admin .calendar-summary__head>.button{justify-content:center;width:100%}}.admin .dialog-backdrop{z-index:100;background:color-mix(in oklab, var(--ink) 55%, transparent);place-items:center;padding:2rem 1rem;display:grid;position:fixed;inset:0}.admin .dialog{border-radius:var(--radius-m);background:var(--surface);width:min(42rem,100%);max-height:calc(100dvh - 4rem);box-shadow:0 10px 25px -5px color-mix(in oklab, var(--ink) 25%, transparent), 0 8px 10px -6px color-mix(in oklab, var(--ink) 15%, transparent);flex-direction:column;display:flex}.admin .dialog:focus{outline:none}.admin .dialog__head{border-bottom:1px solid var(--admin-line);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.admin .dialog__head h2{font-size:var(--step-1);margin:0}.admin .dialog__close{border:1px solid var(--admin-line);background:var(--surface);width:2.5rem;height:2.5rem;color:var(--ink);cursor:pointer;border-radius:50%;flex:none;place-items:center;display:inline-grid}.admin .dialog__close:disabled{opacity:.5;cursor:not-allowed}.admin .dialog__body{overscroll-behavior:contain;padding:1rem 1.25rem 1.25rem;overflow-y:auto}.admin .dialog__body .form{max-width:none;margin:0}.admin .dialog__body .muted:first-child{margin-top:0}.admin .dialog__foot{border-top:1px solid var(--admin-line);background:var(--paper);border-radius:0 0 var(--radius-m) var(--radius-m);padding:.85rem 1.25rem}.admin .dialog__actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.admin .dialog__confirm{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem 1rem;display:flex}.admin .dialog__confirm p{margin:0;font-weight:650}@media (max-width:40rem){.admin .dialog-backdrop{place-items:stretch stretch;padding:0}.admin .dialog{border-radius:0;width:100%;height:100dvh;max-height:none}.admin .dialog__foot{padding-bottom:max(.85rem, env(safe-area-inset-bottom));border-radius:0}.admin .dialog__actions .button{flex:1 1 0;justify-content:center}}.admin .date-picker{min-width:0}.admin .date-picker__head{justify-content:space-between;align-items:center;gap:.5rem;margin:.25rem 0 .5rem;display:flex}.admin .date-picker__month:first-letter{text-transform:uppercase}.admin .date-picker .calendar-nav:disabled{opacity:.4;cursor:not-allowed}.admin .date-picker__grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.admin .date-picker__weekday{color:var(--ink-soft);text-align:center;padding-bottom:.2rem;font-size:.75rem;font-weight:700}.admin .date-picker__day{border:1px solid color-mix(in oklab, var(--glass-deep) 45%, transparent);border-radius:var(--radius-s);background:var(--glass);width:100%;min-height:2.5rem;color:var(--glass-deep);font:inherit;cursor:pointer;font-weight:750}.admin .date-picker__day:hover:not(:disabled){border-color:var(--lacquer)}.admin .date-picker__day[aria-pressed=true]{border-color:var(--lacquer-deep);background:var(--lacquer);color:var(--surface)}.admin .date-picker__day:disabled{background:var(--paper);color:color-mix(in oklab, var(--ink-soft) 55%, transparent);cursor:not-allowed;border-color:#0000;font-weight:500;text-decoration:line-through}.admin .date-picker .notice .link-button,.admin .date-picker .empty .link-button{font-weight:650}
